On Fri, 23 Jul 2010 05:25:37 +0200, Chris Pearce <ch...@pearce.org.nz>
wrote:
I am implementing HTMLMediaElement.preload in Firefox, and I have a
question:
Should we be periodically firing a "stalled" event at the media element
while we've suspended download of a preload:none or preload:metadata
media?
In step 2 of the resource fetch algorithm [1], the spec says "If at any
point the user agent has received no data for more than about three
seconds, then queue a task to fire a simple event named stalled at the
element." But the description of the "stalled" event [2] says "The user
agent is trying to fetch media data, but data is unexpectedly not
forthcoming." The later description seems to imply that we only send
"stalled" events when we unexpectedly stop receiving data, but the
resource fetch algorithm indicates we should send "stalled" events if we
stop receiving data for any reason, even if we suspend the download, and
thus expect to not receive data.
If we should send the stalled events, we should update the description
of the stalled event at [2] to reflect that.
Thanks,
Chris Pearce.
[1]
http://www.whatwg.org/specs/web-apps/current-work/multipage/video.html#concept-media-load-resource
[2]
http://www.whatwg.org/specs/web-apps/current-work/multipage/video.html#event-media-stalled
I think this is a spec bug. When a UA decides to not download more data it
should fire the suspend event. It doesn't make any sense to also fire the
stalled event, in my opinion, but the spec isn't clear about this.
Also, I don't understand why the stalled event would be fired periodically
in any case, why would that be so?
--
Philip Jägenstedt
Core Developer
Opera Software