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

  Changed paths:
    M LayoutTests/TestExpectations
    M LayoutTests/media/media-source/media-source-vp8-hiddenframes.html
    M LayoutTests/media/media-vp8-hiddenframes.html
    M LayoutTests/platform/glib/TestExpectations
    M LayoutTests/platform/mac-wk1/TestExpectations
    M LayoutTests/platform/mac-wk2/TestExpectations
    M Source/WebCore/platform/VideoDecoder.h
    M Source/WebCore/platform/graphics/cocoa/WebCoreDecompressionSession.mm
    M Source/WebCore/platform/libwebrtc/LibWebRTCVPXVideoDecoder.cpp

  Log Message:
  -----------
  REGRESSION (282704@main): [ macOS wk2 ] media/media-vp8-hiddenframes.html is 
a flaky image only failure.
https://bugs.webkit.org/show_bug.cgi?id=278833
rdar://134903291

Reviewed by Youenn Fablet.

This commit handles two issues.
1- The test incorrectly failed as we weren't always ending the test once the 
last frame was displayed as expected. For now we will simply wait for 1s
2- On Apple platforms other than mac, decoding of videos with alternate's frame 
was broken. The WebM demuxer pack all CMSampleBuffer with the same timecode
together so that they can be added to the MSE's TrackBuffer without issues (as 
we use the time as key). While the VideoToolbox decoder handled
thos CMSampleBuffer properly, the WebCoreDecompressionSession's VideoDecoder 
didn't. We now iterate over all the inner samples and return the last
deocded frames returned.

* LayoutTests/TestExpectations:
* LayoutTests/media/media-source/media-source-vp8-hiddenframes.html:
* LayoutTests/media/media-vp8-hiddenframes.html:
* LayoutTests/platform/mac-wk2/TestExpectations: Remove failure expectations.
* Source/WebCore/platform/VideoDecoder.h: Add enum to treat no frame as error. 
This is done to leave the current behaviour of WebCodec which does expect an 
error. To be further investigated in webkit.org/b/282227
Fly-By, re-order the enum to follow coding style (No first)
* Source/WebCore/platform/graphics/cocoa/WebCoreDecompressionSession.mm:
(WebCore::WebCoreDecompressionSession::decodeSampleInternal):
(WebCore::WebCoreDecompressionSession::initializeVideoDecoder):
* Source/WebCore/platform/libwebrtc/LibWebRTCVPXVideoDecoder.cpp:
(WebCore::LibWebRTCVPXInternalVideoDecoder::decode):
(WebCore::LibWebRTCVPXInternalVideoDecoder::LibWebRTCVPXInternalVideoDecoder):

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