diff options
author | Piotr Srebrny <piotr.srebrny@qt.io> | 2021-09-21 18:48:32 +0200 |
---|---|---|
committer | Piotr Srebrny <piotr.srebrny@qt.io> | 2021-09-29 18:28:24 +0200 |
commit | 1d1c4dbf2aa81ff9fc9e386283791ca39deb227f (patch) | |
tree | 15619efe2a9ea8d1bbc28b196dab3f5b42cbb411 /src/multimedia/audio/qaudioinput.h | |
parent | 42dcedc238c2622914441bf4cb69f482c976e013 (diff) |
Disconnect QAudioInput from QCaptureMediaSession in destructor
The expected behavior of elements connected to the capture session
is to disconnect automatically when deleted.
This patch adds this behavior to the QAudioInput object.
Additionally, this patch enables automatic handover of QAudioInput
between two capture session.
Pick-to: 6.2
Change-Id: If9e3b4ad1bf4c8abf117dc67367716ebc759c1c1
Reviewed-by: André de la Rocha <andre.rocha@qt.io>
Reviewed-by: Lars Knoll <lars.knoll@qt.io>
Diffstat (limited to 'src/multimedia/audio/qaudioinput.h')
-rw-r--r-- | src/multimedia/audio/qaudioinput.h | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/src/multimedia/audio/qaudioinput.h b/src/multimedia/audio/qaudioinput.h index 10c3ae1c9..3b3154fb5 100644 --- a/src/multimedia/audio/qaudioinput.h +++ b/src/multimedia/audio/qaudioinput.h @@ -75,9 +75,10 @@ Q_SIGNALS: void volumeChanged(float volume); void mutedChanged(bool muted); -public: - QPlatformAudioInput *handle() const { return d; } private: + QPlatformAudioInput *handle() const { return d; } + void setDisconnectFunction(std::function<void()> disconnectFunction); + friend class QMediaCaptureSession; Q_DISABLE_COPY(QAudioInput) QPlatformAudioInput *d = nullptr; }; |