Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: be6d1fe9dbef14685f60118e5eabea2d8837c97c
      
https://github.com/WebKit/WebKit/commit/be6d1fe9dbef14685f60118e5eabea2d8837c97c
  Author: Youenn Fablet <youe...@gmail.com>
  Date:   2024-02-20 (Tue, 20 Feb 2024)

  Changed paths:
    M Source/WebCore/Modules/mediastream/MediaTrackCapabilities.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/cocoa/DisplayCaptureSourceCocoa.cpp
    M 
Source/WebCore/platform/mediastream/gstreamer/GStreamerAudioCaptureSource.cpp
    M 
Source/WebCore/platform/mediastream/gstreamer/MockDisplayCaptureSourceGStreamer.cpp
    M Source/WebCore/platform/mediastream/mac/AVVideoCaptureSource.mm
    M Source/WebCore/platform/mediastream/mac/BaseAudioSharedUnit.h
    M Source/WebCore/platform/mediastream/mac/CoreAudioCaptureSource.cpp
    M Source/WebCore/platform/mediastream/mac/CoreAudioSharedUnit.h
    M Source/WebCore/platform/mediastream/mac/MockAudioSharedUnit.mm
    M Source/WebCore/platform/mock/MockRealtimeAudioSource.cpp
    M Source/WebCore/platform/mock/MockRealtimeVideoSource.cpp
    M Source/WebKit/Shared/WebCoreArgumentCoders.serialization.in

  Log Message:
  -----------
  Simplify CapabilityRange
rdar://123239032
https://bugs.webkit.org/show_bug.cgi?id=269711

Reviewed by Eric Carlson.

CapabilityRange could handle double and integer values inside the same 
structure as two optionals.
But CapabilityRange values are typically typed (a width CapabilityRange is in 
integers).
It is therefore best to use a typed value directly.
We make CapabilityRange a template and have LongCapabilityRange and 
DoubleCapabilityRange.
We make them classes instead of templated classes so that they work well with 
generated serializers.

* Source/WebCore/Modules/mediastream/MediaTrackCapabilities.cpp:
(WebCore::capabilityDoubleRange):
(WebCore::capabilityLongRange):
(WebCore::toMediaTrackCapabilities):
(WebCore::capabilityIntRange): Deleted.
* Source/WebCore/platform/mediastream/MediaConstraints.h:
(WebCore::NumericConstraint::fitnessDistance const):
(WebCore::NumericConstraint::valueForCapabilityRange const):
* Source/WebCore/platform/mediastream/RealtimeMediaSource.cpp:
(WebCore::RealtimeMediaSource::hasInvalidSizeFrameRateAndZoomConstraints):
(WebCore::RealtimeMediaSource::fitnessDistance):
(WebCore::RealtimeMediaSource::applyConstraint):
(WebCore::RealtimeMediaSource::extractVideoFrameSizeConstraints):
(WebCore::RealtimeMediaSource::applyConstraints):
* Source/WebCore/platform/mediastream/RealtimeMediaSourceCapabilities.h:
(WebCore::CapabilityRange::CapabilityRange):
(WebCore::CapabilityRange::min const):
(WebCore::CapabilityRange::max const):
(WebCore::LongCapabilityRange::LongCapabilityRange):
(WebCore::DoubleCapabilityRange::DoubleCapabilityRange):
(WebCore::RealtimeMediaSourceCapabilities::RealtimeMediaSourceCapabilities):
(WebCore::RealtimeMediaSourceCapabilities::width const):
(WebCore::RealtimeMediaSourceCapabilities::setWidth):
(WebCore::RealtimeMediaSourceCapabilities::height const):
(WebCore::RealtimeMediaSourceCapabilities::setHeight):
(WebCore::RealtimeMediaSourceCapabilities::frameRate const):
(WebCore::RealtimeMediaSourceCapabilities::setFrameRate):
(WebCore::RealtimeMediaSourceCapabilities::aspectRatio const):
(WebCore::RealtimeMediaSourceCapabilities::setAspectRatio):
(WebCore::RealtimeMediaSourceCapabilities::volume const):
(WebCore::RealtimeMediaSourceCapabilities::setVolume):
(WebCore::RealtimeMediaSourceCapabilities::sampleRate const):
(WebCore::RealtimeMediaSourceCapabilities::setSampleRate):
(WebCore::RealtimeMediaSourceCapabilities::sampleSize const):
(WebCore::RealtimeMediaSourceCapabilities::setSampleSize):
(WebCore::RealtimeMediaSourceCapabilities::focusDistance const):
(WebCore::RealtimeMediaSourceCapabilities::setFocusDistance):
(WebCore::RealtimeMediaSourceCapabilities::zoom const):
(WebCore::RealtimeMediaSourceCapabilities::setZoom):
(WebCore::CapabilityRange::LongRange::LongRange): Deleted.
(WebCore::CapabilityRange::DoubleRange::DoubleRange): Deleted.
(WebCore::CapabilityRange::type const): Deleted.
(WebCore::CapabilityRange::doubleRange const): Deleted.
(WebCore::CapabilityRange::longRange const): Deleted.
* Source/WebCore/platform/mediastream/cocoa/DisplayCaptureSourceCocoa.cpp:
(WebCore::DisplayCaptureSourceCocoa::capabilities):
* Source/WebCore/platform/mediastream/gstreamer/GStreamerAudioCaptureSource.cpp:
(WebCore::defaultVolumeCapability):
(WebCore::GStreamerAudioCaptureSource::capabilities):
* 
Source/WebCore/platform/mediastream/gstreamer/MockDisplayCaptureSourceGStreamer.cpp:
(WebCore::MockDisplayCaptureSourceGStreamer::capabilities):
* Source/WebCore/platform/mediastream/mac/AVVideoCaptureSource.mm:
(WebCore::AVVideoCaptureSource::getPhotoCapabilities):
* Source/WebCore/platform/mediastream/mac/BaseAudioSharedUnit.h:
* Source/WebCore/platform/mediastream/mac/CoreAudioCaptureSource.cpp:
(WebCore::CoreAudioCaptureSource::capabilities):
* Source/WebCore/platform/mediastream/mac/CoreAudioSharedUnit.h:
* Source/WebCore/platform/mediastream/mac/MockAudioSharedUnit.mm:
(WebCore::MockAudioSharedUnit::singleton):
* Source/WebCore/platform/mock/MockRealtimeAudioSource.cpp:
(WebCore::MockRealtimeAudioSource::capabilities):
* Source/WebCore/platform/mock/MockRealtimeVideoSource.cpp:
(WebCore::MockRealtimeVideoSource::capabilities):
(WebCore::MockRealtimeVideoSource::getPhotoCapabilities):
* Source/WebKit/Shared/WebCoreArgumentCoders.serialization.in:

Canonical link: https://commits.webkit.org/275046@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