Features
#3895 Support for ProducerReferenceTime specified in the manifest: Adds calculation of liveDelay described in TS 103 285 Clause 10.20.4
#3900 Update manifest source url without re-initialising player
#3898 Provides a way of setting 'withCredentials' true/false on DVB Metrics Reporting requests.
#3831 Support for ServiceDescription "OperatingBandwidth"
#3893 Enable whitelisting of CMCD parameters
Improvements
#3894 JSON stringify the license request payload to Clearkey servers
#3884 BOLA rule: Avoid quality switch to lowest level for video track when switching audio track
#3883 Remove non-standard t metric from HttpList reports
#3910 Trigger event when AdaptationSet is removed due to all representations being incompatible
#3831 Move catchup logic to a separate CatchupController class
#3831 Move ServiceDescription logic to a separate class ServiceDescriptionController
#3831 Do not overwrite Settings.js parameters when applying the ServiceDescription logic.
#3831 Use MediaPlayerModel as a proxy between classes and Settings.js if additional logic needs to be applied and the settings can not be used 1:1
#3831 Add new class CustomParametersModel to save all callback functions and additional parameters defined by the app
#3831 Remove enableLowLatency from Settings.js. Switch to low latency mode internally based on MPD parameters availabilityTimeComplete
#3831 Remove minDrift, always apply catchup logic if in low latency mode
#3831 Calculate the live latency at a central place PlaybackController.computeAndSetLiveDelay. Add notification to recalculate once settings are changed, see bullet below
#3831 Add DISPATCH_KEY_MAP to Settings.js to trigger events once a specific setting is updated
#3921 Enforce indention in ESLint config
#3926 Prevent exception when PlayReady CDM returns UTF-8 unwrapped message
#3923 Change precedence of ServiceDescription elements
#3888 Fix playback stalling for buffered ranges
#3918 Reduce export settings url length by comparing to default settings
#3934 Add example for keeping DRM MediaKeySessions in DRM section
#3937 Abort license request on reset
Bugfixes
#3892 Update SessionToken typings (add getUsable())
#3903 Fix concurrent internal seeks
#3925 [MSS] Fix regression in MssParser
#3924 [MSS] Fix start FragmentInfo requests on seeking event
#3935 Fix regression in key system selection based on priority
#3938 Fix deleting all cues from text tracks