summaryrefslogtreecommitdiffstats
path: root/src/multimedia/platform/qplatformmediadevices.cpp
diff options
context:
space:
mode:
authorPiotr Srebrny <piotr.srebrny@qt.io>2022-12-15 17:16:18 +0100
committerPiotr Srebrny <piotr.srebrny@qt.io>2022-12-15 22:13:41 +0100
commitab49644bea444d105e6fa6ca246f21eccd7a67e0 (patch)
tree80dfed4b3b09db32d582b47051f9e3d23065bae4 /src/multimedia/platform/qplatformmediadevices.cpp
parent6838d738409418185fba3804c8ad14e0e3dbb005 (diff)
Provide default implementation for QPlatformMediaDevices
In case no audio backend is available we should provide some default implementation for QPlatformDevices otherwise the code crashes on an attempt list audio devices. As a bonus clean some leftovers of video devices interface. Fixes: QTBUG-108221 Pick-to: 6.4 6.5 Change-Id: I8d7e5ebe2ec98ba9381fae429f359b8ffaea3bb6 Reviewed-by: Artem Dyomin <artem.dyomin@qt.io> Reviewed-by: Lars Knoll <lars@knoll.priv.no>
Diffstat (limited to 'src/multimedia/platform/qplatformmediadevices.cpp')
-rw-r--r--src/multimedia/platform/qplatformmediadevices.cpp19
1 files changed, 18 insertions, 1 deletions
diff --git a/src/multimedia/platform/qplatformmediadevices.cpp b/src/multimedia/platform/qplatformmediadevices.cpp
index 867edb7c7..6944e8ca1 100644
--- a/src/multimedia/platform/qplatformmediadevices.cpp
+++ b/src/multimedia/platform/qplatformmediadevices.cpp
@@ -6,6 +6,7 @@
#include "qaudiodevice.h"
#include "qcameradevice.h"
#include "qaudiosystem_p.h"
+#include "qaudiodevice.h"
#include <qmutex.h>
#include <qloggingcategory.h>
@@ -65,6 +66,8 @@ QPlatformMediaDevices *QPlatformMediaDevices::instance()
holder.nativeInstance = new QQnxMediaDevices;
#elif defined(Q_OS_WASM)
holder.nativeInstance = new QWasmMediaDevices;
+#else
+ holder.nativeInstance = new QPlatformMediaDevices;
#endif
holder.instance = holder.nativeInstance;
@@ -82,11 +85,25 @@ void QPlatformMediaDevices::setDevices(QPlatformMediaDevices *devices)
QPlatformMediaDevices::~QPlatformMediaDevices() = default;
-QList<QCameraDevice> QPlatformMediaDevices::videoInputs() const
+QList<QAudioDevice> QPlatformMediaDevices::audioInputs() const
+{
+ return {};
+}
+
+QList<QAudioDevice> QPlatformMediaDevices::audioOutputs() const
{
return {};
}
+QPlatformAudioSource *QPlatformMediaDevices::createAudioSource(const QAudioDevice &, QObject *)
+{
+ return nullptr;
+}
+QPlatformAudioSink *QPlatformMediaDevices::createAudioSink(const QAudioDevice &, QObject *)
+{
+ return nullptr;
+}
+
QPlatformAudioSource *QPlatformMediaDevices::audioInputDevice(const QAudioFormat &format,
const QAudioDevice &deviceInfo,
QObject *parent)