Branch: refs/heads/main
Home: https://github.com/WebKit/WebKit
Commit: 9f3ddc119f3ec5ccf79bf50cc76d3e81f03b1cba
https://github.com/WebKit/WebKit/commit/9f3ddc119f3ec5ccf79bf50cc76d3e81f03b1cba
Author: Jean-Yves Avenard <[email protected]>
Date: 2023-12-14 (Thu, 14 Dec 2023)
Changed paths:
A
LayoutTests/media/media-source/media-source-append-buffer-durationchange-expected.txt
A
LayoutTests/media/media-source/media-source-append-buffer-durationchange.html
M
Source/WebCore/platform/graphics/avfoundation/objc/MediaSourcePrivateAVFObjC.mm
M
Source/WebCore/platform/graphics/gstreamer/mse/MediaSourcePrivateGStreamer.cpp
M Source/WebCore/platform/mock/mediasource/MockMediaSourcePrivate.cpp
Log Message:
-----------
REGRESSION (271514@main): MSE Live playback fails on umediaserver.net
https://bugs.webkit.org/show_bug.cgi?id=266385
rdar://119615258
Reviewed by Jer Noble.
Changes in 271514@main exposed an underlying existing issue. The MediaSource's
duration was initialised to NaN
but the GPU process one was initialised to 0. Following 271514@main the inital
value would be identical.
If the media source duration was set prior any sourcebuffer being created, we
wouldn't set the SourceBuffer
initial duration, and the step `If the media segment contains data beyond the
current duration, then run the duration change algorithm with new duration set
to the maximum of the current duration and the [[group end timestamp]].`
would always be skipped.
We set the initial duration to the sourceBuffer when created.
Add tests.
*
LayoutTests/media/media-source/media-source-append-buffer-durationchange-expected.txt:
Added.
*
LayoutTests/media/media-source/media-source-append-buffer-durationchange.html:
Added.
*
Source/WebCore/platform/graphics/avfoundation/objc/MediaSourcePrivateAVFObjC.mm:
(WebCore::MediaSourcePrivateAVFObjC::addSourceBuffer):
*
Source/WebCore/platform/graphics/gstreamer/mse/MediaSourcePrivateGStreamer.cpp:
(WebCore::MediaSourcePrivateGStreamer::addSourceBuffer):
* Source/WebCore/platform/mock/mediasource/MockMediaSourcePrivate.cpp:
(WebCore::MockMediaSourcePrivate::addSourceBuffer):
Canonical link: https://commits.webkit.org/272025@main
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes