[webkit-changes] [WebKit/WebKit] 1d29e0: [ WK2 ] http/wpt/webcodecs/videoFrame-video-elemen...
Ben
noreply at github.com
Fri Sep 22 15:55:09 PDT 2023
Branch: refs/heads/main
Home: https://github.com/WebKit/WebKit
Commit: 1d29e0e09edc9c9c9ad9ff2ae571be1e738d3ea5
https://github.com/WebKit/WebKit/commit/1d29e0e09edc9c9c9ad9ff2ae571be1e738d3ea5
Author: Ben Schwartz <ben_schwartz at apple.com>
Date: 2023-09-22 (Fri, 22 Sep 2023)
Changed paths:
M LayoutTests/platform/ios/TestExpectations
M LayoutTests/platform/mac-wk2/TestExpectations
M Source/WebCore/platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.mm
Log Message:
-----------
[ WK2 ] http/wpt/webcodecs/videoFrame-video-element.html is a flaky TEXT failure
https://bugs.webkit.org/show_bug.cgi?id=259379
rdar://112628818
Reviewed by Eric Carlson.
GPUProcess is sending to WebProcess MediaPlayer::ReadyState::HaveCurrentData signal even if it has not yet received any video frame in the output queue.
This creates a race between WebProcess firing the loadeddata event and creation of a VideoFrame object from the media element and GPUProcess actually getting the underlying pixel buffer.
Before the patch, creation of the VideoFrame object would sometimes fail if the WebProcess wins the race.
To prevent this, if there is no pixel buffer, we wait for one.
This makes the WebProcess sync IPC wait a little bit longer in some cases.
Covered by http/wpt/webcodecs/videoFrame-video-element.html no longer being flaky locally.
* LayoutTests/platform/ios/TestExpectations:
* LayoutTests/platform/mac-wk2/TestExpectations:
* Source/WebCore/platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.mm:
(WebCore::MediaPlayerPrivateAVFoundationObjC::videoFrameForCurrentTime):
Canonical link: https://commits.webkit.org/268339@main
More information about the webkit-changes
mailing list