diff --git a/testdata/src/test/assets/media/mp4/sample_h265.mp4 b/testdata/src/test/assets/media/mp4/sample_h265.mp4 new file mode 100644 index 0000000000..91fdbb8a3d Binary files /dev/null and b/testdata/src/test/assets/media/mp4/sample_h265.mp4 differ diff --git a/testdata/src/test/assets/muxerdumps/muxed_hdr10-720p.mp4.dump b/testdata/src/test/assets/muxerdumps/muxed_hdr10-720p.mp4.dump new file mode 100644 index 0000000000..2b4e1e52fa --- /dev/null +++ b/testdata/src/test/assets/muxerdumps/muxed_hdr10-720p.mp4.dump @@ -0,0 +1,1330 @@ +seekMap: + isSeekable = true + duration = 4203200 + getPosition(0) = [[timeUs=0, position=44]] + getPosition(1) = [[timeUs=0, position=44], [timeUs=1002944, position=1883462]] + getPosition(2101600) = [[timeUs=2003555, position=3784641], [timeUs=3003433, position=4026908]] + getPosition(4203200) = [[timeUs=4003266, position=6038533]] +numberOfTracks = 2 +track 0: + total output bytes = 7944083 + sample count = 127 + format 0: + id = 1 + sampleMimeType = video/hevc + codecs = hvc1.2.4.L153 + maxInputSize = 157952 + width = 1280 + height = 720 + frameRate = 30.215075 + colorInfo: + colorSpace = 6 + colorRange = 2 + colorTransfer = 6 + hdrStaticInfo = length 0, hash 0 + initializationData: + data = length 99, hash 99842E5A + sample 0: + time = 0 + flags = 1 + data = length 31784, hash F88A0ADA + sample 1: + time = 33322 + flags = 0 + data = length 9972, hash 25C1DE50 + sample 2: + time = 67222 + flags = 0 + data = length 28744, hash 8B1B2A8A + sample 3: + time = 99977 + flags = 0 + data = length 54040, hash 4B286B44 + sample 4: + time = 133300 + flags = 0 + data = length 63348, hash F7F91966 + sample 5: + time = 166633 + flags = 0 + data = length 56969, hash FE4DDEF2 + sample 6: + time = 199955 + flags = 0 + data = length 66511, hash BE7EF815 + sample 7: + time = 233344 + flags = 0 + data = length 72550, hash 8028BAF0 + sample 8: + time = 266755 + flags = 0 + data = length 66999, hash CA2B154E + sample 9: + time = 300177 + flags = 0 + data = length 70365, hash C1E81317 + sample 10: + time = 333622 + flags = 0 + data = length 65657, hash 5196D8EE + sample 11: + time = 367066 + flags = 0 + data = length 56166, hash 3A67C0F2 + sample 12: + time = 400533 + flags = 0 + data = length 54535, hash 8916E14F + sample 13: + time = 434000 + flags = 0 + data = length 60809, hash 30F11073 + sample 14: + time = 467466 + flags = 0 + data = length 73105, hash 2BDB6A1A + sample 15: + time = 500933 + flags = 0 + data = length 74843, hash 885F9563 + sample 16: + time = 534377 + flags = 0 + data = length 75645, hash 37DBCF31 + sample 17: + time = 567822 + flags = 0 + data = length 75659, hash 8E9E5330 + sample 18: + time = 601277 + flags = 0 + data = length 75569, hash DCC63D7C + sample 19: + time = 634755 + flags = 0 + data = length 76181, hash BD6BE82B + sample 20: + time = 668255 + flags = 0 + data = length 88354, hash 73E3B994 + sample 21: + time = 701755 + flags = 0 + data = length 75573, hash 7A99EEEB + sample 22: + time = 735266 + flags = 0 + data = length 80617, hash 4988E1AF + sample 23: + time = 768766 + flags = 0 + data = length 69367, hash 58EE9A3C + sample 24: + time = 802255 + flags = 0 + data = length 74534, hash 3E5FC997 + sample 25: + time = 835733 + flags = 0 + data = length 67594, hash DEAFD3CF + sample 26: + time = 869200 + flags = 0 + data = length 67960, hash C21D9BD2 + sample 27: + time = 902655 + flags = 0 + data = length 62461, hash 2DBFA365 + sample 28: + time = 936111 + flags = 0 + data = length 45621, hash 4B60D3B3 + sample 29: + time = 969533 + flags = 0 + data = length 41886, hash F69594F + sample 30: + time = 1002944 + flags = 1 + data = length 157922, hash 5D2DED48 + sample 31: + time = 1036355 + flags = 0 + data = length 59055, hash 3EC0D10F + sample 32: + time = 1069766 + flags = 0 + data = length 70362, hash 81D6533C + sample 33: + time = 1103155 + flags = 0 + data = length 69276, hash 1A5E3B7F + sample 34: + time = 1136544 + flags = 0 + data = length 66796, hash 6B26749E + sample 35: + time = 1169933 + flags = 0 + data = length 69426, hash 42939F73 + sample 36: + time = 1203300 + flags = 0 + data = length 53495, hash 47917D51 + sample 37: + time = 1236666 + flags = 0 + data = length 65041, hash C82B74C1 + sample 38: + time = 1270033 + flags = 0 + data = length 65539, hash EE34C22 + sample 39: + time = 1303400 + flags = 0 + data = length 70441, hash 61A63884 + sample 40: + time = 1336766 + flags = 0 + data = length 60140, hash C99A10E7 + sample 41: + time = 1370133 + flags = 0 + data = length 56647, hash 4E0D6F5E + sample 42: + time = 1403500 + flags = 0 + data = length 56195, hash FCA1A4FE + sample 43: + time = 1436844 + flags = 0 + data = length 59142, hash 778A6DDD + sample 44: + time = 1470200 + flags = 0 + data = length 59930, hash 3AF0685F + sample 45: + time = 1503544 + flags = 0 + data = length 42885, hash 77BCAE9D + sample 46: + time = 1536922 + flags = 0 + data = length 52167, hash 9FCE82F2 + sample 47: + time = 1570266 + flags = 0 + data = length 47566, hash 9F63D6AD + sample 48: + time = 1603566 + flags = 0 + data = length 50422, hash 83A948C8 + sample 49: + time = 1636911 + flags = 0 + data = length 49230, hash 39307D4 + sample 50: + time = 1670244 + flags = 0 + data = length 49503, hash A882BA5C + sample 51: + time = 1703577 + flags = 0 + data = length 49103, hash C43B39DA + sample 52: + time = 1736911 + flags = 0 + data = length 62007, hash 9B604007 + sample 53: + time = 1770233 + flags = 0 + data = length 60107, hash EF52B8FA + sample 54: + time = 1803566 + flags = 0 + data = length 58932, hash 18B2AB80 + sample 55: + time = 1836900 + flags = 0 + data = length 59795, hash A2DEF758 + sample 56: + time = 1870222 + flags = 0 + data = length 56216, hash 2669E720 + sample 57: + time = 1903555 + flags = 0 + data = length 59850, hash B1B411C + sample 58: + time = 1936877 + flags = 0 + data = length 58022, hash B4F0AA9E + sample 59: + time = 1970211 + flags = 0 + data = length 73111, hash 249DC0F7 + sample 60: + time = 2003555 + flags = 1 + data = length 121871, hash E158BA4C + sample 61: + time = 2036866 + flags = 0 + data = length 58917, hash A4E35D6C + sample 62: + time = 2070200 + flags = 0 + data = length 57435, hash B7E918BC + sample 63: + time = 2103522 + flags = 0 + data = length 60018, hash 79A48F55 + sample 64: + time = 2136855 + flags = 0 + data = length 56421, hash 7B2FBB9 + sample 65: + time = 2170200 + flags = 0 + data = length 57080, hash BF9E1AB4 + sample 66: + time = 2203511 + flags = 0 + data = length 59033, hash 2F75A2D7 + sample 67: + time = 2236844 + flags = 0 + data = length 55988, hash 6FB02EE1 + sample 68: + time = 2270177 + flags = 0 + data = length 59010, hash 7E315397 + sample 69: + time = 2303500 + flags = 0 + data = length 53968, hash 1E69F007 + sample 70: + time = 2336833 + flags = 0 + data = length 54754, hash 29D81885 + sample 71: + time = 2370155 + flags = 0 + data = length 54825, hash 360D7650 + sample 72: + time = 2403500 + flags = 0 + data = length 57683, hash 6B1C8F74 + sample 73: + time = 2436822 + flags = 0 + data = length 58820, hash D640752F + sample 74: + time = 2470144 + flags = 0 + data = length 55979, hash 72AA3662 + sample 75: + time = 2503477 + flags = 0 + data = length 53372, hash 188F88DB + sample 76: + time = 2536811 + flags = 0 + data = length 56082, hash AE587B34 + sample 77: + time = 2570144 + flags = 0 + data = length 55031, hash F2A1D185 + sample 78: + time = 2603477 + flags = 0 + data = length 51234, hash E258D5F0 + sample 79: + time = 2636800 + flags = 0 + data = length 69294, hash 56D53FB7 + sample 80: + time = 2670133 + flags = 0 + data = length 63400, hash D6E7AC33 + sample 81: + time = 2703466 + flags = 0 + data = length 61711, hash 3DD7E6B0 + sample 82: + time = 2736800 + flags = 0 + data = length 60393, hash FF7BDC39 + sample 83: + time = 2770122 + flags = 0 + data = length 74625, hash CB685A54 + sample 84: + time = 2803455 + flags = 0 + data = length 61453, hash A48659E6 + sample 85: + time = 2836800 + flags = 0 + data = length 59662, hash 879501DF + sample 86: + time = 2870122 + flags = 0 + data = length 68564, hash 68EEF64C + sample 87: + time = 2903444 + flags = 0 + data = length 69549, hash 26CA4587 + sample 88: + time = 2936777 + flags = 0 + data = length 71190, hash A64362A6 + sample 89: + time = 2970100 + flags = 0 + data = length 68276, hash 4587AAB6 + sample 90: + time = 3003433 + flags = 1 + data = length 115575, hash 8DDA331B + sample 91: + time = 3036766 + flags = 0 + data = length 56416, hash 3CB6F5AD + sample 92: + time = 3070100 + flags = 0 + data = length 54110, hash 7B27C656 + sample 93: + time = 3103411 + flags = 0 + data = length 68308, hash C7F4AE80 + sample 94: + time = 3136744 + flags = 0 + data = length 67629, hash 48E625B6 + sample 95: + time = 3170100 + flags = 0 + data = length 66968, hash D46F0E01 + sample 96: + time = 3203400 + flags = 0 + data = length 53022, hash 91852F32 + sample 97: + time = 3236722 + flags = 0 + data = length 66729, hash 12CA7617 + sample 98: + time = 3270055 + flags = 0 + data = length 53556, hash 904B00CF + sample 99: + time = 3303377 + flags = 0 + data = length 63459, hash AB813676 + sample 100: + time = 3336711 + flags = 0 + data = length 63637, hash 8B0750F6 + sample 101: + time = 3370033 + flags = 0 + data = length 64700, hash 8922E5BE + sample 102: + time = 3403366 + flags = 0 + data = length 54680, hash 4F49EB3D + sample 103: + time = 3436700 + flags = 0 + data = length 62600, hash 9DF2F9F5 + sample 104: + time = 3470022 + flags = 0 + data = length 69506, hash DB702311 + sample 105: + time = 3503355 + flags = 0 + data = length 50277, hash 1034F0A6 + sample 106: + time = 3536711 + flags = 0 + data = length 52100, hash 33745B51 + sample 107: + time = 3570000 + flags = 0 + data = length 65067, hash F73FE2C7 + sample 108: + time = 3603333 + flags = 0 + data = length 68940, hash 4331DA16 + sample 109: + time = 3636666 + flags = 0 + data = length 55215, hash 68087A40 + sample 110: + time = 3670000 + flags = 0 + data = length 56090, hash 2F483911 + sample 111: + time = 3703322 + flags = 0 + data = length 58356, hash D7D190C6 + sample 112: + time = 3736644 + flags = 0 + data = length 57368, hash 2F6B7918 + sample 113: + time = 3769977 + flags = 0 + data = length 56591, hash 19B696D2 + sample 114: + time = 3803300 + flags = 0 + data = length 54748, hash 7E0CE70E + sample 115: + time = 3836622 + flags = 0 + data = length 73133, hash CFA46EE4 + sample 116: + time = 3869955 + flags = 0 + data = length 52577, hash 5E174B5 + sample 117: + time = 3903300 + flags = 0 + data = length 74756, hash 5A571060 + sample 118: + time = 3936611 + flags = 0 + data = length 67171, hash 6F13FB2C + sample 119: + time = 3969933 + flags = 0 + data = length 42130, hash DAE94DB2 + sample 120: + time = 4003266 + flags = 1 + data = length 120199, hash 32DEA792 + sample 121: + time = 4036600 + flags = 0 + data = length 51028, hash FC7AF64F + sample 122: + time = 4069911 + flags = 0 + data = length 51879, hash 74852E0E + sample 123: + time = 4103244 + flags = 0 + data = length 51443, hash B735512A + sample 124: + time = 4137444 + flags = 0 + data = length 65012, hash DB29A2CD + sample 125: + time = 4169900 + flags = 0 + data = length 59318, hash 24AF2123 + sample 126: + time = 4203233 + flags = 536870912 + data = length 62411, hash 6CAE0387 +track 1: + total output bytes = 133209 + sample count = 195 + format 0: + averageBitrate = 256000 + peakBitrate = 256000 + id = 2 + sampleMimeType = audio/mp4a-latm + codecs = mp4a.40.2 + maxInputSize = 877 + channelCount = 2 + sampleRate = 48000 + language = ``` + initializationData: + data = length 2, hash 560 + sample 0: + time = 0 + flags = 1 + data = length 682, hash 34C58E7C + sample 1: + time = 64312 + flags = 1 + data = length 846, hash 22FB31EF + sample 2: + time = 85645 + flags = 1 + data = length 757, hash F55DC63E + sample 3: + time = 107000 + flags = 1 + data = length 690, hash BD26CD74 + sample 4: + time = 128312 + flags = 1 + data = length 660, hash 5713CCCB + sample 5: + time = 149645 + flags = 1 + data = length 646, hash 74C2D10F + sample 6: + time = 171000 + flags = 1 + data = length 652, hash B49BACA1 + sample 7: + time = 192312 + flags = 1 + data = length 658, hash BF36BC46 + sample 8: + time = 213645 + flags = 1 + data = length 666, hash 69CBADD8 + sample 9: + time = 235000 + flags = 1 + data = length 668, hash 99204158 + sample 10: + time = 256312 + flags = 1 + data = length 671, hash AE181AC8 + sample 11: + time = 277645 + flags = 1 + data = length 678, hash C432ACF0 + sample 12: + time = 299000 + flags = 1 + data = length 682, hash C23E1F17 + sample 13: + time = 320312 + flags = 1 + data = length 685, hash B22AB49 + sample 14: + time = 341645 + flags = 1 + data = length 683, hash B073F447 + sample 15: + time = 363000 + flags = 1 + data = length 675, hash C7614E26 + sample 16: + time = 384312 + flags = 1 + data = length 679, hash 5B075ADF + sample 17: + time = 405645 + flags = 1 + data = length 687, hash E260C35B + sample 18: + time = 427000 + flags = 1 + data = length 687, hash 3C316334 + sample 19: + time = 448312 + flags = 1 + data = length 680, hash BCD8469 + sample 20: + time = 469645 + flags = 1 + data = length 681, hash CBD0BF0F + sample 21: + time = 491000 + flags = 1 + data = length 719, hash F7594265 + sample 22: + time = 512312 + flags = 1 + data = length 699, hash 4975812A + sample 23: + time = 533645 + flags = 1 + data = length 723, hash 11C7327E + sample 24: + time = 555000 + flags = 1 + data = length 765, hash DED05454 + sample 25: + time = 576312 + flags = 1 + data = length 785, hash 9E7C3FDD + sample 26: + time = 597645 + flags = 1 + data = length 728, hash B433E15E + sample 27: + time = 619000 + flags = 1 + data = length 708, hash ED0B3337 + sample 28: + time = 640312 + flags = 1 + data = length 642, hash 6B447435 + sample 29: + time = 661645 + flags = 1 + data = length 628, hash D59CB28F + sample 30: + time = 683000 + flags = 1 + data = length 594, hash BCC990B5 + sample 31: + time = 704312 + flags = 1 + data = length 622, hash C9AE9991 + sample 32: + time = 725625 + flags = 1 + data = length 633, hash 4B7D59B8 + sample 33: + time = 746958 + flags = 1 + data = length 661, hash A98CE814 + sample 34: + time = 768291 + flags = 1 + data = length 662, hash 9A3E0D79 + sample 35: + time = 789625 + flags = 1 + data = length 669, hash 2A0B67AC + sample 36: + time = 810958 + flags = 1 + data = length 691, hash C339C4EE + sample 37: + time = 832291 + flags = 1 + data = length 678, hash CF770B8C + sample 38: + time = 853625 + flags = 1 + data = length 678, hash 685F97BC + sample 39: + time = 874958 + flags = 1 + data = length 688, hash 7DC1FBD3 + sample 40: + time = 896291 + flags = 1 + data = length 684, hash F7D9FE89 + sample 41: + time = 917625 + flags = 1 + data = length 683, hash 5E3EA281 + sample 42: + time = 938958 + flags = 1 + data = length 675, hash F576AE6 + sample 43: + time = 960291 + flags = 1 + data = length 697, hash B0EBE204 + sample 44: + time = 981625 + flags = 1 + data = length 675, hash 3C928CCA + sample 45: + time = 1002958 + flags = 1 + data = length 680, hash 34650DF5 + sample 46: + time = 1024291 + flags = 1 + data = length 685, hash 564F62A + sample 47: + time = 1045624 + flags = 1 + data = length 691, hash 71BBA88D + sample 48: + time = 1066958 + flags = 1 + data = length 736, hash C8F0D575 + sample 49: + time = 1088291 + flags = 1 + data = length 718, hash 2F13561A + sample 50: + time = 1109625 + flags = 1 + data = length 692, hash CF153F84 + sample 51: + time = 1130958 + flags = 1 + data = length 673, hash 30357B83 + sample 52: + time = 1152291 + flags = 1 + data = length 690, hash 5FB65B72 + sample 53: + time = 1173625 + flags = 1 + data = length 769, hash F5E1AAEA + sample 54: + time = 1194958 + flags = 1 + data = length 733, hash 9327D738 + sample 55: + time = 1216291 + flags = 1 + data = length 627, hash 203CFA24 + sample 56: + time = 1237625 + flags = 1 + data = length 697, hash 1FCE39D0 + sample 57: + time = 1258958 + flags = 1 + data = length 585, hash B53A076B + sample 58: + time = 1280291 + flags = 1 + data = length 650, hash FDFCA752 + sample 59: + time = 1301625 + flags = 1 + data = length 725, hash 4D4FA788 + sample 60: + time = 1322958 + flags = 1 + data = length 788, hash 6D883F0B + sample 61: + time = 1344291 + flags = 1 + data = length 649, hash 9125CC1A + sample 62: + time = 1365625 + flags = 1 + data = length 616, hash C02AB7EA + sample 63: + time = 1386958 + flags = 1 + data = length 624, hash D49000E1 + sample 64: + time = 1408291 + flags = 1 + data = length 664, hash 482C9994 + sample 65: + time = 1429625 + flags = 1 + data = length 656, hash A234172A + sample 66: + time = 1450958 + flags = 1 + data = length 649, hash BCCAD04D + sample 67: + time = 1472291 + flags = 1 + data = length 655, hash B961E395 + sample 68: + time = 1493625 + flags = 1 + data = length 673, hash 5BD56013 + sample 69: + time = 1514958 + flags = 1 + data = length 700, hash FE25D834 + sample 70: + time = 1536291 + flags = 1 + data = length 668, hash 45203245 + sample 71: + time = 1557625 + flags = 1 + data = length 672, hash F9269558 + sample 72: + time = 1578958 + flags = 1 + data = length 682, hash C205B4DF + sample 73: + time = 1600291 + flags = 1 + data = length 686, hash A4632474 + sample 74: + time = 1621625 + flags = 1 + data = length 747, hash B2F3AA1D + sample 75: + time = 1642958 + flags = 1 + data = length 711, hash B3A33D80 + sample 76: + time = 1664291 + flags = 1 + data = length 652, hash 37A9B9BF + sample 77: + time = 1685625 + flags = 1 + data = length 675, hash F6BE4CAC + sample 78: + time = 1706958 + flags = 1 + data = length 672, hash 22A12DFC + sample 79: + time = 1728291 + flags = 1 + data = length 674, hash E740F44 + sample 80: + time = 1749625 + flags = 1 + data = length 680, hash A065804 + sample 81: + time = 1770958 + flags = 1 + data = length 663, hash 805CE20 + sample 82: + time = 1792291 + flags = 1 + data = length 688, hash C2E28B22 + sample 83: + time = 1813625 + flags = 1 + data = length 672, hash BF738F27 + sample 84: + time = 1834958 + flags = 1 + data = length 673, hash AFE85361 + sample 85: + time = 1856291 + flags = 1 + data = length 679, hash C9D68F4F + sample 86: + time = 1877625 + flags = 1 + data = length 676, hash 42C67933 + sample 87: + time = 1898958 + flags = 1 + data = length 748, hash 16944018 + sample 88: + time = 1920291 + flags = 1 + data = length 730, hash D592050C + sample 89: + time = 1941625 + flags = 1 + data = length 785, hash DB11A4E8 + sample 90: + time = 1962958 + flags = 1 + data = length 708, hash 445F4443 + sample 91: + time = 1984291 + flags = 1 + data = length 630, hash BD57EF90 + sample 92: + time = 2005625 + flags = 1 + data = length 621, hash FB977F1F + sample 93: + time = 2026958 + flags = 1 + data = length 656, hash 53E25FBE + sample 94: + time = 2048270 + flags = 1 + data = length 664, hash A9D0717 + sample 95: + time = 2069624 + flags = 1 + data = length 672, hash 6F2663EA + sample 96: + time = 2090937 + flags = 1 + data = length 677, hash 6EBB686B + sample 97: + time = 2112270 + flags = 1 + data = length 679, hash BF29A1EC + sample 98: + time = 2133625 + flags = 1 + data = length 683, hash 69F6750D + sample 99: + time = 2154937 + flags = 1 + data = length 691, hash A79A804F + sample 100: + time = 2176270 + flags = 1 + data = length 734, hash 31FB39E8 + sample 101: + time = 2197625 + flags = 1 + data = length 657, hash F99E1ADC + sample 102: + time = 2218937 + flags = 1 + data = length 659, hash FDC16724 + sample 103: + time = 2240270 + flags = 1 + data = length 795, hash 23302539 + sample 104: + time = 2261625 + flags = 1 + data = length 691, hash 5AA01A0 + sample 105: + time = 2282937 + flags = 1 + data = length 640, hash A9A214AB + sample 106: + time = 2304270 + flags = 1 + data = length 651, hash F3253A0E + sample 107: + time = 2325625 + flags = 1 + data = length 652, hash 2D4DE02 + sample 108: + time = 2346937 + flags = 1 + data = length 772, hash 16817D3A + sample 109: + time = 2368270 + flags = 1 + data = length 756, hash 738E4C8D + sample 110: + time = 2389625 + flags = 1 + data = length 781, hash 61372EAE + sample 111: + time = 2410937 + flags = 1 + data = length 658, hash 83B5A955 + sample 112: + time = 2432270 + flags = 1 + data = length 667, hash C3CF8AEF + sample 113: + time = 2453625 + flags = 1 + data = length 768, hash C6534483 + sample 114: + time = 2474937 + flags = 1 + data = length 688, hash 1C14B263 + sample 115: + time = 2496270 + flags = 1 + data = length 599, hash 51CF483 + sample 116: + time = 2517625 + flags = 1 + data = length 594, hash F290D460 + sample 117: + time = 2538937 + flags = 1 + data = length 633, hash 262E26E6 + sample 118: + time = 2560270 + flags = 1 + data = length 656, hash 9158E6A1 + sample 119: + time = 2581625 + flags = 1 + data = length 668, hash 3AC6C8DF + sample 120: + time = 2602937 + flags = 1 + data = length 667, hash DB111C93 + sample 121: + time = 2624270 + flags = 1 + data = length 670, hash 5EA45C5E + sample 122: + time = 2645625 + flags = 1 + data = length 663, hash 1CF1EC34 + sample 123: + time = 2666937 + flags = 1 + data = length 673, hash 9609104 + sample 124: + time = 2688270 + flags = 1 + data = length 704, hash D274E425 + sample 125: + time = 2709625 + flags = 1 + data = length 681, hash 4D720ACE + sample 126: + time = 2730937 + flags = 1 + data = length 682, hash C49E4619 + sample 127: + time = 2752270 + flags = 1 + data = length 680, hash 1AB4733A + sample 128: + time = 2773625 + flags = 1 + data = length 675, hash BA047E60 + sample 129: + time = 2794937 + flags = 1 + data = length 688, hash 9679B8E9 + sample 130: + time = 2816270 + flags = 1 + data = length 687, hash 57DBCD4 + sample 131: + time = 2837625 + flags = 1 + data = length 680, hash 91BA9BF2 + sample 132: + time = 2858937 + flags = 1 + data = length 757, hash 741D6330 + sample 133: + time = 2880270 + flags = 1 + data = length 651, hash 60508D7D + sample 134: + time = 2901625 + flags = 1 + data = length 679, hash 7A32FD22 + sample 135: + time = 2922937 + flags = 1 + data = length 666, hash 98C3F963 + sample 136: + time = 2944270 + flags = 1 + data = length 694, hash 59D9B67B + sample 137: + time = 2965625 + flags = 1 + data = length 680, hash 6FA356DD + sample 138: + time = 2986937 + flags = 1 + data = length 665, hash 3D7E32D9 + sample 139: + time = 3008270 + flags = 1 + data = length 681, hash 2592B0DF + sample 140: + time = 3029625 + flags = 1 + data = length 680, hash 2BA659D7 + sample 141: + time = 3050937 + flags = 1 + data = length 667, hash 1E21B749 + sample 142: + time = 3072270 + flags = 1 + data = length 683, hash 57E1A624 + sample 143: + time = 3093625 + flags = 1 + data = length 673, hash B7216D34 + sample 144: + time = 3114937 + flags = 1 + data = length 684, hash 2FDBEB3A + sample 145: + time = 3136270 + flags = 1 + data = length 707, hash 1D528F18 + sample 146: + time = 3157625 + flags = 1 + data = length 693, hash 24148721 + sample 147: + time = 3178937 + flags = 1 + data = length 660, hash C89F9451 + sample 148: + time = 3200270 + flags = 1 + data = length 679, hash 67C16179 + sample 149: + time = 3221625 + flags = 1 + data = length 685, hash 6EF9DD57 + sample 150: + time = 3242937 + flags = 1 + data = length 672, hash CFF4E296 + sample 151: + time = 3264270 + flags = 1 + data = length 681, hash 994F630 + sample 152: + time = 3285625 + flags = 1 + data = length 684, hash 3118D2E9 + sample 153: + time = 3306937 + flags = 1 + data = length 677, hash 3628592F + sample 154: + time = 3328270 + flags = 1 + data = length 689, hash 309E58A0 + sample 155: + time = 3349625 + flags = 1 + data = length 677, hash D1F3255B + sample 156: + time = 3370937 + flags = 1 + data = length 689, hash B3E864BA + sample 157: + time = 3392250 + flags = 1 + data = length 680, hash 469FA2FF + sample 158: + time = 3413583 + flags = 1 + data = length 688, hash DC9FC31B + sample 159: + time = 3434916 + flags = 1 + data = length 675, hash E2396CC7 + sample 160: + time = 3456250 + flags = 1 + data = length 738, hash C1B7A30A + sample 161: + time = 3477583 + flags = 1 + data = length 723, hash CEABDA70 + sample 162: + time = 3498916 + flags = 1 + data = length 698, hash 59E1B5D8 + sample 163: + time = 3520250 + flags = 1 + data = length 671, hash 71CD7BFA + sample 164: + time = 3541583 + flags = 1 + data = length 652, hash 45894636 + sample 165: + time = 3562916 + flags = 1 + data = length 667, hash E98A528A + sample 166: + time = 3584250 + flags = 1 + data = length 682, hash 8AA9E761 + sample 167: + time = 3605583 + flags = 1 + data = length 670, hash 7D071859 + sample 168: + time = 3626916 + flags = 1 + data = length 672, hash 4FA7BDBB + sample 169: + time = 3648250 + flags = 1 + data = length 779, hash 85D8FF74 + sample 170: + time = 3669583 + flags = 1 + data = length 699, hash CABC0AF6 + sample 171: + time = 3690916 + flags = 1 + data = length 635, hash 35BD0FED + sample 172: + time = 3712250 + flags = 1 + data = length 646, hash D4960FAC + sample 173: + time = 3733583 + flags = 1 + data = length 669, hash 4DAC2897 + sample 174: + time = 3754916 + flags = 1 + data = length 675, hash FD60998A + sample 175: + time = 3776250 + flags = 1 + data = length 677, hash FED0180B + sample 176: + time = 3797583 + flags = 1 + data = length 668, hash C6183862 + sample 177: + time = 3818916 + flags = 1 + data = length 671, hash EBA9EF22 + sample 178: + time = 3840250 + flags = 1 + data = length 668, hash CF88A2FF + sample 179: + time = 3861583 + flags = 1 + data = length 727, hash A9311311 + sample 180: + time = 3882916 + flags = 1 + data = length 701, hash C6351159 + sample 181: + time = 3904250 + flags = 1 + data = length 847, hash 1864F774 + sample 182: + time = 3925583 + flags = 1 + data = length 765, hash 616DD2EA + sample 183: + time = 3946916 + flags = 1 + data = length 674, hash 671D4342 + sample 184: + time = 3968250 + flags = 1 + data = length 723, hash 567566A2 + sample 185: + time = 3989583 + flags = 1 + data = length 580, hash B38C9C63 + sample 186: + time = 4010916 + flags = 1 + data = length 583, hash 5668BFCE + sample 187: + time = 4032250 + flags = 1 + data = length 631, hash 7E86C98E + sample 188: + time = 4053583 + flags = 1 + data = length 656, hash 95A41C9B + sample 189: + time = 4074916 + flags = 1 + data = length 822, hash 2A045560 + sample 190: + time = 4096249 + flags = 1 + data = length 643, hash 551E7C72 + sample 191: + time = 4117583 + flags = 1 + data = length 617, hash 463482D9 + sample 192: + time = 4138916 + flags = 1 + data = length 640, hash E714454F + sample 193: + time = 4160249 + flags = 1 + data = length 646, hash 6DD5E81B + sample 194: + time = 4181583 + flags = 536870913 + data = length 690, hash 407EC299 +tracksEnded = true diff --git a/testdata/src/test/assets/muxerdumps/muxed_sample.mp4.dump b/testdata/src/test/assets/muxerdumps/muxed_sample.mp4.dump new file mode 100644 index 0000000000..ff74fc360d --- /dev/null +++ b/testdata/src/test/assets/muxerdumps/muxed_sample.mp4.dump @@ -0,0 +1,337 @@ +seekMap: + isSeekable = true + duration = 1065600 + getPosition(0) = [[timeUs=0, position=44]] + getPosition(1) = [[timeUs=0, position=44]] + getPosition(532800) = [[timeUs=0, position=44]] + getPosition(1065600) = [[timeUs=0, position=44]] +numberOfTracks = 2 +track 0: + total output bytes = 89876 + sample count = 30 + format 0: + id = 1 + sampleMimeType = video/avc + codecs = avc1.64001F + maxInputSize = 36722 + width = 1080 + height = 720 + frameRate = 32.113037 + initializationData: + data = length 29, hash 4746B5D9 + data = length 10, hash 7A0D0F2B + sample 0: + time = 0 + flags = 1 + data = length 36692, hash D216076E + sample 1: + time = 66722 + flags = 0 + data = length 5312, hash D45D3CA0 + sample 2: + time = 33355 + flags = 0 + data = length 599, hash 1BE7812D + sample 3: + time = 200200 + flags = 0 + data = length 7735, hash 4490F110 + sample 4: + time = 133455 + flags = 0 + data = length 987, hash 560B5036 + sample 5: + time = 100100 + flags = 0 + data = length 673, hash ED7CD8C7 + sample 6: + time = 166822 + flags = 0 + data = length 523, hash 3020DF50 + sample 7: + time = 333655 + flags = 0 + data = length 6061, hash 736C72B2 + sample 8: + time = 266922 + flags = 0 + data = length 992, hash FE132F23 + sample 9: + time = 233555 + flags = 0 + data = length 623, hash 5B2C1816 + sample 10: + time = 300300 + flags = 0 + data = length 421, hash 742E69C1 + sample 11: + time = 433755 + flags = 0 + data = length 4899, hash F72F86A1 + sample 12: + time = 400400 + flags = 0 + data = length 568, hash 519A8E50 + sample 13: + time = 367022 + flags = 0 + data = length 620, hash 3990AA39 + sample 14: + time = 567222 + flags = 0 + data = length 5450, hash F06EC4AA + sample 15: + time = 500500 + flags = 0 + data = length 1051, hash 92DFA63A + sample 16: + time = 467122 + flags = 0 + data = length 874, hash 69587FB4 + sample 17: + time = 533855 + flags = 0 + data = length 781, hash 36BE495B + sample 18: + time = 700700 + flags = 0 + data = length 4725, hash AC0C8CD3 + sample 19: + time = 633955 + flags = 0 + data = length 1022, hash 5D8BFF34 + sample 20: + time = 600600 + flags = 0 + data = length 790, hash 99413A99 + sample 21: + time = 667322 + flags = 0 + data = length 610, hash 5E129290 + sample 22: + time = 834155 + flags = 0 + data = length 2751, hash 769974CB + sample 23: + time = 767422 + flags = 0 + data = length 745, hash B78A477A + sample 24: + time = 734055 + flags = 0 + data = length 621, hash CF741E7A + sample 25: + time = 800800 + flags = 0 + data = length 505, hash 1DB4894E + sample 26: + time = 967622 + flags = 0 + data = length 1268, hash C15348DC + sample 27: + time = 900900 + flags = 0 + data = length 880, hash C2DE85D0 + sample 28: + time = 867522 + flags = 0 + data = length 530, hash C98BC6A8 + sample 29: + time = 934255 + flags = 536870912 + data = length 568, hash 4FE5C8EA +track 1: + total output bytes = 9529 + sample count = 45 + format 0: + peakBitrate = 200000 + id = 2 + sampleMimeType = audio/mp4a-latm + codecs = mp4a.40.2 + maxInputSize = 294 + channelCount = 1 + sampleRate = 44100 + language = und + initializationData: + data = length 2, hash 5F7 + sample 0: + time = 0 + flags = 1 + data = length 23, hash 47DE9131 + sample 1: + time = 67208 + flags = 1 + data = length 6, hash 31EC5206 + sample 2: + time = 90416 + flags = 1 + data = length 148, hash 894A176B + sample 3: + time = 113645 + flags = 1 + data = length 189, hash CEF235A1 + sample 4: + time = 136854 + flags = 1 + data = length 205, hash BBF5F7B0 + sample 5: + time = 160083 + flags = 1 + data = length 210, hash F278B193 + sample 6: + time = 183291 + flags = 1 + data = length 210, hash 82DA1589 + sample 7: + time = 206520 + flags = 1 + data = length 207, hash 5BE231DF + sample 8: + time = 229750 + flags = 1 + data = length 225, hash 18819EE1 + sample 9: + time = 252958 + flags = 1 + data = length 215, hash CA7FA67B + sample 10: + time = 276187 + flags = 1 + data = length 211, hash 581A1C18 + sample 11: + time = 299395 + flags = 1 + data = length 216, hash ADB88187 + sample 12: + time = 322625 + flags = 1 + data = length 229, hash 2E8BA4DC + sample 13: + time = 345833 + flags = 1 + data = length 232, hash 22F0C510 + sample 14: + time = 369062 + flags = 1 + data = length 235, hash 867AD0DC + sample 15: + time = 392270 + flags = 1 + data = length 231, hash 84E823A8 + sample 16: + time = 415500 + flags = 1 + data = length 226, hash 1BEF3A95 + sample 17: + time = 438729 + flags = 1 + data = length 216, hash EAA345AE + sample 18: + time = 461937 + flags = 1 + data = length 229, hash 6957411F + sample 19: + time = 485166 + flags = 1 + data = length 219, hash 41275022 + sample 20: + time = 508375 + flags = 1 + data = length 241, hash 6495DF96 + sample 21: + time = 531604 + flags = 1 + data = length 228, hash 63D95906 + sample 22: + time = 554812 + flags = 1 + data = length 238, hash 34F676F9 + sample 23: + time = 578041 + flags = 1 + data = length 234, hash E5CBC045 + sample 24: + time = 601250 + flags = 1 + data = length 231, hash 5FC43661 + sample 25: + time = 624479 + flags = 1 + data = length 217, hash 682708ED + sample 26: + time = 647708 + flags = 1 + data = length 239, hash D43780FC + sample 27: + time = 670916 + flags = 1 + data = length 243, hash C5E17980 + sample 28: + time = 694145 + flags = 1 + data = length 231, hash AC5837BA + sample 29: + time = 717354 + flags = 1 + data = length 230, hash 169EE895 + sample 30: + time = 740583 + flags = 1 + data = length 238, hash C48FF3F1 + sample 31: + time = 763791 + flags = 1 + data = length 225, hash 531E4599 + sample 32: + time = 787020 + flags = 1 + data = length 232, hash CB3C6B8D + sample 33: + time = 810229 + flags = 1 + data = length 243, hash F8C94C7 + sample 34: + time = 833458 + flags = 1 + data = length 232, hash A646A7D0 + sample 35: + time = 856687 + flags = 1 + data = length 237, hash E8B787A5 + sample 36: + time = 879895 + flags = 1 + data = length 228, hash 3FA7A29F + sample 37: + time = 903125 + flags = 1 + data = length 235, hash B9B33B0A + sample 38: + time = 926333 + flags = 1 + data = length 264, hash 71A4869E + sample 39: + time = 949562 + flags = 1 + data = length 257, hash D049B54C + sample 40: + time = 972770 + flags = 1 + data = length 227, hash 66757231 + sample 41: + time = 996000 + flags = 1 + data = length 227, hash BD374F1B + sample 42: + time = 1019208 + flags = 1 + data = length 235, hash 999477F6 + sample 43: + time = 1042437 + flags = 1 + data = length 229, hash FFF98DF0 + sample 44: + time = 1065666 + flags = 536870913 + data = length 6, hash 31B22286 +tracksEnded = true diff --git a/testdata/src/test/assets/muxerdumps/muxed_sample_h265.mp4.dump b/testdata/src/test/assets/muxerdumps/muxed_sample_h265.mp4.dump new file mode 100644 index 0000000000..30b82e03dc --- /dev/null +++ b/testdata/src/test/assets/muxerdumps/muxed_sample_h265.mp4.dump @@ -0,0 +1,1222 @@ +seekMap: + isSeekable = true + duration = 9933300 + getPosition(0) = [[timeUs=0, position=44]] + getPosition(1) = [[timeUs=0, position=44], [timeUs=8333322, position=804255]] + getPosition(4966650) = [[timeUs=0, position=44], [timeUs=8333322, position=804255]] + getPosition(9933300) = [[timeUs=8333322, position=804255]] +numberOfTracks = 1 +track 0: + total output bytes = 1042502 + sample count = 300 + format 0: + id = 1 + sampleMimeType = video/hevc + codecs = hvc1.1.6.L120.90 + maxInputSize = 140842 + width = 1920 + height = 1080 + frameRate = 30.201443 + initializationData: + data = length 2000, hash AD02E269 + sample 0: + time = 0 + flags = 1 + data = length 131765, hash 7D6B8713 + sample 1: + time = 166655 + flags = 0 + data = length 1517, hash 3D11191C + sample 2: + time = 100000 + flags = 0 + data = length 474, hash 6F27A90E + sample 3: + time = 33322 + flags = 0 + data = length 311, hash DB50CAE5 + sample 4: + time = 66655 + flags = 0 + data = length 298, hash 2CB4DD11 + sample 5: + time = 133322 + flags = 0 + data = length 200, hash 8DD8C625 + sample 6: + time = 300000 + flags = 0 + data = length 1137, hash EE9F4C2E + sample 7: + time = 233322 + flags = 0 + data = length 306, hash 2E2D9FC2 + sample 8: + time = 200000 + flags = 0 + data = length 172, hash 9C70BD2 + sample 9: + time = 266655 + flags = 0 + data = length 164, hash B2FE656A + sample 10: + time = 466655 + flags = 0 + data = length 2434, hash E614C7E6 + sample 11: + time = 400000 + flags = 0 + data = length 330, hash 88AD8365 + sample 12: + time = 333322 + flags = 0 + data = length 194, hash 201786FA + sample 13: + time = 366655 + flags = 0 + data = length 203, hash 970AD1A8 + sample 14: + time = 433322 + flags = 0 + data = length 204, hash BC041444 + sample 15: + time = 600000 + flags = 0 + data = length 2757, hash 18307BB7 + sample 16: + time = 533322 + flags = 0 + data = length 424, hash A3D0FA75 + sample 17: + time = 500000 + flags = 0 + data = length 183, hash E3FF1372 + sample 18: + time = 566655 + flags = 0 + data = length 198, hash FA4FC966 + sample 19: + time = 766655 + flags = 0 + data = length 3924, hash 5973C366 + sample 20: + time = 700000 + flags = 0 + data = length 379, hash 6300EDDA + sample 21: + time = 633322 + flags = 0 + data = length 233, hash 668A1C6C + sample 22: + time = 666655 + flags = 0 + data = length 250, hash 6DF242A1 + sample 23: + time = 733322 + flags = 0 + data = length 198, hash 3493522C + sample 24: + time = 900000 + flags = 0 + data = length 3734, hash 9E697483 + sample 25: + time = 833322 + flags = 0 + data = length 461, hash 3A3D26A2 + sample 26: + time = 800000 + flags = 0 + data = length 210, hash 36A4EC8F + sample 27: + time = 866655 + flags = 0 + data = length 203, hash 55012842 + sample 28: + time = 1033322 + flags = 0 + data = length 4109, hash FF343FFF + sample 29: + time = 966655 + flags = 0 + data = length 520, hash BD70FFCB + sample 30: + time = 933322 + flags = 0 + data = length 205, hash A1575193 + sample 31: + time = 1000000 + flags = 0 + data = length 209, hash 1B2FCDBF + sample 32: + time = 1166655 + flags = 0 + data = length 4396, hash 1751057 + sample 33: + time = 1100000 + flags = 0 + data = length 546, hash 8DBF89E8 + sample 34: + time = 1066655 + flags = 0 + data = length 228, hash 58BA61A2 + sample 35: + time = 1133322 + flags = 0 + data = length 220, hash 59B4693A + sample 36: + time = 1300000 + flags = 0 + data = length 4364, hash C9713245 + sample 37: + time = 1233322 + flags = 0 + data = length 553, hash F239427C + sample 38: + time = 1200000 + flags = 0 + data = length 250, hash 50F089F6 + sample 39: + time = 1266655 + flags = 0 + data = length 228, hash C0BB4550 + sample 40: + time = 1433322 + flags = 0 + data = length 5151, hash B57C6DA3 + sample 41: + time = 1366655 + flags = 0 + data = length 605, hash 3EE33C0F + sample 42: + time = 1333322 + flags = 0 + data = length 269, hash C2E35575 + sample 43: + time = 1400000 + flags = 0 + data = length 267, hash 809EB79D + sample 44: + time = 1566655 + flags = 0 + data = length 5323, hash A4F2749C + sample 45: + time = 1500000 + flags = 0 + data = length 603, hash 461073E8 + sample 46: + time = 1466655 + flags = 0 + data = length 310, hash BA67EF62 + sample 47: + time = 1533322 + flags = 0 + data = length 255, hash 98464ABC + sample 48: + time = 1700000 + flags = 0 + data = length 4765, hash 4092ED8 + sample 49: + time = 1633322 + flags = 0 + data = length 535, hash C70C3A3A + sample 50: + time = 1600000 + flags = 0 + data = length 284, hash 60895275 + sample 51: + time = 1666655 + flags = 0 + data = length 250, hash 60D57803 + sample 52: + time = 1833322 + flags = 0 + data = length 6035, hash 2F3A27D6 + sample 53: + time = 1766655 + flags = 0 + data = length 579, hash CC38637A + sample 54: + time = 1733322 + flags = 0 + data = length 308, hash 31D3074E + sample 55: + time = 1800000 + flags = 0 + data = length 267, hash 9D771D43 + sample 56: + time = 1966655 + flags = 0 + data = length 5963, hash 9E3CC254 + sample 57: + time = 1900000 + flags = 0 + data = length 537, hash 1AB3F029 + sample 58: + time = 1866655 + flags = 0 + data = length 268, hash 6EB3E8D9 + sample 59: + time = 1933322 + flags = 0 + data = length 277, hash 86FDE5AF + sample 60: + time = 2100000 + flags = 0 + data = length 5782, hash E52E802D + sample 61: + time = 2033322 + flags = 0 + data = length 541, hash F33BEEFF + sample 62: + time = 2000000 + flags = 0 + data = length 308, hash 3D18B690 + sample 63: + time = 2066655 + flags = 0 + data = length 277, hash 67BA86C3 + sample 64: + time = 2233322 + flags = 0 + data = length 5655, hash 62881AB7 + sample 65: + time = 2166655 + flags = 0 + data = length 592, hash F0D3A084 + sample 66: + time = 2133322 + flags = 0 + data = length 268, hash EB69F5C7 + sample 67: + time = 2200000 + flags = 0 + data = length 267, hash EA89ABA7 + sample 68: + time = 2366655 + flags = 0 + data = length 5944, hash DB79AAD7 + sample 69: + time = 2300000 + flags = 0 + data = length 582, hash 9145E59D + sample 70: + time = 2266655 + flags = 0 + data = length 325, hash 88EBBA92 + sample 71: + time = 2333322 + flags = 0 + data = length 274, hash BBD4E84F + sample 72: + time = 2500000 + flags = 0 + data = length 13949, hash 80D57039 + sample 73: + time = 2433322 + flags = 0 + data = length 687, hash 4B3D9538 + sample 74: + time = 2400000 + flags = 0 + data = length 424, hash 63E13A35 + sample 75: + time = 2466655 + flags = 0 + data = length 333, hash CCD74625 + sample 76: + time = 2633322 + flags = 0 + data = length 7725, hash 1DF58AB0 + sample 77: + time = 2566655 + flags = 0 + data = length 645, hash D84B730A + sample 78: + time = 2533322 + flags = 0 + data = length 379, hash 64B933C8 + sample 79: + time = 2600000 + flags = 0 + data = length 329, hash 873E129D + sample 80: + time = 2766655 + flags = 0 + data = length 10979, hash 4F08ACCD + sample 81: + time = 2700000 + flags = 0 + data = length 630, hash 8956F492 + sample 82: + time = 2666655 + flags = 0 + data = length 421, hash 920F1C78 + sample 83: + time = 2733322 + flags = 0 + data = length 352, hash 13AD0270 + sample 84: + time = 2933322 + flags = 0 + data = length 10910, hash B223D088 + sample 85: + time = 2866655 + flags = 0 + data = length 664, hash 26D737E4 + sample 86: + time = 2800000 + flags = 0 + data = length 482, hash A7E05C2F + sample 87: + time = 2833322 + flags = 0 + data = length 454, hash D014F6A2 + sample 88: + time = 2900000 + flags = 0 + data = length 354, hash 5D1DFF85 + sample 89: + time = 3066655 + flags = 0 + data = length 11363, hash 47265AEC + sample 90: + time = 3000000 + flags = 0 + data = length 686, hash 3BE02D4D + sample 91: + time = 2966655 + flags = 0 + data = length 421, hash D354630 + sample 92: + time = 3033322 + flags = 0 + data = length 356, hash DDBB2CEC + sample 93: + time = 3200000 + flags = 0 + data = length 11498, hash 6AFF4526 + sample 94: + time = 3133322 + flags = 0 + data = length 717, hash E8174E9B + sample 95: + time = 3100000 + flags = 0 + data = length 450, hash 597A517C + sample 96: + time = 3166655 + flags = 0 + data = length 371, hash AA9913A4 + sample 97: + time = 3333322 + flags = 0 + data = length 10723, hash 6A317800 + sample 98: + time = 3266655 + flags = 0 + data = length 693, hash B0E418CB + sample 99: + time = 3233322 + flags = 0 + data = length 462, hash A7AE8097 + sample 100: + time = 3300000 + flags = 0 + data = length 374, hash 8F2138EE + sample 101: + time = 3466655 + flags = 0 + data = length 10496, hash 9EEF9C3A + sample 102: + time = 3400000 + flags = 0 + data = length 695, hash 9CF52988 + sample 103: + time = 3366655 + flags = 0 + data = length 429, hash 4D26FE7C + sample 104: + time = 3433322 + flags = 0 + data = length 350, hash 92F6A0E0 + sample 105: + time = 3600000 + flags = 0 + data = length 11783, hash 18A940C7 + sample 106: + time = 3533322 + flags = 0 + data = length 730, hash C0CF5368 + sample 107: + time = 3500000 + flags = 0 + data = length 444, hash 17CD9183 + sample 108: + time = 3566655 + flags = 0 + data = length 357, hash 5C70A4F3 + sample 109: + time = 3733322 + flags = 0 + data = length 14199, hash C881D4BB + sample 110: + time = 3666655 + flags = 0 + data = length 745, hash 8978155 + sample 111: + time = 3633322 + flags = 0 + data = length 458, hash 81DCF770 + sample 112: + time = 3700000 + flags = 0 + data = length 361, hash 944441AF + sample 113: + time = 3866655 + flags = 0 + data = length 10414, hash BDFC355B + sample 114: + time = 3800000 + flags = 0 + data = length 679, hash 7C07297B + sample 115: + time = 3766655 + flags = 0 + data = length 477, hash C557701D + sample 116: + time = 3833322 + flags = 0 + data = length 376, hash EA1F11BB + sample 117: + time = 4000000 + flags = 0 + data = length 12617, hash E3023C07 + sample 118: + time = 3933322 + flags = 0 + data = length 740, hash 7BCEF86B + sample 119: + time = 3900000 + flags = 0 + data = length 475, hash 7783450A + sample 120: + time = 3966655 + flags = 0 + data = length 380, hash 5963867D + sample 121: + time = 4133322 + flags = 0 + data = length 12011, hash B94DECA6 + sample 122: + time = 4066655 + flags = 0 + data = length 682, hash 1EA44EB3 + sample 123: + time = 4033322 + flags = 0 + data = length 429, hash F5B128A0 + sample 124: + time = 4100000 + flags = 0 + data = length 391, hash 22A8285E + sample 125: + time = 4266655 + flags = 0 + data = length 12503, hash 24081384 + sample 126: + time = 4200000 + flags = 0 + data = length 732, hash 2FDAF85A + sample 127: + time = 4166655 + flags = 0 + data = length 477, hash B378A94E + sample 128: + time = 4233322 + flags = 0 + data = length 394, hash 958CD022 + sample 129: + time = 4433322 + flags = 0 + data = length 13261, hash 4816BEEB + sample 130: + time = 4366655 + flags = 0 + data = length 752, hash 477F0A15 + sample 131: + time = 4300000 + flags = 0 + data = length 564, hash D1DC22D8 + sample 132: + time = 4333322 + flags = 0 + data = length 506, hash C00D1929 + sample 133: + time = 4400000 + flags = 0 + data = length 394, hash 9BFF346 + sample 134: + time = 4566655 + flags = 0 + data = length 11903, hash 12779D95 + sample 135: + time = 4500000 + flags = 0 + data = length 717, hash 60A08856 + sample 136: + time = 4466655 + flags = 0 + data = length 505, hash 6FB2109A + sample 137: + time = 4533322 + flags = 0 + data = length 409, hash 48EB454 + sample 138: + time = 4700000 + flags = 0 + data = length 13580, hash 5C39A388 + sample 139: + time = 4633322 + flags = 0 + data = length 792, hash 329CED29 + sample 140: + time = 4600000 + flags = 0 + data = length 495, hash 9FE09648 + sample 141: + time = 4666655 + flags = 0 + data = length 363, hash ED03E03C + sample 142: + time = 4833322 + flags = 0 + data = length 13394, hash 373BDD24 + sample 143: + time = 4766655 + flags = 0 + data = length 765, hash DC064B03 + sample 144: + time = 4733322 + flags = 0 + data = length 493, hash CACBF77 + sample 145: + time = 4800000 + flags = 0 + data = length 405, hash F8B98FD3 + sample 146: + time = 4966655 + flags = 0 + data = length 11761, hash 91ED0DA0 + sample 147: + time = 4900000 + flags = 0 + data = length 734, hash E96F5A97 + sample 148: + time = 4866655 + flags = 0 + data = length 471, hash 889AAF70 + sample 149: + time = 4933322 + flags = 0 + data = length 384, hash 5ED892D6 + sample 150: + time = 5133322 + flags = 0 + data = length 13938, hash C6D29035 + sample 151: + time = 5066655 + flags = 0 + data = length 782, hash 869DBB2F + sample 152: + time = 5000000 + flags = 0 + data = length 581, hash 3533413B + sample 153: + time = 5033322 + flags = 0 + data = length 544, hash 50E05F0F + sample 154: + time = 5100000 + flags = 0 + data = length 372, hash 69576997 + sample 155: + time = 5266655 + flags = 0 + data = length 12559, hash 420D6E7E + sample 156: + time = 5200000 + flags = 0 + data = length 724, hash F69817E3 + sample 157: + time = 5166655 + flags = 0 + data = length 474, hash 24CE285 + sample 158: + time = 5233322 + flags = 0 + data = length 402, hash FAEA22AD + sample 159: + time = 5433322 + flags = 0 + data = length 14107, hash 44B3E1AE + sample 160: + time = 5366655 + flags = 0 + data = length 817, hash 1E2F4A52 + sample 161: + time = 5300000 + flags = 0 + data = length 581, hash 9C022CA7 + sample 162: + time = 5333322 + flags = 0 + data = length 586, hash 53AC8E54 + sample 163: + time = 5400000 + flags = 0 + data = length 463, hash 862F04D9 + sample 164: + time = 5566655 + flags = 0 + data = length 13314, hash 93510084 + sample 165: + time = 5500000 + flags = 0 + data = length 808, hash 326617FC + sample 166: + time = 5466655 + flags = 0 + data = length 514, hash C3588FE0 + sample 167: + time = 5533322 + flags = 0 + data = length 394, hash B8C2D97 + sample 168: + time = 5733322 + flags = 0 + data = length 14199, hash 87D43C84 + sample 169: + time = 5666655 + flags = 0 + data = length 845, hash 362F8A95 + sample 170: + time = 5600000 + flags = 0 + data = length 583, hash 9E48AF23 + sample 171: + time = 5633322 + flags = 0 + data = length 581, hash 346391D + sample 172: + time = 5700000 + flags = 0 + data = length 447, hash 9B7A50A + sample 173: + time = 5866655 + flags = 0 + data = length 12474, hash BBB8D11D + sample 174: + time = 5800000 + flags = 0 + data = length 841, hash 2EB6ED16 + sample 175: + time = 5766655 + flags = 0 + data = length 468, hash AE24D66D + sample 176: + time = 5833322 + flags = 0 + data = length 418, hash 4BE2EE7E + sample 177: + time = 6000000 + flags = 0 + data = length 13859, hash 118F5B97 + sample 178: + time = 5933322 + flags = 0 + data = length 813, hash BE79F743 + sample 179: + time = 5900000 + flags = 0 + data = length 501, hash 25F651D3 + sample 180: + time = 5966655 + flags = 0 + data = length 409, hash A8FB52C + sample 181: + time = 6133322 + flags = 0 + data = length 12583, hash 856D63F5 + sample 182: + time = 6066655 + flags = 0 + data = length 778, hash EC4F854C + sample 183: + time = 6033322 + flags = 0 + data = length 464, hash 529530B9 + sample 184: + time = 6100000 + flags = 0 + data = length 439, hash BAE4A78A + sample 185: + time = 6266655 + flags = 0 + data = length 13550, hash 76DA403B + sample 186: + time = 6200000 + flags = 0 + data = length 811, hash 67265BB8 + sample 187: + time = 6166655 + flags = 0 + data = length 528, hash E6146ECA + sample 188: + time = 6233322 + flags = 0 + data = length 389, hash F637338A + sample 189: + time = 6400000 + flags = 0 + data = length 12624, hash 133DE14C + sample 190: + time = 6333322 + flags = 0 + data = length 777, hash EF247AAE + sample 191: + time = 6300000 + flags = 0 + data = length 469, hash 6A998A63 + sample 192: + time = 6366655 + flags = 0 + data = length 384, hash 291EA200 + sample 193: + time = 6533322 + flags = 0 + data = length 13114, hash A136FA72 + sample 194: + time = 6466655 + flags = 0 + data = length 804, hash 62E2A38B + sample 195: + time = 6433322 + flags = 0 + data = length 474, hash 2F67A1EB + sample 196: + time = 6500000 + flags = 0 + data = length 390, hash 79EB37D0 + sample 197: + time = 6666655 + flags = 0 + data = length 13325, hash 482DCB04 + sample 198: + time = 6600000 + flags = 0 + data = length 792, hash 49A2E754 + sample 199: + time = 6566655 + flags = 0 + data = length 503, hash F222CD1E + sample 200: + time = 6633322 + flags = 0 + data = length 430, hash 4F598ECA + sample 201: + time = 6800000 + flags = 0 + data = length 12580, hash 189BE30B + sample 202: + time = 6733322 + flags = 0 + data = length 769, hash 2E8527E0 + sample 203: + time = 6700000 + flags = 0 + data = length 506, hash 45728A3C + sample 204: + time = 6766655 + flags = 0 + data = length 445, hash 94401E3C + sample 205: + time = 6933322 + flags = 0 + data = length 13820, hash 9CD622 + sample 206: + time = 6866655 + flags = 0 + data = length 875, hash 22C76AE4 + sample 207: + time = 6833322 + flags = 0 + data = length 504, hash 1FBC37FA + sample 208: + time = 6900000 + flags = 0 + data = length 420, hash 735B7B09 + sample 209: + time = 7066655 + flags = 0 + data = length 12734, hash 9672346D + sample 210: + time = 7000000 + flags = 0 + data = length 796, hash 1A524B9F + sample 211: + time = 6966655 + flags = 0 + data = length 479, hash 6B8F7F01 + sample 212: + time = 7033322 + flags = 0 + data = length 426, hash A5307196 + sample 213: + time = 7200000 + flags = 0 + data = length 13583, hash 67DE3A2 + sample 214: + time = 7133322 + flags = 0 + data = length 777, hash 5D9307EE + sample 215: + time = 7100000 + flags = 0 + data = length 546, hash 6E9ACA67 + sample 216: + time = 7166655 + flags = 0 + data = length 421, hash 68649F6C + sample 217: + time = 7366655 + flags = 0 + data = length 14025, hash A1D1DB3A + sample 218: + time = 7300000 + flags = 0 + data = length 832, hash 6740CCFE + sample 219: + time = 7233322 + flags = 0 + data = length 574, hash 31CB1E24 + sample 220: + time = 7266655 + flags = 0 + data = length 565, hash F34D4452 + sample 221: + time = 7333322 + flags = 0 + data = length 414, hash FCFA9114 + sample 222: + time = 7500000 + flags = 0 + data = length 12348, hash 13EA4FC0 + sample 223: + time = 7433322 + flags = 0 + data = length 769, hash 7C586185 + sample 224: + time = 7400000 + flags = 0 + data = length 518, hash 294849F5 + sample 225: + time = 7466655 + flags = 0 + data = length 433, hash 87904896 + sample 226: + time = 7633322 + flags = 0 + data = length 13100, hash D2CAD27F + sample 227: + time = 7566655 + flags = 0 + data = length 892, hash E40A8D86 + sample 228: + time = 7533322 + flags = 0 + data = length 505, hash EC9D9C13 + sample 229: + time = 7600000 + flags = 0 + data = length 412, hash FA73ADDC + sample 230: + time = 7766655 + flags = 0 + data = length 10419, hash 42F2395E + sample 231: + time = 7700000 + flags = 0 + data = length 797, hash A522D0A9 + sample 232: + time = 7666655 + flags = 0 + data = length 468, hash 573A3B8D + sample 233: + time = 7733322 + flags = 0 + data = length 427, hash 634C36E8 + sample 234: + time = 7900000 + flags = 0 + data = length 9739, hash 4D5AE1E2 + sample 235: + time = 7833322 + flags = 0 + data = length 795, hash 6D77EB12 + sample 236: + time = 7800000 + flags = 0 + data = length 493, hash 1D655DFF + sample 237: + time = 7866655 + flags = 0 + data = length 445, hash 26301482 + sample 238: + time = 8033322 + flags = 0 + data = length 6362, hash 4D26A748 + sample 239: + time = 7966655 + flags = 0 + data = length 777, hash 38CA2D81 + sample 240: + time = 7933322 + flags = 0 + data = length 478, hash 84405E31 + sample 241: + time = 8000000 + flags = 0 + data = length 449, hash F9B27352 + sample 242: + time = 8200000 + flags = 0 + data = length 5427, hash CCAA09E6 + sample 243: + time = 8133322 + flags = 0 + data = length 798, hash F569C601 + sample 244: + time = 8066655 + flags = 0 + data = length 562, hash ECF0107B + sample 245: + time = 8100000 + flags = 0 + data = length 575, hash 70B1C7BF + sample 246: + time = 8166655 + flags = 0 + data = length 446, hash 2E3B45F9 + sample 247: + time = 8333322 + flags = 1 + data = length 140812, hash C88D0B99 + sample 248: + time = 8266655 + flags = 0 + data = length 1058, hash 67B8EA4B + sample 249: + time = 8233322 + flags = 0 + data = length 527, hash 87BE3525 + sample 250: + time = 8300000 + flags = 0 + data = length 570, hash 96FE5FBB + sample 251: + time = 8466655 + flags = 0 + data = length 3523, hash C98A305D + sample 252: + time = 8400000 + flags = 0 + data = length 842, hash 3ABB8207 + sample 253: + time = 8366655 + flags = 0 + data = length 469, hash C5509204 + sample 254: + time = 8433322 + flags = 0 + data = length 444, hash B4DE0330 + sample 255: + time = 8600000 + flags = 0 + data = length 6225, hash C0F83B95 + sample 256: + time = 8533322 + flags = 0 + data = length 772, hash 9B1E6016 + sample 257: + time = 8500000 + flags = 0 + data = length 452, hash 1C98FF91 + sample 258: + time = 8566655 + flags = 0 + data = length 418, hash 7ADDD080 + sample 259: + time = 8733322 + flags = 0 + data = length 6269, hash 24456FBF + sample 260: + time = 8666655 + flags = 0 + data = length 717, hash 1066605D + sample 261: + time = 8633322 + flags = 0 + data = length 439, hash 8B6072D2 + sample 262: + time = 8700000 + flags = 0 + data = length 370, hash E201186D + sample 263: + time = 8866655 + flags = 0 + data = length 8769, hash 5407D926 + sample 264: + time = 8800000 + flags = 0 + data = length 855, hash 6C27C17C + sample 265: + time = 8766655 + flags = 0 + data = length 404, hash 51C28DDA + sample 266: + time = 8833322 + flags = 0 + data = length 369, hash 56C4AD50 + sample 267: + time = 9000000 + flags = 0 + data = length 8274, hash AB6B11F8 + sample 268: + time = 8933322 + flags = 0 + data = length 741, hash 6989C99E + sample 269: + time = 8900000 + flags = 0 + data = length 426, hash 3DAC53A2 + sample 270: + time = 8966655 + flags = 0 + data = length 387, hash 9BF6991 + sample 271: + time = 9133322 + flags = 0 + data = length 8904, hash 668E752A + sample 272: + time = 9066655 + flags = 0 + data = length 767, hash 1E22C008 + sample 273: + time = 9033322 + flags = 0 + data = length 414, hash E251266E + sample 274: + time = 9100000 + flags = 0 + data = length 388, hash 22CB91F1 + sample 275: + time = 9266655 + flags = 0 + data = length 9017, hash A779CB2B + sample 276: + time = 9200000 + flags = 0 + data = length 748, hash 67F0D5F9 + sample 277: + time = 9166655 + flags = 0 + data = length 446, hash A1AF6073 + sample 278: + time = 9233322 + flags = 0 + data = length 399, hash 1D0FFE91 + sample 279: + time = 9400000 + flags = 0 + data = length 7595, hash 6DD54093 + sample 280: + time = 9333322 + flags = 0 + data = length 784, hash 74C9E29E + sample 281: + time = 9300000 + flags = 0 + data = length 422, hash 4628C8A8 + sample 282: + time = 9366655 + flags = 0 + data = length 398, hash 45746623 + sample 283: + time = 9533322 + flags = 0 + data = length 6534, hash AF463276 + sample 284: + time = 9466655 + flags = 0 + data = length 735, hash 8B330562 + sample 285: + time = 9433322 + flags = 0 + data = length 450, hash 33227753 + sample 286: + time = 9500000 + flags = 0 + data = length 412, hash C8083009 + sample 287: + time = 9666655 + flags = 0 + data = length 4996, hash C13CC9B0 + sample 288: + time = 9600000 + flags = 0 + data = length 662, hash ABFB2097 + sample 289: + time = 9566655 + flags = 0 + data = length 443, hash 3A59F96A + sample 290: + time = 9633322 + flags = 0 + data = length 422, hash 3611B4AC + sample 291: + time = 9800000 + flags = 0 + data = length 3622, hash D4E8CEB0 + sample 292: + time = 9733322 + flags = 0 + data = length 735, hash AA7A3484 + sample 293: + time = 9700000 + flags = 0 + data = length 442, hash A6ED7F94 + sample 294: + time = 9766655 + flags = 0 + data = length 425, hash 42AC218D + sample 295: + time = 9966655 + flags = 0 + data = length 1547, hash 352731B0 + sample 296: + time = 9900000 + flags = 0 + data = length 782, hash E103BB0C + sample 297: + time = 9833322 + flags = 0 + data = length 582, hash 7CBE4DF2 + sample 298: + time = 9866655 + flags = 0 + data = length 568, hash AC2698BD + sample 299: + time = 9933322 + flags = 536870912 + data = length 520, hash 5D58C9EE +tracksEnded = true diff --git a/testutils/src/main/java/com/google/android/exoplayer2/testutil/TestUtil.java b/testutils/src/main/java/com/google/android/exoplayer2/testutil/TestUtil.java index 5d721d82ab..3f3d408b0b 100644 --- a/testutils/src/main/java/com/google/android/exoplayer2/testutil/TestUtil.java +++ b/testutils/src/main/java/com/google/android/exoplayer2/testutil/TestUtil.java @@ -45,6 +45,7 @@ import com.google.common.collect.ImmutableList; import com.google.common.primitives.Bytes; import com.google.common.truth.Correspondence; import java.io.File; +import java.io.FileInputStream; import java.io.FileOutputStream; import java.io.IOException; import java.io.InputStream; @@ -189,6 +190,12 @@ public class TestUtil { return Util.toByteArray(getInputStream(context, fileName)); } + /** Returns the bytes of a cache file using its file path. */ + public static byte[] getByteArrayFromCache(String cacheFilePath) throws IOException { + InputStream inputStream = new FileInputStream(cacheFilePath); + return Util.toByteArray(inputStream); + } + /** Returns an {@link InputStream} for reading from an asset file. */ public static InputStream getInputStream(Context context, String fileName) throws IOException { return context.getResources().getAssets().open(fileName); @@ -403,6 +410,26 @@ public class TestUtil { public static FakeExtractorOutput extractAllSamplesFromFile( Extractor extractor, Context context, String fileName) throws IOException { byte[] data = TestUtil.getByteArray(context, fileName); + return extractAllSamplesFromByteArray(extractor, data); + } + + /** + * Extracts all samples from the given storage file into a {@link FakeTrackOutput}. + * + * @param extractor The {@link Extractor} to extractor from input. + * @param cacheFilePath The cache file path. + * @return The {@link FakeTrackOutput} containing the extracted samples. + * @throws IOException If an error occurred reading from the input, or if the extractor finishes + * reading from input without extracting any {@link SeekMap}. + */ + public static FakeExtractorOutput extractAllSamplesFromCacheFile( + Extractor extractor, String cacheFilePath) throws IOException { + byte[] data = TestUtil.getByteArrayFromCache(cacheFilePath); + return extractAllSamplesFromByteArray(extractor, data); + } + + private static FakeExtractorOutput extractAllSamplesFromByteArray( + Extractor extractor, byte[] data) throws IOException { FakeExtractorOutput expectedOutput = new FakeExtractorOutput(); extractor.init(expectedOutput); FakeExtractorInput input = new FakeExtractorInput.Builder().setData(data).build();