Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Improve MediaPlayerBridge seek resiliance
crbug.com/677280 manifested whenever we tried seeking on a non-seekable live stream, causing the MediaPlayer to crash, and the stream to never start. Dropping seeks based off of unknown or infinite media duration (for livestreams) introduced crbug.com/679482. When we resume a tab, the MediaPlayerRenderer is re-created, and if the preliminary attempt to extract the media's metadata failed, we drop the first seek. This causes the media restart after every tab switch. It turns out that there is a better fix for 677280, which prevents 679482 entirely. Currently, in MediaPlayerBridge::OnMediaPrepared(), we complete pending seeks before updating allowable operations. Updating allowable operations as a first action properly sets "CanSeekForward" and "CanSeekBackards", which then aborts any invalid seek attempts without any additional logic. BUG=679482, 677280 TEST= Manual test on a live HLS stream and non live HLS video. Review-Url: https://codereview.chromium.org/2626443003 Cr-Commit-Position: refs/heads/master@{#442441}
- Loading branch information