5.3.4 (2026-11-06)
Bug Fixes
- Ads: Detect mid-rolls when no video frames are presented (#10925) (4b53b29)
- Ads: Exclude embedded slots from the interstitial break count (#10926) (a34df11)
- Avoid a TypeError when a stream fails during unload (#10927) (13c95f3)
- Avoid an unhandled rejection when a preload fails (#10913) (da207d3)
- DASH: Apply PTO timeline adjustment only once (#10881) (012f2d9), closes #10604
- DASH: Avoid continuous manifest updates when minimumUpdatePeriod is 0 (#10919) (6621d9f)
- DASH: Keep the text timestamp offset when video is in another Period (#10895) (4c6950a)
- Don't reuse failed segment prefetches on retry (#10902) (031c17f)
- Fix a MediaSource leak when unload() is interrupted (#10886) (680afb5)
- Fix leaks and hangs when destroy() interrupts load() or attach() (#10928) (44ad8ae)
- Fix TypeError when the segment index is released during a switch (#10885) (3ca0b6c)
- Make codec rejection in the MediaSource polyfill work (#10868) (1e8d709)
- MKV: preserve raw MP3 continuity across clusters (#10857) (8f1ac8f)
- MSF: Stop waiting early for a fill fetch stream that never shows up (#10898) (0c27a46), closes #10892
- Preload: Choose the initial variant from the player's bandwidth estimate (#10827) (c33a7e8), closes #10825
- Text: Align wrapped lines correctly on older browsers (#10851) (bc6b3e6)
- UI: Fix mouse wheel seeking on the seek bar (#10880) (f6c4c00), closes #10879
- UI: Keep the keyboard focus indicator visible over the video (#10906) (f9a59bc), closes #3146
- UI: Keep the seek bar preview in sync with the live seek range (#10924) (cd026a3)
- UI: Make tooltips dismissible and hoverable (#10904) (d1175c5), closes #3146