media/libraries/common
tianyifeng db3e662bdc Throw exception when TimestampAdjuster initialization hits timeout
Add `HlsMediaSource.Factory.setTimestampAdjusterInitializationTimeoutMs(long)` to set the timeout for the loading thread to wait for the `TimestampAdjuster` to initialize. If the initialization doesn't complete before the timeout, a `PlaybackException` is thrown to avoid the playback endless stalling. The timeout is set to zero by default.

This can avoid HLS playback endlessly stalls when manifest has missing discontinuities. According to the HLS spec, all variants and renditions have discontinuities at the same points in time. If not, the one with discontinuities will have a new `TimestampAdjuster` not shared by the others. When the loading thread of that variant is waiting for the other threads to initialize the timestamp and hits the timeout, the playback will stall.

Issue: androidx/media#323

#minor-release

PiperOrigin-RevId: 539108886
2023-06-10 20:25:05 +00:00
..
src Throw exception when TimestampAdjuster initialization hits timeout 2023-06-10 20:25:05 +00:00
build.gradle Remove exoplayer2-only javadoc machinery from media3 2023-06-05 09:47:58 +00:00
lint-baseline.xml Add lint base to make gradle lint run without errors 2022-06-15 15:27:34 +00:00
proguard-rules.txt Update to androidx.media3 2021-10-27 09:12:46 +01:00
README.md Fix javadoc links in media README files 2023-03-30 17:26:40 +00:00

Common module

Provides common code and utilities used by other media modules. Application code will not normally need to depend on this module directly.