Merge pull request #419 from v-novaltd:vnova-104
This commit is contained in:
parent
72013446c4
commit
c002ff6a6f
@ -159,7 +159,7 @@ public final class Ac3Reader implements ElementaryStreamReader {
|
|||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void packetFinished() {
|
public void packetFinished(boolean isEndOfInput) {
|
||||||
// Do nothing.
|
// Do nothing.
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -161,7 +161,7 @@ public final class Ac4Reader implements ElementaryStreamReader {
|
|||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void packetFinished() {
|
public void packetFinished(boolean isEndOfInput) {
|
||||||
// Do nothing.
|
// Do nothing.
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -194,7 +194,7 @@ public final class AdtsReader implements ElementaryStreamReader {
|
|||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void packetFinished() {
|
public void packetFinished(boolean isEndOfInput) {
|
||||||
// Do nothing.
|
// Do nothing.
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -215,7 +215,7 @@ public final class DtsReader implements ElementaryStreamReader {
|
|||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void packetFinished() {
|
public void packetFinished(boolean isEndOfInput) {
|
||||||
// Do nothing.
|
// Do nothing.
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -86,7 +86,7 @@ public final class DvbSubtitleReader implements ElementaryStreamReader {
|
|||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void packetFinished() {
|
public void packetFinished(boolean isEndOfInput) {
|
||||||
if (writingSample) {
|
if (writingSample) {
|
||||||
// packetStarted method must be called before reading sample.
|
// packetStarted method must be called before reading sample.
|
||||||
checkState(sampleTimeUs != C.TIME_UNSET);
|
checkState(sampleTimeUs != C.TIME_UNSET);
|
||||||
|
@ -67,5 +67,5 @@ public interface ElementaryStreamReader {
|
|||||||
void consume(ParsableByteArray data) throws ParserException;
|
void consume(ParsableByteArray data) throws ParserException;
|
||||||
|
|
||||||
/** Called when a packet ends. */
|
/** Called when a packet ends. */
|
||||||
void packetFinished();
|
void packetFinished(boolean isEndOfInput);
|
||||||
}
|
}
|
||||||
|
@ -217,8 +217,13 @@ public final class H262Reader implements ElementaryStreamReader {
|
|||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void packetFinished() {
|
public void packetFinished(boolean isEndOfInput) {
|
||||||
// Do nothing.
|
checkStateNotNull(output); // Asserts that createTracks has been called.
|
||||||
|
if (isEndOfInput) {
|
||||||
|
@C.BufferFlags int flags = sampleIsKeyframe ? C.BUFFER_FLAG_KEY_FRAME : 0;
|
||||||
|
int size = (int) (totalBytesWritten - samplePosition);
|
||||||
|
output.sampleMetadata(sampleTimeUs, flags, size, /* offset= */ 0, /* cryptoData= */ null);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -216,8 +216,13 @@ public final class H263Reader implements ElementaryStreamReader {
|
|||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void packetFinished() {
|
public void packetFinished(boolean isEndOfInput) {
|
||||||
// Do nothing.
|
// Assert that createTracks has been called.
|
||||||
|
checkStateNotNull(sampleReader);
|
||||||
|
if (isEndOfInput) {
|
||||||
|
sampleReader.onDataEnd(totalBytesWritten, /* bytesWrittenPastPosition= */ 0, hasOutputFormat);
|
||||||
|
sampleReader.reset();
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -167,8 +167,11 @@ public final class H264Reader implements ElementaryStreamReader {
|
|||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void packetFinished() {
|
public void packetFinished(boolean isEndOfInput) {
|
||||||
// Do nothing.
|
assertTracksCreated();
|
||||||
|
if (isEndOfInput) {
|
||||||
|
sampleReader.end(totalBytesWritten);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@RequiresNonNull("sampleReader")
|
@RequiresNonNull("sampleReader")
|
||||||
@ -508,6 +511,13 @@ public final class H264Reader implements ElementaryStreamReader {
|
|||||||
output.sampleMetadata(sampleTimeUs, flags, size, offset, null);
|
output.sampleMetadata(sampleTimeUs, flags, size, offset, null);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public void end(long position) {
|
||||||
|
// Output a final sample with the NAL units currently held
|
||||||
|
nalUnitStartPosition = position;
|
||||||
|
outputSample(/* offset= */ 0);
|
||||||
|
readingSample = false;
|
||||||
|
}
|
||||||
|
|
||||||
private static final class SliceHeaderData {
|
private static final class SliceHeaderData {
|
||||||
|
|
||||||
private static final int SLICE_TYPE_I = 2;
|
private static final int SLICE_TYPE_I = 2;
|
||||||
|
@ -172,8 +172,11 @@ public final class H265Reader implements ElementaryStreamReader {
|
|||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void packetFinished() {
|
public void packetFinished(boolean isEndOfInput) {
|
||||||
// Do nothing.
|
assertTracksCreated();
|
||||||
|
if (isEndOfInput) {
|
||||||
|
sampleReader.end(totalBytesWritten);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@RequiresNonNull("sampleReader")
|
@RequiresNonNull("sampleReader")
|
||||||
@ -383,6 +386,13 @@ public final class H265Reader implements ElementaryStreamReader {
|
|||||||
output.sampleMetadata(sampleTimeUs, flags, size, offset, null);
|
output.sampleMetadata(sampleTimeUs, flags, size, offset, null);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public void end(long position) {
|
||||||
|
// Output a final sample with the NAL units currently held
|
||||||
|
nalUnitPosition = position;
|
||||||
|
outputSample(/* offset= */ 0);
|
||||||
|
readingSample = false;
|
||||||
|
}
|
||||||
|
|
||||||
/** Returns whether a NAL unit type is one that occurs before any VCL NAL units in a sample. */
|
/** Returns whether a NAL unit type is one that occurs before any VCL NAL units in a sample. */
|
||||||
private static boolean isPrefixNalUnit(int nalUnitType) {
|
private static boolean isPrefixNalUnit(int nalUnitType) {
|
||||||
return (VPS_NUT <= nalUnitType && nalUnitType <= AUD_NUT) || nalUnitType == PREFIX_SEI_NUT;
|
return (VPS_NUT <= nalUnitType && nalUnitType <= AUD_NUT) || nalUnitType == PREFIX_SEI_NUT;
|
||||||
|
@ -120,7 +120,7 @@ public final class Id3Reader implements ElementaryStreamReader {
|
|||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void packetFinished() {
|
public void packetFinished(boolean isEndOfInput) {
|
||||||
Assertions.checkStateNotNull(output); // Asserts that createTracks has been called.
|
Assertions.checkStateNotNull(output); // Asserts that createTracks has been called.
|
||||||
if (!writingSample || sampleSize == 0 || sampleBytesRead != sampleSize) {
|
if (!writingSample || sampleSize == 0 || sampleBytesRead != sampleSize) {
|
||||||
return;
|
return;
|
||||||
|
@ -153,7 +153,7 @@ public final class LatmReader implements ElementaryStreamReader {
|
|||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void packetFinished() {
|
public void packetFinished(boolean isEndOfInput) {
|
||||||
// Do nothing.
|
// Do nothing.
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -119,7 +119,7 @@ public final class MpegAudioReader implements ElementaryStreamReader {
|
|||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void packetFinished() {
|
public void packetFinished(boolean isEndOfInput) {
|
||||||
// Do nothing.
|
// Do nothing.
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -107,7 +107,8 @@ public final class PesReader implements TsPayloadReader {
|
|||||||
Log.w(TAG, "Unexpected start indicator: expected " + payloadSize + " more bytes");
|
Log.w(TAG, "Unexpected start indicator: expected " + payloadSize + " more bytes");
|
||||||
}
|
}
|
||||||
// Either way, notify the reader that it has now finished.
|
// Either way, notify the reader that it has now finished.
|
||||||
reader.packetFinished();
|
boolean isEndOfInput = (data.limit() == 0);
|
||||||
|
reader.packetFinished(isEndOfInput);
|
||||||
break;
|
break;
|
||||||
default:
|
default:
|
||||||
throw new IllegalStateException();
|
throw new IllegalStateException();
|
||||||
@ -147,7 +148,8 @@ public final class PesReader implements TsPayloadReader {
|
|||||||
if (payloadSize != C.LENGTH_UNSET) {
|
if (payloadSize != C.LENGTH_UNSET) {
|
||||||
payloadSize -= readLength;
|
payloadSize -= readLength;
|
||||||
if (payloadSize == 0) {
|
if (payloadSize == 0) {
|
||||||
reader.packetFinished();
|
// There are bytes left in data, see above, so this is not the end of input
|
||||||
|
reader.packetFinished(/* isEndOfInput= */ false);
|
||||||
setState(STATE_READING_HEADER);
|
setState(STATE_READING_HEADER);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -357,7 +357,7 @@ public final class PsExtractor implements Extractor {
|
|||||||
pesPayloadReader.packetStarted(timeUs, TsPayloadReader.FLAG_DATA_ALIGNMENT_INDICATOR);
|
pesPayloadReader.packetStarted(timeUs, TsPayloadReader.FLAG_DATA_ALIGNMENT_INDICATOR);
|
||||||
pesPayloadReader.consume(data);
|
pesPayloadReader.consume(data);
|
||||||
// We always have complete PES packets with program stream.
|
// We always have complete PES packets with program stream.
|
||||||
pesPayloadReader.packetFinished();
|
pesPayloadReader.packetFinished(/* isEndOfInput= */ false);
|
||||||
}
|
}
|
||||||
|
|
||||||
private void parseHeader() {
|
private void parseHeader() {
|
||||||
|
@ -447,6 +447,13 @@ public final class TsExtractor implements Extractor {
|
|||||||
}
|
}
|
||||||
|
|
||||||
if (!fillBufferWithAtLeastOnePacket(input)) {
|
if (!fillBufferWithAtLeastOnePacket(input)) {
|
||||||
|
// Send a synthesised empty pusi to allow for packetFinished to be triggered on the last unit.
|
||||||
|
for (int i = 0; i < tsPayloadReaders.size(); i++) {
|
||||||
|
TsPayloadReader payloadReader = tsPayloadReaders.valueAt(i);
|
||||||
|
if (payloadReader instanceof PesReader) {
|
||||||
|
payloadReader.consume(new ParsableByteArray(), FLAG_PAYLOAD_UNIT_START_INDICATOR);
|
||||||
|
}
|
||||||
|
}
|
||||||
return RESULT_END_OF_INPUT;
|
return RESULT_END_OF_INPUT;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -545,7 +545,7 @@ public final class TsExtractorTest {
|
|||||||
public void consume(ParsableByteArray data) {}
|
public void consume(ParsableByteArray data) {}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void packetFinished() {
|
public void packetFinished(boolean isEndOfInput) {
|
||||||
packetsRead++;
|
packetsRead++;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -8,7 +8,7 @@ seekMap:
|
|||||||
numberOfTracks = 1
|
numberOfTracks = 1
|
||||||
track 256:
|
track 256:
|
||||||
total output bytes = 39002
|
total output bytes = 39002
|
||||||
sample count = 24
|
sample count = 25
|
||||||
format 0:
|
format 0:
|
||||||
id = 1/256
|
id = 1/256
|
||||||
sampleMimeType = video/mp4v-es
|
sampleMimeType = video/mp4v-es
|
||||||
@ -112,4 +112,8 @@ track 256:
|
|||||||
time = 920000
|
time = 920000
|
||||||
flags = 0
|
flags = 0
|
||||||
data = length 222, hash 7E77BF79
|
data = length 222, hash 7E77BF79
|
||||||
|
sample 24:
|
||||||
|
time = 960000
|
||||||
|
flags = 1
|
||||||
|
data = length 11769, hash D94C80C0
|
||||||
tracksEnded = true
|
tracksEnded = true
|
||||||
|
@ -8,7 +8,7 @@ seekMap:
|
|||||||
numberOfTracks = 1
|
numberOfTracks = 1
|
||||||
track 256:
|
track 256:
|
||||||
total output bytes = 27354
|
total output bytes = 27354
|
||||||
sample count = 18
|
sample count = 19
|
||||||
format 0:
|
format 0:
|
||||||
id = 1/256
|
id = 1/256
|
||||||
sampleMimeType = video/mp4v-es
|
sampleMimeType = video/mp4v-es
|
||||||
@ -88,4 +88,8 @@ track 256:
|
|||||||
time = 920000
|
time = 920000
|
||||||
flags = 0
|
flags = 0
|
||||||
data = length 222, hash 7E77BF79
|
data = length 222, hash 7E77BF79
|
||||||
|
sample 18:
|
||||||
|
time = 960000
|
||||||
|
flags = 1
|
||||||
|
data = length 11769, hash D94C80C0
|
||||||
tracksEnded = true
|
tracksEnded = true
|
||||||
|
@ -8,7 +8,7 @@ seekMap:
|
|||||||
numberOfTracks = 1
|
numberOfTracks = 1
|
||||||
track 256:
|
track 256:
|
||||||
total output bytes = 13592
|
total output bytes = 13592
|
||||||
sample count = 8
|
sample count = 9
|
||||||
format 0:
|
format 0:
|
||||||
id = 1/256
|
id = 1/256
|
||||||
sampleMimeType = video/mp4v-es
|
sampleMimeType = video/mp4v-es
|
||||||
@ -48,4 +48,8 @@ track 256:
|
|||||||
time = 920000
|
time = 920000
|
||||||
flags = 0
|
flags = 0
|
||||||
data = length 222, hash 7E77BF79
|
data = length 222, hash 7E77BF79
|
||||||
|
sample 8:
|
||||||
|
time = 960000
|
||||||
|
flags = 1
|
||||||
|
data = length 11769, hash D94C80C0
|
||||||
tracksEnded = true
|
tracksEnded = true
|
||||||
|
@ -5,7 +5,7 @@ seekMap:
|
|||||||
numberOfTracks = 1
|
numberOfTracks = 1
|
||||||
track 256:
|
track 256:
|
||||||
total output bytes = 39002
|
total output bytes = 39002
|
||||||
sample count = 24
|
sample count = 25
|
||||||
format 0:
|
format 0:
|
||||||
id = 1/256
|
id = 1/256
|
||||||
sampleMimeType = video/mp4v-es
|
sampleMimeType = video/mp4v-es
|
||||||
@ -109,4 +109,8 @@ track 256:
|
|||||||
time = 920000
|
time = 920000
|
||||||
flags = 0
|
flags = 0
|
||||||
data = length 222, hash 7E77BF79
|
data = length 222, hash 7E77BF79
|
||||||
|
sample 24:
|
||||||
|
time = 960000
|
||||||
|
flags = 1
|
||||||
|
data = length 11769, hash D94C80C0
|
||||||
tracksEnded = true
|
tracksEnded = true
|
||||||
|
@ -8,7 +8,7 @@ seekMap:
|
|||||||
numberOfTracks = 2
|
numberOfTracks = 2
|
||||||
track 256:
|
track 256:
|
||||||
total output bytes = 13650
|
total output bytes = 13650
|
||||||
sample count = 2
|
sample count = 3
|
||||||
format 0:
|
format 0:
|
||||||
id = 1/256
|
id = 1/256
|
||||||
sampleMimeType = video/avc
|
sampleMimeType = video/avc
|
||||||
@ -29,6 +29,10 @@ track 256:
|
|||||||
time = 100100
|
time = 100100
|
||||||
flags = 0
|
flags = 0
|
||||||
data = length 813, hash 99F7B4FA
|
data = length 813, hash 99F7B4FA
|
||||||
|
sample 2:
|
||||||
|
time = 133466
|
||||||
|
flags = 0
|
||||||
|
data = length 442, hash A7367ECF
|
||||||
track 257:
|
track 257:
|
||||||
total output bytes = 18432
|
total output bytes = 18432
|
||||||
sample count = 9
|
sample count = 9
|
||||||
|
@ -5,7 +5,7 @@ seekMap:
|
|||||||
numberOfTracks = 2
|
numberOfTracks = 2
|
||||||
track 256:
|
track 256:
|
||||||
total output bytes = 13650
|
total output bytes = 13650
|
||||||
sample count = 2
|
sample count = 3
|
||||||
format 0:
|
format 0:
|
||||||
id = 1/256
|
id = 1/256
|
||||||
sampleMimeType = video/avc
|
sampleMimeType = video/avc
|
||||||
@ -26,6 +26,10 @@ track 256:
|
|||||||
time = 100100
|
time = 100100
|
||||||
flags = 0
|
flags = 0
|
||||||
data = length 813, hash 99F7B4FA
|
data = length 813, hash 99F7B4FA
|
||||||
|
sample 2:
|
||||||
|
time = 133466
|
||||||
|
flags = 0
|
||||||
|
data = length 442, hash A7367ECF
|
||||||
track 257:
|
track 257:
|
||||||
total output bytes = 18432
|
total output bytes = 18432
|
||||||
sample count = 9
|
sample count = 9
|
||||||
|
@ -8,7 +8,7 @@ seekMap:
|
|||||||
numberOfTracks = 2
|
numberOfTracks = 2
|
||||||
track 256:
|
track 256:
|
||||||
total output bytes = 13650
|
total output bytes = 13650
|
||||||
sample count = 2
|
sample count = 3
|
||||||
format 0:
|
format 0:
|
||||||
id = 1/256
|
id = 1/256
|
||||||
sampleMimeType = video/avc
|
sampleMimeType = video/avc
|
||||||
@ -29,6 +29,10 @@ track 256:
|
|||||||
time = 100100
|
time = 100100
|
||||||
flags = 0
|
flags = 0
|
||||||
data = length 813, hash 99F7B4FA
|
data = length 813, hash 99F7B4FA
|
||||||
|
sample 2:
|
||||||
|
time = 133466
|
||||||
|
flags = 0
|
||||||
|
data = length 442, hash A7367ECF
|
||||||
track 257:
|
track 257:
|
||||||
total output bytes = 5015
|
total output bytes = 5015
|
||||||
sample count = 4
|
sample count = 4
|
||||||
|
@ -8,7 +8,7 @@ seekMap:
|
|||||||
numberOfTracks = 2
|
numberOfTracks = 2
|
||||||
track 256:
|
track 256:
|
||||||
total output bytes = 13650
|
total output bytes = 13650
|
||||||
sample count = 2
|
sample count = 3
|
||||||
format 0:
|
format 0:
|
||||||
id = 1/256
|
id = 1/256
|
||||||
sampleMimeType = video/avc
|
sampleMimeType = video/avc
|
||||||
@ -29,6 +29,10 @@ track 256:
|
|||||||
time = 100100
|
time = 100100
|
||||||
flags = 0
|
flags = 0
|
||||||
data = length 813, hash 99F7B4FA
|
data = length 813, hash 99F7B4FA
|
||||||
|
sample 2:
|
||||||
|
time = 133466
|
||||||
|
flags = 0
|
||||||
|
data = length 442, hash A7367ECF
|
||||||
track 257:
|
track 257:
|
||||||
total output bytes = 5015
|
total output bytes = 5015
|
||||||
sample count = 4
|
sample count = 4
|
||||||
|
@ -8,7 +8,7 @@ seekMap:
|
|||||||
numberOfTracks = 2
|
numberOfTracks = 2
|
||||||
track 256:
|
track 256:
|
||||||
total output bytes = 13650
|
total output bytes = 13650
|
||||||
sample count = 2
|
sample count = 3
|
||||||
format 0:
|
format 0:
|
||||||
id = 1/256
|
id = 1/256
|
||||||
sampleMimeType = video/avc
|
sampleMimeType = video/avc
|
||||||
@ -29,6 +29,10 @@ track 256:
|
|||||||
time = 100100
|
time = 100100
|
||||||
flags = 0
|
flags = 0
|
||||||
data = length 813, hash 99F7B4FA
|
data = length 813, hash 99F7B4FA
|
||||||
|
sample 2:
|
||||||
|
time = 133466
|
||||||
|
flags = 0
|
||||||
|
data = length 442, hash A7367ECF
|
||||||
track 257:
|
track 257:
|
||||||
total output bytes = 5015
|
total output bytes = 5015
|
||||||
sample count = 4
|
sample count = 4
|
||||||
|
@ -5,7 +5,7 @@ seekMap:
|
|||||||
numberOfTracks = 2
|
numberOfTracks = 2
|
||||||
track 256:
|
track 256:
|
||||||
total output bytes = 13650
|
total output bytes = 13650
|
||||||
sample count = 2
|
sample count = 3
|
||||||
format 0:
|
format 0:
|
||||||
id = 1/256
|
id = 1/256
|
||||||
sampleMimeType = video/avc
|
sampleMimeType = video/avc
|
||||||
@ -26,6 +26,10 @@ track 256:
|
|||||||
time = 100100
|
time = 100100
|
||||||
flags = 0
|
flags = 0
|
||||||
data = length 813, hash 99F7B4FA
|
data = length 813, hash 99F7B4FA
|
||||||
|
sample 2:
|
||||||
|
time = 133466
|
||||||
|
flags = 0
|
||||||
|
data = length 442, hash A7367ECF
|
||||||
track 257:
|
track 257:
|
||||||
total output bytes = 5015
|
total output bytes = 5015
|
||||||
sample count = 4
|
sample count = 4
|
||||||
|
@ -8,7 +8,7 @@ seekMap:
|
|||||||
numberOfTracks = 1
|
numberOfTracks = 1
|
||||||
track 256:
|
track 256:
|
||||||
total output bytes = 12451
|
total output bytes = 12451
|
||||||
sample count = 4
|
sample count = 5
|
||||||
format 0:
|
format 0:
|
||||||
id = 1/256
|
id = 1/256
|
||||||
sampleMimeType = video/avc
|
sampleMimeType = video/avc
|
||||||
@ -37,4 +37,8 @@ track 256:
|
|||||||
time = 133466
|
time = 133466
|
||||||
flags = 0
|
flags = 0
|
||||||
data = length 518, hash 546C177
|
data = length 518, hash 546C177
|
||||||
|
sample 4:
|
||||||
|
time = 100100
|
||||||
|
flags = 0
|
||||||
|
data = length 254, hash 36EBDA1
|
||||||
tracksEnded = true
|
tracksEnded = true
|
||||||
|
@ -8,7 +8,7 @@ seekMap:
|
|||||||
numberOfTracks = 1
|
numberOfTracks = 1
|
||||||
track 256:
|
track 256:
|
||||||
total output bytes = 12451
|
total output bytes = 12451
|
||||||
sample count = 4
|
sample count = 5
|
||||||
format 0:
|
format 0:
|
||||||
id = 1/256
|
id = 1/256
|
||||||
sampleMimeType = video/avc
|
sampleMimeType = video/avc
|
||||||
@ -37,4 +37,8 @@ track 256:
|
|||||||
time = 133466
|
time = 133466
|
||||||
flags = 0
|
flags = 0
|
||||||
data = length 518, hash 546C177
|
data = length 518, hash 546C177
|
||||||
|
sample 4:
|
||||||
|
time = 100100
|
||||||
|
flags = 0
|
||||||
|
data = length 254, hash 36EBDA1
|
||||||
tracksEnded = true
|
tracksEnded = true
|
||||||
|
@ -8,7 +8,7 @@ seekMap:
|
|||||||
numberOfTracks = 1
|
numberOfTracks = 1
|
||||||
track 256:
|
track 256:
|
||||||
total output bytes = 12451
|
total output bytes = 12451
|
||||||
sample count = 4
|
sample count = 5
|
||||||
format 0:
|
format 0:
|
||||||
id = 1/256
|
id = 1/256
|
||||||
sampleMimeType = video/avc
|
sampleMimeType = video/avc
|
||||||
@ -37,4 +37,8 @@ track 256:
|
|||||||
time = 133466
|
time = 133466
|
||||||
flags = 0
|
flags = 0
|
||||||
data = length 518, hash 546C177
|
data = length 518, hash 546C177
|
||||||
|
sample 4:
|
||||||
|
time = 100100
|
||||||
|
flags = 0
|
||||||
|
data = length 254, hash 36EBDA1
|
||||||
tracksEnded = true
|
tracksEnded = true
|
||||||
|
@ -8,7 +8,7 @@ seekMap:
|
|||||||
numberOfTracks = 1
|
numberOfTracks = 1
|
||||||
track 256:
|
track 256:
|
||||||
total output bytes = 255
|
total output bytes = 255
|
||||||
sample count = 0
|
sample count = 1
|
||||||
format 0:
|
format 0:
|
||||||
id = 1/256
|
id = 1/256
|
||||||
sampleMimeType = video/avc
|
sampleMimeType = video/avc
|
||||||
@ -21,4 +21,8 @@ track 256:
|
|||||||
initializationData:
|
initializationData:
|
||||||
data = length 29, hash 4C2CAE9C
|
data = length 29, hash 4C2CAE9C
|
||||||
data = length 9, hash D971CD89
|
data = length 9, hash D971CD89
|
||||||
|
sample 0:
|
||||||
|
time = 100100
|
||||||
|
flags = 0
|
||||||
|
data = length 254, hash 36EBDA1
|
||||||
tracksEnded = true
|
tracksEnded = true
|
||||||
|
@ -5,7 +5,7 @@ seekMap:
|
|||||||
numberOfTracks = 1
|
numberOfTracks = 1
|
||||||
track 256:
|
track 256:
|
||||||
total output bytes = 12451
|
total output bytes = 12451
|
||||||
sample count = 4
|
sample count = 5
|
||||||
format 0:
|
format 0:
|
||||||
id = 1/256
|
id = 1/256
|
||||||
sampleMimeType = video/avc
|
sampleMimeType = video/avc
|
||||||
@ -34,4 +34,8 @@ track 256:
|
|||||||
time = 133466
|
time = 133466
|
||||||
flags = 0
|
flags = 0
|
||||||
data = length 518, hash 546C177
|
data = length 518, hash 546C177
|
||||||
|
sample 4:
|
||||||
|
time = 100100
|
||||||
|
flags = 0
|
||||||
|
data = length 254, hash 36EBDA1
|
||||||
tracksEnded = true
|
tracksEnded = true
|
||||||
|
@ -8,7 +8,7 @@ seekMap:
|
|||||||
numberOfTracks = 1
|
numberOfTracks = 1
|
||||||
track 256:
|
track 256:
|
||||||
total output bytes = 19364
|
total output bytes = 19364
|
||||||
sample count = 29
|
sample count = 30
|
||||||
format 0:
|
format 0:
|
||||||
id = 1/256
|
id = 1/256
|
||||||
sampleMimeType = video/hevc
|
sampleMimeType = video/hevc
|
||||||
@ -137,4 +137,8 @@ track 256:
|
|||||||
time = 933333
|
time = 933333
|
||||||
flags = 0
|
flags = 0
|
||||||
data = length 87, hash EEC4D98C
|
data = length 87, hash EEC4D98C
|
||||||
|
sample 29:
|
||||||
|
time = 1000000
|
||||||
|
flags = 0
|
||||||
|
data = length 167, hash EAE2DF9A
|
||||||
tracksEnded = true
|
tracksEnded = true
|
||||||
|
@ -8,7 +8,7 @@ seekMap:
|
|||||||
numberOfTracks = 1
|
numberOfTracks = 1
|
||||||
track 256:
|
track 256:
|
||||||
total output bytes = 3806
|
total output bytes = 3806
|
||||||
sample count = 20
|
sample count = 21
|
||||||
format 0:
|
format 0:
|
||||||
id = 1/256
|
id = 1/256
|
||||||
sampleMimeType = video/hevc
|
sampleMimeType = video/hevc
|
||||||
@ -101,4 +101,8 @@ track 256:
|
|||||||
time = 933333
|
time = 933333
|
||||||
flags = 0
|
flags = 0
|
||||||
data = length 87, hash EEC4D98C
|
data = length 87, hash EEC4D98C
|
||||||
|
sample 20:
|
||||||
|
time = 1000000
|
||||||
|
flags = 0
|
||||||
|
data = length 167, hash EAE2DF9A
|
||||||
tracksEnded = true
|
tracksEnded = true
|
||||||
|
@ -8,7 +8,7 @@ seekMap:
|
|||||||
numberOfTracks = 1
|
numberOfTracks = 1
|
||||||
track 256:
|
track 256:
|
||||||
total output bytes = 1796
|
total output bytes = 1796
|
||||||
sample count = 11
|
sample count = 12
|
||||||
format 0:
|
format 0:
|
||||||
id = 1/256
|
id = 1/256
|
||||||
sampleMimeType = video/hevc
|
sampleMimeType = video/hevc
|
||||||
@ -65,4 +65,8 @@ track 256:
|
|||||||
time = 933333
|
time = 933333
|
||||||
flags = 0
|
flags = 0
|
||||||
data = length 87, hash EEC4D98C
|
data = length 87, hash EEC4D98C
|
||||||
|
sample 11:
|
||||||
|
time = 1000000
|
||||||
|
flags = 0
|
||||||
|
data = length 167, hash EAE2DF9A
|
||||||
tracksEnded = true
|
tracksEnded = true
|
||||||
|
@ -8,7 +8,7 @@ seekMap:
|
|||||||
numberOfTracks = 1
|
numberOfTracks = 1
|
||||||
track 256:
|
track 256:
|
||||||
total output bytes = 396
|
total output bytes = 396
|
||||||
sample count = 2
|
sample count = 3
|
||||||
format 0:
|
format 0:
|
||||||
id = 1/256
|
id = 1/256
|
||||||
sampleMimeType = video/hevc
|
sampleMimeType = video/hevc
|
||||||
@ -29,4 +29,8 @@ track 256:
|
|||||||
time = 933333
|
time = 933333
|
||||||
flags = 0
|
flags = 0
|
||||||
data = length 87, hash EEC4D98C
|
data = length 87, hash EEC4D98C
|
||||||
|
sample 2:
|
||||||
|
time = 1000000
|
||||||
|
flags = 0
|
||||||
|
data = length 167, hash EAE2DF9A
|
||||||
tracksEnded = true
|
tracksEnded = true
|
||||||
|
@ -5,7 +5,7 @@ seekMap:
|
|||||||
numberOfTracks = 1
|
numberOfTracks = 1
|
||||||
track 256:
|
track 256:
|
||||||
total output bytes = 19364
|
total output bytes = 19364
|
||||||
sample count = 29
|
sample count = 30
|
||||||
format 0:
|
format 0:
|
||||||
id = 1/256
|
id = 1/256
|
||||||
sampleMimeType = video/hevc
|
sampleMimeType = video/hevc
|
||||||
@ -134,4 +134,8 @@ track 256:
|
|||||||
time = 933333
|
time = 933333
|
||||||
flags = 0
|
flags = 0
|
||||||
data = length 87, hash EEC4D98C
|
data = length 87, hash EEC4D98C
|
||||||
|
sample 29:
|
||||||
|
time = 1000000
|
||||||
|
flags = 0
|
||||||
|
data = length 167, hash EAE2DF9A
|
||||||
tracksEnded = true
|
tracksEnded = true
|
||||||
|
@ -8,7 +8,7 @@ seekMap:
|
|||||||
numberOfTracks = 1
|
numberOfTracks = 1
|
||||||
track 256:
|
track 256:
|
||||||
total output bytes = 10004
|
total output bytes = 10004
|
||||||
sample count = 15
|
sample count = 16
|
||||||
format 0:
|
format 0:
|
||||||
id = 1/256
|
id = 1/256
|
||||||
sampleMimeType = video/hevc
|
sampleMimeType = video/hevc
|
||||||
@ -81,4 +81,8 @@ track 256:
|
|||||||
time = 1133333
|
time = 1133333
|
||||||
flags = 0
|
flags = 0
|
||||||
data = length 46, hash CE770A40
|
data = length 46, hash CE770A40
|
||||||
|
sample 15:
|
||||||
|
time = 1266666
|
||||||
|
flags = 0
|
||||||
|
data = length 99, hash CD8A8477
|
||||||
tracksEnded = true
|
tracksEnded = true
|
||||||
|
@ -8,7 +8,7 @@ seekMap:
|
|||||||
numberOfTracks = 1
|
numberOfTracks = 1
|
||||||
track 256:
|
track 256:
|
||||||
total output bytes = 856
|
total output bytes = 856
|
||||||
sample count = 11
|
sample count = 12
|
||||||
format 0:
|
format 0:
|
||||||
id = 1/256
|
id = 1/256
|
||||||
sampleMimeType = video/hevc
|
sampleMimeType = video/hevc
|
||||||
@ -65,4 +65,8 @@ track 256:
|
|||||||
time = 1133333
|
time = 1133333
|
||||||
flags = 0
|
flags = 0
|
||||||
data = length 46, hash CE770A40
|
data = length 46, hash CE770A40
|
||||||
|
sample 11:
|
||||||
|
time = 1266666
|
||||||
|
flags = 0
|
||||||
|
data = length 99, hash CD8A8477
|
||||||
tracksEnded = true
|
tracksEnded = true
|
||||||
|
@ -8,7 +8,7 @@ seekMap:
|
|||||||
numberOfTracks = 1
|
numberOfTracks = 1
|
||||||
track 256:
|
track 256:
|
||||||
total output bytes = 563
|
total output bytes = 563
|
||||||
sample count = 6
|
sample count = 7
|
||||||
format 0:
|
format 0:
|
||||||
id = 1/256
|
id = 1/256
|
||||||
sampleMimeType = video/hevc
|
sampleMimeType = video/hevc
|
||||||
@ -45,4 +45,8 @@ track 256:
|
|||||||
time = 1133333
|
time = 1133333
|
||||||
flags = 0
|
flags = 0
|
||||||
data = length 46, hash CE770A40
|
data = length 46, hash CE770A40
|
||||||
|
sample 6:
|
||||||
|
time = 1266666
|
||||||
|
flags = 0
|
||||||
|
data = length 99, hash CD8A8477
|
||||||
tracksEnded = true
|
tracksEnded = true
|
||||||
|
@ -8,7 +8,7 @@ seekMap:
|
|||||||
numberOfTracks = 1
|
numberOfTracks = 1
|
||||||
track 256:
|
track 256:
|
||||||
total output bytes = 146
|
total output bytes = 146
|
||||||
sample count = 1
|
sample count = 2
|
||||||
format 0:
|
format 0:
|
||||||
id = 1/256
|
id = 1/256
|
||||||
sampleMimeType = video/hevc
|
sampleMimeType = video/hevc
|
||||||
@ -25,4 +25,8 @@ track 256:
|
|||||||
time = 1133333
|
time = 1133333
|
||||||
flags = 0
|
flags = 0
|
||||||
data = length 46, hash CE770A40
|
data = length 46, hash CE770A40
|
||||||
|
sample 1:
|
||||||
|
time = 1266666
|
||||||
|
flags = 0
|
||||||
|
data = length 99, hash CD8A8477
|
||||||
tracksEnded = true
|
tracksEnded = true
|
||||||
|
@ -5,7 +5,7 @@ seekMap:
|
|||||||
numberOfTracks = 1
|
numberOfTracks = 1
|
||||||
track 256:
|
track 256:
|
||||||
total output bytes = 10004
|
total output bytes = 10004
|
||||||
sample count = 15
|
sample count = 16
|
||||||
format 0:
|
format 0:
|
||||||
id = 1/256
|
id = 1/256
|
||||||
sampleMimeType = video/hevc
|
sampleMimeType = video/hevc
|
||||||
@ -78,4 +78,8 @@ track 256:
|
|||||||
time = 1133333
|
time = 1133333
|
||||||
flags = 0
|
flags = 0
|
||||||
data = length 46, hash CE770A40
|
data = length 46, hash CE770A40
|
||||||
|
sample 15:
|
||||||
|
time = 1266666
|
||||||
|
flags = 0
|
||||||
|
data = length 99, hash CD8A8477
|
||||||
tracksEnded = true
|
tracksEnded = true
|
||||||
|
Loading…
x
Reference in New Issue
Block a user