mirror of
https://github.com/androidx/media.git
synced 2025-05-06 23:20:42 +08:00
HLS: Fix issue where new init segment would not be loaded
Issue: #9004 PiperOrigin-RevId: 379516815
This commit is contained in:
parent
08dbfd5c5a
commit
c269a62fe0
@ -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
|
||||
|
Loading…
x
Reference in New Issue
Block a user