You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
DownloadHelper.getDownloadRequest() crashes with IndexOutOfBoundsException in HlsMediaPeriod.getStreamKeys() for HLS streams with a demuxed audio rendition and no subtitles #3333
The only change needed to the demo app is adding one entry to its media list.
Check out the 1.10.1 tag of this repository.
Add the following sample to the HLS group in demos/main/src/main/assets/media.exolist.json:
{
"name": "Repro: demuxed audio, no subtitles",
"uri": "https://storage.googleapis.com/shaka-demo-assets/bbb-dark-truths-hls/hls.m3u8"
}
./gradlew :demo:assembleNoDecoderExtensionsDebug and install the APK.
In the demo app, expand HLS and tap the download icon next to the new sample.
In the track-selection dialog, leave the defaults (VIDEO = 自動 / Auto, AUDIO = default) and press OK.
The app crashes immediately, before any segment is downloaded.
Expected result
DownloadHelper.getDownloadRequest() returns a DownloadRequest whose streamKeys cover the selected video
variant and the selected audio rendition, and the download starts.
Actual result
The app crashes:
FATAL EXCEPTION: main
Process: androidx.media3.demo.main, PID: 8815
java.lang.IndexOutOfBoundsException: index (0) must be less than size (0)
at com.google.common.base.Preconditions.checkElementIndex(Preconditions.java:1372)
at com.google.common.base.Preconditions.checkElementIndex(Preconditions.java:1354)
at com.google.common.collect.RegularImmutableList.get(RegularImmutableList.java:84)
at androidx.media3.exoplayer.hls.HlsMediaPeriod.getStreamKeys(HlsMediaPeriod.java:289)
at androidx.media3.exoplayer.offline.DownloadHelper.getDownloadRequestBuilder(DownloadHelper.java:939)
at androidx.media3.exoplayer.offline.DownloadHelper.getDownloadRequest(DownloadHelper.java:891)
at androidx.media3.exoplayer.offline.DownloadHelper.getDownloadRequest(DownloadHelper.java:860)
at androidx.media3.demo.main.DownloadTracker$StartDownloadDialogHelper.buildDownloadRequest(DownloadTracker.java:368)
at androidx.media3.demo.main.DownloadTracker$StartDownloadDialogHelper.onTracksSelected(DownloadTracker.java:250)
at androidx.media3.demo.main.TrackSelectionDialog.lambda$createForTracksAndParameters$0(TrackSelectionDialog.java:161)
...
VDH not working today on the tube and on other sites. Trieed on new clean Firefox profile without any success. It used to work until yesterday or the day before. IFF 152.0.6 (64 bit) on Ubuntu 24.04LTS italy
Activity
tianyif commentedon Jul 14, 2026
Hi @tomoya0x00, thanks for reporting! We are making a fix for this.
Fix the getStreamKeys after exposing ID3 track for HLS audio renditions
Fix the getStreamKeys after exposing ID3 track for HLS audio renditions
Fix the getStreamKeys after exposing ID3 track for HLS audio renditions
Fix the getStreamKeys after exposing ID3 track for HLS audio renditions
Fix the getStreamKeys after exposing ID3 track for HLS audio renditions
N0bitaN0bi commentedon Jul 17, 2026
VDH not working today on the tube and on other sites. Trieed on new clean Firefox profile without any success. It used to work until yesterday or the day before. IFF 152.0.6 (64 bit) on Ubuntu 24.04LTS italy