ALAudioDevice class
#include <nCine/Audio/ALAudioDevice.h>
OpenAL implementation of IAudioDevice.
Owns the OpenAL device and context, manages a fixed pool of sources and tracks the active players. On desktop Windows it also listens for default device changes and recreates the device when needed.
Base classes
- class IAudioDevice
- Interface for an audio device backend.
Constructors, destructors, conversion operators
- ALAudioDevice()
- ~ALAudioDevice() override
- ALAudioDevice(const ALAudioDevice&) deleted
Public functions
- auto operator=(const ALAudioDevice&) -> ALAudioDevice& deleted
- auto isValid() const -> bool override
- Returns
trueif the device was initialized successfully. - auto name() const -> const char* override
- Returns the name of the underlying device.
- auto gain() const -> float override
- Returns the listener gain (master volume).
- void setGain(float gain) override
- Sets the listener gain (master volume).
-
auto maxNumPlayers() const -> std::
uint32_t override - Returns the maximum number of players that can be active at once.
-
auto numPlayers() const -> std::
uint32_t override - Returns the number of currently active players.
- auto player(unsigned int index) const -> const IAudioPlayer* override
- void stopPlayers() override
- Stops every player currently playing.
- void pausePlayers() override
- Pauses every player currently playing.
- void stopPlayers(PlayerType playerType) override
- Stops every player of the specified type.
- void pausePlayers(PlayerType playerType) override
- Pauses every player of the specified type.
- void freezePlayers() override
- Pauses every player currently playing while keeping it registered.
- void unfreezePlayers() override
- Resumes every player previously paused by freezePlayers().
-
auto registerPlayer(IAudioPlayer* player) -> std::
uint32_t override - Registers a player so it receives state and buffer queue updates, returning its source id.
- void unregisterPlayer(IAudioPlayer* player) override
- Unregisters a previously registered player.
- void updatePlayers() override
- Updates the state of every registered player, including the buffer queue of stream players.
- auto getListenerPosition() const -> const Vector3f& override
- Returns the 3D position of the listener.
- void updateListener(const Vector3f& position, const Vector3f& velocity) override
- Updates the position and velocity of the listener.
-
auto nativeFrequency() -> std::
int32_t override - Returns the native sample rate of the device.
- void suspendDevice() override
- Suspends the audio device.
- void resumeDevice() override
- Resumes the audio device.