[webkit-changes] [WebKit/WebKit] 7f097e: navigator.mediaDevices.getUserMedia({ audio: { ech...
youennf
noreply at github.com
Fri Jan 31 09:51:13 PST 2025
Branch: refs/heads/main
Home: https://github.com/WebKit/WebKit
Commit: 7f097e69658b94b477ef4a790e79fad82cefc6c6
https://github.com/WebKit/WebKit/commit/7f097e69658b94b477ef4a790e79fad82cefc6c6
Author: Youenn Fablet <youenn at apple.com>
Date: 2025-01-31 (Fri, 31 Jan 2025)
Changed paths:
M LayoutTests/fast/mediastream/getUserMedia-echoCancellation-expected.txt
M LayoutTests/fast/mediastream/getUserMedia-echoCancellation.html
M Source/WebCore/Modules/mediastream/MediaTrackCapabilities.cpp
M Source/WebCore/platform/mediastream/RealtimeMediaSource.cpp
M Source/WebCore/platform/mediastream/RealtimeMediaSourceCapabilities.h
M Source/WebCore/platform/mediastream/gstreamer/GStreamerAudioCaptureSource.cpp
M Source/WebCore/platform/mediastream/mac/CoreAudioCaptureSource.cpp
M Source/WebCore/platform/mediastream/mac/CoreAudioCaptureSource.h
M Source/WebCore/platform/mediastream/mac/MockAudioSharedUnit.mm
M Source/WebCore/platform/mock/MockMediaDevice.h
M Source/WebCore/platform/mock/MockRealtimeAudioSource.cpp
M Source/WebCore/platform/mock/MockRealtimeMediaSourceCenter.cpp
M Source/WebKit/Shared/WebCoreArgumentCoders.serialization.in
Log Message:
-----------
navigator.mediaDevices.getUserMedia({ audio: { echoCancellation: { exact : false } } }) is failing with OverConstrained error
rdar://143820857
https://bugs.webkit.org/show_bug.cgi?id=286680
Reviewed by Jean-Yves Avenard
Echo cancellation can have 3 values (on, off and support for both).
Before the patch, it would have only 2 values, meaning for supporting both would not be correctly handled for the fitness computation.
We update the code to handle all 3 values of echo cancellation support and update the fitness computation accordingly.
We also update how we apply constraints for devices that do not support both on and off values.
Covered by added test.
* LayoutTests/fast/mediastream/getUserMedia-echoCancellation-expected.txt:
* LayoutTests/fast/mediastream/getUserMedia-echoCancellation.html:
* Source/WebCore/Modules/mediastream/MediaTrackCapabilities.cpp:
(WebCore::capabilityBooleanVector):
* Source/WebCore/platform/mediastream/RealtimeMediaSource.cpp:
(WebCore::RealtimeMediaSource::fitnessDistance):
(WebCore::booleanSettingFromConstraint):
(WebCore::RealtimeMediaSource::applyConstraint):
* Source/WebCore/platform/mediastream/RealtimeMediaSourceCapabilities.h:
* Source/WebCore/platform/mediastream/gstreamer/GStreamerAudioCaptureSource.cpp:
* Source/WebCore/platform/mediastream/mac/CoreAudioCaptureSource.cpp:
(WebCore::CoreAudioCaptureSource::createForTesting):
(WebCore::CoreAudioCaptureSource::capabilities):
* Source/WebCore/platform/mediastream/mac/CoreAudioCaptureSource.h:
* Source/WebCore/platform/mediastream/mac/MockAudioSharedUnit.mm:
(WebCore::MockRealtimeAudioSource::create):
* Source/WebCore/platform/mock/MockMediaDevice.h:
* Source/WebCore/platform/mock/MockRealtimeAudioSource.cpp:
(WebCore::m_timer):
(WebCore::MockRealtimeAudioSource::capabilities):
* Source/WebCore/platform/mock/MockRealtimeMediaSourceCenter.cpp:
(WebCore::defaultDevices):
* Source/WebKit/Shared/WebCoreArgumentCoders.serialization.in:
Canonical link: https://commits.webkit.org/289609@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