From ab723fc8ff1a98f3bb9e4a4ec7d327e1bfd294e5 Mon Sep 17 00:00:00 2001 From: ibaker Date: Wed, 6 Nov 2024 03:12:16 -0800 Subject: [PATCH] Mark every `media3-cues` sample as a keyframe This format doesn't require any context from previous samples, so every sample is a keyframe. PiperOrigin-RevId: 693658370 --- .../media3/extractor/text/SubtitleTranscodingTrackOutput.java | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/libraries/extractor/src/main/java/androidx/media3/extractor/text/SubtitleTranscodingTrackOutput.java b/libraries/extractor/src/main/java/androidx/media3/extractor/text/SubtitleTranscodingTrackOutput.java index 44f4ffa460..d0ad9ff1ef 100644 --- a/libraries/extractor/src/main/java/androidx/media3/extractor/text/SubtitleTranscodingTrackOutput.java +++ b/libraries/extractor/src/main/java/androidx/media3/extractor/text/SubtitleTranscodingTrackOutput.java @@ -157,7 +157,7 @@ import org.checkerframework.checker.nullness.qual.MonotonicNonNull; } } - private void outputSample(CuesWithTiming cuesWithTiming, long timeUs, int flags) { + private void outputSample(CuesWithTiming cuesWithTiming, long timeUs, @C.BufferFlags int flags) { checkStateNotNull(currentFormat); // format() must be called before sampleMetadata() byte[] cuesWithDurationBytes = cueEncoder.encode(cuesWithTiming.cues, cuesWithTiming.durationUs); @@ -174,7 +174,7 @@ import org.checkerframework.checker.nullness.qual.MonotonicNonNull; } delegate.sampleMetadata( outputSampleTimeUs, - flags, + flags | C.BUFFER_FLAG_KEY_FRAME, cuesWithDurationBytes.length, /* offset= */ 0, /* cryptoData= */ null);