Features
#3279 Make low latency specific reduction and multiplication factor for retry attempts and retry interval configurable.
#3280 Add support for transition phase between live and on-demand streams (NPVR)
#3245 Allow setInitialMediaSettingsFor with fragmentedText media type
#3292 Use max segment duration for single period manifests and live delay calculation
#3297 Update thumbnails API : Minor fixes + display thumbnails bitrate list in control bar
#3316 Define a threshold which controls catchup mechanism for low latency streaming
#3293 Store and use fragmentedText settings in localStorage
#3336 Adjust low latency sample to include catchup playback rate threshold
Improvements
#3266 Add protocol info to manifest info in order to distinguish between MSS and DASH
#3276 Sample sizes for Throughput history: Reverse order of samplesize variance test to match usage
#3288 Update jsdoc for UrlLoader, DefaultUrlUtils, SchemeLoaderFactory
#3299 Set minBufferTime to one video segment duration
#3296 Use document.fullscreenElement
#3310 Consider gap/discontinuity limit as tolerance when determining buffer length
#3294 Enable calculating segment availability range according to effective segment timeline if timeShiftBufferDepth is not defined.
#3330 Remove profiles from mimeType attribute as they will cause problems when doing capability checks
#3335 Reorganize reference stream dropdown, add provider and sort by use case
#3324 Solves live seeking for non-modern browsers for which seeking at a time on video element fails when there is no buffered data at requested time
Bugfixes
#3262 Fix PSSH parsing: Remove newlines and whitespaces from the pssh string to avoid running into an infinite loop
#3271 Remove r parameter from live delay computation
#3277 Fix a bug which causes no calculation of live seek range in the MSE for video only streams
#3282 Restore default buffer settings
#3284 Fix regression for representationInfo's segmentDuration
#3285 Fix live delay computation
#3286 Fix regression with enableText
#3290 Fix regression for non-embedded text tracks
#3298 Check if dvr window is finite before trying to find a request at the beginning of the dvr window
#3301 Fix race condition: Set latency attributes in reference client after the default json has been loaded
#3307 Only reset the seek target if a valid segment request has been found
#3309 MSS: Fix moov duration fields
#3314 Fix regression for live delay computation
#3323 Fix regression on track switch
#3328 Fix: startRecord type missing
#3337 Fix multiperiod representation update
Refactor
#3256 Remove circular dependencies to/from StreamController and StreamProcessor
#3278 Remove NextFragmentRequestRule
#3275 Modify Offline module API
#3283 Optimize live start
#3308 Refactor streams playback start
#3322 Playback start for SegmentBase streams