Skip to content

Unhandled ArrayIndexOutOfBoundsException during live HLS playback when media sequence unexpectedly changes to zero  #2249

@gpinigin

Description

@gpinigin

Description

Unhandled ArrayIndexOutOfBoundsException during live HLS playback when media sequence unexpectedly changes to zero. First segment in new index file has no EXT-X-DISCONTINUITY tag added (according to HLS spec absence of tag may lead to playback error)

Reports gathered with Fabric show that negative index is close to value of last known media sequence.

Version

ExoPlayer v2.1.1

Stack trace

Fatal Exception: java.lang.ArrayIndexOutOfBoundsException: length=12; index=-4310639
       at java.util.ArrayList.get(ArrayList.java:310)
       at java.util.Collections$UnmodifiableList.get(Collections.java:1050)
       at com.google.android.exoplayer2.source.hls.playlist.HlsPlaylistTracker.adjustPlaylistTimestamps(HlsPlaylistTracker.java:371)
       at com.google.android.exoplayer2.source.hls.playlist.HlsPlaylistTracker.access$1300(HlsPlaylistTracker.java:40)
       at com.google.android.exoplayer2.source.hls.playlist.HlsPlaylistTracker$MediaPlaylistBundle.processLoadedPlaylist(HlsPlaylistTracker.java:465)
       at com.google.android.exoplayer2.source.hls.playlist.HlsPlaylistTracker$MediaPlaylistBundle.onLoadCompleted(HlsPlaylistTracker.java:422)
       at com.google.android.exoplayer2.source.hls.playlist.HlsPlaylistTracker$MediaPlaylistBundle.onLoadCompleted(HlsPlaylistTracker.java:381)
       at com.google.android.exoplayer2.upstream.Loader$LoadTask.handleMessage(Loader.java:355)
       at android.os.Handler.dispatchMessage(Handler.java:111)
       at android.os.Looper.loop(Looper.java:194)
       at android.os.HandlerThread.run(HandlerThread.java:61)
       at com.google.android.exoplayer2.util.PriorityHandlerThread.run(PriorityHandlerThread.java:40)

Metadata

Metadata

Assignees

Labels

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions