- 20 Jan, 2016 1 commit
- 19 Jan, 2016 1 commit
-
-
- Addressed internal function issues as well as removed a potential fillBuffer bug - Added tests for byte-range requests
Dylan Dove committed
-
- 14 Jan, 2016 1 commit
-
-
* Added a media2.m3u8 file since that was the only variant that was missing and it just so happens that fixing selection meant media2 became very commonly selected in tests * Rendition selection test for non-exact player dimensions
jrivera committed
-
- 16 Dec, 2015 1 commit
-
-
readyState should have been a function all along added a test for expired seconds tracking not beginning until firstplay is triggered
jrivera committed
-
- 11 Dec, 2015 2 commits
-
- 09 Dec, 2015 1 commit
-
-
- 01 Dec, 2015 1 commit
-
-
- 27 Nov, 2015 2 commits
-
-
Track player events and display counts on the stats page. Add a toggle to force Flash mode.
David LaPalomento committed -
When we switch playlists in a live video, we have to find the right place in the new playlist to continue buffering. This is complicated because we can't guarantee the two variants are segmented at the same time positions or that the windows of time they represent are exactly in sync. Most of the time, they're pretty close to one another and we can use that fact to make better guesses at which segment to download when switching. This PR adds back tracking of expired content in the playlist loader, which can then be used to estimate the seekable window for live playlists even before we've buffered any segments from them. This also allows seekable to be accurate even when the player has paused for a long time and all the segment timing information we gathered has gone out of date. To make rejoining or seeking in a live stream even more robust, we detect when a seek "misses" the live window and seek again to a safe position.
David LaPalomento committed
-
- 21 Nov, 2015 1 commit
- 20 Nov, 2015 4 commits
-
-
Make the default bandwidth estimate a bit less conservative. On bad connections, this may lead to slower startups but it can be overridden through options or by setting the bandwidth property early.
David LaPalomento committed -
Look forward and backward through the playlist to find an anchor to base seekable calculations on. This is helpful for live playlists in particular, where the only way to determine the correct starting position for the seekable range is to look at where future segments have ended up in the buffer. Without this change, the start of seekable was always zero, even if the live sliding window had moved forward.
David LaPalomento committed -
* Moved blacklisting to above the rendition selection line so that we don't try to select the rendition that was just blacklisted * Playlist Loader now emits the playlist it was trying to load so that it can be blacklisted when initial load was unsuccessful
jrivera committed -
-
- 17 Nov, 2015 3 commits
-
-
-
Allow h.264 codecs to mingle with one another. Only exclude variants based on audio if one or the other is using HE-AAC.
David LaPalomento committed -
Media Source Extensions is very picky about the type of media data fed to it. If you stop passing video because you've switched to an audio-only rendition, for instance, MSE will stall until video data is provided. Since we don't have a good way of reconfiguring a Media Source once we've started adding SourceBuffers to it yet, filter out variant playlists that we know are incompatible with the current SourceBuffer configuration.
David LaPalomento committed
-
- 16 Nov, 2015 1 commit
-
-
If someone calls player.canPlayType() with HLS registered as a source handler, it would fail at runtime. Related to videojs/video.js#2709.
Gaurav Saxena committed
-
- 15 Nov, 2015 3 commits
-
-
Use the experimental implementation of MediaSource.addSeekableRange_() to allow HLS to specify greater seekable ranges then the current buffered region. Requires https://github.com/videojs/videojs-contrib-media-sources/pull/55.
David LaPalomento committed -
Separate out the source handler object from the HLS namespace. Now, videojs.Hls is an object that is used to organize exports from this library. The actual source handler prototype is now HlsHandler. Intended to be defensive about the backwards-compatibility concerns in https://github.com/videojs/video.js/pull/2814.
David LaPalomento committed -
Use the dist version of contrib-media-sources on the example and stats pages.
David LaPalomento committed
-
- 12 Nov, 2015 1 commit
-
-
One test case was modifying the page-level hls options but failing to restore the old values. This leaked environment issues into other tests.
David LaPalomento committed
-
- 10 Nov, 2015 1 commit
-
-
Fixes #430. If drainBuffer is called after updating is reset on the sourceBuffer but before updateend fires, a segment could be appended twice. Check to make sure a segment hasn't already been appended before proceeding with draining the buffer.
David LaPalomento committed
-
- 02 Nov, 2015 1 commit
-
-
- 21 Oct, 2015 2 commits
-
-
Buffered will not be present in segment info when a segment processing is aborted due to seeking. Make sure bufferedAdditions_ does not error or add incorrect timeline information to the segment in that case.
David LaPalomento committed -
Media sources implicitly track expired time by retaining the mapping between presentation timestamp values and the media timeline in the buffer. That allows us to simplify a good deal of code by not tracking it ourselves. Finish updating tests to work against the new timeline start and end annotations on segments instead of the old PTS values. Remove metadata cue translation because that is now handled by contrib-media-sources. Update key fetching in HLSe to occur concurrently with the segment download. All tests are now passing.
David LaPalomento committed
-
- 15 Oct, 2015 1 commit
-
-
If the old and new buffered ranges have a shared start or end point, that edge should not be interpreted as a new buffered boundary. Fix up a number of the tests. Some tests are still failing.
David LaPalomento committed
-
- 29 Sep, 2015 3 commits
-
-
For #400. Flash doesn't currently fire "loadstart" in data generation mode. Triggering that event should probably happen in video.js itself but fire it once the source handler is selected to make things behave somewhat sanely for now.
David LaPalomento committed -
All the transmuxing code has moved into mux.js so we can get rid of the remnants in this project.
David LaPalomento committed
- 28 Sep, 2015 2 commits
-
-
Fix up the tests and remove debug logging. Put in one example case for playlist re-synchronization.
David LaPalomento committed -
When switching renditions or dealing with a live stream with unaligned variant playlists, we may discover that the segment we buffered isn't associated with the time range we expected it to be. In that case, adjust our information about timeline positioning and try buffering again.
David LaPalomento committed
-
- 26 Sep, 2015 1 commit
-
-
Fix the stats page to work with video.js 5. Get the measured bitrate graph updating in real time.
David LaPalomento committed
-
- 24 Sep, 2015 1 commit
- 23 Sep, 2015 1 commit
-
-
- 22 Sep, 2015 3 commits
-
-
-
"extends" is disallowed in IE8 so videojs renamed the inheritance helper. Update our usage to match.
David LaPalomento committed -
When a browser could support HTML or Flash based playback modes, allow video.js's techOrder to have precedence. It's very handy to be able to override the mode selection for debugging purposes, for instance.
David LaPalomento committed
-
- 21 Sep, 2015 1 commit
-
-