- This is a dead end branch for a final 1.x release to hold us over until the 2.0 refactored code base is released at end of Jan 2016. This was intentionally not merged in to master to avoid having to force 2.0 into master and loosing all the history prior. Since 1.6.0 will not rebase ore merge and has over 50 conflicted files we decided to just tag and not merge. Best efforts will be made to make sure all fixes and enhancements will be manually ported over to 2.0.
- Added set/getMaxAllowedRepresentationRatio and setInitialRepresentationRatio APIs, which enable you to select a starting and maximum representation part way through the available list, enabling limitations of control without knowledge of available bitrates. With 10 representations, and a maxAllowedRepresentationRatio of 0.3, the third representation is the highest that will be switched to. By default, this has no effect.
- New ABR heuristic that prevents switching to representations larger than the size of the viewport. There are corresponding get/setLimitBitrateByPortal APIs to control this functionality.
- When a stream is stalled with addStalledStream (i.e. for rebuffering), a "waiting" event is sent by the video model. Inversely, a "playing" event is sent when all stalled streams have been removed. This enables easy tracking of whether or not the video is rebuffering.
- New astinfuture event that is triggered when playback will not start yet as the stream is not yet available.
- New get/setAutoSwitchQualityFor APIs that enable you to toggle ABR for just audio or video. get/setAutoSwitchQuality exists for backwards compatibility.
- DVB-compliant metric reporting.
- Improvements to handling resets, and replacement of lots of logic around scheduling and other calculations that seems to exist for dealing with badly generated content.
- Removal of unused long.js/Math.js libraries, and atob and btoa polyfills
- Adds an isDiscarded check to isFragmentLoadedOrPending, as an additional layer of protection for issue #240.
- Fixes/workarounds for #881, #882 and #883.
- Improved buffer pruning logic that works across buffered ranges.
- Fix playback in environments where no EME are available (e.g. Debian Firefox)