![]() |
http://www.sim.no http://www.coin3d.org |
The SoAudioDevice class is used to control an audio device.The SoAudioDevice class is responsible for initialization of an audio device, as well as enabling and disabling sound. It is a singleton class. More...
#include <Inventor/misc/SoAudioDevice.h>
Public Member Functions | |
SbBool | init (const SbString &devicetype, const SbString &devicename) |
SbBool | enable () |
void | disable () |
SbBool | isEnabled () |
SbBool | haveSound () |
void | setGain (float gain) |
void | mute (SbBool mute=TRUE) |
void | cleanup () |
Static Public Member Functions | |
static SoAudioDevice * | instance () |
Friends | |
class | SoAudioDeviceP |
The SoAudioDevice class is used to control an audio device.
The SoAudioDevice class is responsible for initialization of an audio device, as well as enabling and disabling sound. It is a singleton class.
The application programmer does not need to use this class directly, as audio support is enabled by default, and the default settings are reasonable.
Coin uses OpenAL (http://www.openal.org/, http://developer.soundblaster.com [Games section]) to render audio. OpenAL should work with any soundcard, and on most modern operating systems (including Unix, Linux, IRIX, *BSD, Mac OS X and Microsoft Windows). 2 speaker output is always available, and on some OS and soundcard combinations, more advanced speaker configurations are supported. On Microsoft Windows, OpenAL can use DirectSound3D to render audio, thus supporting any speaker configuration the current DirectSound3D driver supports. Configuring speakers are done through the soundcard driver, and is transparent to both Coin and OpenAL.
SoAudioDevice * SoAudioDevice::instance | ( | ) | [static] |
Returns a pointer to the SoAudioDevice class, which is a singleton.
Referenced by SoSceneManager::render().
Initializes the audio device. Currently, the only supported devicetype is "OpenAL". The supported devicename depends on the OS and on installed soundcards and drivers. On Microsoft Windows, supported device names are "DirectSound3D", "DirectSound", and "MMSYSTEM". See OpenAL documentation (available from http://www.openal.org/) for further information.
The application programmer may override the default setting by calling this method with the wanted device type and name.
The user can also control which devicename OpenAL uses by setting the COIN_SOUND_DRIVER_NAME environment variable. On Microsoft Windows, the default driver name is "DirectSound3D", which should normally be what the user wants.
References disable(), SbString::getString(), haveSound(), SoDebugError::postInfo(), and SoDebugError::postWarning().
SbBool SoAudioDevice::enable | ( | ) |
Enables sound
References haveSound().
void SoAudioDevice::disable | ( | ) |
Disables sound. Effectively silencing all audio output.
References haveSound().
Referenced by init().
SbBool SoAudioDevice::isEnabled | ( | void | ) |
Returns TRUE if audio is enabled.
SbBool SoAudioDevice::haveSound | ( | ) |
void SoAudioDevice::cleanup | ( | void | ) |
Cleans up any allocated resources.
NOTE: now obsoleted, don't use this. Clean-up is triggered from the atexit scheme in "tidbits".
References SoDebugError::post().
Copyright © 1998-2007 by Systems in Motion AS. All rights reserved.
Generated on Mon Feb 28 2011 10:12:02 for Coin by Doxygen. 1.7.3