)]}'
{
  "log": [
    {
      "commit": "3d70686c3a4055721b9678e146b3ad8e10d1df60",
      "tree": "b112345deb2ea460ca19298cdb86229ea5724309",
      "parents": [
        "4bebef8d593f62a5ee80cab04167f4a3ba3722d8",
        "7a591bfabf414912eb7e841c37cfe48802b3ab8c"
      ],
      "author": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Tue Oct 15 04:03:33 2019 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Oct 15 04:03:33 2019 +0000"
      },
      "message": "Merge changes from topic \"dolbyvision\"\n\n* changes:\n  Enable Dolby Vision AV1 support in MPEG4 extractor\n  Adding dolby-vision boxes to MPEG4Extractor\n"
    },
    {
      "commit": "7a591bfabf414912eb7e841c37cfe48802b3ab8c",
      "tree": "954a6783faaafa9f2a371494f5557c4bf536b020",
      "parents": [
        "7a0c3c9b437e08b0aebf523d959bfafe3e53d98a"
      ],
      "author": {
        "name": "Vikas Balapal Maheswarappa",
        "email": "Vikas.BalapalMaheswarappa@dolby.com",
        "time": "Tue Jul 16 11:41:24 2019 -0700"
      },
      "committer": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Mon Oct 14 10:06:32 2019 -0700"
      },
      "message": "Enable Dolby Vision AV1 support in MPEG4 extractor\n\nBug: 129367182\nTest: build, cts\n\nChange-Id: I2dae1e4cab3d45cd295bf692ba59c3a709ccc3a6\n"
    },
    {
      "commit": "7a0c3c9b437e08b0aebf523d959bfafe3e53d98a",
      "tree": "22b45c3901d53475ae014e1d8330f6f2daf98bea",
      "parents": [
        "f98d29f2a1b63266b52a919aa6f00c547a000f30"
      ],
      "author": {
        "name": "Vikas Balapal Maheswarappa",
        "email": "Vikas.BalapalMaheswarappa@dolby.com",
        "time": "Fri Jun 14 15:00:41 2019 -0700"
      },
      "committer": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Mon Oct 14 10:06:29 2019 -0700"
      },
      "message": "Adding dolby-vision boxes to MPEG4Extractor\n\nBug: 129367182\nTest: build, cts\n\nChange-Id: I5bff3f6c626730017d6febef384893ab194b5927\n"
    },
    {
      "commit": "eaf03c2354d174b64a15ced6629ab54032c23440",
      "tree": "53a924f066aa8a278e4967bb6e27caea26437e91",
      "parents": [
        "559b169495301089195b67bbc6c079d20b1ca0ed",
        "7d6446db9a810bbc172087c51452887d414ab108"
      ],
      "author": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Fri Oct 11 09:49:12 2019 -0700"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Fri Oct 11 09:49:12 2019 -0700"
      },
      "message": "Merge \"Remove unnecessary includes\" am: 1ab2344f6d am: 111bdeeb16 am: 5ca04b9703\nam: 7d6446db9a\n\nChange-Id: Id2543a9c64ea27f8dc65015892fb6b2b21c46c4b\n"
    },
    {
      "commit": "10a7553778f7e3ddffdcb1365f8c288459da7a12",
      "tree": "5fb27a389662e29e18cfdb9817cfd304580d6644",
      "parents": [
        "bb3c777e401d10f379835243bfcb2e6b6c678504"
      ],
      "author": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Fri Jun 21 14:02:54 2019 -0700"
      },
      "committer": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Thu Oct 10 10:06:53 2019 -0700"
      },
      "message": "Remove unnecessary includes\n\nTest: build\n\nChange-Id: Icf18be5d36a20962870a0d9e6323ab4861e8659a\n"
    },
    {
      "commit": "53f78b65a144bd04f7b007f2a0776658fc4176cc",
      "tree": "3156f6604446132b26261bc163aa241d69f94b57",
      "parents": [
        "9ee56ec1a7ace45b42b65e01fdda98114b5c0833"
      ],
      "author": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Mon Sep 30 13:08:50 2019 -0700"
      },
      "committer": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Tue Oct 08 09:41:49 2019 -0700"
      },
      "message": "Clean up libaudioclient includes\n\nTest: build\nChange-Id: I1b2cd96e99564cd3944aa20a36207bd91287f7c8\nMerged-In: I1b2cd96e99564cd3944aa20a36207bd91287f7c8\n"
    },
    {
      "commit": "5d05fbe8ba38d16c21974688edd7ad567fe6205c",
      "tree": "49a1c1e3490131bbcb16df72a70fbcc4c6b37aaa",
      "parents": [
        "fb1fb155f9ec3a05ffa9e49f9415b565dcf8c163"
      ],
      "author": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Mon Sep 30 13:08:50 2019 -0700"
      },
      "committer": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Fri Oct 04 08:17:31 2019 -0700"
      },
      "message": "Clean up libaudioclient includes\n\nTest: build\nChange-Id: I1b2cd96e99564cd3944aa20a36207bd91287f7c8\n"
    },
    {
      "commit": "5902078de407bf664bc13e50e2994230ccb7dd02",
      "tree": "a7531b22d857954acb059590aaa48ccc9747ef89",
      "parents": [
        "43e96581e30b6d901cda9246fb5a8c9ccdbbf164",
        "b984cea764b293d1fec377664fa066f499155e03"
      ],
      "author": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Thu Oct 03 21:54:45 2019 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Oct 03 21:54:45 2019 +0000"
      },
      "message": "Merge \"Fix memory leak in MPEG2PSExtractor\""
    },
    {
      "commit": "43bf214df57fc67e5a86a689357edf9e59bebf9c",
      "tree": "3c05b588c50a3ba687391c20f8a99156143245eb",
      "parents": [
        "4f0a23d0dc08aa553389f17ab7e3f89fc6125496"
      ],
      "author": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Thu Oct 03 08:22:37 2019 -0700"
      },
      "committer": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Thu Oct 03 13:04:30 2019 -0700"
      },
      "message": "Fix memory leak in MPEG2PSExtractor\n\nIt wasn\u0027t deleting its tracks and associated buffers.\n\nBug: 141724191\nTest: manual\nChange-Id: Ifdc05e6bf89e4770fd600e82d887921ff03c5b93\n"
    },
    {
      "commit": "b984cea764b293d1fec377664fa066f499155e03",
      "tree": "631ece93854c7ef3428fac98fa5253690c52c835",
      "parents": [
        "e3cdab3c40cb71284a0e186d7d5a82257e7d34a1"
      ],
      "author": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Thu Oct 03 08:22:37 2019 -0700"
      },
      "committer": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Thu Oct 03 08:22:37 2019 -0700"
      },
      "message": "Fix memory leak in MPEG2PSExtractor\n\nIt wasn\u0027t deleting its tracks and associated buffers.\n\nBug: 141724191\nTest: manual\nChange-Id: Ifdc05e6bf89e4770fd600e82d887921ff03c5b93\n"
    },
    {
      "commit": "8ab202b80e653bb41e4588b4dc5da1aaf398a971",
      "tree": "aebd45db04d5e78750580b44777eb432c196bfd4",
      "parents": [
        "afc089c87c2802c06bc5a16af155d55ce1cf40bb",
        "8f32b1e1e10f1e3820eaa887e3ec1fa2b7077270"
      ],
      "author": {
        "name": "Yi Kong",
        "email": "yikong@google.com",
        "time": "Wed Oct 02 15:56:04 2019 -0700"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Wed Oct 02 15:56:04 2019 -0700"
      },
      "message": "Merge \"Fix comparing int32_t with INT64_MIN\" am: b5ba1eb0a0 am: bacbbf5a63 am: 1704e2ef6e\nam: 8f32b1e1e1\n\nChange-Id: I0689c929961350c09651778aed5ab3a8f72cbad9\n"
    },
    {
      "commit": "af609f933c95bb7d42939714c6143a0dbf0ee0f8",
      "tree": "ffc78034f12ac9990b23218de3ec0d6e0fec108e",
      "parents": [
        "a43fcd7ed6b1cc8930e2c3d8416b87cb8e9e02e4"
      ],
      "author": {
        "name": "Yi Kong",
        "email": "yikong@google.com",
        "time": "Tue Oct 01 20:16:56 2019 -0700"
      },
      "committer": {
        "name": "Yi Kong",
        "email": "yikong@google.com",
        "time": "Tue Oct 01 20:16:56 2019 -0700"
      },
      "message": "Fix comparing int32_t with INT64_MIN\n\nThis is obviously a typo.\n\nFound by Clang tautological-constant-out-of-range-compare warning.\n\nTest: presubmit\nBug: 72331526\nChange-Id: I2cb217282c524bb9fbae899fa5a731b7575e393a\n"
    },
    {
      "commit": "18af8e4b92256ba17cc0cffb562c0df000d15ffd",
      "tree": "591571d2508f6cc135620140e17491846bd28710",
      "parents": [
        "3339f380577046e86cd90f893fdbe3f052943353",
        "1167ff999c6a7451e7a328242b3148947cc918ee"
      ],
      "author": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Thu Sep 26 08:20:26 2019 -0700"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Thu Sep 26 08:20:26 2019 -0700"
      },
      "message": "Merge \"Use shared libcrypto\" am: 6dc75fb0cd am: ed69d38540 am: 67faa7d174\nam: 1167ff999c\n\nChange-Id: I8b8fc3057e8a4c175bef286d642cdae38dacc908\n"
    },
    {
      "commit": "c795e471c1fb2e4fc03cc13ff6d9e3a1e502e3dc",
      "tree": "00ead81ff98ec99245f737e109a3646581275cbf",
      "parents": [
        "dabfdafb81c4b431377ca5b51c0e3a49fef4cb16"
      ],
      "author": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Wed Sep 18 11:06:04 2019 -0700"
      },
      "committer": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Wed Sep 18 11:13:08 2019 -0700"
      },
      "message": "Use shared libcrypto\n\nShared libcrypto provides FIPS self tests, use it whenever possible.\n\nBug: 141248879\nTest: m checkbuild\nChange-Id: I811db67a35b321505e50476313384fe51d8154d2\n"
    },
    {
      "commit": "0295125624e8253fbf37d57bae649d0c5f257b2d",
      "tree": "8771a1fb096c91cea5ff2c8fd276658fa098688e",
      "parents": [
        "33d7ab050e3dd07ad3fa2aaab4ee4d8d309b6287",
        "70a62fef1c5d2d4c6e3ee6b9b5317dde87997ff6"
      ],
      "author": {
        "name": "Ray Essick",
        "email": "essick@google.com",
        "time": "Wed Aug 28 23:08:23 2019 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Aug 28 23:08:23 2019 +0000"
      },
      "message": "Merge \"Increase OggExtractor\u0027s confidence\""
    },
    {
      "commit": "e57ddab86c5f6e6e90acabcc735a2af2a0bf2022",
      "tree": "896565d351db2904888a3934835d937507072301",
      "parents": [
        "142514e1e422cdbba4a11493fa87b8f037e57d3e"
      ],
      "author": {
        "name": "Iris Chang",
        "email": "iris.chang@mediatek.com",
        "time": "Mon Jun 24 11:12:54 2019 +0800"
      },
      "committer": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Thu Aug 22 10:22:27 2019 -0700"
      },
      "message": "Fix native exception occurred when seeking mp4 file\n\nThe sample count of stsz box is not equal to the sample\ncount of stts box. For example, the sample count of stts\nbox is 1502 but the sample count of stsz box is 1503.\n\nBesides, mSampleTimeEntries is not initialized with 0 when\nthe code is built. Therefore, if getSampleTime() function\nis called with index 1502, for example, we use a sample with\nsample count of stsz box to be 1503, the\nmCompositionTime with random value will be used, which\nmight result in a overflow issue.\n\nBug: 136425704\nTest: Seek a mp4 file which causes native exception before\nthis patch, and check if there is no exception\nChange-Id: I8b56e58b5b52e0bbd8e6e92fc0f381006780c3d5\n"
    },
    {
      "commit": "142514e1e422cdbba4a11493fa87b8f037e57d3e",
      "tree": "411c94ecd1c56b9004c1d6062e2f3996feca4f92",
      "parents": [
        "6f83b317a48ac8479d4e4e2739dfa59b49d0fb07"
      ],
      "author": {
        "name": "Chuangjie Xia",
        "email": "chuangjie.xia@mediatek.com",
        "time": "Tue Jul 30 16:41:33 2019 +0800"
      },
      "committer": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Thu Aug 22 08:43:30 2019 -0700"
      },
      "message": "Fix exception when delete an uninitialized object\n\nDue to some reason, for example, mediaserver dies, SniffAMR fails and\nthe variable mMeta is not initialized. Then exception happens when\nthe flow deletes mMeta in ~AMRExtractor().\n\nNeed to check whether mMeta is uninitialized before deleting it.\n\nBug: 138694976\nTest: MTBF test\nChange-Id: I398f1d8639a11bf076e51e9d9077a1f2dd89ab52\n"
    },
    {
      "commit": "70a62fef1c5d2d4c6e3ee6b9b5317dde87997ff6",
      "tree": "9f2bd058975d1fc3fa2f7aec0d31d87ea9cc0cb8",
      "parents": [
        "85bf8a17045dde02a1895ff51697429948dce23a"
      ],
      "author": {
        "name": "Ray Essick",
        "email": "essick@google.com",
        "time": "Wed Aug 21 15:46:27 2019 -0700"
      },
      "committer": {
        "name": "Ray Essick",
        "email": "essick@google.com",
        "time": "Wed Aug 21 22:49:42 2019 +0000"
      },
      "message": "Increase OggExtractor\u0027s confidence\n\nfor some ogg content, the mp3 extractor would slide along looking for a\nresynchronization point. and find one. Then it reported the same\nconfidence as the oggextractor. Bump the confidence returned by the\noggextractor so that it won\u0027t lose such a tie.\n\nBug: 137525449\nTest: POC in bug\n"
    },
    {
      "commit": "6f83b317a48ac8479d4e4e2739dfa59b49d0fb07",
      "tree": "28b08a81b8d44565dd018283512ecc6f536f8954",
      "parents": [
        "85bf8a17045dde02a1895ff51697429948dce23a"
      ],
      "author": {
        "name": "Iris Chang",
        "email": "iris.chang@mediatek.com",
        "time": "Tue Jul 09 09:48:49 2019 +0800"
      },
      "committer": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Mon Aug 19 14:50:35 2019 -0700"
      },
      "message": "Fix a noise issue caused by random value of byteOrder\n\nThe value of byteOrder is a random value. If the random\nvalue is 1 and it does not judge whether it gets a big-endian\nkey successfully at the same time, the pcm buffer will be\ntransferred to little-endian, which is not correct and causes\nnoise.\n\nTo fix this problem, we initialize the byteOrder as 0 and\njudge if it gets a big-endian key\n\nBug: 137221067\nTest: play a mp4 file with pcm audio and check if we can play\nit normally\nChange-Id: I709db10ce967909949c13f749869f76b1c6a80bb\n"
    },
    {
      "commit": "99c60f868109d533347f82bd2e6225f737c363c7",
      "tree": "e37c82136d952ef4c4d270135532cce699c5da24",
      "parents": [
        "c727c34281f0c71bf853973c6c538abdd6436c82"
      ],
      "author": {
        "name": "Ray Essick",
        "email": "essick@google.com",
        "time": "Thu Jul 25 14:37:30 2019 -0700"
      },
      "committer": {
        "name": "Ray Essick",
        "email": "essick@google.com",
        "time": "Thu Jul 25 14:37:30 2019 -0700"
      },
      "message": "Handle opus v0 and v1\n\nextractor insisted on v1 opus header; v0 is same format, so we can\neasily handle that as well.\n\nBug: 137530136\nTest: play opus v0 content\n"
    },
    {
      "commit": "9c8792bd87c2f36fba3cde609535fb2099147a31",
      "tree": "9b6cf74c789fe96f5680ff87e9b6ac753af35105",
      "parents": [
        "8cfe8f7b0d7d2e7f71714fb4a400d828b445ff06"
      ],
      "author": {
        "name": "Inseob Kim",
        "email": "inseob@google.com",
        "time": "Thu Jul 11 15:46:36 2019 +0900"
      },
      "committer": {
        "name": "Inseob Kim",
        "email": "inseob@google.com",
        "time": "Thu Jul 11 15:46:36 2019 +0900"
      },
      "message": "Fix vendor modules to use shared vndk\n\nWhen using VNDK, Vendor modules should use shared version.\n\nBug: 137178339\nTest: m \u0026\u0026 boot blueline\nChange-Id: Iaf6029ca4ded12b1b7a04a59b26fda33dcb3d071\n"
    },
    {
      "commit": "41821bf4f3fdaf15fcca37feae0250570a870581",
      "tree": "8f47450b2453ae5541173455fd37903344f87b58",
      "parents": [
        "4c3979cf2bdb0ef406898496e1bb14202f3821dc"
      ],
      "author": {
        "name": "Dongwon Kang",
        "email": "dwkang@google.com",
        "time": "Mon Jun 24 14:14:38 2019 -0700"
      },
      "committer": {
        "name": "Dongwon Kang",
        "email": "dwkang@google.com",
        "time": "Mon Jun 24 17:02:32 2019 -0700"
      },
      "message": "MPEG4Extractor: check the default sample info before checking the validity of sample size.\n\nTest: atest MediaPlayerDrmTest\nBug: 135215092, Bug: 124525515\nChange-Id: I6383514acaf546734b320224342a61cbd362c4bf\n"
    },
    {
      "commit": "aed8b805fc138665943f83474b70bd891c69f4f3",
      "tree": "915ee2fceab6da853818b2c18debb2bfe26dad4e",
      "parents": [
        "7b671d210c9dbfe9c2817c4ff47c9c3bac8687d2",
        "49872693392665e79331b7daca659cd7a4065680"
      ],
      "author": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Thu Jun 06 08:20:07 2019 -0700"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Thu Jun 06 08:20:07 2019 -0700"
      },
      "message": "Merge \"Cannot play a mov file with alac audio\" into qt-dev am: 50f9a1320b am: bad89fdc5e\nam: 4987269339\n\nChange-Id: Ie2588436b8b7a299b83789582cb922519c2e7d01\n"
    },
    {
      "commit": "50f9a1320b8dfff8732ca26c73a50b1950f2831e",
      "tree": "7cacdbb552f532b246d85d8a79afa802c5e4d7b7",
      "parents": [
        "8581d92e214f78df21fb789bd5cb9c50a9ca2c4c",
        "a75cd798184169a4effc0f6e454a3a6e7386d4b3"
      ],
      "author": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Thu Jun 06 14:51:15 2019 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Jun 06 14:51:15 2019 +0000"
      },
      "message": "Merge \"Cannot play a mov file with alac audio\" into qt-dev"
    },
    {
      "commit": "2cba2527caa45750a335b065bd2288770cc4e798",
      "tree": "a1cf09ffd5f9510819678296279a3bab35b9ffd9",
      "parents": [
        "8b7a6326397a6645fbc8abb4d1fa0b32d5999236",
        "e4e1a72483e956e5bddb96da3b1fe49f50856901"
      ],
      "author": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Wed Jun 05 10:25:11 2019 -0700"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Wed Jun 05 10:25:11 2019 -0700"
      },
      "message": "Merge \"Attemp to make mkv\u0027s AAC CSD data if codecprivate is short\" into qt-dev am: b69bbb60d2 am: b2e4862f50\nam: e4e1a72483\n\nChange-Id: Ie8902d105defbffce1a332788ec6978a03ad43d0\n"
    },
    {
      "commit": "a75cd798184169a4effc0f6e454a3a6e7386d4b3",
      "tree": "5531077a541d202566406120efbb56b21073679d",
      "parents": [
        "90d1d53862638210d848ddedef2600aae35337d3"
      ],
      "author": {
        "name": "Iris Chang",
        "email": "iris.chang@mediatek.com",
        "time": "Thu May 30 14:34:57 2019 +0800"
      },
      "committer": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Mon Jun 03 20:54:00 2019 +0000"
      },
      "message": "Cannot play a mov file with alac audio\n\nWhen a mov file includes alac audio, the alac codec\ninfo is included under bellow box:\nstsd-\u003ealac-\u003ewave-\u003ealac\n\nThe .mov cannot work with the original code for alac.\nSo we need to handle it by judging if it is a mov file.\n\nBug: 134102659\nTest: Play a mov video with alac audio and check if it\ncan play normally.\n\nChange-Id: Ibadfbd5b4036b220bd6ebf431fd53e4d1a69be8b\n"
    },
    {
      "commit": "d3b761d13563b22de6ad58ad5183a925a022c671",
      "tree": "c3e5718da5d55c159236213253e87c7acd3ff7c8",
      "parents": [
        "35b711dc89f31ab034606a95ce67e3d4629fe38c"
      ],
      "author": {
        "name": "Iris Chang",
        "email": "iris.chang@mediatek.com",
        "time": "Tue Jan 15 18:41:50 2019 +0800"
      },
      "committer": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Mon Jun 03 17:55:09 2019 +0000"
      },
      "message": "Attemp to make mkv\u0027s AAC CSD data if codecprivate is short\n\nSome mkv file\u0027s AAC codecprivate is incomplete, so\nCHECK(codecPrivateSize \u003e\u003d 2) fails and it results in a\nnative exception. Our solution is to make it skip the\ntrack.\n\nBug: 132738230\nTest: Test a mkv file whose AAC codecprivate is short and\ncheck if native exception occurs.\n\nChange-Id: Ia8cdd863df1bd1e7570cc3b509d1d76d52d76be6\n"
    },
    {
      "commit": "98be67ae8950a9805e755e22563fa9bfe9405e90",
      "tree": "789587ee3bcd27fe4dd87a0947ae0c12beebf2d9",
      "parents": [
        "c9992148b495f1a7610c388ae1ccec557d7df547"
      ],
      "author": {
        "name": "Iris Chang",
        "email": "iris.chang@mediatek.com",
        "time": "Tue May 28 15:49:52 2019 +0800"
      },
      "committer": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Fri May 31 23:03:02 2019 +0000"
      },
      "message": "Check buffer size after read\n\nEnsure the WAV extractor never outputs a partial sample, which\nwould trigger a CHECK in NuPlayerRenderer:onDrainAudioQueue().\nAlso ensure it never emits a partial frame (e.g. only a left\nsample for a stereo file).\n\nBug: 133824968\nTest: play the corrupted file and there is no NE\nChange-Id: I9143f859c55351e06126e4ad8f33f5752113d7f4\n(cherry picked from commit 8fb6b7e1ff804ddff1a39319575a4c570abd5b3e)\n"
    },
    {
      "commit": "8fb6b7e1ff804ddff1a39319575a4c570abd5b3e",
      "tree": "82d3e9f6ba146614d09c110159b7f3864f7ffc13",
      "parents": [
        "8b43461ccef647345a49d65698c7e03c50e78e3b"
      ],
      "author": {
        "name": "Iris Chang",
        "email": "iris.chang@mediatek.com",
        "time": "Tue May 28 15:49:52 2019 +0800"
      },
      "committer": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Fri May 31 14:44:07 2019 -0700"
      },
      "message": "Check buffer size after read\n\nEnsure the WAV extractor never outputs a partial sample, which\nwould trigger a CHECK in NuPlayerRenderer:onDrainAudioQueue().\nAlso ensure it never emits a partial frame (e.g. only a left\nsample for a stereo file).\n\nBug: 133824968\nTest: play the corrupted file and there is no NE\nChange-Id: I9143f859c55351e06126e4ad8f33f5752113d7f4\n"
    },
    {
      "commit": "40dba706d8169dd773bdcae5870c40da163766ee",
      "tree": "ad06bfcc3c65fb9d9c08346426b1b3dc0fd937b8",
      "parents": [
        "1f3aa26b76e903a8d486067962bf37ac4bb37228",
        "797d1f9310581382eed7e24a2fe28d14e4ad48db"
      ],
      "author": {
        "name": "Wonsik Kim",
        "email": "wonsik@google.com",
        "time": "Tue May 28 21:23:02 2019 -0700"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Tue May 28 21:23:02 2019 -0700"
      },
      "message": "Merge changes I05aeb909,Iee31eed6,I2544a7cb into qt-dev am: 315f7aabe8 am: 17f60dd7c5\nam: 797d1f9310\n\nChange-Id: I0e65b934a830f283ad0ee47f343ad4e79579c775\n"
    },
    {
      "commit": "4ae31f36f297d7e3d32c7f30119cb2747443d4cd",
      "tree": "f7505a6bf43c6ecb5a64583eb6ec8b79db4ec7c5",
      "parents": [
        "71cbb9d4e4757033b23a0ba600cba4e279d5c73f"
      ],
      "author": {
        "name": "Harish Mahendrakar",
        "email": "harish.mahendrakar@ittiam.com",
        "time": "Thu May 23 14:52:41 2019 -0700"
      },
      "committer": {
        "name": "Wonsik Kim",
        "email": "wonsik@google.com",
        "time": "Tue May 28 11:46:48 2019 -0700"
      },
      "message": "MPEG4Extractor: Overwrite opus version as 1\n\nmp4 Opus Specific box says Version should be 0.\nOpusHead requires this to 1.\n\nMPEG4Extractor now validates that version before\noverwriting it with 1.\n\nBug: 133448278\nTest: Extract an mp4 file with opus track\nTest: Mux the extracted file to ogg\nTest: Extract opus from the muxed ogg file\n\nChange-Id: Iee31eed69ea906b8f34f75f01a4d2c77b3e32077\n"
    },
    {
      "commit": "b02674a3f116519caa011d2cd7d0f154ccaae30b",
      "tree": "743043303094db639d9cd99ffa22e183383dd1fc",
      "parents": [
        "8274726819de55ac64aa6e3e354aae1f8980fc1c",
        "38abc2bff09d105e05796ff838832ceeebbfee97"
      ],
      "author": {
        "name": "Harish Mahendrakar",
        "email": "harish.mahendrakar@ittiam.com",
        "time": "Thu May 23 01:33:46 2019 -0700"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Thu May 23 01:33:46 2019 -0700"
      },
      "message": "Merge changes I88f247a2,I7e1daf93 into qt-dev am: 3aac07ff6b am: b4ad5740a3\nam: 38abc2bff0\n\nChange-Id: Iad80e93d6e493c2d5057558f071f7946e7bd2e13\n"
    },
    {
      "commit": "3aac07ff6b43f32e146ce35a4fad64a5aad6a1eb",
      "tree": "e2508cd5907c3e3c8466bb7347080aa2aff60ab8",
      "parents": [
        "3be0ffbd9d2804e7cfcd425b80c6835d5cc5e7af",
        "ca67e38e7029ed2f6f277fca23210094dcfa3c59"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Wed May 22 19:44:14 2019 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed May 22 19:44:14 2019 +0000"
      },
      "message": "Merge changes I88f247a2,I7e1daf93 into qt-dev\n\n* changes:\n  MPEG4Extractor: Fix opus CSD size\n  OpusHeader: Fix OOB write in WriteOpusHeaders()\n"
    },
    {
      "commit": "c3d524cfb5f9ea045ac17ac56b16dc0b63d84eba",
      "tree": "ad52ee34eda18ef0fc61a752e8791052031d714f",
      "parents": [
        "eb78e14534951c5e6d0552049504c3a152de484d",
        "7b3620366df8e316009f49f1e7d8c1e0bab80cec"
      ],
      "author": {
        "name": "Manisha Jajoo",
        "email": "manisha.jajoo@ittiam.com",
        "time": "Tue May 21 02:27:07 2019 -0700"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Tue May 21 02:27:07 2019 -0700"
      },
      "message": "Merge \"libstagefright: Add support for parsing profile and level from CSD for AV1\" into qt-dev am: 7d44121e94 am: 5b55a19aa1\nam: 7b3620366d\n\nChange-Id: I9adf48029cb0eedef81aadb679e346138ad84b37\n"
    },
    {
      "commit": "41c42ab9e398b983df013864a739fb14c5d6d94d",
      "tree": "fee49c31af36b39e366df886835bd8285c1bc252",
      "parents": [
        "ded2fd3a3f687b9dce194ecbcc0000d02125776e"
      ],
      "author": {
        "name": "Manisha Jajoo",
        "email": "manisha.jajoo@ittiam.com",
        "time": "Wed May 15 18:21:37 2019 +0530"
      },
      "committer": {
        "name": "Wonsik Kim",
        "email": "wonsik@google.com",
        "time": "Mon May 20 11:33:55 2019 -0700"
      },
      "message": "libstagefright: Add support for parsing profile and level from CSD for AV1\n\nAlso set CSD from codecPrivate data in mkv extractor\n\nTest: stagefright /sdcard/av1.mp4\nTest: Manually verified profile present in format string returned by extractor\n\nBug: 132439629\n\nChange-Id: I1683539c3a37c88edd0edcb9f3e073c5ea077372\n"
    },
    {
      "commit": "f82a9b842a43a39389c0c66e73675efa381f7ebe",
      "tree": "30f3fb9a6938b11957d756e030a83946b2aa5245",
      "parents": [
        "3c5b4dc8430283053433e78559e27499ec264c70",
        "f0a15c186a57ccbea0b8aaeca113538b18357c0e"
      ],
      "author": {
        "name": "Dongwon Kang",
        "email": "dwkang@google.com",
        "time": "Fri May 17 16:32:58 2019 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri May 17 16:32:58 2019 +0000"
      },
      "message": "Merge \"Add size checking for \u0027saiz\u0027 box\""
    },
    {
      "commit": "7eb6740c9ff1482520df232f49f0b566aa56153f",
      "tree": "8512e596c4fe390cda53f87dede9822519eec887",
      "parents": [
        "3f4f8a95ced2f56836836379b084a43353b32635",
        "ec50c09137449da9aae1a59b60f01e0951b0bbd2"
      ],
      "author": {
        "name": "Iris Chang",
        "email": "iris.chang@mediatek.com",
        "time": "Thu May 16 21:26:23 2019 -0700"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Thu May 16 21:26:23 2019 -0700"
      },
      "message": "Merge \"Handle mp4 file with abnormal pcm audio playback stuck\" into qt-dev am: df3f6856e8 am: 8712eee797\nam: ec50c09137\n\nChange-Id: I883ccef070341bc0da20b13ae720d59bedc2d267\n"
    },
    {
      "commit": "f0a15c186a57ccbea0b8aaeca113538b18357c0e",
      "tree": "a0d92538b60adc90cebfbca7f3fd27028d5da59d",
      "parents": [
        "7ed7ae9507f2992cd959c95edeaf5439bc06d315"
      ],
      "author": {
        "name": "Dongwon Kang",
        "email": "dwkang@google.com",
        "time": "Wed May 15 14:09:56 2019 -0700"
      },
      "committer": {
        "name": "Dongwon Kang",
        "email": "dwkang@google.com",
        "time": "Thu May 16 11:25:48 2019 -0700"
      },
      "message": "Add size checking for \u0027saiz\u0027 box\n\nTest: run poc\nBug: 124525515\nChange-Id: I64a20c508b6d3f3de96c889e5660f9ec6950fd2e\n"
    },
    {
      "commit": "7ed7ae9507f2992cd959c95edeaf5439bc06d315",
      "tree": "f264906deb68785162b3ce92dd813de94bebde1e",
      "parents": [
        "4dad6fcff4eb7ecef3c55dcaf4ec323dc9b7206c"
      ],
      "author": {
        "name": "Dongwon Kang",
        "email": "dwkang@google.com",
        "time": "Wed May 15 16:18:35 2019 -0700"
      },
      "committer": {
        "name": "Dongwon Kang",
        "email": "dwkang@google.com",
        "time": "Thu May 16 11:22:09 2019 -0700"
      },
      "message": "Add more size checking for \u0027stts\u0027 box\n\nNote: new limit, data_size - 8, should be smaller than the previous one,\nUINT_MAX, since we global atom size checking with kMaxAtomSize, 2^26.\n\nTest: run poc\nBug: 127973550\nChange-Id: I1744d71d2e10183dd2bebfd01b15d9ee5998fdf3\n"
    },
    {
      "commit": "4dad6fcff4eb7ecef3c55dcaf4ec323dc9b7206c",
      "tree": "94ff052e90390caeb5cc3dfcb68bf2844e427d1a",
      "parents": [
        "c664639719300a3a768044592b69f41bd1105179"
      ],
      "author": {
        "name": "Dongwon Kang",
        "email": "dwkang@google.com",
        "time": "Wed May 15 14:55:14 2019 -0700"
      },
      "committer": {
        "name": "Dongwon Kang",
        "email": "dwkang@google.com",
        "time": "Thu May 16 11:22:09 2019 -0700"
      },
      "message": "Add more size checking for \u0027stss\u0027 box\n\nTest: run poc\nBug: 124771364\nChange-Id: Id34dea17f78715eb7c44a3959c654b0f09ead3fb\n"
    },
    {
      "commit": "93cf3dfbf8f3b96dedc4a999ae81d7b7d208d62c",
      "tree": "f003271cf80d0af7b22fa73dc73c95decc3c1158",
      "parents": [
        "efb768921e7566c41b2d01eb0fccdff4d2445445"
      ],
      "author": {
        "name": "Iris Chang",
        "email": "iris.chang@mediatek.com",
        "time": "Mon May 06 13:53:43 2019 +0800"
      },
      "committer": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Thu May 16 16:20:02 2019 +0000"
      },
      "message": "Handle mp4 file with abnormal pcm audio playback stuck\n\nWhen we play the mp4 file whose pcm audio\u0027s sample size of stsz box\nis not correct, it will stuck. The root cause is it may take wrong\nbuffer to pcm decoder, and AudioTrack might not be able to play the\ndecoded pcm data and cannot get right timestamp, so video will stuck\nby audio.\n\nBug: 132042434\nTest: test with the mp4 file whose pcm audio sampleSize is abnormal\nand check if the video can be played normally.\nChange-Id: I06c69e43922512f43d996fafcbe8b9c23ce3e7dd\n"
    },
    {
      "commit": "c664639719300a3a768044592b69f41bd1105179",
      "tree": "1d58c2892e246e577f4a55ca32b48b5adc8598eb",
      "parents": [
        "656a0938691a264ec5ac2b3b8327a0c7db602853"
      ],
      "author": {
        "name": "Dongwon Kang",
        "email": "dwkang@google.com",
        "time": "Wed May 15 14:26:37 2019 -0700"
      },
      "committer": {
        "name": "Dongwon Kang",
        "email": "dwkang@google.com",
        "time": "Thu May 16 09:17:56 2019 -0700"
      },
      "message": "Add size checking for \u0027saio\u0027 box\n\nTest: run poc\nBug: 124526959\nChange-Id: I9ec41f8d27c613609de6cfff2474793f88c5b956\n"
    },
    {
      "commit": "ca67e38e7029ed2f6f277fca23210094dcfa3c59",
      "tree": "038e46dc7e71104d960b9bf249f9c20f26c0764b",
      "parents": [
        "7ec47840797570b34042ba593dc02a39263a978f"
      ],
      "author": {
        "name": "Harish Mahendrakar",
        "email": "harish.mahendrakar@ittiam.com",
        "time": "Tue May 14 09:48:28 2019 -0700"
      },
      "committer": {
        "name": "Ray Essick",
        "email": "essick@google.com",
        "time": "Wed May 15 15:47:50 2019 -0700"
      },
      "message": "MPEG4Extractor: Fix opus CSD size\n\nMPEG4Extractor was signally wrong CSD size for csd-0 in case of opus\nInstead of signally actual CSD size, size of the array used to hold\nthe header was being sent.\n\nBug: 132692852\nTest: Manually verified using AMediaExtractor based test application\nChange-Id: I88f247a24ab09d0a39b32934659705d7bc9d3f7d\n"
    },
    {
      "commit": "a5175b7a0f5349762940ee6564cf95fefaa592ac",
      "tree": "5f165aca71b9e1edf867c211eed8dc030df2f6c6",
      "parents": [
        "b864e51cade27bd6965fd923d0329d3d7e5b785e",
        "a3e3deceb10ecc672d197e2b117196611c6d077e"
      ],
      "author": {
        "name": "Lajos Molnar",
        "email": "lajos@google.com",
        "time": "Sat May 11 03:44:36 2019 -0700"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Sat May 11 03:44:36 2019 -0700"
      },
      "message": "Merge \"Fix: Send valid frames for Vorbis in MKV\" into qt-dev am: 00ffd9e0c4\nam: a3e3deceb1\n\nChange-Id: I4c8efb2d5c7bc22196b8b827d1f1f8ac5991ebae\n"
    },
    {
      "commit": "00ffd9e0c4cd97529b77248eae5c819a7d3f8a13",
      "tree": "813cb3cfa0f54e57ac124d63096238c398728754",
      "parents": [
        "68f7b18e8edaabf6c6c67b350d3126c11ba590ff",
        "cb7aaf94231fd5d330b949842dac793c527fa339"
      ],
      "author": {
        "name": "Lajos Molnar",
        "email": "lajos@google.com",
        "time": "Sat May 11 04:06:53 2019 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Sat May 11 04:06:53 2019 +0000"
      },
      "message": "Merge \"Fix: Send valid frames for Vorbis in MKV\" into qt-dev"
    },
    {
      "commit": "cb7aaf94231fd5d330b949842dac793c527fa339",
      "tree": "edaf2297c11f766427fb7c226f7eb5377ae03b5f",
      "parents": [
        "ef7eaaf8d873e9d832673fd0a8e07371fa47a0a0"
      ],
      "author": {
        "name": "Umang Saini",
        "email": "umang.saini@ittiam.com",
        "time": "Fri May 03 17:12:28 2019 +0530"
      },
      "committer": {
        "name": "Ray Essick",
        "email": "essick@google.com",
        "time": "Fri May 10 14:07:23 2019 -0700"
      },
      "message": "Fix: Send valid frames for Vorbis in MKV\n\nBug: 132184674\nTest: atest android.media.cts.DecoderTest#testDecodeOggMkv\nChange-Id: I8e7d74b8f8780b30575195a0c923157a1ce24d16\n"
    },
    {
      "commit": "e82a05776101a6ce50fe4f1bcf797661b568e3dc",
      "tree": "417103a9a56916dbf0ae5c84e5c21d6cf2f94c3b",
      "parents": [
        "69557f0daa2a5d42b10a6019a74730a31a0c4e24",
        "029c1a658ac354456a5711775b29409c395a7ad7"
      ],
      "author": {
        "name": "Dongwon Kang",
        "email": "dwkang@google.com",
        "time": "Thu May 09 20:05:04 2019 -0700"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Thu May 09 20:05:04 2019 -0700"
      },
      "message": "Merge \"MP4: limit extent_count in iloc box.\" into qt-dev am: 48aa740fb6\nam: 029c1a658a\n\nChange-Id: I3e312d28a3730f7fec1deed265ce0170ba0e56de\n"
    },
    {
      "commit": "69557f0daa2a5d42b10a6019a74730a31a0c4e24",
      "tree": "f3fd7c483258474d4201c994074650d191de52bc",
      "parents": [
        "cedb9259f14cc09e8b56d516e8e0b569e09bacf6",
        "5dabe09f789574b8fd76ce8262038815adb7bcc9"
      ],
      "author": {
        "name": "Manisha Jajoo",
        "email": "manisha.jajoo@ittiam.com",
        "time": "Thu May 09 18:01:47 2019 -0700"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Thu May 09 18:01:47 2019 -0700"
      },
      "message": "Merge changes from topic \"b129712302\" into qt-dev am: e905c2f51f\nam: 5dabe09f78\n\nChange-Id: I1fec8714dd150ec951b51878d392932f87785dde\n"
    },
    {
      "commit": "cedb9259f14cc09e8b56d516e8e0b569e09bacf6",
      "tree": "6ee3ed6c791a1dda130827a246fd9a3f1f416b79",
      "parents": [
        "861cd6a99749555088475a71d1f36b6cbbd167f4",
        "53652c33cbf2cde6c9edf4f095add3d4cacf5017"
      ],
      "author": {
        "name": "Harish Mahendrakar",
        "email": "harish.mahendrakar@ittiam.com",
        "time": "Thu May 09 17:53:55 2019 -0700"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Thu May 09 17:53:55 2019 -0700"
      },
      "message": "MPEG4Extractor: read codecDelay from opus header am: 7216cce1a9\nam: 53652c33cb\n\nChange-Id: Ib87a78ba5afc8d0dbf8631ccc8cc59bf462b8b25\n"
    },
    {
      "commit": "53652c33cbf2cde6c9edf4f095add3d4cacf5017",
      "tree": "f36f644d7083a0be8300641d12d54960b159f1d8",
      "parents": [
        "b9362eeb449e9950c817288bdc6277c1b6c1e470",
        "7216cce1a9f3c4cc054840b85fda3cc6a96ecfed"
      ],
      "author": {
        "name": "Harish Mahendrakar",
        "email": "harish.mahendrakar@ittiam.com",
        "time": "Thu May 09 15:23:19 2019 -0700"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Thu May 09 15:23:19 2019 -0700"
      },
      "message": "MPEG4Extractor: read codecDelay from opus header\nam: 7216cce1a9\n\nChange-Id: I530cbe2f5c73ba001f36699ca32dc809cf7f2177\n"
    },
    {
      "commit": "48aa740fb62459d02b9f23e27205c51d37f971d8",
      "tree": "b3aac7a1c29a5880f801a988b370f14debff93f4",
      "parents": [
        "e905c2f51f94b9832b7b4141b9bf6b9af11c8169",
        "69b6ab33e6883c57523ba2b5f51db61b3005b58f"
      ],
      "author": {
        "name": "Dongwon Kang",
        "email": "dwkang@google.com",
        "time": "Thu May 09 20:53:42 2019 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu May 09 20:53:42 2019 +0000"
      },
      "message": "Merge \"MP4: limit extent_count in iloc box.\" into qt-dev"
    },
    {
      "commit": "e905c2f51f94b9832b7b4141b9bf6b9af11c8169",
      "tree": "bbbe2828a79f7796461952296a8b20207c1e980d",
      "parents": [
        "39659611807c4f979d1c6c8dd4e2c829b3e7846b",
        "714ad81087d53a4bad7a7658d78a04694d6e393b"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Thu May 09 20:19:56 2019 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu May 09 20:19:56 2019 +0000"
      },
      "message": "Merge changes from topic \"b129712302\" into qt-dev\n\n* changes:\n  Add Vorbis support in MP4 extractor\n  MPEG4Extractor: read codecDelay from opus header\n"
    },
    {
      "commit": "69b6ab33e6883c57523ba2b5f51db61b3005b58f",
      "tree": "f46d39f01ebf49da0f224323b6592aa1a940bb13",
      "parents": [
        "34a740d5360edd1f0bfd6a13b4d75667f550a512"
      ],
      "author": {
        "name": "Dongwon Kang",
        "email": "dwkang@google.com",
        "time": "Wed May 08 17:11:39 2019 -0700"
      },
      "committer": {
        "name": "Dongwon Kang",
        "email": "dwkang@google.com",
        "time": "Wed May 08 17:15:17 2019 -0700"
      },
      "message": "MP4: limit extent_count in iloc box.\n\nItemLoc::getLoc() has a CHECK for extents.size() \u003d\u003d 1.\n\nTest: poc \u0026 MediaMetadataRetrieverTest\nBug: 124389881\nChange-Id: Ic45cafb8ce47aea106aabdffeccd031b446579b2\n"
    },
    {
      "commit": "714ad81087d53a4bad7a7658d78a04694d6e393b",
      "tree": "4e46fcfc7784957c4cc8b636353afac87895e22d",
      "parents": [
        "7216cce1a9f3c4cc054840b85fda3cc6a96ecfed"
      ],
      "author": {
        "name": "Manisha Jajoo",
        "email": "manisha.jajoo@ittiam.com",
        "time": "Tue Apr 23 17:34:55 2019 +0530"
      },
      "committer": {
        "name": "Ray Essick",
        "email": "essick@google.com",
        "time": "Wed May 08 13:19:14 2019 -0700"
      },
      "message": "Add Vorbis support in MP4 extractor\n\nTest: stagefright -ao /sdcard/vorbis.mp4\n\nBug: 129712302\n\nChange-Id: I39b0709816a6abc518fb001a82aa297c6ec351e1\n"
    },
    {
      "commit": "7216cce1a9f3c4cc054840b85fda3cc6a96ecfed",
      "tree": "2bb04612d89c038dc6973d927a0bf7f0fc2d7e5c",
      "parents": [
        "ef7eaaf8d873e9d832673fd0a8e07371fa47a0a0"
      ],
      "author": {
        "name": "Harish Mahendrakar",
        "email": "harish.mahendrakar@ittiam.com",
        "time": "Mon Apr 29 08:26:46 2019 -0700"
      },
      "committer": {
        "name": "Ray Essick",
        "email": "essick@google.com",
        "time": "Wed May 08 13:19:11 2019 -0700"
      },
      "message": "MPEG4Extractor: read codecDelay from opus header\n\nInstead of hard coding codecDelay, read it from opus header.\nAlso allow for variable sized opusheader to support multiple channels\n\nBug:129712302\nTest: atest android.media.cts.DecoderTest\nChange-Id: I5e134f688125d275163dfa496acd8133354b5617\n"
    },
    {
      "commit": "17ecc0aafac119b80e5e3b3785585de7c92306be",
      "tree": "8115076960ee1e26735e018201ed7fb6f726f153",
      "parents": [
        "018994af469a21a63de391c8bd15984e771645b7",
        "598a53248891086cc4c0d0c120c07d583559534a"
      ],
      "author": {
        "name": "Dongwon Kang",
        "email": "dwkang@google.com",
        "time": "Fri May 03 22:12:32 2019 -0700"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Fri May 03 22:12:32 2019 -0700"
      },
      "message": "Merge \"Revert \"Install extractors for 1st and 2nd ABIs to the test APEX\"\" into qt-dev am: eb1b8e4a36\nam: 598a532488\n\nChange-Id: I220c0803e2eac9ba1524722d4feea5312f536d58\n"
    },
    {
      "commit": "eb1b8e4a365a8833ebdaba4975d7b3e610ed709f",
      "tree": "73fa67cc5ba597bdf4a5613c12918453cc16eb4e",
      "parents": [
        "2112c9160ca153717749d4055ae6d8c904d17f8a",
        "8bd93d3cdc95b240f54e95d344887b60bd943791"
      ],
      "author": {
        "name": "Dongwon Kang",
        "email": "dwkang@google.com",
        "time": "Fri May 03 20:46:04 2019 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri May 03 20:46:04 2019 +0000"
      },
      "message": "Merge \"Revert \"Install extractors for 1st and 2nd ABIs to the test APEX\"\" into qt-dev"
    },
    {
      "commit": "8bd93d3cdc95b240f54e95d344887b60bd943791",
      "tree": "8a5ef16931d867e1e28c60219f06ff603a476168",
      "parents": [
        "784bfac0b0e32c668aefdae2281e1f1c370c9097"
      ],
      "author": {
        "name": "Dongwon Kang",
        "email": "dwkang@google.com",
        "time": "Fri May 03 14:58:08 2019 +0000"
      },
      "committer": {
        "name": "Dongwon Kang",
        "email": "dwkang@google.com",
        "time": "Fri May 03 14:58:08 2019 +0000"
      },
      "message": "Revert \"Install extractors for 1st and 2nd ABIs to the test APEX\"\n\nThis reverts commit 784bfac0b0e32c668aefdae2281e1f1c370c9097.\n\nReason for revert: decided to use device which matches to the test suite.\n\nBug: 131869673, Bug: 125914810\nChange-Id: I5738a5303f3368f63fcd51074ee9b2db7344d518\n"
    },
    {
      "commit": "f59675a4114cdd7091fae4395e4f936415837b7d",
      "tree": "b9fe8897e19c8acd4a3334e5689bda9dc5d94903",
      "parents": [
        "4e5f81810ba9d4fb7901d3690249eca7efe04cc8",
        "21c26f83db03a34ebb916f90b2fd933385d854c7"
      ],
      "author": {
        "name": "Jiyong Park",
        "email": "jiyong@google.com",
        "time": "Tue Apr 30 10:34:56 2019 -0700"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Tue Apr 30 10:34:56 2019 -0700"
      },
      "message": "Merge \"Install extractors for 1st and 2nd ABIs to the test APEX\" into qt-dev am: ab09f6e621\nam: 21c26f83db\n\nChange-Id: Ic90415c30a2ae4fa25c0421793cb875b21133296\n"
    },
    {
      "commit": "cd39cb7ec601ceafe7ce2b9008b3c82fd90e71c7",
      "tree": "4a88cce2f06342a90ac5b0a98b1f1b4f387ece5a",
      "parents": [
        "d0e4114c465b8e2bb4ab45a4820798f1f25c6540",
        "59f0262ac8ce4cf1bacd22f0a55f0ea247d36800"
      ],
      "author": {
        "name": "Greg Kaiser",
        "email": "gkaiser@google.com",
        "time": "Tue Apr 30 12:56:29 2019 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Apr 30 12:56:29 2019 +0000"
      },
      "message": "Merge \"MPEG4Extractor: Make code more clear\""
    },
    {
      "commit": "ffc608eedcfcd6f0d98dffc92b769a4efdfbca97",
      "tree": "73ae730a6700a8a8ebeb84997865f66cbfd588d1",
      "parents": [
        "5ce593fb5e9771ebc1691089c4fa4f6ad0169b8c",
        "33595116e25225002afce05e1583c24e7dc4ef50"
      ],
      "author": {
        "name": "Lajos Molnar",
        "email": "lajos@google.com",
        "time": "Mon Apr 29 23:34:16 2019 -0700"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Mon Apr 29 23:34:16 2019 -0700"
      },
      "message": "Merge changes I05aad785,I8f7d943e into qt-dev am: 4ed3e1bf4f\nam: 33595116e2\n\nChange-Id: I5dec1d08b6232a70d03fb82f2f9ec16f6d5c920c\n"
    },
    {
      "commit": "34588b88905c83ba23438a7e01b3ee9acca4d37c",
      "tree": "07ffdd65f9524d9d76632600324e92dc8f4577cb",
      "parents": [
        "cf3e252fc3a0c9c96ec6f5e675aa5336a05d16c0",
        "786bce09767c5e6d9baf4b290deba9ea9b001e7c"
      ],
      "author": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Mon Apr 29 17:34:58 2019 -0700"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Mon Apr 29 17:34:58 2019 -0700"
      },
      "message": "Merge \"oggextractor: fix duration calculation\" into qt-dev am: 6f471f0c0a\nam: 786bce0976\n\nChange-Id: I149317c3c0b40f5cfd5e471f23ec1b9d8f712043\n"
    },
    {
      "commit": "59f0262ac8ce4cf1bacd22f0a55f0ea247d36800",
      "tree": "d6b963c1a5d00a06be6c72924aea32286648b2e8",
      "parents": [
        "3ee6b7a5bc0cee813bb80456ca46dade0b479937"
      ],
      "author": {
        "name": "Greg Kaiser",
        "email": "gkaiser@google.com",
        "time": "Thu Apr 11 06:40:53 2019 -0700"
      },
      "committer": {
        "name": "Greg Kaiser",
        "email": "gkaiser@google.com",
        "time": "Mon Apr 29 15:02:55 2019 -0700"
      },
      "message": "MPEG4Extractor: Make code more clear\n\nWe were taking the exact same action whether or not the\n\u0027Present\u0027 bit was set.  So we make the code more clear\nthat this is what we\u0027re doing.  We also add logging,\nin verbose logging only, if we get the unexpected case\nof the \u0027Present\u0027 bit not being set.\n\nBug: 77714339\nTest: TreeHugger\nChange-Id: I58c5f5bb01e2b307b5943ae43c6d685cf96f5477\n"
    },
    {
      "commit": "ab09f6e62122eb6d09a4013cf54de3a2d2805873",
      "tree": "cf0e40d68f490f5307e1e627a1432deb74ffd38e",
      "parents": [
        "93d1b1f3932fbd085ef6eac48ca926c42fa8f26e",
        "784bfac0b0e32c668aefdae2281e1f1c370c9097"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Mon Apr 29 15:26:40 2019 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Apr 29 15:26:40 2019 +0000"
      },
      "message": "Merge \"Install extractors for 1st and 2nd ABIs to the test APEX\" into qt-dev"
    },
    {
      "commit": "f77314d41d13460cbcb4db9001507b8e69f755c4",
      "tree": "10a349f6150847c51cf58ea16aa4af10f0118910",
      "parents": [
        "212ef6cbe0fee15e98c114dac38ebabdf578acb5"
      ],
      "author": {
        "name": "Manisha Jajoo",
        "email": "manisha.jajoo@ittiam.com",
        "time": "Wed Apr 17 17:26:41 2019 +0530"
      },
      "committer": {
        "name": "Lajos Molnar",
        "email": "lajos@google.com",
        "time": "Fri Apr 26 14:23:28 2019 -0700"
      },
      "message": "Add flac support in MP4 extractor\n\nTest: stagefright -ao flac.mp4\n\nBug: 129712302\n\nChange-Id: I05aad7853a937ff1c13b24058f3406c3d143e9d7\n"
    },
    {
      "commit": "212ef6cbe0fee15e98c114dac38ebabdf578acb5",
      "tree": "1acea38b6e6f70c2a67b4b6ebe090c4c25abb276",
      "parents": [
        "5d50097e73cf043666065da7bd50d659fcfc526b"
      ],
      "author": {
        "name": "Umang Saini",
        "email": "umang.saini@ittiam.com",
        "time": "Wed Apr 17 20:25:07 2019 +0530"
      },
      "committer": {
        "name": "Lajos Molnar",
        "email": "lajos@google.com",
        "time": "Fri Apr 26 14:23:28 2019 -0700"
      },
      "message": "Add Opus support in MP4 extractor\n\nTest: stagefright -ao /sdcard/opus.mp4\n\nBug: 129712302\n\nChange-Id: I8f7d943e7fa9a7b520974044b458005fab769920\n"
    },
    {
      "commit": "3ee6b7a5bc0cee813bb80456ca46dade0b479937",
      "tree": "3d5f9d68c796b1eadeff3fff88c33d292149be68",
      "parents": [
        "1c2813bc5c609f1c3b59c92d086523a72e7b6e1e",
        "6707df1fea60bd7147262f7d7b2f1cece1687004"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Fri Apr 26 21:19:19 2019 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Apr 26 21:19:19 2019 +0000"
      },
      "message": "Merge \"Really fix excessive \u0027trun\u0027 box parsing\""
    },
    {
      "commit": "6707df1fea60bd7147262f7d7b2f1cece1687004",
      "tree": "9324e3aae6ed948e39702a4f4516d9dc0d9e0c61",
      "parents": [
        "aec71caad37dc2691d5711f50b14e4f6d2183ee7"
      ],
      "author": {
        "name": "Ray Essick",
        "email": "essick@google.com",
        "time": "Tue Apr 23 12:51:51 2019 -0700"
      },
      "committer": {
        "name": "Ray Essick",
        "email": "essick@google.com",
        "time": "Fri Apr 26 13:14:27 2019 -0700"
      },
      "message": "Really fix excessive \u0027trun\u0027 box parsing\n\nmarks video tracks with excessive trun boxes filled with defaults as invalid.\nhandles overflow in the constructed vector of samples.\n\nBug: 124389881\nTest: poc\nChange-Id: If89c912d73340e41fd8ea81d74595a56987c961d\n"
    },
    {
      "commit": "6f471f0c0a19cc2c39ae514baee088e7887fbd37",
      "tree": "12f9daf2fb3c2e1e168405b33f0583bf65313f1d",
      "parents": [
        "5448dc222aa7d9b29a1cb4dc32d3eb07e2e6f60d",
        "e3d0b7f473042d3d85946f6b3530deaf63e4fd02"
      ],
      "author": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Fri Apr 26 15:18:58 2019 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Apr 26 15:18:58 2019 +0000"
      },
      "message": "Merge \"oggextractor: fix duration calculation\" into qt-dev"
    },
    {
      "commit": "e3d0b7f473042d3d85946f6b3530deaf63e4fd02",
      "tree": "c2f429e2be63c05c0feea76db8ccbfd4506631c8",
      "parents": [
        "66ea39290308e4851a5c6fe149e576b7d6249e5f"
      ],
      "author": {
        "name": "Xu",
        "email": "melvin.xu@spreadtrum.com",
        "time": "Wed Feb 13 13:00:10 2019 +0800"
      },
      "committer": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Thu Apr 25 21:15:58 2019 +0000"
      },
      "message": "oggextractor: fix duration calculation\n\nBug: 122489262\nTest: CTS, manual\nChange-Id: I1a3f7f7a1ec2dc8bb67ef1d3c15b8a8aae457296\nSigned-off-by: melvin xu melvin.xu@spreadtrum.com\n"
    },
    {
      "commit": "22a123984c7d6d43dbc8dffeb0c59d2e02818415",
      "tree": "ac0ccefa53cce31a380b73b2252372145b4ef2ad",
      "parents": [
        "a66ea4b93b988942828e60a320a469a5a0f3d674"
      ],
      "author": {
        "name": "Iris Chang",
        "email": "iris.chang@mediatek.com",
        "time": "Fri Jan 18 15:02:33 2019 +0800"
      },
      "committer": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Thu Apr 25 16:32:30 2019 +0000"
      },
      "message": "MPEG2TSExtractor: support m2ts container\n\nm2ts is based on the MPEG-2 transport stream container.\nThe standard MPEG2-2 TS 188-byte packet is prefixed with a\n4-byte extra header to a total size of 192 bytes.\n\nThis patch makes MPEG2TSextractor support both\nMPEG-2 transport stream and m2ts.\n\nmts file use the same container as ts file\n\nBug: 123261411\nTest: play m2ts file and check if it\u0027s normal\nChange-Id: I7798a6bf3fcddf064d6bb6e39cd303bf83c3489e\n(cherry picked from commit c1a464670859ecacf6c84aff855e2686fd18302b)\n"
    },
    {
      "commit": "fb6c0dac13c1bb1875f6e4565725ce09bfb3854a",
      "tree": "12d5ee502eceea1c8294a22c8cc88566a3621724",
      "parents": [
        "1ea31cd03a6e292382281925cad2c3d0ed56c20f",
        "c1a464670859ecacf6c84aff855e2686fd18302b"
      ],
      "author": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Thu Apr 25 16:32:04 2019 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Apr 25 16:32:04 2019 +0000"
      },
      "message": "Merge \"MPEG2TSExtractor: support m2ts container\""
    },
    {
      "commit": "784bfac0b0e32c668aefdae2281e1f1c370c9097",
      "tree": "f68403487088a50b95c337664eeac2ff37cb0163",
      "parents": [
        "e069424fbece0edd7d432d15f0078b6d4d176c1c"
      ],
      "author": {
        "name": "Jiyong Park",
        "email": "jiyong@google.com",
        "time": "Thu Apr 25 17:42:06 2019 +0900"
      },
      "committer": {
        "name": "Jiyong Park",
        "email": "jiyong@google.com",
        "time": "Thu Apr 25 17:42:06 2019 +0900"
      },
      "message": "Install extractors for 1st and 2nd ABIs to the test APEX\n\nThe test APEX is built with aosp_x86_64 where first ABI is 64-bit.\nBut the test APEX can be installed to 32-bit target like cf_x86_phone.\nThe lack of 32-bit extractor libraries in the 32-bit target can cause\nproblem. So, install both ABIs of the extractor libraries to the test\nAPEX.\n\nBug: 125914810\nTest: choosecombo to aosp_x86_64 and build test_com.android.media\nCheck that the test APEX has both lib and lib64 directories.\n\nChange-Id: Ib073f61838fea0b823c870c8c71b49a7ecc9346e\n"
    },
    {
      "commit": "c1a464670859ecacf6c84aff855e2686fd18302b",
      "tree": "4e3cb3f888edf07e11f62fd6586c9837db7020df",
      "parents": [
        "aec71caad37dc2691d5711f50b14e4f6d2183ee7"
      ],
      "author": {
        "name": "Iris Chang",
        "email": "iris.chang@mediatek.com",
        "time": "Fri Jan 18 15:02:33 2019 +0800"
      },
      "committer": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Wed Apr 24 07:59:53 2019 -0700"
      },
      "message": "MPEG2TSExtractor: support m2ts container\n\nm2ts is based on the MPEG-2 transport stream container.\nThe standard MPEG2-2 TS 188-byte packet is prefixed with a\n4-byte extra header to a total size of 192 bytes.\n\nThis patch makes MPEG2TSextractor support both\nMPEG-2 transport stream and m2ts.\n\nmts file use the same container as ts file\n\nBug: 123261411\nTest: play m2ts file and check if it\u0027s normal\nChange-Id: I7798a6bf3fcddf064d6bb6e39cd303bf83c3489e\n"
    },
    {
      "commit": "0682c79f1a65be0af818925f14d9c267fa7e0c8e",
      "tree": "519be86269213003e49f66d5c9bf47a04cc80f18",
      "parents": [
        "ee326db2bbd59b81f1ca5433d9a68b76b2bfe3b4"
      ],
      "author": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Tue Apr 23 10:22:14 2019 -0700"
      },
      "committer": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Tue Apr 23 21:05:28 2019 +0000"
      },
      "message": "Support arbitrary sampling rate in FLAC\n\nBug: 122491377\nTest: build\nChange-Id: Id7b92480312a8e5dbc214072b7f0e305e27670b0\n"
    },
    {
      "commit": "2f5f0ace276ed69c3a61bb011812cb1bdc3fea40",
      "tree": "ed33d449494d1a8687126b286562dcc67724d07a",
      "parents": [
        "669dda14bd4ae41277a916a7c2e5889fe4dbb17c"
      ],
      "author": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Mon Apr 22 15:46:21 2019 -0700"
      },
      "committer": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Tue Apr 23 01:09:15 2019 +0000"
      },
      "message": "Don\u0027t read more than the buffer size.\n\nBug: 130593895\nTest: manual\nChange-Id: I54612d14e7cadde1d4a447040dbe9086e970c549\n"
    },
    {
      "commit": "4c7b61e7e26d69133800d4bc4191fa2c34c22926",
      "tree": "a096492d417c44bcdde1356d865a92513ac2c192",
      "parents": [
        "654438952d760d80986270db81d498f1b6e110b4"
      ],
      "author": {
        "name": "Iris Chang",
        "email": "iris.chang@mediatek.com",
        "time": "Mon Mar 11 19:33:03 2019 +0800"
      },
      "committer": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Tue Apr 16 21:57:05 2019 +0000"
      },
      "message": "mkv support more audio codec\n\nmkv support audio codec as bellow:\ncodecID: A_MPEG/L2 (mp2 audio)\ncodecID: A_PCM/INT/LIT and A_PCM/INT/BIG (pcm audio)\ncodecID: A_MS/ACM\nWe can check the supported type in MKVWave2MIME function,\nincluding mp2, mp3, pcm, adpcm.wma\n\nBug: 128470241\nTest: play the files with new supported codecs and check\nif they can be played normally.\n\nChange-Id: Id92303b42ef763d1ce08a3c96265eda69622c79d\n(cherry picked from commit 7f20f58a4b4b38327092954a67ce25dd056d5c82)\n"
    },
    {
      "commit": "210ff1edcb4c68447fd2a08725a60d8dc429cbe3",
      "tree": "7b1bcb4faeca3ccc9d68860a5cda503cb07f37d1",
      "parents": [
        "34e548f91d575296898b39f942f82df89efe412b",
        "6ecd1c5c838f4988f2eadb2e93a3a7b23122374f"
      ],
      "author": {
        "name": "Ray Essick",
        "email": "essick@google.com",
        "time": "Wed Apr 03 23:25:23 2019 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Apr 03 23:25:23 2019 +0000"
      },
      "message": "Merge \"mkvCue Entry\u0027s id is wrong\""
    },
    {
      "commit": "6ecd1c5c838f4988f2eadb2e93a3a7b23122374f",
      "tree": "29d1021369d109eac25cc54aa98bbda72b68b739",
      "parents": [
        "ba9a05060f0c0810647f98037dc353fc75e60506"
      ],
      "author": {
        "name": "Ray Essick",
        "email": "essick@google.com",
        "time": "Wed Apr 03 12:52:01 2019 -0700"
      },
      "committer": {
        "name": "Ray Essick",
        "email": "essick@google.com",
        "time": "Wed Apr 03 20:31:07 2019 +0000"
      },
      "message": "mkvCue Entry\u0027s id is wrong\n\nmkvparser.cc SeekHead::ParseEntry extracts an entry by using:\n(android P) pEntry-\u003eid \u003d readUInt(pReader, pos, len) [yielding 0x0C53BB6B\n(android Q) pEntry-\u003eid \u003d readID(pReader, pos, len) [yielding 0x1C53BB6B\n\nThis updates mkv extractor to accept 0x1C53BB6B (using symbolic value from webmids.h)\n\nBug: 129839777\nTest: play mkv file\nChange-Id: Ida3f0863d59e5b67446e325d186dfe04a00420f2\n"
    },
    {
      "commit": "b02be352c78d9db1c876a114199a9d4259c194e2",
      "tree": "4f108231d2e4565d3ffeb70d24d6c00a0f9dad00",
      "parents": [
        "a1acff23ff51603762cd0fa9f06fa0e74322c558",
        "3d43afe267883d2024d654af11b99264f20bf3d7"
      ],
      "author": {
        "name": "Ray Essick",
        "email": "essick@google.com",
        "time": "Wed Apr 03 00:11:08 2019 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Apr 03 00:11:08 2019 +0000"
      },
      "message": "Merge \"Bound sizes for tx3g atom parsing per track\""
    },
    {
      "commit": "63dc6cf50582fa13702c59f43155f6c18312178b",
      "tree": "7333237bf7ef966510a84721d4252a016c37e07c",
      "parents": [
        "7acce1b21da72e7ffd0309814be8bef125ee23b7",
        "665f8cd61aaca2f0094c5d0a067bba3838ff1c9b"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Tue Apr 02 23:36:44 2019 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Apr 02 23:36:44 2019 +0000"
      },
      "message": "Merge \"Sanity checking when parsing \u0027trun\u0027 box.\""
    },
    {
      "commit": "3d43afe267883d2024d654af11b99264f20bf3d7",
      "tree": "7e7ab936610bed2cf36829f8428624d21d6d7797",
      "parents": [
        "5635b7d126c46bb33d80f1518fe75702e4c2e179"
      ],
      "author": {
        "name": "Ray Essick",
        "email": "essick@google.com",
        "time": "Fri Mar 08 11:14:05 2019 -0800"
      },
      "committer": {
        "name": "Ray Essick",
        "email": "essick@google.com",
        "time": "Tue Apr 02 14:30:40 2019 -0700"
      },
      "message": "Bound sizes for tx3g atom parsing per track\n\nDetect when media contains too much tx3g data, defined as max atom size\neven if spread across multiple tx3g atoms. Also validate that any tx3g\natom has non-zero size.\n\nWhen assembling the possibly many atoms, use a more efficient append/grow in a\nlocal buffer and only attach it to the track meta data when the track is\ncomplete; saves a possible O(n*n) copy/re-copy/re-copy behavior.\n\nBug: 124330204\nTest: poc\nChange-Id: I55ab88a4b650e508c0d49f9bd07284d9ddcf6361\n"
    },
    {
      "commit": "4c682b8d29b42094cbe33bb2aba2e1a13cf4ecf3",
      "tree": "1e465ed02b23258d5e7a04e976ac0d00f2f1986d",
      "parents": [
        "5635b7d126c46bb33d80f1518fe75702e4c2e179"
      ],
      "author": {
        "name": "Gopalakrishnan Nallasamy",
        "email": "gokrishnan@google.com",
        "time": "Mon Apr 01 19:35:52 2019 -0700"
      },
      "committer": {
        "name": "Gopalakrishnan Nallasamy",
        "email": "gokrishnan@google.com",
        "time": "Tue Apr 02 12:13:13 2019 -0700"
      },
      "message": "MPEG4Extractor: Keep CTS values positive\n\nMedia files with zero STTS delta in video track exists, probably malformed files. If the same\nvideo track has edit shift entry to shift(prepone) video frames, then CTS could get negative.\nSince negative CTS values are not meaningful, this CL fixes that by only subtracting the lower\nof CTS and edit shift value from CTS.\n\nBug: 117402420\n\nTest: cts-tradefed run cts-dev -m CtsMediaTestCases --compatibility:module-arg CtsMediaTestCases:\n      include-annotation:android.platform.test.annotations.RequiresDevice\n\nChange-Id: I49657457f90e9bbee5fc8bf45235eeb7b0873ab6\n"
    },
    {
      "commit": "11966872eedd949041dfe0a905794654a3df49cf",
      "tree": "7ad77e435903461790f78282853777f389b7bfd0",
      "parents": [
        "71028253b21dfee4e3908916c4182cd0ea140f11"
      ],
      "author": {
        "name": "Pawin Vongmasa",
        "email": "pawin@google.com",
        "time": "Fri Feb 22 17:54:19 2019 -0800"
      },
      "committer": {
        "name": "Pawin Vongmasa",
        "email": "pawin@google.com",
        "time": "Thu Mar 28 23:54:38 2019 -0700"
      },
      "message": "Remove subdirs from Android.bp\n\nsubdirs is meaningless now.\n\nTest: Builds\n\nBug: 129513796\n\nChange-Id: I60130e38b5924b73c5520d884868dd580f5345bf\n"
    },
    {
      "commit": "665f8cd61aaca2f0094c5d0a067bba3838ff1c9b",
      "tree": "113d4327a6b4aaa5c6d3f7772ea5187728e4dc72",
      "parents": [
        "32ebca3611c530fc0f36225dcb1ca2ec50e8d9f1"
      ],
      "author": {
        "name": "Ray Essick",
        "email": "essick@google.com",
        "time": "Mon Mar 18 11:03:58 2019 -0700"
      },
      "committer": {
        "name": "Ray Essick",
        "email": "essick@google.com",
        "time": "Mon Mar 25 10:50:57 2019 -0700"
      },
      "message": "Sanity checking when parsing \u0027trun\u0027 box.\n\nCheck for unreasonable sampleCounts, unreasonable sampleDurations,\nespecially when mapped as same duration for all samples.\n\nBug: 124389881\nTest: poc\nChange-Id: Ic1afecc42c1ec5c63b8dee1743ee0e473e82ba8b\n"
    },
    {
      "commit": "b893fcd9978e730c0e00eddce63a08bef727261e",
      "tree": "61cd61d5a723984dbd21d98c97f08efd36233687",
      "parents": [
        "9c29f6b2a3ffffe8802790b40d501c647d0d1012",
        "9b8cba239e2369219e3209bdbd654e3644a37adb"
      ],
      "author": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Fri Mar 22 21:44:34 2019 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Mar 22 21:44:34 2019 +0000"
      },
      "message": "Merge changes Ic983efe6,I6eeb4aa6\n\n* changes:\n  Fix test that checks if metadata is already set\n  Fix multiple-track mkv files\n"
    },
    {
      "commit": "9c29f6b2a3ffffe8802790b40d501c647d0d1012",
      "tree": "f87d4dbf4445cbf77be4d15e11eeff65e0e39ed9",
      "parents": [
        "fc4a18139c183ca39bae44e3bb7e69430347bb68",
        "c47d1d18ceba50936187f7c9dc4246b84d8d147d"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Fri Mar 22 21:41:30 2019 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Mar 22 21:41:30 2019 +0000"
      },
      "message": "Merge \"handle empty NAL when looking for HEVC layerId\""
    },
    {
      "commit": "c47d1d18ceba50936187f7c9dc4246b84d8d147d",
      "tree": "4a9e03f3c2c08f7000d7300133cd2f614b225dda",
      "parents": [
        "b9df1597c794855106dc8225050f5fc2011d07d3"
      ],
      "author": {
        "name": "Ray Essick",
        "email": "essick@google.com",
        "time": "Fri Mar 22 12:51:04 2019 -0700"
      },
      "committer": {
        "name": "Ray Essick",
        "email": "essick@google.com",
        "time": "Fri Mar 22 12:53:55 2019 -0700"
      },
      "message": "handle empty NAL when looking for HEVC layerId\n\nparseHEVCLayerId() would CHECK() if there was no data, we now return\nthat there was no valid HEVC layer info. This was triggered by changes\nso a bad NAL would be skipped rather than aborting.\n\nBug: 127833120\nBug: 122749422\nTest: re-ran CTS\nChange-Id: I239697f9d1f77995f9ccf5e8c77cfaa01994e326\n"
    },
    {
      "commit": "9b8cba239e2369219e3209bdbd654e3644a37adb",
      "tree": "bba397bcbe636745e5b5bbeeb1f4c199c5bb2c08",
      "parents": [
        "4970a6c944fed7a1763509b7105c83089a923856"
      ],
      "author": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Fri Mar 22 09:33:34 2019 -0700"
      },
      "committer": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Fri Mar 22 10:07:25 2019 -0700"
      },
      "message": "Fix test that checks if metadata is already set\n\nBug: 128565395\nTest: manual\nChange-Id: Ic983efe66f70a409ec4ec40eec6d6d3aa8fe540b\n"
    },
    {
      "commit": "4970a6c944fed7a1763509b7105c83089a923856",
      "tree": "fdf43dc4459f00e9636e0156418e0d48715dd912",
      "parents": [
        "61dcc2ce1bd5bec07002c81b87d0d0df65a978d5"
      ],
      "author": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Thu Mar 21 14:16:40 2019 -0700"
      },
      "committer": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Thu Mar 21 14:16:40 2019 -0700"
      },
      "message": "Fix multiple-track mkv files\n\nStructures stored in Vector might have their destructor called when\nthe Vector needs to be extended, so ensure we handle that correctly.\n\nBug: 128371202\nChange-Id: I6eeb4aa67edaa63e0068f6102457f693f63768bc\n"
    },
    {
      "commit": "9e0ad0278471500b833aa58ccc29b3c542551932",
      "tree": "aa1f30f9f63025a5a5c47388d2310f94617da978",
      "parents": [
        "76e348fc43d7b8bda0362ccbf14bf0eeac09a7c9"
      ],
      "author": {
        "name": "jiabin",
        "email": "jiabin@google.com",
        "time": "Wed Mar 20 14:42:16 2019 -0700"
      },
      "committer": {
        "name": "jiabin",
        "email": "jiabin@google.com",
        "time": "Wed Mar 20 15:50:13 2019 -0700"
      },
      "message": "Add key for haptic channel count in metadata.\n\nThis key could be useful to query if a file contains haptic channels or\nnot.\n\nTest: test with files (not) containing haptic channels\nBug: 128012181\nChange-Id: I5f0a9ca9fde23ce7d6f48921acc9a1074a6a1601\n"
    },
    {
      "commit": "51c684bdd00fe3f3a23603b95dad597a892085ca",
      "tree": "6117ec293fd16610fa94f0934429cada6d4c45f2",
      "parents": [
        "60c73a445b632cc2e233b1a275efeee7414a41a4",
        "d9b70d53091a6bfdf3abdd288b303ab1a73f95f9"
      ],
      "author": {
        "name": "Robert Shih",
        "email": "robertshih@google.com",
        "time": "Tue Mar 19 19:23:25 2019 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Mar 19 19:23:25 2019 +0000"
      },
      "message": "Merge \"MKV handles MP3 audio whose frame is not complete\""
    },
    {
      "commit": "4579c809566bd682aec2f9351f60d9ddb2dd677f",
      "tree": "9389274f5871b185ca1fbdb8f3f0b09ce1c25f32",
      "parents": [
        "a1c2e689732df6c2bde2aa4e54ed26889a1878b0",
        "d11a5ab1a7e02516a7230ce4b2d0b906cd4d022d"
      ],
      "author": {
        "name": "DanielMo",
        "email": "DanielMo@fih-foxconn.com",
        "time": "Mon Mar 18 14:42:07 2019 -0700"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Mon Mar 18 14:42:07 2019 -0700"
      },
      "message": "Merge \"The ozoaudio modification within Mainline media file scope\" am: 5e195df5d7 am: c200193cf7\nam: d11a5ab1a7\n\nChange-Id: I2f08378d2e49897222def74208a42a56248fb1db\n"
    },
    {
      "commit": "d9b70d53091a6bfdf3abdd288b303ab1a73f95f9",
      "tree": "b42a49f9811f91fc7f5b08ba1eb6afd54eee7dac",
      "parents": [
        "e9955729faa3a33483b9739f085856b5b4b451d5"
      ],
      "author": {
        "name": "Iris Chang",
        "email": "iris.chang@mediatek.com",
        "time": "Mon Jan 28 11:26:11 2019 +0800"
      },
      "committer": {
        "name": "Robert Shih",
        "email": "robertshih@google.com",
        "time": "Mon Mar 18 13:34:36 2019 -0700"
      },
      "message": "MKV handles MP3 audio whose frame is not complete\n\nMP3 frames of some special mkv files are not complete, so the\nframes read by MatroskaSource can\u0027t be played normally.\nMP3 frameSize for these special files is bigger than the buffer\nlength of the frame read by readBlock. Read function can\u0027t get\na complete MP3 frame which will be sent to MP3 decoder.\n\nBug: 123590715\nTest: Test MKV file whose MP3 audio frameSize in MP3 header is\nnot consistent with buffer length and check if MP3 audio can\nbe played normally.\n\nChange-Id: If1deca29fffc50012edb3af63d96ec9e99aa3fba\n"
    },
    {
      "commit": "1465471345b823696cc1cee9fd51cedabf4cc3fd",
      "tree": "55a4aa840ea651ff568bbea35e1b586b44ff5690",
      "parents": [
        "b47f51d8cd06265eee1663b3ce1eab05a56e230f",
        "4c1f95845160320a689d388598a11f2aeb067d78"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Fri Mar 15 05:33:43 2019 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Mar 15 05:33:43 2019 +0000"
      },
      "message": "Merge \"Fix thumbnail hvcc key in ItemTable\""
    },
    {
      "commit": "4c1f95845160320a689d388598a11f2aeb067d78",
      "tree": "5306da35281e7debbf403b5569f0322be7ef670f",
      "parents": [
        "0a2fc30b155c92db29ed483f85c8e92c3c9cf85b"
      ],
      "author": {
        "name": "Chong Zhang",
        "email": "chz@google.com",
        "time": "Wed Mar 13 15:15:53 2019 +0900"
      },
      "committer": {
        "name": "Chong Zhang",
        "email": "chz@google.com",
        "time": "Thu Mar 14 14:51:27 2019 -0700"
      },
      "message": "Fix thumbnail hvcc key in ItemTable\n\nIn HEIF files the hvcc for main image and the thumbnail\nare separate. Add AMEDIAFORMAT_KEY_THUMBNAIL_CSD_HEVC for\nthumbnail hvcc, and set it in ItemTable.\n\ntest:\n- thumbnail test from the bug;\n- manual testing of HEIF image decoding of various files;\n- cts MediaMetadataRetriverTest.\n\nbug: 128494513\nChange-Id: I219a86cf362f641d546236dda78e8559ffcfa8aa\n"
    },
    {
      "commit": "caa77efe666dcea0799828627a3887e896de5e16",
      "tree": "3c4731a9095027c22c853cfd21a60e5c5b1f3587",
      "parents": [
        "e6e98e77198a68c812b81159f76de33b632c3d43"
      ],
      "author": {
        "name": "Ray Essick",
        "email": "essick@google.com",
        "time": "Wed Mar 13 14:13:44 2019 -0700"
      },
      "committer": {
        "name": "Ray Essick",
        "email": "essick@google.com",
        "time": "Wed Mar 13 14:13:44 2019 -0700"
      },
      "message": "Mark WAV extractor for single buffers\n\nChange WAV extractor so it doesn\u0027t try to generate multiple buffers\nto return more per readMultiple() transaction. Working around an\napparent buffer management problem when trying to do more than 1 buffer.\n\nBug: 128249893\nTest: play wav file before/after\n"
    },
    {
      "commit": "348850bed95adbe762ee98bba7bbbbae268c1553",
      "tree": "3b0e02fc74a9d13b3fdc707a6a8368119795f0a9",
      "parents": [
        "fe610f0fa30cf58c448f718c05d53208431baf08"
      ],
      "author": {
        "name": "DanielMo",
        "email": "DanielMo@fih-foxconn.com",
        "time": "Thu Jan 10 15:01:25 2019 +0800"
      },
      "committer": {
        "name": "DanielMo",
        "email": "DanielMo@fih-foxconn.com",
        "time": "Tue Mar 12 10:16:22 2019 +0800"
      },
      "message": "The ozoaudio modification within Mainline media file scope\n\nThe ozoaudio integration mainly adds ozoaudiodec and ozoaudioenc under libstagefright/codecs.\nHowever, it also modifies MPEG4Extractor.cpp, and the file is in Mainline media file scope.\nUpstream the patch for reference.\n\nChange-Id: I98da8e5ffaf7873b20d877520993a11cda07a618\n"
    },
    {
      "commit": "0428b8e5a53c3c37e0f76decc7a8f32854488062",
      "tree": "3620aa91a747ffece2ac3771632d98de976c919c",
      "parents": [
        "2af96e2f8c4c9ab956662ffae017c7176795d22f",
        "6244527af5c55a9887e54bd8cc7e86c8cb6240fd"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Sat Mar 09 01:56:14 2019 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Sat Mar 09 01:56:14 2019 +0000"
      },
      "message": "Merge \"mkv supports more video codec types\""
    },
    {
      "commit": "6244527af5c55a9887e54bd8cc7e86c8cb6240fd",
      "tree": "1a397c208951f3a20fe4f0da6cfa90810de25178",
      "parents": [
        "f8e3c419e9a33a960754980bb62a5f51efc5cdb4"
      ],
      "author": {
        "name": "Iris Chang",
        "email": "iris.chang@mediatek.com",
        "time": "Sat Jan 26 18:50:29 2019 +0800"
      },
      "committer": {
        "name": "Ray Essick",
        "email": "essick@google.com",
        "time": "Fri Mar 08 14:13:17 2019 -0800"
      },
      "message": "mkv supports more video codec types\n\n1. support MPEG2 video codec\n2. support codecs under V_MS/VFW/FOURCC which include H263, AVC, MPEG2,\nMPEG4\n3. handle some codec type with no codec private data\n4. add codec type \"MJPEG, XVID, DIVX, DIVX3\" and support them in\n   matroskaextractor\n\nBug: 123594230\nTest: test with file which has added codec type, and check if the codec\nrelated track can be played normally\n\nChange-Id: I4e0173b80576b1f80bc7a210a8ef029ee3a2af51\n"
    }
  ],
  "next": "16a373e7bc075c98ded6a806ae29200d073edb57"
}
