gecko-dev/testing/web-platform/tests/media-source
Matt Wolenetz 2cd7144b48 Bug 1538433 [wpt PR 15991] - MSE: Fix mediasource-changetype-play to work with MseBufferByPts, a=testonly
Automatic update from web-platform-tests
MSE: Fix mediasource-changetype-play to work with MseBufferByPts

This web-platform-test exercises changeType as it splice-overlaps
pairs of audio or video media streams at varying offsets in the
presentation timeline. Splice-overlapping an out-of-order decode stream
(such as the test AVC MP4 media) at arbitrary times can, per spec, drop
significant decode dependencies from a partially-overlapped GOP such
that a buffered range gap could result.

This change is more careful about where it performs splice-overlaps when
the overlapped media is out-of-order-decode, adjusting the splice point
to be at or very near to the next overlapped keyframe. This prevents
removing out-of-order non-keyframes and their dependents from the
overlapped media such that no buffered range gap nor playback stall
should result.

Note that Chromium is sensitive to such out-of-order buffering overlaps
with the new, compliant, MseBufferByPts behavior. Fixing
https://github.com/w3c/media-source/issues/160 could greatly simplify
this problem by allowing apps to explicitly control how the
user agent behaves at these small gaps.

BUG=807793

Change-Id: I020e244c230756eaa1804f81b58a577124a6a28b
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1428601
Commit-Queue: Matthew Wolenetz <wolenetz@chromium.org>
Reviewed-by: Dan Sanders <sandersd@chromium.org>
Cr-Commit-Position: refs/heads/master@{#643473}

--

wpt-commits: 27ad6759d421b95b4572f20cabaeb750b3eb9799
wpt-pr: 15991
2019-04-24 11:30:34 +01:00
..
mp3
mp4 Bug 1538122 [wpt PR 15976] - WebKit export of https://bugs.webkit.org/show_bug.cgi?id=195867, a=testonly 2019-04-24 11:19:01 +01:00
webm Bug 1512390 [wpt PR 14391] - WebKit export of https://bugs.webkit.org/show_bug.cgi?id=189727, a=testonly 2018-12-14 13:54:32 +00:00
generate-config-change-tests.py
idlharness.any.js
import_tests.sh
manifest.txt
mediasource-activesourcebuffers.html
mediasource-addsourcebuffer-mode.html
mediasource-addsourcebuffer.html
mediasource-append-buffer.html Bug 1532639 [wpt PR 15630] - Add <meta name=timeout content=long> to WPT in SlowTests, a=testonly 2019-04-24 11:19:30 +01:00
mediasource-appendbuffer-quota-exceeded.html
mediasource-appendwindow.html
mediasource-attach-stops-delaying-load-event.html
mediasource-avtracks.html
mediasource-buffered.html
mediasource-changetype-play.html Bug 1538433 [wpt PR 15991] - MSE: Fix mediasource-changetype-play to work with MseBufferByPts, a=testonly 2019-04-24 11:30:34 +01:00
mediasource-changetype-util.js Bug 1538433 [wpt PR 15991] - MSE: Fix mediasource-changetype-play to work with MseBufferByPts, a=testonly 2019-04-24 11:30:34 +01:00
mediasource-changetype.html
mediasource-closed.html
mediasource-config-change-mp4-a-bitrate.html Bug 1532639 [wpt PR 15630] - Add <meta name=timeout content=long> to WPT in SlowTests, a=testonly 2019-04-24 11:19:30 +01:00
mediasource-config-change-mp4-av-audio-bitrate.html Bug 1532639 [wpt PR 15630] - Add <meta name=timeout content=long> to WPT in SlowTests, a=testonly 2019-04-24 11:19:30 +01:00
mediasource-config-change-mp4-av-framesize.html Bug 1532639 [wpt PR 15630] - Add <meta name=timeout content=long> to WPT in SlowTests, a=testonly 2019-04-24 11:19:30 +01:00
mediasource-config-change-mp4-av-video-bitrate.html Bug 1532639 [wpt PR 15630] - Add <meta name=timeout content=long> to WPT in SlowTests, a=testonly 2019-04-24 11:19:30 +01:00
mediasource-config-change-mp4-v-bitrate.html
mediasource-config-change-mp4-v-framerate.html Bug 1532639 [wpt PR 15630] - Add <meta name=timeout content=long> to WPT in SlowTests, a=testonly 2019-04-24 11:19:30 +01:00
mediasource-config-change-mp4-v-framesize.html Bug 1532639 [wpt PR 15630] - Add <meta name=timeout content=long> to WPT in SlowTests, a=testonly 2019-04-24 11:19:30 +01:00
mediasource-config-change-webm-a-bitrate.html
mediasource-config-change-webm-av-audio-bitrate.html Bug 1532639 [wpt PR 15630] - Add <meta name=timeout content=long> to WPT in SlowTests, a=testonly 2019-04-24 11:19:30 +01:00
mediasource-config-change-webm-av-framesize.html
mediasource-config-change-webm-av-video-bitrate.html Bug 1532639 [wpt PR 15630] - Add <meta name=timeout content=long> to WPT in SlowTests, a=testonly 2019-04-24 11:19:30 +01:00
mediasource-config-change-webm-v-bitrate.html
mediasource-config-change-webm-v-framerate.html Bug 1532639 [wpt PR 15630] - Add <meta name=timeout content=long> to WPT in SlowTests, a=testonly 2019-04-24 11:19:30 +01:00
mediasource-config-change-webm-v-framesize.html
mediasource-config-changes.js
mediasource-correct-frames-after-reappend.html Bug 1538122 [wpt PR 15976] - WebKit export of https://bugs.webkit.org/show_bug.cgi?id=195867, a=testonly 2019-04-24 11:19:01 +01:00
mediasource-correct-frames.html Bug 1538122 [wpt PR 15976] - WebKit export of https://bugs.webkit.org/show_bug.cgi?id=195867, a=testonly 2019-04-24 11:19:01 +01:00
mediasource-detach.html
mediasource-duration-boundaryconditions.html
mediasource-duration.html
mediasource-endofstream-invaliderror.html
mediasource-endofstream.html
mediasource-errors.html Bug 1513146 [wpt PR 14449] - MSE: Update one of the wpt mediasource-errors sub-tests, a=testonly 2019-01-23 10:55:03 +00:00
mediasource-getvideoplaybackquality.html Bug 1532639 [wpt PR 15630] - Add <meta name=timeout content=long> to WPT in SlowTests, a=testonly 2019-04-24 11:19:30 +01:00
mediasource-invalid-codec.html Bug 1512390 [wpt PR 14391] - WebKit export of https://bugs.webkit.org/show_bug.cgi?id=189727, a=testonly 2018-12-14 13:54:32 +00:00
mediasource-is-type-supported.html
mediasource-liveseekable.html
mediasource-multiple-attach.html
mediasource-play-then-seek-back.html
mediasource-play.html
mediasource-preload.html
mediasource-redundant-seek.html
mediasource-remove.html
mediasource-removesourcebuffer.html
mediasource-seek-beyond-duration.html
mediasource-seek-during-pending-seek.html
mediasource-seekable.html
mediasource-sequencemode-append-buffer.html
mediasource-sourcebuffer-mode-timestamps.html
mediasource-sourcebuffer-mode.html
mediasource-sourcebuffer-trackdefaults.html
mediasource-sourcebufferlist.html
mediasource-timestamp-offset.html
mediasource-trackdefault.html
mediasource-trackdefaultlist.html
mediasource-util.js
META.yml
SourceBuffer-abort-readyState.html
SourceBuffer-abort-removed.html
SourceBuffer-abort-updating.html
SourceBuffer-abort.html
URL-createObjectURL-null.html
URL-createObjectURL-revoke.html
URL-createObjectURL.html