improvements
- abr-controller: in case next auto level has been forced, cap it by level returned by ABR logic, to avoid switching too high in case we could not afford it
- abr-controller: ensure that hls.startLevel is not overrided by a default ABR heuristic
- abr-controller: don't budget for up to maxStarvationDelay of rebuffering when lowest rendition could provide no rebuffering
- abr-controller: also provide loader stats when triggering Event.FRAG_LOAD_EMERGENCY_ABORTED
- xhr-loader: use onreadystatechange listener, readyState>=2 to improve stats.tfirst accuracy
- xhr-loader: earlier timeout when headers not received fast enough. fire timeout in case HTTP response headers are still not received after half of total timeout
- level-controller: on recoverable network error, switch to current level - 1 instead of always switching to level 0
bugfixes
- level/stream-controller: reduce max buffer length on fragLoopLoadingError : fix fatal frag loop loading error happening on FF / http://www.dailymotion.com/video/x4v2sbe forced 1440p60
- stream-controller: Ensure no runtime errors are raised when a playlist is empty #707