SDL2 audio backend implementation. More...
#include <audio_backend.h>
Public Member Functions | |
SDL2AudioBackend ()=default | |
~SDL2AudioBackend () override | |
bool | Initialize (const AudioConfig &config) override |
void | Shutdown () override |
void | Play () override |
void | Pause () override |
void | Stop () override |
void | Clear () override |
bool | QueueSamples (const int16_t *samples, int num_samples) override |
bool | QueueSamples (const float *samples, int num_samples) override |
AudioStatus | GetStatus () const override |
bool | IsInitialized () const override |
AudioConfig | GetConfig () const override |
void | SetVolume (float volume) override |
float | GetVolume () const override |
std::string | GetBackendName () const override |
![]() | |
virtual | ~IAudioBackend ()=default |
Private Attributes | |
uint32_t | device_id_ = 0 |
AudioConfig | config_ |
bool | initialized_ = false |
float | volume_ = 1.0f |
SDL2 audio backend implementation.
Definition at line 77 of file audio_backend.h.
|
default |
|
override |
Definition at line 17 of file audio_backend.cc.
References Shutdown().
|
overridevirtual |
Implements yaze::emu::audio::IAudioBackend.
Definition at line 21 of file audio_backend.cc.
References yaze::emu::audio::AudioConfig::buffer_frames, yaze::emu::audio::AudioConfig::channels, config_, device_id_, yaze::emu::audio::AudioConfig::format, initialized_, yaze::emu::audio::INT16, LOG_ERROR, LOG_INFO, LOG_WARN, yaze::emu::audio::AudioConfig::sample_rate, and Shutdown().
|
overridevirtual |
Implements yaze::emu::audio::IAudioBackend.
Definition at line 66 of file audio_backend.cc.
References device_id_, initialized_, and LOG_INFO.
Referenced by Initialize(), and ~SDL2AudioBackend().
|
overridevirtual |
Implements yaze::emu::audio::IAudioBackend.
Definition at line 79 of file audio_backend.cc.
References device_id_, and initialized_.
|
overridevirtual |
Implements yaze::emu::audio::IAudioBackend.
Definition at line 84 of file audio_backend.cc.
References device_id_, and initialized_.
|
overridevirtual |
Implements yaze::emu::audio::IAudioBackend.
Definition at line 89 of file audio_backend.cc.
References Clear(), device_id_, and initialized_.
|
overridevirtual |
Implements yaze::emu::audio::IAudioBackend.
Definition at line 95 of file audio_backend.cc.
References device_id_, and initialized_.
Referenced by Stop().
|
overridevirtual |
Implements yaze::emu::audio::IAudioBackend.
Definition at line 100 of file audio_backend.cc.
References device_id_, initialized_, LOG_ERROR, and volume_.
Referenced by QueueSamples().
|
overridevirtual |
Implements yaze::emu::audio::IAudioBackend.
Definition at line 142 of file audio_backend.cc.
References initialized_, QueueSamples(), and volume_.
|
overridevirtual |
Implements yaze::emu::audio::IAudioBackend.
Definition at line 155 of file audio_backend.cc.
References yaze::emu::audio::AudioConfig::channels, config_, device_id_, yaze::emu::audio::AudioConfig::format, yaze::emu::audio::AudioStatus::has_underrun, initialized_, yaze::emu::audio::INT16, yaze::emu::audio::AudioStatus::is_playing, yaze::emu::audio::AudioStatus::queued_bytes, and yaze::emu::audio::AudioStatus::queued_frames.
|
overridevirtual |
Implements yaze::emu::audio::IAudioBackend.
Definition at line 176 of file audio_backend.cc.
References initialized_.
|
overridevirtual |
Implements yaze::emu::audio::IAudioBackend.
Definition at line 180 of file audio_backend.cc.
References config_.
|
overridevirtual |
Implements yaze::emu::audio::IAudioBackend.
Definition at line 184 of file audio_backend.cc.
References volume_.
|
overridevirtual |
Implements yaze::emu::audio::IAudioBackend.
Definition at line 188 of file audio_backend.cc.
References volume_.
|
inlineoverridevirtual |
Implements yaze::emu::audio::IAudioBackend.
Definition at line 100 of file audio_backend.h.
|
private |
Definition at line 103 of file audio_backend.h.
Referenced by Clear(), GetStatus(), Initialize(), Pause(), Play(), QueueSamples(), Shutdown(), and Stop().
|
private |
Definition at line 104 of file audio_backend.h.
Referenced by GetConfig(), GetStatus(), and Initialize().
|
private |
Definition at line 105 of file audio_backend.h.
Referenced by Clear(), GetStatus(), Initialize(), IsInitialized(), Pause(), Play(), QueueSamples(), QueueSamples(), Shutdown(), and Stop().
|
private |
Definition at line 106 of file audio_backend.h.
Referenced by GetVolume(), QueueSamples(), QueueSamples(), and SetVolume().