OSDL::Audio::AudioModule Class Reference

#include <OSDLAudio.h>

List of all members.


Detailed Description

Root module for all audio services.

See also:
OSDL site for more information on sound: add main/documentation/rendering/SDL-audio.html to the base URL (http://osdl.sourceforge.net).

Definition at line 65 of file OSDLAudio.h.


Public Types

typedef Ceylan::Uint16 ChannelNumber
 Allows to store the number (identifier) of a mixing channel.

Public Member Functions

virtual void setMode (Ceylan::Maths::Hertz outputFrequency, SampleFormat outputSampleFormat, ChannelFormat outputChannel, ChunkSize outputBufferSize, ChannelNumber mixingChannelNumber=16) throw ( AudioException )
 Tries to sets up an audio mode with the specified output sampling frequency, output sample format, number of sound channels in output and bytes used per output sample.
virtual Ceylan::System::Millisecond getObtainedMode (Ceylan::Maths::Hertz &actualOutputFrequency, SampleFormat &actualOutputSampleFormat, ChannelNumber &actualOutputChannelNumber) throw ( AudioException )
 Returns in specified parameters the actual settings of the mixer.
virtual void unsetMode () throw ( AudioException )
 Unsets an audio mode previously set.
virtual void setPanning (Ceylan::Maths::Percentage leftPercentage) throw ( AudioException )
 Activates stereo panning and sets the specified distribution between left/right output channels for the overall mixing output.
virtual void unsetPanning () throw ( AudioException )
 Deactivates stereo panning effect.
virtual void setReverseStereo (bool reverse=true) throw ( AudioException )
 Activates or deactivates reverse stereo: if activated, swaps left and right channel output channels.
virtual void setDistanceAttenuation (ListenerDistance distance) throw ( AudioException )
 Activates distance attenuation for the overall mixing output.
virtual void unsetDistanceAttenuation () throw ( AudioException )
 Deactivates distance attenuation effect for the overall mixing output.
virtual void setPositionAttenuation (ListenerDistance distance, ListenerAngle angle) throw ( AudioException )
 Activates attenuation based on distance and angle for the overall mixing output.
virtual void unsetPositionAttenuation () throw ( AudioException )
 Deactivates position attenuation effect for the overall mixing output.
virtual ChannelNumber getMixingChannelCount () const throw ( AudioException )
 Returns the number of input mixing channels.
virtual AudioChannelgetMixingChannelAt (ChannelNumber index) const throw ( AudioException )
 Returns the specified input mixing channel.
virtual void setVolumeForAllMixingChannels (Volume newVolume) throw ( AudioException )
 Sets the volume for all the input mixing channels at once.
virtual ChannelNumber getPlayingChannelCount () const throw ( AudioException )
 Returns the number of channels being currently playing (including those which are paused).
virtual ChannelNumber getPausedChannelCount () const throw ( AudioException )
 Returns the number of channels being currently paused (including those which were paused and halted afterwards).
virtual void pauseAllChannels () throw ( AudioException )
 Pauses all mixing channels being actively playing.
virtual void resumeAllChannels () throw ( AudioException )
 Resumes the playing on all paused mixing channels.
virtual void haltAllChannels () throw ( AudioException )
 Halts the playing on all mixing channels.
virtual ChannelNumber expireAllChannelsIn (Ceylan::System::Millisecond expireDuration) throw ( AudioException )
 Makes all mixing channels stop after the specified duration is elapsed.
virtual ChannelNumber fadeOutAllChannelsDuring (Ceylan::System::Millisecond fadeOutDuration) throw ( AudioException )
 Makes all mixing channels fade-out during the specified duration elapsed.
virtual MusicType getTypeOfCurrentMusic () const throw ( AudioException )
 Returns the type of the music currently played (if any), otherwise returns NoMusic.
virtual bool isMusicPlaying () const throw ( AudioException )
 Returns whether music is actively playing.
virtual bool isMusicPaused () const throw ( AudioException )
 Returns whether music is paused.
virtual FadingStatus getMusicFadingStatus () const throw ( AudioException )
 Returns whether music is fading in, out, or not at all.
virtual std::string getDriverName () const throw ( AudioException )
 Returns the name of the audio driver being currently used (example: 'dsp').
virtual const std::string toString (Ceylan::VerbosityLevels level=Ceylan::high) const throw ()
 Returns an user-friendly description of the state of this object.

Static Public Member Functions

static std::string DescribeEnvironmentVariables () throw ()
 Returns a summary about the possible use of video-related environment variables, for the selected back-end, expressed in specified format.
static bool IsAudioInitialized () throw ()
 Tells whether audio has already been initialized.
static std::string GetDriverName () throw ( AudioException )
 Returns the name of the audio driver being currently used (example: 'dsp').

Static Public Attributes

static const SampleFormat Uint8SampleFormat = 0x0008
 Unsigned 8-bit sample.
static const SampleFormat Sint8SampleFormat = 0x8008
 Signed 8-bit sample.
static const SampleFormat LittleUint16SampleFormat = 0x0010
 Unsigned 16-bit sample, little-endian byte order.
static const SampleFormat LittleSint16SampleFormat = 0x8010
 Signed 16-bit sample, little-endian byte order.
static const SampleFormat BigUint16SampleFormat = 0x1010
 Unsigned 16-bit sample, big-endian byte order.
static const SampleFormat BigSint16SampleFormat = 0x9010
 Signed 16-bit sample, big-endian byte order.
static const SampleFormat NativeUint16SampleFormat = 0x1010
 Unsigned 16-bit sample, native byte order (big or little).
static const SampleFormat NativeSint16SampleFormat = 0x9010
 Signed 16-bit sample, native byte order (big or little).
static const SampleFormat IMAADPCMSampleFormat = 0x0012
 IMA ADPCM (not Microsoft) sample.
static const ChannelFormat Mono = 1
 Monophonic (one channel).
static const ChannelFormat Stereo = 2
 Stereophonic (two channels).
static const Volume MinVolume = 0
 The smallest volume possible (mute).
static const Volume MaxVolume = 128
 The highest volume possible (full throttle).
static std::string AudioPathEnvironmentVariable = "AUDIO_PATH"
 The name of the environment variable that may contain directory names that should contain audio files.
static Ceylan::System::FileLocator AudioFileLocator
 Allows to keep track of audio directories.
static const Ceylan::Uint16 DriverNameMaximumLength = 50
 The maximum length for the name of the audio driver.

Protected Member Functions

virtual void onMusicPlaybackFinished () throw ( AudioException )
 This method will be automatically called as soon as the music playback stops.

Static Protected Member Functions

static ChannelNumber GetChannelCountFor (ChannelFormat format) throw ( AudioException )
 Returns the number of channels corresponding to the specified channel format.
static ChunkSize GetSampleSizeFor (SampleFormat format) throw ( AudioException )
 Returns the number of bytes corresponding a sample in specified sample format.

Protected Attributes

bool _mixerInitialized
 Tells whether the internal mixer is set.
ChunkSize _chunkSize
 The number of bytes of a mixing chunk.
std::vector< AudioChannel * > _inputChannels
 The input mixing channels.

Static Protected Attributes

static bool _AudioInitialized = false
 Keeps tracks of audio initialization calls.

Private Member Functions

 AudioModule () throw ( AudioException )
 Private constructor to be sure it will not be implicitly called.
virtual ~AudioModule () throw ()
 Virtual destructor ensuring correct audio clean-up.
 AudioModule (const AudioModule &source) throw ()
 Copy constructor made private to ensure that it will be never called.
AudioModuleoperator= (const AudioModule &source) throw ()
 Assignment operator made private to ensure that it will be never called.

Static Private Member Functions

static void HandleMusicPlaybackFinishedCallback ()
 Callback to catch the end of the music playback.

Static Private Attributes

static const std::string SDLEnvironmentVariables [] = {}
 Array of all known environment variables related to audio, for SDL back-end.

Friends

class OSDL::CommonModule
class CommonModule
OSDL_DLL friend AudioModulegetExistingAudioModule () throw ()
 This friend function is intended to be the usual means of getting a reference to the audio module, which must already exist.

Member Typedef Documentation

Allows to store the number (identifier) of a mixing channel.

Definition at line 158 of file OSDLAudio.h.


Constructor & Destructor Documentation

AudioModule::AudioModule (  )  throw ( AudioException ) [private]

Private constructor to be sure it will not be implicitly called.

Called by the CommonModule when audio is requested.

Exceptions:
AudioException if the audio subsystem initialization failed.

Definition at line 288 of file OSDLAudio.cc.

References _AudioInitialized, OSDL::CommonModule::BackendSuccess, OSDL::Utils::getBackendLastError(), HandleMusicPlaybackFinishedCallback(), and OSDL::CommonModule::UseAudio.

AudioModule::~AudioModule (  )  throw () [private, virtual]

Virtual destructor ensuring correct audio clean-up.

Definition at line 367 of file OSDLAudio.cc.

References _AudioInitialized, _mixerInitialized, unsetMode(), and OSDL::CommonModule::UseAudio.

OSDL::Audio::AudioModule::AudioModule ( const AudioModule source  )  throw () [explicit, private]

Copy constructor made private to ensure that it will be never called.

The compiler should complain whenever this undefined constructor is called, implicitly or not.


Member Function Documentation

virtual void OSDL::Audio::AudioModule::setMode ( Ceylan::Maths::Hertz  outputFrequency,
SampleFormat  outputSampleFormat,
ChannelFormat  outputChannel,
ChunkSize  outputBufferSize,
ChannelNumber  mixingChannelNumber = 16 
) throw ( AudioException ) [virtual]

Tries to sets up an audio mode with the specified output sampling frequency, output sample format, number of sound channels in output and bytes used per output sample.

Initializes the internal mixer.

The specified settings may or may not be obtained.

See also:
getObtainedMode to know the actual settings having been set.
Note:
This specifies how the overall final mixed sound will be output to the audio card. This does not imply that the mixed channels have to follow the same settings (even if it would be generally interesting to do so to avoid conversions).
Parameters:
outputFrequency the output sampling frequency, in samples per second (Hz). A common frequency is 22 050 Hz, usually a good choice for games. 44 100 Hz (i.e. 44.1 kHz, the CD audio rate) requires a lot of CPU power and bus bandwidth.
outputSampleFormat the sample format to output, i.e. the encoding of the final samples sent to the audio card (ex: 16-bit little endian unsigned samples, i.e. LittleUint16SampleFormat).
outputChannel the channel output format, i.e. the number and role of the output streams to target (ex: stereo).
outputBufferSize the size, in bytes, of the resulting mixed buffer. Divide this size by the size of a sample (corresponding to the specified sample format), and you obtain the number of samples in the output buffer. Choosing the right buffer size is a tricky trade-off: if too small, the callback for sound mixing may be called too frequently for the running platform to catch the pace, and sound may skip. If too big, latency might become noticeable: sound effects will lag behind the action more. For music output only, the buffer may be chosen quite big (say, 2048 samples at 22 050 Hz for each channel).
mixingChannelNumber the number of mixer (input) channels that must be created.
Exceptions:
AudioException if the setting of the new mode failed, including if the operation is not supported.

virtual Ceylan::System::Millisecond OSDL::Audio::AudioModule::getObtainedMode ( Ceylan::Maths::Hertz &  actualOutputFrequency,
SampleFormat actualOutputSampleFormat,
ChannelNumber actualOutputChannelNumber 
) throw ( AudioException ) [virtual]

Returns in specified parameters the actual settings of the mixer.

Parameters:
actualOutputFrequency will be set to the output sampling frequency, in samples per second (Hz).
actualOutputSampleFormat will be set to the sample format that will be output.
actualOutputChannelNumber will be set to the number of channels obtained (note that is not the channel format)
Returns:
the mean latency, in milliseconds, that corresponds to the actual settings and to the chunk size.
Exceptions:
AudioException if the operation failed.

void AudioModule::unsetMode (  )  throw ( AudioException ) [virtual]

Unsets an audio mode previously set.

Stops the internal mixer.

Exceptions:
AudioException of the operation failed.

Definition at line 512 of file OSDLAudio.cc.

References _chunkSize, _inputChannels, _mixerInitialized, and LOG_WARNING_AUDIO.

Referenced by ~AudioModule().

void AudioModule::setPanning ( Ceylan::Maths::Percentage  leftPercentage  )  throw ( AudioException ) [virtual]

Activates stereo panning and sets the specified distribution between left/right output channels for the overall mixing output.

All input mixing channels and the music output will be therefore panned that same way.

Note:
This effect will only work on stereo audio output. On mono audio device, nothing will be done.
Parameters:
leftPercentage,between 0 and 100 (%). Right percentage will be equal to 100 - leftPercentage.
Exceptions:
AudioException if the operation failed, including if not supported.

Definition at line 550 of file OSDLAudio.cc.

void AudioModule::unsetPanning (  )  throw ( AudioException ) [virtual]

Deactivates stereo panning effect.

Exceptions:
AudioException if the operation failed, including if not supported.

Definition at line 575 of file OSDLAudio.cc.

void AudioModule::setReverseStereo ( bool  reverse = true  )  throw ( AudioException ) [virtual]

Activates or deactivates reverse stereo: if activated, swaps left and right channel output channels.

Note:
This effect will only work on stereo audio output. On mono audio device, nothing will be done.
Parameters:
reverse if true, left channel will be output into right one, and right channel into left one.
Exceptions:
AudioException if the operation failed, including if not supported.

Definition at line 596 of file OSDLAudio.cc.

void AudioModule::setDistanceAttenuation ( ListenerDistance  distance  )  throw ( AudioException ) [virtual]

Activates distance attenuation for the overall mixing output.

All input mixing channels and the music output will be therefore attenuated that same way.

Parameters:
distance corresponds to the distance between the audio sources (deemed all at the same location) and the listener. It ranges for 0 (closest possible) to 255 (far). A distance of 0 unregisters this effect (volume continuity is then ensured).
Exceptions:
AudioException if the operation failed, including if not supported.
See also:
ListenerDistance

Definition at line 617 of file OSDLAudio.cc.

void AudioModule::unsetDistanceAttenuation (  )  throw ( AudioException ) [virtual]

Deactivates distance attenuation effect for the overall mixing output.

Exceptions:
AudioException if the operation failed, including if not supported.

Definition at line 639 of file OSDLAudio.cc.

void AudioModule::setPositionAttenuation ( ListenerDistance  distance,
ListenerAngle  angle 
) throw ( AudioException ) [virtual]

Activates attenuation based on distance and angle for the overall mixing output.

All input mixing channels and the music output will be therefore attenuated that same way.

Parameters:
distance corresponds to the distance between the audio sources (deemed all at the same location) and the listener. It ranges for 0 (closest possible) to 255 (far).
angle corresponds to the angle between the audio sources (deemed all at the same location) and the listener. Larger angles will be reduced to the [0..360[ range using the 'modulo 360' (angle % 360 ) operator.
Exceptions:
AudioException if the operation failed, including if not supported.
See also:
ListenerDistance, ListenerAngle

Definition at line 659 of file OSDLAudio.cc.

void AudioModule::unsetPositionAttenuation (  )  throw ( AudioException ) [virtual]

Deactivates position attenuation effect for the overall mixing output.

Exceptions:
AudioException if the operation failed, including if not supported.

Definition at line 681 of file OSDLAudio.cc.

ChannelNumber AudioModule::getMixingChannelCount (  )  const throw ( AudioException ) [virtual]

Returns the number of input mixing channels.

Exceptions:
AudioException if the operation failed.

Definition at line 727 of file OSDLAudio.cc.

References _inputChannels.

AudioChannel & AudioModule::getMixingChannelAt ( ChannelNumber  index  )  const throw ( AudioException ) [virtual]

Returns the specified input mixing channel.

Parameters:
index the number of the target channel.
Exceptions:
AudioException if the operation failed, including if index is out of bounds.

Definition at line 755 of file OSDLAudio.cc.

References _inputChannels.

Referenced by OSDL::Audio::AudioChannel::HandleFinishedPlaybackCallback().

void AudioModule::setVolumeForAllMixingChannels ( Volume  newVolume  )  throw ( AudioException ) [virtual]

Sets the volume for all the input mixing channels at once.

Parameters:
newVolume the volume to set all channels to.
Exceptions:
AudioException if the operation failed.

Definition at line 776 of file OSDLAudio.cc.

ChannelNumber AudioModule::getPlayingChannelCount (  )  const throw ( AudioException ) [virtual]

Returns the number of channels being currently playing (including those which are paused).

Exceptions:
AudioException if the operation failed or is not supported.

Definition at line 795 of file OSDLAudio.cc.

ChannelNumber AudioModule::getPausedChannelCount (  )  const throw ( AudioException ) [virtual]

Returns the number of channels being currently paused (including those which were paused and halted afterwards).

Exceptions:
AudioException if the operation failed or is not supported.

Definition at line 814 of file OSDLAudio.cc.

void AudioModule::pauseAllChannels (  )  throw ( AudioException ) [virtual]

Pauses all mixing channels being actively playing.

A paused channel can still be halted.

Exceptions:
AudioException if the operation failed or is not supported.

Definition at line 833 of file OSDLAudio.cc.

void AudioModule::resumeAllChannels (  )  throw ( AudioException ) [virtual]

Resumes the playing on all paused mixing channels.

Exceptions:
AudioException if the operation failed or is not supported.

Definition at line 851 of file OSDLAudio.cc.

void AudioModule::haltAllChannels (  )  throw ( AudioException ) [virtual]

Halts the playing on all mixing channels.

Note:
AudioChannel::onPlaybackFinished will be automatically called on halted channels.
Exceptions:
AudioException if the operation failed or is not supported.

Definition at line 869 of file OSDLAudio.cc.

ChannelNumber AudioModule::expireAllChannelsIn ( Ceylan::System::Millisecond  expireDuration  )  throw ( AudioException ) [virtual]

Makes all mixing channels stop after the specified duration is elapsed.

Parameters:
expireDuration the duration, in milliseconds, until the channels are stopped.
Returns:
the number of channels set to expire, whether or not they are active.
Exceptions:
AudioChannelException if the operation failed, including if not supported.

Definition at line 887 of file OSDLAudio.cc.

ChannelNumber AudioModule::fadeOutAllChannelsDuring ( Ceylan::System::Millisecond  fadeOutDuration  )  throw ( AudioException ) [virtual]

Makes all mixing channels fade-out during the specified duration elapsed.

Parameters:
fadeOutDuration the duration, in milliseconds, of the fade-out, which will start immediately.
Returns:
the number of channels set to fade-out, whether or not they are active.
Exceptions:
AudioException if the operation failed, including if not supported.

Definition at line 906 of file OSDLAudio.cc.

MusicType AudioModule::getTypeOfCurrentMusic (  )  const throw ( AudioException ) [virtual]

Returns the type of the music currently played (if any), otherwise returns NoMusic.

Exceptions:
AudioException if the operation failed or is not supported.

Definition at line 701 of file OSDLAudio.cc.

References OSDL::Audio::Music::GetTypeOf().

bool AudioModule::isMusicPlaying (  )  const throw ( AudioException ) [virtual]

Returns whether music is actively playing.

Note:
Does not check if the music has been paused.
Exceptions:
AudioException if the operation failed or is not supported.

Definition at line 925 of file OSDLAudio.cc.

bool AudioModule::isMusicPaused (  )  const throw ( AudioException ) [virtual]

Returns whether music is paused.

Note:
Does not check if the music has been halted after it was paused.
Exceptions:
AudioException if the operation failed or is not supported.

Definition at line 943 of file OSDLAudio.cc.

FadingStatus AudioModule::getMusicFadingStatus (  )  const throw ( AudioException ) [virtual]

Returns whether music is fading in, out, or not at all.

Note:
Does not tell if the channel is playing anything, or paused, so that must be tested separately.
Exceptions:
AudioException if the operation failed or is not supported.

Definition at line 961 of file OSDLAudio.cc.

References OSDL::Audio::In, OSDL::Audio::None, and OSDL::Audio::Out.

std::string AudioModule::getDriverName (  )  const throw ( AudioException ) [virtual]

Returns the name of the audio driver being currently used (example: 'dsp').

See also:
GetDriverName
Exceptions:
AudioException if the operation failed.

Definition at line 1000 of file OSDLAudio.cc.

References GetDriverName().

const string AudioModule::toString ( Ceylan::VerbosityLevels  level = Ceylan::high  )  const throw () [virtual]

Returns an user-friendly description of the state of this object.

Parameters:
level the requested verbosity level.
Note:
Text output format is determined from overall settings.
See also:
Ceylan::TextDisplayable

Definition at line 1009 of file OSDLAudio.cc.

References _chunkSize, _inputChannels, _mixerInitialized, and OSDL::Video::Pixels::toString().

string AudioModule::DescribeEnvironmentVariables (  )  throw () [static]

Returns a summary about the possible use of video-related environment variables, for the selected back-end, expressed in specified format.

Note:
The SDL back-end can be partly driven by a set of environment variables.

Definition at line 1043 of file OSDLAudio.cc.

References SDLEnvironmentVariables, and OSDL::Video::Pixels::toString().

bool AudioModule::IsAudioInitialized (  )  throw () [static]

Tells whether audio has already been initialized.

Note:
This method is static so that calling it is convenient: no need to explicitly retrieve the common module, then audio module before knowing the result.
The need to retrieve the right module from scratch at each call is rather inefficient though.

Definition at line 1103 of file OSDLAudio.cc.

References _AudioInitialized.

Referenced by OSDL::Audio::Music::Music(), and OSDL::Audio::Sound::Sound().

string AudioModule::GetDriverName (  )  throw ( AudioException ) [static]

Returns the name of the audio driver being currently used (example: 'dsp').

See also:
getDriverName.
Exceptions:
AudioException if the operation failed.

Definition at line 1112 of file OSDLAudio.cc.

References DriverNameMaximumLength.

Referenced by getDriverName().

void AudioModule::onMusicPlaybackFinished (  )  throw ( AudioException ) [protected, virtual]

This method will be automatically called as soon as the music playback stops.

This method is meant to be overriden, in order to be able to react when this event occurs (like a call-back).

Note:
Never call back-end functions (ex: SDL or SDL_mixer) from the callback.
This default implementation is do-nothing.

Exceptions:
AudioException if the operation failed.

Definition at line 1136 of file OSDLAudio.cc.

Referenced by HandleMusicPlaybackFinishedCallback().

ChannelNumber AudioModule::GetChannelCountFor ( ChannelFormat  format  )  throw ( AudioException ) [static, protected]

Returns the number of channels corresponding to the specified channel format.

Parameters:
format the channel format whose number of channels is to be determined.
Returns:
the corresponding number of channels.
Exceptions:
AudioException if the operation failed.

Definition at line 1154 of file OSDLAudio.cc.

References Mono, Stereo, and OSDL::Video::Pixels::toString().

ChunkSize AudioModule::GetSampleSizeFor ( SampleFormat  format  )  throw ( AudioException ) [static, protected]

Returns the number of bytes corresponding a sample in specified sample format.

Parameters:
format the sample format whose size in bytes is to be determined.
Returns:
the corresponding number of bytes.
Exceptions:
AudioException if the operation failed.

Definition at line 1181 of file OSDLAudio.cc.

References BigSint16SampleFormat, BigUint16SampleFormat, LittleSint16SampleFormat, LittleUint16SampleFormat, Sint8SampleFormat, OSDL::Video::Pixels::toString(), and Uint8SampleFormat.

void AudioModule::HandleMusicPlaybackFinishedCallback (  )  [static, private]

Callback to catch the end of the music playback.

This signature is mandatory.

Definition at line 1218 of file OSDLAudio.cc.

References OSDL::Audio::getExistingAudioModule(), and onMusicPlaybackFinished().

Referenced by AudioModule().

AudioModule& OSDL::Audio::AudioModule::operator= ( const AudioModule source  )  throw () [private]

Assignment operator made private to ensure that it will be never called.

The compiler should complain whenever this undefined operator is called, implicitly or not.


Friends And Related Function Documentation

friend class OSDL::CommonModule [friend]

Definition at line 70 of file OSDLAudio.h.

friend class CommonModule [friend]

Definition at line 828 of file OSDLAudio.h.

OSDL_DLL friend AudioModule& getExistingAudioModule (  )  throw () [friend]

This friend function is intended to be the usual means of getting a reference to the audio module, which must already exist.

It is called in contexts where this module has to exist.

If not, a fatal error will be triggered (not an exception to avoid handling it in all user methods).

Note:
This function is mainly useful for the OSDL internals, for example for channel callbacks.

This method is not static to avoid pitfalls of static initializer ordering.

If not, a fatal error will be triggered (not an exception to avoid handling it in all user methods).

Note:
This function is mainly useful for the OSDL internals, if sub-modules, such as the event module, needed access to the common module.
See also:
hasCommonModule()
Note:
This method is not static to avoid pitfalls of static initializer ordering.

Definition at line 1242 of file OSDLAudio.cc.


Member Data Documentation

Unsigned 8-bit sample.

Definition at line 106 of file OSDLAudio.h.

Referenced by GetSampleSizeFor().

Signed 8-bit sample.

Definition at line 109 of file OSDLAudio.h.

Referenced by GetSampleSizeFor(), and OSDL::Audio::Sound::load().

Unsigned 16-bit sample, little-endian byte order.

Definition at line 114 of file OSDLAudio.h.

Referenced by GetSampleSizeFor().

Signed 16-bit sample, little-endian byte order.

Definition at line 117 of file OSDLAudio.h.

Referenced by GetSampleSizeFor(), and OSDL::Audio::Sound::load().

Unsigned 16-bit sample, big-endian byte order.

Definition at line 121 of file OSDLAudio.h.

Referenced by GetSampleSizeFor().

Signed 16-bit sample, big-endian byte order.

Definition at line 124 of file OSDLAudio.h.

Referenced by GetSampleSizeFor().

Unsigned 16-bit sample, native byte order (big or little).

Definition at line 128 of file OSDLAudio.h.

Signed 16-bit sample, native byte order (big or little).

Definition at line 131 of file OSDLAudio.h.

IMA ADPCM (not Microsoft) sample.

Definition at line 135 of file OSDLAudio.h.

Referenced by OSDL::Audio::Sound::load().

const ChannelFormat AudioModule::Mono = 1 [static]

Monophonic (one channel).

Definition at line 144 of file OSDLAudio.h.

Referenced by GetChannelCountFor(), and OSDL::Audio::Sound::load().

const ChannelFormat AudioModule::Stereo = 2 [static]

Stereophonic (two channels).

Definition at line 147 of file OSDLAudio.h.

Referenced by GetChannelCountFor(), and OSDL::Audio::Sound::load().

const Volume AudioModule::MinVolume = 0 [static]

The smallest volume possible (mute).

Definition at line 151 of file OSDLAudio.h.

Referenced by OSDL::Audio::Sound::toString(), and OSDL::Audio::Music::toString().

const Volume AudioModule::MaxVolume = 128 [static]

The highest volume possible (full throttle).

Definition at line 154 of file OSDLAudio.h.

Referenced by OSDL::Audio::Sound::toString(), and OSDL::Audio::Music::toString().

The name of the environment variable that may contain directory names that should contain audio files.

Definition at line 616 of file OSDLAudio.h.

Ceylan::System::FileLocator OSDL::Audio::AudioModule::AudioFileLocator [static]

Allows to keep track of audio directories.

Automatically gathers the list of directories specified as the value of the environment variable named as specified in FontPathEnvironmentVariable (AUDIO_PATH).

Definition at line 627 of file OSDLAudio.h.

const Ceylan::Uint16 AudioModule::DriverNameMaximumLength = 50 [static]

The maximum length for the name of the audio driver.

Definition at line 669 of file OSDLAudio.h.

Referenced by GetDriverName().

Tells whether the internal mixer is set.

Definition at line 677 of file OSDLAudio.h.

Referenced by toString(), unsetMode(), and ~AudioModule().

The number of bytes of a mixing chunk.

Definition at line 681 of file OSDLAudio.h.

Referenced by toString(), and unsetMode().

The input mixing channels.

Definition at line 696 of file OSDLAudio.h.

Referenced by getMixingChannelAt(), getMixingChannelCount(), toString(), and unsetMode().

bool AudioModule::_AudioInitialized = false [static, protected]

Keeps tracks of audio initialization calls.

Note:
This is for the audio subsystem, not for the mixer.
The mixer to be set needs this audio subsystem to be on.

Definition at line 762 of file OSDLAudio.h.

Referenced by AudioModule(), IsAudioInitialized(), and ~AudioModule().

const string AudioModule::SDLEnvironmentVariables = {} [static, private]

Array of all known environment variables related to audio, for SDL back-end.

Definition at line 824 of file OSDLAudio.h.

Referenced by DescribeEnvironmentVariables().


The documentation for this class was generated from the following files:

Generated on Fri Aug 1 14:46:11 2008 for OSDL by  doxygen 1.5.5