[webkit-changes] [WebKit/WebKit] 5dd3f2: [Cocoa] voice activity detection does not work whe...
youennf
noreply at github.com
Thu Oct 10 10:33:46 PDT 2024
Branch: refs/heads/main
Home: https://github.com/WebKit/WebKit
Commit: 5dd3f262832b2ca143236ab8b15a3c9a38bc806a
https://github.com/WebKit/WebKit/commit/5dd3f262832b2ca143236ab8b15a3c9a38bc806a
Author: Youenn Fablet <youenn at apple.com>
Date: 2024-10-10 (Thu, 10 Oct 2024)
Changed paths:
M Source/WebCore/platform/mediastream/mac/BaseAudioSharedUnit.cpp
M Source/WebCore/platform/mediastream/mac/BaseAudioSharedUnit.h
M Source/WebCore/platform/mediastream/mac/CoreAudioSharedUnit.cpp
M Source/WebCore/platform/mediastream/mac/CoreAudioSharedUnit.h
Log Message:
-----------
[Cocoa] voice activity detection does not work when changing of capturing device
rdar://136356108
https://bugs.webkit.org/show_bug.cgi?id=280055
Reviewed by Andy Estes.
When moving capture from say AirPods to default microphone, we would not unregister the voice detection listener for the AirPods,
and we would not register the voice detection listeners for the default microphone.
This would prevent voice detection to work properly.
In case of capture device change, we are now unregistering the voice detection listener before changing of capture device.
This is done by adding an optional boolean parameter to CoreAudioSharedUnit::updateVoiceActiveDetection which is renamed to CoreAudioSharedUnit::updateVoiceActivityDetection.
We then call CoreAudioSharedUnit::updateVoiceActivityDetection after having changed of capture device to readd the listener if needed.
Manually tested.
* Source/WebCore/platform/mediastream/mac/BaseAudioSharedUnit.cpp:
(WebCore::BaseAudioSharedUnit::setCaptureDevice):
(WebCore::BaseAudioSharedUnit::voiceActivityDetected):
* Source/WebCore/platform/mediastream/mac/BaseAudioSharedUnit.h:
(WebCore::BaseAudioSharedUnit::willChangeCaptureDevice):
* Source/WebCore/platform/mediastream/mac/CoreAudioSharedUnit.cpp:
(WebCore::CoreAudioSharedUnit::~CoreAudioSharedUnit):
(WebCore::CoreAudioSharedUnit::captureDeviceChanged):
(WebCore::CoreAudioSharedUnit::cleanupAudioUnit):
(WebCore::CoreAudioSharedUnit::startInternal):
(WebCore::CoreAudioSharedUnit::isProducingMicrophoneSamplesChanged):
(WebCore::CoreAudioSharedUnit::stopInternal):
(WebCore::CoreAudioSharedUnit::updateVoiceActivityDetection):
(WebCore::CoreAudioSharedUnit::enableMutedSpeechActivityEventListener):
(WebCore::CoreAudioSharedUnit::disableMutedSpeechActivityEventListener):
(WebCore::CoreAudioSharedUnit::willChangeCaptureDevice):
(WebCore::CoreAudioSharedUnit::updateVoiceActiveDetection): Deleted.
* Source/WebCore/platform/mediastream/mac/CoreAudioSharedUnit.h:
Canonical link: https://commits.webkit.org/284979@main
To unsubscribe from these emails, change your notification settings at https://github.com/WebKit/WebKit/settings/notifications
More information about the webkit-changes
mailing list