diff --git a/libraries/extractor/src/main/java/androidx/media3/extractor/ts/H264Reader.java b/libraries/extractor/src/main/java/androidx/media3/extractor/ts/H264Reader.java index e151ecfde3..3dcc260b99 100644 --- a/libraries/extractor/src/main/java/androidx/media3/extractor/ts/H264Reader.java +++ b/libraries/extractor/src/main/java/androidx/media3/extractor/ts/H264Reader.java @@ -105,7 +105,7 @@ public final class H264Reader implements ElementaryStreamReader { sps.reset(); pps.reset(); sei.reset(); - seiReader.flush(); + seiReader.clear(); if (sampleReader != null) { sampleReader.reset(); } diff --git a/libraries/extractor/src/main/java/androidx/media3/extractor/ts/H265Reader.java b/libraries/extractor/src/main/java/androidx/media3/extractor/ts/H265Reader.java index e34ac3355d..cddec8b0e4 100644 --- a/libraries/extractor/src/main/java/androidx/media3/extractor/ts/H265Reader.java +++ b/libraries/extractor/src/main/java/androidx/media3/extractor/ts/H265Reader.java @@ -92,7 +92,7 @@ public final class H265Reader implements ElementaryStreamReader { pps.reset(); prefixSei.reset(); suffixSei.reset(); - seiReader.flush(); + seiReader.clear(); if (sampleReader != null) { sampleReader.reset(); } diff --git a/libraries/extractor/src/main/java/androidx/media3/extractor/ts/SeiReader.java b/libraries/extractor/src/main/java/androidx/media3/extractor/ts/SeiReader.java index 36c089950b..dedd2ae216 100644 --- a/libraries/extractor/src/main/java/androidx/media3/extractor/ts/SeiReader.java +++ b/libraries/extractor/src/main/java/androidx/media3/extractor/ts/SeiReader.java @@ -97,4 +97,9 @@ public final class SeiReader { public void flush() { reorderingSeiMessageQueue.flush(); } + + /** Drops any 'buffered for re-ordering' messages. */ + public void clear() { + reorderingSeiMessageQueue.flush(); + } }