mirror of
https://github.com/swift-project/pilotclient.git
synced 2026-03-22 23:05:36 +08:00
Don't connect dummy input device to voice mixer
connectVoice accepts only vatlib types.
This commit is contained in:
committed by
Klaus Basan
parent
76571f3039
commit
0493dafd69
@@ -41,6 +41,9 @@ namespace BlackCore
|
||||
|
||||
//! Set new input device
|
||||
virtual void setInputDevice(const BlackMisc::Audio::CAudioDeviceInfo &device) = 0;
|
||||
|
||||
//! Is this a real or dummy device?
|
||||
virtual bool isDummyDevice() const = 0;
|
||||
};
|
||||
|
||||
//! Dummy inout device
|
||||
@@ -63,6 +66,9 @@ namespace BlackCore
|
||||
//! \copydoc IAudioInputDevice::setInputDevice
|
||||
virtual void setInputDevice(const BlackMisc::Audio::CAudioDeviceInfo &device) override { m_currentDevice = device; }
|
||||
|
||||
//! \copydoc IAudioInputDevice::isDummyDevice
|
||||
virtual bool isDummyDevice() const override { return true; }
|
||||
|
||||
private:
|
||||
BlackMisc::Audio::CAudioDeviceInfoList m_devices; /*!< in and output devices */
|
||||
BlackMisc::Audio::CAudioDeviceInfo m_currentDevice;
|
||||
|
||||
@@ -132,7 +132,10 @@ namespace BlackCore
|
||||
{
|
||||
m_audioMixer = m_voice->createAudioMixer();
|
||||
|
||||
m_voice->connectVoice(m_voiceInputDevice.get(), m_audioMixer.get(), IAudioMixer::InputMicrophone);
|
||||
if(! m_voiceInputDevice->isDummyDevice())
|
||||
{
|
||||
m_voice->connectVoice(m_voiceInputDevice.get(), m_audioMixer.get(), IAudioMixer::InputMicrophone);
|
||||
}
|
||||
m_voice->connectVoice(m_channel1.data(), m_audioMixer.get(), IAudioMixer::InputVoiceChannel1);
|
||||
m_voice->connectVoice(m_channel2.data(), m_audioMixer.get(), IAudioMixer::InputVoiceChannel2);
|
||||
m_voice->connectVoice(m_audioMixer.get(), IAudioMixer::OutputOutputDevice1, m_voiceOutputDevice.get());
|
||||
|
||||
@@ -46,6 +46,9 @@ namespace BlackCore
|
||||
//! \copydoc IAudioInputDevice::setInputDevice
|
||||
virtual void setInputDevice(const BlackMisc::Audio::CAudioDeviceInfo &device) override;
|
||||
|
||||
//! \copydoc IAudioInputDevice::isDummyDevice
|
||||
virtual bool isDummyDevice() const override { return false; }
|
||||
|
||||
//! Get vatlib input device pointer
|
||||
VatLocalInputCodec *getVatLocalInputCodec() { return m_inputCodec.data(); }
|
||||
|
||||
|
||||
Reference in New Issue
Block a user