Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
HLS Live Streaming with DVR window and seek support added
[Problem] Exoplayer does not support HLS Live streaming with DVR window and seek. [Solution] 1. Support for available seek range added. 2. Support for seek within DVR window range added. [Known Issues] 1. Seeking beyond the live window is handled as follows: a. If the seek position is less than lower bound, we start playback from the first available chunk data. b. If the seek position is greater than upper bound, we start giving data from the live edge, however, exoplayer skips frames till it gets the data corresponding to the seeked position 2. We assume either media sequence or program date time is always present in the media playlist. Playlists without media sequency or program date time is not handled. Behaviour is unpredictable. 3. Media playlist refresh time is aggresively fixed at half the target duration. We are yet to honor the spec that says if the last fetch did not change the playlist, try again after half the target duration, otherwise try after the target duration. 4. We assume that playlist always have timezone in program date time or never have timezone. If this assumption fails, live DVR functionality will be broken. [Tests] 1. Manifests with either program date time or media sequence or both tested. 2. Manifests with variable segment duration is tested. 2. Adaptive bitrate Switching tested. Also tested the case where available range might be different across variants.
- Loading branch information