MythTV  master
Public Member Functions | Private Member Functions | Private Attributes | List of all members
AudioInputALSA Class Reference

#include <audioinputalsa.h>

Inheritance diagram for AudioInputALSA:
Inheritance graph
[legend]
Collaboration diagram for AudioInputALSA:
Collaboration graph
[legend]

Public Member Functions

 AudioInputALSA (const QString &device)
 
 ~AudioInputALSA () override
 
bool Open (uint sample_bits, uint sample_rate, uint channels) override
 
bool IsOpen (void) override
 
void Close (void) override
 
bool Start (void) override
 
bool Stop (void) override
 
int GetBlockSize (void) override
 
int GetSamples (void *buf, uint nbytes) override
 
int GetNumReadyBytes (void) override
 
- Public Member Functions inherited from AudioInput
virtual ~AudioInput ()=default
 

Private Member Functions

bool PrepHwParams (void)
 
bool PrepSwParams (void)
 
int PcmRead (void *buf, uint nbytes)
 
bool Recovery (int err)
 
bool AlsaBad (int op_result, const QString &errmsg)
 

Private Attributes

QByteArray m_alsaDevice
 
snd_pcm_t * m_pcmHandle {nullptr}
 
snd_pcm_uframes_t m_periodSize {0}
 
int m_mythBlockBytes {0}
 

Additional Inherited Members

- Static Public Member Functions inherited from AudioInput
static AudioInputCreateDevice (const QByteArray &device)
 
- Protected Member Functions inherited from AudioInput
 AudioInput (const QString &device)
 
- Protected Attributes inherited from AudioInput
QByteArray m_audioDevice
 
int m_audioChannels {0}
 
int m_audioSampleBits {0}
 
int m_audioSampleRate {0}
 

Detailed Description

Definition at line 33 of file audioinputalsa.h.

Constructor & Destructor Documentation

◆ AudioInputALSA()

AudioInputALSA::AudioInputALSA ( const QString &  device)
inlineexplicit

Definition at line 36 of file audioinputalsa.h.

◆ ~AudioInputALSA()

AudioInputALSA::~AudioInputALSA ( )
inlineoverride

Definition at line 39 of file audioinputalsa.h.

Member Function Documentation

◆ Open()

bool AudioInputALSA::Open ( uint  sample_bits,
uint  sample_rate,
uint  channels 
)
overridevirtual

Implements AudioInput.

Definition at line 28 of file audioinputalsa.cpp.

◆ IsOpen()

bool AudioInputALSA::IsOpen ( void  )
inlineoverridevirtual

Implements AudioInput.

Definition at line 42 of file audioinputalsa.h.

◆ Close()

void AudioInputALSA::Close ( void  )
overridevirtual

Implements AudioInput.

Definition at line 57 of file audioinputalsa.cpp.

Referenced by ~AudioInputALSA().

◆ Start()

bool AudioInputALSA::Start ( void  )
inlineoverridevirtual

Implements AudioInput.

Definition at line 46 of file audioinputalsa.h.

Referenced by GetSamples().

◆ Stop()

bool AudioInputALSA::Stop ( void  )
overridevirtual

Implements AudioInput.

Definition at line 67 of file audioinputalsa.cpp.

Referenced by Close(), and GetSamples().

◆ GetBlockSize()

int AudioInputALSA::GetBlockSize ( void  )
inlineoverridevirtual

Implements AudioInput.

Definition at line 50 of file audioinputalsa.h.

◆ GetSamples()

int AudioInputALSA::GetSamples ( void *  buf,
uint  nbytes 
)
overridevirtual

Implements AudioInput.

Definition at line 79 of file audioinputalsa.cpp.

◆ GetNumReadyBytes()

int AudioInputALSA::GetNumReadyBytes ( void  )
overridevirtual

Implements AudioInput.

Definition at line 113 of file audioinputalsa.cpp.

◆ PrepHwParams()

bool AudioInputALSA::PrepHwParams ( void  )
private

Definition at line 134 of file audioinputalsa.cpp.

Referenced by Open().

◆ PrepSwParams()

bool AudioInputALSA::PrepSwParams ( void  )
private

Definition at line 216 of file audioinputalsa.cpp.

Referenced by Open().

◆ PcmRead()

int AudioInputALSA::PcmRead ( void *  buf,
uint  nbytes 
)
private

Definition at line 241 of file audioinputalsa.cpp.

Referenced by GetSamples().

◆ Recovery()

bool AudioInputALSA::Recovery ( int  err)
private

Definition at line 302 of file audioinputalsa.cpp.

Referenced by PcmRead().

◆ AlsaBad()

bool AudioInputALSA::AlsaBad ( int  op_result,
const QString &  errmsg 
)
private

Member Data Documentation

◆ m_alsaDevice

QByteArray AudioInputALSA::m_alsaDevice
private

Definition at line 62 of file audioinputalsa.h.

Referenced by Open().

◆ m_pcmHandle

snd_pcm_t* AudioInputALSA::m_pcmHandle {nullptr}
private

◆ m_periodSize

snd_pcm_uframes_t AudioInputALSA::m_periodSize {0}
private

Definition at line 64 of file audioinputalsa.h.

Referenced by PrepHwParams().

◆ m_mythBlockBytes

int AudioInputALSA::m_mythBlockBytes {0}
private

Definition at line 65 of file audioinputalsa.h.

Referenced by GetBlockSize(), and PrepHwParams().


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