- From: Silvia Pfeiffer <silviapfeiffer1@gmail.com>
- Date: Sat, 17 Aug 2013 22:40:29 +1000
- To: Eric Carlson <eric.carlson@apple.com>
- Cc: Brendan Long <self@brendanlong.com>, "HTML WG (public-html@w3.org)" <public-html@w3.org>
- Message-ID: <CAHp8n2nK-EiKiST38cdeAvwsfMqqq7UPg_szAEDOFx0bAetDqg@mail.gmail.com>
On Sat, Aug 17, 2013 at 3:17 AM, Eric Carlson <eric.carlson@apple.com>wrote: > > On Aug 8, 2013, at 7:21 PM, Silvia Pfeiffer <silviapfeiffer1@gmail.com> > wrote: > > > On Fri, Aug 9, 2013 at 6:11 AM, Brendan Long <self@brendanlong.com> > wrote: > >> There's section of the HTML5 CR spec saying: > >> > >> Similarly, when the playback rate is not exactly 1.0, hardware, > software, or > >> format limitations can cause video frames to be dropped and audio to be > >> choppy or muted. > >> > >> > >> I think this should also apply to text track cues, something like: > >> > >> Similarly, when the playback rate is not exactly 1.0, hardware, > software, or > >> format limitations can cause video frames and text cues to be dropped > and > >> audio to be choppy or muted. > >> > >> When playing at non-standard speeds, an efficient implementation may > want to > >> skip portions of the file, which could mean skipping cues. > > > > I assume you are talking about a situation where the playback would > > need to jump multiple seconds (call them "s") at a time to achieve the > > speedup. > > And you are further assuming that when the current time jumps from > > second x to second x+s, there may be a cue that would have both their > > start and end time between x and x+s. > > So you're saying that if there is no audio or video rendered to which > > the cue refers, the "time marches on" algorithm doesn't actually > > activate these cues and therefore they are "dropped". > > > > In actual fact, the "time marches on" algorithm will activate the > > enter and exit events of the "missed cues", so they are not really > > "dropped". They are, however, not rendered, because they don't become > > active. > > > This requires that all of the media data for time X to X+S has to be > loaded before skipping ahead. Why? Only the media data for time x and for time x+s has to be loaded - nothing else. > This means that a UA can not play at a faster rate by not loading the > entire file, for example by only loading and displaying key frames. > If this is allowed, and it seems silly to prevent it, cues defined in > the portions of the file that are not loaded would have to be skipped. > I guess we have two different kind of cues: those coming from <track> and those coming from inside a media file. Those from a <track> element are all loaded and events could be activated as the timeline skips over the cue start/end times. Cue content would be rendered when X or X+S is within a cue's interval. Those from inside a media file, if multiplexed, may get completely skipped by going from X to X+S without the browser loading those parts of a file. So, in this case you'd probably skip cues. I wonder if that may be a problem for in-band metadata tracks where, for example, the passing of cues are supposed to trigger a video pause and display of some other content (such as a video ad). Silvia.
Received on Saturday, 17 August 2013 12:41:16 UTC