Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 20984f625b7f1108a857f3c023e9c1cad37ec6be
      
https://github.com/WebKit/WebKit/commit/20984f625b7f1108a857f3c023e9c1cad37ec6be
  Author: Jean-Yves Avenard <[email protected]>
  Date:   2024-11-15 (Fri, 15 Nov 2024)

  Changed paths:
    A LayoutTests/media/media-source/media-source-vp8-webm-error-expected.txt
    A 
LayoutTests/media/media-source/media-source-vp8-webm-error-offscreen-expected.txt
    A LayoutTests/media/media-source/media-source-vp8-webm-error-offscreen.html
    A LayoutTests/media/media-source/media-source-vp8-webm-error.html
    A LayoutTests/media/media-vp8-webm-error-offscreen-expected.txt
    A LayoutTests/media/media-vp8-webm-error-offscreen.html
    M LayoutTests/platform/ios/TestExpectations
    M LayoutTests/platform/mac-wk1/TestExpectations
    M 
Source/WebCore/platform/graphics/avfoundation/objc/MediaPlayerPrivateMediaSourceAVFObjC.mm
    M Source/WebCore/platform/graphics/cocoa/MediaPlayerPrivateWebM.mm

  Log Message:
  -----------
  Errors aren't detected if media element isn't in the DOM.
https://bugs.webkit.org/show_bug.cgi?id=283150
rdar://139935149

Reviewed by Eric Carlson.

When the video element isn't in the DOM, we use a WebCoreDecompressionSession
to decode the content in place of an AVSampleBufferDisplayLayer.
In the common case with an AVSBDL, we listen to layer errors published by the 
NotificationCentre.
When a WebCoreDecompressionSession is in use, no such events are fired.
The WebCoreDecompressionSession provides a listener for errors, but it was 
unused functionality.

We add an error handler to the WebCoreDecompressionSession used by their 
respective MediaPlayerPrivate
which will allow the error to be handled and reported to the HTMLMediaElement.

Added tests.

* LayoutTests/media/media-source/media-source-vp8-webm-error-expected.txt: 
Added.
* 
LayoutTests/media/media-source/media-source-vp8-webm-error-offscreen-expected.txt:
 Added.
* LayoutTests/media/media-source/media-source-vp8-webm-error-offscreen.html: 
Added.
* LayoutTests/media/media-source/media-source-vp8-webm-error.html: Added.
* LayoutTests/media/media-vp8-webm-error-offscreen-expected.txt: Added.
* LayoutTests/media/media-vp8-webm-error-offscreen.html: Added.
* LayoutTests/platform/ios/TestExpectations:
* LayoutTests/platform/mac-wk1/TestExpectations:
* 
Source/WebCore/platform/graphics/avfoundation/objc/MediaPlayerPrivateMediaSourceAVFObjC.mm:
(WebCore::MediaPlayerPrivateMediaSourceAVFObjC::ensureDecompressionSession):
* Source/WebCore/platform/graphics/cocoa/MediaPlayerPrivateWebM.mm:
(WebCore::MediaPlayerPrivateWebM::ensureDecompressionSession):

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



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

Reply via email to