Add test for TsExtractor's FLAG_DETECT_ACCESS_UNITS
PiperOrigin-RevId: 307777265
This commit is contained in:
parent
29392d2689
commit
1b6a32f25a
@ -15,6 +15,7 @@
|
||||
*/
|
||||
package com.google.android.exoplayer2.extractor.ts;
|
||||
|
||||
import static com.google.android.exoplayer2.extractor.ts.DefaultTsPayloadReaderFactory.FLAG_DETECT_ACCESS_UNITS;
|
||||
import static com.google.common.truth.Truth.assertThat;
|
||||
|
||||
import android.util.SparseArray;
|
||||
@ -54,6 +55,13 @@ public final class TsExtractorTest {
|
||||
ExtractorAsserts.assertBehavior(TsExtractor::new, "ts/sample_h264_mpeg_audio.ts");
|
||||
}
|
||||
|
||||
@Test
|
||||
public void sampleWithH264NoAccessUnitDelimiters() throws Exception {
|
||||
ExtractorAsserts.assertBehavior(
|
||||
() -> new TsExtractor(FLAG_DETECT_ACCESS_UNITS),
|
||||
"ts/sample_h264_no_access_unit_delimiters.ts");
|
||||
}
|
||||
|
||||
@Test
|
||||
public void sampleWithH265() throws Exception {
|
||||
ExtractorAsserts.assertBehavior(TsExtractor::new, "ts/sample_h265.ts");
|
||||
|
BIN
testdata/src/test/assets/ts/sample_h264_no_access_unit_delimiters.ts
vendored
Normal file
BIN
testdata/src/test/assets/ts/sample_h264_no_access_unit_delimiters.ts
vendored
Normal file
Binary file not shown.
43
testdata/src/test/assets/ts/sample_h264_no_access_unit_delimiters.ts.0.dump
vendored
Normal file
43
testdata/src/test/assets/ts/sample_h264_no_access_unit_delimiters.ts.0.dump
vendored
Normal file
@ -0,0 +1,43 @@
|
||||
seekMap:
|
||||
isSeekable = true
|
||||
duration = 66733
|
||||
getPosition(0) = [[timeUs=0, position=0]]
|
||||
getPosition(1) = [[timeUs=1, position=0]]
|
||||
getPosition(33366) = [[timeUs=33366, position=6420]]
|
||||
getPosition(66733) = [[timeUs=66733, position=13028]]
|
||||
numberOfTracks = 2
|
||||
track 256:
|
||||
total output bytes = 12451
|
||||
sample count = 4
|
||||
format 0:
|
||||
id = 1/256
|
||||
sampleMimeType = video/avc
|
||||
codecs = avc1.64001E
|
||||
width = 640
|
||||
height = 426
|
||||
initializationData:
|
||||
data = length 29, hash 4C2CAE9C
|
||||
data = length 9, hash D971CD89
|
||||
sample 0:
|
||||
time = 66733
|
||||
flags = 0
|
||||
data = length 734, hash AF0D9485
|
||||
sample 1:
|
||||
time = 66733
|
||||
flags = 1
|
||||
data = length 10938, hash 68420875
|
||||
sample 2:
|
||||
time = 133466
|
||||
flags = 0
|
||||
data = length 6, hash 34E6CF79
|
||||
sample 3:
|
||||
time = 133466
|
||||
flags = 0
|
||||
data = length 518, hash 546C177
|
||||
track 8448:
|
||||
total output bytes = 0
|
||||
sample count = 0
|
||||
format 0:
|
||||
id = 1/8448
|
||||
sampleMimeType = application/cea-608
|
||||
tracksEnded = true
|
43
testdata/src/test/assets/ts/sample_h264_no_access_unit_delimiters.ts.1.dump
vendored
Normal file
43
testdata/src/test/assets/ts/sample_h264_no_access_unit_delimiters.ts.1.dump
vendored
Normal file
@ -0,0 +1,43 @@
|
||||
seekMap:
|
||||
isSeekable = true
|
||||
duration = 66733
|
||||
getPosition(0) = [[timeUs=0, position=0]]
|
||||
getPosition(1) = [[timeUs=1, position=0]]
|
||||
getPosition(33366) = [[timeUs=33366, position=6420]]
|
||||
getPosition(66733) = [[timeUs=66733, position=13028]]
|
||||
numberOfTracks = 2
|
||||
track 256:
|
||||
total output bytes = 12451
|
||||
sample count = 4
|
||||
format 0:
|
||||
id = 1/256
|
||||
sampleMimeType = video/avc
|
||||
codecs = avc1.64001E
|
||||
width = 640
|
||||
height = 426
|
||||
initializationData:
|
||||
data = length 29, hash 4C2CAE9C
|
||||
data = length 9, hash D971CD89
|
||||
sample 0:
|
||||
time = 88977
|
||||
flags = 0
|
||||
data = length 734, hash AF0D9485
|
||||
sample 1:
|
||||
time = 88977
|
||||
flags = 1
|
||||
data = length 10938, hash 68420875
|
||||
sample 2:
|
||||
time = 155710
|
||||
flags = 0
|
||||
data = length 6, hash 34E6CF79
|
||||
sample 3:
|
||||
time = 155710
|
||||
flags = 0
|
||||
data = length 518, hash 546C177
|
||||
track 8448:
|
||||
total output bytes = 0
|
||||
sample count = 0
|
||||
format 0:
|
||||
id = 1/8448
|
||||
sampleMimeType = application/cea-608
|
||||
tracksEnded = true
|
43
testdata/src/test/assets/ts/sample_h264_no_access_unit_delimiters.ts.2.dump
vendored
Normal file
43
testdata/src/test/assets/ts/sample_h264_no_access_unit_delimiters.ts.2.dump
vendored
Normal file
@ -0,0 +1,43 @@
|
||||
seekMap:
|
||||
isSeekable = true
|
||||
duration = 66733
|
||||
getPosition(0) = [[timeUs=0, position=0]]
|
||||
getPosition(1) = [[timeUs=1, position=0]]
|
||||
getPosition(33366) = [[timeUs=33366, position=6420]]
|
||||
getPosition(66733) = [[timeUs=66733, position=13028]]
|
||||
numberOfTracks = 2
|
||||
track 256:
|
||||
total output bytes = 12451
|
||||
sample count = 4
|
||||
format 0:
|
||||
id = 1/256
|
||||
sampleMimeType = video/avc
|
||||
codecs = avc1.64001E
|
||||
width = 640
|
||||
height = 426
|
||||
initializationData:
|
||||
data = length 29, hash 4C2CAE9C
|
||||
data = length 9, hash D971CD89
|
||||
sample 0:
|
||||
time = 111221
|
||||
flags = 0
|
||||
data = length 734, hash AF0D9485
|
||||
sample 1:
|
||||
time = 111221
|
||||
flags = 1
|
||||
data = length 10938, hash 68420875
|
||||
sample 2:
|
||||
time = 177954
|
||||
flags = 0
|
||||
data = length 6, hash 34E6CF79
|
||||
sample 3:
|
||||
time = 177954
|
||||
flags = 0
|
||||
data = length 518, hash 546C177
|
||||
track 8448:
|
||||
total output bytes = 0
|
||||
sample count = 0
|
||||
format 0:
|
||||
id = 1/8448
|
||||
sampleMimeType = application/cea-608
|
||||
tracksEnded = true
|
27
testdata/src/test/assets/ts/sample_h264_no_access_unit_delimiters.ts.3.dump
vendored
Normal file
27
testdata/src/test/assets/ts/sample_h264_no_access_unit_delimiters.ts.3.dump
vendored
Normal file
@ -0,0 +1,27 @@
|
||||
seekMap:
|
||||
isSeekable = true
|
||||
duration = 66733
|
||||
getPosition(0) = [[timeUs=0, position=0]]
|
||||
getPosition(1) = [[timeUs=1, position=0]]
|
||||
getPosition(33366) = [[timeUs=33366, position=6420]]
|
||||
getPosition(66733) = [[timeUs=66733, position=13028]]
|
||||
numberOfTracks = 2
|
||||
track 256:
|
||||
total output bytes = 255
|
||||
sample count = 0
|
||||
format 0:
|
||||
id = 1/256
|
||||
sampleMimeType = video/avc
|
||||
codecs = avc1.64001E
|
||||
width = 640
|
||||
height = 426
|
||||
initializationData:
|
||||
data = length 29, hash 4C2CAE9C
|
||||
data = length 9, hash D971CD89
|
||||
track 8448:
|
||||
total output bytes = 0
|
||||
sample count = 0
|
||||
format 0:
|
||||
id = 1/8448
|
||||
sampleMimeType = application/cea-608
|
||||
tracksEnded = true
|
40
testdata/src/test/assets/ts/sample_h264_no_access_unit_delimiters.ts.unknown_length.dump
vendored
Normal file
40
testdata/src/test/assets/ts/sample_h264_no_access_unit_delimiters.ts.unknown_length.dump
vendored
Normal file
@ -0,0 +1,40 @@
|
||||
seekMap:
|
||||
isSeekable = false
|
||||
duration = UNSET TIME
|
||||
getPosition(0) = [[timeUs=0, position=0]]
|
||||
numberOfTracks = 2
|
||||
track 256:
|
||||
total output bytes = 12451
|
||||
sample count = 4
|
||||
format 0:
|
||||
id = 1/256
|
||||
sampleMimeType = video/avc
|
||||
codecs = avc1.64001E
|
||||
width = 640
|
||||
height = 426
|
||||
initializationData:
|
||||
data = length 29, hash 4C2CAE9C
|
||||
data = length 9, hash D971CD89
|
||||
sample 0:
|
||||
time = 66733
|
||||
flags = 0
|
||||
data = length 734, hash AF0D9485
|
||||
sample 1:
|
||||
time = 66733
|
||||
flags = 1
|
||||
data = length 10938, hash 68420875
|
||||
sample 2:
|
||||
time = 133466
|
||||
flags = 0
|
||||
data = length 6, hash 34E6CF79
|
||||
sample 3:
|
||||
time = 133466
|
||||
flags = 0
|
||||
data = length 518, hash 546C177
|
||||
track 8448:
|
||||
total output bytes = 0
|
||||
sample count = 0
|
||||
format 0:
|
||||
id = 1/8448
|
||||
sampleMimeType = application/cea-608
|
||||
tracksEnded = true
|
Loading…
x
Reference in New Issue
Block a user