Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 2c252b52dc9f3aee81033984e94cead97a615541
      
https://github.com/WebKit/WebKit/commit/2c252b52dc9f3aee81033984e94cead97a615541
  Author: Youenn Fablet <you...@apple.com>
  Date:   2024-03-28 (Thu, 28 Mar 2024)

  Changed paths:
    M 
LayoutTests/fast/mediastream/MediaDevices-getSupportedConstraints-expected.txt
    M LayoutTests/fast/mediastream/MediaStreamTrack-getCapabilities-expected.txt
    M LayoutTests/fast/mediastream/MediaStreamTrack-getSettings-expected.txt
    A 
LayoutTests/fast/mediastream/mediastreamtrack-video-backgroundBlur-expected.txt
    A LayoutTests/fast/mediastream/mediastreamtrack-video-backgroundBlur.html
    M Source/WebCore/Modules/mediastream/MediaDevices.cpp
    M Source/WebCore/Modules/mediastream/MediaStreamTrack.cpp
    M Source/WebCore/Modules/mediastream/MediaStreamTrack.h
    M Source/WebCore/Modules/mediastream/MediaStreamTrack.idl
    M Source/WebCore/Modules/mediastream/MediaTrackCapabilities.cpp
    M Source/WebCore/Modules/mediastream/MediaTrackCapabilities.h
    M Source/WebCore/Modules/mediastream/MediaTrackCapabilities.idl
    M Source/WebCore/Modules/mediastream/MediaTrackConstraints.cpp
    M Source/WebCore/Modules/mediastream/MediaTrackConstraints.h
    M Source/WebCore/Modules/mediastream/MediaTrackConstraints.idl
    M Source/WebCore/Modules/mediastream/MediaTrackSupportedConstraints.h
    M Source/WebCore/Modules/mediastream/MediaTrackSupportedConstraints.idl
    M Source/WebCore/platform/mediastream/MediaConstraintType.cpp
    M Source/WebCore/platform/mediastream/MediaConstraintType.h
    M Source/WebCore/platform/mediastream/MediaConstraints.cpp
    M Source/WebCore/platform/mediastream/MediaConstraints.h
    M Source/WebCore/platform/mediastream/RealtimeMediaSource.cpp
    M Source/WebCore/platform/mediastream/RealtimeMediaSourceCapabilities.h
    M Source/WebCore/platform/mediastream/RealtimeMediaSourceSettings.cpp
    M Source/WebCore/platform/mediastream/RealtimeMediaSourceSettings.h
    M 
Source/WebCore/platform/mediastream/RealtimeMediaSourceSupportedConstraints.cpp
    M 
Source/WebCore/platform/mediastream/RealtimeMediaSourceSupportedConstraints.h
    M Source/WebCore/platform/mediastream/mac/AVVideoCaptureSource.mm
    M Source/WebCore/platform/mock/MockMediaDevice.h
    M Source/WebCore/platform/mock/MockRealtimeMediaSourceCenter.cpp
    M Source/WebCore/platform/mock/MockRealtimeVideoSource.cpp
    M Source/WebKit/Shared/WebCoreArgumentCoders.serialization.in

  Log Message:
  -----------
  Implement 
https://w3c.github.io/mediacapture-extensions/#exposing-mediastreamtrack-source-background-blur-support
https://bugs.webkit.org/show_bug.cgi?id=271707
rdar://125416230

Reviewed by Eric Carlson.

Add backgroundBlur constraint, capability and setting as this allows web pages 
to know whether background blur is already enabled or not.
We implement this for AVVideoCaptureSource.
We mock this property for some devices in  MockRealtimeVideoSource.
A follow-up patch will add support for observing changes to background blur 
property.

* 
LayoutTests/fast/mediastream/MediaDevices-getSupportedConstraints-expected.txt:
* LayoutTests/fast/mediastream/MediaStreamTrack-getCapabilities-expected.txt:
* LayoutTests/fast/mediastream/MediaStreamTrack-getSettings-expected.txt:
* 
LayoutTests/fast/mediastream/mediastreamtrack-video-backgroundBlur-expected.txt:
 Added.
* LayoutTests/fast/mediastream/mediastreamtrack-video-backgroundBlur.html: 
Added.
* Source/WebCore/Modules/mediastream/MediaDevices.cpp:
(WebCore::hasInvalidGetDisplayMediaConstraint):
* Source/WebCore/Modules/mediastream/MediaStreamTrack.cpp:
(WebCore::MediaStreamTrack::getSettings const):
* Source/WebCore/Modules/mediastream/MediaStreamTrack.h:
* Source/WebCore/Modules/mediastream/MediaStreamTrack.idl:
* Source/WebCore/Modules/mediastream/MediaTrackCapabilities.cpp:
(WebCore::capabilityBooleanVector):
(WebCore::toMediaTrackCapabilities):
* Source/WebCore/Modules/mediastream/MediaTrackCapabilities.h:
* Source/WebCore/Modules/mediastream/MediaTrackCapabilities.idl:
* Source/WebCore/Modules/mediastream/MediaTrackConstraints.cpp:
(WebCore::convertToInternalForm):
* Source/WebCore/Modules/mediastream/MediaTrackConstraints.h:
* Source/WebCore/Modules/mediastream/MediaTrackConstraints.idl:
* Source/WebCore/Modules/mediastream/MediaTrackSupportedConstraints.h:
* Source/WebCore/Modules/mediastream/MediaTrackSupportedConstraints.idl:
* Source/WebCore/platform/mediastream/MediaConstraintType.cpp:
(WebCore::convertToString):
* Source/WebCore/platform/mediastream/MediaConstraintType.h:
* Source/WebCore/platform/mediastream/MediaConstraints.cpp:
(WebCore::MediaTrackConstraintSetMap::set):
(WebCore::MediaTrackConstraintSetMap::merge):
(WebCore::MediaTrackConstraintSetMap::isolatedCopy const):
* Source/WebCore/platform/mediastream/MediaConstraints.h:
(WebCore::MediaTrackConstraintSetMap::MediaTrackConstraintSetMap):
(WebCore::MediaTrackConstraintSetMap::backgroundBlur const):
* Source/WebCore/platform/mediastream/RealtimeMediaSource.cpp:
(WebCore::RealtimeMediaSource::fitnessDistance):
(WebCore::RealtimeMediaSource::applyConstraint):
(WebCore::RealtimeMediaSource::supportsConstraint):
(WebCore::RealtimeMediaSource::hasAnyInvalidConstraint):
* Source/WebCore/platform/mediastream/RealtimeMediaSourceCapabilities.h:
(WebCore::RealtimeMediaSourceCapabilities::RealtimeMediaSourceCapabilities):
(WebCore::RealtimeMediaSourceCapabilities::supportsBackgroundBlur const):
(WebCore::RealtimeMediaSourceCapabilities::backgroundBlur const):
(WebCore::RealtimeMediaSourceCapabilities::setBackgroundBlur):
(WebCore::RealtimeMediaSourceCapabilities::isolatedCopy const):
* Source/WebCore/platform/mediastream/RealtimeMediaSourceSettings.cpp:
(WebCore::RealtimeMediaSourceSettings::isolatedCopy const):
(WebCore::RealtimeMediaSourceSettings::convertFlagsToString):
(WebCore::RealtimeMediaSourceSettings::difference const):
* Source/WebCore/platform/mediastream/RealtimeMediaSourceSettings.h:
(WebCore::RealtimeMediaSourceSettings::allFlags):
(WebCore::RealtimeMediaSourceSettings::RealtimeMediaSourceSettings):
(WebCore::RealtimeMediaSourceSettings::supportsBackgroundBlur const):
(WebCore::RealtimeMediaSourceSettings::backgroundBlur const):
(WebCore::RealtimeMediaSourceSettings::setBackgroundBlur):
* 
Source/WebCore/platform/mediastream/RealtimeMediaSourceSupportedConstraints.cpp:
(WebCore::RealtimeMediaSourceSupportedConstraints::supportsConstraint const):
* Source/WebCore/platform/mediastream/RealtimeMediaSourceSupportedConstraints.h:
(WebCore::RealtimeMediaSourceSupportedConstraints::RealtimeMediaSourceSupportedConstraints):
(WebCore::RealtimeMediaSourceSupportedConstraints::supportsBackgroundBlur 
const):
(WebCore::RealtimeMediaSourceSupportedConstraints::setSupportsBackgroundBlur):
* Source/WebCore/platform/mediastream/mac/AVVideoCaptureSource.mm:
(WebCore::AVVideoCaptureSource::settings):
(WebCore::AVVideoCaptureSource::capabilities):
* Source/WebCore/platform/mock/MockMediaDevice.h:
* Source/WebCore/platform/mock/MockRealtimeMediaSourceCenter.cpp:
(WebCore::defaultDevices):
* Source/WebCore/platform/mock/MockRealtimeVideoSource.cpp:
(WebCore::MockRealtimeVideoSource::capabilities):
(WebCore::MockRealtimeVideoSource::settings):
* Source/WebKit/Shared/WebCoreArgumentCoders.serialization.in:

Canonical link: https://commits.webkit.org/276777@main



To unsubscribe from these emails, change your notification settings at 
https://github.com/WebKit/WebKit/settings/notifications
_______________________________________________
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to