diff --git a/libraries/test_data/src/test/assets/transformerdumps/mkv/sample_with_srt.mkv.dump b/libraries/test_data/src/test/assets/transformerdumps/mkv/sample_with_srt.mkv.dump index 73cae964c6..972571ae76 100644 --- a/libraries/test_data/src/test/assets/transformerdumps/mkv/sample_with_srt.mkv.dump +++ b/libraries/test_data/src/test/assets/transformerdumps/mkv/sample_with_srt.mkv.dump @@ -1,9 +1,4 @@ format 0: - sampleMimeType = audio/mp4a-latm - channelCount = 1 - sampleRate = 44100 - pcmEncoding = 2 -format 1: id = 1 sampleMimeType = video/avc codecs = avc1.640034 @@ -14,356 +9,361 @@ format 1: initializationData: data = length 30, hash F6F3D010 data = length 10, hash 7A0D0F2B +format 1: + sampleMimeType = audio/mp4a-latm + channelCount = 1 + sampleRate = 44100 + pcmEncoding = 2 sample: trackIndex = 1 - dataHashCode = -252482306 - size = 36477 - isKeyFrame = true - presentationTimeUs = 0 -sample: - trackIndex = 1 - dataHashCode = 67864034 - size = 5341 - isKeyFrame = false - presentationTimeUs = 67000 -sample: - trackIndex = 1 - dataHashCode = 897273234 - size = 596 - isKeyFrame = false - presentationTimeUs = 33000 -sample: - trackIndex = 1 - dataHashCode = -1549870586 - size = 7704 - isKeyFrame = false - presentationTimeUs = 200000 -sample: - trackIndex = 1 - dataHashCode = 672384813 - size = 989 - isKeyFrame = false - presentationTimeUs = 133000 -sample: - trackIndex = 1 - dataHashCode = -988996493 - size = 721 - isKeyFrame = false - presentationTimeUs = 100000 -sample: - trackIndex = 1 - dataHashCode = 1711151377 - size = 519 - isKeyFrame = false - presentationTimeUs = 167000 -sample: - trackIndex = 1 - dataHashCode = -506806036 - size = 6160 - isKeyFrame = false - presentationTimeUs = 333000 -sample: - trackIndex = 1 - dataHashCode = 1902167649 - size = 953 - isKeyFrame = false - presentationTimeUs = 267000 -sample: - trackIndex = 1 - dataHashCode = 2054873212 - size = 620 - isKeyFrame = false - presentationTimeUs = 233000 -sample: - trackIndex = 0 dataHashCode = 555688582 size = 416 isKeyFrame = true presentationTimeUs = 0 sample: - trackIndex = 0 + trackIndex = 1 dataHashCode = 2000837254 size = 418 isKeyFrame = true presentationTimeUs = 4717 sample: - trackIndex = 0 + trackIndex = 1 dataHashCode = -1593942879 size = 418 isKeyFrame = true presentationTimeUs = 9456 sample: - trackIndex = 0 + trackIndex = 1 dataHashCode = 587837542 size = 418 isKeyFrame = true presentationTimeUs = 14196 sample: - trackIndex = 0 + trackIndex = 1 dataHashCode = -1836423877 size = 418 isKeyFrame = true presentationTimeUs = 18935 sample: - trackIndex = 0 + trackIndex = 1 dataHashCode = 874705099 size = 418 isKeyFrame = true presentationTimeUs = 23674 sample: - trackIndex = 0 + trackIndex = 1 dataHashCode = -269206181 size = 418 isKeyFrame = true presentationTimeUs = 28413 sample: - trackIndex = 0 + trackIndex = 1 dataHashCode = -58682425 size = 418 isKeyFrame = true presentationTimeUs = 33152 sample: - trackIndex = 0 + trackIndex = 1 dataHashCode = -859796970 size = 418 isKeyFrame = true presentationTimeUs = 37892 sample: - trackIndex = 0 + trackIndex = 1 dataHashCode = 711911523 size = 418 isKeyFrame = true presentationTimeUs = 42631 sample: trackIndex = 0 + dataHashCode = -252482306 + size = 36477 + isKeyFrame = true + presentationTimeUs = 0 +sample: + trackIndex = 0 + dataHashCode = 67864034 + size = 5341 + isKeyFrame = false + presentationTimeUs = 67000 +sample: + trackIndex = 0 + dataHashCode = 897273234 + size = 596 + isKeyFrame = false + presentationTimeUs = 33000 +sample: + trackIndex = 0 + dataHashCode = -1549870586 + size = 7704 + isKeyFrame = false + presentationTimeUs = 200000 +sample: + trackIndex = 0 + dataHashCode = 672384813 + size = 989 + isKeyFrame = false + presentationTimeUs = 133000 +sample: + trackIndex = 0 + dataHashCode = -988996493 + size = 721 + isKeyFrame = false + presentationTimeUs = 100000 +sample: + trackIndex = 0 + dataHashCode = 1711151377 + size = 519 + isKeyFrame = false + presentationTimeUs = 167000 +sample: + trackIndex = 0 + dataHashCode = -506806036 + size = 6160 + isKeyFrame = false + presentationTimeUs = 333000 +sample: + trackIndex = 0 + dataHashCode = 1902167649 + size = 953 + isKeyFrame = false + presentationTimeUs = 267000 +sample: + trackIndex = 0 + dataHashCode = 2054873212 + size = 620 + isKeyFrame = false + presentationTimeUs = 233000 +sample: + trackIndex = 1 dataHashCode = -694513071 size = 418 isKeyFrame = true presentationTimeUs = 47370 sample: - trackIndex = 0 + trackIndex = 1 dataHashCode = -1124371059 size = 418 isKeyFrame = true presentationTimeUs = 52109 sample: - trackIndex = 0 + trackIndex = 1 dataHashCode = 297166745 size = 418 isKeyFrame = true presentationTimeUs = 56849 sample: - trackIndex = 0 + trackIndex = 1 dataHashCode = -937110638 size = 418 isKeyFrame = true presentationTimeUs = 61588 sample: - trackIndex = 0 + trackIndex = 1 dataHashCode = -1050158990 size = 418 isKeyFrame = true presentationTimeUs = 66327 sample: - trackIndex = 0 + trackIndex = 1 dataHashCode = 1109510229 size = 418 isKeyFrame = true presentationTimeUs = 71066 sample: - trackIndex = 0 + trackIndex = 1 dataHashCode = 1297086772 size = 418 isKeyFrame = true presentationTimeUs = 75805 sample: - trackIndex = 0 + trackIndex = 1 dataHashCode = -1739939803 size = 418 isKeyFrame = true presentationTimeUs = 80545 sample: - trackIndex = 0 + trackIndex = 1 dataHashCode = -1149727930 size = 418 isKeyFrame = true presentationTimeUs = 85284 sample: - trackIndex = 0 + trackIndex = 1 dataHashCode = -1627652713 size = 418 isKeyFrame = true presentationTimeUs = 90023 sample: - trackIndex = 1 + trackIndex = 0 dataHashCode = 1556608231 size = 405 isKeyFrame = false presentationTimeUs = 300000 sample: - trackIndex = 1 + trackIndex = 0 dataHashCode = -1648978019 size = 4852 isKeyFrame = false presentationTimeUs = 433000 sample: - trackIndex = 1 + trackIndex = 0 dataHashCode = -484808327 size = 547 isKeyFrame = false presentationTimeUs = 400000 sample: - trackIndex = 1 + trackIndex = 0 dataHashCode = -20706048 size = 570 isKeyFrame = false presentationTimeUs = 367000 sample: - trackIndex = 1 + trackIndex = 0 dataHashCode = 2085064574 size = 5525 isKeyFrame = false presentationTimeUs = 567000 sample: - trackIndex = 1 + trackIndex = 0 dataHashCode = -637074022 size = 1082 isKeyFrame = false presentationTimeUs = 500000 sample: - trackIndex = 1 + trackIndex = 0 dataHashCode = -1824027029 size = 807 isKeyFrame = false presentationTimeUs = 467000 sample: - trackIndex = 1 + trackIndex = 0 dataHashCode = -1701945306 size = 744 isKeyFrame = false presentationTimeUs = 533000 sample: - trackIndex = 0 + trackIndex = 1 dataHashCode = -551926260 size = 418 isKeyFrame = true presentationTimeUs = 94762 sample: - trackIndex = 0 + trackIndex = 1 dataHashCode = 45987178 size = 418 isKeyFrame = true presentationTimeUs = 99502 sample: - trackIndex = 0 + trackIndex = 1 dataHashCode = -903675808 size = 418 isKeyFrame = true presentationTimeUs = 104241 sample: - trackIndex = 0 + trackIndex = 1 dataHashCode = -755916991 size = 418 isKeyFrame = true presentationTimeUs = 108980 sample: - trackIndex = 0 + trackIndex = 1 dataHashCode = -1355207303 size = 418 isKeyFrame = true presentationTimeUs = 113719 sample: - trackIndex = 0 + trackIndex = 1 dataHashCode = -975703389 size = 418 isKeyFrame = true presentationTimeUs = 118459 sample: - trackIndex = 0 + trackIndex = 1 dataHashCode = 1933194670 size = 418 isKeyFrame = true presentationTimeUs = 123198 sample: - trackIndex = 0 + trackIndex = 1 dataHashCode = -565778989 size = 418 isKeyFrame = true presentationTimeUs = 127937 sample: - trackIndex = 0 + trackIndex = 1 dataHashCode = 1454083383 size = 418 isKeyFrame = true presentationTimeUs = 132676 sample: - trackIndex = 1 + trackIndex = 0 dataHashCode = -952425536 size = 4732 isKeyFrame = false presentationTimeUs = 700000 sample: - trackIndex = 1 + trackIndex = 0 dataHashCode = -1978031576 size = 1004 isKeyFrame = false presentationTimeUs = 633000 sample: - trackIndex = 1 + trackIndex = 0 dataHashCode = -2128215508 size = 794 isKeyFrame = false presentationTimeUs = 600000 sample: - trackIndex = 1 + trackIndex = 0 dataHashCode = -259850011 size = 645 isKeyFrame = false presentationTimeUs = 667000 sample: - trackIndex = 1 + trackIndex = 0 dataHashCode = 1920983928 size = 2684 isKeyFrame = false presentationTimeUs = 833000 sample: - trackIndex = 1 + trackIndex = 0 dataHashCode = 1100642337 size = 787 isKeyFrame = false presentationTimeUs = 767000 sample: - trackIndex = 1 + trackIndex = 0 dataHashCode = 1544917830 size = 649 isKeyFrame = false presentationTimeUs = 733000 sample: - trackIndex = 1 + trackIndex = 0 dataHashCode = -116205995 size = 509 isKeyFrame = false presentationTimeUs = 800000 sample: - trackIndex = 1 + trackIndex = 0 dataHashCode = 696343585 size = 1226 isKeyFrame = false presentationTimeUs = 967000 sample: - trackIndex = 1 + trackIndex = 0 dataHashCode = -644371190 size = 898 isKeyFrame = false presentationTimeUs = 900000 sample: - trackIndex = 1 + trackIndex = 0 dataHashCode = -1606273467 size = 476 isKeyFrame = false presentationTimeUs = 867000 sample: - trackIndex = 1 + trackIndex = 0 dataHashCode = -571265861 size = 486 isKeyFrame = false diff --git a/libraries/test_data/src/test/assets/transformerdumps/mp4/sample.mp4.48000hz.dump b/libraries/test_data/src/test/assets/transformerdumps/mp4/sample.mp4.48000hz.dump index 4a2c5f6ef7..c366457b5a 100644 --- a/libraries/test_data/src/test/assets/transformerdumps/mp4/sample.mp4.48000hz.dump +++ b/libraries/test_data/src/test/assets/transformerdumps/mp4/sample.mp4.48000hz.dump @@ -1,9 +1,4 @@ format 0: - sampleMimeType = audio/mp4a-latm - channelCount = 1 - sampleRate = 48000 - pcmEncoding = 2 -format 1: id = 1 sampleMimeType = video/avc codecs = avc1.64001F @@ -14,458 +9,463 @@ format 1: initializationData: data = length 29, hash 4746B5D9 data = length 10, hash 7A0D0F2B +format 1: + sampleMimeType = audio/mp4a-latm + channelCount = 1 + sampleRate = 48000 + pcmEncoding = 2 sample: trackIndex = 1 - dataHashCode = -770308242 - size = 36692 - isKeyFrame = true - presentationTimeUs = 0 -sample: - trackIndex = 1 - dataHashCode = -732087136 - size = 5312 - isKeyFrame = false - presentationTimeUs = 66733 -sample: - trackIndex = 1 - dataHashCode = 468156717 - size = 599 - isKeyFrame = false - presentationTimeUs = 33366 -sample: - trackIndex = 1 - dataHashCode = 1150349584 - size = 7735 - isKeyFrame = false - presentationTimeUs = 200200 -sample: - trackIndex = 1 - dataHashCode = 1443582006 - size = 987 - isKeyFrame = false - presentationTimeUs = 133466 -sample: - trackIndex = 1 - dataHashCode = -310585145 - size = 673 - isKeyFrame = false - presentationTimeUs = 100100 -sample: - trackIndex = 1 - dataHashCode = 807460688 - size = 523 - isKeyFrame = false - presentationTimeUs = 166833 -sample: - trackIndex = 1 - dataHashCode = 1936487090 - size = 6061 - isKeyFrame = false - presentationTimeUs = 333666 -sample: - trackIndex = 1 - dataHashCode = -32297181 - size = 992 - isKeyFrame = false - presentationTimeUs = 266933 -sample: - trackIndex = 1 - dataHashCode = 1529616406 - size = 623 - isKeyFrame = false - presentationTimeUs = 233566 -sample: - trackIndex = 0 dataHashCode = 1868041800 size = 22 isKeyFrame = true presentationTimeUs = 0 sample: - trackIndex = 0 + trackIndex = 1 dataHashCode = 1552866193 size = 8 isKeyFrame = true presentationTimeUs = 230 sample: - trackIndex = 0 + trackIndex = 1 dataHashCode = 701848493 size = 160 isKeyFrame = true presentationTimeUs = 313 sample: - trackIndex = 0 + trackIndex = 1 dataHashCode = 2000505720 size = 206 isKeyFrame = true presentationTimeUs = 1980 sample: - trackIndex = 0 + trackIndex = 1 dataHashCode = 57276327 size = 222 isKeyFrame = true presentationTimeUs = 4125 sample: - trackIndex = 0 + trackIndex = 1 dataHashCode = 382237408 size = 228 isKeyFrame = true presentationTimeUs = 6438 sample: - trackIndex = 0 + trackIndex = 1 dataHashCode = 795308374 size = 228 isKeyFrame = true presentationTimeUs = 8813 sample: - trackIndex = 0 + trackIndex = 1 dataHashCode = 356270426 size = 224 isKeyFrame = true presentationTimeUs = 11188 sample: - trackIndex = 0 + trackIndex = 1 dataHashCode = 963641614 size = 244 isKeyFrame = true presentationTimeUs = 13521 sample: - trackIndex = 0 + trackIndex = 1 dataHashCode = 2045272193 size = 234 isKeyFrame = true presentationTimeUs = 16063 sample: trackIndex = 0 + dataHashCode = -770308242 + size = 36692 + isKeyFrame = true + presentationTimeUs = 0 +sample: + trackIndex = 0 + dataHashCode = -732087136 + size = 5312 + isKeyFrame = false + presentationTimeUs = 66733 +sample: + trackIndex = 0 + dataHashCode = 468156717 + size = 599 + isKeyFrame = false + presentationTimeUs = 33366 +sample: + trackIndex = 0 + dataHashCode = 1150349584 + size = 7735 + isKeyFrame = false + presentationTimeUs = 200200 +sample: + trackIndex = 0 + dataHashCode = 1443582006 + size = 987 + isKeyFrame = false + presentationTimeUs = 133466 +sample: + trackIndex = 0 + dataHashCode = -310585145 + size = 673 + isKeyFrame = false + presentationTimeUs = 100100 +sample: + trackIndex = 0 + dataHashCode = 807460688 + size = 523 + isKeyFrame = false + presentationTimeUs = 166833 +sample: + trackIndex = 0 + dataHashCode = 1936487090 + size = 6061 + isKeyFrame = false + presentationTimeUs = 333666 +sample: + trackIndex = 0 + dataHashCode = -32297181 + size = 992 + isKeyFrame = false + presentationTimeUs = 266933 +sample: + trackIndex = 0 + dataHashCode = 1529616406 + size = 623 + isKeyFrame = false + presentationTimeUs = 233566 +sample: + trackIndex = 1 dataHashCode = -251933090 size = 228 isKeyFrame = true presentationTimeUs = 18500 sample: - trackIndex = 0 + trackIndex = 1 dataHashCode = -329315280 size = 234 isKeyFrame = true presentationTimeUs = 20875 sample: - trackIndex = 0 + trackIndex = 1 dataHashCode = -1536715689 size = 248 isKeyFrame = true presentationTimeUs = 23313 sample: - trackIndex = 0 + trackIndex = 1 dataHashCode = -1275249610 size = 254 isKeyFrame = true presentationTimeUs = 25896 sample: - trackIndex = 0 + trackIndex = 1 dataHashCode = -2081231470 size = 254 isKeyFrame = true presentationTimeUs = 28542 sample: - trackIndex = 0 + trackIndex = 1 dataHashCode = 1912348529 size = 250 isKeyFrame = true presentationTimeUs = 31188 sample: - trackIndex = 0 + trackIndex = 1 dataHashCode = -1393642278 size = 246 isKeyFrame = true presentationTimeUs = 33792 sample: - trackIndex = 0 + trackIndex = 1 dataHashCode = -2073671562 size = 236 isKeyFrame = true presentationTimeUs = 36355 sample: - trackIndex = 0 + trackIndex = 1 dataHashCode = -381095129 size = 248 isKeyFrame = true presentationTimeUs = 38813 sample: - trackIndex = 0 + trackIndex = 1 dataHashCode = -804721381 size = 238 isKeyFrame = true presentationTimeUs = 41396 sample: - trackIndex = 1 + trackIndex = 0 dataHashCode = 1949198785 size = 421 isKeyFrame = false presentationTimeUs = 300300 sample: - trackIndex = 1 + trackIndex = 0 dataHashCode = -147880287 size = 4899 isKeyFrame = false presentationTimeUs = 433766 sample: - trackIndex = 1 + trackIndex = 0 dataHashCode = 1369083472 size = 568 isKeyFrame = false presentationTimeUs = 400400 sample: - trackIndex = 1 + trackIndex = 0 dataHashCode = 965782073 size = 620 isKeyFrame = false presentationTimeUs = 367033 sample: - trackIndex = 0 + trackIndex = 1 dataHashCode = 172275944 size = 260 isKeyFrame = true presentationTimeUs = 43875 sample: - trackIndex = 0 + trackIndex = 1 dataHashCode = -1045486664 size = 248 isKeyFrame = true presentationTimeUs = 46584 sample: - trackIndex = 0 + trackIndex = 1 dataHashCode = -1465283679 size = 260 isKeyFrame = true presentationTimeUs = 49167 sample: - trackIndex = 0 + trackIndex = 1 dataHashCode = 1840117006 size = 254 isKeyFrame = true presentationTimeUs = 51875 sample: - trackIndex = 0 + trackIndex = 1 dataHashCode = -631848848 size = 250 isKeyFrame = true presentationTimeUs = 54521 sample: - trackIndex = 0 + trackIndex = 1 dataHashCode = -1207491554 size = 236 isKeyFrame = true presentationTimeUs = 57125 sample: - trackIndex = 0 + trackIndex = 1 dataHashCode = 838792456 size = 258 isKeyFrame = true presentationTimeUs = 59584 sample: - trackIndex = 0 + trackIndex = 1 dataHashCode = -1131122284 size = 264 isKeyFrame = true presentationTimeUs = 62271 sample: - trackIndex = 0 + trackIndex = 1 dataHashCode = -122326555 size = 250 isKeyFrame = true presentationTimeUs = 65021 sample: - trackIndex = 0 + trackIndex = 1 dataHashCode = -1340323720 size = 250 isKeyFrame = true presentationTimeUs = 67625 sample: - trackIndex = 1 + trackIndex = 0 dataHashCode = -261176150 size = 5450 isKeyFrame = false presentationTimeUs = 567233 sample: - trackIndex = 1 + trackIndex = 0 dataHashCode = -1830836678 size = 1051 isKeyFrame = false presentationTimeUs = 500500 sample: - trackIndex = 1 + trackIndex = 0 dataHashCode = 1767407540 size = 874 isKeyFrame = false presentationTimeUs = 467133 sample: - trackIndex = 1 + trackIndex = 0 dataHashCode = 918440283 size = 781 isKeyFrame = false presentationTimeUs = 533866 sample: - trackIndex = 0 + trackIndex = 1 dataHashCode = -1290952882 size = 260 isKeyFrame = true presentationTimeUs = 70230 sample: - trackIndex = 0 + trackIndex = 1 dataHashCode = 2118216858 size = 244 isKeyFrame = true presentationTimeUs = 72938 sample: - trackIndex = 0 + trackIndex = 1 dataHashCode = 879520231 size = 252 isKeyFrame = true presentationTimeUs = 75480 sample: - trackIndex = 0 + trackIndex = 1 dataHashCode = -174892555 size = 264 isKeyFrame = true presentationTimeUs = 78105 sample: - trackIndex = 0 + trackIndex = 1 dataHashCode = -555873771 size = 252 isKeyFrame = true presentationTimeUs = 80855 sample: - trackIndex = 0 + trackIndex = 1 dataHashCode = -1479853263 size = 256 isKeyFrame = true presentationTimeUs = 83480 sample: - trackIndex = 0 + trackIndex = 1 dataHashCode = -1068971504 size = 250 isKeyFrame = true presentationTimeUs = 86146 sample: - trackIndex = 0 + trackIndex = 1 dataHashCode = -866214350 size = 254 isKeyFrame = true presentationTimeUs = 88750 sample: - trackIndex = 0 + trackIndex = 1 dataHashCode = -2111034853 size = 288 isKeyFrame = true presentationTimeUs = 91396 sample: - trackIndex = 0 + trackIndex = 1 dataHashCode = -1445430754 size = 278 isKeyFrame = true presentationTimeUs = 94396 sample: - trackIndex = 0 + trackIndex = 1 dataHashCode = 1200468541 size = 246 isKeyFrame = true presentationTimeUs = 97292 sample: - trackIndex = 0 + trackIndex = 1 dataHashCode = -1853596884 size = 246 isKeyFrame = true presentationTimeUs = 99855 sample: - trackIndex = 0 + trackIndex = 1 dataHashCode = -1266372568 size = 254 isKeyFrame = true presentationTimeUs = 102417 sample: - trackIndex = 0 + trackIndex = 1 dataHashCode = -212017561 size = 248 isKeyFrame = true presentationTimeUs = 105063 sample: - trackIndex = 0 + trackIndex = 1 dataHashCode = -1464702479 size = 8 isKeyFrame = true presentationTimeUs = 107646 sample: - trackIndex = 0 + trackIndex = 1 dataHashCode = -2065 size = 2 isKeyFrame = true presentationTimeUs = 107730 sample: - trackIndex = 1 + trackIndex = 0 dataHashCode = -1408463661 size = 4725 isKeyFrame = false presentationTimeUs = 700700 sample: - trackIndex = 1 + trackIndex = 0 dataHashCode = 1569455924 size = 1022 isKeyFrame = false presentationTimeUs = 633966 sample: - trackIndex = 1 + trackIndex = 0 dataHashCode = -1723778407 size = 790 isKeyFrame = false presentationTimeUs = 600600 sample: - trackIndex = 1 + trackIndex = 0 dataHashCode = 1578275472 size = 610 isKeyFrame = false presentationTimeUs = 667333 sample: - trackIndex = 1 + trackIndex = 0 dataHashCode = 1989768395 size = 2751 isKeyFrame = false presentationTimeUs = 834166 sample: - trackIndex = 1 + trackIndex = 0 dataHashCode = -1215674502 size = 745 isKeyFrame = false presentationTimeUs = 767433 sample: - trackIndex = 1 + trackIndex = 0 dataHashCode = -814473606 size = 621 isKeyFrame = false presentationTimeUs = 734066 sample: - trackIndex = 1 + trackIndex = 0 dataHashCode = 498370894 size = 505 isKeyFrame = false presentationTimeUs = 800800 sample: - trackIndex = 1 + trackIndex = 0 dataHashCode = -1051506468 size = 1268 isKeyFrame = false presentationTimeUs = 967633 sample: - trackIndex = 1 + trackIndex = 0 dataHashCode = -1025604144 size = 880 isKeyFrame = false presentationTimeUs = 900900 sample: - trackIndex = 1 + trackIndex = 0 dataHashCode = -913586520 size = 530 isKeyFrame = false presentationTimeUs = 867533 sample: - trackIndex = 1 + trackIndex = 0 dataHashCode = 1340459242 size = 568 isKeyFrame = false diff --git a/libraries/test_data/src/test/assets/transformerdumps/mp4/sample.mp4.concatenated.dump b/libraries/test_data/src/test/assets/transformerdumps/mp4/sample.mp4.concatenated.dump index 218094d3b5..8bef31c03a 100644 --- a/libraries/test_data/src/test/assets/transformerdumps/mp4/sample.mp4.concatenated.dump +++ b/libraries/test_data/src/test/assets/transformerdumps/mp4/sample.mp4.concatenated.dump @@ -1,4 +1,15 @@ format 0: + id = 1 + sampleMimeType = video/avc + codecs = avc1.64001F + maxInputSize = 36722 + width = 1080 + height = 720 + frameRate = 29.970028 + initializationData: + data = length 29, hash 4746B5D9 + data = length 10, hash 7A0D0F2B +format 1: peakBitrate = 200000 id = 2 sampleMimeType = audio/mp4a-latm @@ -10,913 +21,902 @@ format 0: metadata = entries=[TSSE: description=null: values=[Lavf56.1.0]] initializationData: data = length 2, hash 5F7 -format 1: - id = 1 - sampleMimeType = video/avc - codecs = avc1.64001F - maxInputSize = 36722 - width = 1080 - height = 720 - frameRate = 29.970028 - initializationData: - data = length 29, hash 4746B5D9 - data = length 10, hash 7A0D0F2B sample: trackIndex = 1 - dataHashCode = -770308242 - size = 36692 - isKeyFrame = true - presentationTimeUs = 0 -sample: - trackIndex = 1 - dataHashCode = -732087136 - size = 5312 - isKeyFrame = false - presentationTimeUs = 66733 -sample: - trackIndex = 1 - dataHashCode = 468156717 - size = 599 - isKeyFrame = false - presentationTimeUs = 33366 -sample: - trackIndex = 1 - dataHashCode = 1150349584 - size = 7735 - isKeyFrame = false - presentationTimeUs = 200200 -sample: - trackIndex = 1 - dataHashCode = 1443582006 - size = 987 - isKeyFrame = false - presentationTimeUs = 133466 -sample: - trackIndex = 1 - dataHashCode = -310585145 - size = 673 - isKeyFrame = false - presentationTimeUs = 100100 -sample: - trackIndex = 1 - dataHashCode = 807460688 - size = 523 - isKeyFrame = false - presentationTimeUs = 166833 -sample: - trackIndex = 1 - dataHashCode = 1936487090 - size = 6061 - isKeyFrame = false - presentationTimeUs = 333666 -sample: - trackIndex = 1 - dataHashCode = -32297181 - size = 992 - isKeyFrame = false - presentationTimeUs = 266933 -sample: - trackIndex = 1 - dataHashCode = 1529616406 - size = 623 - isKeyFrame = false - presentationTimeUs = 233566 -sample: - trackIndex = 0 dataHashCode = 1205768497 size = 23 isKeyFrame = true presentationTimeUs = 44000 sample: - trackIndex = 0 + trackIndex = 1 dataHashCode = 837571078 size = 6 isKeyFrame = true presentationTimeUs = 67219 sample: - trackIndex = 0 + trackIndex = 1 dataHashCode = -1991633045 size = 148 isKeyFrame = true presentationTimeUs = 90439 sample: - trackIndex = 0 + trackIndex = 1 dataHashCode = -822987359 size = 189 isKeyFrame = true presentationTimeUs = 113659 sample: - trackIndex = 0 + trackIndex = 1 dataHashCode = -1141508176 size = 205 isKeyFrame = true presentationTimeUs = 136879 sample: - trackIndex = 0 + trackIndex = 1 dataHashCode = -226971245 size = 210 isKeyFrame = true presentationTimeUs = 160099 sample: - trackIndex = 0 + trackIndex = 1 dataHashCode = -2099636855 size = 210 isKeyFrame = true presentationTimeUs = 183319 sample: - trackIndex = 0 + trackIndex = 1 dataHashCode = 1541550559 size = 207 isKeyFrame = true presentationTimeUs = 206539 sample: - trackIndex = 0 + trackIndex = 1 dataHashCode = 411148001 size = 225 isKeyFrame = true presentationTimeUs = 229759 sample: - trackIndex = 0 + trackIndex = 1 dataHashCode = -897603973 size = 215 isKeyFrame = true presentationTimeUs = 252979 sample: - trackIndex = 1 - dataHashCode = 1949198785 - size = 421 - isKeyFrame = false - presentationTimeUs = 300300 -sample: - trackIndex = 1 - dataHashCode = -147880287 - size = 4899 - isKeyFrame = false - presentationTimeUs = 433766 -sample: - trackIndex = 1 - dataHashCode = 1369083472 - size = 568 - isKeyFrame = false - presentationTimeUs = 400400 -sample: - trackIndex = 1 - dataHashCode = 965782073 - size = 620 - isKeyFrame = false - presentationTimeUs = 367033 -sample: - trackIndex = 1 - dataHashCode = -261176150 - size = 5450 - isKeyFrame = false - presentationTimeUs = 567233 -sample: - trackIndex = 1 - dataHashCode = -1830836678 - size = 1051 - isKeyFrame = false - presentationTimeUs = 500500 -sample: - trackIndex = 1 - dataHashCode = 1767407540 - size = 874 - isKeyFrame = false - presentationTimeUs = 467133 -sample: - trackIndex = 1 - dataHashCode = 918440283 - size = 781 - isKeyFrame = false - presentationTimeUs = 533866 -sample: - trackIndex = 1 - dataHashCode = -1408463661 - size = 4725 - isKeyFrame = false - presentationTimeUs = 700700 -sample: - trackIndex = 1 - dataHashCode = 1569455924 - size = 1022 - isKeyFrame = false - presentationTimeUs = 633966 + trackIndex = 0 + dataHashCode = -770308242 + size = 36692 + isKeyFrame = true + presentationTimeUs = 0 sample: trackIndex = 0 + dataHashCode = -732087136 + size = 5312 + isKeyFrame = false + presentationTimeUs = 66733 +sample: + trackIndex = 0 + dataHashCode = 468156717 + size = 599 + isKeyFrame = false + presentationTimeUs = 33366 +sample: + trackIndex = 0 + dataHashCode = 1150349584 + size = 7735 + isKeyFrame = false + presentationTimeUs = 200200 +sample: + trackIndex = 0 + dataHashCode = 1443582006 + size = 987 + isKeyFrame = false + presentationTimeUs = 133466 +sample: + trackIndex = 0 + dataHashCode = -310585145 + size = 673 + isKeyFrame = false + presentationTimeUs = 100100 +sample: + trackIndex = 0 + dataHashCode = 807460688 + size = 523 + isKeyFrame = false + presentationTimeUs = 166833 +sample: + trackIndex = 0 + dataHashCode = 1936487090 + size = 6061 + isKeyFrame = false + presentationTimeUs = 333666 +sample: + trackIndex = 0 + dataHashCode = -32297181 + size = 992 + isKeyFrame = false + presentationTimeUs = 266933 +sample: + trackIndex = 0 + dataHashCode = 1529616406 + size = 623 + isKeyFrame = false + presentationTimeUs = 233566 +sample: + trackIndex = 1 dataHashCode = 1478106136 size = 211 isKeyFrame = true presentationTimeUs = 276199 sample: - trackIndex = 0 + trackIndex = 1 dataHashCode = -1380417145 size = 216 isKeyFrame = true presentationTimeUs = 299419 sample: - trackIndex = 0 + trackIndex = 1 dataHashCode = 780903644 size = 229 isKeyFrame = true presentationTimeUs = 322639 sample: - trackIndex = 0 + trackIndex = 1 dataHashCode = 586204432 size = 232 isKeyFrame = true presentationTimeUs = 345859 sample: - trackIndex = 0 + trackIndex = 1 dataHashCode = -2038771492 size = 235 isKeyFrame = true presentationTimeUs = 369079 sample: - trackIndex = 0 + trackIndex = 1 dataHashCode = -2065161304 size = 231 isKeyFrame = true presentationTimeUs = 392299 sample: - trackIndex = 0 + trackIndex = 1 dataHashCode = 468662933 size = 226 isKeyFrame = true presentationTimeUs = 415519 sample: - trackIndex = 0 + trackIndex = 1 dataHashCode = -358398546 size = 216 isKeyFrame = true presentationTimeUs = 438739 sample: - trackIndex = 0 + trackIndex = 1 dataHashCode = 1767325983 size = 229 isKeyFrame = true presentationTimeUs = 461959 sample: - trackIndex = 0 + trackIndex = 1 dataHashCode = 1093095458 size = 219 isKeyFrame = true presentationTimeUs = 485179 sample: - trackIndex = 1 - dataHashCode = -1723778407 - size = 790 + trackIndex = 0 + dataHashCode = 1949198785 + size = 421 isKeyFrame = false - presentationTimeUs = 600600 -sample: - trackIndex = 1 - dataHashCode = 1578275472 - size = 610 - isKeyFrame = false - presentationTimeUs = 667333 -sample: - trackIndex = 1 - dataHashCode = 1989768395 - size = 2751 - isKeyFrame = false - presentationTimeUs = 834166 -sample: - trackIndex = 1 - dataHashCode = -1215674502 - size = 745 - isKeyFrame = false - presentationTimeUs = 767433 -sample: - trackIndex = 1 - dataHashCode = -814473606 - size = 621 - isKeyFrame = false - presentationTimeUs = 734066 -sample: - trackIndex = 1 - dataHashCode = 498370894 - size = 505 - isKeyFrame = false - presentationTimeUs = 800800 -sample: - trackIndex = 1 - dataHashCode = -1051506468 - size = 1268 - isKeyFrame = false - presentationTimeUs = 967633 -sample: - trackIndex = 1 - dataHashCode = -1025604144 - size = 880 - isKeyFrame = false - presentationTimeUs = 900900 -sample: - trackIndex = 1 - dataHashCode = -913586520 - size = 530 - isKeyFrame = false - presentationTimeUs = 867533 -sample: - trackIndex = 1 - dataHashCode = 1340459242 - size = 568 - isKeyFrame = false - presentationTimeUs = 934266 + presentationTimeUs = 300300 sample: trackIndex = 0 + dataHashCode = -147880287 + size = 4899 + isKeyFrame = false + presentationTimeUs = 433766 +sample: + trackIndex = 0 + dataHashCode = 1369083472 + size = 568 + isKeyFrame = false + presentationTimeUs = 400400 +sample: + trackIndex = 0 + dataHashCode = 965782073 + size = 620 + isKeyFrame = false + presentationTimeUs = 367033 +sample: + trackIndex = 0 + dataHashCode = -261176150 + size = 5450 + isKeyFrame = false + presentationTimeUs = 567233 +sample: + trackIndex = 0 + dataHashCode = -1830836678 + size = 1051 + isKeyFrame = false + presentationTimeUs = 500500 +sample: + trackIndex = 0 + dataHashCode = 1767407540 + size = 874 + isKeyFrame = false + presentationTimeUs = 467133 +sample: + trackIndex = 0 + dataHashCode = 918440283 + size = 781 + isKeyFrame = false + presentationTimeUs = 533866 +sample: + trackIndex = 0 + dataHashCode = -1408463661 + size = 4725 + isKeyFrame = false + presentationTimeUs = 700700 +sample: + trackIndex = 0 + dataHashCode = 1569455924 + size = 1022 + isKeyFrame = false + presentationTimeUs = 633966 +sample: + trackIndex = 1 dataHashCode = 1687543702 size = 241 isKeyFrame = true presentationTimeUs = 508399 sample: - trackIndex = 0 + trackIndex = 1 dataHashCode = 1675188486 size = 228 isKeyFrame = true presentationTimeUs = 531619 sample: - trackIndex = 0 + trackIndex = 1 dataHashCode = 888567545 size = 238 isKeyFrame = true presentationTimeUs = 554839 sample: - trackIndex = 0 + trackIndex = 1 dataHashCode = -439631803 size = 234 isKeyFrame = true presentationTimeUs = 578058 sample: - trackIndex = 0 + trackIndex = 1 dataHashCode = 1606694497 size = 231 isKeyFrame = true presentationTimeUs = 601278 sample: - trackIndex = 0 + trackIndex = 1 dataHashCode = 1747388653 size = 217 isKeyFrame = true presentationTimeUs = 624498 sample: - trackIndex = 0 + trackIndex = 1 dataHashCode = -734560004 size = 239 isKeyFrame = true presentationTimeUs = 647718 sample: - trackIndex = 0 + trackIndex = 1 dataHashCode = -975079040 size = 243 isKeyFrame = true presentationTimeUs = 670938 sample: - trackIndex = 0 + trackIndex = 1 dataHashCode = -1403504710 size = 231 isKeyFrame = true presentationTimeUs = 694158 sample: - trackIndex = 0 + trackIndex = 1 dataHashCode = 379512981 size = 230 isKeyFrame = true presentationTimeUs = 717378 sample: trackIndex = 0 + dataHashCode = -1723778407 + size = 790 + isKeyFrame = false + presentationTimeUs = 600600 +sample: + trackIndex = 0 + dataHashCode = 1578275472 + size = 610 + isKeyFrame = false + presentationTimeUs = 667333 +sample: + trackIndex = 0 + dataHashCode = 1989768395 + size = 2751 + isKeyFrame = false + presentationTimeUs = 834166 +sample: + trackIndex = 0 + dataHashCode = -1215674502 + size = 745 + isKeyFrame = false + presentationTimeUs = 767433 +sample: + trackIndex = 0 + dataHashCode = -814473606 + size = 621 + isKeyFrame = false + presentationTimeUs = 734066 +sample: + trackIndex = 0 + dataHashCode = 498370894 + size = 505 + isKeyFrame = false + presentationTimeUs = 800800 +sample: + trackIndex = 0 + dataHashCode = -1051506468 + size = 1268 + isKeyFrame = false + presentationTimeUs = 967633 +sample: + trackIndex = 0 + dataHashCode = -1025604144 + size = 880 + isKeyFrame = false + presentationTimeUs = 900900 +sample: + trackIndex = 0 + dataHashCode = -913586520 + size = 530 + isKeyFrame = false + presentationTimeUs = 867533 +sample: + trackIndex = 0 + dataHashCode = 1340459242 + size = 568 + isKeyFrame = false + presentationTimeUs = 934266 +sample: + trackIndex = 1 dataHashCode = -997198863 size = 238 isKeyFrame = true presentationTimeUs = 740598 sample: - trackIndex = 0 + trackIndex = 1 dataHashCode = 1394492825 size = 225 isKeyFrame = true presentationTimeUs = 763818 sample: - trackIndex = 0 + trackIndex = 1 dataHashCode = -885232755 size = 232 isKeyFrame = true presentationTimeUs = 787038 sample: - trackIndex = 0 + trackIndex = 1 dataHashCode = 260871367 size = 243 isKeyFrame = true presentationTimeUs = 810258 sample: - trackIndex = 0 + trackIndex = 1 dataHashCode = -1505318960 size = 232 isKeyFrame = true presentationTimeUs = 833478 sample: - trackIndex = 0 + trackIndex = 1 dataHashCode = -390625371 size = 237 isKeyFrame = true presentationTimeUs = 856698 sample: - trackIndex = 0 + trackIndex = 1 dataHashCode = 1067950751 size = 228 isKeyFrame = true presentationTimeUs = 879918 sample: - trackIndex = 0 + trackIndex = 1 dataHashCode = -1179436278 size = 235 isKeyFrame = true presentationTimeUs = 903138 sample: - trackIndex = 0 + trackIndex = 1 dataHashCode = 1906607774 size = 264 isKeyFrame = true presentationTimeUs = 926358 sample: - trackIndex = 0 + trackIndex = 1 dataHashCode = -800475828 size = 257 isKeyFrame = true presentationTimeUs = 949578 sample: - trackIndex = 0 + trackIndex = 1 dataHashCode = 1718972977 size = 227 isKeyFrame = true presentationTimeUs = 972798 sample: trackIndex = 1 - dataHashCode = -770308242 - size = 36692 - isKeyFrame = true - presentationTimeUs = 1024000 -sample: - trackIndex = 1 - dataHashCode = -732087136 - size = 5312 - isKeyFrame = false - presentationTimeUs = 1090733 -sample: - trackIndex = 1 - dataHashCode = 468156717 - size = 599 - isKeyFrame = false - presentationTimeUs = 1057366 -sample: - trackIndex = 1 - dataHashCode = 1150349584 - size = 7735 - isKeyFrame = false - presentationTimeUs = 1224200 -sample: - trackIndex = 1 - dataHashCode = 1443582006 - size = 987 - isKeyFrame = false - presentationTimeUs = 1157466 -sample: - trackIndex = 1 - dataHashCode = -310585145 - size = 673 - isKeyFrame = false - presentationTimeUs = 1124100 -sample: - trackIndex = 1 - dataHashCode = 807460688 - size = 523 - isKeyFrame = false - presentationTimeUs = 1190833 -sample: - trackIndex = 1 - dataHashCode = 1936487090 - size = 6061 - isKeyFrame = false - presentationTimeUs = 1357666 -sample: - trackIndex = 1 - dataHashCode = -32297181 - size = 992 - isKeyFrame = false - presentationTimeUs = 1290933 -sample: - trackIndex = 1 - dataHashCode = 1529616406 - size = 623 - isKeyFrame = false - presentationTimeUs = 1257566 -sample: - trackIndex = 0 dataHashCode = -1120448741 size = 227 isKeyFrame = true presentationTimeUs = 996018 sample: - trackIndex = 0 + trackIndex = 1 dataHashCode = -1718323210 size = 235 isKeyFrame = true presentationTimeUs = 1019238 sample: - trackIndex = 0 + trackIndex = 1 dataHashCode = -422416 size = 229 isKeyFrame = true presentationTimeUs = 1042458 sample: - trackIndex = 0 + trackIndex = 1 dataHashCode = 833757830 size = 6 isKeyFrame = true presentationTimeUs = 1065678 sample: trackIndex = 0 + dataHashCode = -770308242 + size = 36692 + isKeyFrame = true + presentationTimeUs = 1024000 +sample: + trackIndex = 0 + dataHashCode = -732087136 + size = 5312 + isKeyFrame = false + presentationTimeUs = 1090733 +sample: + trackIndex = 0 + dataHashCode = 468156717 + size = 599 + isKeyFrame = false + presentationTimeUs = 1057366 +sample: + trackIndex = 0 + dataHashCode = 1150349584 + size = 7735 + isKeyFrame = false + presentationTimeUs = 1224200 +sample: + trackIndex = 0 + dataHashCode = 1443582006 + size = 987 + isKeyFrame = false + presentationTimeUs = 1157466 +sample: + trackIndex = 0 + dataHashCode = -310585145 + size = 673 + isKeyFrame = false + presentationTimeUs = 1124100 +sample: + trackIndex = 0 + dataHashCode = 807460688 + size = 523 + isKeyFrame = false + presentationTimeUs = 1190833 +sample: + trackIndex = 0 + dataHashCode = 1936487090 + size = 6061 + isKeyFrame = false + presentationTimeUs = 1357666 +sample: + trackIndex = 0 + dataHashCode = -32297181 + size = 992 + isKeyFrame = false + presentationTimeUs = 1290933 +sample: + trackIndex = 0 + dataHashCode = 1529616406 + size = 623 + isKeyFrame = false + presentationTimeUs = 1257566 +sample: + trackIndex = 1 dataHashCode = 1205768497 size = 23 isKeyFrame = true presentationTimeUs = 1068000 sample: - trackIndex = 0 + trackIndex = 1 dataHashCode = 837571078 size = 6 isKeyFrame = true presentationTimeUs = 1091219 sample: - trackIndex = 0 + trackIndex = 1 dataHashCode = -1991633045 size = 148 isKeyFrame = true presentationTimeUs = 1114439 sample: - trackIndex = 0 + trackIndex = 1 dataHashCode = -822987359 size = 189 isKeyFrame = true presentationTimeUs = 1137659 sample: - trackIndex = 0 + trackIndex = 1 dataHashCode = -1141508176 size = 205 isKeyFrame = true presentationTimeUs = 1160879 sample: - trackIndex = 0 + trackIndex = 1 dataHashCode = -226971245 size = 210 isKeyFrame = true presentationTimeUs = 1184099 sample: trackIndex = 1 - dataHashCode = 1949198785 - size = 421 - isKeyFrame = false - presentationTimeUs = 1324300 -sample: - trackIndex = 1 - dataHashCode = -147880287 - size = 4899 - isKeyFrame = false - presentationTimeUs = 1457766 -sample: - trackIndex = 1 - dataHashCode = 1369083472 - size = 568 - isKeyFrame = false - presentationTimeUs = 1424400 -sample: - trackIndex = 1 - dataHashCode = 965782073 - size = 620 - isKeyFrame = false - presentationTimeUs = 1391033 -sample: - trackIndex = 1 - dataHashCode = -261176150 - size = 5450 - isKeyFrame = false - presentationTimeUs = 1591233 -sample: - trackIndex = 1 - dataHashCode = -1830836678 - size = 1051 - isKeyFrame = false - presentationTimeUs = 1524500 -sample: - trackIndex = 1 - dataHashCode = 1767407540 - size = 874 - isKeyFrame = false - presentationTimeUs = 1491133 -sample: - trackIndex = 1 - dataHashCode = 918440283 - size = 781 - isKeyFrame = false - presentationTimeUs = 1557866 -sample: - trackIndex = 0 dataHashCode = -2099636855 size = 210 isKeyFrame = true presentationTimeUs = 1207319 sample: - trackIndex = 0 + trackIndex = 1 dataHashCode = 1541550559 size = 207 isKeyFrame = true presentationTimeUs = 1230539 sample: - trackIndex = 0 + trackIndex = 1 dataHashCode = 411148001 size = 225 isKeyFrame = true presentationTimeUs = 1253759 sample: - trackIndex = 0 + trackIndex = 1 dataHashCode = -897603973 size = 215 isKeyFrame = true presentationTimeUs = 1276979 sample: trackIndex = 0 - dataHashCode = 1478106136 - size = 211 - isKeyFrame = true - presentationTimeUs = 1300199 + dataHashCode = 1949198785 + size = 421 + isKeyFrame = false + presentationTimeUs = 1324300 sample: trackIndex = 0 - dataHashCode = -1380417145 - size = 216 - isKeyFrame = true - presentationTimeUs = 1323419 + dataHashCode = -147880287 + size = 4899 + isKeyFrame = false + presentationTimeUs = 1457766 sample: trackIndex = 0 - dataHashCode = 780903644 - size = 229 - isKeyFrame = true - presentationTimeUs = 1346639 + dataHashCode = 1369083472 + size = 568 + isKeyFrame = false + presentationTimeUs = 1424400 sample: trackIndex = 0 - dataHashCode = 586204432 - size = 232 - isKeyFrame = true - presentationTimeUs = 1369859 + dataHashCode = 965782073 + size = 620 + isKeyFrame = false + presentationTimeUs = 1391033 sample: trackIndex = 0 - dataHashCode = -2038771492 - size = 235 - isKeyFrame = true - presentationTimeUs = 1393079 + dataHashCode = -261176150 + size = 5450 + isKeyFrame = false + presentationTimeUs = 1591233 sample: trackIndex = 0 - dataHashCode = -2065161304 - size = 231 - isKeyFrame = true - presentationTimeUs = 1416299 + dataHashCode = -1830836678 + size = 1051 + isKeyFrame = false + presentationTimeUs = 1524500 sample: - trackIndex = 1 + trackIndex = 0 + dataHashCode = 1767407540 + size = 874 + isKeyFrame = false + presentationTimeUs = 1491133 +sample: + trackIndex = 0 + dataHashCode = 918440283 + size = 781 + isKeyFrame = false + presentationTimeUs = 1557866 +sample: + trackIndex = 0 dataHashCode = -1408463661 size = 4725 isKeyFrame = false presentationTimeUs = 1724700 sample: - trackIndex = 1 + trackIndex = 0 dataHashCode = 1569455924 size = 1022 isKeyFrame = false presentationTimeUs = 1657966 sample: trackIndex = 1 - dataHashCode = -1723778407 - size = 790 - isKeyFrame = false - presentationTimeUs = 1624600 + dataHashCode = 1478106136 + size = 211 + isKeyFrame = true + presentationTimeUs = 1300199 sample: trackIndex = 1 - dataHashCode = 1578275472 - size = 610 - isKeyFrame = false - presentationTimeUs = 1691333 + dataHashCode = -1380417145 + size = 216 + isKeyFrame = true + presentationTimeUs = 1323419 sample: trackIndex = 1 - dataHashCode = 1989768395 - size = 2751 - isKeyFrame = false - presentationTimeUs = 1858166 + dataHashCode = 780903644 + size = 229 + isKeyFrame = true + presentationTimeUs = 1346639 sample: trackIndex = 1 - dataHashCode = -1215674502 - size = 745 - isKeyFrame = false - presentationTimeUs = 1791433 + dataHashCode = 586204432 + size = 232 + isKeyFrame = true + presentationTimeUs = 1369859 sample: trackIndex = 1 - dataHashCode = -814473606 - size = 621 - isKeyFrame = false - presentationTimeUs = 1758066 + dataHashCode = -2038771492 + size = 235 + isKeyFrame = true + presentationTimeUs = 1393079 sample: trackIndex = 1 - dataHashCode = 498370894 - size = 505 - isKeyFrame = false - presentationTimeUs = 1824800 + dataHashCode = -2065161304 + size = 231 + isKeyFrame = true + presentationTimeUs = 1416299 sample: - trackIndex = 0 + trackIndex = 1 dataHashCode = 468662933 size = 226 isKeyFrame = true presentationTimeUs = 1439519 sample: - trackIndex = 0 + trackIndex = 1 dataHashCode = -358398546 size = 216 isKeyFrame = true presentationTimeUs = 1462739 sample: - trackIndex = 0 + trackIndex = 1 dataHashCode = 1767325983 size = 229 isKeyFrame = true presentationTimeUs = 1485959 sample: - trackIndex = 0 + trackIndex = 1 dataHashCode = 1093095458 size = 219 isKeyFrame = true presentationTimeUs = 1509179 sample: trackIndex = 0 + dataHashCode = -1723778407 + size = 790 + isKeyFrame = false + presentationTimeUs = 1624600 +sample: + trackIndex = 0 + dataHashCode = 1578275472 + size = 610 + isKeyFrame = false + presentationTimeUs = 1691333 +sample: + trackIndex = 0 + dataHashCode = 1989768395 + size = 2751 + isKeyFrame = false + presentationTimeUs = 1858166 +sample: + trackIndex = 0 + dataHashCode = -1215674502 + size = 745 + isKeyFrame = false + presentationTimeUs = 1791433 +sample: + trackIndex = 0 + dataHashCode = -814473606 + size = 621 + isKeyFrame = false + presentationTimeUs = 1758066 +sample: + trackIndex = 0 + dataHashCode = 498370894 + size = 505 + isKeyFrame = false + presentationTimeUs = 1824800 +sample: + trackIndex = 0 + dataHashCode = -1051506468 + size = 1268 + isKeyFrame = false + presentationTimeUs = 1991633 +sample: + trackIndex = 0 + dataHashCode = -1025604144 + size = 880 + isKeyFrame = false + presentationTimeUs = 1924900 +sample: + trackIndex = 0 + dataHashCode = -913586520 + size = 530 + isKeyFrame = false + presentationTimeUs = 1891533 +sample: + trackIndex = 0 + dataHashCode = 1340459242 + size = 568 + isKeyFrame = false + presentationTimeUs = 1958266 +sample: + trackIndex = 1 dataHashCode = 1687543702 size = 241 isKeyFrame = true presentationTimeUs = 1532399 sample: - trackIndex = 0 + trackIndex = 1 dataHashCode = 1675188486 size = 228 isKeyFrame = true presentationTimeUs = 1555619 sample: - trackIndex = 0 + trackIndex = 1 dataHashCode = 888567545 size = 238 isKeyFrame = true presentationTimeUs = 1578839 sample: - trackIndex = 0 + trackIndex = 1 dataHashCode = -439631803 size = 234 isKeyFrame = true presentationTimeUs = 1602058 sample: - trackIndex = 0 + trackIndex = 1 dataHashCode = 1606694497 size = 231 isKeyFrame = true presentationTimeUs = 1625278 sample: - trackIndex = 0 + trackIndex = 1 dataHashCode = 1747388653 size = 217 isKeyFrame = true presentationTimeUs = 1648498 sample: trackIndex = 1 - dataHashCode = -1051506468 - size = 1268 - isKeyFrame = false - presentationTimeUs = 1991633 -sample: - trackIndex = 1 - dataHashCode = -1025604144 - size = 880 - isKeyFrame = false - presentationTimeUs = 1924900 -sample: - trackIndex = 1 - dataHashCode = -913586520 - size = 530 - isKeyFrame = false - presentationTimeUs = 1891533 -sample: - trackIndex = 1 - dataHashCode = 1340459242 - size = 568 - isKeyFrame = false - presentationTimeUs = 1958266 -sample: - trackIndex = 0 dataHashCode = -734560004 size = 239 isKeyFrame = true presentationTimeUs = 1671718 sample: - trackIndex = 0 + trackIndex = 1 dataHashCode = -975079040 size = 243 isKeyFrame = true presentationTimeUs = 1694938 sample: - trackIndex = 0 + trackIndex = 1 dataHashCode = -1403504710 size = 231 isKeyFrame = true presentationTimeUs = 1718158 sample: - trackIndex = 0 + trackIndex = 1 dataHashCode = 379512981 size = 230 isKeyFrame = true presentationTimeUs = 1741378 sample: - trackIndex = 0 + trackIndex = 1 dataHashCode = -997198863 size = 238 isKeyFrame = true presentationTimeUs = 1764598 sample: - trackIndex = 0 + trackIndex = 1 dataHashCode = 1394492825 size = 225 isKeyFrame = true presentationTimeUs = 1787818 sample: - trackIndex = 0 + trackIndex = 1 dataHashCode = -885232755 size = 232 isKeyFrame = true presentationTimeUs = 1811038 sample: - trackIndex = 0 + trackIndex = 1 dataHashCode = 260871367 size = 243 isKeyFrame = true presentationTimeUs = 1834258 sample: - trackIndex = 0 + trackIndex = 1 dataHashCode = -1505318960 size = 232 isKeyFrame = true presentationTimeUs = 1857478 sample: - trackIndex = 0 + trackIndex = 1 dataHashCode = -390625371 size = 237 isKeyFrame = true presentationTimeUs = 1880698 sample: - trackIndex = 0 + trackIndex = 1 dataHashCode = 1067950751 size = 228 isKeyFrame = true presentationTimeUs = 1903918 sample: - trackIndex = 0 + trackIndex = 1 dataHashCode = -1179436278 size = 235 isKeyFrame = true presentationTimeUs = 1927138 sample: - trackIndex = 0 + trackIndex = 1 dataHashCode = 1906607774 size = 264 isKeyFrame = true presentationTimeUs = 1950358 sample: - trackIndex = 0 + trackIndex = 1 dataHashCode = -800475828 size = 257 isKeyFrame = true presentationTimeUs = 1973578 sample: - trackIndex = 0 + trackIndex = 1 dataHashCode = 1718972977 size = 227 isKeyFrame = true presentationTimeUs = 1996798 sample: - trackIndex = 0 + trackIndex = 1 dataHashCode = -1120448741 size = 227 isKeyFrame = true presentationTimeUs = 2020018 sample: - trackIndex = 0 + trackIndex = 1 dataHashCode = -1718323210 size = 235 isKeyFrame = true presentationTimeUs = 2043238 sample: - trackIndex = 0 + trackIndex = 1 dataHashCode = -422416 size = 229 isKeyFrame = true presentationTimeUs = 2066458 sample: - trackIndex = 0 + trackIndex = 1 dataHashCode = 833757830 size = 6 isKeyFrame = true diff --git a/libraries/test_data/src/test/assets/transformerdumps/mp4/sample.mp4.dump b/libraries/test_data/src/test/assets/transformerdumps/mp4/sample.mp4.dump index fdebd1ac97..fba3b3f2cb 100644 --- a/libraries/test_data/src/test/assets/transformerdumps/mp4/sample.mp4.dump +++ b/libraries/test_data/src/test/assets/transformerdumps/mp4/sample.mp4.dump @@ -1,4 +1,15 @@ format 0: + id = 1 + sampleMimeType = video/avc + codecs = avc1.64001F + maxInputSize = 36722 + width = 1080 + height = 720 + frameRate = 29.970028 + initializationData: + data = length 29, hash 4746B5D9 + data = length 10, hash 7A0D0F2B +format 1: peakBitrate = 200000 id = 2 sampleMimeType = audio/mp4a-latm @@ -10,463 +21,452 @@ format 0: metadata = entries=[TSSE: description=null: values=[Lavf56.1.0]] initializationData: data = length 2, hash 5F7 -format 1: - id = 1 - sampleMimeType = video/avc - codecs = avc1.64001F - maxInputSize = 36722 - width = 1080 - height = 720 - frameRate = 29.970028 - initializationData: - data = length 29, hash 4746B5D9 - data = length 10, hash 7A0D0F2B sample: trackIndex = 1 - dataHashCode = -770308242 - size = 36692 - isKeyFrame = true - presentationTimeUs = 0 -sample: - trackIndex = 1 - dataHashCode = -732087136 - size = 5312 - isKeyFrame = false - presentationTimeUs = 66733 -sample: - trackIndex = 1 - dataHashCode = 468156717 - size = 599 - isKeyFrame = false - presentationTimeUs = 33366 -sample: - trackIndex = 1 - dataHashCode = 1150349584 - size = 7735 - isKeyFrame = false - presentationTimeUs = 200200 -sample: - trackIndex = 1 - dataHashCode = 1443582006 - size = 987 - isKeyFrame = false - presentationTimeUs = 133466 -sample: - trackIndex = 1 - dataHashCode = -310585145 - size = 673 - isKeyFrame = false - presentationTimeUs = 100100 -sample: - trackIndex = 1 - dataHashCode = 807460688 - size = 523 - isKeyFrame = false - presentationTimeUs = 166833 -sample: - trackIndex = 1 - dataHashCode = 1936487090 - size = 6061 - isKeyFrame = false - presentationTimeUs = 333666 -sample: - trackIndex = 1 - dataHashCode = -32297181 - size = 992 - isKeyFrame = false - presentationTimeUs = 266933 -sample: - trackIndex = 1 - dataHashCode = 1529616406 - size = 623 - isKeyFrame = false - presentationTimeUs = 233566 -sample: - trackIndex = 0 dataHashCode = 1205768497 size = 23 isKeyFrame = true presentationTimeUs = 44000 sample: - trackIndex = 0 + trackIndex = 1 dataHashCode = 837571078 size = 6 isKeyFrame = true presentationTimeUs = 67219 sample: - trackIndex = 0 + trackIndex = 1 dataHashCode = -1991633045 size = 148 isKeyFrame = true presentationTimeUs = 90439 sample: - trackIndex = 0 + trackIndex = 1 dataHashCode = -822987359 size = 189 isKeyFrame = true presentationTimeUs = 113659 sample: - trackIndex = 0 + trackIndex = 1 dataHashCode = -1141508176 size = 205 isKeyFrame = true presentationTimeUs = 136879 sample: - trackIndex = 0 + trackIndex = 1 dataHashCode = -226971245 size = 210 isKeyFrame = true presentationTimeUs = 160099 sample: - trackIndex = 0 + trackIndex = 1 dataHashCode = -2099636855 size = 210 isKeyFrame = true presentationTimeUs = 183319 sample: - trackIndex = 0 + trackIndex = 1 dataHashCode = 1541550559 size = 207 isKeyFrame = true presentationTimeUs = 206539 sample: - trackIndex = 0 + trackIndex = 1 dataHashCode = 411148001 size = 225 isKeyFrame = true presentationTimeUs = 229759 sample: - trackIndex = 0 + trackIndex = 1 dataHashCode = -897603973 size = 215 isKeyFrame = true presentationTimeUs = 252979 sample: - trackIndex = 1 - dataHashCode = 1949198785 - size = 421 - isKeyFrame = false - presentationTimeUs = 300300 -sample: - trackIndex = 1 - dataHashCode = -147880287 - size = 4899 - isKeyFrame = false - presentationTimeUs = 433766 -sample: - trackIndex = 1 - dataHashCode = 1369083472 - size = 568 - isKeyFrame = false - presentationTimeUs = 400400 -sample: - trackIndex = 1 - dataHashCode = 965782073 - size = 620 - isKeyFrame = false - presentationTimeUs = 367033 -sample: - trackIndex = 1 - dataHashCode = -261176150 - size = 5450 - isKeyFrame = false - presentationTimeUs = 567233 -sample: - trackIndex = 1 - dataHashCode = -1830836678 - size = 1051 - isKeyFrame = false - presentationTimeUs = 500500 -sample: - trackIndex = 1 - dataHashCode = 1767407540 - size = 874 - isKeyFrame = false - presentationTimeUs = 467133 -sample: - trackIndex = 1 - dataHashCode = 918440283 - size = 781 - isKeyFrame = false - presentationTimeUs = 533866 -sample: - trackIndex = 1 - dataHashCode = -1408463661 - size = 4725 - isKeyFrame = false - presentationTimeUs = 700700 -sample: - trackIndex = 1 - dataHashCode = 1569455924 - size = 1022 - isKeyFrame = false - presentationTimeUs = 633966 + trackIndex = 0 + dataHashCode = -770308242 + size = 36692 + isKeyFrame = true + presentationTimeUs = 0 sample: trackIndex = 0 + dataHashCode = -732087136 + size = 5312 + isKeyFrame = false + presentationTimeUs = 66733 +sample: + trackIndex = 0 + dataHashCode = 468156717 + size = 599 + isKeyFrame = false + presentationTimeUs = 33366 +sample: + trackIndex = 0 + dataHashCode = 1150349584 + size = 7735 + isKeyFrame = false + presentationTimeUs = 200200 +sample: + trackIndex = 0 + dataHashCode = 1443582006 + size = 987 + isKeyFrame = false + presentationTimeUs = 133466 +sample: + trackIndex = 0 + dataHashCode = -310585145 + size = 673 + isKeyFrame = false + presentationTimeUs = 100100 +sample: + trackIndex = 0 + dataHashCode = 807460688 + size = 523 + isKeyFrame = false + presentationTimeUs = 166833 +sample: + trackIndex = 0 + dataHashCode = 1936487090 + size = 6061 + isKeyFrame = false + presentationTimeUs = 333666 +sample: + trackIndex = 0 + dataHashCode = -32297181 + size = 992 + isKeyFrame = false + presentationTimeUs = 266933 +sample: + trackIndex = 0 + dataHashCode = 1529616406 + size = 623 + isKeyFrame = false + presentationTimeUs = 233566 +sample: + trackIndex = 1 dataHashCode = 1478106136 size = 211 isKeyFrame = true presentationTimeUs = 276199 sample: - trackIndex = 0 + trackIndex = 1 dataHashCode = -1380417145 size = 216 isKeyFrame = true presentationTimeUs = 299419 sample: - trackIndex = 0 + trackIndex = 1 dataHashCode = 780903644 size = 229 isKeyFrame = true presentationTimeUs = 322639 sample: - trackIndex = 0 + trackIndex = 1 dataHashCode = 586204432 size = 232 isKeyFrame = true presentationTimeUs = 345859 sample: - trackIndex = 0 + trackIndex = 1 dataHashCode = -2038771492 size = 235 isKeyFrame = true presentationTimeUs = 369079 sample: - trackIndex = 0 + trackIndex = 1 dataHashCode = -2065161304 size = 231 isKeyFrame = true presentationTimeUs = 392299 sample: - trackIndex = 0 + trackIndex = 1 dataHashCode = 468662933 size = 226 isKeyFrame = true presentationTimeUs = 415519 sample: - trackIndex = 0 + trackIndex = 1 dataHashCode = -358398546 size = 216 isKeyFrame = true presentationTimeUs = 438739 sample: - trackIndex = 0 + trackIndex = 1 dataHashCode = 1767325983 size = 229 isKeyFrame = true presentationTimeUs = 461959 sample: - trackIndex = 0 + trackIndex = 1 dataHashCode = 1093095458 size = 219 isKeyFrame = true presentationTimeUs = 485179 sample: - trackIndex = 1 - dataHashCode = -1723778407 - size = 790 + trackIndex = 0 + dataHashCode = 1949198785 + size = 421 isKeyFrame = false - presentationTimeUs = 600600 -sample: - trackIndex = 1 - dataHashCode = 1578275472 - size = 610 - isKeyFrame = false - presentationTimeUs = 667333 -sample: - trackIndex = 1 - dataHashCode = 1989768395 - size = 2751 - isKeyFrame = false - presentationTimeUs = 834166 -sample: - trackIndex = 1 - dataHashCode = -1215674502 - size = 745 - isKeyFrame = false - presentationTimeUs = 767433 -sample: - trackIndex = 1 - dataHashCode = -814473606 - size = 621 - isKeyFrame = false - presentationTimeUs = 734066 -sample: - trackIndex = 1 - dataHashCode = 498370894 - size = 505 - isKeyFrame = false - presentationTimeUs = 800800 -sample: - trackIndex = 1 - dataHashCode = -1051506468 - size = 1268 - isKeyFrame = false - presentationTimeUs = 967633 -sample: - trackIndex = 1 - dataHashCode = -1025604144 - size = 880 - isKeyFrame = false - presentationTimeUs = 900900 -sample: - trackIndex = 1 - dataHashCode = -913586520 - size = 530 - isKeyFrame = false - presentationTimeUs = 867533 -sample: - trackIndex = 1 - dataHashCode = 1340459242 - size = 568 - isKeyFrame = false - presentationTimeUs = 934266 + presentationTimeUs = 300300 sample: trackIndex = 0 + dataHashCode = -147880287 + size = 4899 + isKeyFrame = false + presentationTimeUs = 433766 +sample: + trackIndex = 0 + dataHashCode = 1369083472 + size = 568 + isKeyFrame = false + presentationTimeUs = 400400 +sample: + trackIndex = 0 + dataHashCode = 965782073 + size = 620 + isKeyFrame = false + presentationTimeUs = 367033 +sample: + trackIndex = 0 + dataHashCode = -261176150 + size = 5450 + isKeyFrame = false + presentationTimeUs = 567233 +sample: + trackIndex = 0 + dataHashCode = -1830836678 + size = 1051 + isKeyFrame = false + presentationTimeUs = 500500 +sample: + trackIndex = 0 + dataHashCode = 1767407540 + size = 874 + isKeyFrame = false + presentationTimeUs = 467133 +sample: + trackIndex = 0 + dataHashCode = 918440283 + size = 781 + isKeyFrame = false + presentationTimeUs = 533866 +sample: + trackIndex = 0 + dataHashCode = -1408463661 + size = 4725 + isKeyFrame = false + presentationTimeUs = 700700 +sample: + trackIndex = 0 + dataHashCode = 1569455924 + size = 1022 + isKeyFrame = false + presentationTimeUs = 633966 +sample: + trackIndex = 1 dataHashCode = 1687543702 size = 241 isKeyFrame = true presentationTimeUs = 508399 sample: - trackIndex = 0 + trackIndex = 1 dataHashCode = 1675188486 size = 228 isKeyFrame = true presentationTimeUs = 531619 sample: - trackIndex = 0 + trackIndex = 1 dataHashCode = 888567545 size = 238 isKeyFrame = true presentationTimeUs = 554839 sample: - trackIndex = 0 + trackIndex = 1 dataHashCode = -439631803 size = 234 isKeyFrame = true presentationTimeUs = 578058 sample: - trackIndex = 0 + trackIndex = 1 dataHashCode = 1606694497 size = 231 isKeyFrame = true presentationTimeUs = 601278 sample: - trackIndex = 0 + trackIndex = 1 dataHashCode = 1747388653 size = 217 isKeyFrame = true presentationTimeUs = 624498 sample: - trackIndex = 0 + trackIndex = 1 dataHashCode = -734560004 size = 239 isKeyFrame = true presentationTimeUs = 647718 sample: - trackIndex = 0 + trackIndex = 1 dataHashCode = -975079040 size = 243 isKeyFrame = true presentationTimeUs = 670938 sample: - trackIndex = 0 + trackIndex = 1 dataHashCode = -1403504710 size = 231 isKeyFrame = true presentationTimeUs = 694158 sample: - trackIndex = 0 + trackIndex = 1 dataHashCode = 379512981 size = 230 isKeyFrame = true presentationTimeUs = 717378 sample: trackIndex = 0 + dataHashCode = -1723778407 + size = 790 + isKeyFrame = false + presentationTimeUs = 600600 +sample: + trackIndex = 0 + dataHashCode = 1578275472 + size = 610 + isKeyFrame = false + presentationTimeUs = 667333 +sample: + trackIndex = 0 + dataHashCode = 1989768395 + size = 2751 + isKeyFrame = false + presentationTimeUs = 834166 +sample: + trackIndex = 0 + dataHashCode = -1215674502 + size = 745 + isKeyFrame = false + presentationTimeUs = 767433 +sample: + trackIndex = 0 + dataHashCode = -814473606 + size = 621 + isKeyFrame = false + presentationTimeUs = 734066 +sample: + trackIndex = 0 + dataHashCode = 498370894 + size = 505 + isKeyFrame = false + presentationTimeUs = 800800 +sample: + trackIndex = 0 + dataHashCode = -1051506468 + size = 1268 + isKeyFrame = false + presentationTimeUs = 967633 +sample: + trackIndex = 0 + dataHashCode = -1025604144 + size = 880 + isKeyFrame = false + presentationTimeUs = 900900 +sample: + trackIndex = 0 + dataHashCode = -913586520 + size = 530 + isKeyFrame = false + presentationTimeUs = 867533 +sample: + trackIndex = 0 + dataHashCode = 1340459242 + size = 568 + isKeyFrame = false + presentationTimeUs = 934266 +sample: + trackIndex = 1 dataHashCode = -997198863 size = 238 isKeyFrame = true presentationTimeUs = 740598 sample: - trackIndex = 0 + trackIndex = 1 dataHashCode = 1394492825 size = 225 isKeyFrame = true presentationTimeUs = 763818 sample: - trackIndex = 0 + trackIndex = 1 dataHashCode = -885232755 size = 232 isKeyFrame = true presentationTimeUs = 787038 sample: - trackIndex = 0 + trackIndex = 1 dataHashCode = 260871367 size = 243 isKeyFrame = true presentationTimeUs = 810258 sample: - trackIndex = 0 + trackIndex = 1 dataHashCode = -1505318960 size = 232 isKeyFrame = true presentationTimeUs = 833478 sample: - trackIndex = 0 + trackIndex = 1 dataHashCode = -390625371 size = 237 isKeyFrame = true presentationTimeUs = 856698 sample: - trackIndex = 0 + trackIndex = 1 dataHashCode = 1067950751 size = 228 isKeyFrame = true presentationTimeUs = 879918 sample: - trackIndex = 0 + trackIndex = 1 dataHashCode = -1179436278 size = 235 isKeyFrame = true presentationTimeUs = 903138 sample: - trackIndex = 0 + trackIndex = 1 dataHashCode = 1906607774 size = 264 isKeyFrame = true presentationTimeUs = 926358 sample: - trackIndex = 0 + trackIndex = 1 dataHashCode = -800475828 size = 257 isKeyFrame = true presentationTimeUs = 949578 sample: - trackIndex = 0 + trackIndex = 1 dataHashCode = 1718972977 size = 227 isKeyFrame = true presentationTimeUs = 972798 sample: - trackIndex = 0 + trackIndex = 1 dataHashCode = -1120448741 size = 227 isKeyFrame = true presentationTimeUs = 996018 sample: - trackIndex = 0 + trackIndex = 1 dataHashCode = -1718323210 size = 235 isKeyFrame = true presentationTimeUs = 1019238 sample: - trackIndex = 0 + trackIndex = 1 dataHashCode = -422416 size = 229 isKeyFrame = true presentationTimeUs = 1042458 sample: - trackIndex = 0 + trackIndex = 1 dataHashCode = 833757830 size = 6 isKeyFrame = true diff --git a/libraries/test_data/src/test/assets/transformerdumps/mp4/sample_sef_slow_motion.mp4.dump b/libraries/test_data/src/test/assets/transformerdumps/mp4/sample_sef_slow_motion.mp4.dump index 2e34f184f7..bdbbafc031 100644 --- a/libraries/test_data/src/test/assets/transformerdumps/mp4/sample_sef_slow_motion.mp4.dump +++ b/libraries/test_data/src/test/assets/transformerdumps/mp4/sample_sef_slow_motion.mp4.dump @@ -1,9 +1,4 @@ format 0: - sampleMimeType = audio/mp4a-latm - channelCount = 2 - sampleRate = 12000 - pcmEncoding = 2 -format 1: id = 2 sampleMimeType = video/avc codecs = avc1.64000D @@ -15,332 +10,337 @@ format 1: initializationData: data = length 33, hash D3FB879D data = length 10, hash 7A0D0F2B +format 1: + sampleMimeType = audio/mp4a-latm + channelCount = 2 + sampleRate = 12000 + pcmEncoding = 2 sample: trackIndex = 1 - dataHashCode = 1949079733 - size = 5446 - isKeyFrame = true - presentationTimeUs = 0 -sample: - trackIndex = 1 - dataHashCode = -1397194508 - size = 125 - isKeyFrame = false - presentationTimeUs = 14000 -sample: - trackIndex = 1 - dataHashCode = 1147159698 - size = 147 - isKeyFrame = false - presentationTimeUs = 47333 -sample: - trackIndex = 1 - dataHashCode = 524634358 - size = 149 - isKeyFrame = false - presentationTimeUs = 80667 -sample: - trackIndex = 1 - dataHashCode = 2031178347 - size = 149 - isKeyFrame = false - presentationTimeUs = 114000 -sample: - trackIndex = 1 - dataHashCode = -625462168 - size = 169 - isKeyFrame = false - presentationTimeUs = 147333 -sample: - trackIndex = 1 - dataHashCode = -973299745 - size = 126 - isKeyFrame = false - presentationTimeUs = 180667 -sample: - trackIndex = 1 - dataHashCode = -788426325 - size = 120 - isKeyFrame = false - presentationTimeUs = 228042 -sample: - trackIndex = 1 - dataHashCode = 2009515523 - size = 126 - isKeyFrame = false - presentationTimeUs = 244708 -sample: - trackIndex = 1 - dataHashCode = -874600600 - size = 1180 - isKeyFrame = false - presentationTimeUs = 334083 -sample: - trackIndex = 0 dataHashCode = -212376212 size = 20 isKeyFrame = true presentationTimeUs = 0 sample: - trackIndex = 0 + trackIndex = 1 dataHashCode = -1948569090 size = 72 isKeyFrame = true presentationTimeUs = 417 sample: - trackIndex = 0 + trackIndex = 1 dataHashCode = -1316750072 size = 84 isKeyFrame = true presentationTimeUs = 1917 sample: - trackIndex = 0 + trackIndex = 1 dataHashCode = 1016428949 size = 88 isKeyFrame = true presentationTimeUs = 3667 sample: - trackIndex = 0 + trackIndex = 1 dataHashCode = -1127325245 size = 96 isKeyFrame = true presentationTimeUs = 5500 sample: - trackIndex = 0 + trackIndex = 1 dataHashCode = 1148147726 size = 92 isKeyFrame = true presentationTimeUs = 7500 sample: trackIndex = 0 + dataHashCode = 1949079733 + size = 5446 + isKeyFrame = true + presentationTimeUs = 0 +sample: + trackIndex = 0 + dataHashCode = -1397194508 + size = 125 + isKeyFrame = false + presentationTimeUs = 14000 +sample: + trackIndex = 0 + dataHashCode = 1147159698 + size = 147 + isKeyFrame = false + presentationTimeUs = 47333 +sample: + trackIndex = 0 + dataHashCode = 524634358 + size = 149 + isKeyFrame = false + presentationTimeUs = 80667 +sample: + trackIndex = 0 + dataHashCode = 2031178347 + size = 149 + isKeyFrame = false + presentationTimeUs = 114000 +sample: + trackIndex = 0 + dataHashCode = -625462168 + size = 169 + isKeyFrame = false + presentationTimeUs = 147333 +sample: + trackIndex = 0 + dataHashCode = -973299745 + size = 126 + isKeyFrame = false + presentationTimeUs = 180667 +sample: + trackIndex = 0 + dataHashCode = -788426325 + size = 120 + isKeyFrame = false + presentationTimeUs = 228042 +sample: + trackIndex = 0 + dataHashCode = 2009515523 + size = 126 + isKeyFrame = false + presentationTimeUs = 244708 +sample: + trackIndex = 0 + dataHashCode = -874600600 + size = 1180 + isKeyFrame = false + presentationTimeUs = 334083 +sample: + trackIndex = 1 dataHashCode = -2125685540 size = 76 isKeyFrame = true presentationTimeUs = 9417 sample: - trackIndex = 0 + trackIndex = 1 dataHashCode = 473329679 size = 24 isKeyFrame = true presentationTimeUs = 11000 sample: - trackIndex = 0 + trackIndex = 1 dataHashCode = 240990900 size = 176 isKeyFrame = true presentationTimeUs = 11500 sample: - trackIndex = 0 + trackIndex = 1 dataHashCode = 777637182 size = 196 isKeyFrame = true presentationTimeUs = 15167 sample: - trackIndex = 0 + trackIndex = 1 dataHashCode = 1872106264 size = 180 isKeyFrame = true presentationTimeUs = 19250 sample: - trackIndex = 0 + trackIndex = 1 dataHashCode = -1520711499 size = 140 isKeyFrame = true presentationTimeUs = 23000 sample: - trackIndex = 0 + trackIndex = 1 dataHashCode = 1580199067 size = 232 isKeyFrame = true presentationTimeUs = 25917 sample: - trackIndex = 0 + trackIndex = 1 dataHashCode = 475464086 size = 184 isKeyFrame = true presentationTimeUs = 30750 sample: - trackIndex = 0 + trackIndex = 1 dataHashCode = -211754132 size = 172 isKeyFrame = true presentationTimeUs = 34584 sample: - trackIndex = 0 + trackIndex = 1 dataHashCode = 1236547164 size = 172 isKeyFrame = true presentationTimeUs = 38167 sample: - trackIndex = 0 + trackIndex = 1 dataHashCode = -2064216186 size = 188 isKeyFrame = true presentationTimeUs = 41750 sample: - trackIndex = 1 + trackIndex = 0 dataHashCode = 984869991 size = 216 isKeyFrame = false presentationTimeUs = 267416 sample: - trackIndex = 1 + trackIndex = 0 dataHashCode = 2106811176 size = 119 isKeyFrame = false presentationTimeUs = 234083 sample: - trackIndex = 1 + trackIndex = 0 dataHashCode = -1981166365 size = 145 isKeyFrame = false presentationTimeUs = 300750 sample: - trackIndex = 1 + trackIndex = 0 dataHashCode = 1234592714 size = 1274 isKeyFrame = false presentationTimeUs = 467416 sample: - trackIndex = 1 + trackIndex = 0 dataHashCode = -13135608 size = 190 isKeyFrame = false presentationTimeUs = 400750 sample: - trackIndex = 1 + trackIndex = 0 dataHashCode = 1840621658 size = 107 isKeyFrame = false presentationTimeUs = 367416 sample: - trackIndex = 1 + trackIndex = 0 dataHashCode = 1637734271 size = 125 isKeyFrame = false presentationTimeUs = 434083 sample: - trackIndex = 0 + trackIndex = 1 dataHashCode = -682950885 size = 260 isKeyFrame = true presentationTimeUs = 45667 sample: - trackIndex = 0 + trackIndex = 1 dataHashCode = 1301206627 size = 236 isKeyFrame = true presentationTimeUs = 51084 sample: - trackIndex = 0 + trackIndex = 1 dataHashCode = 256580525 size = 236 isKeyFrame = true presentationTimeUs = 56000 sample: - trackIndex = 0 + trackIndex = 1 dataHashCode = -1086601304 size = 236 isKeyFrame = true presentationTimeUs = 60917 sample: - trackIndex = 0 + trackIndex = 1 dataHashCode = -2046131588 size = 224 isKeyFrame = true presentationTimeUs = 65834 sample: - trackIndex = 0 + trackIndex = 1 dataHashCode = 1550955865 size = 224 isKeyFrame = true presentationTimeUs = 70500 sample: - trackIndex = 0 + trackIndex = 1 dataHashCode = -274800552 size = 220 isKeyFrame = true presentationTimeUs = 75167 sample: - trackIndex = 0 + trackIndex = 1 dataHashCode = 382420909 size = 224 isKeyFrame = true presentationTimeUs = 79750 sample: - trackIndex = 0 + trackIndex = 1 dataHashCode = -1431575865 size = 232 isKeyFrame = true presentationTimeUs = 84417 sample: - trackIndex = 1 + trackIndex = 0 dataHashCode = 2112365658 size = 1109 isKeyFrame = false presentationTimeUs = 600750 sample: - trackIndex = 1 + trackIndex = 0 dataHashCode = -968901399 size = 250 isKeyFrame = false presentationTimeUs = 534083 sample: - trackIndex = 1 + trackIndex = 0 dataHashCode = -1184738023 size = 124 isKeyFrame = false presentationTimeUs = 500750 sample: - trackIndex = 1 + trackIndex = 0 dataHashCode = 1756300509 size = 134 isKeyFrame = false presentationTimeUs = 567416 sample: - trackIndex = 1 + trackIndex = 0 dataHashCode = 823429273 size = 1201 isKeyFrame = false presentationTimeUs = 734083 sample: - trackIndex = 1 + trackIndex = 0 dataHashCode = 651718599 size = 213 isKeyFrame = false presentationTimeUs = 667416 sample: - trackIndex = 1 + trackIndex = 0 dataHashCode = 846349953 size = 125 isKeyFrame = false presentationTimeUs = 634083 sample: - trackIndex = 1 + trackIndex = 0 dataHashCode = 1331153462 size = 114 isKeyFrame = false presentationTimeUs = 700750 sample: - trackIndex = 1 + trackIndex = 0 dataHashCode = -73358172 size = 1010 isKeyFrame = false presentationTimeUs = 867416 sample: - trackIndex = 1 + trackIndex = 0 dataHashCode = -1395269253 size = 209 isKeyFrame = false presentationTimeUs = 800750 sample: - trackIndex = 1 + trackIndex = 0 dataHashCode = -1001367604 size = 139 isKeyFrame = false presentationTimeUs = 767416 sample: - trackIndex = 1 + trackIndex = 0 dataHashCode = -122569918 size = 138 isKeyFrame = false diff --git a/libraries/test_data/src/test/assets/transformerdumps/mp4/sample_with_increasing_timestamps_320w_240h.mp4.clipped.dump b/libraries/test_data/src/test/assets/transformerdumps/mp4/sample_with_increasing_timestamps_320w_240h.mp4.clipped.dump index 2668c9546c..a065022a97 100644 --- a/libraries/test_data/src/test/assets/transformerdumps/mp4/sample_with_increasing_timestamps_320w_240h.mp4.clipped.dump +++ b/libraries/test_data/src/test/assets/transformerdumps/mp4/sample_with_increasing_timestamps_320w_240h.mp4.clipped.dump @@ -1,17 +1,4 @@ format 0: - averageBitrate = 192181 - peakBitrate = 192181 - id = 2 - sampleMimeType = audio/mp4a-latm - codecs = mp4a.40.2 - maxInputSize = 643 - channelCount = 2 - sampleRate = 48000 - language = en - metadata = entries=[TSSE: description=null: values=[Lavf58.76.100]] - initializationData: - data = length 2, hash 560 -format 1: id = 1 sampleMimeType = video/avc codecs = avc1.42C015 @@ -27,962 +14,975 @@ format 1: initializationData: data = length 31, hash 4B108214 data = length 9, hash FBA158BB +format 1: + averageBitrate = 192181 + peakBitrate = 192181 + id = 2 + sampleMimeType = audio/mp4a-latm + codecs = mp4a.40.2 + maxInputSize = 643 + channelCount = 2 + sampleRate = 48000 + language = en + metadata = entries=[TSSE: description=null: values=[Lavf58.76.100]] + initializationData: + data = length 2, hash 560 sample: trackIndex = 1 - dataHashCode = 983000500 - size = 13539 - isKeyFrame = true - presentationTimeUs = 0 -sample: - trackIndex = 1 - dataHashCode = -1834230781 - size = 32 - isKeyFrame = false - presentationTimeUs = 16666 -sample: - trackIndex = 1 - dataHashCode = 521720738 - size = 1534 - isKeyFrame = false - presentationTimeUs = 33333 -sample: - trackIndex = 1 - dataHashCode = 722836039 - size = 123 - isKeyFrame = false - presentationTimeUs = 50000 -sample: - trackIndex = 1 - dataHashCode = -1702585381 - size = 2061 - isKeyFrame = false - presentationTimeUs = 66666 -sample: - trackIndex = 1 - dataHashCode = -365856396 - size = 147 - isKeyFrame = false - presentationTimeUs = 83333 -sample: - trackIndex = 1 - dataHashCode = 1258185334 - size = 2534 - isKeyFrame = false - presentationTimeUs = 100000 -sample: - trackIndex = 1 - dataHashCode = -179623006 - size = 87 - isKeyFrame = false - presentationTimeUs = 116666 -sample: - trackIndex = 1 - dataHashCode = -541393824 - size = 2762 - isKeyFrame = false - presentationTimeUs = 133333 -sample: - trackIndex = 1 - dataHashCode = -1912932514 - size = 57 - isKeyFrame = false - presentationTimeUs = 150000 -sample: - trackIndex = 0 dataHashCode = 620415738 size = 508 isKeyFrame = true presentationTimeUs = 7020 sample: - trackIndex = 0 + trackIndex = 1 dataHashCode = 33931768 size = 504 isKeyFrame = true presentationTimeUs = 28354 sample: - trackIndex = 0 + trackIndex = 1 dataHashCode = 800699278 size = 508 isKeyFrame = true presentationTimeUs = 49687 sample: - trackIndex = 0 + trackIndex = 1 dataHashCode = 584185366 size = 519 isKeyFrame = true presentationTimeUs = 71020 sample: - trackIndex = 0 + trackIndex = 1 dataHashCode = 1490843354 size = 528 isKeyFrame = true presentationTimeUs = 92354 sample: - trackIndex = 0 + trackIndex = 1 dataHashCode = -720335181 size = 511 isKeyFrame = true presentationTimeUs = 113687 sample: - trackIndex = 0 + trackIndex = 1 dataHashCode = 197135781 size = 523 isKeyFrame = true presentationTimeUs = 135020 sample: - trackIndex = 0 + trackIndex = 1 dataHashCode = 294457020 size = 511 isKeyFrame = true presentationTimeUs = 156354 sample: - trackIndex = 0 + trackIndex = 1 dataHashCode = 194307558 size = 503 isKeyFrame = true presentationTimeUs = 177687 sample: - trackIndex = 0 + trackIndex = 1 dataHashCode = 1687202651 size = 507 isKeyFrame = true presentationTimeUs = 199020 sample: - trackIndex = 1 - dataHashCode = 485634444 - size = 2833 - isKeyFrame = false - presentationTimeUs = 166666 -sample: - trackIndex = 1 - dataHashCode = 570625802 - size = 189 - isKeyFrame = false - presentationTimeUs = 183333 -sample: - trackIndex = 1 - dataHashCode = 1819668957 - size = 3153 - isKeyFrame = false - presentationTimeUs = 200000 -sample: - trackIndex = 1 - dataHashCode = 1004398066 - size = 104 - isKeyFrame = false - presentationTimeUs = 216666 -sample: - trackIndex = 1 - dataHashCode = 2087741113 - size = 2304 - isKeyFrame = false - presentationTimeUs = 233333 -sample: - trackIndex = 1 - dataHashCode = -419782502 - size = 222 - isKeyFrame = false - presentationTimeUs = 250000 -sample: - trackIndex = 1 - dataHashCode = -1867110345 - size = 2306 - isKeyFrame = false - presentationTimeUs = 266666 -sample: - trackIndex = 1 - dataHashCode = 1908323737 - size = 257 - isKeyFrame = false - presentationTimeUs = 283333 -sample: - trackIndex = 1 - dataHashCode = 884063337 - size = 2201 - isKeyFrame = false - presentationTimeUs = 300000 -sample: - trackIndex = 1 - dataHashCode = -1308458590 - size = 174 - isKeyFrame = false - presentationTimeUs = 316666 + trackIndex = 0 + dataHashCode = 983000500 + size = 13539 + isKeyFrame = true + presentationTimeUs = 0 sample: trackIndex = 0 + dataHashCode = -1834230781 + size = 32 + isKeyFrame = false + presentationTimeUs = 16666 +sample: + trackIndex = 0 + dataHashCode = 521720738 + size = 1534 + isKeyFrame = false + presentationTimeUs = 33333 +sample: + trackIndex = 0 + dataHashCode = 722836039 + size = 123 + isKeyFrame = false + presentationTimeUs = 50000 +sample: + trackIndex = 0 + dataHashCode = -1702585381 + size = 2061 + isKeyFrame = false + presentationTimeUs = 66666 +sample: + trackIndex = 0 + dataHashCode = -365856396 + size = 147 + isKeyFrame = false + presentationTimeUs = 83333 +sample: + trackIndex = 0 + dataHashCode = 1258185334 + size = 2534 + isKeyFrame = false + presentationTimeUs = 100000 +sample: + trackIndex = 0 + dataHashCode = -179623006 + size = 87 + isKeyFrame = false + presentationTimeUs = 116666 +sample: + trackIndex = 0 + dataHashCode = -541393824 + size = 2762 + isKeyFrame = false + presentationTimeUs = 133333 +sample: + trackIndex = 0 + dataHashCode = -1912932514 + size = 57 + isKeyFrame = false + presentationTimeUs = 150000 +sample: + trackIndex = 1 dataHashCode = -1695580898 size = 517 isKeyFrame = true presentationTimeUs = 220354 sample: - trackIndex = 0 + trackIndex = 1 dataHashCode = -1416688734 size = 510 isKeyFrame = true presentationTimeUs = 241687 sample: - trackIndex = 0 + trackIndex = 1 dataHashCode = -239330254 size = 511 isKeyFrame = true presentationTimeUs = 263020 sample: - trackIndex = 0 + trackIndex = 1 dataHashCode = 1449437418 size = 509 isKeyFrame = true presentationTimeUs = 284354 sample: - trackIndex = 0 + trackIndex = 1 dataHashCode = -1480882788 size = 508 isKeyFrame = true presentationTimeUs = 305687 sample: - trackIndex = 0 + trackIndex = 1 dataHashCode = -1628064098 size = 511 isKeyFrame = true presentationTimeUs = 327020 sample: - trackIndex = 0 + trackIndex = 1 dataHashCode = 1717254647 size = 514 isKeyFrame = true presentationTimeUs = 348354 sample: - trackIndex = 0 + trackIndex = 1 dataHashCode = -1317174771 size = 503 isKeyFrame = true presentationTimeUs = 369687 sample: - trackIndex = 0 + trackIndex = 1 dataHashCode = 1001148219 size = 510 isKeyFrame = true presentationTimeUs = 391020 sample: - trackIndex = 0 + trackIndex = 1 dataHashCode = 1259307086 size = 511 isKeyFrame = true presentationTimeUs = 412354 sample: - trackIndex = 1 - dataHashCode = -1686938678 - size = 2524 + trackIndex = 0 + dataHashCode = 485634444 + size = 2833 isKeyFrame = false - presentationTimeUs = 333333 -sample: - trackIndex = 1 - dataHashCode = -1372845971 - size = 171 - isKeyFrame = false - presentationTimeUs = 350000 -sample: - trackIndex = 1 - dataHashCode = 1130876644 - size = 2306 - isKeyFrame = false - presentationTimeUs = 366666 -sample: - trackIndex = 1 - dataHashCode = 1707671352 - size = 188 - isKeyFrame = false - presentationTimeUs = 383333 -sample: - trackIndex = 1 - dataHashCode = 300233313 - size = 2529 - isKeyFrame = false - presentationTimeUs = 400000 -sample: - trackIndex = 1 - dataHashCode = -1284013406 - size = 182 - isKeyFrame = false - presentationTimeUs = 416666 -sample: - trackIndex = 1 - dataHashCode = -2088617828 - size = 2047 - isKeyFrame = false - presentationTimeUs = 433333 -sample: - trackIndex = 1 - dataHashCode = 2116374999 - size = 259 - isKeyFrame = false - presentationTimeUs = 450000 -sample: - trackIndex = 1 - dataHashCode = -2123019940 - size = 2234 - isKeyFrame = false - presentationTimeUs = 466666 -sample: - trackIndex = 1 - dataHashCode = 1901454757 - size = 138 - isKeyFrame = false - presentationTimeUs = 483333 + presentationTimeUs = 166666 sample: trackIndex = 0 + dataHashCode = 570625802 + size = 189 + isKeyFrame = false + presentationTimeUs = 183333 +sample: + trackIndex = 0 + dataHashCode = 1819668957 + size = 3153 + isKeyFrame = false + presentationTimeUs = 200000 +sample: + trackIndex = 0 + dataHashCode = 1004398066 + size = 104 + isKeyFrame = false + presentationTimeUs = 216666 +sample: + trackIndex = 0 + dataHashCode = 2087741113 + size = 2304 + isKeyFrame = false + presentationTimeUs = 233333 +sample: + trackIndex = 0 + dataHashCode = -419782502 + size = 222 + isKeyFrame = false + presentationTimeUs = 250000 +sample: + trackIndex = 0 + dataHashCode = -1867110345 + size = 2306 + isKeyFrame = false + presentationTimeUs = 266666 +sample: + trackIndex = 0 + dataHashCode = 1908323737 + size = 257 + isKeyFrame = false + presentationTimeUs = 283333 +sample: + trackIndex = 0 + dataHashCode = 884063337 + size = 2201 + isKeyFrame = false + presentationTimeUs = 300000 +sample: + trackIndex = 0 + dataHashCode = -1308458590 + size = 174 + isKeyFrame = false + presentationTimeUs = 316666 +sample: + trackIndex = 1 dataHashCode = -27251144 size = 507 isKeyFrame = true presentationTimeUs = 433687 sample: - trackIndex = 0 + trackIndex = 1 dataHashCode = -129676969 size = 509 isKeyFrame = true presentationTimeUs = 455020 sample: - trackIndex = 0 + trackIndex = 1 dataHashCode = 1228056327 size = 523 isKeyFrame = true presentationTimeUs = 476354 sample: - trackIndex = 0 + trackIndex = 1 dataHashCode = -1301514722 size = 501 isKeyFrame = true presentationTimeUs = 497687 sample: - trackIndex = 0 + trackIndex = 1 dataHashCode = 204329022 size = 514 isKeyFrame = true presentationTimeUs = 519020 sample: - trackIndex = 0 + trackIndex = 1 dataHashCode = 204379389 size = 504 isKeyFrame = true presentationTimeUs = 540354 sample: - trackIndex = 0 + trackIndex = 1 dataHashCode = 694913274 size = 508 isKeyFrame = true presentationTimeUs = 561687 sample: - trackIndex = 0 + trackIndex = 1 dataHashCode = 289018778 size = 513 isKeyFrame = true presentationTimeUs = 583020 sample: - trackIndex = 0 + trackIndex = 1 dataHashCode = -693167785 size = 517 isKeyFrame = true presentationTimeUs = 604354 sample: - trackIndex = 0 + trackIndex = 1 dataHashCode = 253824480 size = 510 isKeyFrame = true presentationTimeUs = 625687 sample: - trackIndex = 1 - dataHashCode = 1576638059 - size = 2088 + trackIndex = 0 + dataHashCode = -1686938678 + size = 2524 isKeyFrame = false - presentationTimeUs = 500000 -sample: - trackIndex = 1 - dataHashCode = 1120133924 - size = 151 - isKeyFrame = false - presentationTimeUs = 516666 -sample: - trackIndex = 1 - dataHashCode = 264118578 - size = 2235 - isKeyFrame = false - presentationTimeUs = 533333 -sample: - trackIndex = 1 - dataHashCode = 64254117 - size = 164 - isKeyFrame = false - presentationTimeUs = 550000 -sample: - trackIndex = 1 - dataHashCode = -1000078879 - size = 2231 - isKeyFrame = false - presentationTimeUs = 566666 -sample: - trackIndex = 1 - dataHashCode = 286919946 - size = 123 - isKeyFrame = false - presentationTimeUs = 583333 -sample: - trackIndex = 1 - dataHashCode = -320312658 - size = 2303 - isKeyFrame = false - presentationTimeUs = 600000 -sample: - trackIndex = 1 - dataHashCode = 1057750590 - size = 175 - isKeyFrame = false - presentationTimeUs = 616666 -sample: - trackIndex = 1 - dataHashCode = 1961415074 - size = 2165 - isKeyFrame = false - presentationTimeUs = 633333 -sample: - trackIndex = 1 - dataHashCode = 667267023 - size = 260 - isKeyFrame = false - presentationTimeUs = 650000 + presentationTimeUs = 333333 sample: trackIndex = 0 + dataHashCode = -1372845971 + size = 171 + isKeyFrame = false + presentationTimeUs = 350000 +sample: + trackIndex = 0 + dataHashCode = 1130876644 + size = 2306 + isKeyFrame = false + presentationTimeUs = 366666 +sample: + trackIndex = 0 + dataHashCode = 1707671352 + size = 188 + isKeyFrame = false + presentationTimeUs = 383333 +sample: + trackIndex = 0 + dataHashCode = 300233313 + size = 2529 + isKeyFrame = false + presentationTimeUs = 400000 +sample: + trackIndex = 0 + dataHashCode = -1284013406 + size = 182 + isKeyFrame = false + presentationTimeUs = 416666 +sample: + trackIndex = 0 + dataHashCode = -2088617828 + size = 2047 + isKeyFrame = false + presentationTimeUs = 433333 +sample: + trackIndex = 0 + dataHashCode = 2116374999 + size = 259 + isKeyFrame = false + presentationTimeUs = 450000 +sample: + trackIndex = 0 + dataHashCode = -2123019940 + size = 2234 + isKeyFrame = false + presentationTimeUs = 466666 +sample: + trackIndex = 0 + dataHashCode = 1901454757 + size = 138 + isKeyFrame = false + presentationTimeUs = 483333 +sample: + trackIndex = 1 dataHashCode = -142385998 size = 516 isKeyFrame = true presentationTimeUs = 647020 sample: - trackIndex = 0 + trackIndex = 1 dataHashCode = 917740295 size = 506 isKeyFrame = true presentationTimeUs = 668354 sample: - trackIndex = 0 + trackIndex = 1 dataHashCode = -1795733204 size = 504 isKeyFrame = true presentationTimeUs = 689687 sample: - trackIndex = 0 + trackIndex = 1 dataHashCode = 1282735099 size = 518 isKeyFrame = true presentationTimeUs = 711020 sample: - trackIndex = 0 + trackIndex = 1 dataHashCode = -834522889 size = 512 isKeyFrame = true presentationTimeUs = 732354 sample: - trackIndex = 0 + trackIndex = 1 dataHashCode = -1590936932 size = 506 isKeyFrame = true presentationTimeUs = 753687 sample: - trackIndex = 0 + trackIndex = 1 dataHashCode = -697315454 size = 529 isKeyFrame = true presentationTimeUs = 775020 sample: - trackIndex = 0 + trackIndex = 1 dataHashCode = -1563590541 size = 514 isKeyFrame = true presentationTimeUs = 796354 sample: - trackIndex = 0 + trackIndex = 1 dataHashCode = -674722870 size = 509 isKeyFrame = true presentationTimeUs = 817687 sample: - trackIndex = 0 + trackIndex = 1 dataHashCode = -272827525 size = 510 isKeyFrame = true presentationTimeUs = 839020 sample: - trackIndex = 1 - dataHashCode = 979033489 - size = 1924 + trackIndex = 0 + dataHashCode = 1576638059 + size = 2088 isKeyFrame = false - presentationTimeUs = 666666 -sample: - trackIndex = 1 - dataHashCode = -1974473017 - size = 286 - isKeyFrame = false - presentationTimeUs = 683333 -sample: - trackIndex = 1 - dataHashCode = -962519103 - size = 1992 - isKeyFrame = false - presentationTimeUs = 700000 -sample: - trackIndex = 1 - dataHashCode = -1312094075 - size = 204 - isKeyFrame = false - presentationTimeUs = 716666 -sample: - trackIndex = 1 - dataHashCode = 2068151127 - size = 1826 - isKeyFrame = false - presentationTimeUs = 733333 -sample: - trackIndex = 1 - dataHashCode = -1531967506 - size = 284 - isKeyFrame = false - presentationTimeUs = 750000 -sample: - trackIndex = 1 - dataHashCode = -778066699 - size = 1940 - isKeyFrame = false - presentationTimeUs = 766666 -sample: - trackIndex = 1 - dataHashCode = -1219952117 - size = 129 - isKeyFrame = false - presentationTimeUs = 783333 -sample: - trackIndex = 1 - dataHashCode = -1218204223 - size = 1947 - isKeyFrame = false - presentationTimeUs = 800000 -sample: - trackIndex = 1 - dataHashCode = -1816247511 - size = 147 - isKeyFrame = false - presentationTimeUs = 816666 + presentationTimeUs = 500000 sample: trackIndex = 0 + dataHashCode = 1120133924 + size = 151 + isKeyFrame = false + presentationTimeUs = 516666 +sample: + trackIndex = 0 + dataHashCode = 264118578 + size = 2235 + isKeyFrame = false + presentationTimeUs = 533333 +sample: + trackIndex = 0 + dataHashCode = 64254117 + size = 164 + isKeyFrame = false + presentationTimeUs = 550000 +sample: + trackIndex = 0 + dataHashCode = -1000078879 + size = 2231 + isKeyFrame = false + presentationTimeUs = 566666 +sample: + trackIndex = 0 + dataHashCode = 286919946 + size = 123 + isKeyFrame = false + presentationTimeUs = 583333 +sample: + trackIndex = 0 + dataHashCode = -320312658 + size = 2303 + isKeyFrame = false + presentationTimeUs = 600000 +sample: + trackIndex = 0 + dataHashCode = 1057750590 + size = 175 + isKeyFrame = false + presentationTimeUs = 616666 +sample: + trackIndex = 0 + dataHashCode = 1961415074 + size = 2165 + isKeyFrame = false + presentationTimeUs = 633333 +sample: + trackIndex = 0 + dataHashCode = 667267023 + size = 260 + isKeyFrame = false + presentationTimeUs = 650000 +sample: + trackIndex = 1 dataHashCode = 903683051 size = 524 isKeyFrame = true presentationTimeUs = 860354 sample: - trackIndex = 0 + trackIndex = 1 dataHashCode = 57039157 size = 509 isKeyFrame = true presentationTimeUs = 881687 sample: - trackIndex = 0 + trackIndex = 1 dataHashCode = 674330068 size = 514 isKeyFrame = true presentationTimeUs = 903020 sample: - trackIndex = 0 + trackIndex = 1 dataHashCode = -1896569421 size = 514 isKeyFrame = true presentationTimeUs = 924354 sample: - trackIndex = 0 + trackIndex = 1 dataHashCode = -837719592 size = 502 isKeyFrame = true presentationTimeUs = 945687 sample: - trackIndex = 0 + trackIndex = 1 dataHashCode = 1269429850 size = 507 isKeyFrame = true presentationTimeUs = 967020 sample: - trackIndex = 0 + trackIndex = 1 dataHashCode = -884799857 size = 497 isKeyFrame = true presentationTimeUs = 988354 sample: - trackIndex = 0 + trackIndex = 1 dataHashCode = -1865947937 size = 512 isKeyFrame = true presentationTimeUs = 1009687 sample: - trackIndex = 0 + trackIndex = 1 dataHashCode = 1197648682 size = 500 isKeyFrame = true presentationTimeUs = 1031020 sample: - trackIndex = 0 + trackIndex = 1 dataHashCode = -320096195 size = 509 isKeyFrame = true presentationTimeUs = 1052354 sample: - trackIndex = 1 - dataHashCode = 299686318 - size = 2066 + trackIndex = 0 + dataHashCode = 979033489 + size = 1924 isKeyFrame = false - presentationTimeUs = 833333 -sample: - trackIndex = 1 - dataHashCode = -1520242765 - size = 185 - isKeyFrame = false - presentationTimeUs = 850000 -sample: - trackIndex = 1 - dataHashCode = -1702498409 - size = 2159 - isKeyFrame = false - presentationTimeUs = 866666 -sample: - trackIndex = 1 - dataHashCode = 345202950 - size = 189 - isKeyFrame = false - presentationTimeUs = 883333 -sample: - trackIndex = 1 - dataHashCode = 220746796 - size = 2098 - isKeyFrame = false - presentationTimeUs = 900000 -sample: - trackIndex = 1 - dataHashCode = -32341189 - size = 159 - isKeyFrame = false - presentationTimeUs = 916666 -sample: - trackIndex = 1 - dataHashCode = -1838476361 - size = 1914 - isKeyFrame = false - presentationTimeUs = 933333 -sample: - trackIndex = 1 - dataHashCode = -1322093590 - size = 99 - isKeyFrame = false - presentationTimeUs = 950000 -sample: - trackIndex = 1 - dataHashCode = -1391064751 - size = 2168 - isKeyFrame = false - presentationTimeUs = 966666 -sample: - trackIndex = 1 - dataHashCode = 1479204931 - size = 129 - isKeyFrame = false - presentationTimeUs = 983333 + presentationTimeUs = 666666 sample: trackIndex = 0 + dataHashCode = -1974473017 + size = 286 + isKeyFrame = false + presentationTimeUs = 683333 +sample: + trackIndex = 0 + dataHashCode = -962519103 + size = 1992 + isKeyFrame = false + presentationTimeUs = 700000 +sample: + trackIndex = 0 + dataHashCode = -1312094075 + size = 204 + isKeyFrame = false + presentationTimeUs = 716666 +sample: + trackIndex = 0 + dataHashCode = 2068151127 + size = 1826 + isKeyFrame = false + presentationTimeUs = 733333 +sample: + trackIndex = 0 + dataHashCode = -1531967506 + size = 284 + isKeyFrame = false + presentationTimeUs = 750000 +sample: + trackIndex = 0 + dataHashCode = -778066699 + size = 1940 + isKeyFrame = false + presentationTimeUs = 766666 +sample: + trackIndex = 0 + dataHashCode = -1219952117 + size = 129 + isKeyFrame = false + presentationTimeUs = 783333 +sample: + trackIndex = 0 + dataHashCode = -1218204223 + size = 1947 + isKeyFrame = false + presentationTimeUs = 800000 +sample: + trackIndex = 0 + dataHashCode = -1816247511 + size = 147 + isKeyFrame = false + presentationTimeUs = 816666 +sample: + trackIndex = 1 dataHashCode = -744850549 size = 511 isKeyFrame = true presentationTimeUs = 1073687 sample: - trackIndex = 0 + trackIndex = 1 dataHashCode = 1457899387 size = 505 isKeyFrame = true presentationTimeUs = 1095020 sample: - trackIndex = 0 + trackIndex = 1 dataHashCode = 168118808 size = 519 isKeyFrame = true presentationTimeUs = 1116354 sample: - trackIndex = 0 + trackIndex = 1 dataHashCode = 896298799 size = 506 isKeyFrame = true presentationTimeUs = 1137687 sample: - trackIndex = 0 + trackIndex = 1 dataHashCode = -1766408057 size = 513 isKeyFrame = true presentationTimeUs = 1159020 sample: - trackIndex = 0 + trackIndex = 1 dataHashCode = 988509435 size = 517 isKeyFrame = true presentationTimeUs = 1180354 sample: - trackIndex = 0 + trackIndex = 1 dataHashCode = 1031000863 size = 529 isKeyFrame = true presentationTimeUs = 1201687 sample: - trackIndex = 0 + trackIndex = 1 dataHashCode = 63390943 size = 517 isKeyFrame = true presentationTimeUs = 1223020 sample: - trackIndex = 0 + trackIndex = 1 dataHashCode = -747883422 size = 517 isKeyFrame = true presentationTimeUs = 1244354 sample: - trackIndex = 0 + trackIndex = 1 dataHashCode = -1574660470 size = 526 isKeyFrame = true presentationTimeUs = 1265687 +sample: + trackIndex = 0 + dataHashCode = 299686318 + size = 2066 + isKeyFrame = false + presentationTimeUs = 833333 +sample: + trackIndex = 0 + dataHashCode = -1520242765 + size = 185 + isKeyFrame = false + presentationTimeUs = 850000 +sample: + trackIndex = 0 + dataHashCode = -1702498409 + size = 2159 + isKeyFrame = false + presentationTimeUs = 866666 +sample: + trackIndex = 0 + dataHashCode = 345202950 + size = 189 + isKeyFrame = false + presentationTimeUs = 883333 +sample: + trackIndex = 0 + dataHashCode = 220746796 + size = 2098 + isKeyFrame = false + presentationTimeUs = 900000 +sample: + trackIndex = 0 + dataHashCode = -32341189 + size = 159 + isKeyFrame = false + presentationTimeUs = 916666 +sample: + trackIndex = 0 + dataHashCode = -1838476361 + size = 1914 + isKeyFrame = false + presentationTimeUs = 933333 +sample: + trackIndex = 0 + dataHashCode = -1322093590 + size = 99 + isKeyFrame = false + presentationTimeUs = 950000 +sample: + trackIndex = 0 + dataHashCode = -1391064751 + size = 2168 + isKeyFrame = false + presentationTimeUs = 966666 +sample: + trackIndex = 0 + dataHashCode = 1479204931 + size = 129 + isKeyFrame = false + presentationTimeUs = 983333 sample: trackIndex = 1 + dataHashCode = 1371653176 + size = 515 + isKeyFrame = true + presentationTimeUs = 1287020 +sample: + trackIndex = 1 + dataHashCode = -873513581 + size = 503 + isKeyFrame = true + presentationTimeUs = 1308354 +sample: + trackIndex = 1 + dataHashCode = -1886763688 + size = 514 + isKeyFrame = true + presentationTimeUs = 1329687 +sample: + trackIndex = 1 + dataHashCode = 1308763541 + size = 512 + isKeyFrame = true + presentationTimeUs = 1351020 +sample: + trackIndex = 1 + dataHashCode = 490619935 + size = 505 + isKeyFrame = true + presentationTimeUs = 1372354 +sample: + trackIndex = 1 + dataHashCode = -671375789 + size = 512 + isKeyFrame = true + presentationTimeUs = 1393687 +sample: + trackIndex = 1 + dataHashCode = -1950105780 + size = 521 + isKeyFrame = true + presentationTimeUs = 1415020 +sample: + trackIndex = 1 + dataHashCode = -1430221498 + size = 533 + isKeyFrame = true + presentationTimeUs = 1436354 +sample: + trackIndex = 1 + dataHashCode = 529950036 + size = 505 + isKeyFrame = true + presentationTimeUs = 1457687 +sample: + trackIndex = 1 + dataHashCode = 1705899587 + size = 497 + isKeyFrame = true + presentationTimeUs = 1479020 +sample: + trackIndex = 0 dataHashCode = 1131230500 size = 2327 isKeyFrame = false presentationTimeUs = 1000000 sample: - trackIndex = 1 + trackIndex = 0 dataHashCode = -393815961 size = 160 isKeyFrame = false presentationTimeUs = 1016666 sample: - trackIndex = 1 + trackIndex = 0 dataHashCode = -242739025 size = 2136 isKeyFrame = false presentationTimeUs = 1033333 sample: - trackIndex = 1 + trackIndex = 0 dataHashCode = 65238903 size = 163 isKeyFrame = false presentationTimeUs = 1050000 sample: - trackIndex = 1 + trackIndex = 0 dataHashCode = 1720840922 size = 2043 isKeyFrame = false presentationTimeUs = 1066666 sample: - trackIndex = 1 + trackIndex = 0 dataHashCode = -1006231050 size = 178 isKeyFrame = false presentationTimeUs = 1083333 sample: - trackIndex = 1 + trackIndex = 0 dataHashCode = 1742965952 size = 2022 isKeyFrame = false presentationTimeUs = 1100000 sample: - trackIndex = 1 + trackIndex = 0 dataHashCode = -971065365 size = 240 isKeyFrame = false presentationTimeUs = 1116666 sample: - trackIndex = 1 + trackIndex = 0 dataHashCode = 1757434551 size = 1887 isKeyFrame = false presentationTimeUs = 1133333 sample: - trackIndex = 1 + trackIndex = 0 dataHashCode = 1501849116 size = 252 isKeyFrame = false presentationTimeUs = 1150000 sample: trackIndex = 0 - dataHashCode = 1371653176 - size = 515 - isKeyFrame = true - presentationTimeUs = 1287020 -sample: - trackIndex = 0 - dataHashCode = -873513581 - size = 503 - isKeyFrame = true - presentationTimeUs = 1308354 -sample: - trackIndex = 0 - dataHashCode = -1886763688 - size = 514 - isKeyFrame = true - presentationTimeUs = 1329687 -sample: - trackIndex = 0 - dataHashCode = 1308763541 - size = 512 - isKeyFrame = true - presentationTimeUs = 1351020 -sample: - trackIndex = 0 - dataHashCode = 490619935 - size = 505 - isKeyFrame = true - presentationTimeUs = 1372354 -sample: - trackIndex = 0 - dataHashCode = -671375789 - size = 512 - isKeyFrame = true - presentationTimeUs = 1393687 -sample: - trackIndex = 0 - dataHashCode = -1950105780 - size = 521 - isKeyFrame = true - presentationTimeUs = 1415020 -sample: - trackIndex = 0 - dataHashCode = -1430221498 - size = 533 - isKeyFrame = true - presentationTimeUs = 1436354 -sample: - trackIndex = 0 - dataHashCode = 529950036 - size = 505 - isKeyFrame = true - presentationTimeUs = 1457687 -sample: - trackIndex = 0 - dataHashCode = 1705899587 - size = 497 - isKeyFrame = true - presentationTimeUs = 1479020 -sample: - trackIndex = 1 dataHashCode = 825501977 size = 1816 isKeyFrame = false presentationTimeUs = 1166666 sample: - trackIndex = 1 + trackIndex = 0 dataHashCode = -1616223509 size = 246 isKeyFrame = false presentationTimeUs = 1183333 sample: - trackIndex = 1 + trackIndex = 0 dataHashCode = 457119646 size = 1817 isKeyFrame = false presentationTimeUs = 1200000 sample: - trackIndex = 1 + trackIndex = 0 dataHashCode = -1382929639 size = 146 isKeyFrame = false presentationTimeUs = 1216666 sample: - trackIndex = 1 + trackIndex = 0 dataHashCode = -1580853131 size = 1929 isKeyFrame = false presentationTimeUs = 1233333 sample: - trackIndex = 1 + trackIndex = 0 dataHashCode = 1758706551 size = 196 isKeyFrame = false presentationTimeUs = 1250000 sample: - trackIndex = 1 + trackIndex = 0 dataHashCode = 207289556 size = 2154 isKeyFrame = false presentationTimeUs = 1266666 sample: - trackIndex = 1 + trackIndex = 0 dataHashCode = -981284942 size = 182 isKeyFrame = false presentationTimeUs = 1283333 sample: - trackIndex = 1 + trackIndex = 0 dataHashCode = 855103964 size = 2144 isKeyFrame = false presentationTimeUs = 1300000 sample: - trackIndex = 1 + trackIndex = 0 dataHashCode = 380479426 size = 90 isKeyFrame = false presentationTimeUs = 1316666 sample: - trackIndex = 1 + trackIndex = 0 dataHashCode = -1677996152 size = 2005 isKeyFrame = false presentationTimeUs = 1333333 sample: - trackIndex = 1 + trackIndex = 0 dataHashCode = 1516852008 size = 156 isKeyFrame = false presentationTimeUs = 1350000 sample: - trackIndex = 1 + trackIndex = 0 dataHashCode = -1602805193 size = 1772 isKeyFrame = false presentationTimeUs = 1366666 sample: - trackIndex = 1 + trackIndex = 0 dataHashCode = -1720426556 size = 162 isKeyFrame = false presentationTimeUs = 1383333 sample: - trackIndex = 1 + trackIndex = 0 dataHashCode = -1392260423 size = 1865 isKeyFrame = false presentationTimeUs = 1400000 sample: - trackIndex = 1 + trackIndex = 0 dataHashCode = -1842432151 size = 151 isKeyFrame = false presentationTimeUs = 1416666 sample: - trackIndex = 1 + trackIndex = 0 dataHashCode = -537063215 size = 1848 isKeyFrame = false presentationTimeUs = 1433333 sample: - trackIndex = 1 + trackIndex = 0 dataHashCode = 2089388394 size = 206 isKeyFrame = false presentationTimeUs = 1450000 sample: - trackIndex = 1 + trackIndex = 0 dataHashCode = -1761777019 size = 1934 isKeyFrame = false presentationTimeUs = 1466666 sample: - trackIndex = 1 + trackIndex = 0 dataHashCode = 235471194 size = 119 isKeyFrame = false diff --git a/libraries/transformer/src/main/java/androidx/media3/transformer/AssetLoader.java b/libraries/transformer/src/main/java/androidx/media3/transformer/AssetLoader.java index 77fa6620ff..dd3af5004d 100644 --- a/libraries/transformer/src/main/java/androidx/media3/transformer/AssetLoader.java +++ b/libraries/transformer/src/main/java/androidx/media3/transformer/AssetLoader.java @@ -21,6 +21,7 @@ import static java.lang.annotation.ElementType.TYPE_USE; import android.os.Looper; import androidx.annotation.IntDef; import androidx.annotation.IntRange; +import androidx.annotation.Nullable; import androidx.media3.common.Format; import androidx.media3.common.util.UnstableApi; import com.google.common.collect.ImmutableMap; @@ -114,17 +115,21 @@ public interface AssetLoader { * Called when the {@link Format} of samples that will be output by the {@link AssetLoader} is * known. * - *

Must be called once per {@linkplain #onTrackCount declared} track, and only after that - * track has been {@link #onTrackAdded added}. + *

Must be called after the corresponding track has been {@link #onTrackAdded added}. + * + *

For each {@link #onTrackAdded added} track, this method must be called regularly until the + * returned {@link SampleConsumer} is non-null. * *

Must be called from the thread that will be used to call the returned {@link * SampleConsumer}'s methods. This thread must be the same for all formats output, and is * generally different from the one used to access the {@link AssetLoader} methods. * * @param format The {@link Format} of samples that will be output. - * @return The {@link SampleConsumer} of samples of the given {@link Format}. + * @return The {@link SampleConsumer} of samples of the given {@link Format}, or {@code null} if + * it could not be retrieved yet. * @throws ExportException If an error occurs configuring the {@link SampleConsumer}. */ + @Nullable SampleConsumer onOutputFormat(Format format) throws ExportException; /** diff --git a/libraries/transformer/src/main/java/androidx/media3/transformer/CompositeAssetLoader.java b/libraries/transformer/src/main/java/androidx/media3/transformer/CompositeAssetLoader.java index fc51ea6688..a5d5c7680d 100644 --- a/libraries/transformer/src/main/java/androidx/media3/transformer/CompositeAssetLoader.java +++ b/libraries/transformer/src/main/java/androidx/media3/transformer/CompositeAssetLoader.java @@ -235,25 +235,31 @@ import java.util.concurrent.atomic.AtomicInteger; return decodeOutput; } + @Nullable @Override public SampleConsumer onOutputFormat(Format format) throws ExportException { @C.TrackType int trackType = getProcessedTrackType(format.sampleMimeType); SampleConsumer sampleConsumer; if (currentMediaItemIndex.get() == 0) { - sampleConsumer = - new SampleConsumerWrapper(compositeAssetLoaderListener.onOutputFormat(format)); + @Nullable + SampleConsumer wrappedSampleConsumer = compositeAssetLoaderListener.onOutputFormat(format); + if (wrappedSampleConsumer == null) { + return null; + } + sampleConsumer = new SampleConsumerWrapper(wrappedSampleConsumer); sampleConsumersByTrackType.put(trackType, sampleConsumer); if (forceAudioTrack && nonEndedTracks.get() == 1 && trackType == C.TRACK_TYPE_VIDEO) { - sampleConsumersByTrackType.put( - C.TRACK_TYPE_AUDIO, - new SampleConsumerWrapper( + SampleConsumer wrappedAudioSampleConsumer = + checkStateNotNull( compositeAssetLoaderListener.onOutputFormat( FORCE_AUDIO_TRACK_FORMAT .buildUpon() .setSampleMimeType(MimeTypes.AUDIO_RAW) .setPcmEncoding(C.ENCODING_PCM_16BIT) - .build()))); + .build())); + sampleConsumersByTrackType.put( + C.TRACK_TYPE_AUDIO, new SampleConsumerWrapper(wrappedAudioSampleConsumer)); } } else { // TODO(b/270533049): Remove the check below when implementing blank video frames generation. diff --git a/libraries/transformer/src/main/java/androidx/media3/transformer/ExoAssetLoaderBaseRenderer.java b/libraries/transformer/src/main/java/androidx/media3/transformer/ExoAssetLoaderBaseRenderer.java index 9933e77a47..e9d569e2fe 100644 --- a/libraries/transformer/src/main/java/androidx/media3/transformer/ExoAssetLoaderBaseRenderer.java +++ b/libraries/transformer/src/main/java/androidx/media3/transformer/ExoAssetLoaderBaseRenderer.java @@ -46,6 +46,7 @@ import org.checkerframework.checker.nullness.qual.RequiresNonNull; protected @MonotonicNonNull Codec decoder; protected boolean isEnded; private @MonotonicNonNull Format inputFormat; + private @MonotonicNonNull Format outputFormat; private final TransformerMediaClock mediaClock; private final AssetLoader.Listener assetLoaderListener; @@ -244,19 +245,26 @@ import org.checkerframework.checker.nullness.qual.RequiresNonNull; return true; } - if (decoder != null - && getProcessedTrackType(inputFormat.sampleMimeType) == C.TRACK_TYPE_AUDIO) { - @Nullable Format decoderOutputFormat = decoder.getOutputFormat(); - if (decoderOutputFormat == null) { - return false; + if (outputFormat == null) { + if (decoder != null + && getProcessedTrackType(inputFormat.sampleMimeType) == C.TRACK_TYPE_AUDIO) { + @Nullable Format decoderOutputFormat = decoder.getOutputFormat(); + if (decoderOutputFormat == null) { + return false; + } + outputFormat = decoderOutputFormat; + } else { + // TODO(b/237674316): Move surface creation out of video sampleConsumer. Init decoder and + // get decoderOutput Format before init sampleConsumer. + outputFormat = inputFormat; } - sampleConsumer = assetLoaderListener.onOutputFormat(decoderOutputFormat); - } else { - // TODO(b/237674316): Move surface creation out of video sampleConsumer. Init decoder and get - // decoderOutput Format before init sampleConsumer. - sampleConsumer = assetLoaderListener.onOutputFormat(inputFormat); } + SampleConsumer sampleConsumer = assetLoaderListener.onOutputFormat(outputFormat); + if (sampleConsumer == null) { + return false; + } + this.sampleConsumer = sampleConsumer; return true; } diff --git a/libraries/transformer/src/main/java/androidx/media3/transformer/ImageAssetLoader.java b/libraries/transformer/src/main/java/androidx/media3/transformer/ImageAssetLoader.java index b5ee7e6fcf..c40117c391 100644 --- a/libraries/transformer/src/main/java/androidx/media3/transformer/ImageAssetLoader.java +++ b/libraries/transformer/src/main/java/androidx/media3/transformer/ImageAssetLoader.java @@ -22,22 +22,28 @@ import static androidx.media3.transformer.ExportException.ERROR_CODE_IO_UNSPECIF import static androidx.media3.transformer.ExportException.ERROR_CODE_UNSPECIFIED; import static androidx.media3.transformer.Transformer.PROGRESS_STATE_AVAILABLE; import static androidx.media3.transformer.Transformer.PROGRESS_STATE_NOT_STARTED; +import static java.util.concurrent.TimeUnit.MILLISECONDS; import android.content.Context; import android.graphics.Bitmap; import android.os.Looper; +import androidx.annotation.Nullable; import androidx.media3.common.C; import androidx.media3.common.Format; import androidx.media3.common.MediaItem; import androidx.media3.common.MimeTypes; import androidx.media3.common.util.BitmapLoader; import androidx.media3.common.util.UnstableApi; +import androidx.media3.datasource.DataSource; import androidx.media3.datasource.DataSourceBitmapLoader; +import androidx.media3.datasource.DefaultDataSource; import com.google.common.collect.ImmutableMap; import com.google.common.util.concurrent.FutureCallback; import com.google.common.util.concurrent.Futures; import com.google.common.util.concurrent.ListenableFuture; import com.google.common.util.concurrent.MoreExecutors; +import java.util.concurrent.Executors; +import java.util.concurrent.ScheduledExecutorService; /** An {@link AssetLoader} implementation that loads images into {@link Bitmap} instances. */ @UnstableApi @@ -61,26 +67,36 @@ public final class ImageAssetLoader implements AssetLoader { public static final String MIME_TYPE_IMAGE_ALL = MimeTypes.BASE_TYPE_IMAGE + "/*"; - private final Context context; + private static final int QUEUE_BITMAP_INTERVAL_MS = 10; + private final EditedMediaItem editedMediaItem; + private final DataSource.Factory dataSourceFactory; private final Listener listener; + private final ScheduledExecutorService scheduledExecutorService; private @Transformer.ProgressState int progressState; - private int progress; + + private volatile int progress; private ImageAssetLoader(Context context, EditedMediaItem editedMediaItem, Listener listener) { - this.context = context; + checkState(editedMediaItem.durationUs != C.TIME_UNSET); + checkState(editedMediaItem.frameRate != C.RATE_UNSET_INT); this.editedMediaItem = editedMediaItem; + dataSourceFactory = new DefaultDataSource.Factory(context); this.listener = listener; - + scheduledExecutorService = Executors.newSingleThreadScheduledExecutor(); progressState = PROGRESS_STATE_NOT_STARTED; } @Override + @SuppressWarnings("FutureReturnValueIgnored") public void start() { progressState = PROGRESS_STATE_AVAILABLE; + listener.onDurationUs(editedMediaItem.durationUs); listener.onTrackCount(1); - BitmapLoader bitmapLoader = new DataSourceBitmapLoader(context); + BitmapLoader bitmapLoader = + new DataSourceBitmapLoader( + MoreExecutors.listeningDecorator(scheduledExecutorService), dataSourceFactory); MediaItem.LocalConfiguration localConfiguration = checkNotNull(editedMediaItem.mediaItem.localConfiguration); ListenableFuture future = bitmapLoader.loadBitmap(localConfiguration.uri); @@ -102,21 +118,10 @@ public final class ImageAssetLoader implements AssetLoader { SUPPORTED_OUTPUT_TYPE_DECODED, /* streamStartPositionUs= */ 0, /* streamOffsetUs= */ 0); - SampleConsumer sampleConsumer = listener.onOutputFormat(format); - - checkState(editedMediaItem.durationUs != C.TIME_UNSET); - checkState(editedMediaItem.frameRate != C.RATE_UNSET_INT); - // TODO(b/262693274): consider using listener.onDurationUs() or the MediaItem change - // callback (when it's added) rather than setting duration here. - sampleConsumer.queueInputBitmap( - bitmap, editedMediaItem.durationUs, editedMediaItem.frameRate); - sampleConsumer.signalEndOfVideoInput(); - } catch (ExportException e) { - listener.onError(e); + scheduledExecutorService.submit(() -> queueBitmapInternal(bitmap, format)); } catch (RuntimeException e) { listener.onError(ExportException.createForAssetLoader(e, ERROR_CODE_UNSPECIFIED)); } - progress = 100; } @Override @@ -124,7 +129,7 @@ public final class ImageAssetLoader implements AssetLoader { listener.onError(ExportException.createForAssetLoader(t, ERROR_CODE_IO_UNSPECIFIED)); } }, - MoreExecutors.directExecutor()); + scheduledExecutorService); } @Override @@ -143,5 +148,28 @@ public final class ImageAssetLoader implements AssetLoader { @Override public void release() { progressState = PROGRESS_STATE_NOT_STARTED; + scheduledExecutorService.shutdownNow(); + } + + @SuppressWarnings("FutureReturnValueIgnored") + private void queueBitmapInternal(Bitmap bitmap, Format format) { + try { + @Nullable SampleConsumer sampleConsumer = listener.onOutputFormat(format); + if (sampleConsumer == null) { + scheduledExecutorService.schedule( + () -> queueBitmapInternal(bitmap, format), QUEUE_BITMAP_INTERVAL_MS, MILLISECONDS); + return; + } + // TODO(b/262693274): consider using listener.onDurationUs() or the MediaItem change + // callback rather than setting duration here. + sampleConsumer.queueInputBitmap( + bitmap, editedMediaItem.durationUs, editedMediaItem.frameRate); + sampleConsumer.signalEndOfVideoInput(); + progress = 100; + } catch (ExportException e) { + listener.onError(e); + } catch (RuntimeException e) { + listener.onError(ExportException.createForAssetLoader(e, ERROR_CODE_UNSPECIFIED)); + } } } diff --git a/libraries/transformer/src/main/java/androidx/media3/transformer/TransformerInternal.java b/libraries/transformer/src/main/java/androidx/media3/transformer/TransformerInternal.java index 1944233d64..ded5096783 100644 --- a/libraries/transformer/src/main/java/androidx/media3/transformer/TransformerInternal.java +++ b/libraries/transformer/src/main/java/androidx/media3/transformer/TransformerInternal.java @@ -54,6 +54,7 @@ import java.util.ArrayList; import java.util.HashMap; import java.util.List; import java.util.Map; +import java.util.concurrent.atomic.AtomicBoolean; import java.util.concurrent.atomic.AtomicInteger; import org.checkerframework.checker.nullness.qual.MonotonicNonNull; @@ -99,8 +100,10 @@ import org.checkerframework.checker.nullness.qual.MonotonicNonNull; private final HandlerThread internalHandlerThread; private final HandlerWrapper internalHandler; private final List compositeAssetLoaders; - private final AtomicInteger totalInputTrackCount; - private final AtomicInteger unreportedInputTrackCounts; + private final AtomicInteger trackCountsToReport; + private final AtomicInteger tracksToAdd; + private final AtomicBoolean outputHasAudio; + private final AtomicBoolean outputHasVideo; private final List samplePipelines; private final MuxerWrapper muxerWrapper; private final ConditionVariable transformerConditionVariable; @@ -153,8 +156,10 @@ import org.checkerframework.checker.nullness.qual.MonotonicNonNull; compositeAssetLoaderListener, clock)); } - totalInputTrackCount = new AtomicInteger(); - unreportedInputTrackCounts = new AtomicInteger(composition.sequences.size()); + trackCountsToReport = new AtomicInteger(composition.sequences.size()); + tracksToAdd = new AtomicInteger(); + outputHasAudio = new AtomicBoolean(); + outputHasVideo = new AtomicBoolean(); samplePipelines = new ArrayList<>(); transformerConditionVariable = new ConditionVariable(); exportResultBuilder = new ExportResult.Builder(); @@ -435,12 +440,8 @@ import org.checkerframework.checker.nullness.qual.MonotonicNonNull; ERROR_CODE_FAILED_RUNTIME_CHECK)); return; } - totalInputTrackCount.addAndGet(trackCount); - unreportedInputTrackCounts.decrementAndGet(); - if (unreportedInputTrackCounts.get() == 0) { - muxerWrapper.setTrackCount(totalInputTrackCount.get()); - fallbackListener.setTrackCount(totalInputTrackCount.get()); - } + trackCountsToReport.decrementAndGet(); + tracksToAdd.addAndGet(trackCount); } @Override @@ -449,21 +450,38 @@ import org.checkerframework.checker.nullness.qual.MonotonicNonNull; @AssetLoader.SupportedOutputTypes int supportedOutputTypes, long streamStartPositionUs, long streamOffsetUs) { + @C.TrackType + int trackType = getProcessedTrackType(firstAssetLoaderInputFormat.sampleMimeType); AddedTrackInfo trackInfo = new AddedTrackInfo( firstAssetLoaderInputFormat, supportedOutputTypes, streamStartPositionUs, streamOffsetUs); + addedTrackInfoByTrackType.put(trackType, trackInfo); - addedTrackInfoByTrackType.put( - getProcessedTrackType(firstAssetLoaderInputFormat.sampleMimeType), trackInfo); + if (trackType == C.TRACK_TYPE_AUDIO) { + outputHasAudio.set(true); + } else { + outputHasVideo.set(true); + } + if (trackCountsToReport.get() == 0 && tracksToAdd.get() == 1) { + int outputTrackCount = (outputHasAudio.get() ? 1 : 0) + (outputHasVideo.get() ? 1 : 0); + muxerWrapper.setTrackCount(outputTrackCount); + fallbackListener.setTrackCount(outputTrackCount); + } + tracksToAdd.decrementAndGet(); return trackInfo.shouldTranscode; } + @Nullable @Override public SampleConsumer onOutputFormat(Format assetLoaderOutputFormat) throws ExportException { + if (trackCountsToReport.get() > 0 || tracksToAdd.get() > 0) { + return null; + } + @C.TrackType int trackType = getProcessedTrackType(assetLoaderOutputFormat.sampleMimeType); AddedTrackInfo trackInfo = checkStateNotNull(addedTrackInfoByTrackType.get(trackType)); SamplePipeline samplePipeline = getSamplePipeline(assetLoaderOutputFormat, trackInfo);