)]}'
{
  "log": [
    {
      "commit": "1b247cc7c2044de8558b1acf27ff0a14cfd6cb72",
      "tree": "63883e6dd36448b4fd47c23c5de634b57e57c19c",
      "parents": [
        "58205951c319c089b1d320f81028262b9a470400"
      ],
      "author": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Thu Dec 05 12:35:09 2019 -0800"
      },
      "committer": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Thu Dec 05 12:35:09 2019 -0800"
      },
      "message": "Clarify ownership of returned pointer\n\nBug: 145361054\nTest: build\nChange-Id: Icc5844bbb3bc3b3c46ad5e69b4d2ab645994f80d\n"
    },
    {
      "commit": "64a3b064787f57525c64fb5431dafc01c3bb33c0",
      "tree": "a3b155bc6d972c6f58077c6a023be65a224e34be",
      "parents": [
        "83c89bc149d9a8e8c90031c858b9b606b694c757"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Tue Oct 29 10:09:30 2019 -0700"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Tue Oct 29 10:09:30 2019 -0700"
      },
      "message": "Consistently say \"Available since API level\".\n\nBug: http://b/143470841\nTest: treehugger\nChange-Id: I716a1b407a694edf1150b7dee6d1a901aa8f238b\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": "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": "5fa1276d36862e95d8893ec2e1f627b8b59ef1f9",
      "tree": "40b43b1dd2080279862aba851d255964e53c5285",
      "parents": [
        "0428b8e5a53c3c37e0f76decc7a8f32854488062"
      ],
      "author": {
        "name": "Jayant Chowdhary",
        "email": "jchowdhary@google.com",
        "time": "Wed Mar 13 15:01:58 2019 -0700"
      },
      "committer": {
        "name": "Jayant Chowdhary",
        "email": "jchowdhary@google.com",
        "time": "Wed Mar 13 17:37:09 2019 -0700"
      },
      "message": "Add RAW_DEPTH private format and allow AImageReader creation with it.\n\nBug: 128451427\n\nTest: AImageReaderWindowHandleTest\n\nChange-Id: Ieb1e51afe2cd9f8c6c1eb55aae98969af5ed83e2\nSigned-off-by: Jayant Chowdhary \u003cjchowdhary@google.com\u003e\n"
    },
    {
      "commit": "6da81c8dbaa5180137efc701f361ef32ec1888c6",
      "tree": "ed59b0f47991e9e5218c036d6b5d4b41bc37c2c0",
      "parents": [
        "06f087d7ebc4b62bec118d1ce8c9ce0e158b8b61",
        "44df34d4f85eb6047c43961802524db95f082c5c"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Tue Feb 26 23:31:00 2019 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Feb 26 23:31:00 2019 +0000"
      },
      "message": "Merge \"Camera: Add NDK support for depth jpeg format\""
    },
    {
      "commit": "06f087d7ebc4b62bec118d1ce8c9ce0e158b8b61",
      "tree": "59c0d4d7c9e40372f9ab0a237c2aaedfb68da53b",
      "parents": [
        "531adf7c2d8dd1e24fbbe9fc932187974bd7cd0b",
        "038e8f8854dd8b7c77d63e5a1cf50e838f443b02"
      ],
      "author": {
        "name": "Chong Zhang",
        "email": "chz@google.com",
        "time": "Tue Feb 26 23:15:40 2019 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Feb 26 23:15:40 2019 +0000"
      },
      "message": "Merge \"Make KEY_MAX_PTS_GAP_TO_ENCODER and KEY_MAX_FPS_TO_ENCODER keys public\""
    },
    {
      "commit": "bb20d55681f070a201931f11d8cec24793336869",
      "tree": "14d85042711312986014c4ee1305a14c1040515c",
      "parents": [
        "0302b6d14cca873521fb65b184fe8964b496affc"
      ],
      "author": {
        "name": "Dichen Zhang",
        "email": "dichenzhang@google.com",
        "time": "Thu Feb 14 11:27:33 2019 -0800"
      },
      "committer": {
        "name": "Dichen Zhang",
        "email": "dichenzhang@google.com",
        "time": "Thu Feb 14 15:11:00 2019 -0800"
      },
      "message": "libmediaextractor: add manufacurer key in Metadata\n\nadd manufacturer key\n\nBug: 121340676\nTest: TBD\nChange-Id: I59ce39790ab22627ea65684929f1044c9a71bb4c\n"
    },
    {
      "commit": "44df34d4f85eb6047c43961802524db95f082c5c",
      "tree": "a2b0255037134321ecdd8fd6bb9dab1440cdb730",
      "parents": [
        "54aa6de10bf6517f3c31ed91ddfa1c27465dc98e"
      ],
      "author": {
        "name": "Emilian Peev",
        "email": "epeev@google.com",
        "time": "Tue Feb 12 09:30:15 2019 -0800"
      },
      "committer": {
        "name": "Emilian Peev",
        "email": "epeev@google.com",
        "time": "Tue Feb 12 11:22:25 2019 -0800"
      },
      "message": "Camera: Add NDK support for depth jpeg format\n\nDepth jpeg image format must be available for\nnative clients using the Camera NDK.\n\nBug: 124064032\nTest: Camera CTS\nChange-Id: I21f14ea63fe4a568c1cfccd0dcd32fce5cad8098\n"
    },
    {
      "commit": "038e8f8854dd8b7c77d63e5a1cf50e838f443b02",
      "tree": "e6d1d26f3d2f08770c6d0f4fc8dcff78a8f3f470",
      "parents": [
        "0684bf1ac795c8a112cdc168004cdf0bad6a6647"
      ],
      "author": {
        "name": "Chong Zhang",
        "email": "chz@google.com",
        "time": "Wed Feb 06 19:05:14 2019 -0800"
      },
      "committer": {
        "name": "Chong Zhang",
        "email": "chz@google.com",
        "time": "Thu Feb 07 10:14:35 2019 -0800"
      },
      "message": "Make KEY_MAX_PTS_GAP_TO_ENCODER and KEY_MAX_FPS_TO_ENCODER keys public\n\nThese two keys are in public API now, keep ndk in sync.\n\nAlso replaced strings with the defined keys in media code.\n\nbug: 80314065\nChange-Id: Ic0d50c10d1f9ab464068223a1a235b95f59f4c98\n"
    },
    {
      "commit": "68ac7ada1f7329db65445d05c986899dbb13b745",
      "tree": "89ee2fc914f6b49e5cac2aae83c61f5c6ace83b2",
      "parents": [
        "627cb60a9fb54e8f6b2eab0c874392f20cd9d8e8"
      ],
      "author": {
        "name": "Shuzhen Wang",
        "email": "shuzhenwang@google.com",
        "time": "Wed Jan 30 14:03:28 2019 -0800"
      },
      "committer": {
        "name": "Shuzhen Wang",
        "email": "shuzhenwang@google.com",
        "time": "Wed Feb 06 10:32:08 2019 -0800"
      },
      "message": "Camera: Add HEIC support\n\n- Derive HEIC capabilities from camera HAL and media framework.\n- Add HeicCompositeStream to encode camera buffers to HEIC buffers.\n- Add ExifUtils to overwrite JPEG APP segments and send to media codec.\n- Add NDK enums and corresponding format support.\n\nTest: Camera CTS\nBug: 79465976\nChange-Id: I0a885e76335f3eba4be0fd42241edb0b7349f284\n"
    },
    {
      "commit": "4a224f5902f88c8dda4c9f6930148ee367a103da",
      "tree": "dc5cd5efcf2ad4d66bd848bbc5be21cdab6b2b4e",
      "parents": [
        "0684bf1ac795c8a112cdc168004cdf0bad6a6647"
      ],
      "author": {
        "name": "Chong Zhang",
        "email": "chz@google.com",
        "time": "Tue Jun 05 15:40:19 2018 -0700"
      },
      "committer": {
        "name": "Chong Zhang",
        "email": "chz@google.com",
        "time": "Mon Feb 04 11:35:21 2019 -0800"
      },
      "message": "Expose a few keys that are already used by apps\n\nbug: 80314065\nChange-Id: I63773e96577a273d890438526cc575f3ed225cea\n"
    },
    {
      "commit": "e92a5c7d3b0face0059566118e68d19c95284f39",
      "tree": "2001e358d8195313a65d4e7c682b6a11ae3f96ed",
      "parents": [
        "706e8765fb5809e6814f156981de45675e88fbad"
      ],
      "author": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Thu Dec 13 09:52:38 2018 -0800"
      },
      "committer": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Thu Dec 13 15:46:05 2018 -0800"
      },
      "message": "Convert OggExtractor to V3 format\n\nand move it to the media APEX.\n\nBug: 111407253\nTest: manual, CTS\nChange-Id: Ia6b6edc42f8bb374d4cc07888fb0f45030ca462f\n"
    },
    {
      "commit": "2017e7afc359e6143b5ed7c53c6ece6ec0a520cf",
      "tree": "65cb1ceb28595abb7840d5403b2836aa362ce005",
      "parents": [
        "980af763fa5fe67196e39fccddcc6830021ba2d0",
        "1d1da3d5be8eddef6311e2f825d58ca3ee5d0421"
      ],
      "author": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Thu Dec 13 15:46:49 2018 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Dec 13 15:46:49 2018 +0000"
      },
      "message": "Merge changes I16e1fa82,Ic59ebc1b\n\n* changes:\n  Convert MatroskaExtractor to V3 format\n  Convert MPEG4Extractor to V3 format\n"
    },
    {
      "commit": "ee39a7f0b500d318971f056d03048d85a6917b00",
      "tree": "1126a77f032f8f8e8503db4ffaa5b124d39027c0",
      "parents": [
        "32f45bfc862d6d2f6588e74d31d08b27377fe99a"
      ],
      "author": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Wed Dec 12 08:14:42 2018 -0800"
      },
      "committer": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Wed Dec 12 11:23:00 2018 -0800"
      },
      "message": "Convert MPEG4Extractor to V3 format\n\nBug: 111407253\nTest: manual, CTS\nChange-Id: Ic59ebc1b8093a2fd33485550625bb6083cff54d7\n"
    },
    {
      "commit": "f5f868d84405ebfd6c9c3744d7aa0b7f8390dd05",
      "tree": "c5d07354b5cc877201b804675d91d808f40ca9ae",
      "parents": [
        "0cc7de2b76d68b690f61e02a13f22e0b5bd174bc",
        "ce82a5f11bca88c8acc7e516a6f7b84df9cec284"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Wed Dec 12 17:54:41 2018 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Dec 12 17:54:41 2018 +0000"
      },
      "message": "Merge \"Add AudioPresentation selection support for ACodec\""
    },
    {
      "commit": "ce82a5f11bca88c8acc7e516a6f7b84df9cec284",
      "tree": "a94effaa8404dbf13a7de592f2679859ab4530b4",
      "parents": [
        "6b01bf3f93113ea19c4f1e8dfd65fe9da7f1a0c9"
      ],
      "author": {
        "name": "ybai",
        "email": "Yanning.Bai@dolby.com",
        "time": "Thu Nov 01 11:19:19 2018 +0800"
      },
      "committer": {
        "name": "Mikhail Naganov",
        "email": "mnaganov@google.com",
        "time": "Tue Dec 11 12:46:19 2018 -0800"
      },
      "message": "Add AudioPresentation selection support for ACodec\n\nBug: 119312182\nTest: compile\nChange-Id: Ie3505f3f92c1277dbd88a5f345cebdb837e23974\n"
    },
    {
      "commit": "62d60f07425936dddbdd567ea902089d07e41139",
      "tree": "15a2444a5f2b595b5a6b3ab28f3aa366b07a9eb8",
      "parents": [
        "6c5157eaa8682ee60db576c49fcf56a3d61174f0"
      ],
      "author": {
        "name": "Dongwon Kang",
        "email": "dwkang@google.com",
        "time": "Mon Dec 10 22:06:56 2018 -0800"
      },
      "committer": {
        "name": "Dongwon Kang",
        "email": "dwkang@google.com",
        "time": "Mon Dec 10 22:13:20 2018 -0800"
      },
      "message": "Fix the api level annotation for AMediaCodec_getBufferFormat\n\nTest: build\nChange-Id: I7e36b34e45b5eafce2f79e89c704f562afc4d653\n"
    },
    {
      "commit": "b8aca87eb2367136b10f5d7264f12b389af28d23",
      "tree": "4ba972fdc0aaf75afce260fed123f4ca69297a60",
      "parents": [
        "0422892023dcd4616f00028fd223fef056bc0e16"
      ],
      "author": {
        "name": "dimitry",
        "email": "dimitry@google.com",
        "time": "Tue Dec 04 15:58:40 2018 +0100"
      },
      "committer": {
        "name": "dimitry",
        "email": "dimitry@google.com",
        "time": "Fri Dec 07 17:58:04 2018 +0100"
      },
      "message": "Apply version-script to libmediandk library\n\nThis change also remove some redundancies in include file\nand actualizes list of exported AMEDIAFORMAT_ variables for 29 sdk\nversion. Also adds AMediaCodec_getBufferFormat to the list.\n\nBug: http://b/69603741\nTest: make\nChange-Id: I1fd7d1d3dfdd567aa7398c48117c60344bd5e109\n"
    },
    {
      "commit": "0e043b67ee430bc807971a5ffb29c653501ce99c",
      "tree": "d48612310795acb3478370ae141a63274b06f8b8",
      "parents": [
        "b6670e3dbe3ca63d6766ae45de809ea97590d817"
      ],
      "author": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Wed Nov 14 11:26:05 2018 -0800"
      },
      "committer": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Thu Dec 06 10:10:06 2018 -0800"
      },
      "message": "C-ify MediaBuffer\n\nBug: 111407253\nTest: CTS, manual\nChange-Id: Id20094f23d9d0dc0ec23127bbedc62c6e29944bd\n"
    },
    {
      "commit": "0ac73a5dd0db5f6b67b4c21a9ab5e28d5ab532bd",
      "tree": "bb7acb89d31b2f6500ec15f6bedb73dca64dd3af",
      "parents": [
        "3df5310387cb396892d49f3576ba52a22413baa6"
      ],
      "author": {
        "name": "Sampath Shetty",
        "email": "Sampath.Shetty@dolby.com",
        "time": "Tue Mar 27 15:16:35 2018 +1100"
      },
      "committer": {
        "name": "Mikhail Naganov",
        "email": "mnaganov@google.com",
        "time": "Mon Nov 26 15:24:12 2018 -0800"
      },
      "message": "Extract AudioPresentations from AC4 in MP4 and TS\n\nTranslates MPEG-4 AC4 DSI AC4Presentations to AudioPresentation.\nParses MPEG2-TS audio preselection descriptors from MPEG2-TS.\nAdds AudioPresentationInfo interface to native MediaExtractor.\n\nTest: Manually test\nBug: 119312182\nChange-Id: I61286b38543e114aeaef331aa013bc2d2d7626c3\n"
    },
    {
      "commit": "dba610b7167d19e2661c8e70811e0d45143b7b0f",
      "tree": "427bb9ac32ca28277dc8e043b27c966c79d39520",
      "parents": [
        "3d560e516016f346ba91e7d5bd9f3fe809f02455"
      ],
      "author": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Thu Nov 01 16:07:03 2018 -0700"
      },
      "committer": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Tue Nov 13 11:39:36 2018 -0800"
      },
      "message": "Make MP4 extractor use AMediaFormat\n\nBug: 111407253\nTest: manual, CTS\nChange-Id: I43fcd270134d653a58715e1da38658d307a59774\n"
    },
    {
      "commit": "f9d217fa520769a24a7c238e3530f473e84a925f",
      "tree": "884717e3374494354ef10c1823265f4d1abf94b2",
      "parents": [
        "72d195f9e2bfda19f9d38a0d53f50c7533211a43",
        "1cfbbecbcf518e51fc9277cafc8a1e0dddf1d89f"
      ],
      "author": {
        "name": "Shuzhen Wang",
        "email": "shuzhenwang@google.com",
        "time": "Wed Nov 07 05:54:41 2018 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Nov 07 05:54:41 2018 +0000"
      },
      "message": "Merge \"Camera: Add Y8 format in Camera NDK\""
    },
    {
      "commit": "7b9711c8f67e9fa8b5763e166b57dc93db91f086",
      "tree": "b8e1f66e425eb438e083b2bcea8e28f8487e00ac",
      "parents": [
        "69c9844bed34c367224d5f6219e8410664b2119b",
        "82a582759fd37671d9a2d4211754cd49fe6a9fdd"
      ],
      "author": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Fri Nov 02 21:47:27 2018 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Nov 02 21:47:27 2018 +0000"
      },
      "message": "Merge \"Set bits per sample for FLAC and WAV\""
    },
    {
      "commit": "82a582759fd37671d9a2d4211754cd49fe6a9fdd",
      "tree": "9de8f1cc59db0200ef5f8bb959ecefa8357814e8",
      "parents": [
        "824d1ff69c0487ee8ecdb8836ebfd056c2daf83e"
      ],
      "author": {
        "name": "Tomoharu Kasahara",
        "email": "tomoharu.kasahara@sony.com",
        "time": "Tue Jun 05 14:53:58 2018 +0900"
      },
      "committer": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Fri Nov 02 08:41:30 2018 -0700"
      },
      "message": "Set bits per sample for FLAC and WAV\n\nSet bits per sample in FLAC/WAV Extractors to be used in\nmetadataretriever.\n\nBug: 112986969\nTest: Check if bits per sample can be retrieved from FLAC\n\nChange-Id: I87f917c3bba9a7a852010355cadfb7247c5375f6\n"
    },
    {
      "commit": "90d62d9ba4915f208cb6b362adc899549ac4d0d9",
      "tree": "d596bdfd22ec3a6f69b1cc1798bce89d8d120eb3",
      "parents": [
        "9cc2d5ad2f14e5d19da5a543fad72df8d3ce8c00"
      ],
      "author": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Thu Oct 18 14:25:41 2018 -0700"
      },
      "committer": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Thu Nov 01 08:47:00 2018 -0700"
      },
      "message": "Make MKV extractor use AMediaFormat\n\nBug: 111407253\nTest: manual, CTS\n\nChange-Id: I10407f8536a3288093e2a92fd7e7910c0fce9779\n"
    },
    {
      "commit": "1cfbbecbcf518e51fc9277cafc8a1e0dddf1d89f",
      "tree": "8395215bf2866623505aed8f66d25664b6a5b411",
      "parents": [
        "e6d5668489e7d90f7cfbb06bbd54a73aef705f21"
      ],
      "author": {
        "name": "Shuzhen Wang",
        "email": "shuzhenwang@google.com",
        "time": "Mon Oct 08 13:55:28 2018 -0700"
      },
      "committer": {
        "name": "Shuzhen Wang",
        "email": "shuzhenwang@google.com",
        "time": "Mon Oct 29 07:43:47 2018 -0700"
      },
      "message": "Camera: Add Y8 format in Camera NDK\n\nTest: Camera CTS\nBug: 70216652\nChange-Id: Ib8436bcb8347ec82353afc8a89e9702d90ce6e53\n"
    },
    {
      "commit": "4d026f5583e1f61726b8d24569433a6b072ebf6e",
      "tree": "9546463d3800947bcb5f9708f5bab83e014ab3b8",
      "parents": [
        "fdd42e95352f85b2cb7833bc652dc32ec6dc34f9"
      ],
      "author": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Thu Oct 04 13:04:29 2018 -0700"
      },
      "committer": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Wed Oct 17 13:48:35 2018 -0700"
      },
      "message": "Convert Ogg and Flac extractors to use AMediaFormat\n\nBug: 111407253\nTest: manual, CTS\nChange-Id: I8aeb44ceeb831bb558cac1123f0aaade8163abf8\n"
    },
    {
      "commit": "e6427ed2de8eae6a0fce66e0537095a674ada3ae",
      "tree": "ed10fb2530049408e28fac403dcd77bd5d2618d4",
      "parents": [
        "262a5426d7e768105d82d5f9e0940435542a384b"
      ],
      "author": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Mon Oct 08 16:02:17 2018 -0700"
      },
      "committer": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Wed Oct 17 16:18:40 2018 +0000"
      },
      "message": "Convert MP3Extractor to use AMediaFormat\n\nExpand AMediaFormat with the required keys, and update the\nmeta\u003c-\u003emessage conversion helpers to translate the new keys.\n\nBug: 111407253\nTest: manual, CTS\nChange-Id: Ie2421191c4e101d73924fe6fa6ca452b69cf40f9\n"
    },
    {
      "commit": "9cb9bec05f049bb6f5505d3df38b16160bca3369",
      "tree": "b62775aa61fa0c7fb3f7d5d0694e27e3ee7d39a9",
      "parents": [
        "d734a499c29716716ebb34c4da8a9cc906d42ec9",
        "249e1f25e56c642dda70e1e7f48c9eef892c50f5"
      ],
      "author": {
        "name": "Jayant Chowdhary",
        "email": "jchowdhary@google.com",
        "time": "Fri Oct 12 00:05:40 2018 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Oct 12 00:05:40 2018 +0000"
      },
      "message": "Merge \"Add an llndk api to get a native handle corresponding to ANativeWindow in AImageReader.\""
    },
    {
      "commit": "5dcf85aa7666bf7efb5472e49c14c97c7b1bcefc",
      "tree": "d79d9f3603a571b14fdd5e7de9811ee14826331f",
      "parents": [
        "1e91e0ea18e4c267b54ae2e14c8c9f0a013188a7"
      ],
      "author": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Thu Oct 11 09:49:02 2018 -0700"
      },
      "committer": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Thu Oct 11 10:57:13 2018 -0700"
      },
      "message": "Use media_status_t instead of status_t in extractor interface\n\nBug: 111407253\nTest: CTS\n\nChange-Id: Iabf0e033f553a398b70bdf616261fbdabc6f71f8\n"
    },
    {
      "commit": "249e1f25e56c642dda70e1e7f48c9eef892c50f5",
      "tree": "363b751a1b0943a59efbfe09afc30f7b3c029796",
      "parents": [
        "1e91e0ea18e4c267b54ae2e14c8c9f0a013188a7"
      ],
      "author": {
        "name": "Jayant Chowdhary",
        "email": "jchowdhary@google.com",
        "time": "Mon Sep 24 15:07:45 2018 -0700"
      },
      "committer": {
        "name": "Jayant Chowdhary",
        "email": "jchowdhary@google.com",
        "time": "Thu Oct 11 10:44:23 2018 -0700"
      },
      "message": "Add an llndk api to get a native handle corresponding to ANativeWindow in AImageReader.\n\nSince vendor modules sometimes might need to transfer ANativeWindow(specific to\nAImageReader) over hidl to system processes, here, we introduce an llndk\nfunction to convert the ANativeWindow owned by AImageReader into a\nnative_handle_t which may be transported over hwbinder.\n\nWe also introduce a platform only api to retrieve an HIDL\nIGraphicBufferProducer from the handle received.\n\nBug: 110364143\n\nTest: mm -j64\nTest: AImageReaderWindowHandleTest\n\nChange-Id: I5f2aec41d9c67c619413c02e48cd97933e3b2986\nSigned-off-by: Jayant Chowdhary \u003cjchowdhary@google.com\u003e\n"
    },
    {
      "commit": "ca198ceeb8eb59d107fccbc92ebe02425b4aa775",
      "tree": "e3d6cb137b56ead64dc2be47cfa083179c838abe",
      "parents": [
        "b4e880abdcde87ff89937f4f8de819af0cfe371f"
      ],
      "author": {
        "name": "Robert Shih",
        "email": "robertshih@google.com",
        "time": "Sat Sep 22 16:31:55 2018 -0700"
      },
      "committer": {
        "name": "Robert Shih",
        "email": "robertshih@google.com",
        "time": "Thu Oct 04 15:33:31 2018 -0700"
      },
      "message": "AMediaDataSource: add getAvailableSize callback\n\nBug: 109928575\nTest: android.media.cts.NativeDecoderTest#testExtractorCachedDurationNative\nChange-Id: I77af46e58bd81bc24a8682d6d2a48646c5f13e8f\n"
    },
    {
      "commit": "82248d1d38eedf04380e3d43c346db62eb1a7e43",
      "tree": "1a8e528c053196d181f96419158a57b757d4a806",
      "parents": [
        "66b4c2c74829721f7e12de810b936e5e323a51dd"
      ],
      "author": {
        "name": "Robert Shih",
        "email": "robertshih@google.com",
        "time": "Wed Oct 03 15:57:47 2018 -0700"
      },
      "committer": {
        "name": "Robert Shih",
        "email": "robertshih@google.com",
        "time": "Wed Oct 03 15:58:46 2018 -0700"
      },
      "message": "NdkMediaExtractor: remove setDataSourceWithHeaders\n\nBug: 109928575\nChange-Id: I0c0b117a3a96dfa2b0e8e43c60729b9661ad9d7c\n"
    },
    {
      "commit": "dabe9d9fd2a214e22e9becdebdc04c1a5900a196",
      "tree": "a8f93fe86fe2286bf24f3dbf72b0d82df304a2f8",
      "parents": [
        "3fd57dd2fcfa61c688f49bad449be8e0b93e61a7"
      ],
      "author": {
        "name": "Robert Shih",
        "email": "robertshih@google.com",
        "time": "Sat Sep 22 16:18:05 2018 -0700"
      },
      "committer": {
        "name": "Robert Shih",
        "email": "robertshih@google.com",
        "time": "Thu Sep 27 14:44:59 2018 -0700"
      },
      "message": "AMediaDataSource close API\n\nBug: 109928575\nChange-Id: I6b5ed82df7fc206b1c23e6b850305bf3484d0664\n"
    },
    {
      "commit": "2568eb973cdb8d7e31d3077740bac4aec66c28a9",
      "tree": "287f83f9e0bde6ad9513cb33eb55d2126081f47b",
      "parents": [
        "b3dac3fd55058ed57c5372206259d6417c6a74d7"
      ],
      "author": {
        "name": "Robert Shih",
        "email": "robertshih@google.com",
        "time": "Wed Sep 19 10:00:46 2018 -0700"
      },
      "committer": {
        "name": "Robert Shih",
        "email": "robertshih@google.com",
        "time": "Sun Sep 23 16:44:36 2018 -0700"
      },
      "message": "Introduce AMediaDataSource_newUri API\n\nBug: 109928575\nTest: android.media.cts.NativeDecoderTest#testExtractor\nChange-Id: I3471ffbbd2bef4fada0ed370c58468dacbed1b35\n"
    },
    {
      "commit": "a87a219b7eae100aa76c9bc045189e1cbb392c8f",
      "tree": "feeee31cfc3dfefa56ced6605b162fd78e7fd57f",
      "parents": [
        "8d4991797071989e51b08dd58cbe2635ef544f95",
        "6a59e4ae385b15bb3ef729b62bb34933ce3ce18d"
      ],
      "author": {
        "name": "Robert Shih",
        "email": "robertshih@google.com",
        "time": "Thu Sep 06 21:49:55 2018 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Sep 06 21:49:55 2018 +0000"
      },
      "message": "Merge \"NdkMediaExtractor: setDataSourceWithHeaders API\""
    },
    {
      "commit": "6a59e4ae385b15bb3ef729b62bb34933ce3ce18d",
      "tree": "1b9a54063e01208ae2965c405a840ff64073a260",
      "parents": [
        "e8198ce2bb3d27604dee02299c9de7117124cad2"
      ],
      "author": {
        "name": "Robert Shih",
        "email": "robertshih@google.com",
        "time": "Thu Aug 30 13:31:28 2018 -0700"
      },
      "committer": {
        "name": "Robert Shih",
        "email": "robertshih@google.com",
        "time": "Thu Sep 06 11:07:04 2018 -0700"
      },
      "message": "NdkMediaExtractor: setDataSourceWithHeaders API\n\nBug: 109928575\nChange-Id: I90e9f6c9d6408f5c577ba75c9792bed589cee304\n"
    },
    {
      "commit": "72882de6e16efb89ddfdb166917a91fff95325da",
      "tree": "709713a7f1223d2686af02394f5d30527850d6b1",
      "parents": [
        "f7996c2c055e617b71c654c2574b939400e9c42c",
        "ad02cc6c4091a44fb60c475731c8f4cac9a55ab0"
      ],
      "author": {
        "name": "Edwin Wong",
        "email": "edwinwong@google.com",
        "time": "Wed Sep 05 16:58:45 2018 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Sep 05 16:58:45 2018 +0000"
      },
      "message": "Merge \"Add onExpirationUpdate and onKeyStatusChange listeners.\""
    },
    {
      "commit": "ad02cc6c4091a44fb60c475731c8f4cac9a55ab0",
      "tree": "feb915fc8d4ab255bb8dc71985acd8df2f18f3b3",
      "parents": [
        "15530ac49cc9af87ab0141e0875f23f8bd6b4264"
      ],
      "author": {
        "name": "Edwin Wong",
        "email": "edwinwong@google.com",
        "time": "Thu Aug 23 13:48:27 2018 -0700"
      },
      "committer": {
        "name": "Edwin Wong",
        "email": "edwinwong@google.com",
        "time": "Thu Aug 30 15:39:58 2018 -0700"
      },
      "message": "Add onExpirationUpdate and onKeyStatusChange listeners.\n\nWe must only create one DrmListener instance.\nWe then process different listeners in DrmListener::notify.\n\nTo facilitate testing, we call the listeners from clearkey plugin\u0027s\nprovideKeyResponse function. We have previously tested\nEventType::VENDOR_DEFINED in the same manner.\n\nbug: 77712870\n\nTest: native CTS test testClearKeyPlaybackCenc\nTest: CTS MediaDrmMockTest\nChange-Id: Ie15e3012a4068824f72371a66e9fca2ee27180f8\n"
    },
    {
      "commit": "98603d8711b10969ba770fbb19774201212207a1",
      "tree": "f4cbd7d89e49d348ec4f42e32c45509b2acbcefa",
      "parents": [
        "ddc47d47a956e7b67449f2345ccf481e025ca62d"
      ],
      "author": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Tue Jul 17 11:06:55 2018 -0700"
      },
      "committer": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Fri Aug 24 09:43:09 2018 -0700"
      },
      "message": "Add AMediaFormat functions to clear and copy\n\nAlso move NdkMediaFormat internals to libmedia to avoid a future circular\ndependency between libmedia and libmediandk.\n\nBug: 111407253\nTest: build, boot, play some files\n\nChange-Id: I54d91439f216c3834726e5505afef40dc0d93e67\n"
    },
    {
      "commit": "c2039dc505ec5dcc2b5d2f80a3957be1684913a8",
      "tree": "e076e57d3ae9e6b0ac851bc2d909d25c7c4e9ef0",
      "parents": [
        "29faebcc17e3138e394477301901d43a21fd4676"
      ],
      "author": {
        "name": "Ryan Prichard",
        "email": "rprichard@google.com",
        "time": "Thu Jul 19 18:30:29 2018 -0700"
      },
      "committer": {
        "name": "Ryan Prichard",
        "email": "rprichard@google.com",
        "time": "Mon Jul 23 23:37:49 2018 +0000"
      },
      "message": "Fix NdkImage.h includes\n\nIt needs stdint.h.\n\nIt\u0027s OK to include android/hardware_buffer.h on pre-26. We\u0027d like to remove\nthe __ANDROID_API__ guard around AImage_getHardwareBuffer, and if/when we\ndo, we\u0027ll need android/hardware_buffer.h. The last time we removed the\n__ANDROID_API__ guards around the APIs, we forgot to remove the one around\nthis #include.\n\nBug: http://b/111130072#comment12\nTest: builds\nChange-Id: Ice8073476d4ad4802e3540f15eee3af29e0b891f\n"
    },
    {
      "commit": "0c9470cec23a62876c398bc6ab9ac7e1588e2bba",
      "tree": "b0d1fc537e43042828e72d23404f2b6b82455150",
      "parents": [
        "e0ec2e3fb2da0d7617f58e0cdbbbb83a75a8d1f0"
      ],
      "author": {
        "name": "Ryan Prichard",
        "email": "rprichard@google.com",
        "time": "Thu Jul 19 18:03:48 2018 -0700"
      },
      "committer": {
        "name": "Ryan Prichard",
        "email": "rprichard@google.com",
        "time": "Fri Jul 20 23:08:35 2018 +0000"
      },
      "message": "Restore __ANDROID_API__ guards for camera/media headers\n\nPartial revert of \"Add __INTRODUCED_IN to audio/camera/media headers.\",\ncommit 85a41536a4885b12120ddafb4d0b3fee8a8613b6.\n\nRestore the API guards where they used to exist. I *could* add\n__ANDROID_API__ around only the function declarations, which is what the\nversioner would do, but the function declarations are mixed up with the\ntypes and constants, so I\u0027d need to add a bunch of __ANDROID_API__ checks\nor reorganize the headers.\n\nNdkMediaFormat.h and AAudio.h still have __INTRODUCED_IN symbols that\naren\u0027t guarded by __ANDROID_API__. Maybe those files should be reorganized\nso they don\u0027t alternate between APIs so much.\n\nTest: builds\nBug: http://b/111668906\nChange-Id: I757a6097f7840ea50e2fc92db7defef493097672\n"
    },
    {
      "commit": "40863cba7685f3f42041f0a66986cef4c1949d48",
      "tree": "5384cfe82211f7bde3a1dca29267b6e7c0facfc0",
      "parents": [
        "cd56a1c2a0adcd21aad3a64c761aa3562d915be1"
      ],
      "author": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Mon Jul 09 15:21:14 2018 -0700"
      },
      "committer": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Mon Jul 09 15:24:15 2018 -0700"
      },
      "message": "Fix copy/paste error\n\nTest: build\nChange-Id: I176209b42312e19eb831946dc2f7592266e363e4\n"
    },
    {
      "commit": "185a4a5ff90cc0a3e13e82877341a5493af8f86f",
      "tree": "c86ed468ba14830d24f858bec50d2addeb4761be",
      "parents": [
        "e2d5f7bc3b45a2dc3e072f02d6efdcc767e49c4e"
      ],
      "author": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Fri Jun 29 13:00:06 2018 -0700"
      },
      "committer": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Fri Jun 29 13:00:06 2018 -0700"
      },
      "message": "Annotate remaining AMEDIAFORMAT variables\n\nTest: build\nChange-Id: I9a37defebd6824ec994887f88958a949228d1da1\n"
    },
    {
      "commit": "e2d5f7bc3b45a2dc3e072f02d6efdcc767e49c4e",
      "tree": "2bfa2ae6dae76523751ac6567dc623b1ac116df8",
      "parents": [
        "ed9b963791527782aa08938f8fa080189756cb44"
      ],
      "author": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Fri Jun 29 09:56:21 2018 -0700"
      },
      "committer": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Fri Jun 29 09:56:21 2018 -0700"
      },
      "message": "Add __INTRODUCED_IN to more NdkMediaFormat.h variables\n\nAnnotate the ones that were added when the NDK media APIs were first\nadded in API 21\n\nTest: build\nChange-Id: Id60039944981f3af56571f2de31e7989e4d377a2\n"
    },
    {
      "commit": "0429f4094a5fc72a2af652df2ff8c1670937a13c",
      "tree": "02425a5f06329202a183a30e2220c2c6cebc1259",
      "parents": [
        "233ce1b552f23acefbd6160b2c92c5f63390003e"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Thu Jun 28 14:22:23 2018 -0700"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Thu Jun 28 14:22:23 2018 -0700"
      },
      "message": "Add __INTRODUCED_IN to NdkMediaFormat.h variables too.\n\nBug: https://github.com/android-ndk/ndk/issues/706\nTest: builds\nChange-Id: I5612b0d255f8d6a3dadffdc333adfd564073c52e\n"
    },
    {
      "commit": "233ce1b552f23acefbd6160b2c92c5f63390003e",
      "tree": "2d54c8061738890e43f9b6d21e432d58645856c5",
      "parents": [
        "e7c5039154a907d298fd552f7840e64b2c140331"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Mon Jun 18 13:17:24 2018 -0700"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Thu Jun 28 14:21:44 2018 -0700"
      },
      "message": "Add __INTRODUCED_IN to audio/camera/media headers.\n\nBug: https://github.com/android-ndk/ndk/issues/706\nTest: builds\nChange-Id: I519d4fd825d40c3f72515f29a7e5b12c23a1749a\nExempt-From-Owner-Approval: cherrypick\n(cherry picked from commit 85a41536a4885b12120ddafb4d0b3fee8a8613b6)\n"
    },
    {
      "commit": "ad33f439ee2946eae0d72221d2ac08600d95410b",
      "tree": "26156b75a094808b7c9efff37506b425ca489b4b",
      "parents": [
        "c55ede9dab97eba7ebd573f475864aa58cc4f493",
        "036e93aa100246e7089fcd7b800e400fb122275c"
      ],
      "author": {
        "name": "Robert Shih",
        "email": "robertshih@google.com",
        "time": "Fri Apr 27 17:50:45 2018 -0700"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Fri Apr 27 17:50:45 2018 -0700"
      },
      "message": "Merge \"NdkMediaExtractor: remove `disconnect` from NDK headers\" into pi-dev\nam: 036e93aa10\n\nChange-Id: I6d32a7e9385379a8ea356be600972a1c70b344e6\n"
    },
    {
      "commit": "3fd320dac30e103a47bdbcf1897deac3d08f99e9",
      "tree": "88073126277312b68ec8726b7fc61e4c7cc59397",
      "parents": [
        "64da22285776f07a775afd45f9fc36cea1aa05e3"
      ],
      "author": {
        "name": "Robert Shih",
        "email": "robertshih@google.com",
        "time": "Thu Apr 26 16:21:29 2018 -0700"
      },
      "committer": {
        "name": "Robert Shih",
        "email": "robertshih@google.com",
        "time": "Fri Apr 27 22:26:21 2018 +0000"
      },
      "message": "NdkMediaExtractor: remove `disconnect` from NDK headers\n\nBug: 63934228\nChange-Id: I74f0564bb75dffb934931d0e5f1d34b17916f2b8\n"
    },
    {
      "commit": "34e456842d7445feeb12f609c96c1c88223d2103",
      "tree": "2dab40c609fc49225883b3e651e8fd11f5cd7cc1",
      "parents": [
        "e61d413a0f85d53018eddecfd84ce9b743363f9b",
        "83b7c1b3f0c06a353af5e53f0c226d262509e11e"
      ],
      "author": {
        "name": "Dan Albert",
        "email": "danalbert@google.com",
        "time": "Tue Apr 17 13:18:39 2018 -0700"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Tue Apr 17 13:18:39 2018 -0700"
      },
      "message": "Merge \"Add missing @addtogroup tags.\" am: 91a45a421b\nam: 83b7c1b3f0\n\nChange-Id: Ifa51bd9afb4029a209410db0a9f3d2d69ddee18d\n"
    },
    {
      "commit": "ec6cd639bd8fe4bf2f74492c537aec1c54cbb783",
      "tree": "119039c1eec70ad31e2a3bba12a32c2708e6b5ee",
      "parents": [
        "cb3046d011f9211b35412a876361576282408242"
      ],
      "author": {
        "name": "Dan Albert",
        "email": "danalbert@google.com",
        "time": "Fri Apr 13 15:57:25 2018 -0700"
      },
      "committer": {
        "name": "Dan Albert",
        "email": "danalbert@google.com",
        "time": "Fri Apr 13 15:57:25 2018 -0700"
      },
      "message": "Add missing @addtogroup tags.\n\nThese NDK docs weren\u0027t in any groups, so they don\u0027t show up in the\nnew site.\n\nTest: https://irina-dot-devsite.googleplex.com/ndk/reference/group/media\nBug: Bug: http://b/77236573\nChange-Id: Ie01f4387618bc36706683d684f0b97eb27a1c951\n"
    },
    {
      "commit": "69f64fef23a33837f2605019f749c28f7dfc02f9",
      "tree": "99c26a1d65f5774847c9aa61529d701b18927ba8",
      "parents": [
        "e1d2f7dd9b8f153fc581144ab4d4a77c6241918a"
      ],
      "author": {
        "name": "Krzysztof Kosiński",
        "email": "krzysio@google.com",
        "time": "Tue Mar 27 20:49:43 2018 -0700"
      },
      "committer": {
        "name": "Krzysztof Kosiński",
        "email": "krzysio@google.com",
        "time": "Wed Mar 28 13:29:43 2018 -0700"
      },
      "message": "frameworks/av: Documentation fixes for AImage and AImageReader.\n\nBug: 64805809\nTest: Not necessary, documentation-only change.\nChange-Id: I87c9a8cc276b1d01852f2371d8eaf766eb0a834d\n"
    },
    {
      "commit": "67d5b91f2fa0b106c038e642225e3b538db2be2e",
      "tree": "3450723f9600a1ddf4af2735423a85d1a5f8d1c9",
      "parents": [
        "3f21345e16b77c49042f5c13ceb62b0c35699561"
      ],
      "author": {
        "name": "Chong Zhang",
        "email": "chz@google.com",
        "time": "Wed Mar 14 18:17:40 2018 -0700"
      },
      "committer": {
        "name": "Chong Zhang",
        "email": "chz@google.com",
        "time": "Thu Mar 15 16:00:21 2018 -0700"
      },
      "message": "heif: renaming of grid-{width,height} to tile-{width,height}\n\nSo that it\u0027s not confused with grid dimensions.\n\nbug: 74831433\n\nChange-Id: I29188c6527c2315cbc66157a0a5b68a0d11fecc4\n"
    },
    {
      "commit": "08eb908098436ce8cc1faf0f009ced1a8fa32c9a",
      "tree": "98056726426c3948dd21cc1b7d855e30e89f903e",
      "parents": [
        "0df1e8d08aeb50771bdae54f77088f31531c4cb0"
      ],
      "author": {
        "name": "Robert Shih",
        "email": "robertshih@google.com",
        "time": "Fri Mar 09 13:57:26 2018 -0800"
      },
      "committer": {
        "name": "Robert Shih",
        "email": "robertshih@google.com",
        "time": "Tue Mar 13 11:12:33 2018 -0700"
      },
      "message": "NdkMediaExtractor: add disconnect API\n\nBug: 63934228\nChange-Id: I89c57fae387958d204df9c736e89654868ee5941\n"
    },
    {
      "commit": "0cd95065c5d293f0d6e53cd75e44d20106dd2e6e",
      "tree": "a6f501e0ab021946977d8d395ed254e9f36e9283",
      "parents": [
        "bb32f8706f7c7b15c9d1822e9514494864883bd0"
      ],
      "author": {
        "name": "Robert Shih",
        "email": "robertshih@google.com",
        "time": "Sun Jan 21 17:41:16 2018 -0800"
      },
      "committer": {
        "name": "Robert Shih",
        "email": "robertshih@google.com",
        "time": "Mon Mar 05 20:56:57 2018 -0800"
      },
      "message": "nuplayer2: port GenericSource2 to NDK APIs\n\nBug: 63934228\nChange-Id: I8bddacf5ce9eb8f22f3d4a945e0a7db1b52628d3\n"
    },
    {
      "commit": "d83d4f4a43616f38217591ba2d3f10d77fd4e748",
      "tree": "8c4c462635c15290a3436b01dc2614caade4ff84",
      "parents": [
        "b95a5989190a427a7ea092dc18741af524009bdb"
      ],
      "author": {
        "name": "Robert Shih",
        "email": "robertshih@google.com",
        "time": "Sat Feb 24 19:02:46 2018 -0800"
      },
      "committer": {
        "name": "Robert Shih",
        "email": "robertshih@google.com",
        "time": "Mon Mar 05 20:36:13 2018 +0000"
      },
      "message": "NdkMediaExtractor: per-sample format metadata API\n\nBug: 63934228\nTest: MediaPlayer2Test\nChange-Id: I8ac081ba91152b1bb2e7bb61bf6977f90bcb8e3c\n"
    },
    {
      "commit": "a1d39ba72fd92df6b447939b1bbede5c56df17e6",
      "tree": "54fff7206b48bd7123929128a4fc1e2b1d0a44d4",
      "parents": [
        "062ffd042fcbd237f445d499bc8ea8c5baf61d98"
      ],
      "author": {
        "name": "Guang Zhu",
        "email": "guangzhu@google.com",
        "time": "Fri Mar 02 04:33:02 2018 +0000"
      },
      "committer": {
        "name": "Guang Zhu",
        "email": "guangzhu@google.com",
        "time": "Fri Mar 02 04:33:02 2018 +0000"
      },
      "message": "Revert \"NdkMediaExtractor: per-sample format metadata API\"\n\nThis reverts commit 062ffd042fcbd237f445d499bc8ea8c5baf61d98.\n\nBug: 63934228\nBug: 74089496\n\nReason for revert: original change bypassed presubmit, causing mediaextractor crash, \n\nChange-Id: Iac4c49659dfa7415908d60da98a2285c583a1196\n"
    },
    {
      "commit": "062ffd042fcbd237f445d499bc8ea8c5baf61d98",
      "tree": "689681687a4f67f44b6532a904718eb984919c25",
      "parents": [
        "006b7eebe4c86eba7a67471d99b061b6b76177f5"
      ],
      "author": {
        "name": "Robert Shih",
        "email": "robertshih@google.com",
        "time": "Sat Feb 24 19:02:46 2018 -0800"
      },
      "committer": {
        "name": "Robert Shih",
        "email": "robertshih@google.com",
        "time": "Thu Mar 01 14:11:11 2018 -0800"
      },
      "message": "NdkMediaExtractor: per-sample format metadata API\n\nBug: 63934228\nTest: MediaPlayer2Test\nChange-Id: I3e6dc40d39bcb6d939ef7c555c2373995a9b6ae4\n"
    },
    {
      "commit": "45b88d22fdf6619ff9901d553d6933911045366d",
      "tree": "8af094fde26db0567481638a3aa8d9fbdf1ee63a",
      "parents": [
        "65fdcf74e09717b6e67fa90ff78af45f2c9414cc"
      ],
      "author": {
        "name": "Robert Shih",
        "email": "robertshih@google.com",
        "time": "Mon Feb 05 13:52:39 2018 -0800"
      },
      "committer": {
        "name": "Robert Shih",
        "email": "robertshih@google.com",
        "time": "Mon Feb 05 14:58:03 2018 -0800"
      },
      "message": "ndk data source: add close API\n\nBug: 63934228\nChange-Id: I4d5f0d6d6bee22d9ef61b85343beffa9e8bd5e74\n"
    },
    {
      "commit": "30e3c7d2f0c08ee6e1f5a466732faa341868b597",
      "tree": "d8983c4e123076638565a1f0676f2ffc1ed9f78d",
      "parents": [
        "b2eb24b64f4a7bd367caaee345ca73271ce9af51"
      ],
      "author": {
        "name": "Robert Shih",
        "email": "robertshih@google.com",
        "time": "Sun Jan 21 17:06:12 2018 -0800"
      },
      "committer": {
        "name": "Robert Shih",
        "email": "robertshih@google.com",
        "time": "Fri Jan 26 20:28:39 2018 +0000"
      },
      "message": "Ndk extractor: add cached duration, file format and sample size API\n\nBug: 63934228\nChange-Id: I965f58ac77eb2561979926f54adc4f6e16d44718\n"
    },
    {
      "commit": "0df451b305aa6095384741c713759a37e3f3f171",
      "tree": "7e88d0f71651743f1e7a07a63aeee69b12d2fcb7",
      "parents": [
        "bbcbbe4fa36faaca4b066287bd0998c71752d96e"
      ],
      "author": {
        "name": "Robert Shih",
        "email": "robertshih@google.com",
        "time": "Fri Dec 08 14:16:50 2017 -0800"
      },
      "committer": {
        "name": "Robert Shih",
        "email": "robertshih@google.com",
        "time": "Wed Jan 24 13:50:08 2018 -0800"
      },
      "message": "Add NdkMediaDataSource/AMediaDataSource\n\nAMediaDataSource is an interface for supplying raw data to the NDK\nmedia framework.\n\nTest: compiles\nBug: 69805888\nChange-Id: I085cacf2f1898db2f16b7f69b932b61744a3f47d\n"
    },
    {
      "commit": "00cc9920de386f711d0962ac7e3209af2b0d90d9",
      "tree": "373bc5d53d06719cf75699a04b79b7c7b2614725",
      "parents": [
        "cd742b9174eac9f8b6a108512818f2d3a2392ea8"
      ],
      "author": {
        "name": "Wei Jia",
        "email": "wjia@google.com",
        "time": "Thu Nov 23 08:00:34 2017 -0800"
      },
      "committer": {
        "name": "Wei Jia",
        "email": "wjia@google.com",
        "time": "Tue Dec 05 13:34:01 2017 -0800"
      },
      "message": "NdkMedia: add more API\u0027s in MediaCodec and MediaFormat\n\nAdd asynchronous mode in NdkMediaCodec, enrich NdkMediaFormat,\nTest: MediaPlayer can playback streams, pass continuous media CTS tests\nBug: 69805888\n\nChange-Id: Ida52f3c67588f96a007355b14eeb11deaab7089b\n"
    },
    {
      "commit": "981d3eac29a7fe2253ed1e3fd949fce77a2bdd8d",
      "tree": "1f14e91ef10a7714610423dc9271d04a0ec9ad5d",
      "parents": [
        "60e8acf51c7ee65bf6317e186c4768f3f93d647d"
      ],
      "author": {
        "name": "Quddus Chong",
        "email": "quddusc@google.com",
        "time": "Mon Oct 30 11:39:43 2017 -0700"
      },
      "committer": {
        "name": "Quddus Chong",
        "email": "quddusc@google.com",
        "time": "Mon Oct 30 11:39:43 2017 -0700"
      },
      "message": "docs: Fix Doxygen formatting issues in comments, including hidden comment block, code font formatting, and broken link.\n\nTest: Verified by manually generating docs using Doxygen.\nChange-Id: Ifaeb72f9546783d8c2d72c040462d87fa3209469\n"
    },
    {
      "commit": "fe0597c0556210d45ea145337827129c55f89507",
      "tree": "a754d1496b6e0c1c69057b66f0ccffe47faf84a7",
      "parents": [
        "a2a8eaf550810e7275b8ec4940efea06274565b0",
        "2c32f4d2e887178a83bfa3d2d2097b4581fb412e"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Fri Oct 13 16:17:52 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Oct 13 16:17:52 2017 +0000"
      },
      "message": "Merge \"NdkMediaCodec: add AMediaCodec_getBufferFormat\""
    },
    {
      "commit": "2c32f4d2e887178a83bfa3d2d2097b4581fb412e",
      "tree": "2f1eff87d1407182e740aa422cb3415deb216fa4",
      "parents": [
        "b45a3c22e6895abfaf29ebb52116f29b39ad71cd"
      ],
      "author": {
        "name": "Manikanta Kanamarlapudi",
        "email": "kmanikan@codeaurora.org",
        "time": "Fri Jul 07 16:24:31 2017 +0530"
      },
      "committer": {
        "name": "Alexey Polyudov",
        "email": "apolyudov@google.com",
        "time": "Thu Oct 12 17:44:42 2017 -0700"
      },
      "message": "NdkMediaCodec: add AMediaCodec_getBufferFormat\n\nAdd new AMediaCodec_getBufferFormat api to get\nformat of the buffer of specified index.\n\nChange-Id: Ib5d6537b601dc8ce9c5c0096485637e0cf44a16a\n"
    },
    {
      "commit": "89224466a6c38d498f3794bca8ed3cd7ca1887e0",
      "tree": "b98ec8267f57566c5154798701a0b543e6b52537",
      "parents": [
        "606174973c928b5a27d9c3ce761af0088728ecb9",
        "d32aab8c29b466e072dad54ccc62af200c24ff96"
      ],
      "author": {
        "name": "Dan Albert",
        "email": "danalbert@google.com",
        "time": "Thu Oct 12 20:37:54 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Thu Oct 12 20:37:54 2017 +0000"
      },
      "message": "Merge \"Don\u0027t hide NDK types behind API level guards.\" am: 37dc3d2136 am: 23ac59ad8d\nam: d32aab8c29\n\nChange-Id: Ia12c48c93542aa9ca62377b033a2fed2d152d9b8\n"
    },
    {
      "commit": "5e496db43045b59bec22f9de7c7490f80e8f42df",
      "tree": "6eef65f7f7e87f198fe47538e48afd5943c58de5",
      "parents": [
        "16f2c1559c5722a6cd69fef3c17dc5756ba73fe6"
      ],
      "author": {
        "name": "Dan Albert",
        "email": "danalbert@google.com",
        "time": "Thu Oct 05 15:03:07 2017 -0700"
      },
      "committer": {
        "name": "Dan Albert",
        "email": "danalbert@google.com",
        "time": "Thu Oct 05 15:03:07 2017 -0700"
      },
      "message": "Don\u0027t hide NDK types behind API level guards.\n\nThe types are still needed if you want to target a lower API level\nand use dlsym to conditionally access new APIs when running on new\ndevices.\n\nTest: make checkbuild\nBug: https://github.com/android-ndk/ndk/issues/529\nChange-Id: If5e41102b1badfd47f3625656058196373f119b3\n"
    },
    {
      "commit": "a3c657a486080c547d4bce56403f85f59ec43d77",
      "tree": "9a6d666df7df8069060b43ecbe30f38a2fee9edd",
      "parents": [
        "a142612d6a5e793a6fabac64871ecdc33917f498",
        "2ee6848d1446de76833ed7ddee4ce658f6c318ca"
      ],
      "author": {
        "name": "Robert Shih",
        "email": "robertshih@google.com",
        "time": "Tue Sep 26 22:49:47 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Tue Sep 26 22:49:47 2017 +0000"
      },
      "message": "Merge \"NdkMediaCodec: typedef struct ANativeWindow ANativeWindow\" am: 700ba4e8b4 am: 8add7e58e1\nam: 2ee6848d14\n\nChange-Id: Id01aec0b604a329a0187bd41690e765eb411fec6\n"
    },
    {
      "commit": "f6d1049dfb04b6ba7cc7fe883c9e1689ed7ce174",
      "tree": "4fdcf4a1172f8856e4fe9ffdb3ce02fc8a6740c3",
      "parents": [
        "8798a2dd1ed81582dd7e06a775b46f77541e583a"
      ],
      "author": {
        "name": "Robert Shih",
        "email": "robertshih@google.com",
        "time": "Tue Sep 26 13:30:48 2017 -0700"
      },
      "committer": {
        "name": "Robert Shih",
        "email": "robertshih@google.com",
        "time": "Tue Sep 26 13:37:14 2017 -0700"
      },
      "message": "NdkMediaCodec: typedef struct ANativeWindow ANativeWindow\n\nBug: https://github.com/android-ndk/ndk/issues/528\nChange-Id: I7b1eeff43ab2ac77999ed4c2d231c0178d614659\n"
    },
    {
      "commit": "3a5f00beb6f318cd6f21b0d44892048513c8f61d",
      "tree": "2b9a42481b2aa1493d46310c5f2f95431be7bc55",
      "parents": [
        "52022aafedcc36294f07907153c1923bfc8657bc",
        "0ae1a57e2f8f1ad58eed812b5e2d61c1dcb49b7f"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Tue Sep 12 15:58:53 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Tue Sep 12 15:58:53 2017 +0000"
      },
      "message": "Merge \"Include \u003cassert.h\u003e for static_assert in C11.\" am: 67106b6dcc am: 143356c71e\nam: 0ae1a57e2f\n\nChange-Id: I06c3ce22d5c5f8daf65ce8373b7341fb67885b10\n"
    },
    {
      "commit": "67106b6dccd1d769dab01dc39131e1bcd2874ed2",
      "tree": "d038eeb040a402fca0321946b51a2455a8541aef",
      "parents": [
        "3812e3a9da9ddf04de434dbdf698ce834a7d2602",
        "0d62652a354182e54a7758b77fa1ad86f1645b25"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Tue Sep 12 15:46:17 2017 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Tue Sep 12 15:46:17 2017 +0000"
      },
      "message": "Merge \"Include \u003cassert.h\u003e for static_assert in C11.\""
    },
    {
      "commit": "6334a2cd33ee13d78ea9d85fe576c4680ddd1e19",
      "tree": "122979451e4880abcc9d55ad659832d569f8660e",
      "parents": [
        "d39eeefa60c46870701809ea88372a3bcad978d4",
        "217ae4fce2c0181cddf76c8b2b4caeb80bd454ed"
      ],
      "author": {
        "name": "Robert Shih",
        "email": "robertshih@google.com",
        "time": "Mon Sep 11 23:43:31 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Mon Sep 11 23:43:31 2017 +0000"
      },
      "message": "Merge \"NdkMediaCodec: mark new APIs as introduced in 26\" am: 3812e3a9da am: 5abb5638ad\nam: 217ae4fce2\n\nChange-Id: I94356e4b58b3dcf5d908eba8d8bde18f5970ed74\n"
    },
    {
      "commit": "8f61a2b0fcb8944f78aecf4b181302621a981645",
      "tree": "4225aed7aeaac31b72a18b72ebcc2b5489be43d4",
      "parents": [
        "b4030484016cefd946c50167e66d5a1a72ad7b96"
      ],
      "author": {
        "name": "Robert Shih",
        "email": "robertshih@google.com",
        "time": "Mon Sep 11 14:03:11 2017 -0700"
      },
      "committer": {
        "name": "Robert Shih",
        "email": "robertshih@google.com",
        "time": "Mon Sep 11 14:17:57 2017 -0700"
      },
      "message": "NdkMediaCodec: mark new APIs as introduced in 26\n\nThe following APIs are introduced in API 26:\nAMediaCodec_createInputSurface\nAMediaCodec_createPersistentInputSurface\nAMediaCodec_setInputSurface\nAMediaCodec_setParameters\nAMediaCodec_signalEndOfInputStream\n\nBug: 32746065\nChange-Id: I4899bbee8125974a06af1db8eb7c5b0382335e70\n"
    },
    {
      "commit": "0d62652a354182e54a7758b77fa1ad86f1645b25",
      "tree": "9736a2dbc4bc97befbc2d10cc6dc785b9a79450d",
      "parents": [
        "7fa5bce9882698c578141fe48984c93f561a9caa"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Mon Sep 11 13:07:20 2017 -0700"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Mon Sep 11 13:07:20 2017 -0700"
      },
      "message": "Include \u003cassert.h\u003e for static_assert in C11.\n\nBug: https://github.com/android-ndk/ndk/issues/511\nTest: builds\nChange-Id: I67aba75343c3f40f7beb592bc30f34f5422f6f27\n"
    },
    {
      "commit": "55ec25693db12f8f342378aac1f6a55ec4dd4957",
      "tree": "3c700af07b550aa04547d709d5b7c518b3c113ac",
      "parents": [
        "2eddd660f9140d50f4e49e7981580dee2356ff54"
      ],
      "author": {
        "name": "Jiwen \u0027Steve\u0027 Cai",
        "email": "jwcai@google.com",
        "time": "Wed Apr 12 15:56:41 2017 -0700"
      },
      "committer": {
        "name": "Ranjith Kagathi Ananda",
        "email": "ranjithkagathi@google.com",
        "time": "Tue Aug 01 21:03:46 2017 +0000"
      },
      "message": "AImageReader: Add support for private format\n\nThe private format was unsupported in API24, but since API26 added\ngetAHardwareBuffer for AImageReader, the format becomes useful now. It\nmaps to HAL_PIXEL_FORMAT_IMPLEMENTATION_DEFINED defined in\n\u003csystem/graphics.h\u003e.\n\nThis CL also updates the supported format/usage combination with the\nrule that if format is AIMAGE_FORMAT_PRIVATE, neither CPU_READ or\nCPU_READ_OFTEN is supported.\n\nBug: 37097572\nTest: AImageReaderCts, Graphics CTS\nChange-Id: Ide3db8c6ceb4504d6f198ea1d9526edecc3a56ad\n"
    },
    {
      "commit": "5c38332e6be30b6e218bf8e9c5c98ee5919f10a7",
      "tree": "a10afb65f9153b2ddb016875c30f14e4e7fd12ac",
      "parents": [
        "357552eb724722dc620c56d2151bdfad07467952",
        "cf6eb0a136cd9700c49992afa78d2c46236c2306"
      ],
      "author": {
        "name": "Dan Albert",
        "email": "danalbert@google.com",
        "time": "Wed Jul 19 21:34:17 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Wed Jul 19 21:34:17 2017 +0000"
      },
      "message": "Merge \"Use int32_t instead of off_t when necessary.\"\nam: cf6eb0a136\n\nChange-Id: Id68c84efd00693f3b0d11e4385a12debced4c1aa\n"
    },
    {
      "commit": "19abcd84905a6613b4869478a46b4a4087ab7f46",
      "tree": "d27c54dd5b8391b9a819e033c96478101e1cd5a0",
      "parents": [
        "ae6088e4563a4503df06566accda7e21f0ccdf0e"
      ],
      "author": {
        "name": "Dan Albert",
        "email": "danalbert@google.com",
        "time": "Mon Jul 17 13:37:56 2017 -0700"
      },
      "committer": {
        "name": "Dan Albert",
        "email": "danalbert@google.com",
        "time": "Tue Jul 18 22:38:46 2017 -0700"
      },
      "message": "Use int32_t instead of off_t when necessary.\n\nTest: make checkbuild\nBug: https://github.com/android-ndk/ndk/issues/459\nChange-Id: I72528ca13d1f82debec977efbab62e638b000dfc\n"
    },
    {
      "commit": "327bdc1e57d2df6e7c54e31224d9975bcbdaf11b",
      "tree": "08f90cc5c31ad28e8a950d3ad9ddc66188205855",
      "parents": [
        "b394bf39f582208d2025fc147202add359f3c5b5",
        "25f5ece09fc045850785f09ddd9193e45b52c9d3"
      ],
      "author": {
        "name": "Quddus Chong",
        "email": "quddusc@google.com",
        "time": "Wed Jun 07 17:45:01 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Wed Jun 07 17:45:01 2017 +0000"
      },
      "message": "docs: Fix groupname for Media API ref docs. Test: Verified by manually generating docs.\nam: 25f5ece09f\n\nChange-Id: Ic21a2050daa5f51d1eaa626ee537c286313c8b8c\n"
    },
    {
      "commit": "11ed3fecdf3b5d97cc8390b32b5319bae4e901e1",
      "tree": "060382626b81b08dda4e8ab5febf3fa7b20d9ac0",
      "parents": [
        "a33999bab96f0ee1f44816cb3b5c1312bc2a4f91"
      ],
      "author": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Thu May 04 18:30:44 2017 -0700"
      },
      "committer": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Fri May 05 13:03:02 2017 -0700"
      },
      "message": "Move libmediandk and libcamera2ndk headers\n\nMove libmediandk and libcamera2ndk headers into their module\nand export them from there.  Also move them to the same path\nrelative to the export as used in the NDK, media/ for\nlibmediandk and camera/ for libcamera2ndk.\n\nTest: builds\nChange-Id: I0b424e0e48bfb5e2b762694a97d799de08f5dda3\nMerged-In: I0b424e0e48bfb5e2b762694a97d799de08f5dda3\n(cherry picked from commit 7e8d4ba5887affda749978d787b898bf31fda729)\n"
    },
    {
      "commit": "1861819f4d0c52617039ff5e4abdffb1e69c166b",
      "tree": "ec115037fe2937f9abb4db010853787df512e6bf",
      "parents": [
        "af4d169e3f3ed1f0ed474e56c01cd57678e00d0a"
      ],
      "author": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Thu May 04 16:17:42 2017 -0700"
      },
      "committer": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Fri May 05 20:02:58 2017 +0000"
      },
      "message": "Move libmediandk and libcamera2ndk headers\n\nMove libmediandk and libcamera2ndk headers into their module\nand export them from there.  Also move them to the same path\nrelative to the export as used in the NDK, media/ for\nlibmediandk and camera/ for libcamera2ndk.\n\nTest: builds\nChange-Id: I0b424e0e48bfb5e2b762694a97d799de08f5dda3\n(cherry picked from commit 7e8d4ba5887affda749978d787b898bf31fda729)\n"
    }
  ]
}
