LMMS
Loading...
Searching...
No Matches
lmms::AudioSdl Class Reference

#include <AudioSdl.h>

Inheritance diagram for lmms::AudioSdl:
lmms::AudioDevice

Classes

class  setupWidget

Public Member Functions

 AudioSdl (bool &_success_ful, AudioEngine *audioEngine)
 ~AudioSdl () override
Public Member Functions inherited from lmms::AudioDevice
 AudioDevice (const ch_cnt_t _channels, AudioEngine *audioEngine)
virtual ~AudioDevice ()
void lock ()
void unlock ()
virtual void registerPort (AudioBusHandle *port)
virtual void unregisterPort (AudioBusHandle *port)
virtual void renamePort (AudioBusHandle *port)
bool supportsCapture () const
sample_rate_t sampleRate () const
void processNextBuffer ()

Static Public Member Functions

static QString name ()

Private Member Functions

void startProcessing () override
void stopProcessing () override
void sdlAudioCallback (Uint8 *_buf, int _len)
void sdlInputAudioCallback (Uint8 *_buf, int _len)

Static Private Member Functions

static void sdlAudioCallback (void *_udata, Uint8 *_buf, int _len)
static void sdlInputAudioCallback (void *_udata, Uint8 *_buf, int _len)

Private Attributes

SDL_AudioSpec m_audioHandle
SampleFramem_outBuf
size_t m_currentBufferFramePos
size_t m_currentBufferFramesCount
bool m_stopped
SDL_AudioDeviceID m_outputDevice
SDL_AudioSpec m_inputAudioHandle
SDL_AudioDeviceID m_inputDevice

Additional Inherited Members

Protected Member Functions inherited from lmms::AudioDevice
virtual void writeBuffer (const SampleFrame *, const f_cnt_t)
f_cnt_t getNextBuffer (SampleFrame *_ab)
int convertToS16 (const SampleFrame *_ab, const f_cnt_t _frames, int_sample_t *_output_buffer, const bool _convert_endian=false)
void clearS16Buffer (int_sample_t *_outbuf, const f_cnt_t _frames)
ch_cnt_t channels () const
void setSampleRate (const sample_rate_t _new_sr)
void setChannels (const ch_cnt_t channels)
AudioEngineaudioEngine ()
Static Protected Member Functions inherited from lmms::AudioDevice
static void stopProcessingThread (QThread *thread)
Protected Attributes inherited from lmms::AudioDevice
bool m_supportsCapture

Constructor & Destructor Documentation

◆ AudioSdl()

lmms::AudioSdl::AudioSdl ( bool & _success_ful,
AudioEngine * audioEngine )

◆ ~AudioSdl()

lmms::AudioSdl::~AudioSdl ( )
override

Member Function Documentation

◆ name()

QString lmms::AudioSdl::name ( )
inlinestatic

◆ sdlAudioCallback() [1/2]

void lmms::AudioSdl::sdlAudioCallback ( Uint8 * _buf,
int _len )
private

◆ sdlAudioCallback() [2/2]

void lmms::AudioSdl::sdlAudioCallback ( void * _udata,
Uint8 * _buf,
int _len )
staticprivate

◆ sdlInputAudioCallback() [1/2]

void lmms::AudioSdl::sdlInputAudioCallback ( Uint8 * _buf,
int _len )
private

◆ sdlInputAudioCallback() [2/2]

void lmms::AudioSdl::sdlInputAudioCallback ( void * _udata,
Uint8 * _buf,
int _len )
staticprivate

◆ startProcessing()

void lmms::AudioSdl::startProcessing ( )
overrideprivatevirtual

Reimplemented from lmms::AudioDevice.

◆ stopProcessing()

void lmms::AudioSdl::stopProcessing ( )
overrideprivatevirtual

Reimplemented from lmms::AudioDevice.

Member Data Documentation

◆ m_audioHandle

SDL_AudioSpec lmms::AudioSdl::m_audioHandle
private

◆ m_currentBufferFramePos

size_t lmms::AudioSdl::m_currentBufferFramePos
private

◆ m_currentBufferFramesCount

size_t lmms::AudioSdl::m_currentBufferFramesCount
private

◆ m_inputAudioHandle

SDL_AudioSpec lmms::AudioSdl::m_inputAudioHandle
private

◆ m_inputDevice

SDL_AudioDeviceID lmms::AudioSdl::m_inputDevice
private

◆ m_outBuf

SampleFrame* lmms::AudioSdl::m_outBuf
private

◆ m_outputDevice

SDL_AudioDeviceID lmms::AudioSdl::m_outputDevice
private

◆ m_stopped

bool lmms::AudioSdl::m_stopped
private

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