|
cAudio 2.3.0
3d Audio Engine
|
Interface for a single audio source, which allow you to manipulate sound sources (speakers) in 2D or 3D space. More...
#include <IAudioSource.h>


Public Member Functions | |
| virtual bool | play ()=0 |
| Plays the source with the last set parameters. | |
| virtual bool | play2d (const bool &toLoop=false)=0 |
| Plays the source in 2D mode. | |
| virtual bool | play3d (const cVector3 &position, const float &soundstr=1.0, const bool &toLoop=false)=0 |
| Plays the source in 3D mode. | |
| virtual void | pause ()=0 |
| Pauses playback of the sound source. | |
| virtual void | stop ()=0 |
| Stops playback of the sound source. | |
| virtual void | loop (const bool &toLoop)=0 |
| Controls whether the source should loop or not. | |
| virtual bool | seek (const float &seconds, bool relative=false)=0 |
| Seeks through the audio stream to a specific spot. | |
| virtual bool | setBuffer (IAudioBuffer *buffer)=0 |
| Change the audio buffer associated with the source. | |
| virtual IAudioBuffer * | getBuffer ()=0 |
| Get the audio buffer associated with the source. | |
| virtual float | getTotalAudioTime ()=0 |
| Returns the total amount of time in the audio stream. See IAudioDecoder for details. | |
| virtual int | getTotalAudioSize ()=0 |
| Returns the total decoded size of the audio stream. See IAudioDecoder for details. | |
| virtual int | getCompressedAudioSize ()=0 |
| Returns the original size of the audio stream. See IAudioDecoder for details. | |
| virtual float | getCurrentAudioTime ()=0 |
| Returns the current position in the audio stream in seconds. See IAudioDecoder for details. | |
| virtual int | getCurrentAudioPosition ()=0 |
| Returns the current position in the decoded audio stream in bytes. See IAudioDecoder for details. | |
| virtual int | getCurrentCompressedAudioPosition ()=0 |
| Returns the current position in the original audio stream in bytes. See IAudioDecoder for details. | |
| virtual bool | update ()=0 |
| Normally called every frame by the audio manager to update the internal buffers. Note: For internal use only. | |
| virtual bool | isValid () const =0 |
| Returns if the source is ready to be used. | |
| virtual bool | isPlaying () const =0 |
| Returns if the source is playing. | |
| virtual bool | isPaused () const =0 |
| Returns if the source is paused. | |
| virtual bool | isStopped () const =0 |
| Returns if the source is stopped. | |
| virtual bool | isLooping () const =0 |
| Returns if the source is looping. | |
| virtual void | setPosition (const cVector3 &position)=0 |
| Sets the position of the source in 3D space. | |
| virtual void | setVelocity (const cVector3 &velocity)=0 |
| Sets the current velocity of the source for doppler effects. | |
| virtual void | setDirection (const cVector3 &direction)=0 |
| Sets the direction the source is facing. | |
| virtual void | setRolloffFactor (const float &rolloff)=0 |
| Sets the factor used in attenuating the source over distance. | |
| virtual void | setStrength (const float &soundstrength)=0 |
| Sets how well the source carries over distance. | |
| virtual void | setMinDistance (const float &minDistance)=0 |
| Sets the distance from the source where attenuation will begin. | |
| virtual void | setMaxAttenuationDistance (const float &maxDistance)=0 |
| Sets the distance from the source where attenuation will stop. | |
| virtual void | setPitch (const float &pitch)=0 |
| Sets the pitch of the source. | |
| virtual void | setVolume (const float &volume)=0 |
| Sets the source volume before attenuation and other effects. | |
| virtual void | setMinVolume (const float &minVolume)=0 |
| Sets the minimum volume that the source can be attenuated to. | |
| virtual void | setMaxVolume (const float &maxVolume)=0 |
| Sets the maximum volume that the source can achieve. | |
| virtual void | setInnerConeAngle (const float &innerAngle)=0 |
| Sets the angle of the inner sound cone of the source. The cone opens up in the direction of the source as set by setDirection(). | |
| virtual void | setOuterConeAngle (const float &outerAngle)=0 |
| Sets the angle of the outer sound cone of the source. The cone opens up in the direction of the source as set by setDirection(). | |
| virtual void | setOuterConeVolume (const float &outerVolume)=0 |
| Sets how much the volume of the source is scaled in the outer cone. | |
| virtual void | setDopplerStrength (const float &dstrength)=0 |
| Sets the doppler strength, which enhances or diminishes the doppler effect. Can be used to exaggerate the doppler for a special effect. | |
| virtual void | setDopplerVelocity (const cVector3 &dvelocity)=0 |
| Overrides the doppler velocity vector. It is usually better to let the engine take care of it automatically. | |
| virtual void | move (const cVector3 &position)=0 |
| Convenience function to automatically set the velocity and position for you in a single call. | |
| virtual cVector3 | getPosition () const =0 |
| Returns the audio objects position. | |
| virtual cVector3 | getVelocity () const =0 |
| Returns the audio objects velocity. | |
| virtual cVector3 | getDirection () const =0 |
| Returns the audio objects direction. | |
| virtual float | getRolloffFactor () const =0 |
| Returns the factor used in attenuating the source over distance. | |
| virtual float | getStrength () const =0 |
| Returns the strength of the source. | |
| virtual float | getMinDistance () const =0 |
| Returns the distance from the source where attenuation will begin. | |
| virtual float | getMaxDistance () const =0 |
| Returns the distance from the source where attenuation will stop. | |
| virtual bool | isRelative () const =0 |
| Return true for 2d sounds, false for 3d sounds. | |
| virtual float | calculateGain () const =0 |
| Return gain, taking into account volume as well as distance attenuation. | |
| virtual float | getPitch () const =0 |
| Returns the pitch of the source. | |
| virtual float | getVolume () const =0 |
| Returns the source volume before attenuation and other effects. | |
| virtual float | getMinVolume () const =0 |
| Returns the minimum volume that the source can be attenuated to. | |
| virtual float | getMaxVolume () const =0 |
| Returns the maximum volume that the source can achieve. | |
| virtual float | getInnerConeAngle () const =0 |
| Returns the angle of the inner sound cone of the source. | |
| virtual float | getOuterConeAngle () const =0 |
| Returns the angle of the outer sound cone of the source. | |
| virtual float | getOuterConeVolume () const =0 |
| Returns how much the volume of the source is scaled in the outer cone. | |
| virtual float | getDopplerStrength () const =0 |
| Returns the doppler strength, which enhances or diminishes the doppler effect. | |
| virtual cVector3 | getDopplerVelocity () const =0 |
| Returns the override for the doppler velocity vector. | |
| virtual void | registerEventHandler (ISourceEventHandler *handler)=0 |
| Registers a new event handler to this source. | |
| virtual void | unRegisterEventHandler (ISourceEventHandler *handler)=0 |
| Removes a specified event handler from this source. | |
| virtual void | unRegisterAllEventHandlers ()=0 |
| Removes all event handlers attached to this source. | |
Public Member Functions inherited from cAudio::IRefCounted | |
| virtual void | grab () |
| Increments the reference count by one. | |
| virtual bool | drop () |
| Decrements the reference count by one. If it hits zero, this object is deleted. | |
| int | getReferenceCount () const |
| Returns the current reference count of this object. | |
Additional Inherited Members | |
Protected Attributes inherited from cAudio::IRefCounted | |
| int | RefCount |
Interface for a single audio source, which allow you to manipulate sound sources (speakers) in 2D or 3D space.
Definition at line 32 of file IAudioSource.h.
|
inline |
Definition at line 35 of file IAudioSource.h.
|
inlinevirtual |
Definition at line 36 of file IAudioSource.h.
|
pure virtual |
Return gain, taking into account volume as well as distance attenuation.
Implemented in cAudio::cAudioSourceBase.
|
pure virtual |
Get the audio buffer associated with the source.
Implemented in cAudio::cAudioSource, and cAudio::cAudioStaticSource.
|
pure virtual |
Returns the original size of the audio stream. See IAudioDecoder for details.
Implemented in cAudio::cAudioSource, and cAudio::cAudioStaticSource.
|
pure virtual |
Returns the current position in the decoded audio stream in bytes. See IAudioDecoder for details.
Implemented in cAudio::cAudioSource, and cAudio::cAudioStaticSource.
|
pure virtual |
Returns the current position in the audio stream in seconds. See IAudioDecoder for details.
Implemented in cAudio::cAudioSource, and cAudio::cAudioStaticSource.
|
pure virtual |
Returns the current position in the original audio stream in bytes. See IAudioDecoder for details.
Implemented in cAudio::cAudioSource, and cAudio::cAudioStaticSource.
|
pure virtual |
Returns the audio objects direction.
Implemented in cAudio::cAudioSourceBase.
|
pure virtual |
Returns the doppler strength, which enhances or diminishes the doppler effect.
Implemented in cAudio::cAudioSourceBase.
|
pure virtual |
Returns the override for the doppler velocity vector.
Implemented in cAudio::cAudioSourceBase.
|
pure virtual |
Returns the angle of the inner sound cone of the source.
Implemented in cAudio::cAudioSourceBase.
|
pure virtual |
Returns the distance from the source where attenuation will stop.
Implemented in cAudio::cAudioSourceBase.
|
pure virtual |
Returns the maximum volume that the source can achieve.
Implemented in cAudio::cAudioSourceBase.
|
pure virtual |
Returns the distance from the source where attenuation will begin.
Implemented in cAudio::cAudioSourceBase.
|
pure virtual |
Returns the minimum volume that the source can be attenuated to.
Implemented in cAudio::cAudioSourceBase.
|
pure virtual |
Returns the angle of the outer sound cone of the source.
Implemented in cAudio::cAudioSourceBase.
|
pure virtual |
Returns how much the volume of the source is scaled in the outer cone.
Implemented in cAudio::cAudioSourceBase.
|
pure virtual |
Returns the pitch of the source.
Implemented in cAudio::cAudioSourceBase.
|
pure virtual |
Returns the audio objects position.
Implemented in cAudio::cAudioSourceBase.
|
pure virtual |
Returns the factor used in attenuating the source over distance.
Implemented in cAudio::cAudioSourceBase.
|
pure virtual |
Returns the strength of the source.
Implemented in cAudio::cAudioSourceBase.
|
pure virtual |
Returns the total decoded size of the audio stream. See IAudioDecoder for details.
Implemented in cAudio::cAudioSource, and cAudio::cAudioStaticSource.
|
pure virtual |
Returns the total amount of time in the audio stream. See IAudioDecoder for details.
Implemented in cAudio::cAudioSource, and cAudio::cAudioStaticSource.
|
pure virtual |
Returns the audio objects velocity.
Implemented in cAudio::cAudioSourceBase.
|
pure virtual |
Returns the source volume before attenuation and other effects.
Implemented in cAudio::cAudioSourceBase.
|
pure virtual |
Returns if the source is looping.
Implemented in cAudio::cAudioSource, and cAudio::cAudioStaticSource.
|
pure virtual |
Returns if the source is paused.
Implemented in cAudio::cAudioSourceBase.
|
pure virtual |
Returns if the source is playing.
Implemented in cAudio::cAudioSourceBase.
|
pure virtual |
Return true for 2d sounds, false for 3d sounds.
Implemented in cAudio::cAudioSourceBase.
|
pure virtual |
Returns if the source is stopped.
Implemented in cAudio::cAudioSourceBase.

|
pure virtual |
Returns if the source is ready to be used.
Implemented in cAudio::cAudioSource, and cAudio::cAudioStaticSource.

|
pure virtual |
Controls whether the source should loop or not.
| toLoop | Whether to loop (restart) the audio when the end is reached. |
Implemented in cAudio::cAudioSource, and cAudio::cAudioStaticSource.
|
pure virtual |
Convenience function to automatically set the velocity and position for you in a single call.
Velocity will be set to new position - last position.
| position | Position to move the source to. |
Implemented in cAudio::cAudioSourceBase.
|
pure virtual |
Pauses playback of the sound source.
Implemented in cAudio::cAudioSource, and cAudio::cAudioStaticSource.
|
pure virtual |
Plays the source with the last set parameters.
Implemented in cAudio::cAudioSource, and cAudio::cAudioStaticSource.
|
pure virtual |
Plays the source in 2D mode.
No automatic attenuation or panning will take place in this mode, but using setPosition will allow you to manually pan mono audio streams.
| toLoop | Whether to loop (restart) the audio when the end is reached. |
Implemented in cAudio::cAudioStaticSource, and cAudio::cAudioSource.

|
pure virtual |
Plays the source in 3D mode.
| position | Position to start the sound off at. |
| soundstr | Affects how the source attenuates due to distance. Higher values cause the source to stand out more over distance. |
| toLoop | Whether to loop (restart) the audio when the end is reached. |
Implemented in cAudio::cAudioStaticSource, and cAudio::cAudioSource.

|
pure virtual |
Registers a new event handler to this source.
| handler | Pointer to the event handler to register. |
Implemented in cAudio::cAudioSourceBase.
|
pure virtual |
Seeks through the audio stream to a specific spot.
Note: May not be supported by all codecs.
| seconds | Number of seconds to seek. |
| relative | Whether to seek from the current position or the start of the stream. |
Implemented in cAudio::cAudioStaticSource, and cAudio::cAudioSource.
|
pure virtual |
Change the audio buffer associated with the source.
Note: Only supported on sources created with createFromBuffer() or createForBuffer()
Implemented in cAudio::cAudioSource, and cAudio::cAudioStaticSource.
|
pure virtual |
Sets the direction the source is facing.
| direction | A 3D vector giving the direction that the source is aiming. |
Implemented in cAudio::cAudioSourceBase.
|
pure virtual |
Sets the doppler strength, which enhances or diminishes the doppler effect. Can be used to exaggerate the doppler for a special effect.
Range: 0.0f to +inf (Default: 1.0f).
| dstrength | New strength for the doppler effect. |
Implemented in cAudio::cAudioSourceBase.
|
pure virtual |
Overrides the doppler velocity vector. It is usually better to let the engine take care of it automatically.
Note: must be set every time you set the position, velocity, or direction.
| dvelocity | New doppler vector for the source. |
Implemented in cAudio::cAudioSourceBase.
|
pure virtual |
Sets the angle of the inner sound cone of the source. The cone opens up in the direction of the source as set by setDirection().
Note: This causes the sound to be loudest only if the listener is inside this cone. Range: 0.0f to 360.0f (Default: 360.0f).
| innerAngle | Inside angle of the cone. |
Implemented in cAudio::cAudioSourceBase.
|
pure virtual |
Sets the distance from the source where attenuation will stop.
Range: 0.0f to +inf
| maxDistance | Distance where attenuation will cease. Normally the farthest range you can hear the source. |
Implemented in cAudio::cAudioSourceBase.
|
pure virtual |
Sets the maximum volume that the source can achieve.
Range: 0.0f to +inf (Default: 1.0f).
| maxVolume | New maximum volume of the source. |
Implemented in cAudio::cAudioSourceBase.
|
pure virtual |
Sets the distance from the source where attenuation will begin.
Range: 0.0f to +inf
| minDistance | Distance from the source where attenuation begins. |
Implemented in cAudio::cAudioSourceBase.
|
pure virtual |
Sets the minimum volume that the source can be attenuated to.
Range: 0.0f to +inf (Default: 0.0f).
| minVolume | New minimum volume of the source. |
Implemented in cAudio::cAudioSourceBase.
|
pure virtual |
Sets the angle of the outer sound cone of the source. The cone opens up in the direction of the source as set by setDirection().
Note: If the listener is outside of this cone, the sound cannot be heard. Between the inner cone angle and this angle, the sound volume will fall off. Range: 0.0f to 360.0f (Default: 360.0f).
| outerAngle | Outside angle of the cone. |
Implemented in cAudio::cAudioSourceBase.
|
pure virtual |
Sets how much the volume of the source is scaled in the outer cone.
Range: 0.0f to +inf (Default: 0.0f).
| outerVolume | Volume of the source in the outside cone. |
Implemented in cAudio::cAudioSourceBase.
|
pure virtual |
Sets the pitch of the source.
Range: 0.0f to +inf (Default: 1.0f)
| pitch | New pitch level. Note that higher values will speed up the playback of the sound. |
Implemented in cAudio::cAudioSourceBase.
|
pure virtual |
Sets the position of the source in 3D space.
| position | A 3D vector giving the new location to put this source. |
Implemented in cAudio::cAudioSourceBase.
|
pure virtual |
Sets the factor used in attenuating the source over distance.
Larger values make it attenuate faster, smaller values make the source carry better. Range: 0.0f to +inf (Default: 1.0f).
| rolloff | The rolloff factor to apply to the attenuation calculation. |
Implemented in cAudio::cAudioSourceBase.
|
pure virtual |
Sets how well the source carries over distance.
Same as setRolloffFactor(1.0f/soundstrength). Range: 0.0f to +inf (Default: 1.0f).
| soundstrength | How well the sound carries over distance. |
Implemented in cAudio::cAudioSourceBase.
|
pure virtual |
Sets the current velocity of the source for doppler effects.
| velocity | A 3D vector giving the speed and direction that the source is moving. |
Implemented in cAudio::cAudioSourceBase.
|
pure virtual |
Sets the source volume before attenuation and other effects.
Range: 0.0f to +inf (Default: 1.0f).
| volume | New volume of the source. |
Implemented in cAudio::cAudioSourceBase.
|
pure virtual |
Stops playback of the sound source.
Implemented in cAudio::cAudioSource, and cAudio::cAudioStaticSource.
|
pure virtual |
Removes all event handlers attached to this source.
Implemented in cAudio::cAudioSourceBase.
|
pure virtual |
Removes a specified event handler from this source.
| handler | Pointer to the event handler to remove. |
Implemented in cAudio::cAudioSourceBase.
|
pure virtual |
Normally called every frame by the audio manager to update the internal buffers. Note: For internal use only.
Implemented in cAudio::cAudioSource, and cAudio::cAudioStaticSource.
