summaryrefslogtreecommitdiffstats
path: root/src/multimedia/platform/qplatformmediadevices.cpp
diff options
context:
space:
mode:
authorLars Knoll <lars.knoll@qt.io>2021-11-17 10:09:39 +0100
committerLars Knoll <lars.knoll@qt.io>2022-01-18 14:33:47 +0100
commit54bf1efe5cd54068cefaf4debe1908f6397b5b15 (patch)
tree65f17b6b8bff72f86482652c3a2254814c6f3378 /src/multimedia/platform/qplatformmediadevices.cpp
parentaf70e045aa050ff52cdedf16974e343e6d3e5e32 (diff)
Move the list of QMediaDevices to QPlatformMediaIntegration
This makes it possible to split up the backend interfaces for audio and camera devices handling and simplifies combining ffmpeg with a platform specific backend for audio. Pick-to: 6.2 Change-Id: I01992bfbeac79ba2d413a4b918f9f304cf33f35b Reviewed-by: Lars Knoll <lars.knoll@qt.io>
Diffstat (limited to 'src/multimedia/platform/qplatformmediadevices.cpp')
-rw-r--r--src/multimedia/platform/qplatformmediadevices.cpp14
1 files changed, 10 insertions, 4 deletions
diff --git a/src/multimedia/platform/qplatformmediadevices.cpp b/src/multimedia/platform/qplatformmediadevices.cpp
index fcedfe6ac..0f97d9b70 100644
--- a/src/multimedia/platform/qplatformmediadevices.cpp
+++ b/src/multimedia/platform/qplatformmediadevices.cpp
@@ -38,6 +38,7 @@
****************************************************************************/
#include "qplatformmediadevices_p.h"
+#include "qplatformmediaintegration_p.h"
#include "qmediadevices.h"
#include "qaudiodevice.h"
#include "qcameradevice.h"
@@ -45,7 +46,9 @@
QT_BEGIN_NAMESPACE
-QPlatformMediaDevices::QPlatformMediaDevices() = default;
+QPlatformMediaDevices::QPlatformMediaDevices(QPlatformMediaIntegration *integration)
+ : integration(integration)
+{}
QPlatformMediaDevices::~QPlatformMediaDevices() = default;
@@ -105,19 +108,22 @@ QPlatformAudioSink* QPlatformMediaDevices::audioOutputDevice(const QAudioFormat
void QPlatformMediaDevices::audioInputsChanged() const
{
- for (auto m : m_devices)
+ const auto devices = integration->allMediaDevices();
+ for (auto m : devices)
emit m->audioInputsChanged();
}
void QPlatformMediaDevices::audioOutputsChanged() const
{
- for (auto m : m_devices)
+ const auto devices = integration->allMediaDevices();
+ for (auto m : devices)
emit m->audioOutputsChanged();
}
void QPlatformMediaDevices::videoInputsChanged() const
{
- for (auto m : m_devices)
+ const auto devices = integration->allMediaDevices();
+ for (auto m : devices)
emit m->videoInputsChanged();
}