#include <device_ds.h>
Inheritance diagram for audiere::DSAudioDevice:
Public Member Functions | |
void | update () |
OutputStream * | openStream (SampleSource *source) |
OutputStream * | openBuffer (void *samples, int frame_count, int channel_count, int sample_rate, SampleFormat sample_format) |
const char * | getName () |
Static Public Member Functions | |
static DSAudioDevice * | create (const ParameterList ¶meters) |
static int | Volume_AudiereToDirectSound (float volume) |
static int | Pan_AudiereToDirectSound (float pan) |
Friends | |
class | DSOutputBuffer |
class | DSOutputStream |
Definition at line 27 of file device_ds.h.
|
Definition at line 17 of file device_ds.cpp. References ADR_GUARD, ADR_LOG, audiere::ParameterList::getBoolean(), audiere::ParameterList::getInt(), and audiere::ParameterList::getValue(). |
|
Gets the name of the audio device. For example "directsound" or "oss".
Implements audiere::AudioDevice. Definition at line 326 of file device_ds.cpp. |
|
Open a single buffer with the specified PCM data. This is sometimes more efficient than streaming and works on a larger variety of audio devices. In some implementations, this may download the audio data to the sound card's memory itself.
Implements audiere::AudioDevice. Definition at line 239 of file device_ds.cpp. References ADR_GUARD, ADR_IF_DEBUG, ADR_LOG, DSOutputBuffer, audiere::GetSampleSize(), and SYNCHRONIZED. |
|
Open an output stream with a given sample source. If the sample source ever runs out of data, the output stream automatically stops itself. The output stream takes ownership of the sample source, even if opening the output stream fails (in which case the source is immediately deleted).
Implements audiere::AudioDevice. Definition at line 180 of file device_ds.cpp. References ADR_GUARD, ADR_LOG, DSOutputStream, audiere::SampleSource::getFormat(), audiere::GetSampleSize(), and SYNCHRONIZED. |
|
Definition at line 357 of file device_ds.cpp. References Volume_AudiereToDirectSound(). Referenced by audiere::DSOutputStream::setPan(), and audiere::DSOutputBuffer::setPan(). |
|
Tell the device to do any internal state updates. Some devices update on an internal thread. If that is the case, this method does nothing. Implements audiere::AudioDevice. Definition at line 152 of file device_ds.cpp. References ADR_GUARD, and SYNCHRONIZED. |
|
DirectSound treats volumes and pan levels as decibels (exponential growth like the Richter scale). We want a linear ramp. Do the conversion! Definition at line 346 of file device_ds.cpp. Referenced by Pan_AudiereToDirectSound(), audiere::DSOutputStream::setVolume(), and audiere::DSOutputBuffer::setVolume(). |
|
Definition at line 73 of file device_ds.h. Referenced by openBuffer(). |
|
Definition at line 74 of file device_ds.h. Referenced by openStream(). |