37 LOG(VB_GENERAL, LOG_INFO,
"Opening NULL audio device, will fail.");
55 while (
int rate = settings->GetNextRate())
57 settings->AddSupportedRate(rate);
63 settings->AddSupportedFormat(fmt);
68 settings->AddSupportedChannels(channels);
71 settings->setPassthrough(-1);
83 LOG(VB_GENERAL, LOG_ERR,
"null audio output should not have just "
84 "had data written to it");
105 return amount_to_read;
static constexpr uint8_t CHANNELS_MAX
static constexpr uint8_t CHANNELS_MIN
static constexpr int32_t NULLAUDIO_OUTPUT_BUFFER_SIZE
void KillAudio(void)
Kill the output thread and cleanup.
void Reconfigure(const AudioSettings &settings) override
(Re)Configure AudioOutputBase
long m_soundcardBufferSize
void InitSettings(const AudioSettings &settings)
void Reset(void) override
Reset the audiobuffer, timecode and mythmusic visualisation.
bool m_bufferOutputDataForUse
void WriteAudio(unsigned char *aubuf, int size) override
int GetBufferedOnSoundcard(void) const override
Return the size in bytes of frames currently in the audio buffer adjusted with the audio playback lat...
QMutex m_pcmOutputBufferMutex
void Reset(void) override
Reset the audiobuffer, timecode and mythmusic visualisation.
AudioOutputNULL(const AudioSettings &settings)
void CloseDevice(void) override
AudioOutputSettings * GetOutputSettings(bool digital) override
~AudioOutputNULL() override
int readOutputData(unsigned char *read_buffer, size_t max_length) override
bool OpenDevice(void) override
std::vector< unsigned char > m_pcmOutputBuffer
bool m_init
If set to false, AudioOutput instance will not try to initially open the audio device.
#define LOG(_MASK_, _LEVEL_, _QSTRING_)
MBASE_PUBLIC long long copy(QFile &dst, QFile &src, uint block_size=0)
Copies src file to dst file.