diff options
author | Daniel Baumann <daniel.baumann@progress-linux.org> | 2024-06-12 05:43:14 +0000 |
---|---|---|
committer | Daniel Baumann <daniel.baumann@progress-linux.org> | 2024-06-12 05:43:14 +0000 |
commit | 8dd16259287f58f9273002717ec4d27e97127719 (patch) | |
tree | 3863e62a53829a84037444beab3abd4ed9dfc7d0 /dom/media/DeviceInputTrack.h | |
parent | Releasing progress-linux version 126.0.1-1~progress7.99u1. (diff) | |
download | firefox-8dd16259287f58f9273002717ec4d27e97127719.tar.xz firefox-8dd16259287f58f9273002717ec4d27e97127719.zip |
Merging upstream version 127.0.
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to 'dom/media/DeviceInputTrack.h')
-rw-r--r-- | dom/media/DeviceInputTrack.h | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/dom/media/DeviceInputTrack.h b/dom/media/DeviceInputTrack.h index 0a92ded13c..8be53f415d 100644 --- a/dom/media/DeviceInputTrack.h +++ b/dom/media/DeviceInputTrack.h @@ -172,11 +172,19 @@ class DeviceInputTrack : public ProcessedMediaTrack { // Main thread API: const nsTArray<RefPtr<DeviceInputConsumerTrack>>& GetConsumerTracks() const; + // Handle the result of an async operation to set processing params on a cubeb + // stream. If the operation failed, signal this to listeners and then disable + // processing. If the operation succeeded, directly signal this to listeners. + void NotifySetRequestedProcessingParamsResult( + MediaTrackGraph* aGraph, cubeb_input_processing_params aRequestedParams, + const Result<cubeb_input_processing_params, int>& aResult); // Graph thread APIs: // Query audio settings from its users. uint32_t MaxRequestedInputChannels() const; bool HasVoiceInput() const; + // Query for the aggregate processing params from all users. + cubeb_input_processing_params RequestedProcessingParams() const; // Deliver notification to its users. void DeviceChanged(MediaTrackGraph* aGraph) const; @@ -265,6 +273,7 @@ class NonNativeInputTrack final : public DeviceInputTrack { void NotifyDeviceChanged(AudioInputSource::Id aSourceId); void NotifyInputStopped(AudioInputSource::Id aSourceId); AudioInputSource::Id GenerateSourceId(); + void ReevaluateProcessingParams(); private: ~NonNativeInputTrack() = default; @@ -272,6 +281,8 @@ class NonNativeInputTrack final : public DeviceInputTrack { // Graph thread only. RefPtr<AudioInputSource> mAudioSource; AudioInputSource::Id mSourceIdNumber; + cubeb_input_processing_params mRequestedProcessingParams = + CUBEB_INPUT_PROCESSING_PARAM_NONE; #ifdef DEBUG // Graph thread only. |