Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: ec6f4da2341ed9b831b175e61003eafe53b10c92
      
https://github.com/WebKit/WebKit/commit/ec6f4da2341ed9b831b175e61003eafe53b10c92
  Author: Youenn Fablet <you...@apple.com>
  Date:   2024-05-13 (Mon, 13 May 2024)

  Changed paths:
    M Source/WebCore/platform/mediastream/mac/ScreenCaptureKitCaptureSource.mm

  Log Message:
  -----------
  ScreenCaptureKitCaptureSource should not reconfigure if video effect is on 
but overlay rect is not filled
rdar://127882407
https://bugs.webkit.org/show_bug.cgi?id=274076

Reviewed by Eric Carlson and Jean-Yves Avenard.

In rdar://125925090, https://commits.webkit.org/278390@main, we started 
detecting presenter overlay mode by looking at 
SCStreamFrameInfoPresenterOverlayContentRect.
We were checking whether the origin was not (0, 0) and not (Inf, Inf).
(0, 0) is to ensure we are not in small overlay mode.
(Inf, Inf) was to ensure there was some overlay.

When starting large presenter overlay mode, (Inf, Inf) may be used for a couple 
of video frames, in particular when going from small to large overlay mode.
This triggered sometimes reconfiguration, which was further delaying a correct 
overlay, ending in a loop of reconfiguration.

To prevent this, we only allow reconfiguration when we are sure we are in small 
presenter overlay mode, thus origin is (0, 0).
We rename hasLargePresenterOverlay to shouldDisallowReconfiguration as this is 
more consistent.
Manually tested.

* Source/WebCore/platform/mediastream/mac/ScreenCaptureKitCaptureSource.mm:
(WebCore::ScreenCaptureKitCaptureSource::streamDidOutputVideoSampleBuffer):

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