[webkit-changes] [WebKit/WebKit] 2cdde9: REGRESSION (282704 at main): [ macOS wk2 ] media/medi...

Jean-Yves Avenard noreply at github.com
Fri Nov 8 05:21:42 PST 2024


  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 2cdde9cb8a0dad7c36895cb190d93922b6cd5dab
      https://github.com/WebKit/WebKit/commit/2cdde9cb8a0dad7c36895cb190d93922b6cd5dab
  Author: Jean-Yves Avenard <jya at apple.com>
  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 at 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


More information about the webkit-changes mailing list