diff --git a/src/media/audio/alsa/alsalayer.cpp b/src/media/audio/alsa/alsalayer.cpp index 980ce4131898eddef94a540c2403b08bc69346f5..e64491e6446364ef5ebb0a1562eba20fd030d817 100644 --- a/src/media/audio/alsa/alsalayer.cpp +++ b/src/media/audio/alsa/alsalayer.cpp @@ -102,7 +102,9 @@ AlsaLayer::AlsaLayer(const AudioPreference& pref) , is_playback_open_(false) , is_capture_open_(false) , audioThread_(nullptr) -{} +{ + setHasNativeAEC(false); +} AlsaLayer::~AlsaLayer() { @@ -121,11 +123,19 @@ AlsaLayer::~AlsaLayer() void AlsaLayer::run(const std::atomic<bool>& isRunning) { + if (playbackHandle_) + playbackChanged(true); + if (captureHandle_) + recordChanged(true); + while (status_ == Status::Started and isRunning) { playback(); ringtone(); capture(); } + + playbackChanged(false); + recordChanged(false); } // Retry approach taken from pa_linux_alsa.c, part of PortAudio