v3.9.1
Release 3.9.1 (2018-11-13)
Overview
This release fix issues regarding the manifest-refreshing logic for both Smooth and DASH:
-
for smooth contents, the player could stall indefinitely when playing a live content close to the live edge and switching a text, audio or video track
-
for dash contents with a
minimumUpdatePeriod
attribute and acustomManifestLoader
argument given toloadVideo
, the manifest could be refreshed too often
To lower the memory usage when playing Smooth live contents for a long time, we also now clean-up regularly the informations we have on segments becoming unreachable.
Infinite rebuffering issue with Smooth live contents
The main fix concerns Smooth contents, where the player could stall indefinitely when playing live contents.
It was due to two issues in our Smooth Manifest refreshing logic:
- we overwrote the previous segment informations we had when refreshing the manifest
- we had a time-conversion error which prevented emergency Manifest updates to happen
This could mostly be experienced when switching to another audio track in specific situations (live content, close to the live edge...), those two issues could combine and lead ultimately to a player staying in a rebuffering state.
This release fixes both of these issues.
Changelog
Bug fixes
- smooth: fix issue preventing emergency manifest updates
- dash: fix timeout for minimumUpdatePeriod in cases where the time at which the manifest was last requested is not known (like when setting a customManifestLoader argument)
Other improvements
- smooth: keep supplementary segment informations when updating the manifest
- smooth: when updating segment informations, perform garbage-collection of those concerning unreachable segments