Commit c269a62f by olly Committed by Ian Baker

HLS: Fix issue where new init segment would not be loaded

Issue: #9004
PiperOrigin-RevId: 379516815
parent 08dbfd5c
......@@ -19,6 +19,11 @@
is set incorrectly
([#4083](https://github.com/google/ExoPlayer/issues/4083)). Such content
is malformed and should be re-encoded.
* HLS:
* Fix issue where a new initialization segment, as specified by an
`EXT-X-MAP` tag in a media playlist, would not be loaded when
encountered during playback
([#9004](https://github.com/google/ExoPlayer/issues/9004)).
* UI:
* Add `PendingIntent.FLAG_IMMUTABLE` flag when creating a broadcast intent
in `PlayerNotificationManager`. This is required to avoid an error on
......
......@@ -139,12 +139,19 @@ import org.checkerframework.checker.nullness.qual.RequiresNonNull;
ParsableByteArray scratchId3Data;
if (previousChunk != null) {
boolean isSameInitData =
initDataSpec == previousChunk.initDataSpec
|| (initDataSpec != null
&& previousChunk.initDataSpec != null
&& initDataSpec.uri.equals(previousChunk.initDataSpec.uri)
&& initDataSpec.position == previousChunk.initDataSpec.position);
boolean isFollowingChunk =
playlistUrl.equals(previousChunk.playlistUrl) && previousChunk.loadCompleted;
id3Decoder = previousChunk.id3Decoder;
scratchId3Data = previousChunk.scratchId3Data;
previousExtractor =
isFollowingChunk
isSameInitData
&& isFollowingChunk
&& !previousChunk.extractorInvalidated
&& previousChunk.discontinuitySequenceNumber == discontinuitySequenceNumber
? previousChunk.extractor
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or sign in to comment