Features
#4839 Add support for L3D DASH by @dsilhavy
#4572 Add MPEG-5 LCEVC Scalable support by @v-nova-romas
#4812 Add a Cue Interval Tree for fast cue lookups by @eduter
#4790 Add support for the preselection element by @stschr
#4772 Adds an API to specify external subtitles that are then added to the internal manifest representation of dash.js right after parsing @dsilhavy
#4817 Adds "maximumOpenMediaKeySessions" to Settings for configurable maximum number of KeySessions by @gorkemg
#4866 Add config value in settings to define priority for ABR rules by @dsilhavy
#4887 Add option to specify an artificial offset to the UTC time sync value
#4870 Add some additional debug outputs in the reference UI by @dsilhavy
#4858 Add functional test to test dynamic to static transition by @dsilhavy
#4857 Add GitHub workflow for trusted publishing by @dsilhavy
#4883 Add a functional test for testing fast quality switches
Improvements
#4719 Use the XML parser from the CML by @littlespex
#4789 Honour systemStringPriority in MediaCapabilities API configuration by @gmcgarry
#4791 Add Accessibility information in the Controlbar by @minhkstn
#4825 Adds a test to check if the canplay event is triggered by @dsilhavy
#4846 Add a llms.txt to provide basic links to dash.js related information by @dsilhavy
#4863 Add robustness settings to reference UI by @ShikiSeiren
#4890 Refactor: replace global dashjs.FactoryMaker with ES6 imports by @slhck
Bugfixes
#4794 Avoid modifying element preload attribute as canplay event is baseline in Firefox by @ava-gunn
#4811 Fix an issue with query parameters in the CMCD nor field being removed by @littlespex
#4821 TypeScript fix for MediaPlayerClass by @steve-taylor
#4823 TypeScript fix for DashAdapter and StreamProcessor by @steve-taylor
#4826 Remove unused periodIndex parameter from getMainAdaptationForType type definition and JSDoc by @steve-taylor
#4831 Check that Performance methods exist before invoking them by @steve-taylor
#4832 Fix: can't switch to next period due to precision by @hongfeih-es
#4834 Fix undefined error when no protectionController is available by @dsilhavy
#4843 Fix reference sample by @bbert
#4845 Fix a bug that caused accessing a null value in the controlbar by @dsilhavy
#4855 Exclude LFE2 from effective channels by @stschr
#4766 Fix Typescript ES Module error by @dsilhavy
#4871 Preloading: Fix an error when no buffer sink is available by @dsilhavy
#4889 fix: wrong imports for html-entities by @slhck
#4891 docs: fix contributing guide by @slhck
#4895 Fix failing MSS playback due to undefined priorities by @dsilhavy
#4895 Fix AbandonRequestRule failing due to a bug in the path to the corresponding setting by @dsilhavy
#4896 Fix accessing a null value when selecting an initial track by @dsilhavy
#4896 Fix position of the controlbar in the low latency sample by @dsilhavy