diff options
author | Piotr Srebrny <piotr.srebrny@qt.io> | 2021-11-04 11:49:03 +0100 |
---|---|---|
committer | Qt Cherry-pick Bot <cherrypick_bot@qt-project.org> | 2021-11-08 10:31:30 +0000 |
commit | 1f8f37b236dccfcf2a727c9df6930e3abcf645f4 (patch) | |
tree | d6d8aae715d211fdd05fc007e183d010b1223dd0 | |
parent | 8f6205d71ee266bed96ffce775fecd154c8ba7fa (diff) | |
download | qtmultimedia-1f8f37b236dccfcf2a727c9df6930e3abcf645f4.tar.gz |
Warn when setting a new audio input/output device fails
Change-Id: Ied8fb709e9bcc3003f54c807ea83dca0a924eb78
Reviewed-by: Lars Knoll <lars.knoll@qt.io>
(cherry picked from commit 663dc4ee5ce1a4b76617a7c9545d1f13820fcefe)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
-rw-r--r-- | src/multimedia/platform/gstreamer/common/qgstreameraudioinput.cpp | 6 | ||||
-rw-r--r-- | src/multimedia/platform/gstreamer/common/qgstreameraudiooutput.cpp | 6 |
2 files changed, 10 insertions, 2 deletions
diff --git a/src/multimedia/platform/gstreamer/common/qgstreameraudioinput.cpp b/src/multimedia/platform/gstreamer/common/qgstreameraudioinput.cpp index cd1233c1d..dbe0997fa 100644 --- a/src/multimedia/platform/gstreamer/common/qgstreameraudioinput.cpp +++ b/src/multimedia/platform/gstreamer/common/qgstreameraudioinput.cpp @@ -111,9 +111,13 @@ void QGstreamerAudioInput::setAudioDevice(const QAudioDevice &device) auto *deviceInfo = static_cast<const QGStreamerAudioDeviceInfo *>(m_audioDevice.handle()); if (deviceInfo && deviceInfo->gstDevice) newSrc = gst_device_create_element(deviceInfo->gstDevice, "audiosrc"); + else + qCWarning(qLcMediaAudioInput) << "Invalid audio device"; - if (newSrc.isNull()) + if (newSrc.isNull()) { + qCWarning(qLcMediaAudioInput) << "Failed to create a gst element for the audio device, using a default audio source"; newSrc = QGstElement("autoaudiosrc", "audiosrc"); + } // FIXME: most probably source can be disconnected outside of idle probe audioSrc.staticPad("src").doInIdleProbe([&](){ diff --git a/src/multimedia/platform/gstreamer/common/qgstreameraudiooutput.cpp b/src/multimedia/platform/gstreamer/common/qgstreameraudiooutput.cpp index 6338c1ee0..b9a637975 100644 --- a/src/multimedia/platform/gstreamer/common/qgstreameraudiooutput.cpp +++ b/src/multimedia/platform/gstreamer/common/qgstreameraudiooutput.cpp @@ -101,9 +101,13 @@ void QGstreamerAudioOutput::setAudioDevice(const QAudioDevice &info) auto *deviceInfo = static_cast<const QGStreamerAudioDeviceInfo *>(m_audioOutput.handle()); if (deviceInfo && deviceInfo->gstDevice) newSink = gst_device_create_element(deviceInfo->gstDevice , "audiosink"); + else + qCWarning(qLcMediaAudioOutput) << "Invalid audio device"; - if (newSink.isNull()) + if (newSink.isNull()) { + qCWarning(qLcMediaAudioOutput) << "Failed to create a gst element for the audio device, using a default audio sink"; newSink = QGstElement("autoaudiosink", "audiosink"); + } audioVolume.staticPad("src").doInIdleProbe([&](){ audioVolume.unlink(audioSink); |