mirror of
https://github.com/androidx/media.git
synced 2025-05-21 23:56:32 +08:00
HLS: Fix issue where new init segment would not be loaded
Issue: #9004 #minor-release PiperOrigin-RevId: 379516815
This commit is contained in:
parent
d68dba6e34
commit
2536222fbd
@ -58,6 +58,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)).
|
||||
* Ad playback:
|
||||
* Support changing ad break positions in the player logic
|
||||
([#5067](https://github.com/google/ExoPlayer/issues/5067).
|
||||
|
@ -137,12 +137,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