Created attachment 451525 [details] This is a screenshot of when the video playback failure occurred I'm from China and safari can't play this video in its entirety. In the last 3 seconds of the video, the safari screen is stuck and keeps showing that it is buffering data. If I switch to Chrome and Firefox to play this video, there is not the same problem. The address of this video is: https://www.bilibili.com/video/BV1Cq4y127pq
<rdar://problem/88761053>
Created attachment 455240 [details] Patch
Created attachment 455363 [details] Patch
Created attachment 455366 [details] Patch Add TestExpectations for GTK
Comment on attachment 455366 [details] Patch View in context: https://bugs.webkit.org/attachment.cgi?id=455366&action=review > LayoutTests/platform/gtk-wk2/TestExpectations:7 > -# This empty file is needed for flakiness dashboard to work. > -# FIXME: Remove once the flakiness dashboard is updated to not load this file. > +# These are the layout test expectations for the GTK2 port of WebKit. > +# > +# See http://trac.webkit.org/wiki/TestExpectations for more information on this file. > +# > +# Never add any tests to this file without opening a bug on bugzilla.webkit.org. > + > +webkit.org/b/238201 media/media-source/media-mp4-hevc-bframes.html [ Skip ] Can you please use LayoutTests/platform/glib/TestExpectations instead? Thanks. If it really works for WPE but not GTK, then you can use LayoutTests/platform/gtk/TestExpectations.
Created attachment 455428 [details] Patch Add TestExpectations for GTK attempt #2
Comment on attachment 455428 [details] Patch View in context: https://bugs.webkit.org/attachment.cgi?id=455428&action=review > LayoutTests/platform/gtk/TestExpectations:160 > +webkit.org/b/238201 media/media-source/media-mp4-hevc-bframes.html [ Failure ] It should only be needed in LayoutTests/platform/glib/TestExpectations. WPE and GTK both use GLib, so you only need to touch the GTK expectations if the test is broken for GTK but not for WPE. That should be pretty unusual because the multimedia code is identical.
Created attachment 455439 [details] Patch Add TestExpectations for GTK attempt #3
Created attachment 455449 [details] Patch Add TestExpectations for GTK attempt #3
Comment on attachment 455449 [details] Patch View in context: https://bugs.webkit.org/attachment.cgi?id=455449&action=review > Source/WebCore/platform/graphics/SourceBufferPrivate.cpp:1262 > + // Looking up the prior frame would require a computationally intensive operation. So instead, as a workaround I don't think this is strictly true; we could return a pair of iterators from the `addSample()` code above and step backwards. Perhaps the current behavior is better though, but it might be best to remove that statement from the comment.
Created attachment 455458 [details] Patch
Created attachment 455634 [details] Patch fix GTK failures
Committed r291813 (248840@main): <https://commits.webkit.org/248840@main> All reviewed patches have been landed. Closing bug and clearing flags on attachment 455634 [details].
This fix shipped with Safari 15.5 (all platforms).