MSE: Detect and MEDIA_LOG one kind of problematic GOP structure
If a random access point doesn't have the earliest presentation time of other frames that depend on it (eg, other frames in later decode time up until the next random access point), the MSE spec was not designed to support processing and buffering it well. With the change to managing and reporting buffered ranges by PTS intervals instead of DTS intervals, this could impact interop. This change detects this general case and logs once per track to chrome://media-internals. Later changes might include telemetry collection to assist removing or fixing support for at least SAP Type 2 in the MSE ISOBMFF bytestream spec. To verify the new log is emitted by the new test, this change also upgrades FrameProcessorTest's |media_log_| to a StrictMock<MockMediaLog> and includes new strict verification of logs emitted during FrameProcessorTests. See also related spec issue https://github.com/w3c/media-source/issues/187 BUG=739931,718641 Change-Id: I361177dee6a5c70edf17bdbde2f3ea643977e6ec Reviewed-on: https://chromium-review.googlesource.com/563017 Commit-Queue: Chrome Cunningham <chcunningham@chromium.org> Reviewed-by:Chrome Cunningham <chcunningham@chromium.org> Cr-Commit-Position: refs/heads/master@{#485125}
Showing
Please register or sign in to comment