Features
#3727 Optimize multiperiod prebuffering by improving logic to decide whether all segments of a period have been loaded
#3743 Improve buffer robustness: Recover from media_decode errors
#3672 Allow for registering a custom function to select the initial track
#3751 Add track selection mode based on selectionPriority attribute
#3684 Enable low latency based on MPD parameters (availabilityTimeComplete=false)
Improvements
#3745 Improve and fix reporting of multiple CMCD parameters
#3770 Handle all 2XX status codes on license request
#3772 In case of a seek into a gap: Try to find the closest segment to the target time and adjust the seek target accordingly
#3775 Enable gap jumping when seeking close to the end of a period
Major Bugfixes
#3759 Fix wrong timing calculation for client/server clock drift
#3735 Fix initialization after reset has been called
#3757 Fix javascript errors on reset
#3748 Fix transition from live to static
#3754 Fix live playback on WebOS
#3767 Fix outer period seek to 0
Additional bugfixes
#3720 Correct reporting and logging of URL if modified (e.g. by CMCD)
#3744 Fix DVRWindowSize manifest property
#3725 Fix EventController._triggerRemainingEvents not doing anything
Link Fix link in VTT sample
#3722 Explicitly match null status for response codes
#3734 Fix download time visualization in reference client
#3733 Ignore readystate when resetting the playbackrate
Link Fix wrong parameter when calling enableForcedTextStreaming
Link Add missing information about errorSettings to index.d.ts and Settings.js
#3746 Fix availabilityTimeOffset for live MSS
#3747 Fix cmcd nor reporting
#3749 MSS: Fix issue when selecting new audio track and new text track simultaneously on live streams
#3755 Fix, complete types definition file
#3756 Stream: do not reset() on protection error
Link Fix a bug in the GapController.js when unregistering events