diff --git a/src/blackcore/afv/audio/input.cpp b/src/blackcore/afv/audio/input.cpp index 4433deef2..be8744a36 100644 --- a/src/blackcore/afv/audio/input.cpp +++ b/src/blackcore/afv/audio/input.cpp @@ -90,6 +90,7 @@ namespace BlackCore { if (m_started) { return; } + BLACK_VERIFY_X(inputDevice.isValid() && inputDevice.isInputDevice(), Q_FUNC_INFO, "Wrong input device"); m_device = inputDevice; QAudioFormat inputFormat; diff --git a/src/blackcore/afv/audio/output.cpp b/src/blackcore/afv/audio/output.cpp index 86dc06fe2..143ebed59 100644 --- a/src/blackcore/afv/audio/output.cpp +++ b/src/blackcore/afv/audio/output.cpp @@ -9,8 +9,9 @@ //! \file #include "output.h" -#include "blackmisc/logmessage.h" #include "blacksound/audioutilities.h" +#include "blackmisc/logmessage.h" +#include "blackmisc/verify.h" #include #include @@ -90,6 +91,9 @@ namespace BlackCore { if (m_started) { return; } + BLACK_VERIFY_X(outputDevice.isValid() && outputDevice.isOutputDevice(), Q_FUNC_INFO, "Wrong output device"); + + if (m_audioOutputBuffer) { m_audioOutputBuffer->deleteLater(); } m_audioOutputBuffer = new CAudioOutputBuffer(sampleProvider, this); connect(m_audioOutputBuffer, &CAudioOutputBuffer::outputVolumeStream, this, &COutput::outputVolumeStream); diff --git a/src/blackcore/afv/clients/afvclient.cpp b/src/blackcore/afv/clients/afvclient.cpp index 8612da25a..04a822e3c 100644 --- a/src/blackcore/afv/clients/afvclient.cpp +++ b/src/blackcore/afv/clients/afvclient.cpp @@ -14,6 +14,7 @@ #include "blacksound/audioutilities.h" #include "blackmisc/audio/audiodeviceinfolist.h" #include "blackmisc/threadutils.h" +#include "blackmisc/verify.h" #ifdef Q_OS_WIN #include "comdef.h" @@ -243,6 +244,9 @@ namespace BlackCore return; } + BLACK_VERIFY_X(inputDevice.isValid() && inputDevice.isInputDevice(), Q_FUNC_INFO, "Wrong input device"); + BLACK_VERIFY_X(outputDevice.isValid() && outputDevice.isOutputDevice(), Q_FUNC_INFO, "Wrong output device"); + if (m_isStarted) { if (this->usesSameDevices(inputDevice, outputDevice)) @@ -829,8 +833,11 @@ namespace BlackCore void CAfvClient::onSettingsChanged() { const CSettings audioSettings = m_audioSettings.get(); - this->setNormalizedInputVolume(audioSettings.getInVolume()); - this->setNormalizedOutputVolume(audioSettings.getOutVolume()); + const int iv = audioSettings.getInVolume(); + const int ov = audioSettings.getOutVolume(); + + this->setNormalizedInputVolume(iv); + this->setNormalizedOutputVolume(ov); this->setBypassEffects(!audioSettings.isAudioEffectsEnabled()); }