diff --git a/RELEASENOTES.md b/RELEASENOTES.md index e834a7305eb..59733642ae6 100644 --- a/RELEASENOTES.md +++ b/RELEASENOTES.md @@ -69,6 +69,10 @@ SubStation Alpha subtitles (but ExoPlayer's parsing logic is the same for both variants) ([#2384](https://github.com/androidx/media/issues/2384)). + * Add support for the `layer` property in SubStation Alpha (SSA) subtitle + files which is used to define the z-order of cues when more than one is + shown on screen at the same time + ([#2124](https://github.com/androidx/media/issues/2124)). * Metadata: * Image: * DataSource: diff --git a/libraries/common/src/main/java/androidx/media3/common/text/Cue.java b/libraries/common/src/main/java/androidx/media3/common/text/Cue.java index 84a99393656..ef46e94faf3 100644 --- a/libraries/common/src/main/java/androidx/media3/common/text/Cue.java +++ b/libraries/common/src/main/java/androidx/media3/common/text/Cue.java @@ -309,6 +309,10 @@ public final class Cue { */ public final float shearDegrees; + /** The Z index for cue, the larger index will render above the smaller index. May be negative. */ + @UnstableApi + public final int zIndex; + private Cue( @Nullable CharSequence text, @Nullable Alignment textAlignment, @@ -326,7 +330,8 @@ private Cue( boolean windowColorSet, int windowColor, @VerticalType int verticalType, - float shearDegrees) { + float shearDegrees, + int zIndex) { // Exactly one of text or bitmap should be set. if (text == null) { Assertions.checkNotNull(bitmap); @@ -356,6 +361,7 @@ private Cue( this.textSize = textSize; this.verticalType = verticalType; this.shearDegrees = shearDegrees; + this.zIndex = zIndex; } /** Returns a new {@link Cue.Builder} initialized with the same values as this Cue. */ @@ -391,7 +397,8 @@ public boolean equals(@Nullable Object obj) { && textSizeType == that.textSizeType && textSize == that.textSize && verticalType == that.verticalType - && shearDegrees == that.shearDegrees; + && shearDegrees == that.shearDegrees + && zIndex == that.zIndex; } @Override @@ -413,7 +420,8 @@ public int hashCode() { textSizeType, textSize, verticalType, - shearDegrees); + shearDegrees, + zIndex); } /** A builder for {@link Cue} objects. */ @@ -436,6 +444,7 @@ public static final class Builder { @ColorInt private int windowColor; private @VerticalType int verticalType; private float shearDegrees; + private int zIndex; public Builder() { text = null; @@ -474,6 +483,7 @@ private Builder(Cue cue) { windowColor = cue.windowColor; verticalType = cue.verticalType; shearDegrees = cue.shearDegrees; + zIndex = cue.zIndex; } /** @@ -806,6 +816,19 @@ public Builder setShearDegrees(float shearDegrees) { return verticalType; } + /** Sets the zIndex for this Cue. */ + @CanIgnoreReturnValue + public Builder setZIndex(int zIndex) { + this.zIndex = zIndex; + return this; + } + + /** Gets the zIndex for this Cue. */ + @Pure + public int getZIndex() { + return zIndex; + } + /** Build the cue. */ public Cue build() { return new Cue( @@ -825,7 +848,8 @@ public Cue build() { windowColorSet, windowColor, verticalType, - shearDegrees); + shearDegrees, + zIndex); } } @@ -848,6 +872,7 @@ public Cue build() { private static final String FIELD_WINDOW_COLOR_SET = Util.intToStringMaxRadix(14); private static final String FIELD_VERTICAL_TYPE = Util.intToStringMaxRadix(15); private static final String FIELD_SHEAR_DEGREES = Util.intToStringMaxRadix(16); + private static final String FIELD_Z_INDEX = Util.intToStringMaxRadix(19); /** * Returns a {@link Bundle} that can be serialized to bytes. @@ -923,6 +948,7 @@ private Bundle toBundleWithoutBitmap() { bundle.putInt(FIELD_WINDOW_COLOR, windowColor); bundle.putInt(FIELD_VERTICAL_TYPE, verticalType); bundle.putFloat(FIELD_SHEAR_DEGREES, shearDegrees); + bundle.putInt(FIELD_Z_INDEX, zIndex); return bundle; } @@ -995,6 +1021,9 @@ public static Cue fromBundle(Bundle bundle) { if (bundle.containsKey(FIELD_SHEAR_DEGREES)) { builder.setShearDegrees(bundle.getFloat(FIELD_SHEAR_DEGREES)); } + if (bundle.containsKey(FIELD_Z_INDEX)) { + builder.setZIndex(bundle.getInt(FIELD_Z_INDEX)); + } return builder.build(); } } diff --git a/libraries/common/src/main/java/androidx/media3/common/text/CueGroup.java b/libraries/common/src/main/java/androidx/media3/common/text/CueGroup.java index 30ab4f31f3f..51e183c60c5 100644 --- a/libraries/common/src/main/java/androidx/media3/common/text/CueGroup.java +++ b/libraries/common/src/main/java/androidx/media3/common/text/CueGroup.java @@ -23,12 +23,17 @@ import androidx.media3.common.util.UnstableApi; import androidx.media3.common.util.Util; import com.google.common.collect.ImmutableList; +import com.google.common.collect.Ordering; import java.util.ArrayList; import java.util.List; /** Class to represent the state of active {@link Cue Cues} at a particular time. */ public final class CueGroup { + /** An {@link Ordering} which sorts cues in ascending zIndex priority */ + private static final Ordering CUES_PRIORITY_COMPARATOR = + Ordering.natural().onResultOf(c -> c.zIndex); + /** An empty group with no {@link Cue Cues} and presentation time of zero. */ @UnstableApi public static final CueGroup EMPTY_TIME_ZERO = @@ -54,7 +59,7 @@ public final class CueGroup { /** Creates a CueGroup. */ @UnstableApi public CueGroup(List cues, long presentationTimeUs) { - this.cues = ImmutableList.copyOf(cues); + this.cues = ImmutableList.sortedCopyOf(CUES_PRIORITY_COMPARATOR, cues); this.presentationTimeUs = presentationTimeUs; } diff --git a/libraries/exoplayer/src/test/java/androidx/media3/exoplayer/e2etest/SsaPlaybackTest.java b/libraries/exoplayer/src/test/java/androidx/media3/exoplayer/e2etest/SsaPlaybackTest.java new file mode 100644 index 00000000000..47fb38c0fed --- /dev/null +++ b/libraries/exoplayer/src/test/java/androidx/media3/exoplayer/e2etest/SsaPlaybackTest.java @@ -0,0 +1,92 @@ +/* + * Copyright 2025 The Android Open Source Project + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package androidx.media3.exoplayer.e2etest; + +import static androidx.media3.test.utils.robolectric.TestPlayerRunHelper.advance; + +import android.content.Context; +import android.graphics.SurfaceTexture; +import android.net.Uri; +import android.view.Surface; +import androidx.media3.common.C; +import androidx.media3.common.MediaItem; +import androidx.media3.common.MimeTypes; +import androidx.media3.common.Player; +import androidx.media3.exoplayer.ExoPlayer; +import androidx.media3.test.utils.CapturingRenderersFactory; +import androidx.media3.test.utils.DumpFileAsserts; +import androidx.media3.test.utils.FakeClock; +import androidx.media3.test.utils.robolectric.PlaybackOutput; +import androidx.media3.test.utils.robolectric.ShadowMediaCodecConfig; +import androidx.test.core.app.ApplicationProvider; +import com.google.common.collect.ImmutableList; +import org.junit.Rule; +import org.junit.Test; +import org.junit.runner.RunWith; +import org.robolectric.ParameterizedRobolectricTestRunner; + +/** End-to-end tests using side-loaded SSA subtitles. */ +@RunWith(ParameterizedRobolectricTestRunner.class) +public class SsaPlaybackTest { + @ParameterizedRobolectricTestRunner.Parameters(name = "{0}") + public static ImmutableList mediaSamples() { + return ImmutableList.of("overlapping_cues_different_layers"); + } + + @ParameterizedRobolectricTestRunner.Parameter public String inputFile; + + @Rule + public ShadowMediaCodecConfig mediaCodecConfig = + ShadowMediaCodecConfig.withAllDefaultSupportedCodecs(); + + @Test + public void test() throws Exception { + Context applicationContext = ApplicationProvider.getApplicationContext(); + CapturingRenderersFactory capturingRenderersFactory = + new CapturingRenderersFactory(applicationContext); + ExoPlayer player = + new ExoPlayer.Builder(applicationContext, capturingRenderersFactory) + .setClock(new FakeClock(/* isAutoAdvancing= */ true)) + .build(); + Surface surface = new Surface(new SurfaceTexture(/* texName= */ 1)); + player.setVideoSurface(surface); + PlaybackOutput playbackOutput = PlaybackOutput.register(player, capturingRenderersFactory); + MediaItem mediaItem = + new MediaItem.Builder() + .setUri("asset:///media/mp4/preroll-5s.mp4") + .setSubtitleConfigurations( + ImmutableList.of( + new MediaItem.SubtitleConfiguration.Builder( + Uri.parse("asset:///media/ssa/" + inputFile)) + .setMimeType(MimeTypes.TEXT_SSA) + .setLanguage("en") + .setSelectionFlags(C.SELECTION_FLAG_DEFAULT) + .build())) + .build(); + + player.setMediaItem(mediaItem); + player.prepare(); + advance(player).untilState(Player.STATE_READY); + advance(player).untilFullyBuffered(); + player.play(); + advance(player).untilState(Player.STATE_ENDED); + player.release(); + surface.release(); + + DumpFileAsserts.assertOutput( + applicationContext, playbackOutput, "playbackdumps/ssa/" + inputFile + ".dump"); + } +} diff --git a/libraries/extractor/src/main/java/androidx/media3/extractor/text/ssa/SsaDialogueFormat.java b/libraries/extractor/src/main/java/androidx/media3/extractor/text/ssa/SsaDialogueFormat.java index 360ab05d520..c6b0a3d76fd 100644 --- a/libraries/extractor/src/main/java/androidx/media3/extractor/text/ssa/SsaDialogueFormat.java +++ b/libraries/extractor/src/main/java/androidx/media3/extractor/text/ssa/SsaDialogueFormat.java @@ -32,6 +32,7 @@ */ /* package */ final class SsaDialogueFormat { + public final int layerIndex; public final int startTimeIndex; public final int endTimeIndex; public final int styleIndex; @@ -39,7 +40,13 @@ public final int length; private SsaDialogueFormat( - int startTimeIndex, int endTimeIndex, int styleIndex, int textIndex, int length) { + int layerIndex, + int startTimeIndex, + int endTimeIndex, + int styleIndex, + int textIndex, + int length) { + this.layerIndex = layerIndex; this.startTimeIndex = startTimeIndex; this.endTimeIndex = endTimeIndex; this.styleIndex = styleIndex; @@ -54,6 +61,7 @@ private SsaDialogueFormat( */ @Nullable public static SsaDialogueFormat fromFormatLine(String formatLine) { + int layerIndex = C.INDEX_UNSET; int startTimeIndex = C.INDEX_UNSET; int endTimeIndex = C.INDEX_UNSET; int styleIndex = C.INDEX_UNSET; @@ -62,6 +70,9 @@ public static SsaDialogueFormat fromFormatLine(String formatLine) { String[] keys = TextUtils.split(formatLine.substring(FORMAT_LINE_PREFIX.length()), ","); for (int i = 0; i < keys.length; i++) { switch (Ascii.toLowerCase(keys[i].trim())) { + case "layer": + layerIndex = i; + break; case "start": startTimeIndex = i; break; @@ -79,7 +90,8 @@ public static SsaDialogueFormat fromFormatLine(String formatLine) { return (startTimeIndex != C.INDEX_UNSET && endTimeIndex != C.INDEX_UNSET && textIndex != C.INDEX_UNSET) - ? new SsaDialogueFormat(startTimeIndex, endTimeIndex, styleIndex, textIndex, keys.length) + ? new SsaDialogueFormat( + layerIndex, startTimeIndex, endTimeIndex, styleIndex, textIndex, keys.length) : null; } } diff --git a/libraries/extractor/src/main/java/androidx/media3/extractor/text/ssa/SsaParser.java b/libraries/extractor/src/main/java/androidx/media3/extractor/text/ssa/SsaParser.java index ded9350678b..88b50a113bd 100644 --- a/libraries/extractor/src/main/java/androidx/media3/extractor/text/ssa/SsaParser.java +++ b/libraries/extractor/src/main/java/androidx/media3/extractor/text/ssa/SsaParser.java @@ -328,6 +328,15 @@ private void parseDialogueLine( return; } + int layer = 0; + if (format.layerIndex != C.INDEX_UNSET) { + try { + layer = Integer.parseInt(lineValues[format.layerIndex].trim()); + } catch (RuntimeException exception) { + Log.w(TAG, "Fail to parse layer: " + lineValues[format.layerIndex]); + } + } + long startTimeUs = parseTimecodeUs(lineValues[format.startTimeIndex]); if (startTimeUs == C.TIME_UNSET) { Log.w(TAG, "Skipping invalid timing: " + dialogueLine); @@ -352,7 +361,7 @@ private void parseDialogueLine( .replace("\\N", "\n") .replace("\\n", "\n") .replace("\\h", "\u00A0"); - Cue cue = createCue(text, style, styleOverrides, screenWidth, screenHeight); + Cue cue = createCue(text, layer, style, styleOverrides, screenWidth, screenHeight); int startTimeIndex = addCuePlacerholderByTime(startTimeUs, cueTimesUs, cues); int endTimeIndex = addCuePlacerholderByTime(endTimeUs, cueTimesUs, cues); @@ -383,12 +392,13 @@ private static long parseTimecodeUs(String timeString) { private static Cue createCue( String text, + int layer, @Nullable SsaStyle style, SsaStyle.Overrides styleOverrides, float screenWidth, float screenHeight) { SpannableString spannableText = new SpannableString(text); - Cue.Builder cue = new Cue.Builder().setText(spannableText); + Cue.Builder cue = new Cue.Builder().setText(spannableText).setZIndex(layer); if (style != null) { if (style.primaryColor != null) { diff --git a/libraries/extractor/src/test/java/androidx/media3/extractor/text/ssa/SsaParserTest.java b/libraries/extractor/src/test/java/androidx/media3/extractor/text/ssa/SsaParserTest.java index c8beeaf72df..673cc92f503 100644 --- a/libraries/extractor/src/test/java/androidx/media3/extractor/text/ssa/SsaParserTest.java +++ b/libraries/extractor/src/test/java/androidx/media3/extractor/text/ssa/SsaParserTest.java @@ -56,6 +56,8 @@ public final class SsaParserTest { private static final String INVALID_TIMECODES = "media/ssa/invalid_timecodes"; private static final String INVALID_POSITIONS = "media/ssa/invalid_positioning"; private static final String POSITIONS_WITHOUT_PLAYRES = "media/ssa/positioning_without_playres"; + private static final String LAYERS = "media/ssa/layer"; + private static final String INVALID_LAYERS = "media/ssa/invalid_layer"; private static final String STYLE_PRIMARY_COLOR = "media/ssa/style_primary_color"; private static final String STYLE_OUTLINE_COLOR = "media/ssa/style_outline_color"; private static final String STYLE_FONT_SIZE = "media/ssa/style_font_size"; @@ -411,6 +413,41 @@ public void parseInvalidPositions() throws IOException { assertThat(fourthCue.line).isEqualTo(0.5f); } + @Test + public void parseLayer() throws IOException { + SsaParser parser = new SsaParser(); + byte[] bytes = TestUtil.getByteArray(ApplicationProvider.getApplicationContext(), LAYERS); + ImmutableList allCues = parseAllCues(parser, bytes); + + // Check positive layer. + Cue firstCue = Iterables.getOnlyElement(allCues.get(0).cues); + assertThat(firstCue.zIndex).isEqualTo(1); + + // Check negative layer. + Cue secondCue = Iterables.getOnlyElement(allCues.get(1).cues); + assertThat(secondCue.zIndex).isEqualTo(-1); + } + + @Test + public void parseInvalidLayer() throws IOException { + SsaParser parser = new SsaParser(); + byte[] bytes = + TestUtil.getByteArray(ApplicationProvider.getApplicationContext(), INVALID_LAYERS); + ImmutableList allCues = parseAllCues(parser, bytes); + + // Check empty layer. + Cue firstCue = Iterables.getOnlyElement(allCues.get(0).cues); + assertThat(firstCue.zIndex).isEqualTo(0); + + // Check non-numeric layer. + Cue secondCue = Iterables.getOnlyElement(allCues.get(1).cues); + assertThat(secondCue.zIndex).isEqualTo(0); + + // Check non-integer layer. + Cue thirdCue = Iterables.getOnlyElement(allCues.get(2).cues); + assertThat(thirdCue.zIndex).isEqualTo(0); + } + @Test public void parsePositionsWithMissingPlayResY() throws IOException { SsaParser parser = new SsaParser(); diff --git a/libraries/test_data/src/test/assets/extractordumps/mkv_subtitle_transcoding/full_blocks.mkv.0.dump b/libraries/test_data/src/test/assets/extractordumps/mkv_subtitle_transcoding/full_blocks.mkv.0.dump index 778664f7154..3d70e602dd0 100644 --- a/libraries/test_data/src/test/assets/extractordumps/mkv_subtitle_transcoding/full_blocks.mkv.0.dump +++ b/libraries/test_data/src/test/assets/extractordumps/mkv_subtitle_transcoding/full_blocks.mkv.0.dump @@ -7,7 +7,7 @@ seekMap: getPosition(8901000) = [[timeUs=4567000, position=5401]] numberOfTracks = 1 track 1: - total output bytes = 2951 + total output bytes = 3047 sample count = 3 format 0: id = 1 @@ -19,13 +19,13 @@ track 1: sample 0: time = 0 flags = 1 - data = length 972, hash 8E8A2E4B + data = length 1004, hash EF0EFF3C sample 1: time = 2345000 flags = 1 - data = length 1007, hash 87030429 + data = length 1039, hash 8605A0D6 sample 2: time = 4567000 flags = 1 - data = length 972, hash C2C47517 + data = length 1004, hash FC3F6208 tracksEnded = true diff --git a/libraries/test_data/src/test/assets/extractordumps/mkv_subtitle_transcoding/full_blocks.mkv.1.dump b/libraries/test_data/src/test/assets/extractordumps/mkv_subtitle_transcoding/full_blocks.mkv.1.dump index 778664f7154..3d70e602dd0 100644 --- a/libraries/test_data/src/test/assets/extractordumps/mkv_subtitle_transcoding/full_blocks.mkv.1.dump +++ b/libraries/test_data/src/test/assets/extractordumps/mkv_subtitle_transcoding/full_blocks.mkv.1.dump @@ -7,7 +7,7 @@ seekMap: getPosition(8901000) = [[timeUs=4567000, position=5401]] numberOfTracks = 1 track 1: - total output bytes = 2951 + total output bytes = 3047 sample count = 3 format 0: id = 1 @@ -19,13 +19,13 @@ track 1: sample 0: time = 0 flags = 1 - data = length 972, hash 8E8A2E4B + data = length 1004, hash EF0EFF3C sample 1: time = 2345000 flags = 1 - data = length 1007, hash 87030429 + data = length 1039, hash 8605A0D6 sample 2: time = 4567000 flags = 1 - data = length 972, hash C2C47517 + data = length 1004, hash FC3F6208 tracksEnded = true diff --git a/libraries/test_data/src/test/assets/extractordumps/mkv_subtitle_transcoding/full_blocks.mkv.2.dump b/libraries/test_data/src/test/assets/extractordumps/mkv_subtitle_transcoding/full_blocks.mkv.2.dump index 778664f7154..3d70e602dd0 100644 --- a/libraries/test_data/src/test/assets/extractordumps/mkv_subtitle_transcoding/full_blocks.mkv.2.dump +++ b/libraries/test_data/src/test/assets/extractordumps/mkv_subtitle_transcoding/full_blocks.mkv.2.dump @@ -7,7 +7,7 @@ seekMap: getPosition(8901000) = [[timeUs=4567000, position=5401]] numberOfTracks = 1 track 1: - total output bytes = 2951 + total output bytes = 3047 sample count = 3 format 0: id = 1 @@ -19,13 +19,13 @@ track 1: sample 0: time = 0 flags = 1 - data = length 972, hash 8E8A2E4B + data = length 1004, hash EF0EFF3C sample 1: time = 2345000 flags = 1 - data = length 1007, hash 87030429 + data = length 1039, hash 8605A0D6 sample 2: time = 4567000 flags = 1 - data = length 972, hash C2C47517 + data = length 1004, hash FC3F6208 tracksEnded = true diff --git a/libraries/test_data/src/test/assets/extractordumps/mkv_subtitle_transcoding/full_blocks.mkv.3.dump b/libraries/test_data/src/test/assets/extractordumps/mkv_subtitle_transcoding/full_blocks.mkv.3.dump index 778664f7154..3d70e602dd0 100644 --- a/libraries/test_data/src/test/assets/extractordumps/mkv_subtitle_transcoding/full_blocks.mkv.3.dump +++ b/libraries/test_data/src/test/assets/extractordumps/mkv_subtitle_transcoding/full_blocks.mkv.3.dump @@ -7,7 +7,7 @@ seekMap: getPosition(8901000) = [[timeUs=4567000, position=5401]] numberOfTracks = 1 track 1: - total output bytes = 2951 + total output bytes = 3047 sample count = 3 format 0: id = 1 @@ -19,13 +19,13 @@ track 1: sample 0: time = 0 flags = 1 - data = length 972, hash 8E8A2E4B + data = length 1004, hash EF0EFF3C sample 1: time = 2345000 flags = 1 - data = length 1007, hash 87030429 + data = length 1039, hash 8605A0D6 sample 2: time = 4567000 flags = 1 - data = length 972, hash C2C47517 + data = length 1004, hash FC3F6208 tracksEnded = true diff --git a/libraries/test_data/src/test/assets/extractordumps/mkv_subtitle_transcoding/full_blocks.mkv.unknown_length.dump b/libraries/test_data/src/test/assets/extractordumps/mkv_subtitle_transcoding/full_blocks.mkv.unknown_length.dump index 778664f7154..3d70e602dd0 100644 --- a/libraries/test_data/src/test/assets/extractordumps/mkv_subtitle_transcoding/full_blocks.mkv.unknown_length.dump +++ b/libraries/test_data/src/test/assets/extractordumps/mkv_subtitle_transcoding/full_blocks.mkv.unknown_length.dump @@ -7,7 +7,7 @@ seekMap: getPosition(8901000) = [[timeUs=4567000, position=5401]] numberOfTracks = 1 track 1: - total output bytes = 2951 + total output bytes = 3047 sample count = 3 format 0: id = 1 @@ -19,13 +19,13 @@ track 1: sample 0: time = 0 flags = 1 - data = length 972, hash 8E8A2E4B + data = length 1004, hash EF0EFF3C sample 1: time = 2345000 flags = 1 - data = length 1007, hash 87030429 + data = length 1039, hash 8605A0D6 sample 2: time = 4567000 flags = 1 - data = length 972, hash C2C47517 + data = length 1004, hash FC3F6208 tracksEnded = true diff --git a/libraries/test_data/src/test/assets/extractordumps/mkv_subtitle_transcoding/sample_with_null_terminated_srt.mkv.0.dump b/libraries/test_data/src/test/assets/extractordumps/mkv_subtitle_transcoding/sample_with_null_terminated_srt.mkv.0.dump index 98317515dd1..fd338f9bfbb 100644 --- a/libraries/test_data/src/test/assets/extractordumps/mkv_subtitle_transcoding/sample_with_null_terminated_srt.mkv.0.dump +++ b/libraries/test_data/src/test/assets/extractordumps/mkv_subtitle_transcoding/sample_with_null_terminated_srt.mkv.0.dump @@ -269,7 +269,7 @@ track 2: flags = 1 data = length 418, hash 56AB8D37 track 3: - total output bytes = 962 + total output bytes = 994 sample count = 1 format 0: id = 3 @@ -285,5 +285,5 @@ track 3: sample 0: time = 0 flags = 1 - data = length 962, hash 6D7C55B3 + data = length 994, hash 6AA26024 tracksEnded = true diff --git a/libraries/test_data/src/test/assets/extractordumps/mkv_subtitle_transcoding/sample_with_null_terminated_srt.mkv.1.dump b/libraries/test_data/src/test/assets/extractordumps/mkv_subtitle_transcoding/sample_with_null_terminated_srt.mkv.1.dump index 98317515dd1..fd338f9bfbb 100644 --- a/libraries/test_data/src/test/assets/extractordumps/mkv_subtitle_transcoding/sample_with_null_terminated_srt.mkv.1.dump +++ b/libraries/test_data/src/test/assets/extractordumps/mkv_subtitle_transcoding/sample_with_null_terminated_srt.mkv.1.dump @@ -269,7 +269,7 @@ track 2: flags = 1 data = length 418, hash 56AB8D37 track 3: - total output bytes = 962 + total output bytes = 994 sample count = 1 format 0: id = 3 @@ -285,5 +285,5 @@ track 3: sample 0: time = 0 flags = 1 - data = length 962, hash 6D7C55B3 + data = length 994, hash 6AA26024 tracksEnded = true diff --git a/libraries/test_data/src/test/assets/extractordumps/mkv_subtitle_transcoding/sample_with_null_terminated_srt.mkv.2.dump b/libraries/test_data/src/test/assets/extractordumps/mkv_subtitle_transcoding/sample_with_null_terminated_srt.mkv.2.dump index 98317515dd1..fd338f9bfbb 100644 --- a/libraries/test_data/src/test/assets/extractordumps/mkv_subtitle_transcoding/sample_with_null_terminated_srt.mkv.2.dump +++ b/libraries/test_data/src/test/assets/extractordumps/mkv_subtitle_transcoding/sample_with_null_terminated_srt.mkv.2.dump @@ -269,7 +269,7 @@ track 2: flags = 1 data = length 418, hash 56AB8D37 track 3: - total output bytes = 962 + total output bytes = 994 sample count = 1 format 0: id = 3 @@ -285,5 +285,5 @@ track 3: sample 0: time = 0 flags = 1 - data = length 962, hash 6D7C55B3 + data = length 994, hash 6AA26024 tracksEnded = true diff --git a/libraries/test_data/src/test/assets/extractordumps/mkv_subtitle_transcoding/sample_with_null_terminated_srt.mkv.3.dump b/libraries/test_data/src/test/assets/extractordumps/mkv_subtitle_transcoding/sample_with_null_terminated_srt.mkv.3.dump index 98317515dd1..fd338f9bfbb 100644 --- a/libraries/test_data/src/test/assets/extractordumps/mkv_subtitle_transcoding/sample_with_null_terminated_srt.mkv.3.dump +++ b/libraries/test_data/src/test/assets/extractordumps/mkv_subtitle_transcoding/sample_with_null_terminated_srt.mkv.3.dump @@ -269,7 +269,7 @@ track 2: flags = 1 data = length 418, hash 56AB8D37 track 3: - total output bytes = 962 + total output bytes = 994 sample count = 1 format 0: id = 3 @@ -285,5 +285,5 @@ track 3: sample 0: time = 0 flags = 1 - data = length 962, hash 6D7C55B3 + data = length 994, hash 6AA26024 tracksEnded = true diff --git a/libraries/test_data/src/test/assets/extractordumps/mkv_subtitle_transcoding/sample_with_null_terminated_srt.mkv.unknown_length.dump b/libraries/test_data/src/test/assets/extractordumps/mkv_subtitle_transcoding/sample_with_null_terminated_srt.mkv.unknown_length.dump index 98317515dd1..fd338f9bfbb 100644 --- a/libraries/test_data/src/test/assets/extractordumps/mkv_subtitle_transcoding/sample_with_null_terminated_srt.mkv.unknown_length.dump +++ b/libraries/test_data/src/test/assets/extractordumps/mkv_subtitle_transcoding/sample_with_null_terminated_srt.mkv.unknown_length.dump @@ -269,7 +269,7 @@ track 2: flags = 1 data = length 418, hash 56AB8D37 track 3: - total output bytes = 962 + total output bytes = 994 sample count = 1 format 0: id = 3 @@ -285,5 +285,5 @@ track 3: sample 0: time = 0 flags = 1 - data = length 962, hash 6D7C55B3 + data = length 994, hash 6AA26024 tracksEnded = true diff --git a/libraries/test_data/src/test/assets/extractordumps/mkv_subtitle_transcoding/sample_with_null_terminated_ssa_subtitles.mkv.0.dump b/libraries/test_data/src/test/assets/extractordumps/mkv_subtitle_transcoding/sample_with_null_terminated_ssa_subtitles.mkv.0.dump index 3b27b356e89..f434779d59d 100644 --- a/libraries/test_data/src/test/assets/extractordumps/mkv_subtitle_transcoding/sample_with_null_terminated_ssa_subtitles.mkv.0.dump +++ b/libraries/test_data/src/test/assets/extractordumps/mkv_subtitle_transcoding/sample_with_null_terminated_ssa_subtitles.mkv.0.dump @@ -269,7 +269,7 @@ track 2: flags = 1 data = length 418, hash 56AB8D37 track 3: - total output bytes = 1249 + total output bytes = 1276 sample count = 1 format 0: id = 3 @@ -284,5 +284,5 @@ track 3: sample 0: time = 0 flags = 1 - data = length 1249, hash 6B21A04D + data = length 1276, hash 1D6A43C2 tracksEnded = true diff --git a/libraries/test_data/src/test/assets/extractordumps/mkv_subtitle_transcoding/sample_with_null_terminated_ssa_subtitles.mkv.1.dump b/libraries/test_data/src/test/assets/extractordumps/mkv_subtitle_transcoding/sample_with_null_terminated_ssa_subtitles.mkv.1.dump index 3b27b356e89..f434779d59d 100644 --- a/libraries/test_data/src/test/assets/extractordumps/mkv_subtitle_transcoding/sample_with_null_terminated_ssa_subtitles.mkv.1.dump +++ b/libraries/test_data/src/test/assets/extractordumps/mkv_subtitle_transcoding/sample_with_null_terminated_ssa_subtitles.mkv.1.dump @@ -269,7 +269,7 @@ track 2: flags = 1 data = length 418, hash 56AB8D37 track 3: - total output bytes = 1249 + total output bytes = 1276 sample count = 1 format 0: id = 3 @@ -284,5 +284,5 @@ track 3: sample 0: time = 0 flags = 1 - data = length 1249, hash 6B21A04D + data = length 1276, hash 1D6A43C2 tracksEnded = true diff --git a/libraries/test_data/src/test/assets/extractordumps/mkv_subtitle_transcoding/sample_with_null_terminated_ssa_subtitles.mkv.2.dump b/libraries/test_data/src/test/assets/extractordumps/mkv_subtitle_transcoding/sample_with_null_terminated_ssa_subtitles.mkv.2.dump index 3b27b356e89..f434779d59d 100644 --- a/libraries/test_data/src/test/assets/extractordumps/mkv_subtitle_transcoding/sample_with_null_terminated_ssa_subtitles.mkv.2.dump +++ b/libraries/test_data/src/test/assets/extractordumps/mkv_subtitle_transcoding/sample_with_null_terminated_ssa_subtitles.mkv.2.dump @@ -269,7 +269,7 @@ track 2: flags = 1 data = length 418, hash 56AB8D37 track 3: - total output bytes = 1249 + total output bytes = 1276 sample count = 1 format 0: id = 3 @@ -284,5 +284,5 @@ track 3: sample 0: time = 0 flags = 1 - data = length 1249, hash 6B21A04D + data = length 1276, hash 1D6A43C2 tracksEnded = true diff --git a/libraries/test_data/src/test/assets/extractordumps/mkv_subtitle_transcoding/sample_with_null_terminated_ssa_subtitles.mkv.3.dump b/libraries/test_data/src/test/assets/extractordumps/mkv_subtitle_transcoding/sample_with_null_terminated_ssa_subtitles.mkv.3.dump index 3b27b356e89..f434779d59d 100644 --- a/libraries/test_data/src/test/assets/extractordumps/mkv_subtitle_transcoding/sample_with_null_terminated_ssa_subtitles.mkv.3.dump +++ b/libraries/test_data/src/test/assets/extractordumps/mkv_subtitle_transcoding/sample_with_null_terminated_ssa_subtitles.mkv.3.dump @@ -269,7 +269,7 @@ track 2: flags = 1 data = length 418, hash 56AB8D37 track 3: - total output bytes = 1249 + total output bytes = 1276 sample count = 1 format 0: id = 3 @@ -284,5 +284,5 @@ track 3: sample 0: time = 0 flags = 1 - data = length 1249, hash 6B21A04D + data = length 1276, hash 1D6A43C2 tracksEnded = true diff --git a/libraries/test_data/src/test/assets/extractordumps/mkv_subtitle_transcoding/sample_with_null_terminated_ssa_subtitles.mkv.unknown_length.dump b/libraries/test_data/src/test/assets/extractordumps/mkv_subtitle_transcoding/sample_with_null_terminated_ssa_subtitles.mkv.unknown_length.dump index 3b27b356e89..f434779d59d 100644 --- a/libraries/test_data/src/test/assets/extractordumps/mkv_subtitle_transcoding/sample_with_null_terminated_ssa_subtitles.mkv.unknown_length.dump +++ b/libraries/test_data/src/test/assets/extractordumps/mkv_subtitle_transcoding/sample_with_null_terminated_ssa_subtitles.mkv.unknown_length.dump @@ -269,7 +269,7 @@ track 2: flags = 1 data = length 418, hash 56AB8D37 track 3: - total output bytes = 1249 + total output bytes = 1276 sample count = 1 format 0: id = 3 @@ -284,5 +284,5 @@ track 3: sample 0: time = 0 flags = 1 - data = length 1249, hash 6B21A04D + data = length 1276, hash 1D6A43C2 tracksEnded = true diff --git a/libraries/test_data/src/test/assets/extractordumps/mkv_subtitle_transcoding/sample_with_null_terminated_vtt_subtitles.mkv.0.dump b/libraries/test_data/src/test/assets/extractordumps/mkv_subtitle_transcoding/sample_with_null_terminated_vtt_subtitles.mkv.0.dump index ad47bd4c762..6074bb1fc48 100644 --- a/libraries/test_data/src/test/assets/extractordumps/mkv_subtitle_transcoding/sample_with_null_terminated_vtt_subtitles.mkv.0.dump +++ b/libraries/test_data/src/test/assets/extractordumps/mkv_subtitle_transcoding/sample_with_null_terminated_vtt_subtitles.mkv.0.dump @@ -269,7 +269,7 @@ track 2: flags = 1 data = length 418, hash 56AB8D37 track 3: - total output bytes = 1129 + total output bytes = 1161 sample count = 1 format 0: id = 3 @@ -281,5 +281,5 @@ track 3: sample 0: time = 0 flags = 1 - data = length 1129, hash 7CA6A835 + data = length 1161, hash 1A73F62 tracksEnded = true diff --git a/libraries/test_data/src/test/assets/extractordumps/mkv_subtitle_transcoding/sample_with_null_terminated_vtt_subtitles.mkv.1.dump b/libraries/test_data/src/test/assets/extractordumps/mkv_subtitle_transcoding/sample_with_null_terminated_vtt_subtitles.mkv.1.dump index ad47bd4c762..6074bb1fc48 100644 --- a/libraries/test_data/src/test/assets/extractordumps/mkv_subtitle_transcoding/sample_with_null_terminated_vtt_subtitles.mkv.1.dump +++ b/libraries/test_data/src/test/assets/extractordumps/mkv_subtitle_transcoding/sample_with_null_terminated_vtt_subtitles.mkv.1.dump @@ -269,7 +269,7 @@ track 2: flags = 1 data = length 418, hash 56AB8D37 track 3: - total output bytes = 1129 + total output bytes = 1161 sample count = 1 format 0: id = 3 @@ -281,5 +281,5 @@ track 3: sample 0: time = 0 flags = 1 - data = length 1129, hash 7CA6A835 + data = length 1161, hash 1A73F62 tracksEnded = true diff --git a/libraries/test_data/src/test/assets/extractordumps/mkv_subtitle_transcoding/sample_with_null_terminated_vtt_subtitles.mkv.2.dump b/libraries/test_data/src/test/assets/extractordumps/mkv_subtitle_transcoding/sample_with_null_terminated_vtt_subtitles.mkv.2.dump index ad47bd4c762..6074bb1fc48 100644 --- a/libraries/test_data/src/test/assets/extractordumps/mkv_subtitle_transcoding/sample_with_null_terminated_vtt_subtitles.mkv.2.dump +++ b/libraries/test_data/src/test/assets/extractordumps/mkv_subtitle_transcoding/sample_with_null_terminated_vtt_subtitles.mkv.2.dump @@ -269,7 +269,7 @@ track 2: flags = 1 data = length 418, hash 56AB8D37 track 3: - total output bytes = 1129 + total output bytes = 1161 sample count = 1 format 0: id = 3 @@ -281,5 +281,5 @@ track 3: sample 0: time = 0 flags = 1 - data = length 1129, hash 7CA6A835 + data = length 1161, hash 1A73F62 tracksEnded = true diff --git a/libraries/test_data/src/test/assets/extractordumps/mkv_subtitle_transcoding/sample_with_null_terminated_vtt_subtitles.mkv.3.dump b/libraries/test_data/src/test/assets/extractordumps/mkv_subtitle_transcoding/sample_with_null_terminated_vtt_subtitles.mkv.3.dump index ad47bd4c762..6074bb1fc48 100644 --- a/libraries/test_data/src/test/assets/extractordumps/mkv_subtitle_transcoding/sample_with_null_terminated_vtt_subtitles.mkv.3.dump +++ b/libraries/test_data/src/test/assets/extractordumps/mkv_subtitle_transcoding/sample_with_null_terminated_vtt_subtitles.mkv.3.dump @@ -269,7 +269,7 @@ track 2: flags = 1 data = length 418, hash 56AB8D37 track 3: - total output bytes = 1129 + total output bytes = 1161 sample count = 1 format 0: id = 3 @@ -281,5 +281,5 @@ track 3: sample 0: time = 0 flags = 1 - data = length 1129, hash 7CA6A835 + data = length 1161, hash 1A73F62 tracksEnded = true diff --git a/libraries/test_data/src/test/assets/extractordumps/mkv_subtitle_transcoding/sample_with_null_terminated_vtt_subtitles.mkv.unknown_length.dump b/libraries/test_data/src/test/assets/extractordumps/mkv_subtitle_transcoding/sample_with_null_terminated_vtt_subtitles.mkv.unknown_length.dump index ad47bd4c762..6074bb1fc48 100644 --- a/libraries/test_data/src/test/assets/extractordumps/mkv_subtitle_transcoding/sample_with_null_terminated_vtt_subtitles.mkv.unknown_length.dump +++ b/libraries/test_data/src/test/assets/extractordumps/mkv_subtitle_transcoding/sample_with_null_terminated_vtt_subtitles.mkv.unknown_length.dump @@ -269,7 +269,7 @@ track 2: flags = 1 data = length 418, hash 56AB8D37 track 3: - total output bytes = 1129 + total output bytes = 1161 sample count = 1 format 0: id = 3 @@ -281,5 +281,5 @@ track 3: sample 0: time = 0 flags = 1 - data = length 1129, hash 7CA6A835 + data = length 1161, hash 1A73F62 tracksEnded = true diff --git a/libraries/test_data/src/test/assets/extractordumps/mkv_subtitle_transcoding/sample_with_overlapping_srt.mkv.0.dump b/libraries/test_data/src/test/assets/extractordumps/mkv_subtitle_transcoding/sample_with_overlapping_srt.mkv.0.dump index 9ca64fbb1e8..af7959dfc2a 100644 --- a/libraries/test_data/src/test/assets/extractordumps/mkv_subtitle_transcoding/sample_with_overlapping_srt.mkv.0.dump +++ b/libraries/test_data/src/test/assets/extractordumps/mkv_subtitle_transcoding/sample_with_overlapping_srt.mkv.0.dump @@ -269,7 +269,7 @@ track 2: flags = 1 data = length 418, hash 56AB8D37 track 3: - total output bytes = 2954 + total output bytes = 3050 sample count = 3 format 0: id = 3 @@ -281,13 +281,13 @@ track 3: sample 0: time = 100000 flags = 1 - data = length 981, hash 3A70FBFA + data = length 1013, hash 1CEAF627 sample 1: time = 150000 flags = 1 - data = length 986, hash 8CA3E471 + data = length 1018, hash 976E88E2 sample 2: time = 200000 flags = 1 - data = length 987, hash 156157B4 + data = length 1019, hash CA148B61 tracksEnded = true diff --git a/libraries/test_data/src/test/assets/extractordumps/mkv_subtitle_transcoding/sample_with_overlapping_srt.mkv.1.dump b/libraries/test_data/src/test/assets/extractordumps/mkv_subtitle_transcoding/sample_with_overlapping_srt.mkv.1.dump index 9ca64fbb1e8..af7959dfc2a 100644 --- a/libraries/test_data/src/test/assets/extractordumps/mkv_subtitle_transcoding/sample_with_overlapping_srt.mkv.1.dump +++ b/libraries/test_data/src/test/assets/extractordumps/mkv_subtitle_transcoding/sample_with_overlapping_srt.mkv.1.dump @@ -269,7 +269,7 @@ track 2: flags = 1 data = length 418, hash 56AB8D37 track 3: - total output bytes = 2954 + total output bytes = 3050 sample count = 3 format 0: id = 3 @@ -281,13 +281,13 @@ track 3: sample 0: time = 100000 flags = 1 - data = length 981, hash 3A70FBFA + data = length 1013, hash 1CEAF627 sample 1: time = 150000 flags = 1 - data = length 986, hash 8CA3E471 + data = length 1018, hash 976E88E2 sample 2: time = 200000 flags = 1 - data = length 987, hash 156157B4 + data = length 1019, hash CA148B61 tracksEnded = true diff --git a/libraries/test_data/src/test/assets/extractordumps/mkv_subtitle_transcoding/sample_with_overlapping_srt.mkv.2.dump b/libraries/test_data/src/test/assets/extractordumps/mkv_subtitle_transcoding/sample_with_overlapping_srt.mkv.2.dump index 9ca64fbb1e8..af7959dfc2a 100644 --- a/libraries/test_data/src/test/assets/extractordumps/mkv_subtitle_transcoding/sample_with_overlapping_srt.mkv.2.dump +++ b/libraries/test_data/src/test/assets/extractordumps/mkv_subtitle_transcoding/sample_with_overlapping_srt.mkv.2.dump @@ -269,7 +269,7 @@ track 2: flags = 1 data = length 418, hash 56AB8D37 track 3: - total output bytes = 2954 + total output bytes = 3050 sample count = 3 format 0: id = 3 @@ -281,13 +281,13 @@ track 3: sample 0: time = 100000 flags = 1 - data = length 981, hash 3A70FBFA + data = length 1013, hash 1CEAF627 sample 1: time = 150000 flags = 1 - data = length 986, hash 8CA3E471 + data = length 1018, hash 976E88E2 sample 2: time = 200000 flags = 1 - data = length 987, hash 156157B4 + data = length 1019, hash CA148B61 tracksEnded = true diff --git a/libraries/test_data/src/test/assets/extractordumps/mkv_subtitle_transcoding/sample_with_overlapping_srt.mkv.3.dump b/libraries/test_data/src/test/assets/extractordumps/mkv_subtitle_transcoding/sample_with_overlapping_srt.mkv.3.dump index 9ca64fbb1e8..af7959dfc2a 100644 --- a/libraries/test_data/src/test/assets/extractordumps/mkv_subtitle_transcoding/sample_with_overlapping_srt.mkv.3.dump +++ b/libraries/test_data/src/test/assets/extractordumps/mkv_subtitle_transcoding/sample_with_overlapping_srt.mkv.3.dump @@ -269,7 +269,7 @@ track 2: flags = 1 data = length 418, hash 56AB8D37 track 3: - total output bytes = 2954 + total output bytes = 3050 sample count = 3 format 0: id = 3 @@ -281,13 +281,13 @@ track 3: sample 0: time = 100000 flags = 1 - data = length 981, hash 3A70FBFA + data = length 1013, hash 1CEAF627 sample 1: time = 150000 flags = 1 - data = length 986, hash 8CA3E471 + data = length 1018, hash 976E88E2 sample 2: time = 200000 flags = 1 - data = length 987, hash 156157B4 + data = length 1019, hash CA148B61 tracksEnded = true diff --git a/libraries/test_data/src/test/assets/extractordumps/mkv_subtitle_transcoding/sample_with_overlapping_srt.mkv.unknown_length.dump b/libraries/test_data/src/test/assets/extractordumps/mkv_subtitle_transcoding/sample_with_overlapping_srt.mkv.unknown_length.dump index 9ca64fbb1e8..af7959dfc2a 100644 --- a/libraries/test_data/src/test/assets/extractordumps/mkv_subtitle_transcoding/sample_with_overlapping_srt.mkv.unknown_length.dump +++ b/libraries/test_data/src/test/assets/extractordumps/mkv_subtitle_transcoding/sample_with_overlapping_srt.mkv.unknown_length.dump @@ -269,7 +269,7 @@ track 2: flags = 1 data = length 418, hash 56AB8D37 track 3: - total output bytes = 2954 + total output bytes = 3050 sample count = 3 format 0: id = 3 @@ -281,13 +281,13 @@ track 3: sample 0: time = 100000 flags = 1 - data = length 981, hash 3A70FBFA + data = length 1013, hash 1CEAF627 sample 1: time = 150000 flags = 1 - data = length 986, hash 8CA3E471 + data = length 1018, hash 976E88E2 sample 2: time = 200000 flags = 1 - data = length 987, hash 156157B4 + data = length 1019, hash CA148B61 tracksEnded = true diff --git a/libraries/test_data/src/test/assets/extractordumps/mkv_subtitle_transcoding/sample_with_overlapping_ssa_subtitles.mkv.0.dump b/libraries/test_data/src/test/assets/extractordumps/mkv_subtitle_transcoding/sample_with_overlapping_ssa_subtitles.mkv.0.dump index 59248ccdb27..0f7c55dc66d 100644 --- a/libraries/test_data/src/test/assets/extractordumps/mkv_subtitle_transcoding/sample_with_overlapping_ssa_subtitles.mkv.0.dump +++ b/libraries/test_data/src/test/assets/extractordumps/mkv_subtitle_transcoding/sample_with_overlapping_ssa_subtitles.mkv.0.dump @@ -269,7 +269,7 @@ track 2: flags = 1 data = length 418, hash 56AB8D37 track 3: - total output bytes = 2939 + total output bytes = 3035 sample count = 3 format 0: id = 3 @@ -284,13 +284,13 @@ track 3: sample 0: time = 100000 flags = 1 - data = length 976, hash 91D1729 + data = length 1008, hash 3D438A1A sample 1: time = 150000 flags = 1 - data = length 981, hash 1B9102A8 + data = length 1013, hash 8FEE70D5 sample 2: time = 200000 flags = 1 - data = length 982, hash 263F7393 + data = length 1014, hash BCAEBD04 tracksEnded = true diff --git a/libraries/test_data/src/test/assets/extractordumps/mkv_subtitle_transcoding/sample_with_overlapping_ssa_subtitles.mkv.1.dump b/libraries/test_data/src/test/assets/extractordumps/mkv_subtitle_transcoding/sample_with_overlapping_ssa_subtitles.mkv.1.dump index 59248ccdb27..0f7c55dc66d 100644 --- a/libraries/test_data/src/test/assets/extractordumps/mkv_subtitle_transcoding/sample_with_overlapping_ssa_subtitles.mkv.1.dump +++ b/libraries/test_data/src/test/assets/extractordumps/mkv_subtitle_transcoding/sample_with_overlapping_ssa_subtitles.mkv.1.dump @@ -269,7 +269,7 @@ track 2: flags = 1 data = length 418, hash 56AB8D37 track 3: - total output bytes = 2939 + total output bytes = 3035 sample count = 3 format 0: id = 3 @@ -284,13 +284,13 @@ track 3: sample 0: time = 100000 flags = 1 - data = length 976, hash 91D1729 + data = length 1008, hash 3D438A1A sample 1: time = 150000 flags = 1 - data = length 981, hash 1B9102A8 + data = length 1013, hash 8FEE70D5 sample 2: time = 200000 flags = 1 - data = length 982, hash 263F7393 + data = length 1014, hash BCAEBD04 tracksEnded = true diff --git a/libraries/test_data/src/test/assets/extractordumps/mkv_subtitle_transcoding/sample_with_overlapping_ssa_subtitles.mkv.2.dump b/libraries/test_data/src/test/assets/extractordumps/mkv_subtitle_transcoding/sample_with_overlapping_ssa_subtitles.mkv.2.dump index 59248ccdb27..0f7c55dc66d 100644 --- a/libraries/test_data/src/test/assets/extractordumps/mkv_subtitle_transcoding/sample_with_overlapping_ssa_subtitles.mkv.2.dump +++ b/libraries/test_data/src/test/assets/extractordumps/mkv_subtitle_transcoding/sample_with_overlapping_ssa_subtitles.mkv.2.dump @@ -269,7 +269,7 @@ track 2: flags = 1 data = length 418, hash 56AB8D37 track 3: - total output bytes = 2939 + total output bytes = 3035 sample count = 3 format 0: id = 3 @@ -284,13 +284,13 @@ track 3: sample 0: time = 100000 flags = 1 - data = length 976, hash 91D1729 + data = length 1008, hash 3D438A1A sample 1: time = 150000 flags = 1 - data = length 981, hash 1B9102A8 + data = length 1013, hash 8FEE70D5 sample 2: time = 200000 flags = 1 - data = length 982, hash 263F7393 + data = length 1014, hash BCAEBD04 tracksEnded = true diff --git a/libraries/test_data/src/test/assets/extractordumps/mkv_subtitle_transcoding/sample_with_overlapping_ssa_subtitles.mkv.3.dump b/libraries/test_data/src/test/assets/extractordumps/mkv_subtitle_transcoding/sample_with_overlapping_ssa_subtitles.mkv.3.dump index 59248ccdb27..0f7c55dc66d 100644 --- a/libraries/test_data/src/test/assets/extractordumps/mkv_subtitle_transcoding/sample_with_overlapping_ssa_subtitles.mkv.3.dump +++ b/libraries/test_data/src/test/assets/extractordumps/mkv_subtitle_transcoding/sample_with_overlapping_ssa_subtitles.mkv.3.dump @@ -269,7 +269,7 @@ track 2: flags = 1 data = length 418, hash 56AB8D37 track 3: - total output bytes = 2939 + total output bytes = 3035 sample count = 3 format 0: id = 3 @@ -284,13 +284,13 @@ track 3: sample 0: time = 100000 flags = 1 - data = length 976, hash 91D1729 + data = length 1008, hash 3D438A1A sample 1: time = 150000 flags = 1 - data = length 981, hash 1B9102A8 + data = length 1013, hash 8FEE70D5 sample 2: time = 200000 flags = 1 - data = length 982, hash 263F7393 + data = length 1014, hash BCAEBD04 tracksEnded = true diff --git a/libraries/test_data/src/test/assets/extractordumps/mkv_subtitle_transcoding/sample_with_overlapping_ssa_subtitles.mkv.unknown_length.dump b/libraries/test_data/src/test/assets/extractordumps/mkv_subtitle_transcoding/sample_with_overlapping_ssa_subtitles.mkv.unknown_length.dump index 59248ccdb27..0f7c55dc66d 100644 --- a/libraries/test_data/src/test/assets/extractordumps/mkv_subtitle_transcoding/sample_with_overlapping_ssa_subtitles.mkv.unknown_length.dump +++ b/libraries/test_data/src/test/assets/extractordumps/mkv_subtitle_transcoding/sample_with_overlapping_ssa_subtitles.mkv.unknown_length.dump @@ -269,7 +269,7 @@ track 2: flags = 1 data = length 418, hash 56AB8D37 track 3: - total output bytes = 2939 + total output bytes = 3035 sample count = 3 format 0: id = 3 @@ -284,13 +284,13 @@ track 3: sample 0: time = 100000 flags = 1 - data = length 976, hash 91D1729 + data = length 1008, hash 3D438A1A sample 1: time = 150000 flags = 1 - data = length 981, hash 1B9102A8 + data = length 1013, hash 8FEE70D5 sample 2: time = 200000 flags = 1 - data = length 982, hash 263F7393 + data = length 1014, hash BCAEBD04 tracksEnded = true diff --git a/libraries/test_data/src/test/assets/extractordumps/mkv_subtitle_transcoding/sample_with_srt.mkv.0.dump b/libraries/test_data/src/test/assets/extractordumps/mkv_subtitle_transcoding/sample_with_srt.mkv.0.dump index bce0b6632a3..be237b95894 100644 --- a/libraries/test_data/src/test/assets/extractordumps/mkv_subtitle_transcoding/sample_with_srt.mkv.0.dump +++ b/libraries/test_data/src/test/assets/extractordumps/mkv_subtitle_transcoding/sample_with_srt.mkv.0.dump @@ -269,7 +269,7 @@ track 2: flags = 1 data = length 418, hash 56AB8D37 track 3: - total output bytes = 972 + total output bytes = 1004 sample count = 1 format 0: id = 3 @@ -285,5 +285,5 @@ track 3: sample 0: time = 0 flags = 1 - data = length 972, hash 8E8A2E4B + data = length 1004, hash EF0EFF3C tracksEnded = true diff --git a/libraries/test_data/src/test/assets/extractordumps/mkv_subtitle_transcoding/sample_with_srt.mkv.1.dump b/libraries/test_data/src/test/assets/extractordumps/mkv_subtitle_transcoding/sample_with_srt.mkv.1.dump index bce0b6632a3..be237b95894 100644 --- a/libraries/test_data/src/test/assets/extractordumps/mkv_subtitle_transcoding/sample_with_srt.mkv.1.dump +++ b/libraries/test_data/src/test/assets/extractordumps/mkv_subtitle_transcoding/sample_with_srt.mkv.1.dump @@ -269,7 +269,7 @@ track 2: flags = 1 data = length 418, hash 56AB8D37 track 3: - total output bytes = 972 + total output bytes = 1004 sample count = 1 format 0: id = 3 @@ -285,5 +285,5 @@ track 3: sample 0: time = 0 flags = 1 - data = length 972, hash 8E8A2E4B + data = length 1004, hash EF0EFF3C tracksEnded = true diff --git a/libraries/test_data/src/test/assets/extractordumps/mkv_subtitle_transcoding/sample_with_srt.mkv.2.dump b/libraries/test_data/src/test/assets/extractordumps/mkv_subtitle_transcoding/sample_with_srt.mkv.2.dump index bce0b6632a3..be237b95894 100644 --- a/libraries/test_data/src/test/assets/extractordumps/mkv_subtitle_transcoding/sample_with_srt.mkv.2.dump +++ b/libraries/test_data/src/test/assets/extractordumps/mkv_subtitle_transcoding/sample_with_srt.mkv.2.dump @@ -269,7 +269,7 @@ track 2: flags = 1 data = length 418, hash 56AB8D37 track 3: - total output bytes = 972 + total output bytes = 1004 sample count = 1 format 0: id = 3 @@ -285,5 +285,5 @@ track 3: sample 0: time = 0 flags = 1 - data = length 972, hash 8E8A2E4B + data = length 1004, hash EF0EFF3C tracksEnded = true diff --git a/libraries/test_data/src/test/assets/extractordumps/mkv_subtitle_transcoding/sample_with_srt.mkv.3.dump b/libraries/test_data/src/test/assets/extractordumps/mkv_subtitle_transcoding/sample_with_srt.mkv.3.dump index bce0b6632a3..be237b95894 100644 --- a/libraries/test_data/src/test/assets/extractordumps/mkv_subtitle_transcoding/sample_with_srt.mkv.3.dump +++ b/libraries/test_data/src/test/assets/extractordumps/mkv_subtitle_transcoding/sample_with_srt.mkv.3.dump @@ -269,7 +269,7 @@ track 2: flags = 1 data = length 418, hash 56AB8D37 track 3: - total output bytes = 972 + total output bytes = 1004 sample count = 1 format 0: id = 3 @@ -285,5 +285,5 @@ track 3: sample 0: time = 0 flags = 1 - data = length 972, hash 8E8A2E4B + data = length 1004, hash EF0EFF3C tracksEnded = true diff --git a/libraries/test_data/src/test/assets/extractordumps/mkv_subtitle_transcoding/sample_with_srt.mkv.unknown_length.dump b/libraries/test_data/src/test/assets/extractordumps/mkv_subtitle_transcoding/sample_with_srt.mkv.unknown_length.dump index bce0b6632a3..be237b95894 100644 --- a/libraries/test_data/src/test/assets/extractordumps/mkv_subtitle_transcoding/sample_with_srt.mkv.unknown_length.dump +++ b/libraries/test_data/src/test/assets/extractordumps/mkv_subtitle_transcoding/sample_with_srt.mkv.unknown_length.dump @@ -269,7 +269,7 @@ track 2: flags = 1 data = length 418, hash 56AB8D37 track 3: - total output bytes = 972 + total output bytes = 1004 sample count = 1 format 0: id = 3 @@ -285,5 +285,5 @@ track 3: sample 0: time = 0 flags = 1 - data = length 972, hash 8E8A2E4B + data = length 1004, hash EF0EFF3C tracksEnded = true diff --git a/libraries/test_data/src/test/assets/extractordumps/mkv_subtitle_transcoding/sample_with_ssa_subtitles.mkv.0.dump b/libraries/test_data/src/test/assets/extractordumps/mkv_subtitle_transcoding/sample_with_ssa_subtitles.mkv.0.dump index a9b8653d9fa..d4256a51630 100644 --- a/libraries/test_data/src/test/assets/extractordumps/mkv_subtitle_transcoding/sample_with_ssa_subtitles.mkv.0.dump +++ b/libraries/test_data/src/test/assets/extractordumps/mkv_subtitle_transcoding/sample_with_ssa_subtitles.mkv.0.dump @@ -269,7 +269,7 @@ track 2: flags = 1 data = length 418, hash 56AB8D37 track 3: - total output bytes = 1259 + total output bytes = 1291 sample count = 1 format 0: id = 3 @@ -284,5 +284,5 @@ track 3: sample 0: time = 0 flags = 1 - data = length 1259, hash C880769E + data = length 1291, hash 7F76D24B tracksEnded = true diff --git a/libraries/test_data/src/test/assets/extractordumps/mkv_subtitle_transcoding/sample_with_ssa_subtitles.mkv.1.dump b/libraries/test_data/src/test/assets/extractordumps/mkv_subtitle_transcoding/sample_with_ssa_subtitles.mkv.1.dump index a9b8653d9fa..d4256a51630 100644 --- a/libraries/test_data/src/test/assets/extractordumps/mkv_subtitle_transcoding/sample_with_ssa_subtitles.mkv.1.dump +++ b/libraries/test_data/src/test/assets/extractordumps/mkv_subtitle_transcoding/sample_with_ssa_subtitles.mkv.1.dump @@ -269,7 +269,7 @@ track 2: flags = 1 data = length 418, hash 56AB8D37 track 3: - total output bytes = 1259 + total output bytes = 1291 sample count = 1 format 0: id = 3 @@ -284,5 +284,5 @@ track 3: sample 0: time = 0 flags = 1 - data = length 1259, hash C880769E + data = length 1291, hash 7F76D24B tracksEnded = true diff --git a/libraries/test_data/src/test/assets/extractordumps/mkv_subtitle_transcoding/sample_with_ssa_subtitles.mkv.2.dump b/libraries/test_data/src/test/assets/extractordumps/mkv_subtitle_transcoding/sample_with_ssa_subtitles.mkv.2.dump index a9b8653d9fa..d4256a51630 100644 --- a/libraries/test_data/src/test/assets/extractordumps/mkv_subtitle_transcoding/sample_with_ssa_subtitles.mkv.2.dump +++ b/libraries/test_data/src/test/assets/extractordumps/mkv_subtitle_transcoding/sample_with_ssa_subtitles.mkv.2.dump @@ -269,7 +269,7 @@ track 2: flags = 1 data = length 418, hash 56AB8D37 track 3: - total output bytes = 1259 + total output bytes = 1291 sample count = 1 format 0: id = 3 @@ -284,5 +284,5 @@ track 3: sample 0: time = 0 flags = 1 - data = length 1259, hash C880769E + data = length 1291, hash 7F76D24B tracksEnded = true diff --git a/libraries/test_data/src/test/assets/extractordumps/mkv_subtitle_transcoding/sample_with_ssa_subtitles.mkv.3.dump b/libraries/test_data/src/test/assets/extractordumps/mkv_subtitle_transcoding/sample_with_ssa_subtitles.mkv.3.dump index a9b8653d9fa..d4256a51630 100644 --- a/libraries/test_data/src/test/assets/extractordumps/mkv_subtitle_transcoding/sample_with_ssa_subtitles.mkv.3.dump +++ b/libraries/test_data/src/test/assets/extractordumps/mkv_subtitle_transcoding/sample_with_ssa_subtitles.mkv.3.dump @@ -269,7 +269,7 @@ track 2: flags = 1 data = length 418, hash 56AB8D37 track 3: - total output bytes = 1259 + total output bytes = 1291 sample count = 1 format 0: id = 3 @@ -284,5 +284,5 @@ track 3: sample 0: time = 0 flags = 1 - data = length 1259, hash C880769E + data = length 1291, hash 7F76D24B tracksEnded = true diff --git a/libraries/test_data/src/test/assets/extractordumps/mkv_subtitle_transcoding/sample_with_ssa_subtitles.mkv.unknown_length.dump b/libraries/test_data/src/test/assets/extractordumps/mkv_subtitle_transcoding/sample_with_ssa_subtitles.mkv.unknown_length.dump index a9b8653d9fa..d4256a51630 100644 --- a/libraries/test_data/src/test/assets/extractordumps/mkv_subtitle_transcoding/sample_with_ssa_subtitles.mkv.unknown_length.dump +++ b/libraries/test_data/src/test/assets/extractordumps/mkv_subtitle_transcoding/sample_with_ssa_subtitles.mkv.unknown_length.dump @@ -269,7 +269,7 @@ track 2: flags = 1 data = length 418, hash 56AB8D37 track 3: - total output bytes = 1259 + total output bytes = 1291 sample count = 1 format 0: id = 3 @@ -284,5 +284,5 @@ track 3: sample 0: time = 0 flags = 1 - data = length 1259, hash C880769E + data = length 1291, hash 7F76D24B tracksEnded = true diff --git a/libraries/test_data/src/test/assets/extractordumps/mkv_subtitle_transcoding/sample_with_vtt_subtitles.mkv.0.dump b/libraries/test_data/src/test/assets/extractordumps/mkv_subtitle_transcoding/sample_with_vtt_subtitles.mkv.0.dump index 28510720c31..85d096e063f 100644 --- a/libraries/test_data/src/test/assets/extractordumps/mkv_subtitle_transcoding/sample_with_vtt_subtitles.mkv.0.dump +++ b/libraries/test_data/src/test/assets/extractordumps/mkv_subtitle_transcoding/sample_with_vtt_subtitles.mkv.0.dump @@ -269,7 +269,7 @@ track 2: flags = 1 data = length 418, hash 56AB8D37 track 3: - total output bytes = 1139 + total output bytes = 1171 sample count = 1 format 0: id = 3 @@ -281,5 +281,5 @@ track 3: sample 0: time = 0 flags = 1 - data = length 1139, hash 156F6F9D + data = length 1171, hash 50DBF14A tracksEnded = true diff --git a/libraries/test_data/src/test/assets/extractordumps/mkv_subtitle_transcoding/sample_with_vtt_subtitles.mkv.1.dump b/libraries/test_data/src/test/assets/extractordumps/mkv_subtitle_transcoding/sample_with_vtt_subtitles.mkv.1.dump index 28510720c31..85d096e063f 100644 --- a/libraries/test_data/src/test/assets/extractordumps/mkv_subtitle_transcoding/sample_with_vtt_subtitles.mkv.1.dump +++ b/libraries/test_data/src/test/assets/extractordumps/mkv_subtitle_transcoding/sample_with_vtt_subtitles.mkv.1.dump @@ -269,7 +269,7 @@ track 2: flags = 1 data = length 418, hash 56AB8D37 track 3: - total output bytes = 1139 + total output bytes = 1171 sample count = 1 format 0: id = 3 @@ -281,5 +281,5 @@ track 3: sample 0: time = 0 flags = 1 - data = length 1139, hash 156F6F9D + data = length 1171, hash 50DBF14A tracksEnded = true diff --git a/libraries/test_data/src/test/assets/extractordumps/mkv_subtitle_transcoding/sample_with_vtt_subtitles.mkv.2.dump b/libraries/test_data/src/test/assets/extractordumps/mkv_subtitle_transcoding/sample_with_vtt_subtitles.mkv.2.dump index 28510720c31..85d096e063f 100644 --- a/libraries/test_data/src/test/assets/extractordumps/mkv_subtitle_transcoding/sample_with_vtt_subtitles.mkv.2.dump +++ b/libraries/test_data/src/test/assets/extractordumps/mkv_subtitle_transcoding/sample_with_vtt_subtitles.mkv.2.dump @@ -269,7 +269,7 @@ track 2: flags = 1 data = length 418, hash 56AB8D37 track 3: - total output bytes = 1139 + total output bytes = 1171 sample count = 1 format 0: id = 3 @@ -281,5 +281,5 @@ track 3: sample 0: time = 0 flags = 1 - data = length 1139, hash 156F6F9D + data = length 1171, hash 50DBF14A tracksEnded = true diff --git a/libraries/test_data/src/test/assets/extractordumps/mkv_subtitle_transcoding/sample_with_vtt_subtitles.mkv.3.dump b/libraries/test_data/src/test/assets/extractordumps/mkv_subtitle_transcoding/sample_with_vtt_subtitles.mkv.3.dump index 28510720c31..85d096e063f 100644 --- a/libraries/test_data/src/test/assets/extractordumps/mkv_subtitle_transcoding/sample_with_vtt_subtitles.mkv.3.dump +++ b/libraries/test_data/src/test/assets/extractordumps/mkv_subtitle_transcoding/sample_with_vtt_subtitles.mkv.3.dump @@ -269,7 +269,7 @@ track 2: flags = 1 data = length 418, hash 56AB8D37 track 3: - total output bytes = 1139 + total output bytes = 1171 sample count = 1 format 0: id = 3 @@ -281,5 +281,5 @@ track 3: sample 0: time = 0 flags = 1 - data = length 1139, hash 156F6F9D + data = length 1171, hash 50DBF14A tracksEnded = true diff --git a/libraries/test_data/src/test/assets/extractordumps/mkv_subtitle_transcoding/sample_with_vtt_subtitles.mkv.unknown_length.dump b/libraries/test_data/src/test/assets/extractordumps/mkv_subtitle_transcoding/sample_with_vtt_subtitles.mkv.unknown_length.dump index 28510720c31..85d096e063f 100644 --- a/libraries/test_data/src/test/assets/extractordumps/mkv_subtitle_transcoding/sample_with_vtt_subtitles.mkv.unknown_length.dump +++ b/libraries/test_data/src/test/assets/extractordumps/mkv_subtitle_transcoding/sample_with_vtt_subtitles.mkv.unknown_length.dump @@ -269,7 +269,7 @@ track 2: flags = 1 data = length 418, hash 56AB8D37 track 3: - total output bytes = 1139 + total output bytes = 1171 sample count = 1 format 0: id = 3 @@ -281,5 +281,5 @@ track 3: sample 0: time = 0 flags = 1 - data = length 1139, hash 156F6F9D + data = length 1171, hash 50DBF14A tracksEnded = true diff --git a/libraries/test_data/src/test/assets/extractordumps/webvtt/with_x-timestamp-map_header_parsed_during_extraction.dump b/libraries/test_data/src/test/assets/extractordumps/webvtt/with_x-timestamp-map_header_parsed_during_extraction.dump index 27e71970a36..284fffdbc32 100644 --- a/libraries/test_data/src/test/assets/extractordumps/webvtt/with_x-timestamp-map_header_parsed_during_extraction.dump +++ b/libraries/test_data/src/test/assets/extractordumps/webvtt/with_x-timestamp-map_header_parsed_during_extraction.dump @@ -4,7 +4,7 @@ seekMap: getPosition(0) = [[timeUs=0, position=0]] numberOfTracks = 1 track 0: - total output bytes = 2248 + total output bytes = 2312 sample count = 2 format 0: sampleMimeType = application/x-media3-cues @@ -12,9 +12,9 @@ track 0: sample 0: time = 5000155 flags = 1 - data = length 1124, hash E87709B3 + data = length 1156, hash 9CF92E65 sample 1: time = 6754155 flags = 1 - data = length 1124, hash 5C8A8288 + data = length 1156, hash 71938F3A tracksEnded = true diff --git a/libraries/test_data/src/test/assets/media/ssa/invalid_layer b/libraries/test_data/src/test/assets/media/ssa/invalid_layer new file mode 100644 index 00000000000..ba5b4b744d0 --- /dev/null +++ b/libraries/test_data/src/test/assets/media/ssa/invalid_layer @@ -0,0 +1,8 @@ +[Script Info] +Title: SomeTitle + +[Events] +Format: Layer, Start, End, Name, Text +Dialogue: ,0:00:00.00,0:00:01.23,Olly,Blank layer. +Dialogue: a,0:00:02.34,0:00:03.45,Olly,Non-numeric layer. +Dialogue: 1.1,0:00:04.56,0:00:05.67,Olly,Non-integer layer. diff --git a/libraries/test_data/src/test/assets/media/ssa/layer b/libraries/test_data/src/test/assets/media/ssa/layer new file mode 100644 index 00000000000..1a12ff1a3a3 --- /dev/null +++ b/libraries/test_data/src/test/assets/media/ssa/layer @@ -0,0 +1,7 @@ +[Script Info] +Title: SomeTitle + +[Events] +Format: Layer, Start, End, Style, Name, Text +Dialogue: 1,0:00:02.34,0:00:03.45,Default,Olly,Layer positive. +Dialogue: -1,0:00:13:56,0:00:15:90,Default,Olly,Layer negative. diff --git a/libraries/test_data/src/test/assets/media/ssa/overlapping_cues_different_layers b/libraries/test_data/src/test/assets/media/ssa/overlapping_cues_different_layers new file mode 100644 index 00000000000..2d07c3114e5 --- /dev/null +++ b/libraries/test_data/src/test/assets/media/ssa/overlapping_cues_different_layers @@ -0,0 +1,7 @@ +[Script Info] +Title: SomeTitle + +[Events] +Format: Layer, Start, End, Text +Dialogue: 2,0:00:01.00,0:00:04.23,First subtitle - end overlaps second +Dialogue: 1,0:00:02.00,0:00:05.23,Second subtitle - beginning overlaps first diff --git a/libraries/test_data/src/test/assets/playbackdumps/ssa/overlapping_cues_different_layers.dump b/libraries/test_data/src/test/assets/playbackdumps/ssa/overlapping_cues_different_layers.dump new file mode 100644 index 00000000000..c4157f9e788 --- /dev/null +++ b/libraries/test_data/src/test/assets/playbackdumps/ssa/overlapping_cues_different_layers.dump @@ -0,0 +1,3091 @@ +MediaCodecAdapter (media3.audio.aac): + inputBuffers: + count = 218 + input buffer #0: + timeUs = 1000000000000 + contents = length 21, hash D57A2CCC + input buffer #1: + timeUs = 1000000023219 + contents = length 4, hash EE9DF + input buffer #2: + timeUs = 1000000046439 + contents = length 4, hash EE9DF + input buffer #3: + timeUs = 1000000069659 + contents = length 4, hash EE9DF + input buffer #4: + timeUs = 1000000092879 + contents = length 4, hash EE9DF + input buffer #5: + timeUs = 1000000116099 + contents = length 4, hash EE9DF + input buffer #6: + timeUs = 1000000139319 + contents = length 4, hash EE9DF + input buffer #7: + timeUs = 1000000162539 + contents = length 4, hash EE9DF + input buffer #8: + timeUs = 1000000185759 + contents = length 4, hash EE9DF + input buffer #9: + timeUs = 1000000208979 + contents = length 4, hash EE9DF + input buffer #10: + timeUs = 1000000232199 + contents = length 4, hash EE9DF + input buffer #11: + timeUs = 1000000255419 + contents = length 4, hash EE9DF + input buffer #12: + timeUs = 1000000278639 + contents = length 4, hash EE9DF + input buffer #13: + timeUs = 1000000301859 + contents = length 4, hash EE9DF + input buffer #14: + timeUs = 1000000325079 + contents = length 4, hash EE9DF + input buffer #15: + timeUs = 1000000348299 + contents = length 4, hash EE9DF + input buffer #16: + timeUs = 1000000371519 + contents = length 4, hash EE9DF + input buffer #17: + timeUs = 1000000394739 + contents = length 4, hash EE9DF + input buffer #18: + timeUs = 1000000417959 + contents = length 4, hash EE9DF + input buffer #19: + timeUs = 1000000441179 + contents = length 4, hash EE9DF + input buffer #20: + timeUs = 1000000464399 + contents = length 4, hash EE9DF + input buffer #21: + timeUs = 1000000487619 + contents = length 4, hash EE9DF + input buffer #22: + timeUs = 1000000510839 + contents = length 4, hash EE9DF + input buffer #23: + timeUs = 1000000534058 + contents = length 4, hash EE9DF + input buffer #24: + timeUs = 1000000557278 + contents = length 4, hash EE9DF + input buffer #25: + timeUs = 1000000580498 + contents = length 4, hash EE9DF + input buffer #26: + timeUs = 1000000603718 + contents = length 4, hash EE9DF + input buffer #27: + timeUs = 1000000626938 + contents = length 4, hash EE9DF + input buffer #28: + timeUs = 1000000650158 + contents = length 4, hash EE9DF + input buffer #29: + timeUs = 1000000673378 + contents = length 4, hash EE9DF + input buffer #30: + timeUs = 1000000696598 + contents = length 4, hash EE9DF + input buffer #31: + timeUs = 1000000719818 + contents = length 4, hash EE9DF + input buffer #32: + timeUs = 1000000743038 + contents = length 4, hash EE9DF + input buffer #33: + timeUs = 1000000766258 + contents = length 4, hash EE9DF + input buffer #34: + timeUs = 1000000789478 + contents = length 4, hash EE9DF + input buffer #35: + timeUs = 1000000812698 + contents = length 4, hash EE9DF + input buffer #36: + timeUs = 1000000835918 + contents = length 4, hash EE9DF + input buffer #37: + timeUs = 1000000859138 + contents = length 4, hash EE9DF + input buffer #38: + timeUs = 1000000882358 + contents = length 4, hash EE9DF + input buffer #39: + timeUs = 1000000905578 + contents = length 4, hash EE9DF + input buffer #40: + timeUs = 1000000928798 + contents = length 4, hash EE9DF + input buffer #41: + timeUs = 1000000952018 + contents = length 4, hash EE9DF + input buffer #42: + timeUs = 1000000975238 + contents = length 4, hash EE9DF + input buffer #43: + timeUs = 1000000998458 + contents = length 4, hash EE9DF + input buffer #44: + timeUs = 1000001021678 + contents = length 4, hash EE9DF + input buffer #45: + timeUs = 1000001044897 + contents = length 4, hash EE9DF + input buffer #46: + timeUs = 1000001068117 + contents = length 4, hash EE9DF + input buffer #47: + timeUs = 1000001091337 + contents = length 4, hash EE9DF + input buffer #48: + timeUs = 1000001114557 + contents = length 4, hash EE9DF + input buffer #49: + timeUs = 1000001137777 + contents = length 4, hash EE9DF + input buffer #50: + timeUs = 1000001160997 + contents = length 4, hash EE9DF + input buffer #51: + timeUs = 1000001184217 + contents = length 4, hash EE9DF + input buffer #52: + timeUs = 1000001207437 + contents = length 4, hash EE9DF + input buffer #53: + timeUs = 1000001230657 + contents = length 4, hash EE9DF + input buffer #54: + timeUs = 1000001253877 + contents = length 4, hash EE9DF + input buffer #55: + timeUs = 1000001277097 + contents = length 4, hash EE9DF + input buffer #56: + timeUs = 1000001300317 + contents = length 4, hash EE9DF + input buffer #57: + timeUs = 1000001323537 + contents = length 4, hash EE9DF + input buffer #58: + timeUs = 1000001346757 + contents = length 4, hash EE9DF + input buffer #59: + timeUs = 1000001369977 + contents = length 4, hash EE9DF + input buffer #60: + timeUs = 1000001393197 + contents = length 4, hash EE9DF + input buffer #61: + timeUs = 1000001416417 + contents = length 4, hash EE9DF + input buffer #62: + timeUs = 1000001439637 + contents = length 4, hash EE9DF + input buffer #63: + timeUs = 1000001462857 + contents = length 4, hash EE9DF + input buffer #64: + timeUs = 1000001486077 + contents = length 4, hash EE9DF + input buffer #65: + timeUs = 1000001509297 + contents = length 4, hash EE9DF + input buffer #66: + timeUs = 1000001532517 + contents = length 4, hash EE9DF + input buffer #67: + timeUs = 1000001555736 + contents = length 4, hash EE9DF + input buffer #68: + timeUs = 1000001578956 + contents = length 4, hash EE9DF + input buffer #69: + timeUs = 1000001602176 + contents = length 4, hash EE9DF + input buffer #70: + timeUs = 1000001625396 + contents = length 4, hash EE9DF + input buffer #71: + timeUs = 1000001648616 + contents = length 4, hash EE9DF + input buffer #72: + timeUs = 1000001671836 + contents = length 4, hash EE9DF + input buffer #73: + timeUs = 1000001695056 + contents = length 4, hash EE9DF + input buffer #74: + timeUs = 1000001718276 + contents = length 4, hash EE9DF + input buffer #75: + timeUs = 1000001741496 + contents = length 4, hash EE9DF + input buffer #76: + timeUs = 1000001764716 + contents = length 4, hash EE9DF + input buffer #77: + timeUs = 1000001787936 + contents = length 4, hash EE9DF + input buffer #78: + timeUs = 1000001811156 + contents = length 4, hash EE9DF + input buffer #79: + timeUs = 1000001834376 + contents = length 4, hash EE9DF + input buffer #80: + timeUs = 1000001857596 + contents = length 4, hash EE9DF + input buffer #81: + timeUs = 1000001880816 + contents = length 4, hash EE9DF + input buffer #82: + timeUs = 1000001904036 + contents = length 4, hash EE9DF + input buffer #83: + timeUs = 1000001927256 + contents = length 4, hash EE9DF + input buffer #84: + timeUs = 1000001950476 + contents = length 4, hash EE9DF + input buffer #85: + timeUs = 1000001973696 + contents = length 4, hash EE9DF + input buffer #86: + timeUs = 1000001996916 + contents = length 4, hash EE9DF + input buffer #87: + timeUs = 1000002020136 + contents = length 4, hash EE9DF + input buffer #88: + timeUs = 1000002043356 + contents = length 4, hash EE9DF + input buffer #89: + timeUs = 1000002066575 + contents = length 4, hash EE9DF + input buffer #90: + timeUs = 1000002089795 + contents = length 4, hash EE9DF + input buffer #91: + timeUs = 1000002113015 + contents = length 4, hash EE9DF + input buffer #92: + timeUs = 1000002136235 + contents = length 4, hash EE9DF + input buffer #93: + timeUs = 1000002159455 + contents = length 4, hash EE9DF + input buffer #94: + timeUs = 1000002182675 + contents = length 4, hash EE9DF + input buffer #95: + timeUs = 1000002205895 + contents = length 4, hash EE9DF + input buffer #96: + timeUs = 1000002229115 + contents = length 4, hash EE9DF + input buffer #97: + timeUs = 1000002252335 + contents = length 4, hash EE9DF + input buffer #98: + timeUs = 1000002275555 + contents = length 4, hash EE9DF + input buffer #99: + timeUs = 1000002298775 + contents = length 4, hash EE9DF + input buffer #100: + timeUs = 1000002321995 + contents = length 4, hash EE9DF + input buffer #101: + timeUs = 1000002345215 + contents = length 4, hash EE9DF + input buffer #102: + timeUs = 1000002368435 + contents = length 4, hash EE9DF + input buffer #103: + timeUs = 1000002391655 + contents = length 4, hash EE9DF + input buffer #104: + timeUs = 1000002414875 + contents = length 4, hash EE9DF + input buffer #105: + timeUs = 1000002438095 + contents = length 4, hash EE9DF + input buffer #106: + timeUs = 1000002461315 + contents = length 4, hash EE9DF + input buffer #107: + timeUs = 1000002484535 + contents = length 4, hash EE9DF + input buffer #108: + timeUs = 1000002507755 + contents = length 4, hash EE9DF + input buffer #109: + timeUs = 1000002530975 + contents = length 4, hash EE9DF + input buffer #110: + timeUs = 1000002554195 + contents = length 4, hash EE9DF + input buffer #111: + timeUs = 1000002577414 + contents = length 4, hash EE9DF + input buffer #112: + timeUs = 1000002600634 + contents = length 4, hash EE9DF + input buffer #113: + timeUs = 1000002623854 + contents = length 4, hash EE9DF + input buffer #114: + timeUs = 1000002647074 + contents = length 4, hash EE9DF + input buffer #115: + timeUs = 1000002670294 + contents = length 4, hash EE9DF + input buffer #116: + timeUs = 1000002693514 + contents = length 4, hash EE9DF + input buffer #117: + timeUs = 1000002716734 + contents = length 4, hash EE9DF + input buffer #118: + timeUs = 1000002739954 + contents = length 4, hash EE9DF + input buffer #119: + timeUs = 1000002763174 + contents = length 4, hash EE9DF + input buffer #120: + timeUs = 1000002786394 + contents = length 4, hash EE9DF + input buffer #121: + timeUs = 1000002809614 + contents = length 4, hash EE9DF + input buffer #122: + timeUs = 1000002832834 + contents = length 4, hash EE9DF + input buffer #123: + timeUs = 1000002856054 + contents = length 4, hash EE9DF + input buffer #124: + timeUs = 1000002879274 + contents = length 4, hash EE9DF + input buffer #125: + timeUs = 1000002902494 + contents = length 4, hash EE9DF + input buffer #126: + timeUs = 1000002925714 + contents = length 4, hash EE9DF + input buffer #127: + timeUs = 1000002948934 + contents = length 4, hash EE9DF + input buffer #128: + timeUs = 1000002972154 + contents = length 4, hash EE9DF + input buffer #129: + timeUs = 1000002995374 + contents = length 4, hash EE9DF + input buffer #130: + timeUs = 1000003018594 + contents = length 4, hash EE9DF + input buffer #131: + timeUs = 1000003041814 + contents = length 4, hash EE9DF + input buffer #132: + timeUs = 1000003065034 + contents = length 4, hash EE9DF + input buffer #133: + timeUs = 1000003088253 + contents = length 4, hash EE9DF + input buffer #134: + timeUs = 1000003111473 + contents = length 4, hash EE9DF + input buffer #135: + timeUs = 1000003134693 + contents = length 4, hash EE9DF + input buffer #136: + timeUs = 1000003157913 + contents = length 4, hash EE9DF + input buffer #137: + timeUs = 1000003181133 + contents = length 4, hash EE9DF + input buffer #138: + timeUs = 1000003204353 + contents = length 4, hash EE9DF + input buffer #139: + timeUs = 1000003227573 + contents = length 4, hash EE9DF + input buffer #140: + timeUs = 1000003250793 + contents = length 4, hash EE9DF + input buffer #141: + timeUs = 1000003274013 + contents = length 4, hash EE9DF + input buffer #142: + timeUs = 1000003297233 + contents = length 4, hash EE9DF + input buffer #143: + timeUs = 1000003320453 + contents = length 4, hash EE9DF + input buffer #144: + timeUs = 1000003343673 + contents = length 4, hash EE9DF + input buffer #145: + timeUs = 1000003366893 + contents = length 4, hash EE9DF + input buffer #146: + timeUs = 1000003390113 + contents = length 4, hash EE9DF + input buffer #147: + timeUs = 1000003413333 + contents = length 4, hash EE9DF + input buffer #148: + timeUs = 1000003436553 + contents = length 4, hash EE9DF + input buffer #149: + timeUs = 1000003459773 + contents = length 4, hash EE9DF + input buffer #150: + timeUs = 1000003482993 + contents = length 4, hash EE9DF + input buffer #151: + timeUs = 1000003506213 + contents = length 4, hash EE9DF + input buffer #152: + timeUs = 1000003529433 + contents = length 4, hash EE9DF + input buffer #153: + timeUs = 1000003552653 + contents = length 4, hash EE9DF + input buffer #154: + timeUs = 1000003575873 + contents = length 4, hash EE9DF + input buffer #155: + timeUs = 1000003599092 + contents = length 4, hash EE9DF + input buffer #156: + timeUs = 1000003622312 + contents = length 4, hash EE9DF + input buffer #157: + timeUs = 1000003645532 + contents = length 4, hash EE9DF + input buffer #158: + timeUs = 1000003668752 + contents = length 4, hash EE9DF + input buffer #159: + timeUs = 1000003691972 + contents = length 4, hash EE9DF + input buffer #160: + timeUs = 1000003715192 + contents = length 4, hash EE9DF + input buffer #161: + timeUs = 1000003738412 + contents = length 4, hash EE9DF + input buffer #162: + timeUs = 1000003761632 + contents = length 4, hash EE9DF + input buffer #163: + timeUs = 1000003784852 + contents = length 4, hash EE9DF + input buffer #164: + timeUs = 1000003808072 + contents = length 4, hash EE9DF + input buffer #165: + timeUs = 1000003831292 + contents = length 4, hash EE9DF + input buffer #166: + timeUs = 1000003854512 + contents = length 4, hash EE9DF + input buffer #167: + timeUs = 1000003877732 + contents = length 4, hash EE9DF + input buffer #168: + timeUs = 1000003900952 + contents = length 4, hash EE9DF + input buffer #169: + timeUs = 1000003924172 + contents = length 4, hash EE9DF + input buffer #170: + timeUs = 1000003947392 + contents = length 4, hash EE9DF + input buffer #171: + timeUs = 1000003970612 + contents = length 4, hash EE9DF + input buffer #172: + timeUs = 1000003993832 + contents = length 4, hash EE9DF + input buffer #173: + timeUs = 1000004017052 + contents = length 4, hash EE9DF + input buffer #174: + timeUs = 1000004040272 + contents = length 4, hash EE9DF + input buffer #175: + timeUs = 1000004063492 + contents = length 4, hash EE9DF + input buffer #176: + timeUs = 1000004086712 + contents = length 4, hash EE9DF + input buffer #177: + timeUs = 1000004109931 + contents = length 4, hash EE9DF + input buffer #178: + timeUs = 1000004133151 + contents = length 4, hash EE9DF + input buffer #179: + timeUs = 1000004156371 + contents = length 4, hash EE9DF + input buffer #180: + timeUs = 1000004179591 + contents = length 4, hash EE9DF + input buffer #181: + timeUs = 1000004202811 + contents = length 4, hash EE9DF + input buffer #182: + timeUs = 1000004226031 + contents = length 4, hash EE9DF + input buffer #183: + timeUs = 1000004249251 + contents = length 4, hash EE9DF + input buffer #184: + timeUs = 1000004272471 + contents = length 4, hash EE9DF + input buffer #185: + timeUs = 1000004295691 + contents = length 4, hash EE9DF + input buffer #186: + timeUs = 1000004318911 + contents = length 4, hash EE9DF + input buffer #187: + timeUs = 1000004342131 + contents = length 4, hash EE9DF + input buffer #188: + timeUs = 1000004365351 + contents = length 4, hash EE9DF + input buffer #189: + timeUs = 1000004388571 + contents = length 4, hash EE9DF + input buffer #190: + timeUs = 1000004411791 + contents = length 4, hash EE9DF + input buffer #191: + timeUs = 1000004435011 + contents = length 4, hash EE9DF + input buffer #192: + timeUs = 1000004458231 + contents = length 4, hash EE9DF + input buffer #193: + timeUs = 1000004481451 + contents = length 4, hash EE9DF + input buffer #194: + timeUs = 1000004504671 + contents = length 4, hash EE9DF + input buffer #195: + timeUs = 1000004527891 + contents = length 4, hash EE9DF + input buffer #196: + timeUs = 1000004551111 + contents = length 4, hash EE9DF + input buffer #197: + timeUs = 1000004574331 + contents = length 4, hash EE9DF + input buffer #198: + timeUs = 1000004597551 + contents = length 4, hash EE9DF + input buffer #199: + timeUs = 1000004620770 + contents = length 4, hash EE9DF + input buffer #200: + timeUs = 1000004643990 + contents = length 4, hash EE9DF + input buffer #201: + timeUs = 1000004667210 + contents = length 4, hash EE9DF + input buffer #202: + timeUs = 1000004690430 + contents = length 4, hash EE9DF + input buffer #203: + timeUs = 1000004713650 + contents = length 4, hash EE9DF + input buffer #204: + timeUs = 1000004736870 + contents = length 4, hash EE9DF + input buffer #205: + timeUs = 1000004760090 + contents = length 4, hash EE9DF + input buffer #206: + timeUs = 1000004783310 + contents = length 4, hash EE9DF + input buffer #207: + timeUs = 1000004806530 + contents = length 4, hash EE9DF + input buffer #208: + timeUs = 1000004829750 + contents = length 4, hash EE9DF + input buffer #209: + timeUs = 1000004852970 + contents = length 4, hash EE9DF + input buffer #210: + timeUs = 1000004876190 + contents = length 4, hash EE9DF + input buffer #211: + timeUs = 1000004899410 + contents = length 4, hash EE9DF + input buffer #212: + timeUs = 1000004922630 + contents = length 4, hash EE9DF + input buffer #213: + timeUs = 1000004945850 + contents = length 4, hash EE9DF + input buffer #214: + timeUs = 1000004969070 + contents = length 4, hash EE9DF + input buffer #215: + timeUs = 1000004992290 + contents = length 4, hash EE9DF + input buffer #216: + timeUs = 1000005015510 + contents = length 4, hash EE9DF + input buffer #217: + timeUs = 0 + flags = 4 + contents = length 0, hash 1 + outputBuffers: + count = 217 + output buffer #0: + timeUs = 1000000000000 + size = 0 + rendered = false + output buffer #1: + timeUs = 1000000023219 + size = 0 + rendered = false + output buffer #2: + timeUs = 1000000046439 + size = 0 + rendered = false + output buffer #3: + timeUs = 1000000069659 + size = 0 + rendered = false + output buffer #4: + timeUs = 1000000092879 + size = 0 + rendered = false + output buffer #5: + timeUs = 1000000116099 + size = 0 + rendered = false + output buffer #6: + timeUs = 1000000139319 + size = 0 + rendered = false + output buffer #7: + timeUs = 1000000162539 + size = 0 + rendered = false + output buffer #8: + timeUs = 1000000185759 + size = 0 + rendered = false + output buffer #9: + timeUs = 1000000208979 + size = 0 + rendered = false + output buffer #10: + timeUs = 1000000232199 + size = 0 + rendered = false + output buffer #11: + timeUs = 1000000255419 + size = 0 + rendered = false + output buffer #12: + timeUs = 1000000278639 + size = 0 + rendered = false + output buffer #13: + timeUs = 1000000301859 + size = 0 + rendered = false + output buffer #14: + timeUs = 1000000325079 + size = 0 + rendered = false + output buffer #15: + timeUs = 1000000348299 + size = 0 + rendered = false + output buffer #16: + timeUs = 1000000371519 + size = 0 + rendered = false + output buffer #17: + timeUs = 1000000394739 + size = 0 + rendered = false + output buffer #18: + timeUs = 1000000417959 + size = 0 + rendered = false + output buffer #19: + timeUs = 1000000441179 + size = 0 + rendered = false + output buffer #20: + timeUs = 1000000464399 + size = 0 + rendered = false + output buffer #21: + timeUs = 1000000487619 + size = 0 + rendered = false + output buffer #22: + timeUs = 1000000510839 + size = 0 + rendered = false + output buffer #23: + timeUs = 1000000534058 + size = 0 + rendered = false + output buffer #24: + timeUs = 1000000557278 + size = 0 + rendered = false + output buffer #25: + timeUs = 1000000580498 + size = 0 + rendered = false + output buffer #26: + timeUs = 1000000603718 + size = 0 + rendered = false + output buffer #27: + timeUs = 1000000626938 + size = 0 + rendered = false + output buffer #28: + timeUs = 1000000650158 + size = 0 + rendered = false + output buffer #29: + timeUs = 1000000673378 + size = 0 + rendered = false + output buffer #30: + timeUs = 1000000696598 + size = 0 + rendered = false + output buffer #31: + timeUs = 1000000719818 + size = 0 + rendered = false + output buffer #32: + timeUs = 1000000743038 + size = 0 + rendered = false + output buffer #33: + timeUs = 1000000766258 + size = 0 + rendered = false + output buffer #34: + timeUs = 1000000789478 + size = 0 + rendered = false + output buffer #35: + timeUs = 1000000812698 + size = 0 + rendered = false + output buffer #36: + timeUs = 1000000835918 + size = 0 + rendered = false + output buffer #37: + timeUs = 1000000859138 + size = 0 + rendered = false + output buffer #38: + timeUs = 1000000882358 + size = 0 + rendered = false + output buffer #39: + timeUs = 1000000905578 + size = 0 + rendered = false + output buffer #40: + timeUs = 1000000928798 + size = 0 + rendered = false + output buffer #41: + timeUs = 1000000952018 + size = 0 + rendered = false + output buffer #42: + timeUs = 1000000975238 + size = 0 + rendered = false + output buffer #43: + timeUs = 1000000998458 + size = 0 + rendered = false + output buffer #44: + timeUs = 1000001021678 + size = 0 + rendered = false + output buffer #45: + timeUs = 1000001044897 + size = 0 + rendered = false + output buffer #46: + timeUs = 1000001068117 + size = 0 + rendered = false + output buffer #47: + timeUs = 1000001091337 + size = 0 + rendered = false + output buffer #48: + timeUs = 1000001114557 + size = 0 + rendered = false + output buffer #49: + timeUs = 1000001137777 + size = 0 + rendered = false + output buffer #50: + timeUs = 1000001160997 + size = 0 + rendered = false + output buffer #51: + timeUs = 1000001184217 + size = 0 + rendered = false + output buffer #52: + timeUs = 1000001207437 + size = 0 + rendered = false + output buffer #53: + timeUs = 1000001230657 + size = 0 + rendered = false + output buffer #54: + timeUs = 1000001253877 + size = 0 + rendered = false + output buffer #55: + timeUs = 1000001277097 + size = 0 + rendered = false + output buffer #56: + timeUs = 1000001300317 + size = 0 + rendered = false + output buffer #57: + timeUs = 1000001323537 + size = 0 + rendered = false + output buffer #58: + timeUs = 1000001346757 + size = 0 + rendered = false + output buffer #59: + timeUs = 1000001369977 + size = 0 + rendered = false + output buffer #60: + timeUs = 1000001393197 + size = 0 + rendered = false + output buffer #61: + timeUs = 1000001416417 + size = 0 + rendered = false + output buffer #62: + timeUs = 1000001439637 + size = 0 + rendered = false + output buffer #63: + timeUs = 1000001462857 + size = 0 + rendered = false + output buffer #64: + timeUs = 1000001486077 + size = 0 + rendered = false + output buffer #65: + timeUs = 1000001509297 + size = 0 + rendered = false + output buffer #66: + timeUs = 1000001532517 + size = 0 + rendered = false + output buffer #67: + timeUs = 1000001555736 + size = 0 + rendered = false + output buffer #68: + timeUs = 1000001578956 + size = 0 + rendered = false + output buffer #69: + timeUs = 1000001602176 + size = 0 + rendered = false + output buffer #70: + timeUs = 1000001625396 + size = 0 + rendered = false + output buffer #71: + timeUs = 1000001648616 + size = 0 + rendered = false + output buffer #72: + timeUs = 1000001671836 + size = 0 + rendered = false + output buffer #73: + timeUs = 1000001695056 + size = 0 + rendered = false + output buffer #74: + timeUs = 1000001718276 + size = 0 + rendered = false + output buffer #75: + timeUs = 1000001741496 + size = 0 + rendered = false + output buffer #76: + timeUs = 1000001764716 + size = 0 + rendered = false + output buffer #77: + timeUs = 1000001787936 + size = 0 + rendered = false + output buffer #78: + timeUs = 1000001811156 + size = 0 + rendered = false + output buffer #79: + timeUs = 1000001834376 + size = 0 + rendered = false + output buffer #80: + timeUs = 1000001857596 + size = 0 + rendered = false + output buffer #81: + timeUs = 1000001880816 + size = 0 + rendered = false + output buffer #82: + timeUs = 1000001904036 + size = 0 + rendered = false + output buffer #83: + timeUs = 1000001927256 + size = 0 + rendered = false + output buffer #84: + timeUs = 1000001950476 + size = 0 + rendered = false + output buffer #85: + timeUs = 1000001973696 + size = 0 + rendered = false + output buffer #86: + timeUs = 1000001996916 + size = 0 + rendered = false + output buffer #87: + timeUs = 1000002020136 + size = 0 + rendered = false + output buffer #88: + timeUs = 1000002043356 + size = 0 + rendered = false + output buffer #89: + timeUs = 1000002066575 + size = 0 + rendered = false + output buffer #90: + timeUs = 1000002089795 + size = 0 + rendered = false + output buffer #91: + timeUs = 1000002113015 + size = 0 + rendered = false + output buffer #92: + timeUs = 1000002136235 + size = 0 + rendered = false + output buffer #93: + timeUs = 1000002159455 + size = 0 + rendered = false + output buffer #94: + timeUs = 1000002182675 + size = 0 + rendered = false + output buffer #95: + timeUs = 1000002205895 + size = 0 + rendered = false + output buffer #96: + timeUs = 1000002229115 + size = 0 + rendered = false + output buffer #97: + timeUs = 1000002252335 + size = 0 + rendered = false + output buffer #98: + timeUs = 1000002275555 + size = 0 + rendered = false + output buffer #99: + timeUs = 1000002298775 + size = 0 + rendered = false + output buffer #100: + timeUs = 1000002321995 + size = 0 + rendered = false + output buffer #101: + timeUs = 1000002345215 + size = 0 + rendered = false + output buffer #102: + timeUs = 1000002368435 + size = 0 + rendered = false + output buffer #103: + timeUs = 1000002391655 + size = 0 + rendered = false + output buffer #104: + timeUs = 1000002414875 + size = 0 + rendered = false + output buffer #105: + timeUs = 1000002438095 + size = 0 + rendered = false + output buffer #106: + timeUs = 1000002461315 + size = 0 + rendered = false + output buffer #107: + timeUs = 1000002484535 + size = 0 + rendered = false + output buffer #108: + timeUs = 1000002507755 + size = 0 + rendered = false + output buffer #109: + timeUs = 1000002530975 + size = 0 + rendered = false + output buffer #110: + timeUs = 1000002554195 + size = 0 + rendered = false + output buffer #111: + timeUs = 1000002577414 + size = 0 + rendered = false + output buffer #112: + timeUs = 1000002600634 + size = 0 + rendered = false + output buffer #113: + timeUs = 1000002623854 + size = 0 + rendered = false + output buffer #114: + timeUs = 1000002647074 + size = 0 + rendered = false + output buffer #115: + timeUs = 1000002670294 + size = 0 + rendered = false + output buffer #116: + timeUs = 1000002693514 + size = 0 + rendered = false + output buffer #117: + timeUs = 1000002716734 + size = 0 + rendered = false + output buffer #118: + timeUs = 1000002739954 + size = 0 + rendered = false + output buffer #119: + timeUs = 1000002763174 + size = 0 + rendered = false + output buffer #120: + timeUs = 1000002786394 + size = 0 + rendered = false + output buffer #121: + timeUs = 1000002809614 + size = 0 + rendered = false + output buffer #122: + timeUs = 1000002832834 + size = 0 + rendered = false + output buffer #123: + timeUs = 1000002856054 + size = 0 + rendered = false + output buffer #124: + timeUs = 1000002879274 + size = 0 + rendered = false + output buffer #125: + timeUs = 1000002902494 + size = 0 + rendered = false + output buffer #126: + timeUs = 1000002925714 + size = 0 + rendered = false + output buffer #127: + timeUs = 1000002948934 + size = 0 + rendered = false + output buffer #128: + timeUs = 1000002972154 + size = 0 + rendered = false + output buffer #129: + timeUs = 1000002995374 + size = 0 + rendered = false + output buffer #130: + timeUs = 1000003018594 + size = 0 + rendered = false + output buffer #131: + timeUs = 1000003041814 + size = 0 + rendered = false + output buffer #132: + timeUs = 1000003065034 + size = 0 + rendered = false + output buffer #133: + timeUs = 1000003088253 + size = 0 + rendered = false + output buffer #134: + timeUs = 1000003111473 + size = 0 + rendered = false + output buffer #135: + timeUs = 1000003134693 + size = 0 + rendered = false + output buffer #136: + timeUs = 1000003157913 + size = 0 + rendered = false + output buffer #137: + timeUs = 1000003181133 + size = 0 + rendered = false + output buffer #138: + timeUs = 1000003204353 + size = 0 + rendered = false + output buffer #139: + timeUs = 1000003227573 + size = 0 + rendered = false + output buffer #140: + timeUs = 1000003250793 + size = 0 + rendered = false + output buffer #141: + timeUs = 1000003274013 + size = 0 + rendered = false + output buffer #142: + timeUs = 1000003297233 + size = 0 + rendered = false + output buffer #143: + timeUs = 1000003320453 + size = 0 + rendered = false + output buffer #144: + timeUs = 1000003343673 + size = 0 + rendered = false + output buffer #145: + timeUs = 1000003366893 + size = 0 + rendered = false + output buffer #146: + timeUs = 1000003390113 + size = 0 + rendered = false + output buffer #147: + timeUs = 1000003413333 + size = 0 + rendered = false + output buffer #148: + timeUs = 1000003436553 + size = 0 + rendered = false + output buffer #149: + timeUs = 1000003459773 + size = 0 + rendered = false + output buffer #150: + timeUs = 1000003482993 + size = 0 + rendered = false + output buffer #151: + timeUs = 1000003506213 + size = 0 + rendered = false + output buffer #152: + timeUs = 1000003529433 + size = 0 + rendered = false + output buffer #153: + timeUs = 1000003552653 + size = 0 + rendered = false + output buffer #154: + timeUs = 1000003575873 + size = 0 + rendered = false + output buffer #155: + timeUs = 1000003599092 + size = 0 + rendered = false + output buffer #156: + timeUs = 1000003622312 + size = 0 + rendered = false + output buffer #157: + timeUs = 1000003645532 + size = 0 + rendered = false + output buffer #158: + timeUs = 1000003668752 + size = 0 + rendered = false + output buffer #159: + timeUs = 1000003691972 + size = 0 + rendered = false + output buffer #160: + timeUs = 1000003715192 + size = 0 + rendered = false + output buffer #161: + timeUs = 1000003738412 + size = 0 + rendered = false + output buffer #162: + timeUs = 1000003761632 + size = 0 + rendered = false + output buffer #163: + timeUs = 1000003784852 + size = 0 + rendered = false + output buffer #164: + timeUs = 1000003808072 + size = 0 + rendered = false + output buffer #165: + timeUs = 1000003831292 + size = 0 + rendered = false + output buffer #166: + timeUs = 1000003854512 + size = 0 + rendered = false + output buffer #167: + timeUs = 1000003877732 + size = 0 + rendered = false + output buffer #168: + timeUs = 1000003900952 + size = 0 + rendered = false + output buffer #169: + timeUs = 1000003924172 + size = 0 + rendered = false + output buffer #170: + timeUs = 1000003947392 + size = 0 + rendered = false + output buffer #171: + timeUs = 1000003970612 + size = 0 + rendered = false + output buffer #172: + timeUs = 1000003993832 + size = 0 + rendered = false + output buffer #173: + timeUs = 1000004017052 + size = 0 + rendered = false + output buffer #174: + timeUs = 1000004040272 + size = 0 + rendered = false + output buffer #175: + timeUs = 1000004063492 + size = 0 + rendered = false + output buffer #176: + timeUs = 1000004086712 + size = 0 + rendered = false + output buffer #177: + timeUs = 1000004109931 + size = 0 + rendered = false + output buffer #178: + timeUs = 1000004133151 + size = 0 + rendered = false + output buffer #179: + timeUs = 1000004156371 + size = 0 + rendered = false + output buffer #180: + timeUs = 1000004179591 + size = 0 + rendered = false + output buffer #181: + timeUs = 1000004202811 + size = 0 + rendered = false + output buffer #182: + timeUs = 1000004226031 + size = 0 + rendered = false + output buffer #183: + timeUs = 1000004249251 + size = 0 + rendered = false + output buffer #184: + timeUs = 1000004272471 + size = 0 + rendered = false + output buffer #185: + timeUs = 1000004295691 + size = 0 + rendered = false + output buffer #186: + timeUs = 1000004318911 + size = 0 + rendered = false + output buffer #187: + timeUs = 1000004342131 + size = 0 + rendered = false + output buffer #188: + timeUs = 1000004365351 + size = 0 + rendered = false + output buffer #189: + timeUs = 1000004388571 + size = 0 + rendered = false + output buffer #190: + timeUs = 1000004411791 + size = 0 + rendered = false + output buffer #191: + timeUs = 1000004435011 + size = 0 + rendered = false + output buffer #192: + timeUs = 1000004458231 + size = 0 + rendered = false + output buffer #193: + timeUs = 1000004481451 + size = 0 + rendered = false + output buffer #194: + timeUs = 1000004504671 + size = 0 + rendered = false + output buffer #195: + timeUs = 1000004527891 + size = 0 + rendered = false + output buffer #196: + timeUs = 1000004551111 + size = 0 + rendered = false + output buffer #197: + timeUs = 1000004574331 + size = 0 + rendered = false + output buffer #198: + timeUs = 1000004597551 + size = 0 + rendered = false + output buffer #199: + timeUs = 1000004620770 + size = 0 + rendered = false + output buffer #200: + timeUs = 1000004643990 + size = 0 + rendered = false + output buffer #201: + timeUs = 1000004667210 + size = 0 + rendered = false + output buffer #202: + timeUs = 1000004690430 + size = 0 + rendered = false + output buffer #203: + timeUs = 1000004713650 + size = 0 + rendered = false + output buffer #204: + timeUs = 1000004736870 + size = 0 + rendered = false + output buffer #205: + timeUs = 1000004760090 + size = 0 + rendered = false + output buffer #206: + timeUs = 1000004783310 + size = 0 + rendered = false + output buffer #207: + timeUs = 1000004806530 + size = 0 + rendered = false + output buffer #208: + timeUs = 1000004829750 + size = 0 + rendered = false + output buffer #209: + timeUs = 1000004852970 + size = 0 + rendered = false + output buffer #210: + timeUs = 1000004876190 + size = 0 + rendered = false + output buffer #211: + timeUs = 1000004899410 + size = 0 + rendered = false + output buffer #212: + timeUs = 1000004922630 + size = 0 + rendered = false + output buffer #213: + timeUs = 1000004945850 + size = 0 + rendered = false + output buffer #214: + timeUs = 1000004969070 + size = 0 + rendered = false + output buffer #215: + timeUs = 1000004992290 + size = 0 + rendered = false + output buffer #216: + timeUs = 1000005015510 + size = 0 + rendered = false +MediaCodecAdapter (media3.video.avc): + inputBuffers: + count = 126 + input buffer #0: + timeUs = 1000000000000 + contents = length 5245, hash C090A41E + input buffer #1: + timeUs = 1000000160000 + contents = length 63, hash 5141C80D + input buffer #2: + timeUs = 1000000080000 + contents = length 22, hash A32E59A1 + input buffer #3: + timeUs = 1000000040000 + contents = length 20, hash A09DEAB8 + input buffer #4: + timeUs = 1000000120000 + contents = length 18, hash B64DA059 + input buffer #5: + timeUs = 1000000320000 + contents = length 28, hash FC8EF2BB + input buffer #6: + timeUs = 1000000240000 + contents = length 22, hash BF8A4A9F + input buffer #7: + timeUs = 1000000200000 + contents = length 18, hash D163DF61 + input buffer #8: + timeUs = 1000000280000 + contents = length 18, hash FD82E95 + input buffer #9: + timeUs = 1000000480000 + contents = length 28, hash 44A16E72 + input buffer #10: + timeUs = 1000000400000 + contents = length 22, hash 31C06057 + input buffer #11: + timeUs = 1000000360000 + contents = length 18, hash DC93CC9D + input buffer #12: + timeUs = 1000000440000 + contents = length 18, hash 1B081BD1 + input buffer #13: + timeUs = 1000000640000 + contents = length 28, hash 2700AF + input buffer #14: + timeUs = 1000000560000 + contents = length 22, hash 6D292D94 + input buffer #15: + timeUs = 1000000520000 + contents = length 18, hash D646C05A + input buffer #16: + timeUs = 1000000600000 + contents = length 18, hash 14BB0F8E + input buffer #17: + timeUs = 1000000800000 + contents = length 28, hash 5DE2C2B + input buffer #18: + timeUs = 1000000720000 + contents = length 22, hash 57E81CD0 + input buffer #19: + timeUs = 1000000680000 + contents = length 18, hash E176AD96 + input buffer #20: + timeUs = 1000000760000 + contents = length 18, hash 1FEAFCCA + input buffer #21: + timeUs = 1000000960000 + contents = length 28, hash C163BE68 + input buffer #22: + timeUs = 1000000880000 + contents = length 22, hash B0C92D0B + input buffer #23: + timeUs = 1000000840000 + contents = length 18, hash 3B013BD2 + input buffer #24: + timeUs = 1000000920000 + contents = length 18, hash 79758B06 + input buffer #25: + timeUs = 1000001120000 + contents = length 28, hash F72EB1A3 + input buffer #26: + timeUs = 1000001040000 + contents = length 22, hash 9B881C48 + input buffer #27: + timeUs = 1000001000000 + contents = length 18, hash 4631290E + input buffer #28: + timeUs = 1000001080000 + contents = length 18, hash 84A57842 + input buffer #29: + timeUs = 1000001280000 + contents = length 28, hash E1FCF000 + input buffer #30: + timeUs = 1000001200000 + contents = length 22, hash 359D2D82 + input buffer #31: + timeUs = 1000001160000 + contents = length 18, hash 62DE0FC9 + input buffer #32: + timeUs = 1000001240000 + contents = length 18, hash A1525EFD + input buffer #33: + timeUs = 1000001440000 + contents = length 28, hash 5350E8FA + input buffer #34: + timeUs = 1000001360000 + contents = length 22, hash EE2060DF + input buffer #35: + timeUs = 1000001320000 + contents = length 18, hash 77D95125 + input buffer #36: + timeUs = 1000001400000 + contents = length 18, hash B64DA059 + input buffer #37: + timeUs = 1000001600000 + contents = length 28, hash ED67B37 + input buffer #38: + timeUs = 1000001520000 + contents = length 22, hash 4701711B + input buffer #39: + timeUs = 1000001480000 + contents = length 18, hash D163DF61 + input buffer #40: + timeUs = 1000001560000 + contents = length 18, hash FD82E95 + input buffer #41: + timeUs = 1000001760000 + contents = length 28, hash 44A16E72 + input buffer #42: + timeUs = 1000001680000 + contents = length 22, hash 31C06057 + input buffer #43: + timeUs = 1000001640000 + contents = length 18, hash DC93CC9D + input buffer #44: + timeUs = 1000001720000 + contents = length 18, hash 1B081BD1 + input buffer #45: + timeUs = 1000001920000 + contents = length 28, hash 2700AF + input buffer #46: + timeUs = 1000001840000 + contents = length 22, hash 6D292D94 + input buffer #47: + timeUs = 1000001800000 + contents = length 18, hash D646C05A + input buffer #48: + timeUs = 1000001880000 + contents = length 18, hash 14BB0F8E + input buffer #49: + timeUs = 1000002080000 + contents = length 28, hash 5DE2C2B + input buffer #50: + timeUs = 1000002000000 + contents = length 22, hash 57E81CD0 + input buffer #51: + timeUs = 1000001960000 + contents = length 18, hash E176AD96 + input buffer #52: + timeUs = 1000002040000 + contents = length 18, hash 1FEAFCCA + input buffer #53: + timeUs = 1000002240000 + contents = length 28, hash C163BE68 + input buffer #54: + timeUs = 1000002160000 + contents = length 22, hash B0C92D0B + input buffer #55: + timeUs = 1000002120000 + contents = length 18, hash 3B013BD2 + input buffer #56: + timeUs = 1000002200000 + contents = length 18, hash 79758B06 + input buffer #57: + timeUs = 1000002400000 + contents = length 28, hash F72EB1A3 + input buffer #58: + timeUs = 1000002320000 + contents = length 22, hash 9B881C48 + input buffer #59: + timeUs = 1000002280000 + contents = length 18, hash 4631290E + input buffer #60: + timeUs = 1000002360000 + contents = length 18, hash 84A57842 + input buffer #61: + timeUs = 1000002560000 + contents = length 28, hash E1FCF000 + input buffer #62: + timeUs = 1000002480000 + contents = length 22, hash 359D2D82 + input buffer #63: + timeUs = 1000002440000 + contents = length 18, hash 62DE0FC9 + input buffer #64: + timeUs = 1000002520000 + contents = length 18, hash A1525EFD + input buffer #65: + timeUs = 1000002720000 + contents = length 28, hash 5350E8FA + input buffer #66: + timeUs = 1000002640000 + contents = length 22, hash EE2060DF + input buffer #67: + timeUs = 1000002600000 + contents = length 18, hash 77D95125 + input buffer #68: + timeUs = 1000002680000 + contents = length 18, hash B64DA059 + input buffer #69: + timeUs = 1000002880000 + contents = length 28, hash ED67B37 + input buffer #70: + timeUs = 1000002800000 + contents = length 22, hash 4701711B + input buffer #71: + timeUs = 1000002760000 + contents = length 18, hash D163DF61 + input buffer #72: + timeUs = 1000002840000 + contents = length 18, hash FD82E95 + input buffer #73: + timeUs = 1000003040000 + contents = length 28, hash 44A16E72 + input buffer #74: + timeUs = 1000002960000 + contents = length 22, hash 31C06057 + input buffer #75: + timeUs = 1000002920000 + contents = length 18, hash DC93CC9D + input buffer #76: + timeUs = 1000003000000 + contents = length 18, hash 1B081BD1 + input buffer #77: + timeUs = 1000003200000 + contents = length 28, hash 2700AF + input buffer #78: + timeUs = 1000003120000 + contents = length 22, hash 6D292D94 + input buffer #79: + timeUs = 1000003080000 + contents = length 18, hash D646C05A + input buffer #80: + timeUs = 1000003160000 + contents = length 18, hash 14BB0F8E + input buffer #81: + timeUs = 1000003360000 + contents = length 28, hash 5DE2C2B + input buffer #82: + timeUs = 1000003280000 + contents = length 22, hash 57E81CD0 + input buffer #83: + timeUs = 1000003240000 + contents = length 18, hash E176AD96 + input buffer #84: + timeUs = 1000003320000 + contents = length 18, hash 1FEAFCCA + input buffer #85: + timeUs = 1000003520000 + contents = length 28, hash C163BE68 + input buffer #86: + timeUs = 1000003440000 + contents = length 22, hash B0C92D0B + input buffer #87: + timeUs = 1000003400000 + contents = length 18, hash 3B013BD2 + input buffer #88: + timeUs = 1000003480000 + contents = length 18, hash 79758B06 + input buffer #89: + timeUs = 1000003680000 + contents = length 28, hash F72EB1A3 + input buffer #90: + timeUs = 1000003600000 + contents = length 22, hash 9B881C48 + input buffer #91: + timeUs = 1000003560000 + contents = length 18, hash 4631290E + input buffer #92: + timeUs = 1000003640000 + contents = length 18, hash 84A57842 + input buffer #93: + timeUs = 1000003840000 + contents = length 33, hash AF5CF49E + input buffer #94: + timeUs = 1000003760000 + contents = length 22, hash 359D2D82 + input buffer #95: + timeUs = 1000003720000 + contents = length 18, hash 62DE0FC9 + input buffer #96: + timeUs = 1000003800000 + contents = length 18, hash A1525EFD + input buffer #97: + timeUs = 1000004000000 + contents = length 33, hash F4C6DE46 + input buffer #98: + timeUs = 1000003920000 + contents = length 22, hash EE2060DF + input buffer #99: + timeUs = 1000003880000 + contents = length 18, hash 77D95125 + input buffer #100: + timeUs = 1000003960000 + contents = length 18, hash B64DA059 + input buffer #101: + timeUs = 1000004160000 + contents = length 28, hash ED67B37 + input buffer #102: + timeUs = 1000004080000 + contents = length 22, hash 4701711B + input buffer #103: + timeUs = 1000004040000 + contents = length 18, hash D163DF61 + input buffer #104: + timeUs = 1000004120000 + contents = length 18, hash FD82E95 + input buffer #105: + timeUs = 1000004320000 + contents = length 28, hash 44A16E72 + input buffer #106: + timeUs = 1000004240000 + contents = length 22, hash 31C06057 + input buffer #107: + timeUs = 1000004200000 + contents = length 18, hash DC93CC9D + input buffer #108: + timeUs = 1000004280000 + contents = length 18, hash 1B081BD1 + input buffer #109: + timeUs = 1000004480000 + contents = length 28, hash 2700AF + input buffer #110: + timeUs = 1000004400000 + contents = length 22, hash 6D292D94 + input buffer #111: + timeUs = 1000004360000 + contents = length 18, hash D646C05A + input buffer #112: + timeUs = 1000004440000 + contents = length 18, hash 14BB0F8E + input buffer #113: + timeUs = 1000004640000 + contents = length 27, hash 5292D9E + input buffer #114: + timeUs = 1000004560000 + contents = length 22, hash 57E81CD0 + input buffer #115: + timeUs = 1000004520000 + contents = length 18, hash E176AD96 + input buffer #116: + timeUs = 1000004600000 + contents = length 18, hash 1FEAFCCA + input buffer #117: + timeUs = 1000004800000 + contents = length 26, hash B0CAA4C9 + input buffer #118: + timeUs = 1000004720000 + contents = length 22, hash B0C92D0B + input buffer #119: + timeUs = 1000004680000 + contents = length 18, hash 3B013BD2 + input buffer #120: + timeUs = 1000004760000 + contents = length 18, hash 79758B06 + input buffer #121: + timeUs = 1000004960000 + contents = length 26, hash C63A1445 + input buffer #122: + timeUs = 1000004880000 + contents = length 22, hash 9B881C48 + input buffer #123: + timeUs = 1000004840000 + contents = length 18, hash 4631290E + input buffer #124: + timeUs = 1000004920000 + contents = length 18, hash 84A57842 + input buffer #125: + timeUs = 0 + flags = 4 + contents = length 0, hash 1 + outputBuffers: + count = 125 + output buffer #0: + timeUs = 1000000000000 + size = 5245 + rendered = true + output buffer #1: + timeUs = 1000000160000 + size = 63 + rendered = true + output buffer #2: + timeUs = 1000000080000 + size = 22 + rendered = true + output buffer #3: + timeUs = 1000000040000 + size = 20 + rendered = true + output buffer #4: + timeUs = 1000000120000 + size = 18 + rendered = true + output buffer #5: + timeUs = 1000000320000 + size = 28 + rendered = true + output buffer #6: + timeUs = 1000000240000 + size = 22 + rendered = true + output buffer #7: + timeUs = 1000000200000 + size = 18 + rendered = true + output buffer #8: + timeUs = 1000000280000 + size = 18 + rendered = true + output buffer #9: + timeUs = 1000000480000 + size = 28 + rendered = true + output buffer #10: + timeUs = 1000000400000 + size = 22 + rendered = true + output buffer #11: + timeUs = 1000000360000 + size = 18 + rendered = true + output buffer #12: + timeUs = 1000000440000 + size = 18 + rendered = true + output buffer #13: + timeUs = 1000000640000 + size = 28 + rendered = true + output buffer #14: + timeUs = 1000000560000 + size = 22 + rendered = true + output buffer #15: + timeUs = 1000000520000 + size = 18 + rendered = true + output buffer #16: + timeUs = 1000000600000 + size = 18 + rendered = true + output buffer #17: + timeUs = 1000000800000 + size = 28 + rendered = true + output buffer #18: + timeUs = 1000000720000 + size = 22 + rendered = true + output buffer #19: + timeUs = 1000000680000 + size = 18 + rendered = true + output buffer #20: + timeUs = 1000000760000 + size = 18 + rendered = true + output buffer #21: + timeUs = 1000000960000 + size = 28 + rendered = true + output buffer #22: + timeUs = 1000000880000 + size = 22 + rendered = true + output buffer #23: + timeUs = 1000000840000 + size = 18 + rendered = true + output buffer #24: + timeUs = 1000000920000 + size = 18 + rendered = true + output buffer #25: + timeUs = 1000001120000 + size = 28 + rendered = true + output buffer #26: + timeUs = 1000001040000 + size = 22 + rendered = true + output buffer #27: + timeUs = 1000001000000 + size = 18 + rendered = true + output buffer #28: + timeUs = 1000001080000 + size = 18 + rendered = true + output buffer #29: + timeUs = 1000001280000 + size = 28 + rendered = true + output buffer #30: + timeUs = 1000001200000 + size = 22 + rendered = true + output buffer #31: + timeUs = 1000001160000 + size = 18 + rendered = true + output buffer #32: + timeUs = 1000001240000 + size = 18 + rendered = true + output buffer #33: + timeUs = 1000001440000 + size = 28 + rendered = true + output buffer #34: + timeUs = 1000001360000 + size = 22 + rendered = true + output buffer #35: + timeUs = 1000001320000 + size = 18 + rendered = true + output buffer #36: + timeUs = 1000001400000 + size = 18 + rendered = true + output buffer #37: + timeUs = 1000001600000 + size = 28 + rendered = true + output buffer #38: + timeUs = 1000001520000 + size = 22 + rendered = true + output buffer #39: + timeUs = 1000001480000 + size = 18 + rendered = true + output buffer #40: + timeUs = 1000001560000 + size = 18 + rendered = true + output buffer #41: + timeUs = 1000001760000 + size = 28 + rendered = true + output buffer #42: + timeUs = 1000001680000 + size = 22 + rendered = true + output buffer #43: + timeUs = 1000001640000 + size = 18 + rendered = true + output buffer #44: + timeUs = 1000001720000 + size = 18 + rendered = true + output buffer #45: + timeUs = 1000001920000 + size = 28 + rendered = true + output buffer #46: + timeUs = 1000001840000 + size = 22 + rendered = true + output buffer #47: + timeUs = 1000001800000 + size = 18 + rendered = true + output buffer #48: + timeUs = 1000001880000 + size = 18 + rendered = true + output buffer #49: + timeUs = 1000002080000 + size = 28 + rendered = true + output buffer #50: + timeUs = 1000002000000 + size = 22 + rendered = true + output buffer #51: + timeUs = 1000001960000 + size = 18 + rendered = true + output buffer #52: + timeUs = 1000002040000 + size = 18 + rendered = true + output buffer #53: + timeUs = 1000002240000 + size = 28 + rendered = true + output buffer #54: + timeUs = 1000002160000 + size = 22 + rendered = true + output buffer #55: + timeUs = 1000002120000 + size = 18 + rendered = true + output buffer #56: + timeUs = 1000002200000 + size = 18 + rendered = true + output buffer #57: + timeUs = 1000002400000 + size = 28 + rendered = true + output buffer #58: + timeUs = 1000002320000 + size = 22 + rendered = true + output buffer #59: + timeUs = 1000002280000 + size = 18 + rendered = true + output buffer #60: + timeUs = 1000002360000 + size = 18 + rendered = true + output buffer #61: + timeUs = 1000002560000 + size = 28 + rendered = true + output buffer #62: + timeUs = 1000002480000 + size = 22 + rendered = true + output buffer #63: + timeUs = 1000002440000 + size = 18 + rendered = true + output buffer #64: + timeUs = 1000002520000 + size = 18 + rendered = true + output buffer #65: + timeUs = 1000002720000 + size = 28 + rendered = true + output buffer #66: + timeUs = 1000002640000 + size = 22 + rendered = true + output buffer #67: + timeUs = 1000002600000 + size = 18 + rendered = true + output buffer #68: + timeUs = 1000002680000 + size = 18 + rendered = true + output buffer #69: + timeUs = 1000002880000 + size = 28 + rendered = true + output buffer #70: + timeUs = 1000002800000 + size = 22 + rendered = true + output buffer #71: + timeUs = 1000002760000 + size = 18 + rendered = true + output buffer #72: + timeUs = 1000002840000 + size = 18 + rendered = true + output buffer #73: + timeUs = 1000003040000 + size = 28 + rendered = true + output buffer #74: + timeUs = 1000002960000 + size = 22 + rendered = true + output buffer #75: + timeUs = 1000002920000 + size = 18 + rendered = true + output buffer #76: + timeUs = 1000003000000 + size = 18 + rendered = true + output buffer #77: + timeUs = 1000003200000 + size = 28 + rendered = true + output buffer #78: + timeUs = 1000003120000 + size = 22 + rendered = true + output buffer #79: + timeUs = 1000003080000 + size = 18 + rendered = true + output buffer #80: + timeUs = 1000003160000 + size = 18 + rendered = true + output buffer #81: + timeUs = 1000003360000 + size = 28 + rendered = true + output buffer #82: + timeUs = 1000003280000 + size = 22 + rendered = true + output buffer #83: + timeUs = 1000003240000 + size = 18 + rendered = true + output buffer #84: + timeUs = 1000003320000 + size = 18 + rendered = true + output buffer #85: + timeUs = 1000003520000 + size = 28 + rendered = true + output buffer #86: + timeUs = 1000003440000 + size = 22 + rendered = true + output buffer #87: + timeUs = 1000003400000 + size = 18 + rendered = true + output buffer #88: + timeUs = 1000003480000 + size = 18 + rendered = true + output buffer #89: + timeUs = 1000003680000 + size = 28 + rendered = true + output buffer #90: + timeUs = 1000003600000 + size = 22 + rendered = true + output buffer #91: + timeUs = 1000003560000 + size = 18 + rendered = true + output buffer #92: + timeUs = 1000003640000 + size = 18 + rendered = true + output buffer #93: + timeUs = 1000003840000 + size = 33 + rendered = true + output buffer #94: + timeUs = 1000003760000 + size = 22 + rendered = true + output buffer #95: + timeUs = 1000003720000 + size = 18 + rendered = true + output buffer #96: + timeUs = 1000003800000 + size = 18 + rendered = true + output buffer #97: + timeUs = 1000004000000 + size = 33 + rendered = true + output buffer #98: + timeUs = 1000003920000 + size = 22 + rendered = true + output buffer #99: + timeUs = 1000003880000 + size = 18 + rendered = true + output buffer #100: + timeUs = 1000003960000 + size = 18 + rendered = true + output buffer #101: + timeUs = 1000004160000 + size = 28 + rendered = true + output buffer #102: + timeUs = 1000004080000 + size = 22 + rendered = true + output buffer #103: + timeUs = 1000004040000 + size = 18 + rendered = true + output buffer #104: + timeUs = 1000004120000 + size = 18 + rendered = true + output buffer #105: + timeUs = 1000004320000 + size = 28 + rendered = true + output buffer #106: + timeUs = 1000004240000 + size = 22 + rendered = true + output buffer #107: + timeUs = 1000004200000 + size = 18 + rendered = true + output buffer #108: + timeUs = 1000004280000 + size = 18 + rendered = true + output buffer #109: + timeUs = 1000004480000 + size = 28 + rendered = true + output buffer #110: + timeUs = 1000004400000 + size = 22 + rendered = true + output buffer #111: + timeUs = 1000004360000 + size = 18 + rendered = true + output buffer #112: + timeUs = 1000004440000 + size = 18 + rendered = true + output buffer #113: + timeUs = 1000004640000 + size = 27 + rendered = true + output buffer #114: + timeUs = 1000004560000 + size = 22 + rendered = true + output buffer #115: + timeUs = 1000004520000 + size = 18 + rendered = true + output buffer #116: + timeUs = 1000004600000 + size = 18 + rendered = true + output buffer #117: + timeUs = 1000004800000 + size = 26 + rendered = true + output buffer #118: + timeUs = 1000004720000 + size = 22 + rendered = true + output buffer #119: + timeUs = 1000004680000 + size = 18 + rendered = true + output buffer #120: + timeUs = 1000004760000 + size = 18 + rendered = true + output buffer #121: + timeUs = 1000004960000 + size = 26 + rendered = true + output buffer #122: + timeUs = 1000004880000 + size = 22 + rendered = true + output buffer #123: + timeUs = 1000004840000 + size = 18 + rendered = true + output buffer #124: + timeUs = 1000004920000 + size = 18 + rendered = true +AudioSink: + buffer count = 217 + config: + pcmEncoding = 2 + channelCount = 1 + sampleRate = 44100 + buffer #0: + time = 1000000000000 + data = empty + buffer #1: + time = 1000000023219 + data = empty + buffer #2: + time = 1000000046439 + data = empty + buffer #3: + time = 1000000069659 + data = empty + buffer #4: + time = 1000000092879 + data = empty + buffer #5: + time = 1000000116099 + data = empty + buffer #6: + time = 1000000139319 + data = empty + buffer #7: + time = 1000000162539 + data = empty + buffer #8: + time = 1000000185759 + data = empty + buffer #9: + time = 1000000208979 + data = empty + buffer #10: + time = 1000000232199 + data = empty + buffer #11: + time = 1000000255419 + data = empty + buffer #12: + time = 1000000278639 + data = empty + buffer #13: + time = 1000000301859 + data = empty + buffer #14: + time = 1000000325079 + data = empty + buffer #15: + time = 1000000348299 + data = empty + buffer #16: + time = 1000000371519 + data = empty + buffer #17: + time = 1000000394739 + data = empty + buffer #18: + time = 1000000417959 + data = empty + buffer #19: + time = 1000000441179 + data = empty + buffer #20: + time = 1000000464399 + data = empty + buffer #21: + time = 1000000487619 + data = empty + buffer #22: + time = 1000000510839 + data = empty + buffer #23: + time = 1000000534058 + data = empty + buffer #24: + time = 1000000557278 + data = empty + buffer #25: + time = 1000000580498 + data = empty + buffer #26: + time = 1000000603718 + data = empty + buffer #27: + time = 1000000626938 + data = empty + buffer #28: + time = 1000000650158 + data = empty + buffer #29: + time = 1000000673378 + data = empty + buffer #30: + time = 1000000696598 + data = empty + buffer #31: + time = 1000000719818 + data = empty + buffer #32: + time = 1000000743038 + data = empty + buffer #33: + time = 1000000766258 + data = empty + buffer #34: + time = 1000000789478 + data = empty + buffer #35: + time = 1000000812698 + data = empty + buffer #36: + time = 1000000835918 + data = empty + buffer #37: + time = 1000000859138 + data = empty + buffer #38: + time = 1000000882358 + data = empty + buffer #39: + time = 1000000905578 + data = empty + buffer #40: + time = 1000000928798 + data = empty + buffer #41: + time = 1000000952018 + data = empty + buffer #42: + time = 1000000975238 + data = empty + buffer #43: + time = 1000000998458 + data = empty + buffer #44: + time = 1000001021678 + data = empty + buffer #45: + time = 1000001044897 + data = empty + buffer #46: + time = 1000001068117 + data = empty + buffer #47: + time = 1000001091337 + data = empty + buffer #48: + time = 1000001114557 + data = empty + buffer #49: + time = 1000001137777 + data = empty + buffer #50: + time = 1000001160997 + data = empty + buffer #51: + time = 1000001184217 + data = empty + buffer #52: + time = 1000001207437 + data = empty + buffer #53: + time = 1000001230657 + data = empty + buffer #54: + time = 1000001253877 + data = empty + buffer #55: + time = 1000001277097 + data = empty + buffer #56: + time = 1000001300317 + data = empty + buffer #57: + time = 1000001323537 + data = empty + buffer #58: + time = 1000001346757 + data = empty + buffer #59: + time = 1000001369977 + data = empty + buffer #60: + time = 1000001393197 + data = empty + buffer #61: + time = 1000001416417 + data = empty + buffer #62: + time = 1000001439637 + data = empty + buffer #63: + time = 1000001462857 + data = empty + buffer #64: + time = 1000001486077 + data = empty + buffer #65: + time = 1000001509297 + data = empty + buffer #66: + time = 1000001532517 + data = empty + buffer #67: + time = 1000001555736 + data = empty + buffer #68: + time = 1000001578956 + data = empty + buffer #69: + time = 1000001602176 + data = empty + buffer #70: + time = 1000001625396 + data = empty + buffer #71: + time = 1000001648616 + data = empty + buffer #72: + time = 1000001671836 + data = empty + buffer #73: + time = 1000001695056 + data = empty + buffer #74: + time = 1000001718276 + data = empty + buffer #75: + time = 1000001741496 + data = empty + buffer #76: + time = 1000001764716 + data = empty + buffer #77: + time = 1000001787936 + data = empty + buffer #78: + time = 1000001811156 + data = empty + buffer #79: + time = 1000001834376 + data = empty + buffer #80: + time = 1000001857596 + data = empty + buffer #81: + time = 1000001880816 + data = empty + buffer #82: + time = 1000001904036 + data = empty + buffer #83: + time = 1000001927256 + data = empty + buffer #84: + time = 1000001950476 + data = empty + buffer #85: + time = 1000001973696 + data = empty + buffer #86: + time = 1000001996916 + data = empty + buffer #87: + time = 1000002020136 + data = empty + buffer #88: + time = 1000002043356 + data = empty + buffer #89: + time = 1000002066575 + data = empty + buffer #90: + time = 1000002089795 + data = empty + buffer #91: + time = 1000002113015 + data = empty + buffer #92: + time = 1000002136235 + data = empty + buffer #93: + time = 1000002159455 + data = empty + buffer #94: + time = 1000002182675 + data = empty + buffer #95: + time = 1000002205895 + data = empty + buffer #96: + time = 1000002229115 + data = empty + buffer #97: + time = 1000002252335 + data = empty + buffer #98: + time = 1000002275555 + data = empty + buffer #99: + time = 1000002298775 + data = empty + buffer #100: + time = 1000002321995 + data = empty + buffer #101: + time = 1000002345215 + data = empty + buffer #102: + time = 1000002368435 + data = empty + buffer #103: + time = 1000002391655 + data = empty + buffer #104: + time = 1000002414875 + data = empty + buffer #105: + time = 1000002438095 + data = empty + buffer #106: + time = 1000002461315 + data = empty + buffer #107: + time = 1000002484535 + data = empty + buffer #108: + time = 1000002507755 + data = empty + buffer #109: + time = 1000002530975 + data = empty + buffer #110: + time = 1000002554195 + data = empty + buffer #111: + time = 1000002577414 + data = empty + buffer #112: + time = 1000002600634 + data = empty + buffer #113: + time = 1000002623854 + data = empty + buffer #114: + time = 1000002647074 + data = empty + buffer #115: + time = 1000002670294 + data = empty + buffer #116: + time = 1000002693514 + data = empty + buffer #117: + time = 1000002716734 + data = empty + buffer #118: + time = 1000002739954 + data = empty + buffer #119: + time = 1000002763174 + data = empty + buffer #120: + time = 1000002786394 + data = empty + buffer #121: + time = 1000002809614 + data = empty + buffer #122: + time = 1000002832834 + data = empty + buffer #123: + time = 1000002856054 + data = empty + buffer #124: + time = 1000002879274 + data = empty + buffer #125: + time = 1000002902494 + data = empty + buffer #126: + time = 1000002925714 + data = empty + buffer #127: + time = 1000002948934 + data = empty + buffer #128: + time = 1000002972154 + data = empty + buffer #129: + time = 1000002995374 + data = empty + buffer #130: + time = 1000003018594 + data = empty + buffer #131: + time = 1000003041814 + data = empty + buffer #132: + time = 1000003065034 + data = empty + buffer #133: + time = 1000003088253 + data = empty + buffer #134: + time = 1000003111473 + data = empty + buffer #135: + time = 1000003134693 + data = empty + buffer #136: + time = 1000003157913 + data = empty + buffer #137: + time = 1000003181133 + data = empty + buffer #138: + time = 1000003204353 + data = empty + buffer #139: + time = 1000003227573 + data = empty + buffer #140: + time = 1000003250793 + data = empty + buffer #141: + time = 1000003274013 + data = empty + buffer #142: + time = 1000003297233 + data = empty + buffer #143: + time = 1000003320453 + data = empty + buffer #144: + time = 1000003343673 + data = empty + buffer #145: + time = 1000003366893 + data = empty + buffer #146: + time = 1000003390113 + data = empty + buffer #147: + time = 1000003413333 + data = empty + buffer #148: + time = 1000003436553 + data = empty + buffer #149: + time = 1000003459773 + data = empty + buffer #150: + time = 1000003482993 + data = empty + buffer #151: + time = 1000003506213 + data = empty + buffer #152: + time = 1000003529433 + data = empty + buffer #153: + time = 1000003552653 + data = empty + buffer #154: + time = 1000003575873 + data = empty + buffer #155: + time = 1000003599092 + data = empty + buffer #156: + time = 1000003622312 + data = empty + buffer #157: + time = 1000003645532 + data = empty + buffer #158: + time = 1000003668752 + data = empty + buffer #159: + time = 1000003691972 + data = empty + buffer #160: + time = 1000003715192 + data = empty + buffer #161: + time = 1000003738412 + data = empty + buffer #162: + time = 1000003761632 + data = empty + buffer #163: + time = 1000003784852 + data = empty + buffer #164: + time = 1000003808072 + data = empty + buffer #165: + time = 1000003831292 + data = empty + buffer #166: + time = 1000003854512 + data = empty + buffer #167: + time = 1000003877732 + data = empty + buffer #168: + time = 1000003900952 + data = empty + buffer #169: + time = 1000003924172 + data = empty + buffer #170: + time = 1000003947392 + data = empty + buffer #171: + time = 1000003970612 + data = empty + buffer #172: + time = 1000003993832 + data = empty + buffer #173: + time = 1000004017052 + data = empty + buffer #174: + time = 1000004040272 + data = empty + buffer #175: + time = 1000004063492 + data = empty + buffer #176: + time = 1000004086712 + data = empty + buffer #177: + time = 1000004109931 + data = empty + buffer #178: + time = 1000004133151 + data = empty + buffer #179: + time = 1000004156371 + data = empty + buffer #180: + time = 1000004179591 + data = empty + buffer #181: + time = 1000004202811 + data = empty + buffer #182: + time = 1000004226031 + data = empty + buffer #183: + time = 1000004249251 + data = empty + buffer #184: + time = 1000004272471 + data = empty + buffer #185: + time = 1000004295691 + data = empty + buffer #186: + time = 1000004318911 + data = empty + buffer #187: + time = 1000004342131 + data = empty + buffer #188: + time = 1000004365351 + data = empty + buffer #189: + time = 1000004388571 + data = empty + buffer #190: + time = 1000004411791 + data = empty + buffer #191: + time = 1000004435011 + data = empty + buffer #192: + time = 1000004458231 + data = empty + buffer #193: + time = 1000004481451 + data = empty + buffer #194: + time = 1000004504671 + data = empty + buffer #195: + time = 1000004527891 + data = empty + buffer #196: + time = 1000004551111 + data = empty + buffer #197: + time = 1000004574331 + data = empty + buffer #198: + time = 1000004597551 + data = empty + buffer #199: + time = 1000004620770 + data = empty + buffer #200: + time = 1000004643990 + data = empty + buffer #201: + time = 1000004667210 + data = empty + buffer #202: + time = 1000004690430 + data = empty + buffer #203: + time = 1000004713650 + data = empty + buffer #204: + time = 1000004736870 + data = empty + buffer #205: + time = 1000004760090 + data = empty + buffer #206: + time = 1000004783310 + data = empty + buffer #207: + time = 1000004806530 + data = empty + buffer #208: + time = 1000004829750 + data = empty + buffer #209: + time = 1000004852970 + data = empty + buffer #210: + time = 1000004876190 + data = empty + buffer #211: + time = 1000004899410 + data = empty + buffer #212: + time = 1000004922630 + data = empty + buffer #213: + time = 1000004945850 + data = empty + buffer #214: + time = 1000004969070 + data = empty + buffer #215: + time = 1000004992290 + data = empty + buffer #216: + time = 1000005015510 + data = empty +TextOutput: + Subtitle[0]: + presentationTimeUs = 0 + Cues = [] + Subtitle[1]: + presentationTimeUs = 1000000 + Cue[0]: + text = First subtitle - end overlaps second + lineType = 0 + Subtitle[2]: + presentationTimeUs = 2000000 + Cue[0]: + text = Second subtitle - beginning overlaps first + lineType = 0 + Cue[1]: + text = First subtitle - end overlaps second + lineType = 0 + Subtitle[3]: + presentationTimeUs = 4230000 + Cue[0]: + text = Second subtitle - beginning overlaps first + lineType = 0