Add an API entry point to pass a Composition
PiperOrigin-RevId: 508031337
This commit is contained in:
parent
79b688ef30
commit
45c42ed373
@ -16,6 +16,7 @@
|
||||
|
||||
package com.google.android.exoplayer2.transformer;
|
||||
|
||||
import static com.google.android.exoplayer2.util.Assertions.checkArgument;
|
||||
import static com.google.android.exoplayer2.util.Assertions.checkState;
|
||||
import static java.lang.annotation.ElementType.TYPE_USE;
|
||||
|
||||
@ -674,38 +675,55 @@ public final class Transformer {
|
||||
}
|
||||
|
||||
/**
|
||||
* Starts an asynchronous operation to export the given {@link EditedMediaItem}.
|
||||
* Starts an asynchronous operation to export the given {@link Composition}.
|
||||
*
|
||||
* <p>This method is under implementation. Concatenating audio/video inputs with the same format
|
||||
* and the same {@link Effects} applied is the only supported use case. More precisely:
|
||||
*
|
||||
* <ul>
|
||||
* <li>The {@link Composition} must contain exactly one {@link Composition#sequences
|
||||
* EditedMediaItemSequence} and its {@link Composition#effects Effects} must be {@linkplain
|
||||
* Effects#EMPTY empty}.
|
||||
* <li>The {@link EditedMediaItem} instances in the {@link EditedMediaItemSequence} must:
|
||||
* <ul>
|
||||
* <li>have identical tracks of the same format (after {@linkplain
|
||||
* EditedMediaItem#removeAudio audio} or {@linkplain EditedMediaItem#removeVideo
|
||||
* video} removal and {@linkplain EditedMediaItem#flattenForSlowMotion slow motion
|
||||
* flattening}).
|
||||
* <li>have identical {@link EditedMediaItem#effects Effects} applied.
|
||||
* <li>not represent an image.
|
||||
* <li>be such that either all or none requires transcoding.
|
||||
* </ul>
|
||||
* </ul>
|
||||
*
|
||||
* <p>The export state is notified through the {@linkplain Builder#addListener(Listener)
|
||||
* listener}.
|
||||
*
|
||||
* <p>Concurrent exports on the same Transformer object are not allowed.
|
||||
*
|
||||
* <p>If no custom {@link Muxer.Factory} is specified, the output is an MP4 file.
|
||||
* <p>If no custom {@link Transformer.Builder#setMuxerFactory(Muxer.Factory) Muxer.Factory} is
|
||||
* specified, the output is an MP4 file.
|
||||
*
|
||||
* <p>The output can contain at most one video track and one audio track. Other track types are
|
||||
* ignored. For adaptive bitrate, if no custom {@link AssetLoader.Factory} is specified, the
|
||||
* highest bitrate video and audio streams are selected.
|
||||
* ignored. For adaptive bitrate inputs, if no custom {@link
|
||||
* Transformer.Builder#setAssetLoaderFactory(AssetLoader.Factory) AssetLoader.Factory} is
|
||||
* specified, the highest bitrate video and audio streams are selected.
|
||||
*
|
||||
* <p>If encoding the output's video track is needed, the output frames' dimensions will be
|
||||
* swapped if the height is larger than the width. This is to improve compatibility among
|
||||
* different device encoders.
|
||||
* <p>If exporting the video track entails transcoding, the output frames' dimensions will be
|
||||
* swapped if the output video's height is larger than the width. This is to improve compatibility
|
||||
* among different device encoders.
|
||||
*
|
||||
* @param editedMediaItem The {@link MediaItem} to export, with the transformations to apply to
|
||||
* it.
|
||||
* @param composition The {@link Composition} to export.
|
||||
* @param path The path to the output file.
|
||||
* @throws IllegalArgumentException If the path is invalid.
|
||||
* @throws IllegalStateException If this method is called from the wrong thread.
|
||||
* @throws IllegalStateException If an export is already in progress.
|
||||
*/
|
||||
public void start(EditedMediaItem editedMediaItem, String path) {
|
||||
public void start(Composition composition, String path) {
|
||||
checkArgument(composition.sequences.size() == 1);
|
||||
checkArgument(composition.effects == Effects.EMPTY);
|
||||
verifyApplicationThread();
|
||||
if (transformerInternal != null) {
|
||||
throw new IllegalStateException("There is already a export in progress.");
|
||||
}
|
||||
EditedMediaItemSequence sequence =
|
||||
new EditedMediaItemSequence(ImmutableList.of(editedMediaItem));
|
||||
Composition composition = new Composition(ImmutableList.of(sequence), Effects.EMPTY);
|
||||
checkState(transformerInternal == null, "There is already a export in progress.");
|
||||
|
||||
TransformerInternalListener transformerInternalListener =
|
||||
new TransformerInternalListener(composition);
|
||||
HandlerWrapper applicationHandler = clock.createHandler(looper, /* callback= */ null);
|
||||
@ -729,6 +747,37 @@ public final class Transformer {
|
||||
transformerInternal.start();
|
||||
}
|
||||
|
||||
/**
|
||||
* Starts an asynchronous operation to export the given {@link EditedMediaItem}.
|
||||
*
|
||||
* <p>The export state is notified through the {@linkplain Builder#addListener(Listener)
|
||||
* listener}.
|
||||
*
|
||||
* <p>Concurrent exports on the same Transformer object are not allowed.
|
||||
*
|
||||
* <p>If no custom {@link Transformer.Builder#setMuxerFactory(Muxer.Factory) Muxer.Factory} is
|
||||
* specified, the output is an MP4 file.
|
||||
*
|
||||
* <p>The output can contain at most one video track and one audio track. Other track types are
|
||||
* ignored. For adaptive bitrate inputs, if no custom {@link
|
||||
* Transformer.Builder#setAssetLoaderFactory(AssetLoader.Factory) AssetLoader.Factory} is
|
||||
* specified, the highest bitrate video and audio streams are selected.
|
||||
*
|
||||
* <p>If exporting the video track entails transcoding, the output frames' dimensions will be
|
||||
* swapped if the output video's height is larger than the width. This is to improve compatibility
|
||||
* among different device encoders.
|
||||
*
|
||||
* @param editedMediaItem The {@link EditedMediaItem} to export.
|
||||
* @param path The path to the output file.
|
||||
* @throws IllegalStateException If this method is called from the wrong thread.
|
||||
* @throws IllegalStateException If an export is already in progress.
|
||||
*/
|
||||
public void start(EditedMediaItem editedMediaItem, String path) {
|
||||
EditedMediaItemSequence sequence =
|
||||
new EditedMediaItemSequence(ImmutableList.of(editedMediaItem));
|
||||
start(new Composition(ImmutableList.of(sequence), Effects.EMPTY), path);
|
||||
}
|
||||
|
||||
/**
|
||||
* Starts an asynchronous operation to export the given {@link MediaItem}.
|
||||
*
|
||||
@ -737,19 +786,20 @@ public final class Transformer {
|
||||
*
|
||||
* <p>Concurrent exports on the same Transformer object are not allowed.
|
||||
*
|
||||
* <p>If no custom {@link Muxer.Factory} is specified, the output is an MP4 file.
|
||||
* <p>If no custom {@link Transformer.Builder#setMuxerFactory(Muxer.Factory) Muxer.Factory} is
|
||||
* specified, the output is an MP4 file.
|
||||
*
|
||||
* <p>The output can contain at most one video track and one audio track. Other track types are
|
||||
* ignored. For adaptive bitrate, if no custom {@link AssetLoader.Factory} is specified, the
|
||||
* highest bitrate video and audio streams are selected.
|
||||
* ignored. For adaptive bitrate inputs, if no custom {@link
|
||||
* Transformer.Builder#setAssetLoaderFactory(AssetLoader.Factory) AssetLoader.Factory} is
|
||||
* specified, the highest bitrate video and audio streams are selected.
|
||||
*
|
||||
* <p>If encoding the output's video track is needed, the output frames' dimensions will be
|
||||
* swapped if the height is larger than the width. This is to improve compatibility among
|
||||
* different device encoders.
|
||||
* <p>If exporting the video track entails transcoding, the output frames' dimensions will be
|
||||
* swapped if the output video's height is larger than the width. This is to improve compatibility
|
||||
* among different device encoders.
|
||||
*
|
||||
* @param mediaItem The {@link MediaItem} to export.
|
||||
* @param path The path to the output file.
|
||||
* @throws IllegalArgumentException If the path is invalid.
|
||||
* @throws IllegalArgumentException If the {@link MediaItem} is not supported.
|
||||
* @throws IllegalStateException If this method is called from the wrong thread.
|
||||
* @throws IllegalStateException If an export is already in progress.
|
||||
|
@ -47,6 +47,7 @@ import com.google.android.exoplayer2.C;
|
||||
import com.google.android.exoplayer2.Format;
|
||||
import com.google.android.exoplayer2.MediaItem;
|
||||
import com.google.android.exoplayer2.audio.AudioProcessor;
|
||||
import com.google.android.exoplayer2.audio.SilenceSkippingAudioProcessor;
|
||||
import com.google.android.exoplayer2.audio.SonicAudioProcessor;
|
||||
import com.google.android.exoplayer2.effect.Presentation;
|
||||
import com.google.android.exoplayer2.effect.ScaleToFitTransformation;
|
||||
@ -375,6 +376,53 @@ public final class TransformerEndToEndTest {
|
||||
context, testMuxer, getDumpFileName(FILE_AUDIO_VIDEO + ".48000hz"));
|
||||
}
|
||||
|
||||
@Test
|
||||
public void startTransformation_concatenateMediaItemsWithSameFormat_completesSuccessfully()
|
||||
throws Exception {
|
||||
Transformer transformer = createTransformerBuilder(/* enableFallback= */ false).build();
|
||||
MediaItem mediaItem = MediaItem.fromUri(ASSET_URI_PREFIX + FILE_AUDIO_VIDEO);
|
||||
EditedMediaItem editedMediaItem =
|
||||
new EditedMediaItem.Builder(mediaItem).setEffects(Effects.EMPTY).build();
|
||||
EditedMediaItemSequence editedMediaItemSequence =
|
||||
new EditedMediaItemSequence(ImmutableList.of(editedMediaItem, editedMediaItem));
|
||||
Composition composition =
|
||||
new Composition(ImmutableList.of(editedMediaItemSequence), Effects.EMPTY);
|
||||
|
||||
transformer.start(composition, outputPath);
|
||||
TransformerTestRunner.runLooper(transformer);
|
||||
|
||||
DumpFileAsserts.assertOutput(
|
||||
context, testMuxer, getDumpFileName(FILE_AUDIO_VIDEO + ".concatenated"));
|
||||
}
|
||||
|
||||
@Test
|
||||
public void
|
||||
startTransformation_concatenateMediaItemsWithSameFormatAndEffects_completesSuccessfully()
|
||||
throws Exception {
|
||||
Transformer transformer = createTransformerBuilder(/* enableFallback= */ false).build();
|
||||
MediaItem mediaItem = MediaItem.fromUri(ASSET_URI_PREFIX + FILE_AUDIO_VIDEO);
|
||||
AudioProcessor audioProcessor = new SilenceSkippingAudioProcessor();
|
||||
Effects effects =
|
||||
new Effects(ImmutableList.of(audioProcessor), /* videoEffects= */ ImmutableList.of());
|
||||
// The video track must be removed in order for the export to end. Indeed, the
|
||||
// Robolectric decoder just copies the input buffers to the output and the audio timestamps are
|
||||
// therefore computed based on the encoded samples. As a result, the audio timestamps are much
|
||||
// smaller than they should be and the muxer waits for more audio samples before writing video
|
||||
// samples.
|
||||
EditedMediaItem editedMediaItem =
|
||||
new EditedMediaItem.Builder(mediaItem).setEffects(effects).setRemoveVideo(true).build();
|
||||
EditedMediaItemSequence editedMediaItemSequence =
|
||||
new EditedMediaItemSequence(ImmutableList.of(editedMediaItem, editedMediaItem));
|
||||
Composition composition =
|
||||
new Composition(ImmutableList.of(editedMediaItemSequence), Effects.EMPTY);
|
||||
|
||||
transformer.start(composition, outputPath);
|
||||
TransformerTestRunner.runLooper(transformer);
|
||||
|
||||
DumpFileAsserts.assertOutput(
|
||||
context, testMuxer, getDumpFileName(FILE_AUDIO_VIDEO + ".silence_skipped_concatenated"));
|
||||
}
|
||||
|
||||
@Test
|
||||
public void startTransformation_withMultipleListeners_callsEachOnCompletion() throws Exception {
|
||||
Transformer.Listener mockListener1 = mock(Transformer.Listener.class);
|
||||
|
924
testdata/src/test/assets/transformerdumps/mp4/sample.mp4.concatenated.dump
vendored
Normal file
924
testdata/src/test/assets/transformerdumps/mp4/sample.mp4.concatenated.dump
vendored
Normal file
@ -0,0 +1,924 @@
|
||||
format 0:
|
||||
peakBitrate = 200000
|
||||
id = 2
|
||||
sampleMimeType = audio/mp4a-latm
|
||||
codecs = mp4a.40.2
|
||||
maxInputSize = 294
|
||||
channelCount = 1
|
||||
sampleRate = 44100
|
||||
language = und
|
||||
metadata = entries=[TSSE: description=null: values=[Lavf56.1.0]]
|
||||
initializationData:
|
||||
data = length 2, hash 5F7
|
||||
format 1:
|
||||
id = 1
|
||||
sampleMimeType = video/avc
|
||||
codecs = avc1.64001F
|
||||
maxInputSize = 36722
|
||||
width = 1080
|
||||
height = 720
|
||||
frameRate = 29.970028
|
||||
initializationData:
|
||||
data = length 29, hash 4746B5D9
|
||||
data = length 10, hash 7A0D0F2B
|
||||
sample:
|
||||
trackIndex = 1
|
||||
dataHashCode = -770308242
|
||||
size = 36692
|
||||
isKeyFrame = true
|
||||
presentationTimeUs = 0
|
||||
sample:
|
||||
trackIndex = 1
|
||||
dataHashCode = -732087136
|
||||
size = 5312
|
||||
isKeyFrame = false
|
||||
presentationTimeUs = 66733
|
||||
sample:
|
||||
trackIndex = 1
|
||||
dataHashCode = 468156717
|
||||
size = 599
|
||||
isKeyFrame = false
|
||||
presentationTimeUs = 33366
|
||||
sample:
|
||||
trackIndex = 1
|
||||
dataHashCode = 1150349584
|
||||
size = 7735
|
||||
isKeyFrame = false
|
||||
presentationTimeUs = 200200
|
||||
sample:
|
||||
trackIndex = 1
|
||||
dataHashCode = 1443582006
|
||||
size = 987
|
||||
isKeyFrame = false
|
||||
presentationTimeUs = 133466
|
||||
sample:
|
||||
trackIndex = 1
|
||||
dataHashCode = -310585145
|
||||
size = 673
|
||||
isKeyFrame = false
|
||||
presentationTimeUs = 100100
|
||||
sample:
|
||||
trackIndex = 1
|
||||
dataHashCode = 807460688
|
||||
size = 523
|
||||
isKeyFrame = false
|
||||
presentationTimeUs = 166833
|
||||
sample:
|
||||
trackIndex = 1
|
||||
dataHashCode = 1936487090
|
||||
size = 6061
|
||||
isKeyFrame = false
|
||||
presentationTimeUs = 333666
|
||||
sample:
|
||||
trackIndex = 1
|
||||
dataHashCode = -32297181
|
||||
size = 992
|
||||
isKeyFrame = false
|
||||
presentationTimeUs = 266933
|
||||
sample:
|
||||
trackIndex = 1
|
||||
dataHashCode = 1529616406
|
||||
size = 623
|
||||
isKeyFrame = false
|
||||
presentationTimeUs = 233566
|
||||
sample:
|
||||
trackIndex = 0
|
||||
dataHashCode = 1205768497
|
||||
size = 23
|
||||
isKeyFrame = true
|
||||
presentationTimeUs = 44000
|
||||
sample:
|
||||
trackIndex = 0
|
||||
dataHashCode = 837571078
|
||||
size = 6
|
||||
isKeyFrame = true
|
||||
presentationTimeUs = 67219
|
||||
sample:
|
||||
trackIndex = 0
|
||||
dataHashCode = -1991633045
|
||||
size = 148
|
||||
isKeyFrame = true
|
||||
presentationTimeUs = 90439
|
||||
sample:
|
||||
trackIndex = 0
|
||||
dataHashCode = -822987359
|
||||
size = 189
|
||||
isKeyFrame = true
|
||||
presentationTimeUs = 113659
|
||||
sample:
|
||||
trackIndex = 0
|
||||
dataHashCode = -1141508176
|
||||
size = 205
|
||||
isKeyFrame = true
|
||||
presentationTimeUs = 136879
|
||||
sample:
|
||||
trackIndex = 0
|
||||
dataHashCode = -226971245
|
||||
size = 210
|
||||
isKeyFrame = true
|
||||
presentationTimeUs = 160099
|
||||
sample:
|
||||
trackIndex = 0
|
||||
dataHashCode = -2099636855
|
||||
size = 210
|
||||
isKeyFrame = true
|
||||
presentationTimeUs = 183319
|
||||
sample:
|
||||
trackIndex = 0
|
||||
dataHashCode = 1541550559
|
||||
size = 207
|
||||
isKeyFrame = true
|
||||
presentationTimeUs = 206539
|
||||
sample:
|
||||
trackIndex = 0
|
||||
dataHashCode = 411148001
|
||||
size = 225
|
||||
isKeyFrame = true
|
||||
presentationTimeUs = 229759
|
||||
sample:
|
||||
trackIndex = 0
|
||||
dataHashCode = -897603973
|
||||
size = 215
|
||||
isKeyFrame = true
|
||||
presentationTimeUs = 252979
|
||||
sample:
|
||||
trackIndex = 1
|
||||
dataHashCode = 1949198785
|
||||
size = 421
|
||||
isKeyFrame = false
|
||||
presentationTimeUs = 300300
|
||||
sample:
|
||||
trackIndex = 1
|
||||
dataHashCode = -147880287
|
||||
size = 4899
|
||||
isKeyFrame = false
|
||||
presentationTimeUs = 433766
|
||||
sample:
|
||||
trackIndex = 1
|
||||
dataHashCode = 1369083472
|
||||
size = 568
|
||||
isKeyFrame = false
|
||||
presentationTimeUs = 400400
|
||||
sample:
|
||||
trackIndex = 1
|
||||
dataHashCode = 965782073
|
||||
size = 620
|
||||
isKeyFrame = false
|
||||
presentationTimeUs = 367033
|
||||
sample:
|
||||
trackIndex = 1
|
||||
dataHashCode = -261176150
|
||||
size = 5450
|
||||
isKeyFrame = false
|
||||
presentationTimeUs = 567233
|
||||
sample:
|
||||
trackIndex = 1
|
||||
dataHashCode = -1830836678
|
||||
size = 1051
|
||||
isKeyFrame = false
|
||||
presentationTimeUs = 500500
|
||||
sample:
|
||||
trackIndex = 1
|
||||
dataHashCode = 1767407540
|
||||
size = 874
|
||||
isKeyFrame = false
|
||||
presentationTimeUs = 467133
|
||||
sample:
|
||||
trackIndex = 1
|
||||
dataHashCode = 918440283
|
||||
size = 781
|
||||
isKeyFrame = false
|
||||
presentationTimeUs = 533866
|
||||
sample:
|
||||
trackIndex = 1
|
||||
dataHashCode = -1408463661
|
||||
size = 4725
|
||||
isKeyFrame = false
|
||||
presentationTimeUs = 700700
|
||||
sample:
|
||||
trackIndex = 1
|
||||
dataHashCode = 1569455924
|
||||
size = 1022
|
||||
isKeyFrame = false
|
||||
presentationTimeUs = 633966
|
||||
sample:
|
||||
trackIndex = 0
|
||||
dataHashCode = 1478106136
|
||||
size = 211
|
||||
isKeyFrame = true
|
||||
presentationTimeUs = 276199
|
||||
sample:
|
||||
trackIndex = 0
|
||||
dataHashCode = -1380417145
|
||||
size = 216
|
||||
isKeyFrame = true
|
||||
presentationTimeUs = 299419
|
||||
sample:
|
||||
trackIndex = 0
|
||||
dataHashCode = 780903644
|
||||
size = 229
|
||||
isKeyFrame = true
|
||||
presentationTimeUs = 322639
|
||||
sample:
|
||||
trackIndex = 0
|
||||
dataHashCode = 586204432
|
||||
size = 232
|
||||
isKeyFrame = true
|
||||
presentationTimeUs = 345859
|
||||
sample:
|
||||
trackIndex = 0
|
||||
dataHashCode = -2038771492
|
||||
size = 235
|
||||
isKeyFrame = true
|
||||
presentationTimeUs = 369079
|
||||
sample:
|
||||
trackIndex = 0
|
||||
dataHashCode = -2065161304
|
||||
size = 231
|
||||
isKeyFrame = true
|
||||
presentationTimeUs = 392299
|
||||
sample:
|
||||
trackIndex = 0
|
||||
dataHashCode = 468662933
|
||||
size = 226
|
||||
isKeyFrame = true
|
||||
presentationTimeUs = 415519
|
||||
sample:
|
||||
trackIndex = 0
|
||||
dataHashCode = -358398546
|
||||
size = 216
|
||||
isKeyFrame = true
|
||||
presentationTimeUs = 438739
|
||||
sample:
|
||||
trackIndex = 0
|
||||
dataHashCode = 1767325983
|
||||
size = 229
|
||||
isKeyFrame = true
|
||||
presentationTimeUs = 461959
|
||||
sample:
|
||||
trackIndex = 0
|
||||
dataHashCode = 1093095458
|
||||
size = 219
|
||||
isKeyFrame = true
|
||||
presentationTimeUs = 485179
|
||||
sample:
|
||||
trackIndex = 1
|
||||
dataHashCode = -1723778407
|
||||
size = 790
|
||||
isKeyFrame = false
|
||||
presentationTimeUs = 600600
|
||||
sample:
|
||||
trackIndex = 1
|
||||
dataHashCode = 1578275472
|
||||
size = 610
|
||||
isKeyFrame = false
|
||||
presentationTimeUs = 667333
|
||||
sample:
|
||||
trackIndex = 1
|
||||
dataHashCode = 1989768395
|
||||
size = 2751
|
||||
isKeyFrame = false
|
||||
presentationTimeUs = 834166
|
||||
sample:
|
||||
trackIndex = 1
|
||||
dataHashCode = -1215674502
|
||||
size = 745
|
||||
isKeyFrame = false
|
||||
presentationTimeUs = 767433
|
||||
sample:
|
||||
trackIndex = 1
|
||||
dataHashCode = -814473606
|
||||
size = 621
|
||||
isKeyFrame = false
|
||||
presentationTimeUs = 734066
|
||||
sample:
|
||||
trackIndex = 1
|
||||
dataHashCode = 498370894
|
||||
size = 505
|
||||
isKeyFrame = false
|
||||
presentationTimeUs = 800800
|
||||
sample:
|
||||
trackIndex = 1
|
||||
dataHashCode = -1051506468
|
||||
size = 1268
|
||||
isKeyFrame = false
|
||||
presentationTimeUs = 967633
|
||||
sample:
|
||||
trackIndex = 1
|
||||
dataHashCode = -1025604144
|
||||
size = 880
|
||||
isKeyFrame = false
|
||||
presentationTimeUs = 900900
|
||||
sample:
|
||||
trackIndex = 1
|
||||
dataHashCode = -913586520
|
||||
size = 530
|
||||
isKeyFrame = false
|
||||
presentationTimeUs = 867533
|
||||
sample:
|
||||
trackIndex = 1
|
||||
dataHashCode = 1340459242
|
||||
size = 568
|
||||
isKeyFrame = false
|
||||
presentationTimeUs = 934266
|
||||
sample:
|
||||
trackIndex = 0
|
||||
dataHashCode = 1687543702
|
||||
size = 241
|
||||
isKeyFrame = true
|
||||
presentationTimeUs = 508399
|
||||
sample:
|
||||
trackIndex = 0
|
||||
dataHashCode = 1675188486
|
||||
size = 228
|
||||
isKeyFrame = true
|
||||
presentationTimeUs = 531619
|
||||
sample:
|
||||
trackIndex = 0
|
||||
dataHashCode = 888567545
|
||||
size = 238
|
||||
isKeyFrame = true
|
||||
presentationTimeUs = 554839
|
||||
sample:
|
||||
trackIndex = 0
|
||||
dataHashCode = -439631803
|
||||
size = 234
|
||||
isKeyFrame = true
|
||||
presentationTimeUs = 578058
|
||||
sample:
|
||||
trackIndex = 0
|
||||
dataHashCode = 1606694497
|
||||
size = 231
|
||||
isKeyFrame = true
|
||||
presentationTimeUs = 601278
|
||||
sample:
|
||||
trackIndex = 0
|
||||
dataHashCode = 1747388653
|
||||
size = 217
|
||||
isKeyFrame = true
|
||||
presentationTimeUs = 624498
|
||||
sample:
|
||||
trackIndex = 0
|
||||
dataHashCode = -734560004
|
||||
size = 239
|
||||
isKeyFrame = true
|
||||
presentationTimeUs = 647718
|
||||
sample:
|
||||
trackIndex = 0
|
||||
dataHashCode = -975079040
|
||||
size = 243
|
||||
isKeyFrame = true
|
||||
presentationTimeUs = 670938
|
||||
sample:
|
||||
trackIndex = 0
|
||||
dataHashCode = -1403504710
|
||||
size = 231
|
||||
isKeyFrame = true
|
||||
presentationTimeUs = 694158
|
||||
sample:
|
||||
trackIndex = 0
|
||||
dataHashCode = 379512981
|
||||
size = 230
|
||||
isKeyFrame = true
|
||||
presentationTimeUs = 717378
|
||||
sample:
|
||||
trackIndex = 0
|
||||
dataHashCode = -997198863
|
||||
size = 238
|
||||
isKeyFrame = true
|
||||
presentationTimeUs = 740598
|
||||
sample:
|
||||
trackIndex = 0
|
||||
dataHashCode = 1394492825
|
||||
size = 225
|
||||
isKeyFrame = true
|
||||
presentationTimeUs = 763818
|
||||
sample:
|
||||
trackIndex = 0
|
||||
dataHashCode = -885232755
|
||||
size = 232
|
||||
isKeyFrame = true
|
||||
presentationTimeUs = 787038
|
||||
sample:
|
||||
trackIndex = 0
|
||||
dataHashCode = 260871367
|
||||
size = 243
|
||||
isKeyFrame = true
|
||||
presentationTimeUs = 810258
|
||||
sample:
|
||||
trackIndex = 0
|
||||
dataHashCode = -1505318960
|
||||
size = 232
|
||||
isKeyFrame = true
|
||||
presentationTimeUs = 833478
|
||||
sample:
|
||||
trackIndex = 0
|
||||
dataHashCode = -390625371
|
||||
size = 237
|
||||
isKeyFrame = true
|
||||
presentationTimeUs = 856698
|
||||
sample:
|
||||
trackIndex = 0
|
||||
dataHashCode = 1067950751
|
||||
size = 228
|
||||
isKeyFrame = true
|
||||
presentationTimeUs = 879918
|
||||
sample:
|
||||
trackIndex = 0
|
||||
dataHashCode = -1179436278
|
||||
size = 235
|
||||
isKeyFrame = true
|
||||
presentationTimeUs = 903138
|
||||
sample:
|
||||
trackIndex = 0
|
||||
dataHashCode = 1906607774
|
||||
size = 264
|
||||
isKeyFrame = true
|
||||
presentationTimeUs = 926358
|
||||
sample:
|
||||
trackIndex = 0
|
||||
dataHashCode = -800475828
|
||||
size = 257
|
||||
isKeyFrame = true
|
||||
presentationTimeUs = 949578
|
||||
sample:
|
||||
trackIndex = 0
|
||||
dataHashCode = 1718972977
|
||||
size = 227
|
||||
isKeyFrame = true
|
||||
presentationTimeUs = 972798
|
||||
sample:
|
||||
trackIndex = 1
|
||||
dataHashCode = -770308242
|
||||
size = 36692
|
||||
isKeyFrame = true
|
||||
presentationTimeUs = 1024000
|
||||
sample:
|
||||
trackIndex = 1
|
||||
dataHashCode = -732087136
|
||||
size = 5312
|
||||
isKeyFrame = false
|
||||
presentationTimeUs = 1090733
|
||||
sample:
|
||||
trackIndex = 1
|
||||
dataHashCode = 468156717
|
||||
size = 599
|
||||
isKeyFrame = false
|
||||
presentationTimeUs = 1057366
|
||||
sample:
|
||||
trackIndex = 1
|
||||
dataHashCode = 1150349584
|
||||
size = 7735
|
||||
isKeyFrame = false
|
||||
presentationTimeUs = 1224200
|
||||
sample:
|
||||
trackIndex = 1
|
||||
dataHashCode = 1443582006
|
||||
size = 987
|
||||
isKeyFrame = false
|
||||
presentationTimeUs = 1157466
|
||||
sample:
|
||||
trackIndex = 1
|
||||
dataHashCode = -310585145
|
||||
size = 673
|
||||
isKeyFrame = false
|
||||
presentationTimeUs = 1124100
|
||||
sample:
|
||||
trackIndex = 1
|
||||
dataHashCode = 807460688
|
||||
size = 523
|
||||
isKeyFrame = false
|
||||
presentationTimeUs = 1190833
|
||||
sample:
|
||||
trackIndex = 1
|
||||
dataHashCode = 1936487090
|
||||
size = 6061
|
||||
isKeyFrame = false
|
||||
presentationTimeUs = 1357666
|
||||
sample:
|
||||
trackIndex = 1
|
||||
dataHashCode = -32297181
|
||||
size = 992
|
||||
isKeyFrame = false
|
||||
presentationTimeUs = 1290933
|
||||
sample:
|
||||
trackIndex = 1
|
||||
dataHashCode = 1529616406
|
||||
size = 623
|
||||
isKeyFrame = false
|
||||
presentationTimeUs = 1257566
|
||||
sample:
|
||||
trackIndex = 0
|
||||
dataHashCode = -1120448741
|
||||
size = 227
|
||||
isKeyFrame = true
|
||||
presentationTimeUs = 996018
|
||||
sample:
|
||||
trackIndex = 0
|
||||
dataHashCode = -1718323210
|
||||
size = 235
|
||||
isKeyFrame = true
|
||||
presentationTimeUs = 1019238
|
||||
sample:
|
||||
trackIndex = 0
|
||||
dataHashCode = -422416
|
||||
size = 229
|
||||
isKeyFrame = true
|
||||
presentationTimeUs = 1042458
|
||||
sample:
|
||||
trackIndex = 0
|
||||
dataHashCode = 833757830
|
||||
size = 6
|
||||
isKeyFrame = true
|
||||
presentationTimeUs = 1065678
|
||||
sample:
|
||||
trackIndex = 0
|
||||
dataHashCode = 1205768497
|
||||
size = 23
|
||||
isKeyFrame = true
|
||||
presentationTimeUs = 1068000
|
||||
sample:
|
||||
trackIndex = 0
|
||||
dataHashCode = 837571078
|
||||
size = 6
|
||||
isKeyFrame = true
|
||||
presentationTimeUs = 1091219
|
||||
sample:
|
||||
trackIndex = 0
|
||||
dataHashCode = -1991633045
|
||||
size = 148
|
||||
isKeyFrame = true
|
||||
presentationTimeUs = 1114439
|
||||
sample:
|
||||
trackIndex = 0
|
||||
dataHashCode = -822987359
|
||||
size = 189
|
||||
isKeyFrame = true
|
||||
presentationTimeUs = 1137659
|
||||
sample:
|
||||
trackIndex = 0
|
||||
dataHashCode = -1141508176
|
||||
size = 205
|
||||
isKeyFrame = true
|
||||
presentationTimeUs = 1160879
|
||||
sample:
|
||||
trackIndex = 0
|
||||
dataHashCode = -226971245
|
||||
size = 210
|
||||
isKeyFrame = true
|
||||
presentationTimeUs = 1184099
|
||||
sample:
|
||||
trackIndex = 1
|
||||
dataHashCode = 1949198785
|
||||
size = 421
|
||||
isKeyFrame = false
|
||||
presentationTimeUs = 1324300
|
||||
sample:
|
||||
trackIndex = 1
|
||||
dataHashCode = -147880287
|
||||
size = 4899
|
||||
isKeyFrame = false
|
||||
presentationTimeUs = 1457766
|
||||
sample:
|
||||
trackIndex = 1
|
||||
dataHashCode = 1369083472
|
||||
size = 568
|
||||
isKeyFrame = false
|
||||
presentationTimeUs = 1424400
|
||||
sample:
|
||||
trackIndex = 1
|
||||
dataHashCode = 965782073
|
||||
size = 620
|
||||
isKeyFrame = false
|
||||
presentationTimeUs = 1391033
|
||||
sample:
|
||||
trackIndex = 1
|
||||
dataHashCode = -261176150
|
||||
size = 5450
|
||||
isKeyFrame = false
|
||||
presentationTimeUs = 1591233
|
||||
sample:
|
||||
trackIndex = 1
|
||||
dataHashCode = -1830836678
|
||||
size = 1051
|
||||
isKeyFrame = false
|
||||
presentationTimeUs = 1524500
|
||||
sample:
|
||||
trackIndex = 1
|
||||
dataHashCode = 1767407540
|
||||
size = 874
|
||||
isKeyFrame = false
|
||||
presentationTimeUs = 1491133
|
||||
sample:
|
||||
trackIndex = 1
|
||||
dataHashCode = 918440283
|
||||
size = 781
|
||||
isKeyFrame = false
|
||||
presentationTimeUs = 1557866
|
||||
sample:
|
||||
trackIndex = 0
|
||||
dataHashCode = -2099636855
|
||||
size = 210
|
||||
isKeyFrame = true
|
||||
presentationTimeUs = 1207319
|
||||
sample:
|
||||
trackIndex = 0
|
||||
dataHashCode = 1541550559
|
||||
size = 207
|
||||
isKeyFrame = true
|
||||
presentationTimeUs = 1230539
|
||||
sample:
|
||||
trackIndex = 0
|
||||
dataHashCode = 411148001
|
||||
size = 225
|
||||
isKeyFrame = true
|
||||
presentationTimeUs = 1253759
|
||||
sample:
|
||||
trackIndex = 0
|
||||
dataHashCode = -897603973
|
||||
size = 215
|
||||
isKeyFrame = true
|
||||
presentationTimeUs = 1276979
|
||||
sample:
|
||||
trackIndex = 0
|
||||
dataHashCode = 1478106136
|
||||
size = 211
|
||||
isKeyFrame = true
|
||||
presentationTimeUs = 1300199
|
||||
sample:
|
||||
trackIndex = 0
|
||||
dataHashCode = -1380417145
|
||||
size = 216
|
||||
isKeyFrame = true
|
||||
presentationTimeUs = 1323419
|
||||
sample:
|
||||
trackIndex = 0
|
||||
dataHashCode = 780903644
|
||||
size = 229
|
||||
isKeyFrame = true
|
||||
presentationTimeUs = 1346639
|
||||
sample:
|
||||
trackIndex = 0
|
||||
dataHashCode = 586204432
|
||||
size = 232
|
||||
isKeyFrame = true
|
||||
presentationTimeUs = 1369859
|
||||
sample:
|
||||
trackIndex = 0
|
||||
dataHashCode = -2038771492
|
||||
size = 235
|
||||
isKeyFrame = true
|
||||
presentationTimeUs = 1393079
|
||||
sample:
|
||||
trackIndex = 0
|
||||
dataHashCode = -2065161304
|
||||
size = 231
|
||||
isKeyFrame = true
|
||||
presentationTimeUs = 1416299
|
||||
sample:
|
||||
trackIndex = 1
|
||||
dataHashCode = -1408463661
|
||||
size = 4725
|
||||
isKeyFrame = false
|
||||
presentationTimeUs = 1724700
|
||||
sample:
|
||||
trackIndex = 1
|
||||
dataHashCode = 1569455924
|
||||
size = 1022
|
||||
isKeyFrame = false
|
||||
presentationTimeUs = 1657966
|
||||
sample:
|
||||
trackIndex = 1
|
||||
dataHashCode = -1723778407
|
||||
size = 790
|
||||
isKeyFrame = false
|
||||
presentationTimeUs = 1624600
|
||||
sample:
|
||||
trackIndex = 1
|
||||
dataHashCode = 1578275472
|
||||
size = 610
|
||||
isKeyFrame = false
|
||||
presentationTimeUs = 1691333
|
||||
sample:
|
||||
trackIndex = 1
|
||||
dataHashCode = 1989768395
|
||||
size = 2751
|
||||
isKeyFrame = false
|
||||
presentationTimeUs = 1858166
|
||||
sample:
|
||||
trackIndex = 1
|
||||
dataHashCode = -1215674502
|
||||
size = 745
|
||||
isKeyFrame = false
|
||||
presentationTimeUs = 1791433
|
||||
sample:
|
||||
trackIndex = 1
|
||||
dataHashCode = -814473606
|
||||
size = 621
|
||||
isKeyFrame = false
|
||||
presentationTimeUs = 1758066
|
||||
sample:
|
||||
trackIndex = 1
|
||||
dataHashCode = 498370894
|
||||
size = 505
|
||||
isKeyFrame = false
|
||||
presentationTimeUs = 1824800
|
||||
sample:
|
||||
trackIndex = 0
|
||||
dataHashCode = 468662933
|
||||
size = 226
|
||||
isKeyFrame = true
|
||||
presentationTimeUs = 1439519
|
||||
sample:
|
||||
trackIndex = 0
|
||||
dataHashCode = -358398546
|
||||
size = 216
|
||||
isKeyFrame = true
|
||||
presentationTimeUs = 1462739
|
||||
sample:
|
||||
trackIndex = 0
|
||||
dataHashCode = 1767325983
|
||||
size = 229
|
||||
isKeyFrame = true
|
||||
presentationTimeUs = 1485959
|
||||
sample:
|
||||
trackIndex = 0
|
||||
dataHashCode = 1093095458
|
||||
size = 219
|
||||
isKeyFrame = true
|
||||
presentationTimeUs = 1509179
|
||||
sample:
|
||||
trackIndex = 0
|
||||
dataHashCode = 1687543702
|
||||
size = 241
|
||||
isKeyFrame = true
|
||||
presentationTimeUs = 1532399
|
||||
sample:
|
||||
trackIndex = 0
|
||||
dataHashCode = 1675188486
|
||||
size = 228
|
||||
isKeyFrame = true
|
||||
presentationTimeUs = 1555619
|
||||
sample:
|
||||
trackIndex = 0
|
||||
dataHashCode = 888567545
|
||||
size = 238
|
||||
isKeyFrame = true
|
||||
presentationTimeUs = 1578839
|
||||
sample:
|
||||
trackIndex = 0
|
||||
dataHashCode = -439631803
|
||||
size = 234
|
||||
isKeyFrame = true
|
||||
presentationTimeUs = 1602058
|
||||
sample:
|
||||
trackIndex = 0
|
||||
dataHashCode = 1606694497
|
||||
size = 231
|
||||
isKeyFrame = true
|
||||
presentationTimeUs = 1625278
|
||||
sample:
|
||||
trackIndex = 0
|
||||
dataHashCode = 1747388653
|
||||
size = 217
|
||||
isKeyFrame = true
|
||||
presentationTimeUs = 1648498
|
||||
sample:
|
||||
trackIndex = 1
|
||||
dataHashCode = -1051506468
|
||||
size = 1268
|
||||
isKeyFrame = false
|
||||
presentationTimeUs = 1991633
|
||||
sample:
|
||||
trackIndex = 1
|
||||
dataHashCode = -1025604144
|
||||
size = 880
|
||||
isKeyFrame = false
|
||||
presentationTimeUs = 1924900
|
||||
sample:
|
||||
trackIndex = 1
|
||||
dataHashCode = -913586520
|
||||
size = 530
|
||||
isKeyFrame = false
|
||||
presentationTimeUs = 1891533
|
||||
sample:
|
||||
trackIndex = 1
|
||||
dataHashCode = 1340459242
|
||||
size = 568
|
||||
isKeyFrame = false
|
||||
presentationTimeUs = 1958266
|
||||
sample:
|
||||
trackIndex = 0
|
||||
dataHashCode = -734560004
|
||||
size = 239
|
||||
isKeyFrame = true
|
||||
presentationTimeUs = 1671718
|
||||
sample:
|
||||
trackIndex = 0
|
||||
dataHashCode = -975079040
|
||||
size = 243
|
||||
isKeyFrame = true
|
||||
presentationTimeUs = 1694938
|
||||
sample:
|
||||
trackIndex = 0
|
||||
dataHashCode = -1403504710
|
||||
size = 231
|
||||
isKeyFrame = true
|
||||
presentationTimeUs = 1718158
|
||||
sample:
|
||||
trackIndex = 0
|
||||
dataHashCode = 379512981
|
||||
size = 230
|
||||
isKeyFrame = true
|
||||
presentationTimeUs = 1741378
|
||||
sample:
|
||||
trackIndex = 0
|
||||
dataHashCode = -997198863
|
||||
size = 238
|
||||
isKeyFrame = true
|
||||
presentationTimeUs = 1764598
|
||||
sample:
|
||||
trackIndex = 0
|
||||
dataHashCode = 1394492825
|
||||
size = 225
|
||||
isKeyFrame = true
|
||||
presentationTimeUs = 1787818
|
||||
sample:
|
||||
trackIndex = 0
|
||||
dataHashCode = -885232755
|
||||
size = 232
|
||||
isKeyFrame = true
|
||||
presentationTimeUs = 1811038
|
||||
sample:
|
||||
trackIndex = 0
|
||||
dataHashCode = 260871367
|
||||
size = 243
|
||||
isKeyFrame = true
|
||||
presentationTimeUs = 1834258
|
||||
sample:
|
||||
trackIndex = 0
|
||||
dataHashCode = -1505318960
|
||||
size = 232
|
||||
isKeyFrame = true
|
||||
presentationTimeUs = 1857478
|
||||
sample:
|
||||
trackIndex = 0
|
||||
dataHashCode = -390625371
|
||||
size = 237
|
||||
isKeyFrame = true
|
||||
presentationTimeUs = 1880698
|
||||
sample:
|
||||
trackIndex = 0
|
||||
dataHashCode = 1067950751
|
||||
size = 228
|
||||
isKeyFrame = true
|
||||
presentationTimeUs = 1903918
|
||||
sample:
|
||||
trackIndex = 0
|
||||
dataHashCode = -1179436278
|
||||
size = 235
|
||||
isKeyFrame = true
|
||||
presentationTimeUs = 1927138
|
||||
sample:
|
||||
trackIndex = 0
|
||||
dataHashCode = 1906607774
|
||||
size = 264
|
||||
isKeyFrame = true
|
||||
presentationTimeUs = 1950358
|
||||
sample:
|
||||
trackIndex = 0
|
||||
dataHashCode = -800475828
|
||||
size = 257
|
||||
isKeyFrame = true
|
||||
presentationTimeUs = 1973578
|
||||
sample:
|
||||
trackIndex = 0
|
||||
dataHashCode = 1718972977
|
||||
size = 227
|
||||
isKeyFrame = true
|
||||
presentationTimeUs = 1996798
|
||||
sample:
|
||||
trackIndex = 0
|
||||
dataHashCode = -1120448741
|
||||
size = 227
|
||||
isKeyFrame = true
|
||||
presentationTimeUs = 2020018
|
||||
sample:
|
||||
trackIndex = 0
|
||||
dataHashCode = -1718323210
|
||||
size = 235
|
||||
isKeyFrame = true
|
||||
presentationTimeUs = 2043238
|
||||
sample:
|
||||
trackIndex = 0
|
||||
dataHashCode = -422416
|
||||
size = 229
|
||||
isKeyFrame = true
|
||||
presentationTimeUs = 2066458
|
||||
sample:
|
||||
trackIndex = 0
|
||||
dataHashCode = 833757830
|
||||
size = 6
|
||||
isKeyFrame = true
|
||||
presentationTimeUs = 2089678
|
||||
released = true
|
546
testdata/src/test/assets/transformerdumps/mp4/sample.mp4.silence_skipped_concatenated.dump
vendored
Normal file
546
testdata/src/test/assets/transformerdumps/mp4/sample.mp4.silence_skipped_concatenated.dump
vendored
Normal file
@ -0,0 +1,546 @@
|
||||
format 0:
|
||||
sampleMimeType = audio/mp4a-latm
|
||||
channelCount = 1
|
||||
sampleRate = 44100
|
||||
pcmEncoding = 2
|
||||
sample:
|
||||
trackIndex = 0
|
||||
dataHashCode = 1205768497
|
||||
size = 23
|
||||
isKeyFrame = true
|
||||
presentationTimeUs = 0
|
||||
sample:
|
||||
trackIndex = 0
|
||||
dataHashCode = 837571078
|
||||
size = 6
|
||||
isKeyFrame = true
|
||||
presentationTimeUs = 261
|
||||
sample:
|
||||
trackIndex = 0
|
||||
dataHashCode = -1991633045
|
||||
size = 148
|
||||
isKeyFrame = true
|
||||
presentationTimeUs = 329
|
||||
sample:
|
||||
trackIndex = 0
|
||||
dataHashCode = -822987359
|
||||
size = 189
|
||||
isKeyFrame = true
|
||||
presentationTimeUs = 2007
|
||||
sample:
|
||||
trackIndex = 0
|
||||
dataHashCode = -1141508176
|
||||
size = 205
|
||||
isKeyFrame = true
|
||||
presentationTimeUs = 4150
|
||||
sample:
|
||||
trackIndex = 0
|
||||
dataHashCode = -226971245
|
||||
size = 210
|
||||
isKeyFrame = true
|
||||
presentationTimeUs = 6474
|
||||
sample:
|
||||
trackIndex = 0
|
||||
dataHashCode = -2099636855
|
||||
size = 210
|
||||
isKeyFrame = true
|
||||
presentationTimeUs = 8855
|
||||
sample:
|
||||
trackIndex = 0
|
||||
dataHashCode = 1541550559
|
||||
size = 207
|
||||
isKeyFrame = true
|
||||
presentationTimeUs = 11236
|
||||
sample:
|
||||
trackIndex = 0
|
||||
dataHashCode = 411148001
|
||||
size = 225
|
||||
isKeyFrame = true
|
||||
presentationTimeUs = 13583
|
||||
sample:
|
||||
trackIndex = 0
|
||||
dataHashCode = -897603973
|
||||
size = 215
|
||||
isKeyFrame = true
|
||||
presentationTimeUs = 16134
|
||||
sample:
|
||||
trackIndex = 0
|
||||
dataHashCode = 1478106136
|
||||
size = 211
|
||||
isKeyFrame = true
|
||||
presentationTimeUs = 18572
|
||||
sample:
|
||||
trackIndex = 0
|
||||
dataHashCode = -1380417145
|
||||
size = 216
|
||||
isKeyFrame = true
|
||||
presentationTimeUs = 20964
|
||||
sample:
|
||||
trackIndex = 0
|
||||
dataHashCode = 780903644
|
||||
size = 229
|
||||
isKeyFrame = true
|
||||
presentationTimeUs = 23413
|
||||
sample:
|
||||
trackIndex = 0
|
||||
dataHashCode = 586204432
|
||||
size = 232
|
||||
isKeyFrame = true
|
||||
presentationTimeUs = 26010
|
||||
sample:
|
||||
trackIndex = 0
|
||||
dataHashCode = -2038771492
|
||||
size = 235
|
||||
isKeyFrame = true
|
||||
presentationTimeUs = 28640
|
||||
sample:
|
||||
trackIndex = 0
|
||||
dataHashCode = -2065161304
|
||||
size = 231
|
||||
isKeyFrame = true
|
||||
presentationTimeUs = 31304
|
||||
sample:
|
||||
trackIndex = 0
|
||||
dataHashCode = 468662933
|
||||
size = 226
|
||||
isKeyFrame = true
|
||||
presentationTimeUs = 33923
|
||||
sample:
|
||||
trackIndex = 0
|
||||
dataHashCode = -358398546
|
||||
size = 216
|
||||
isKeyFrame = true
|
||||
presentationTimeUs = 36486
|
||||
sample:
|
||||
trackIndex = 0
|
||||
dataHashCode = 1767325983
|
||||
size = 229
|
||||
isKeyFrame = true
|
||||
presentationTimeUs = 38935
|
||||
sample:
|
||||
trackIndex = 0
|
||||
dataHashCode = 1093095458
|
||||
size = 219
|
||||
isKeyFrame = true
|
||||
presentationTimeUs = 41531
|
||||
sample:
|
||||
trackIndex = 0
|
||||
dataHashCode = 1687543702
|
||||
size = 241
|
||||
isKeyFrame = true
|
||||
presentationTimeUs = 44014
|
||||
sample:
|
||||
trackIndex = 0
|
||||
dataHashCode = 1675188486
|
||||
size = 228
|
||||
isKeyFrame = true
|
||||
presentationTimeUs = 46747
|
||||
sample:
|
||||
trackIndex = 0
|
||||
dataHashCode = 888567545
|
||||
size = 238
|
||||
isKeyFrame = true
|
||||
presentationTimeUs = 49332
|
||||
sample:
|
||||
trackIndex = 0
|
||||
dataHashCode = -439631803
|
||||
size = 234
|
||||
isKeyFrame = true
|
||||
presentationTimeUs = 52030
|
||||
sample:
|
||||
trackIndex = 0
|
||||
dataHashCode = 1606694497
|
||||
size = 231
|
||||
isKeyFrame = true
|
||||
presentationTimeUs = 54683
|
||||
sample:
|
||||
trackIndex = 0
|
||||
dataHashCode = 1747388653
|
||||
size = 217
|
||||
isKeyFrame = true
|
||||
presentationTimeUs = 57302
|
||||
sample:
|
||||
trackIndex = 0
|
||||
dataHashCode = -734560004
|
||||
size = 239
|
||||
isKeyFrame = true
|
||||
presentationTimeUs = 59762
|
||||
sample:
|
||||
trackIndex = 0
|
||||
dataHashCode = -975079040
|
||||
size = 243
|
||||
isKeyFrame = true
|
||||
presentationTimeUs = 62472
|
||||
sample:
|
||||
trackIndex = 0
|
||||
dataHashCode = -1403504710
|
||||
size = 231
|
||||
isKeyFrame = true
|
||||
presentationTimeUs = 65227
|
||||
sample:
|
||||
trackIndex = 0
|
||||
dataHashCode = 379512981
|
||||
size = 230
|
||||
isKeyFrame = true
|
||||
presentationTimeUs = 67846
|
||||
sample:
|
||||
trackIndex = 0
|
||||
dataHashCode = -997198863
|
||||
size = 238
|
||||
isKeyFrame = true
|
||||
presentationTimeUs = 70454
|
||||
sample:
|
||||
trackIndex = 0
|
||||
dataHashCode = 1394492825
|
||||
size = 225
|
||||
isKeyFrame = true
|
||||
presentationTimeUs = 73152
|
||||
sample:
|
||||
trackIndex = 0
|
||||
dataHashCode = -885232755
|
||||
size = 232
|
||||
isKeyFrame = true
|
||||
presentationTimeUs = 75703
|
||||
sample:
|
||||
trackIndex = 0
|
||||
dataHashCode = 260871367
|
||||
size = 243
|
||||
isKeyFrame = true
|
||||
presentationTimeUs = 78334
|
||||
sample:
|
||||
trackIndex = 0
|
||||
dataHashCode = -1505318960
|
||||
size = 232
|
||||
isKeyFrame = true
|
||||
presentationTimeUs = 81089
|
||||
sample:
|
||||
trackIndex = 0
|
||||
dataHashCode = -390625371
|
||||
size = 237
|
||||
isKeyFrame = true
|
||||
presentationTimeUs = 83719
|
||||
sample:
|
||||
trackIndex = 0
|
||||
dataHashCode = 1067950751
|
||||
size = 228
|
||||
isKeyFrame = true
|
||||
presentationTimeUs = 86406
|
||||
sample:
|
||||
trackIndex = 0
|
||||
dataHashCode = -1179436278
|
||||
size = 235
|
||||
isKeyFrame = true
|
||||
presentationTimeUs = 88991
|
||||
sample:
|
||||
trackIndex = 0
|
||||
dataHashCode = 1906607774
|
||||
size = 264
|
||||
isKeyFrame = true
|
||||
presentationTimeUs = 91656
|
||||
sample:
|
||||
trackIndex = 0
|
||||
dataHashCode = -800475828
|
||||
size = 257
|
||||
isKeyFrame = true
|
||||
presentationTimeUs = 94649
|
||||
sample:
|
||||
trackIndex = 0
|
||||
dataHashCode = 1718972977
|
||||
size = 227
|
||||
isKeyFrame = true
|
||||
presentationTimeUs = 97563
|
||||
sample:
|
||||
trackIndex = 0
|
||||
dataHashCode = -1120448741
|
||||
size = 227
|
||||
isKeyFrame = true
|
||||
presentationTimeUs = 100137
|
||||
sample:
|
||||
trackIndex = 0
|
||||
dataHashCode = -1718323210
|
||||
size = 235
|
||||
isKeyFrame = true
|
||||
presentationTimeUs = 102710
|
||||
sample:
|
||||
trackIndex = 0
|
||||
dataHashCode = -422416
|
||||
size = 229
|
||||
isKeyFrame = true
|
||||
presentationTimeUs = 105375
|
||||
sample:
|
||||
trackIndex = 0
|
||||
dataHashCode = 833757830
|
||||
size = 6
|
||||
isKeyFrame = true
|
||||
presentationTimeUs = 107971
|
||||
sample:
|
||||
trackIndex = 0
|
||||
dataHashCode = 1205768497
|
||||
size = 23
|
||||
isKeyFrame = true
|
||||
presentationTimeUs = 108039
|
||||
sample:
|
||||
trackIndex = 0
|
||||
dataHashCode = 837571078
|
||||
size = 6
|
||||
isKeyFrame = true
|
||||
presentationTimeUs = 108300
|
||||
sample:
|
||||
trackIndex = 0
|
||||
dataHashCode = -1991633045
|
||||
size = 148
|
||||
isKeyFrame = true
|
||||
presentationTimeUs = 108368
|
||||
sample:
|
||||
trackIndex = 0
|
||||
dataHashCode = -822987359
|
||||
size = 189
|
||||
isKeyFrame = true
|
||||
presentationTimeUs = 110046
|
||||
sample:
|
||||
trackIndex = 0
|
||||
dataHashCode = -1141508176
|
||||
size = 205
|
||||
isKeyFrame = true
|
||||
presentationTimeUs = 112189
|
||||
sample:
|
||||
trackIndex = 0
|
||||
dataHashCode = -226971245
|
||||
size = 210
|
||||
isKeyFrame = true
|
||||
presentationTimeUs = 114513
|
||||
sample:
|
||||
trackIndex = 0
|
||||
dataHashCode = -2099636855
|
||||
size = 210
|
||||
isKeyFrame = true
|
||||
presentationTimeUs = 116894
|
||||
sample:
|
||||
trackIndex = 0
|
||||
dataHashCode = 1541550559
|
||||
size = 207
|
||||
isKeyFrame = true
|
||||
presentationTimeUs = 119275
|
||||
sample:
|
||||
trackIndex = 0
|
||||
dataHashCode = 411148001
|
||||
size = 225
|
||||
isKeyFrame = true
|
||||
presentationTimeUs = 121622
|
||||
sample:
|
||||
trackIndex = 0
|
||||
dataHashCode = -897603973
|
||||
size = 215
|
||||
isKeyFrame = true
|
||||
presentationTimeUs = 124173
|
||||
sample:
|
||||
trackIndex = 0
|
||||
dataHashCode = 1478106136
|
||||
size = 211
|
||||
isKeyFrame = true
|
||||
presentationTimeUs = 126610
|
||||
sample:
|
||||
trackIndex = 0
|
||||
dataHashCode = -1380417145
|
||||
size = 216
|
||||
isKeyFrame = true
|
||||
presentationTimeUs = 129003
|
||||
sample:
|
||||
trackIndex = 0
|
||||
dataHashCode = 780903644
|
||||
size = 229
|
||||
isKeyFrame = true
|
||||
presentationTimeUs = 131452
|
||||
sample:
|
||||
trackIndex = 0
|
||||
dataHashCode = 586204432
|
||||
size = 232
|
||||
isKeyFrame = true
|
||||
presentationTimeUs = 134048
|
||||
sample:
|
||||
trackIndex = 0
|
||||
dataHashCode = -2038771492
|
||||
size = 235
|
||||
isKeyFrame = true
|
||||
presentationTimeUs = 136679
|
||||
sample:
|
||||
trackIndex = 0
|
||||
dataHashCode = -2065161304
|
||||
size = 231
|
||||
isKeyFrame = true
|
||||
presentationTimeUs = 139343
|
||||
sample:
|
||||
trackIndex = 0
|
||||
dataHashCode = 468662933
|
||||
size = 226
|
||||
isKeyFrame = true
|
||||
presentationTimeUs = 141962
|
||||
sample:
|
||||
trackIndex = 0
|
||||
dataHashCode = -358398546
|
||||
size = 216
|
||||
isKeyFrame = true
|
||||
presentationTimeUs = 144524
|
||||
sample:
|
||||
trackIndex = 0
|
||||
dataHashCode = 1767325983
|
||||
size = 229
|
||||
isKeyFrame = true
|
||||
presentationTimeUs = 146973
|
||||
sample:
|
||||
trackIndex = 0
|
||||
dataHashCode = 1093095458
|
||||
size = 219
|
||||
isKeyFrame = true
|
||||
presentationTimeUs = 149570
|
||||
sample:
|
||||
trackIndex = 0
|
||||
dataHashCode = 1687543702
|
||||
size = 241
|
||||
isKeyFrame = true
|
||||
presentationTimeUs = 152053
|
||||
sample:
|
||||
trackIndex = 0
|
||||
dataHashCode = 1675188486
|
||||
size = 228
|
||||
isKeyFrame = true
|
||||
presentationTimeUs = 154785
|
||||
sample:
|
||||
trackIndex = 0
|
||||
dataHashCode = 888567545
|
||||
size = 238
|
||||
isKeyFrame = true
|
||||
presentationTimeUs = 157370
|
||||
sample:
|
||||
trackIndex = 0
|
||||
dataHashCode = -439631803
|
||||
size = 234
|
||||
isKeyFrame = true
|
||||
presentationTimeUs = 160069
|
||||
sample:
|
||||
trackIndex = 0
|
||||
dataHashCode = 1606694497
|
||||
size = 231
|
||||
isKeyFrame = true
|
||||
presentationTimeUs = 162722
|
||||
sample:
|
||||
trackIndex = 0
|
||||
dataHashCode = 1747388653
|
||||
size = 217
|
||||
isKeyFrame = true
|
||||
presentationTimeUs = 165341
|
||||
sample:
|
||||
trackIndex = 0
|
||||
dataHashCode = -734560004
|
||||
size = 239
|
||||
isKeyFrame = true
|
||||
presentationTimeUs = 167801
|
||||
sample:
|
||||
trackIndex = 0
|
||||
dataHashCode = -975079040
|
||||
size = 243
|
||||
isKeyFrame = true
|
||||
presentationTimeUs = 170511
|
||||
sample:
|
||||
trackIndex = 0
|
||||
dataHashCode = -1403504710
|
||||
size = 231
|
||||
isKeyFrame = true
|
||||
presentationTimeUs = 173266
|
||||
sample:
|
||||
trackIndex = 0
|
||||
dataHashCode = 379512981
|
||||
size = 230
|
||||
isKeyFrame = true
|
||||
presentationTimeUs = 175885
|
||||
sample:
|
||||
trackIndex = 0
|
||||
dataHashCode = -997198863
|
||||
size = 238
|
||||
isKeyFrame = true
|
||||
presentationTimeUs = 178493
|
||||
sample:
|
||||
trackIndex = 0
|
||||
dataHashCode = 1394492825
|
||||
size = 225
|
||||
isKeyFrame = true
|
||||
presentationTimeUs = 181191
|
||||
sample:
|
||||
trackIndex = 0
|
||||
dataHashCode = -885232755
|
||||
size = 232
|
||||
isKeyFrame = true
|
||||
presentationTimeUs = 183742
|
||||
sample:
|
||||
trackIndex = 0
|
||||
dataHashCode = 260871367
|
||||
size = 243
|
||||
isKeyFrame = true
|
||||
presentationTimeUs = 186372
|
||||
sample:
|
||||
trackIndex = 0
|
||||
dataHashCode = -1505318960
|
||||
size = 232
|
||||
isKeyFrame = true
|
||||
presentationTimeUs = 189127
|
||||
sample:
|
||||
trackIndex = 0
|
||||
dataHashCode = -390625371
|
||||
size = 237
|
||||
isKeyFrame = true
|
||||
presentationTimeUs = 191758
|
||||
sample:
|
||||
trackIndex = 0
|
||||
dataHashCode = 1067950751
|
||||
size = 228
|
||||
isKeyFrame = true
|
||||
presentationTimeUs = 194445
|
||||
sample:
|
||||
trackIndex = 0
|
||||
dataHashCode = -1179436278
|
||||
size = 235
|
||||
isKeyFrame = true
|
||||
presentationTimeUs = 197030
|
||||
sample:
|
||||
trackIndex = 0
|
||||
dataHashCode = 1906607774
|
||||
size = 264
|
||||
isKeyFrame = true
|
||||
presentationTimeUs = 199694
|
||||
sample:
|
||||
trackIndex = 0
|
||||
dataHashCode = -800475828
|
||||
size = 257
|
||||
isKeyFrame = true
|
||||
presentationTimeUs = 202688
|
||||
sample:
|
||||
trackIndex = 0
|
||||
dataHashCode = 1718972977
|
||||
size = 227
|
||||
isKeyFrame = true
|
||||
presentationTimeUs = 205601
|
||||
sample:
|
||||
trackIndex = 0
|
||||
dataHashCode = -1120448741
|
||||
size = 227
|
||||
isKeyFrame = true
|
||||
presentationTimeUs = 208175
|
||||
sample:
|
||||
trackIndex = 0
|
||||
dataHashCode = -1718323210
|
||||
size = 235
|
||||
isKeyFrame = true
|
||||
presentationTimeUs = 210749
|
||||
sample:
|
||||
trackIndex = 0
|
||||
dataHashCode = -422416
|
||||
size = 229
|
||||
isKeyFrame = true
|
||||
presentationTimeUs = 213413
|
||||
sample:
|
||||
trackIndex = 0
|
||||
dataHashCode = 833757830
|
||||
size = 6
|
||||
isKeyFrame = true
|
||||
presentationTimeUs = 216010
|
||||
released = true
|
Loading…
x
Reference in New Issue
Block a user