From 45013ece1e3fe054ff8960355a89559241eeb288 Mon Sep 17 00:00:00 2001 From: olly Date: Fri, 6 Dec 2019 17:02:19 +0000 Subject: [PATCH] Add unit test for MatroskaExtractor full Block The existing sample uses SimpleBlock PiperOrigin-RevId: 284195590 --- .../core/src/test/assets/mkv/full_blocks.mkv | Bin 0 -> 6020 bytes .../test/assets/mkv/full_blocks.mkv.0.dump | 43 ++++++++++++++++++ .../test/assets/mkv/full_blocks.mkv.1.dump | 43 ++++++++++++++++++ .../test/assets/mkv/full_blocks.mkv.2.dump | 43 ++++++++++++++++++ .../test/assets/mkv/full_blocks.mkv.3.dump | 43 ++++++++++++++++++ .../extractor/mkv/MatroskaExtractorTest.java | 5 ++ 6 files changed, 177 insertions(+) create mode 100644 library/core/src/test/assets/mkv/full_blocks.mkv create mode 100644 library/core/src/test/assets/mkv/full_blocks.mkv.0.dump create mode 100644 library/core/src/test/assets/mkv/full_blocks.mkv.1.dump create mode 100644 library/core/src/test/assets/mkv/full_blocks.mkv.2.dump create mode 100644 library/core/src/test/assets/mkv/full_blocks.mkv.3.dump diff --git a/library/core/src/test/assets/mkv/full_blocks.mkv b/library/core/src/test/assets/mkv/full_blocks.mkv new file mode 100644 index 0000000000000000000000000000000000000000..e8855b621d18f6f1fb5ea2b879616e138de8a7e1 GIT binary patch literal 6020 zcmb1gy}x*|Q(GgW({~{L)X3uWxsk)EsUtVBq$s~QJJG2fDAd}>C=uL{&d2});sJub zvrG2)?(PX*-6HC_GA(#blK?Y>D;BaY8^oOi;mQQ>2608(AzY!5!|5RI**E_C!A6Y| zqaiRF0;3@?8UmvsFd71*Aut*OqaiRF0;3@?8UmvsFd71bIRrrceuqx2>l>T-og91{ z7UyIpr6%R(D3lrM8S7apXe$5(U_%HXK~p`WaK{a~*=4z@Md_&uWhMrCK&YUh?w^yQ z5RzY>rx28%m;%%nke^qnuBl*VqMMXi;?mjSa4@L>6c8?n9UNXd*~e>T7>bunxP8l( z>(BXFR%I>X!WQ>lzXOdstXj9?dLv`;(T)|KO22>3@7>>1Ue=pBePfmh)Ob2 z71A<`ic1uVOOr}6OL9{6W;d~1T5xjV;YLnP6lKM!$@zIH2z9(%!Kfk%<(VZJ3Q%P^ znR#HN!ofBQUPm#iBqOs3$)wp$0`EYhs|R;a-rUHry$?8e`>{#n>4!$$d4Gayy0H$!R>*5K1 zp}tP8LGk`>@oqtmzOF!{8jWG{^IRAABjlYTLqO8ahKA-a1(#hHPmd1{0ooKC;^`b5 zA0Ffx;_2re?-&r^(oTA{0(Jjx*Tr+Nnd;&g;u;?s;_T8s*~q}qQrFN(*T77{(A3Jv o)XKyN=BATCPa*3LadZc|dMz-N6kvg(fbbN=(?|jkUxHl%0PUe>nE(I) literal 0 HcmV?d00001 diff --git a/library/core/src/test/assets/mkv/full_blocks.mkv.0.dump b/library/core/src/test/assets/mkv/full_blocks.mkv.0.dump new file mode 100644 index 0000000000..ac111d0c62 --- /dev/null +++ b/library/core/src/test/assets/mkv/full_blocks.mkv.0.dump @@ -0,0 +1,43 @@ +seekMap: + isSeekable = true + duration = 8901000 + getPosition(0) = [[timeUs=0, position=5401]] +numberOfTracks = 1 +track 1: + format: + bitrate = -1 + id = 1 + containerMimeType = null + sampleMimeType = application/x-subrip + maxInputSize = -1 + width = -1 + height = -1 + frameRate = -1.0 + rotationDegrees = 0 + pixelWidthHeightRatio = 1.0 + channelCount = -1 + sampleRate = -1 + pcmEncoding = -1 + encoderDelay = 0 + encoderPadding = 0 + subsampleOffsetUs = 9223372036854775807 + selectionFlags = 1 + language = und + drmInitData = - + metadata = null + initializationData: + total output bytes = 213 + sample count = 3 + sample 0: + time = 0 + flags = 1 + data = length 59, hash A0217393 + sample 1: + time = 2345000 + flags = 1 + data = length 95, hash 4904F2 + sample 2: + time = 4567000 + flags = 1 + data = length 59, hash EFAB6D8A +tracksEnded = true diff --git a/library/core/src/test/assets/mkv/full_blocks.mkv.1.dump b/library/core/src/test/assets/mkv/full_blocks.mkv.1.dump new file mode 100644 index 0000000000..ac111d0c62 --- /dev/null +++ b/library/core/src/test/assets/mkv/full_blocks.mkv.1.dump @@ -0,0 +1,43 @@ +seekMap: + isSeekable = true + duration = 8901000 + getPosition(0) = [[timeUs=0, position=5401]] +numberOfTracks = 1 +track 1: + format: + bitrate = -1 + id = 1 + containerMimeType = null + sampleMimeType = application/x-subrip + maxInputSize = -1 + width = -1 + height = -1 + frameRate = -1.0 + rotationDegrees = 0 + pixelWidthHeightRatio = 1.0 + channelCount = -1 + sampleRate = -1 + pcmEncoding = -1 + encoderDelay = 0 + encoderPadding = 0 + subsampleOffsetUs = 9223372036854775807 + selectionFlags = 1 + language = und + drmInitData = - + metadata = null + initializationData: + total output bytes = 213 + sample count = 3 + sample 0: + time = 0 + flags = 1 + data = length 59, hash A0217393 + sample 1: + time = 2345000 + flags = 1 + data = length 95, hash 4904F2 + sample 2: + time = 4567000 + flags = 1 + data = length 59, hash EFAB6D8A +tracksEnded = true diff --git a/library/core/src/test/assets/mkv/full_blocks.mkv.2.dump b/library/core/src/test/assets/mkv/full_blocks.mkv.2.dump new file mode 100644 index 0000000000..ac111d0c62 --- /dev/null +++ b/library/core/src/test/assets/mkv/full_blocks.mkv.2.dump @@ -0,0 +1,43 @@ +seekMap: + isSeekable = true + duration = 8901000 + getPosition(0) = [[timeUs=0, position=5401]] +numberOfTracks = 1 +track 1: + format: + bitrate = -1 + id = 1 + containerMimeType = null + sampleMimeType = application/x-subrip + maxInputSize = -1 + width = -1 + height = -1 + frameRate = -1.0 + rotationDegrees = 0 + pixelWidthHeightRatio = 1.0 + channelCount = -1 + sampleRate = -1 + pcmEncoding = -1 + encoderDelay = 0 + encoderPadding = 0 + subsampleOffsetUs = 9223372036854775807 + selectionFlags = 1 + language = und + drmInitData = - + metadata = null + initializationData: + total output bytes = 213 + sample count = 3 + sample 0: + time = 0 + flags = 1 + data = length 59, hash A0217393 + sample 1: + time = 2345000 + flags = 1 + data = length 95, hash 4904F2 + sample 2: + time = 4567000 + flags = 1 + data = length 59, hash EFAB6D8A +tracksEnded = true diff --git a/library/core/src/test/assets/mkv/full_blocks.mkv.3.dump b/library/core/src/test/assets/mkv/full_blocks.mkv.3.dump new file mode 100644 index 0000000000..ac111d0c62 --- /dev/null +++ b/library/core/src/test/assets/mkv/full_blocks.mkv.3.dump @@ -0,0 +1,43 @@ +seekMap: + isSeekable = true + duration = 8901000 + getPosition(0) = [[timeUs=0, position=5401]] +numberOfTracks = 1 +track 1: + format: + bitrate = -1 + id = 1 + containerMimeType = null + sampleMimeType = application/x-subrip + maxInputSize = -1 + width = -1 + height = -1 + frameRate = -1.0 + rotationDegrees = 0 + pixelWidthHeightRatio = 1.0 + channelCount = -1 + sampleRate = -1 + pcmEncoding = -1 + encoderDelay = 0 + encoderPadding = 0 + subsampleOffsetUs = 9223372036854775807 + selectionFlags = 1 + language = und + drmInitData = - + metadata = null + initializationData: + total output bytes = 213 + sample count = 3 + sample 0: + time = 0 + flags = 1 + data = length 59, hash A0217393 + sample 1: + time = 2345000 + flags = 1 + data = length 95, hash 4904F2 + sample 2: + time = 4567000 + flags = 1 + data = length 59, hash EFAB6D8A +tracksEnded = true diff --git a/library/core/src/test/java/com/google/android/exoplayer2/extractor/mkv/MatroskaExtractorTest.java b/library/core/src/test/java/com/google/android/exoplayer2/extractor/mkv/MatroskaExtractorTest.java index 9c20a9668f..80eb33a46e 100644 --- a/library/core/src/test/java/com/google/android/exoplayer2/extractor/mkv/MatroskaExtractorTest.java +++ b/library/core/src/test/java/com/google/android/exoplayer2/extractor/mkv/MatroskaExtractorTest.java @@ -29,6 +29,11 @@ public final class MatroskaExtractorTest { ExtractorAsserts.assertBehavior(MatroskaExtractor::new, "mkv/sample.mkv"); } + @Test + public void testMkvFullBlocksSample() throws Exception { + ExtractorAsserts.assertBehavior(MatroskaExtractor::new, "mkv/full_blocks.mkv"); + } + @Test public void testWebmSubsampleEncryption() throws Exception { ExtractorAsserts.assertBehavior(