videojs/video.js — pull request #1253 by brainopia (2014-05-29 18:05:16+00:00)
Title: Progress bar

Hello, I've done a few things in this pull-request.

1. `player.buffered` now returns a true timerange with all regions. I'm going to make a video.js plugin which will pick a fastest mirror based on tracking buffered information.

Previous approach to `player.buffered` leads to a following situation. If you seek to the later part of the video and then to the earlier one then `player.buffered` would return result for the former region and therefore no progress could be tracked until both regions would merge.

2. Change load-progress-bar to display correct information about all buffered regions.

Our users would complain that we display incorrect buffered information. When seeking back and forward across video. Also there is a bug in Opera http://www.sitepoint.com/essential-audio-and-video-events-for-html5/ which can lead to preloading the region with the small part at the end of the video which would be displayed in previous approach as a fully buffered video.

3. Support for `player.played` (with multiple regions).

4. Change play-progress-bar to display `player.played` regions (otherwise information of buffered regions in earlier parts of the video won't be visible).