From 5d79d3bc6c4db1dc14c31a9a52ef171daa48373d Mon Sep 17 00:00:00 2001 From: Marek Blok <marek.blok@pg.edu.pl> Date: Tue, 16 Nov 2021 15:53:04 +0100 Subject: [PATCH] AudioInput no callback support fix --- src/cpp/DSP_IO.cpp | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/src/cpp/DSP_IO.cpp b/src/cpp/DSP_IO.cpp index c5a112a..504ae84 100644 --- a/src/cpp/DSP_IO.cpp +++ b/src/cpp/DSP_IO.cpp @@ -4453,12 +4453,15 @@ bool DSP::u::AudioInput::OutputExecute(OUTPUT_EXECUTE_ARGS) // If there are free buffers check whether the sound card has any audio data already available if (DSP_THIS->snd_object.get_input_callback_object() == NULL) { // callbacks are not used thus audio data has to be obtained directly from snd_object - if (DSP_THIS->GetNoOfFreeBuffers() > 0) { + while (DSP_THIS->GetNoOfFreeBuffers() > 0) { DSP::e::SampleType InSampleType; std::vector<char> wave_in_raw_buffer; if (DSP_THIS->snd_object.get_wave_in_raw_buffer(InSampleType, wave_in_raw_buffer)) { DSP_THIS->SOUND_object_callback(InSampleType, wave_in_raw_buffer); } + else { + break; + } } } -- GitLab