On Fri, 23 Oct 2026 00:24:52 GMT, Alexander Matveev <[email protected]> 
wrote:

>> - 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 incrementally with one 
> additional commit since the last revision:
> 
>   8389211: Fix HLS Live issues found during testing of JDK-8331458 and 
> various live streams [v4]

8389211: Fix HLS Live issues found during testing of JDK-8331458 and various 
live streams [v4]
- We will only cache init segment if it is less than 4 MB.
- Init segment will be loaded after we got data segment in case it was changed 
during live streaming.
- Unsupported segment URL error will be reported when we found one vs when we 
finish parsing first playlist. It is needed so we can signal errors for live 
streams in case if then have unsupported URLs.
- Added missing CloseConnection() calls.

-------------

PR Comment: https://git.openjdk.org/jfx/pull/2227#issuecomment-6354612980

Reply via email to