[Bug 22785] there should be a way to schedule audio/video track selection changes in HTMLMediaElements

https://www.w3.org/Bugs/Public/show_bug.cgi?id=22785

--- Comment #7 from Michael Thornburgh <mthornbu@adobe.com> ---
there are multiple ways today of doing track switching in JavaScript. as Sylvia
points out, one way to align track switches with the right time in the media
playout is via a metadata TextTrack having cues describing desired track
switches.

any scheme using JavaScript for track switching will have multiple issues:

  1) JavaScript execution can't be guaranteed to be timely or to take effect at
a precise frame/sample moment, particularly on platforms/implementations where
media playback happens in a hardware component running independently of the
browser & JavaScript.

  2) in the case of MSE, where some of the tracks might not have any data
depending on whether you're in the main program or advertisement section, and
where the media segments' durations might not be exactly as indicated in a
manifest (for example, missing a few frames), playback could stall before
reaching a switch point so it would never be reached, and the switch to tracks
with media to play (and the disabling of tracks with no media to play, thereby
keeping those tracks from causing a stall) wouldn't happen.

for #1, having the switches happen automatically, and under the control of the
media engine, allows the switches to happen seamlessly at exactly the desired
points.  JavaScript execution latency and the likely decoupling of the JS
environment from the media engine all but guarantees that there will be
glitches.  the glitch could include showing a few frames of an ad slate/slug
from the main program stream, which looks sloppy and gives a poor user
experience.

for #2, the media engine can know ahead of time that a switch is scheduled and
can allow for a little slop to avoid a stall.

-- 
You are receiving this mail because:
You are the QA Contact for the bug.

Received on Wednesday, 24 July 2013 17:38:09 UTC