Bug 138820

Summary: Timeupdate fires during a buffer under-run.
Product: WebKit Reporter: Jamie Stackhouse <contin673>
Component: MediaAssignee: Nobody <webkit-unassigned>
Status: NEW ---    
Severity: Normal CC: brentsmithis, webkit-bug-importer
Priority: P2 Keywords: InRadar
Version: 528+ (Nightly build)   
Hardware: Mac   
OS: OS X 10.10   
Attachments:
Description Flags
Screenshot showcasing odd timeupdate. none

Description Jamie Stackhouse 2014-11-17 20:38:59 PST
Created attachment 241760 [details]
Screenshot showcasing odd timeupdate.

Test URL: http://www.w3.org/2010/05/video/mediaevents.html, and http://www.videojs.com.

Step to reproduce:
1: Throttle internet connection to an appropriate level that will cause the buffer to run out.
2: Play video

Expected Results:
1: Plays until there is not buffer to draw upon to render new frames.
2: MediaElement runs out of data, and the readyState changes from 3 -> 2 -> 1.
3: MediaElement emits "waiting".
4: Buffering occurs...
5: MediaElement readyState changes from 1 -> 2 -> 3.
6: MediaElement emits "playing".
7: MediaElement plays..
8: Occasional "timeupdate" events during playback.

Actual Results:
1: Plays until no buffer.
2: Waiting event is sometimes fired, but not always between buffers.
3: Ready state is not changing from 3 when there is no playback.
4: The currentTime continues to update as if playback was occuring. Occassionally it "fixes" itself and loops back to the real currentTime.
5: Playback begins again.

However, if user has a long buffer period. It is possible to end a video by playing and pausing the video via the controls. It appears to be the cause of the MediaController attribute.

The videojs.com link is a open source library exhibiting the symptoms of this issue, where a user who encounters a buffer under-run are shown no feedback, and their play progress or "scrubber" advances, and then shoots back. VideoJS does not make use of MediaControllers at this point in core.
Comment 1 Jamie Stackhouse 2014-11-17 20:56:57 PST
"VideoJS does not make use of MediaControllers at this point in core."
MediaControllers are not used, to my knowledege.
Comment 2 Radar WebKit Bug Importer 2015-07-23 11:42:09 PDT
<rdar://problem/21965808>