[whatwg] HTMLMediaElement.preload and stalled event

Philip Jägenstedt philipj at opera.com
Fri Jul 23 01:57:40 PDT 2010

On Fri, 23 Jul 2010 05:25:37 +0200, Chris Pearce <chris at pearce.org.nz>  

>   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

More information about the whatwg mailing list