<xml> </xml>

IrrKlang.NET |

# ISoundEngine Members

ISoundEngine overview

#### Public Instance Constructors

ISoundEngine | Overloaded. Initializes a new instance of the ISoundEngine class.

#### Public Instance Properties

Default3DSoundMaxDistance

Sets or gets the default maximal distance for 3D sounds. This value influences how loud a sound is heard based on its distance. See ISound::setMaxDistance() for details about what the max distance is. It is also possible to influence this default value for every sound file using ISoundSource::setDefaultMaxDistance(). This method only influences the initial distance value of sounds. For changing the distance after the sound has been started to play, use ISound::setMaxDistance() and ISound::setMaxDistance().

Default3DSoundMinDistance

Sets or gets the default minimal distance for 3D sounds. This value influences how loud a sound is heard based on its distance. See ISound::setMinDistance() for details about what the min distance is. It is also possible to influence this default value for every sound file using ISoundSource::setDefaultMinDistance(). This method only influences the initial distance value of sounds. For changing the distance after the sound has been started to play, use ISound::setMinDistance() and ISound::setMaxDistance().

IsMultiThreaded | Returns if irrKlang is running in the same thread as the application or is using multithreading. This basicly returns the flag set by the user when creating the sound engine.
Name | Returns the name of the audio driver.
SoundVolume | sets sound volume. This value is multiplied with all sounds played. Volume set to 0 is silent and 1.0f is full volume.

#### Public Instance Methods

AddFileFactory | Adds a file factory to the sound engine, making it possible to override file access of the sound engine. Derive your own class from IFileFactory, overwrite the openFile() method and return your own implemented System::IO::Stream to overwrite file access of irrKlang.
AddSoundSourceAlias | Adds a sound source as alias for an existing sound source, but with a different name or optional different default settings. This is useful if you want to play multiple sounds but each sound isn't necessarily one single file. Also useful if you want to or play the same sound using different names, volumes or min and max 3D distances.
AddSoundSourceFromFile | Overloaded. Adds sound source into the sound engine as file.
AddSoundSourceFromIOStream | Adds a sound source into the sound engine from a IOStream. Note that the stream is totally read into memory when adding the sound source. If you want irrKlang to dynamically open and close custom file streams without loading everything into memory, use the addFileFactory with your own IFileFactory implementation.
AddSoundSourceFromMemory |
AddSoundSourceFromPCMData |
Equals (inherited from Object) | Determines whether the specified Object is equal to the current Object.
GetHashCode (inherited from Object) | Serves as a hash function for a particular type, suitable for use in hashing algorithms and data structures like a hash table.
GetSoundSource | Overloaded.
GetType (inherited from Object) | Gets the Type of the current instance.
internalGetNativeEngine |
IsCurrentlyPlaying | Returns if a sound with the specified name is currently playing
LoadPlugins |
Play2D | Overloaded. loads a sound source (if not loaded already) from a file and plays it.
Play3D | Overloaded. loads a sound source (if not loaded already) from a file and plays it as 3d sound.
RemoveAllSoundSources | Removes all sound sources from the engine. This will also cause all sounds to be stopped. Removing sound sources is only necessary if you know you won't use a lot of non-streamed sounds again. Sound sources of streamed sounds do not cost a lot of memory.

RemoveSoundSource

Removes a sound source from the engine, freeing the memory it occupies. This will also cause all currently playing sounds of this source to be stopped. Also note that if the source has been removed successfully, the value returned by getSoundSourceCount() will have been decreased by one. Removing sound sources is only necessary if you know you won't use a lot of non-streamed sounds again. Sound sources of streamed sounds do not cost a lot of memory.

SetAllSoundsPaused | pauses or unpauses all currently playing sounds
SetDopplerEffectParameters | Sets parameters affecting the doppler effect.
SetListenerPosition | Overloaded. Sets the current listener 3d position. This method is being called by the scene manager automaticly if you are using one, so you might want to ignore this.
SetRolloffFactor | Sets the roll off factor for 3d sounds.
StopAllSounds | stops all currently playing sounds
ToString (inherited from Object) | Returns a String that represents the current Object.

Update

Updates the audio engine. This should be called several times per frame if irrKlang was started in single thread mode. This updates the 3d positions of the sounds as well as their volumes, effects streams and other stuff. Call this several times per frame (the more the better) if you specified irrKlang to run single threaded. Otherwise it is not necessary to use this method. This method is being called by the scene manager automaticly if you are using one, so you might want to ignore this.

#### Protected Instance Methods

Finalize | Destructor
MemberwiseClone (inherited from Object) | Creates a shallow copy of the current Object.

#### See Also

ISoundEngine Class | IrrKlang Namespace