> - Changed on how HLS select media file index when variant playlist is > switched. It was based on file name, but it is not reliable, since file names > are not guaranteed to match. Instead, index is adjusted based on sequence > number which should not drift more than +/- 1 when switch is done. Sequence > number is like index of first segment file in live streams. > Fixed issue when variant playlist was not detected as live even it was live. > Playlist with variant playlists was detected correctly as live. > - Fixed reload time. Thread sleep is expecting milliseconds, and we provided > (seconds / 2) as milliseconds without conversion. As have resulted we were > requesting playlist way too often. > - Redone mechanism on how we are waiting for live segments to be added. Old > approach had a bug with semaphore and if we added two segments in one run it > will cause code to assume that we have segments when we did not. As a result, > EOS was signaled for live streams. This issue does not reproduce often but > might happen. > - Old playlist data will be cleared when we are switching bitrate, otherwise > we will attempt to play old segments which are gone long time. > - Fixed start time for live streams by sending `BYTE` segment vs `TIME`, so > `qtdemux` will handle initial start time. Live streams will not start with 0 > PTS as on demand. > - `javasource` will report `GST_CLOCK_TIME_NONE` for unknown duration instead > of large negative number. > - `#EXT-X-MEDIA` streams will be seek to last segment similar to streams > without `#EXT-X-MEDIA` when seek to the end. > > > > > > --------- > - [x] I confirm that I make this contribution in accordance with the [OpenJDK > Interim AI Policy](https://openjdk.org/legal/ai).
Alexander Matveev has updated the pull request with a new target base due to a merge or a rebase. The incremental webrev excludes the unrelated changes brought in by the merge/rebase. The pull request contains three additional commits since the last revision: - Merge remote-tracking branch 'upstream/master' into JDK-8389211 - 8389211: Fix HLS Live issues found during testing of JDK-8331458 and various live streams [v2] - 8389211: Fix HLS Live issues found during testing of JDK-8331458 and various live streams ------------- Changes: - all: https://git.openjdk.org/jfx/pull/2227/files - new: https://git.openjdk.org/jfx/pull/2227/files/7572ac4e..f75cba76 Webrevs: - full: https://webrevs.openjdk.org/?repo=jfx&pr=2227&range=02 - incr: https://webrevs.openjdk.org/?repo=jfx&pr=2227&range=01-02 Stats: 472216 lines in 12253 files changed: 269202 ins; 119041 del; 83973 mod Patch: https://git.openjdk.org/jfx/pull/2227.diff Fetch: git fetch https://git.openjdk.org/jfx.git pull/2227/head:pull/2227 PR: https://git.openjdk.org/jfx/pull/2227
