)]}'
{
  "log": [
    {
      "commit": "9ecf2ddd93969a1f89eefa1d75d5369f62b99f32",
      "tree": "f0ca1016481767b32de2279cb54cf84d763af329",
      "parents": [
        "8a164b5dc573be01505df80d080149cd4c469bbb",
        "61f4db5b8bf7f5200407d7c0c709e7cfc87c18cf"
      ],
      "author": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Fri Oct 23 20:14:55 2020 +0000"
      },
      "committer": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Fri Oct 23 20:14:55 2020 +0000"
      },
      "message": "Merge \"Make the connection between implementation and llndk_library explicit\" am: ebd91fc559 am: 631cfd769e am: ef3de0791c am: 61f4db5b8b\n\nOriginal change: https://android-review.googlesource.com/c/platform/frameworks/av/+/1466513\n\nChange-Id: I38d5e4269c690a221962145e45101141d73871ee\n"
    },
    {
      "commit": "9b0f94aa2cfb8ea0d311f00f402a2ffb29685156",
      "tree": "5d8b8ca4728e921933f808f7d64bf77b8ad464c8",
      "parents": [
        "632056e5501f04200b51cced848c6ce94ea2b7d6"
      ],
      "author": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Mon Oct 19 13:37:55 2020 -0700"
      },
      "committer": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Mon Oct 19 13:37:55 2020 -0700"
      },
      "message": "Make the connection between implementation and llndk_library explicit\n\nInstead of assuming a module with the .llndk suffix exists, add an\nllndk_stubs property to every cc_library module that has a\ncorresponding llndk_library.  Also rename the llndk_library to have\nan explicit .llndk suffix.\n\nBug: 170784825\nTest: no changes to build.ninja (excluding comments) or Android-${TARGET_PRODUCT}.mk\nChange-Id: I362bf9ce1e7df8cea65410ac35c02f347b235d25\n"
    },
    {
      "commit": "722d712882a9a142fe6074265e039cb71a61a3c4",
      "tree": "121ad39dd2ffc2c59853434ae50c05625c434522",
      "parents": [
        "2526250c329d30b4456d99e9dd9be46633da4f7e"
      ],
      "author": {
        "name": "Chong Zhang",
        "email": "chz@google.com",
        "time": "Tue Sep 22 19:45:45 2020 -0700"
      },
      "committer": {
        "name": "Chong Zhang",
        "email": "chz@google.com",
        "time": "Tue Sep 22 20:16:04 2020 -0700"
      },
      "message": "Pass through slow-motion metadata buffer\n\nbug: 160260201\ntest: manually verify that a hard-coded slow-motion data buffer is\npassed through from plugin to MediaExtractor api level.\n\nChange-Id: I27f18d58b385194c5fc682c1d3947e9916e77f9e\n"
    },
    {
      "commit": "eb9aca6a5c4570b297138757cf66aa3be9f7f2a4",
      "tree": "4a5be1445ec73ede9471d77dd2b3b9c1c6aa16ae",
      "parents": [
        "ffebb80bd127ecebfc4af02fe481d048d0c9a29c"
      ],
      "author": {
        "name": "Chong Zhang",
        "email": "chz@google.com",
        "time": "Wed Sep 16 12:49:41 2020 -0700"
      },
      "committer": {
        "name": "Chong Zhang",
        "email": "chz@google.com",
        "time": "Wed Sep 16 20:32:48 2020 +0000"
      },
      "message": "Translate resource related errors in NdkMediaCodec\n\nNdkMediaCodec is not reporting resource lost errors properly.\nTranslate the error codes to match that in MediaCodec JNI.\n\nbug: 168307955\nbug: 154733526\nChange-Id: I4b3d0eecb55a31e4cd83407ff71ff16fb0557935\n"
    },
    {
      "commit": "daec9b4d36d1fb06811097117bfd673677bf5de1",
      "tree": "3768a8050028fcbf9275e9c42aa9fc6ef08938d5",
      "parents": [
        "e81c762f070ec730c1cf597cd75ea51a10b04f7a",
        "0ceb192fbeab7a0a36094dc47663c41a7e6e18ff"
      ],
      "author": {
        "name": "Victor Khimenko",
        "email": "khim@google.com",
        "time": "Wed Jul 08 00:43:32 2020 +0000"
      },
      "committer": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Wed Jul 08 00:43:32 2020 +0000"
      },
      "message": "Merge \"Make media_ndk_headers buildable for native_bridge\" am: 1fa576bf62 am: fabeabe287 am: c749e3aa8c am: edf39cf9b8 am: 0ceb192fbe\n\nOriginal change: https://android-review.googlesource.com/c/platform/frameworks/av/+/1354648\n\nChange-Id: I61b5dcc9e0b8fe30205bb94ca1979c7807b9d018\n"
    },
    {
      "commit": "c749e3aa8cef435ff355d4d97691f34b34c8187a",
      "tree": "1e3aaa401c0bada9d9fe213a59e8e8f22b8fd253",
      "parents": [
        "3257b3657bc3c4baef54aa228ac176bd9036c277",
        "fabeabe287465982803ebe5366c6eeae973bc56a"
      ],
      "author": {
        "name": "Victor Khimenko",
        "email": "khim@google.com",
        "time": "Tue Jul 07 23:55:47 2020 +0000"
      },
      "committer": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Tue Jul 07 23:55:47 2020 +0000"
      },
      "message": "Merge \"Make media_ndk_headers buildable for native_bridge\" am: 1fa576bf62 am: fabeabe287\n\nOriginal change: https://android-review.googlesource.com/c/platform/frameworks/av/+/1354648\n\nChange-Id: Ic7266783f0814e71cc59b433b0dc6b68bca70170\n"
    },
    {
      "commit": "1fa576bf62b6e46fbff131314c9bf14833c5f82f",
      "tree": "ba98818ecbf1412f6cc38d17969a1c603037d49e",
      "parents": [
        "b29806e2f67abad4f89992491d9685a2f68aacac",
        "0987929f163e4800c86818685c3cd051f979feac"
      ],
      "author": {
        "name": "Victor Khimenko",
        "email": "khim@google.com",
        "time": "Tue Jul 07 23:31:03 2020 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Tue Jul 07 23:31:03 2020 +0000"
      },
      "message": "Merge \"Make media_ndk_headers buildable for native_bridge\""
    },
    {
      "commit": "0987929f163e4800c86818685c3cd051f979feac",
      "tree": "1cbfa52b5738e215aa9cb0277d40a169f211911b",
      "parents": [
        "fd3a9793dee9d417e66e317ff9e7a6aebd920f23"
      ],
      "author": {
        "name": "Victor Khimenko",
        "email": "khim@google.com",
        "time": "Thu Jul 02 23:49:09 2020 +0200"
      },
      "committer": {
        "name": "Victor Khimenko",
        "email": "khim@google.com",
        "time": "Thu Jul 02 23:51:57 2020 +0200"
      },
      "message": "Make media_ndk_headers buildable for native_bridge\n\nBug: http://b/153609531\n\nTest: m libRS.native_bridge\n\nChange-Id: Icf9e789e46ed1bcf660230e3011e88fa5e933fb5\n"
    },
    {
      "commit": "3a054c16fe0ab2b1f02e01888eb1e6a52920cd23",
      "tree": "3b205e539218fb2c16b026a2bcf3b6421e903cd5",
      "parents": [
        "44984d47574325bc15c442ea8d47a642617b8d69",
        "c1ebe5bcac4cb1ccc385cbb0d18f3a744205622f"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Fri Jun 12 20:25:25 2020 +0000"
      },
      "committer": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Fri Jun 12 20:25:25 2020 +0000"
      },
      "message": "Merge \"Include \u003cstdbool.h\u003e in NDK headers that use bool.\" am: 0470f03daf am: 686681022f am: 27a9d4e579 am: 301d870df3 am: c1ebe5bcac\n\nOriginal change: https://android-review.googlesource.com/c/platform/frameworks/av/+/1333894\n\nChange-Id: Icc5a9e02003fc4563b5dc58678573ed2e77e710d\n"
    },
    {
      "commit": "27a9d4e57988c9c9e75639edc69b4fb62ddf1a07",
      "tree": "aa11e37dc8eeeb5d9cd40d7cbde8d7bb0f6c0fc2",
      "parents": [
        "5999b5312e9dc6f18de3e57121211912d10f14cb",
        "686681022fa2c2ae9d77d98278da63f345954c3b"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Fri Jun 12 19:50:40 2020 +0000"
      },
      "committer": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Fri Jun 12 19:50:40 2020 +0000"
      },
      "message": "Merge \"Include \u003cstdbool.h\u003e in NDK headers that use bool.\" am: 0470f03daf am: 686681022f\n\nOriginal change: https://android-review.googlesource.com/c/platform/frameworks/av/+/1333894\n\nChange-Id: I72210a30844e53629373dfc8db0235d3305fcc74\n"
    },
    {
      "commit": "9dafdd6a8f73ba07cf1f17247bc29844c676509e",
      "tree": "f0829b97cfd41492086776baf3695e823ff7cb32",
      "parents": [
        "bcfc35b0e3999b168f84888c2d69c6f024099c5c"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Fri Jun 12 09:46:18 2020 -0700"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Fri Jun 12 09:46:18 2020 -0700"
      },
      "message": "Include \u003cstdbool.h\u003e in NDK headers that use bool.\n\nBug: https://github.com/android/ndk/issues/1281\nTest: treehugger\nChange-Id: Ibba9b1b03e92da8a664145a269732c638b2ec550\n"
    },
    {
      "commit": "9a612023b3255ca28c0c6efb8fe7f6f4dfe42ab3",
      "tree": "2a02c323e216561dae30035fa97bd12bc63f3c02",
      "parents": [
        "2534713d78910184579b8dfa7d4881630f039104",
        "fac344fd091d822410133d8401bdc507a496fbba"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Wed Jun 03 23:03:08 2020 +0000"
      },
      "committer": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Wed Jun 03 23:03:08 2020 +0000"
      },
      "message": "Merge \"Fix C compatibility in header.\" am: e06d19ff2c am: de35d2de57 am: 2cfdd9cd30 am: 91e6aaf902 am: fac344fd09\n\nOriginal change: https://android-review.googlesource.com/c/platform/frameworks/av/+/1323276\n\nChange-Id: Ieb960ac271ae4efa210539d3d307f7cd26b77499\n"
    },
    {
      "commit": "2cfdd9cd30f5179840f35be1dea9719c844e52c8",
      "tree": "9b3fe5bbeff68933cc5563c6a7928ee57378047a",
      "parents": [
        "4fe3aea671acbaee423f8c68bedf3486d688a740",
        "de35d2de57367d951ab4f5140aef32b8aa795fb1"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Wed Jun 03 22:17:52 2020 +0000"
      },
      "committer": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Wed Jun 03 22:17:52 2020 +0000"
      },
      "message": "Merge \"Fix C compatibility in header.\" am: e06d19ff2c am: de35d2de57\n\nOriginal change: https://android-review.googlesource.com/c/platform/frameworks/av/+/1323276\n\nChange-Id: Icbd8cc85f98cab4744430e968375d51e29fbbf58\n"
    },
    {
      "commit": "dfb1521f540b286d4ad6eb6d4c091dfcd16d89a6",
      "tree": "da84ecc331cc03cc502bfa34bbf10bc39a4367cc",
      "parents": [
        "d1626984eff89f66647cdb4c498de6bcc9270fbe"
      ],
      "author": {
        "name": "Dan Albert",
        "email": "danalbert@google.com",
        "time": "Wed Jun 03 13:29:23 2020 -0700"
      },
      "committer": {
        "name": "Dan Albert",
        "email": "danalbert@google.com",
        "time": "Wed Jun 03 13:29:23 2020 -0700"
      },
      "message": "Fix C compatibility in header.\n\nThis struct is later used without the struct keyword, so it\u0027s not\nvalid C.\n\nTest: treehugger\nBug: https://github.com/chadversary/android-ndk-rutabagas/blob/f3b3cd3de6b49f33ad82c1318c2ee280e5231c8d/src/main/ru_media.c#L41\nChange-Id: I6ecd0614815749c0c17b8327bde6c8035fbd9932\n"
    },
    {
      "commit": "0f0142bda783c8e3d1fbd946b796a4b122d14831",
      "tree": "2eae7e0e5c8b2f34c1778272ede66b92e1d10918",
      "parents": [
        "4f065082e08e124e883c98f0f0ba34450aa82aa4",
        "8a53a5c1f4d2b241313770731cfa39014ec2785f"
      ],
      "author": {
        "name": "Jooyung Han",
        "email": "jooyung@google.com",
        "time": "Fri May 22 08:22:22 2020 +0000"
      },
      "committer": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Fri May 22 08:22:22 2020 +0000"
      },
      "message": "Merge \"Set min_sdk_version to be part of mainline modules\" am: 5a9b7c2b74 am: 8a53a5c1f4\n\nChange-Id: I97df91ab4c902e52dbd25131007e96842b95e120\n"
    },
    {
      "commit": "2c0d4978f60becc95381468c59c8d64ea476d260",
      "tree": "a381954b3235455e6e4219acb05212045a8c5112",
      "parents": [
        "457c88a2bcdd751811c832774987031dd7ad7565"
      ],
      "author": {
        "name": "Jooyung Han",
        "email": "jooyung@google.com",
        "time": "Fri May 22 00:42:12 2020 +0900"
      },
      "committer": {
        "name": "Jooyung Han",
        "email": "jooyung@google.com",
        "time": "Fri May 22 07:34:01 2020 +0000"
      },
      "message": "Set min_sdk_version to be part of mainline modules\n\nModules contributing mainline modules (APK/APEX) should set\nmin_sdk_version as well as apex_available.\n\n- libstagefright_headers\n- libstagefright_esds\n- libstagefright_metadatautils\n- libstagefright_mpeg2extractor\n- libstagefright_m4vh263dec\n- libstagefright_m4vh263enc\n\nFor now setting min_sdk_version doesn\u0027t change build outputs.\nBut build-time checks will be added soon.\n\nExempt-From-Owner-Approval: cherry-pick from internal\n\nBug: 152655956\nTest: m\nMerged-In: I821b309ac5b4cfc7d83da69f6715fc327824cb66\nChange-Id: I821b309ac5b4cfc7d83da69f6715fc327824cb66\n(cherry picked from commit 5e8fecc3d17cf663d777cc21ebcc9b35c8a8e596)\n"
    },
    {
      "commit": "5e8fecc3d17cf663d777cc21ebcc9b35c8a8e596",
      "tree": "418a52ec68896c6a0153ea9d998693c2d2f8a51e",
      "parents": [
        "bbb3f33ea116cca4dcd5c9ffab15fb314b6f5a1a"
      ],
      "author": {
        "name": "Jooyung Han",
        "email": "jooyung@google.com",
        "time": "Fri May 22 00:42:12 2020 +0900"
      },
      "committer": {
        "name": "Jooyung Han",
        "email": "jooyung@google.com",
        "time": "Fri May 22 00:45:17 2020 +0900"
      },
      "message": "Set min_sdk_version to be part of mainline modules\n\nModules contributing mainline modules (APK/APEX) should set\nmin_sdk_version as well as apex_available.\n\n- libstagefright_headers\n- libstagefright_esds\n- libstagefright_metadatautils\n- libstagefright_mpeg2extractor\n- libstagefright_m4vh263dec\n- libstagefright_m4vh263enc\n\nFor now setting min_sdk_version doesn\u0027t change build outputs.\nBut build-time checks will be added soon.\n\nBug: 152655956\nTest: m\nChange-Id: I821b309ac5b4cfc7d83da69f6715fc327824cb66\n"
    },
    {
      "commit": "9b99f5c435108b13789b73e59fc052617ef50eb5",
      "tree": "e6181e00bd0107f7c38aa89bacbf0359f20d1e4c",
      "parents": [
        "f72ed2fc551e34a6605ea601b41055324c52cde9",
        "748267966c2f5ff9702811cf6c482873fed7fe33"
      ],
      "author": {
        "name": "Kris Alder",
        "email": "kalder@google.com",
        "time": "Mon May 11 20:54:52 2020 +0000"
      },
      "committer": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Mon May 11 20:54:52 2020 +0000"
      },
      "message": "Merge \"NdkMediaFormat.h: Updated to include Android API macros\" am: f96e7577a5 am: 9c8463997c am: c904137156 am: a5fd80ebd3 am: 748267966c\n\nChange-Id: Ib3c5465a2c6a0a20a1976747334a6780978a0f14\n"
    },
    {
      "commit": "c90413715608cbe321ca14537619035d0714fc37",
      "tree": "4ed36324bd04e3e948fbe138495c4e48660174b4",
      "parents": [
        "ea7b6193f023d698aef9f4e42df2d31d31afdc9a",
        "9c8463997c1e46f5d944840d78e7d62817ed36c8"
      ],
      "author": {
        "name": "Kris Alder",
        "email": "kalder@google.com",
        "time": "Mon May 11 19:58:31 2020 +0000"
      },
      "committer": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Mon May 11 19:58:31 2020 +0000"
      },
      "message": "Merge \"NdkMediaFormat.h: Updated to include Android API macros\" am: f96e7577a5 am: 9c8463997c\n\nChange-Id: I4f7a1f5c1108de5d6a7c3f79d147d66dab7b96c3\n"
    },
    {
      "commit": "cf69495afeabe1d068f584b28eec60fc4a531c99",
      "tree": "4b36da289ebe8ecb5151a66bee50a1b944f7aa69",
      "parents": [
        "23d978886f6441313d7125bd994d49767d799a2c"
      ],
      "author": {
        "name": "S Vasudev Prasad",
        "email": "vasudev.prasad@ittiam.com",
        "time": "Sat May 09 12:27:42 2020 +0530"
      },
      "committer": {
        "name": "S Vasudev Prasad",
        "email": "vasudev.prasad@ittiam.com",
        "time": "Mon May 11 21:27:57 2020 +0530"
      },
      "message": "NdkMediaFormat.h: Updated to include Android API macros\n\nOn host toolchains, Android API macros like __ANDROID_API__ and\n__INTRODUCED_IN are not available as \u0027sys/cdefs.h\u0027 is different\nbetween Android and host.\nHence they have been added if they are not previously defined.\n\nTest: Build libmediandk\nBug: 151789258\n\nChange-Id: I74c808a45c718e312bd36db39dafd4bb15a7f37b\n"
    },
    {
      "commit": "f867ca75800c3cfc42953af21c201420ec9e4efe",
      "tree": "2046842365c2740a5b0ee5f7c918758a5b8e578b",
      "parents": [
        "934f89fa73a3797651302fd2621f216f0b22de91"
      ],
      "author": {
        "name": "Ray Essick",
        "email": "essick@google.com",
        "time": "Wed Apr 29 19:41:08 2020 -0700"
      },
      "committer": {
        "name": "Ray Essick",
        "email": "essick@google.com",
        "time": "Sun May 10 08:59:43 2020 -0700"
      },
      "message": "Capture existing tests into TEST_MAPPING\n\nSome tests are disabled due to infrastructure limitations.\nSome existing tests do not pass.\n\nBug: 144649738\nTest: atest\nTest: atest -- --enable-module-dynamic-download\u003dtrue\nChange-Id: I32b4233df0f635e9d4ad738b61a5138d9b370f0a\n"
    },
    {
      "commit": "e80606428c14b0898a74cc5b4bdd2f0fdbfdb432",
      "tree": "6f0ba3c977cdb43d888a9c22f44314590783d14d",
      "parents": [
        "2297733959e0970e4b3b4db9c6f9a0087da94a9b",
        "2102fa08c4c89dc0b96f25af2511e29d580b7efa"
      ],
      "author": {
        "name": "Kris Alder",
        "email": "kalder@google.com",
        "time": "Fri May 01 18:15:31 2020 +0000"
      },
      "committer": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Fri May 01 18:15:31 2020 +0000"
      },
      "message": "Merge changes Iad45efb8,I06a4a790 am: 739d56a514 am: a66379d08c am: a1d8d37b56 am: 9403f89d75 am: 2102fa08c4\n\nChange-Id: I30ad613cde11aaf89629c802b5b6cafedfecac52\n"
    },
    {
      "commit": "a1d8d37b56fc00c883e2872741c4c02308f67cc9",
      "tree": "3ee66352c83e980916154720fcfdac5381cf0309",
      "parents": [
        "7d04e0794715e2cf33f52a8fc19416162765a874",
        "a66379d08c1d191c16f6a9c41d0660a04d74071e"
      ],
      "author": {
        "name": "Kris Alder",
        "email": "kalder@google.com",
        "time": "Fri May 01 17:39:33 2020 +0000"
      },
      "committer": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Fri May 01 17:39:33 2020 +0000"
      },
      "message": "Merge changes Iad45efb8,I06a4a790 am: 739d56a514 am: a66379d08c\n\nChange-Id: Ifa0c6e12392b7cd11125bc2d2bc82d4724db9314\n"
    },
    {
      "commit": "af62b8669fecdb94ea25bdb6882fd051c77ea855",
      "tree": "375ae08ab641939a8df83bee3cbb8d643de7512d",
      "parents": [
        "6f37669c107e816ee48f8315e0ad3e147b80551c"
      ],
      "author": {
        "name": "S Vasudev Prasad",
        "email": "vasudev.prasad@ittiam.com",
        "time": "Wed Apr 22 16:10:05 2020 +0530"
      },
      "committer": {
        "name": "S Vasudev Prasad",
        "email": "vasudev.prasad@ittiam.com",
        "time": "Wed Apr 29 14:02:12 2020 +0530"
      },
      "message": "Added \"libmediandk_format\" static library\n\nThis contains only \"NdkMediaFormat.cpp\" file and is built as static\nlibrary. This can be used by extractor\u0027s instead of \u0027libmediandk\u0027\n\nTest: Build libmediandk_format library\nBug: 151789258\n\nChange-Id: Iad45efb86d20145572a457c48451695e1820fa88\n"
    },
    {
      "commit": "6f37669c107e816ee48f8315e0ad3e147b80551c",
      "tree": "6462660ded7b31e1b0ff7db1d88c45b1519e8a3f",
      "parents": [
        "2efdbb90b25d06d0cbae6074261303817e33ed71"
      ],
      "author": {
        "name": "S Vasudev Prasad",
        "email": "vasudev.prasad@ittiam.com",
        "time": "Mon Apr 27 22:30:07 2020 +0530"
      },
      "committer": {
        "name": "S Vasudev Prasad",
        "email": "vasudev.prasad@ittiam.com",
        "time": "Wed Apr 29 14:02:03 2020 +0530"
      },
      "message": "NdkMediaFormat.cpp: Removed JNI dependency\n\nRemoved inclusion of \u0027android_util_Binder.h\u0027 and \u0027jni.h\u0027 as it\nwas not getting used.\n\nTest: Build libmediandk library\nBug: 151789258\n\nChange-Id: I06a4a7906332583a426c66442a8ebe6482a12d71\n"
    },
    {
      "commit": "00305403ea041734e536c19d3d2e3bafe07f5dc0",
      "tree": "b5586a33a4566c4c120063344271c58244c0982d",
      "parents": [
        "27e865c01967f55f8bd16f53fe28051171d42473",
        "aa358c12e38a3361047366940f879fcab3e8ec03"
      ],
      "author": {
        "name": "Kris Alder",
        "email": "kalder@google.com",
        "time": "Mon Apr 20 23:26:27 2020 +0000"
      },
      "committer": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Mon Apr 20 23:26:27 2020 +0000"
      },
      "message": "Merge \"media_ndk_headers: Add host support\" am: fdb9d30635 am: 860ff23f3f am: 2ec8242316 am: 35c5578efb am: aa358c12e3\n\nChange-Id: I4e152e72b289986176400e2230bfa8d5ef3e948e\n"
    },
    {
      "commit": "2ec82423164fc80f4a4d39c3742ec3cfa9f448a5",
      "tree": "0919aebc12da87c1f3ac33ca123d389ef852396c",
      "parents": [
        "f9d338f2b3d7d04423bf0493cc72f24ac33c0ade",
        "860ff23f3f69e2ca645a0f6a95f67d451dff40a0"
      ],
      "author": {
        "name": "Kris Alder",
        "email": "kalder@google.com",
        "time": "Mon Apr 20 22:36:12 2020 +0000"
      },
      "committer": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Mon Apr 20 22:36:12 2020 +0000"
      },
      "message": "Merge \"media_ndk_headers: Add host support\" am: fdb9d30635 am: 860ff23f3f\n\nChange-Id: Ifb32a0c0283ffb2e00f044e06da252bf9f697419\n"
    },
    {
      "commit": "ebbc323e19670dbf71ac9776c1d55a6d57cff1da",
      "tree": "b703db80b61be9be9a95391ca08547c254e0a6b8",
      "parents": [
        "d82fd8a9ec4fa873c4f298d71181eb12bfdb2f75"
      ],
      "author": {
        "name": "S Vasudev Prasad",
        "email": "vasudev.prasad@ittiam.com",
        "time": "Fri Mar 13 15:59:32 2020 +0530"
      },
      "committer": {
        "name": "S Vasudev Prasad",
        "email": "vasudev.prasad@ittiam.com",
        "time": "Fri Apr 17 10:01:01 2020 +0530"
      },
      "message": "media_ndk_headers: Add host support\n\nTest: Build media_ndk_headers on host\nBug: 151789258\n\nChange-Id: Ia68e5c7bdb114015b9e16b4106e3343b6aaae876\n"
    },
    {
      "commit": "813e7c42256e6f67013a2357e9335b708ba17290",
      "tree": "b5d42ed0f53692a0e9734b02f6e61f7497bd85b2",
      "parents": [
        "13a5b94e1df6c1a50cec7351e0777b035ae05fc7",
        "6d5864fab5e93e99e1e247f8cdcee339f8177e5e"
      ],
      "author": {
        "name": "Orion Hodson",
        "email": "oth@google.com",
        "time": "Thu Apr 16 11:36:15 2020 +0000"
      },
      "committer": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Thu Apr 16 11:36:15 2020 +0000"
      },
      "message": "Merge \"Add explicit dependencies on jni_headers\" am: ada7c446d5 am: a85def6612 am: a64d235e47 am: d033a1df9b am: 6d5864fab5\n\nChange-Id: I61eb799a23fb22fd5d570d665b113297a2af9fd2\n"
    },
    {
      "commit": "a64d235e4755983d2d9668f6e5fde05b8db78cea",
      "tree": "625c75b010127bf0c017dac5992984f595c4e437",
      "parents": [
        "511614002fca7d7e9e9fc605859362c136ef6f22",
        "a85def6612ade71bd31a0d60e45ee7e0068af638"
      ],
      "author": {
        "name": "Orion Hodson",
        "email": "oth@google.com",
        "time": "Thu Apr 16 10:59:02 2020 +0000"
      },
      "committer": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Thu Apr 16 10:59:02 2020 +0000"
      },
      "message": "Merge \"Add explicit dependencies on jni_headers\" am: ada7c446d5 am: a85def6612\n\nChange-Id: I6923b23ffc9ebdc650d5608d743d13c6be4f5078\n"
    },
    {
      "commit": "d3fd1ae6ba5d8f7bee765ad10988b0136dcbc8a5",
      "tree": "e404848d79df532dda349b3f4a75cd4883219852",
      "parents": [
        "8607a8bae7da02e77166da6079f4a1ff24261919"
      ],
      "author": {
        "name": "Orion Hodson",
        "email": "oth@google.com",
        "time": "Fri Apr 03 09:42:02 2020 +0100"
      },
      "committer": {
        "name": "Orion Hodson",
        "email": "oth@google.com",
        "time": "Thu Apr 16 08:26:03 2020 +0000"
      },
      "message": "Add explicit dependencies on jni_headers\n\nPreparation for removing implicit include paths for jni.h from soong.\n\nBug: 152482542\nTest: m\nChange-Id: Idbd0632428ae2ecf1de64c4a8b6467bea6516373\nExempt-From-Owner-Approval: build refactoring\n"
    },
    {
      "commit": "ffae0e40597c3908da99a4d649afc552f3163110",
      "tree": "96511a95f97d74edf94176e8721711a0e5cba4ae",
      "parents": [
        "0c1a5b13ee1bb8f67aee933cdde15d2938f4605d",
        "ae546728e42682b633df9b1c46e18d8473ab9350"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Tue Feb 25 09:41:02 2020 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Feb 25 09:41:02 2020 +0000"
      },
      "message": "Merge \"Code refactoring: remove include/private/media/ directory.\""
    },
    {
      "commit": "ae546728e42682b633df9b1c46e18d8473ab9350",
      "tree": "8d7f6dacb6292f87ca53eb4b1b9699dc86521cb7",
      "parents": [
        "a199662c6a891c009329b619782f2475dff60822"
      ],
      "author": {
        "name": "Dichen Zhang",
        "email": "dichenzhang@google.com",
        "time": "Wed Feb 19 14:41:52 2020 -0800"
      },
      "committer": {
        "name": "Dichen Zhang",
        "email": "dichenzhang@google.com",
        "time": "Thu Feb 20 12:47:44 2020 -0800"
      },
      "message": "Code refactoring: remove include/private/media/ directory.\n\nKeep the existing code pattern that private .h files are named as\nXXXPriv.h and stored in media/ndk/ directory.\n\nBug: 149835919\nTest: AImageReaderWindowHandleTest\nChange-Id: Iec99e8ad2c9e4bd7cf96f685d91b47e8fb80c9a8\n"
    },
    {
      "commit": "3445f03a2cc15617501c9b5d6f0e4e3915cec6f3",
      "tree": "187000b641d40cb98180d00a84e3a2cffccc43fd",
      "parents": [
        "a199662c6a891c009329b619782f2475dff60822"
      ],
      "author": {
        "name": "Dichen Zhang",
        "email": "dichenzhang@google.com",
        "time": "Tue Feb 18 10:46:29 2020 -0800"
      },
      "committer": {
        "name": "Dichen Zhang",
        "email": "dichenzhang@google.com",
        "time": "Thu Feb 20 10:37:59 2020 -0800"
      },
      "message": "Remove NdkJavaVMHelper.h from NDK directory\n\nNdkJavaVMHelper.h is not a valid NDK header. Replace this one with\nNdkJavaVMHelperPriv.h in the cpp directory.\n\nBug: 149578834\nTest: NativeDecoderTest\nChange-Id: I07ddec4d31ae84bf4a739fcf512859f794cb1baa\n"
    },
    {
      "commit": "d4ad3e1291d34359dd63afaaa01216bba610ccbe",
      "tree": "22010248da615b74cf4a5814dfc2765d22187269",
      "parents": [
        "697aec8505c99b66313aa5c58e3bb68776db82f0"
      ],
      "author": {
        "name": "Wei Jia",
        "email": "wjia@google.com",
        "time": "Mon Feb 10 14:03:24 2020 -0800"
      },
      "committer": {
        "name": "Wei Jia",
        "email": "wjia@google.com",
        "time": "Mon Feb 10 14:03:24 2020 -0800"
      },
      "message": "NdkMediaFormat: add doc for AMEDIAFORMAT_KEY_LOW_LATENCY\n\nTest: compiles\nBug: 148954176\nChange-Id: I449ffde977c573bcc109b8e37395b1e71a4ccef5\n"
    },
    {
      "commit": "3076582abf5cd2977606fdef71b9edffe1d681a1",
      "tree": "664d7764a9b32441315dea2ba8ab97712706892a",
      "parents": [
        "66a06c77d7bed6e74f18d2ef479d6c189e6855c2",
        "7dba245598d533e6fcac29b94653c2a89746123a"
      ],
      "author": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Wed Jan 29 02:31:27 2020 +0000"
      },
      "committer": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Wed Jan 29 02:31:27 2020 +0000"
      },
      "message": "Merge \"Enable coverage for libmediandk\" am: b3f5dd26db am: 10cef17ad0 am: 7dba245598\n\nChange-Id: I665b62b360662a82bdf03c5cad02d572998f4470\n"
    },
    {
      "commit": "fec6b9d677ca5fef3413ef10fbb0178e76b37218",
      "tree": "1e3bb9a6f952e7295da54e1f522f8225cfdae46c",
      "parents": [
        "9d33c6344d36734f2175bd372f184c7deed4e868"
      ],
      "author": {
        "name": "Pirama Arumuga Nainar",
        "email": "pirama@google.com",
        "time": "Tue Jan 28 13:19:02 2020 -0800"
      },
      "committer": {
        "name": "Pirama Arumuga Nainar",
        "email": "pirama@google.com",
        "time": "Tue Jan 28 16:29:33 2020 -0800"
      },
      "message": "Enable coverage for libmediandk\n\nThe linker error previously seen no longer happens - it probably got\nfixed by a non-toolchain-related change since clang-r349610 from Feb\n2019 is able to build libmediandk with coverage in the Q branch.\n\nBug: http://b/124522995\nTest: mmma NATIVE_COVERAGE\u003dtrue frameworks/av/media/ndk and check that\nbuilt libmediandk.so has __gcov_flush symbol\nTest: Presubmit target cf_x86_phone-userdebug_coverage\n\nChange-Id: I24f0c3fbbea733a521ea97e4fe28c94c6f607119\n"
    },
    {
      "commit": "7c96ea7ff84e1084332548583841735b694bfebd",
      "tree": "eb5d7c1bcb91cea21469e46b7c014ae44635a217",
      "parents": [
        "255f610f5ab71b5e36d93744dfe058daf6c96041"
      ],
      "author": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Fri Jan 10 15:46:22 2020 -0800"
      },
      "committer": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Thu Jan 16 15:55:18 2020 -0800"
      },
      "message": "Remove mediametrics include symlinks\n\nBug: 143245419\nTest: build\nChange-Id: I6c836e60c0fe078f5ab7370aec156bdd6e8dcbf0\n"
    },
    {
      "commit": "a51151aacfc820122b45a875a0b6fe0dba60b756",
      "tree": "5250165a3a49942645caf75ade6634fa5c825e22",
      "parents": [
        "bd9f1ed08bb948af54600eb60f13fd6e05068375"
      ],
      "author": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Tue Jan 07 13:37:47 2020 -0800"
      },
      "committer": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Wed Jan 08 11:21:31 2020 -0800"
      },
      "message": "Link with actual headers instead of symlinks\n\nand remove the symlinks.\n\nBug: 143245419\nTest: build\nChange-Id: I70e450d9db0f65048f86391c4d3f341659cd213f\n"
    },
    {
      "commit": "83232d44febe1650541024663944ffa2a4dccd2b",
      "tree": "142b7b0de226d529ec7d16b3021ca5819ad64d51",
      "parents": [
        "b7a56c52e001d2e361140b07ee1baad4c56e5b2c",
        "8e89e1a8c52f64289cdee8e85d73f0e626d13ffe"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Tue Dec 10 02:49:09 2019 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Dec 10 02:49:09 2019 +0000"
      },
      "message": "Merge \"NdkMediaFormat: add AMEDIAFORMAT_KEY_LOW_LATENCY\""
    },
    {
      "commit": "a2adc8aa6c06f0e1d06c1bb6535be15f30ba26fd",
      "tree": "64bbd7fbe5404a003136b5bd0fe326ca71fd05a7",
      "parents": [
        "7567a1e7aca73a9de97df9ec972782d4de0be136",
        "883b817ab6b41fdc94da5f8eb8fe58ae7918c3fa"
      ],
      "author": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Fri Dec 06 11:35:00 2019 -0800"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Fri Dec 06 11:35:00 2019 -0800"
      },
      "message": "Merge \"Clarify ownership of returned pointer\" am: fefdf667a0 am: 612c9915ce\nam: 883b817ab6\n\nChange-Id: I4ef1c68ebfda6a1479e23bd11e8a3df95209a17c\n"
    },
    {
      "commit": "8e89e1a8c52f64289cdee8e85d73f0e626d13ffe",
      "tree": "2b58c37aa32b3b1d156036e6e25b7a9e83f4b3fb",
      "parents": [
        "60569140248ff403db737c941c5a5274bcddb04a"
      ],
      "author": {
        "name": "Wei Jia",
        "email": "wjia@google.com",
        "time": "Tue Dec 03 11:12:11 2019 -0800"
      },
      "committer": {
        "name": "Wei Jia",
        "email": "wjia@google.com",
        "time": "Thu Dec 05 16:45:18 2019 -0800"
      },
      "message": "NdkMediaFormat: add AMEDIAFORMAT_KEY_LOW_LATENCY\n\nTest: cts\nBug: 134970151\nChange-Id: Ib2cbc503096563db4b4a4e631697b913cc213cd0\n"
    },
    {
      "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": "01b23cb29fc6929139e3cc7c0c7b63c1b5a40c24",
      "tree": "01211af17486ba9a48e47ed5ab06a54db9398342",
      "parents": [
        "3668d6bb0076cfa631f05189c6b2c1b9e3ecd7e0"
      ],
      "author": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Tue Dec 03 14:20:58 2019 -0800"
      },
      "committer": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Wed Dec 04 08:34:57 2019 -0800"
      },
      "message": "Make screenrecord use NdkMediaMuxer\n\nTest: use screenrecord to record the screen\n\nChange-Id: I32b85ad10a216a9bf3d6d1d64a029a6dac8793a3\n"
    },
    {
      "commit": "ce811b49d71ba8f78206a255bacd43aa6306813e",
      "tree": "cd3f35ed3f082eaedba59d344a669ddab3c12899",
      "parents": [
        "f9cd09f66c901d68f4dc6b44876b87b98b640161"
      ],
      "author": {
        "name": "Robert Shih",
        "email": "robertshih@google.com",
        "time": "Tue Nov 19 15:52:33 2019 -0800"
      },
      "committer": {
        "name": "Robert Shih",
        "email": "robertshih@google.com",
        "time": "Wed Nov 27 02:50:26 2019 +0000"
      },
      "message": "NdkMediaDrm: get app name from /proc/self/cmdline\n\nBug: 134787536\nTest: log app name in clearkey/widevine drm factory\nChange-Id: I9fc8e7e2b5a86b0cea515e482fe0b1120537f3bd\n"
    },
    {
      "commit": "a54e81fc4210e40121a76573dea7abffb8b38d43",
      "tree": "50907fe8fc4d01a5e550efcdbb6b750990b613a8",
      "parents": [
        "463b4885b14020019bf35d2566230e17b3fcb9ac"
      ],
      "author": {
        "name": "Robert Shih",
        "email": "robertshih@google.com",
        "time": "Fri Aug 02 14:15:01 2019 -0700"
      },
      "committer": {
        "name": "Robert Shih",
        "email": "robertshih@google.com",
        "time": "Thu Nov 14 01:58:49 2019 +0000"
      },
      "message": "IDrmClient: remove IBinder inheritence\n\nBug: 134787536\nTest: GtsMediaTestCases\nChange-Id: I2c9ea8c1bd35165573a169015c78d052f080606c\n"
    },
    {
      "commit": "1a7391fbb8a46f123b3b6f59c75f16f04b30461c",
      "tree": "4bc440a1432752cc7c0f7a9befa270afcfb593f4",
      "parents": [
        "652b900854bc1c3004a2af0c276d62dac3b1ae74",
        "29d7ade15885c7f6de38b94335f5228cc65ca791"
      ],
      "author": {
        "name": "Jiyong Park",
        "email": "jiyong@google.com",
        "time": "Tue Nov 12 22:46:20 2019 -0800"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Tue Nov 12 22:46:20 2019 -0800"
      },
      "message": "Merge \"Rename # vndk tag to # llndk\"\nam: 29d7ade158\n\nChange-Id: I8c4de7b6b20b4101b7e03910376427246e0ecbeb\n"
    },
    {
      "commit": "6571bf6fadf7517d4a6f213225c1d214cedb2e68",
      "tree": "e343f97d4f444282402924435985ae529407fc6d",
      "parents": [
        "e62c35eb8c93530e202609aae66b682c8218a9b1"
      ],
      "author": {
        "name": "Robert Shih",
        "email": "robertshih@google.com",
        "time": "Sun Nov 10 15:03:01 2019 -0800"
      },
      "committer": {
        "name": "Robert Shih",
        "email": "robertshih@google.com",
        "time": "Tue Nov 12 21:51:48 2019 -0800"
      },
      "message": "IMediaDrmService: remove makeDrm method\n\nThis means IDrm will always be local.\n\nBug: 134787536\nTest: GtsMediaTestCases\nChange-Id: I291cca47b97c3f5da40e750bd339693268b46ba0\n"
    },
    {
      "commit": "24791a8cd5b5d8ab95074ed4408aba719f2c99c0",
      "tree": "f82026be2df3260e106330b2777f59438a642882",
      "parents": [
        "da161ed4c02194d3d46c97181ba9da927c66ac21"
      ],
      "author": {
        "name": "Jiyong Park",
        "email": "jiyong@google.com",
        "time": "Wed Nov 06 12:44:53 2019 +0900"
      },
      "committer": {
        "name": "Jiyong Park",
        "email": "jiyong@google.com",
        "time": "Wed Nov 13 05:51:39 2019 +0000"
      },
      "message": "Rename # vndk tag to # llndk\n\nThe APIs that are tagged with # vndk are actually for LLNDK libraries.\nAlthough LLNDK is part of VNDK, calling those APIs \u0027vndk\u0027 has given\nusers a wrong perception that the APIs don\u0027t need to be kept stable\nbecause that\u0027s the norm for most of the VNDK libraries that are not\nLLNDK.\n\nIn order to eliminate the misunderstanding, rename the tag to \u0027llndk\u0027 so\nthat people introducing new such API will realize what they are signing\nthemselves up for.\n\nExempt-From-Owner-Approval: cherry-pick from internal gerrit\n\nBug: 143765505\nTest: m\nMerged-In: I6b48cf2091def384780ca91c32a0ddb738e70455\n(cherry picked from commit 22993109269a588da90545ef3fa9b3dd232621ec)\nChange-Id: I6b48cf2091def384780ca91c32a0ddb738e70455\n"
    },
    {
      "commit": "8e17115d900b92a7da530724750d7291063ded8d",
      "tree": "aac1667bee64107edc5378c2784782c716b85a5c",
      "parents": [
        "dbcd8d98474c2ff4a405311c77e528ad8d19a455",
        "22993109269a588da90545ef3fa9b3dd232621ec"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Wed Nov 13 00:31:31 2019 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Nov 13 00:31:31 2019 +0000"
      },
      "message": "Merge \"Rename # vndk tag to # llndk\""
    },
    {
      "commit": "484d6119d3ca9140d415dc1841d4c0c500d76a20",
      "tree": "e1c48e270d3d46d62451aec06dce577c1a9bb5ea",
      "parents": [
        "c80381951593fa1152c2d6b1a1f75e56cfddd194",
        "52a243e88089702536adeb26749dcef2fc97e0a9"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Fri Nov 08 23:07:05 2019 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Nov 08 23:07:05 2019 +0000"
      },
      "message": "Merge \"Replace AndroidRuntime::getJNIEnv() with stable methods\""
    },
    {
      "commit": "52a243e88089702536adeb26749dcef2fc97e0a9",
      "tree": "d0b1dab5ed4e1151513f6a7cb070838f75a42dc0",
      "parents": [
        "86a313bc172914766df88420079de7fb0826a450"
      ],
      "author": {
        "name": "Dichen Zhang",
        "email": "dichenzhang@google.com",
        "time": "Fri Nov 08 11:02:03 2019 -0800"
      },
      "committer": {
        "name": "Dichen Zhang",
        "email": "dichenzhang@google.com",
        "time": "Fri Nov 08 13:59:03 2019 -0800"
      },
      "message": "Replace AndroidRuntime::getJNIEnv() with stable methods\n\nTest: NativeDecoderTest#testAMediaDataSourceClose\nBug: 142567168\nChange-Id: Id27eb6772781a99abb509fe5205c3e77e5526009\n"
    },
    {
      "commit": "22993109269a588da90545ef3fa9b3dd232621ec",
      "tree": "d92a43e2824c952657c1aeb867a0f722b3294ca6",
      "parents": [
        "dadd5bcd82344795780b79f8af5d80e7d21966ec"
      ],
      "author": {
        "name": "Jiyong Park",
        "email": "jiyong@google.com",
        "time": "Wed Nov 06 12:44:53 2019 +0900"
      },
      "committer": {
        "name": "Jiyong Park",
        "email": "jiyong@google.com",
        "time": "Wed Nov 06 12:44:53 2019 +0900"
      },
      "message": "Rename # vndk tag to # llndk\n\nThe APIs that are tagged with # vndk are actually for LLNDK libraries.\nAlthough LLNDK is part of VNDK, calling those APIs \u0027vndk\u0027 has given\nusers a wrong perception that the APIs don\u0027t need to be kept stable\nbecause that\u0027s the norm for most of the VNDK libraries that are not\nLLNDK.\n\nIn order to eliminate the misunderstanding, rename the tag to \u0027llndk\u0027 so\nthat people introducing new such API will realize what they are signing\nthemselves up for.\n\nBug: 143765505\nTest: m\nChange-Id: I6b48cf2091def384780ca91c32a0ddb738e70455\n"
    },
    {
      "commit": "61e1c76cf34528ee7a5eca5642ff46c1250538c6",
      "tree": "b4b40e727153003963ce59c0e652eaef2c332087",
      "parents": [
        "b1150c2023250d8d72b3ac78d5f868046f3831c8"
      ],
      "author": {
        "name": "Robert Shih",
        "email": "robertshih@google.com",
        "time": "Thu Oct 31 21:26:58 2019 -0700"
      },
      "committer": {
        "name": "Robert Shih",
        "email": "robertshih@google.com",
        "time": "Wed Nov 06 02:13:54 2019 +0000"
      },
      "message": "IDrmClient: remove Parcel from interface\n\nThis is part of the effort to remove binder-related classes from libmediadrm.\nThis change replaces a generic listener for Parcel data with separate\nlisteners for each event type.\n\nBug: 134787536\nTest: MediaDrmClearkeyTest\nTest: NativeMediaDrmClearkeyTest\nTest: MediaDrmMockTest\nChange-Id: I90cbb75b21cc63737994a01a2171caee5cfb84ad\n"
    },
    {
      "commit": "b1150c2023250d8d72b3ac78d5f868046f3831c8",
      "tree": "52c2f340dd8fd0c0b9518ece9b951933a58d8749",
      "parents": [
        "c932c7fbae25c19c8c8aeecae3bdec6cdbe7be3a",
        "28c2ed3985ebf92177d8002a859409fb93d36ae0"
      ],
      "author": {
        "name": "Robert Shih",
        "email": "robertshih@google.com",
        "time": "Wed Nov 06 02:05:49 2019 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Nov 06 02:05:49 2019 +0000"
      },
      "message": "Merge \"DrmUtils: refactor IDrm/ICrypto creation\""
    },
    {
      "commit": "6fcb941084faecce31909f1c50ee1ba442244f8b",
      "tree": "d8904b383fd5d7e01c3c966c1c57c44266dbad18",
      "parents": [
        "22cd27bcc50b17ebb5104400cece4c34f1729930",
        "c499a089250910118da5a292794d0dc1c9053171"
      ],
      "author": {
        "name": "Xin Li",
        "email": "delphij@google.com",
        "time": "Wed Oct 30 14:30:59 2019 -0700"
      },
      "committer": {
        "name": "Xin Li",
        "email": "delphij@google.com",
        "time": "Wed Oct 30 14:30:59 2019 -0700"
      },
      "message": "DO NOT MERGE - qt-qpr1-dev-plus-aosp-without-vendor@5915889 into stage-aosp-master\n\nBug: 142003500\nChange-Id: I0de886061b2d75f9c37e8edbd4e7e08225d0186b\n"
    },
    {
      "commit": "9ef4f8d690bc42a0f17d6036d70f6769578a76b5",
      "tree": "ff0f220dd8f096a0c77df0b5b81d80c260c41260",
      "parents": [
        "7d484ddc3d22c6d637ac39d9ea4416c0fe68949f",
        "8a58e7282343207d6dc9b7765ecc9969609d81d8"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Wed Oct 30 08:17:48 2019 -0700"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Wed Oct 30 08:17:48 2019 -0700"
      },
      "message": "Merge \"Consistently say \"Available since API level\".\" am: 2218ec1a22 am: 22cd27bcc5\nam: 8a58e72823\n\nChange-Id: Ie955a04f48091716a1cb5169444a84797f1ef76f\n"
    },
    {
      "commit": "8a58e7282343207d6dc9b7765ecc9969609d81d8",
      "tree": "f61aa9b7232546a680e28bacc9ddaccc8a43c7e1",
      "parents": [
        "93d30835c64ace9c89421ace1a9493ed979f9d6b",
        "22cd27bcc50b17ebb5104400cece4c34f1729930"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Wed Oct 30 08:10:28 2019 -0700"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Wed Oct 30 08:10:28 2019 -0700"
      },
      "message": "Merge \"Consistently say \"Available since API level\".\" am: 2218ec1a22\nam: 22cd27bcc5\n\nChange-Id: Ie36d064efd7913a3a921dd1f5fb57d3c0d68b8c5\n"
    },
    {
      "commit": "a6f5ac87c1da1ebfe6392190c5f9f8db578ee952",
      "tree": "3a11dfb191a00e8488d6db5742e2ae2c07177b6a",
      "parents": [
        "d10dee025c04f9518047b377fc63324a0e7c1cbc"
      ],
      "author": {
        "name": "Santiago Seifert",
        "email": "aquilescanta@google.com",
        "time": "Wed Oct 30 13:09:29 2019 +0000"
      },
      "committer": {
        "name": "Santiago Seifert",
        "email": "aquilescanta@google.com",
        "time": "Wed Oct 30 13:09:29 2019 +0000"
      },
      "message": "Remove duplicate entry in libmediandk target\n\nTest: Build-only change\nChange-Id: I18163747aedbc237e8aa1d2474d4a5598317d09c\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": "28c2ed3985ebf92177d8002a859409fb93d36ae0",
      "tree": "bd37a3ce59ef3e49c2f80ca5b39f6a6b738c2e80",
      "parents": [
        "7f84dcf500a7c98e76f95283de3a6abc0be858ff"
      ],
      "author": {
        "name": "Robert Shih",
        "email": "robertshih@google.com",
        "time": "Sun Oct 27 22:55:12 2019 -0700"
      },
      "committer": {
        "name": "Robert Shih",
        "email": "robertshih@google.com",
        "time": "Sun Oct 27 23:06:38 2019 -0700"
      },
      "message": "DrmUtils: refactor IDrm/ICrypto creation\n\nAdded utilities to:\n* Query config for IMediaDrmService usage\n* Create remote vs local IDrm/ICrypto object based on aforementioned config\n\nBug: 134787536\nTest: MediaDrmClearkeyTest#testClearKeyPlaybackCenc\nChange-Id: I72df528c0bbd8a6dbd3c4962ac91eb89696bcaf7\n"
    },
    {
      "commit": "00900336c1e2a67fb852758f9790fbf8050c19c5",
      "tree": "a167916c84b94f459ab90da4de6dbedb6b61886b",
      "parents": [
        "5eb34a7418444ccff82e763579134060e7421bcd",
        "ef6bd3e3a5afac7a6ed12c0d3b1a9190407a3fe5"
      ],
      "author": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Fri Oct 25 13:20:40 2019 -0700"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Fri Oct 25 13:20:40 2019 -0700"
      },
      "message": "Merge \"Remove more header symlinks\" am: a2bc7eada8 am: ec565c575d\nam: ef6bd3e3a5\n\nChange-Id: Id54aa3ba3a1702aa4f8bcbecf01b94d3cefaf1d7\n"
    },
    {
      "commit": "a2bc7eada863d845b04c85195dbb26df37bdef69",
      "tree": "b17e23ebf1c9551620b761a4918994cf930ab6e9",
      "parents": [
        "f65c700c2947c2e89b2b8ced10972fab29ae175d",
        "6b2859450f91f1cdd8b3ca2435df4dd37907cd8a"
      ],
      "author": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Fri Oct 25 19:47:54 2019 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Fri Oct 25 19:47:54 2019 +0000"
      },
      "message": "Merge \"Remove more header symlinks\""
    },
    {
      "commit": "6b2859450f91f1cdd8b3ca2435df4dd37907cd8a",
      "tree": "4accc947ac99fa7246f5f7fc54f35b3c960636b1",
      "parents": [
        "35f148bc5a1cb1efffd9aee0223a06720a303329"
      ],
      "author": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Mon Oct 21 14:52:30 2019 -0700"
      },
      "committer": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Thu Oct 24 21:25:53 2019 +0000"
      },
      "message": "Remove more header symlinks\n\nTest: build\nBug: 143245419\nChange-Id: I9bb03d54c7792625b73602f2d3721e29f8f929be\n"
    },
    {
      "commit": "e25539a93f04b06361252e2aa8baab534efbc1de",
      "tree": "426328cbad5d443932406779bb6db8c6f0ba8b92",
      "parents": [
        "72e4fdab19cc58aca0c5f0bd951360a8341a0f53",
        "c317c587d5fa6fa79cf7d21240e981eeb9f97058"
      ],
      "author": {
        "name": "Dongwon Kang",
        "email": "dwkang@google.com",
        "time": "Wed Oct 23 09:58:28 2019 -0700"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Wed Oct 23 09:58:28 2019 -0700"
      },
      "message": "Merge changes from topic \"libdrmframework\" am: 84a53822a1 am: 460618a6d1\nam: c317c587d5\n\nChange-Id: I639643fd5fd4e5cfe08045cb58a782434e6d1315\n"
    },
    {
      "commit": "84a53822a1a24785dfa5da63e364753423ae8257",
      "tree": "efb0ef18e6a76d6f69dd9c873bc6ec7c9ab5fe18",
      "parents": [
        "80d3d96941be2d110f30e3147c4e4fbbded05730",
        "9c6f790843939700fa18779f14b1df5fa1161024"
      ],
      "author": {
        "name": "Dongwon Kang",
        "email": "dwkang@google.com",
        "time": "Wed Oct 23 16:28:37 2019 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Wed Oct 23 16:28:37 2019 +0000"
      },
      "message": "Merge changes from topic \"libdrmframework\"\n\n* changes:\n  Remove libdrmframework.so dependency from libdatasource.so\n  Make DataSourceFactory singletone\n"
    },
    {
      "commit": "35f148bc5a1cb1efffd9aee0223a06720a303329",
      "tree": "f21b16c008cef3852d7df994d3562ba544edec76",
      "parents": [
        "c52243f298aa3e570197831c8c383fdedb8f4ac6",
        "a8bf1c6e6d210833070152adf130f4d988fc255e"
      ],
      "author": {
        "name": "Jayant Chowdhary",
        "email": "jchowdhary@google.com",
        "time": "Mon Oct 21 18:12:50 2019 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Mon Oct 21 18:12:50 2019 +0000"
      },
      "message": "Merge changes from topic \"camera_ndk_fixes\"\n\n* changes:\n  camera2ndk: ~ACameraCaptureSession shouldn\u0027t hold device lock in ACameraDevice_close().\n  AImage: don\u0027t allow ~AImageReader to run before AImages are deleted.\n  AImageReader: make sure ~AImageReader isn\u0027t called with FrameListener::mLock held.\n  AImageReaderVendorTest: Tolerate failures for ACameraDevice_isSessionConfigurationSupported.\n"
    },
    {
      "commit": "79b0c24b58af5fbfec814a2a11506ef0f72541c3",
      "tree": "2551d295da89029c75f6a9219a6bc1a3b2980b98",
      "parents": [
        "1f72838954cb3689fb58eef6276553d9a45ff0a8"
      ],
      "author": {
        "name": "Dongwon Kang",
        "email": "dwkang@google.com",
        "time": "Sun Oct 13 08:17:34 2019 -0700"
      },
      "committer": {
        "name": "Dongwon Kang",
        "email": "dwkang@google.com",
        "time": "Tue Oct 15 11:00:29 2019 -0700"
      },
      "message": "Make DataSourceFactory singletone\n\nThis is preparation for having a subclass of DataSourceFactory which\nis only used in mediaserver process with OMA (forward-lock) use case.\n\nTest: build\nBug: 142567168\nChange-Id: I2a1ab3d1ae89f657a84376d9a95d4e814b545b4f\n"
    },
    {
      "commit": "df7a95c8a04e5ea729724105bb9ba9c1feeb429b",
      "tree": "21daef3f8f3e2519a2d666975ef6af7df8728a37",
      "parents": [
        "bd2e267483575289a268a46a599e3e287c80ea14",
        "3ae6a9450c1dd97762817f72f442099ef03b5220"
      ],
      "author": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Wed Oct 09 15:24:58 2019 -0700"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Wed Oct 09 15:24:58 2019 -0700"
      },
      "message": "Merge \"Split datasource out of libstagefright\" am: 229c543d08 am: 448242fe09\nam: 3ae6a9450c\n\nChange-Id: I886e8c821a047c3ea303412aab78fb3885e06e85\n"
    },
    {
      "commit": "448242fe095b3e72ce9779b7c09f6b0eee5721b0",
      "tree": "709a1d38537ae95b5f0fdfbcdd91d5f607ae0d81",
      "parents": [
        "995d433aa42f3fe64c8fd9e8b892c156fa7c1ad4",
        "229c543d081cc29f1f07df8d0b1657cdb71e0c15"
      ],
      "author": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Wed Oct 09 15:06:25 2019 -0700"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Wed Oct 09 15:06:25 2019 -0700"
      },
      "message": "Merge \"Split datasource out of libstagefright\"\nam: 229c543d08\n\nChange-Id: Iebedf39dbdf0cc4627fac7add4047689c63ff329\n"
    },
    {
      "commit": "fa8be7d2371d66db6c7838060d5729f6fd9374ef",
      "tree": "aa00504b96299a891446e46c81c6b0d72c9aae02",
      "parents": [
        "58ae37b5b34d6a2bddd46494230a58f5fcc3f5e3"
      ],
      "author": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Mon Sep 23 12:15:57 2019 -0700"
      },
      "committer": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Wed Oct 09 07:41:58 2019 -0700"
      },
      "message": "Split datasource out of libstagefright\n\ninto libdatasource, which contains:\n  DataSourceFactory\n  (Clear)FileSource\n  (Clear)MediaHTTP\n  DataURISource\n  HTTPBase\n  NuCachedSource2\n\nThis is needed to break a circular dependency in an upcoming CL.\n\nTest: build, boot\n\nChange-Id: I34d9937235c78f18f51b18945342a0743e209577\nMerged-In: I34d9937235c78f18f51b18945342a0743e209577\n"
    },
    {
      "commit": "9ddd6e8d9e472e9bc9e023444a4715466d1e9390",
      "tree": "70a01e42210c8474df369161a11647db1bbcf83f",
      "parents": [
        "c65f56f5a1c3d1b9600d5fbe43b53a875bf9b5f6"
      ],
      "author": {
        "name": "Jayant Chowdhary",
        "email": "jchowdhary@google.com",
        "time": "Tue Jul 16 11:04:06 2019 -0700"
      },
      "committer": {
        "name": "Jayant Chowdhary",
        "email": "jchowdhary@google.com",
        "time": "Mon Oct 07 18:14:18 2019 -0700"
      },
      "message": "AImage: don\u0027t allow ~AImageReader to run before AImages are deleted.\n\nWe can never be sure whether ~AImageReader() has run to completion or\nnot in AImage::close(). So we move clean up to another AImageReader\nmethod and make sure that\u0027s called when in AImageReader_delete. AImage\nnow contains an sp\u003c\u003e to AImageReader so we can be sure that its members\nwouldn\u0027t have been destroyed by ~AImageReader and we can check whether\nAImageReader_delete has been called on it.\n\nThis also prevents us from deadlocking since AImage_delete could also cause\n~AImageReader to run with AImageReader::mLock held in AImage::close().\n\nBug: 137571625\nBug: 137694217\n\nTest: enroll; auth\nTest: cts native AImageReader, camera, graphics tests\n\nMerged-In: If5803cb6fcb6f4800032069872daaeac1cd36ed2\nChange-Id: If5803cb6fcb6f4800032069872daaeac1cd36ed2\n(cherry picked from commit 9e0302fcc104bbeddc4c9c0f913b9f633de84dc1)\nSigned-off-by: Jayant Chowdhary \u003cjchowdhary@google.com\u003e\n"
    },
    {
      "commit": "c65f56f5a1c3d1b9600d5fbe43b53a875bf9b5f6",
      "tree": "3942b891f0c19b1096c9175c3b17a285b1c138f4",
      "parents": [
        "3c797d1d0502c9323acdd1085af96280d20d0d1c"
      ],
      "author": {
        "name": "Jayant Chowdhary",
        "email": "jchowdhary@google.com",
        "time": "Mon Jul 01 13:18:17 2019 -0700"
      },
      "committer": {
        "name": "Jayant Chowdhary",
        "email": "jchowdhary@google.com",
        "time": "Mon Oct 07 18:14:18 2019 -0700"
      },
      "message": "AImageReader: make sure ~AImageReader isn\u0027t called with FrameListener::mLock held.\n\nThe following sequence of events is possible:\n\nt1: FrameListener::onFrameAvailable callback is called, mReader is\n    promoted from wp\u003c\u003e to sp\u003c\u003e, t1 holds mLock.\n  t2: AImageReader_delete is called, decStrong is called on AImageReader,\n      but since its refcount isn\u0027t 0, ~AImageReader isn\u0027t called\n    t1: onFrameAvailable completes, ~AImageReader is called with mLock\n        held, ~AImageReader-\u003e\n        setImageListenerLocked-\u003eFrameListener::setImageListener-\u003etries\n        to lock mLock again, t1 deadlocks.\n\nWe move the locking mLock to after the promotion of mReader to sp\u003c\u003e so\nthat it gets destructed before ~AImageReader is called.\n\nThe same is done for BufferRemovedListener.\n\nBug: 136193631\n\nTest: Auth; unlock\n\nMerged-In: I8bb8c7d59f3711fd9fe434159095938eb5db9153\nChange-Id: I8bb8c7d59f3711fd9fe434159095938eb5db9153\n(cherry picked from commit ebca5b9862df0175b913f172384d80123a3865e3)\nSigned-off-by: Jayant Chowdhary \u003cjchowdhary@google.com\u003e\n"
    },
    {
      "commit": "a8a70b42254125ea3987d8deafbbedad36743186",
      "tree": "ea833c0e3c1088117b6626ff5d5473394251effb",
      "parents": [
        "18ea000d7f15726e4c11c4a9e7e59e8a18a9c227",
        "4f0a23d0dc08aa553389f17ab7e3f89fc6125496"
      ],
      "author": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Thu Oct 03 13:25:05 2019 -0700"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Thu Oct 03 13:25:05 2019 -0700"
      },
      "message": "Merge \"Remove libmediadrm symlinks\"\nam: 4f0a23d0dc\n\nChange-Id: Id2a5c304d8b8397afe933f2ddca97d2879385494\n"
    },
    {
      "commit": "99a2c4a2c49f5d32d9ba79585890b5fa7ed52f2a",
      "tree": "c4b3ad327d441c728334593b733c29c39e826d6e",
      "parents": [
        "8eb9e24ea239a05c767ac15f5d25d5b6c56aa8be",
        "b4e0c3b19f11e972c9b789550c4e321cf26fa1c8"
      ],
      "author": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Wed Oct 02 14:59:40 2019 -0700"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Wed Oct 02 14:59:40 2019 -0700"
      },
      "message": "Remove libmediadrm symlinks\nam: b4e0c3b19f\n\nChange-Id: Ib2ecb92e4a07385f201b884f15b8143c9c4c2c02\n"
    },
    {
      "commit": "b4e0c3b19f11e972c9b789550c4e321cf26fa1c8",
      "tree": "0b8ca8cb36cba24e658232e5fa0b286d75318995",
      "parents": [
        "bcc132d8e562375f7830839caf84307f523f623d"
      ],
      "author": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Fri Sep 27 10:21:55 2019 -0700"
      },
      "committer": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Wed Oct 02 19:54:39 2019 +0000"
      },
      "message": "Remove libmediadrm symlinks\n\nTest: build\nChange-Id: I53d703b6d34226926437b0207a2b3d51dff6881a\nMerged-In: I53d703b6d34226926437b0207a2b3d51dff6881a\n"
    },
    {
      "commit": "55b259cf5ec16df77b52206e8209f5df2fc214c5",
      "tree": "29989150d2cfb026f11ec5d43edb8116442e7311",
      "parents": [
        "87025d5658d1a3d78c1a634035f7126f0ba8a4f1"
      ],
      "author": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Fri Sep 27 10:21:55 2019 -0700"
      },
      "committer": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Tue Oct 01 13:43:37 2019 -0700"
      },
      "message": "Remove libmediadrm symlinks\n\nTest: build\nChange-Id: I53d703b6d34226926437b0207a2b3d51dff6881a\nMerged-In: I53d703b6d34226926437b0207a2b3d51dff6881a\n"
    },
    {
      "commit": "cdb9faf1c3e7cec0cee74b7eb12bb00a2d738440",
      "tree": "d551be78811f8c9c99d52673019f58eefe0bf002",
      "parents": [
        "f9ea4b800c51cd533a332954c5b8784a7b437bc2",
        "f20eeae80baf8cbf20475a16757be775bd2a800c"
      ],
      "author": {
        "name": "Christopher Ferris",
        "email": "cferris@google.com",
        "time": "Mon Sep 30 09:55:47 2019 -0700"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Mon Sep 30 09:55:47 2019 -0700"
      },
      "message": "Merge \"Remove unused bionic include.\" am: 87025d5658 am: baf4b94a8d\nam: f20eeae80b\n\nChange-Id: Ia1da35707e33da6fa2b4a2c23bea14002613a8eb\n"
    },
    {
      "commit": "baf4b94a8dde48c46a223a7f8a626dee2def569b",
      "tree": "a63a526ac3b49c66c7546bdf60081b950c06926b",
      "parents": [
        "41dad39e94bbad85e87b687a768bf3b52a6e123d",
        "87025d5658d1a3d78c1a634035f7126f0ba8a4f1"
      ],
      "author": {
        "name": "Christopher Ferris",
        "email": "cferris@google.com",
        "time": "Mon Sep 30 09:36:00 2019 -0700"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Mon Sep 30 09:36:00 2019 -0700"
      },
      "message": "Merge \"Remove unused bionic include.\"\nam: 87025d5658\n\nChange-Id: I9d928d78169403452f5af79800f4135231c053d7\n"
    },
    {
      "commit": "7c66db7758b0f9f476ce120f27757c80c25301bb",
      "tree": "6bdaf0766216a2b5ed6ee12977969c3a2df342c1",
      "parents": [
        "6dc75fb0cde69661a1d2d915c1520b251ebdfbbb"
      ],
      "author": {
        "name": "Christopher Ferris",
        "email": "cferris@google.com",
        "time": "Wed Sep 25 17:59:24 2019 -0700"
      },
      "committer": {
        "name": "Christopher Ferris",
        "email": "cferris@google.com",
        "time": "Fri Sep 27 12:15:50 2019 -0700"
      },
      "message": "Remove unused bionic include.\n\nBug: 141560639\n\nTest: Builds.\nChange-Id: Ie634a2fe3e46a90bdc6d1d264ac1317e3dda0ff1\nMerged-In: Ie634a2fe3e46a90bdc6d1d264ac1317e3dda0ff1\n(cherry picked from commit f46f58442cfee70f3ec6e8c44f2e5b7e54598213)\n"
    },
    {
      "commit": "59244b5bdeefac4bb23d60122d041c2c8c380d2c",
      "tree": "e10bf376d4534929d760d6c458d7eda5bd3dfbd3",
      "parents": [
        "ee566469e6b8b50de0a8df5eeb573b3c32fe6f5a",
        "a001e57f7d290634773503965258b2598b09b47a"
      ],
      "author": {
        "name": "Rakesh Kumar",
        "email": "rakesh.kumar@ittiam.com",
        "time": "Wed Sep 25 21:10:15 2019 -0700"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Wed Sep 25 21:10:15 2019 -0700"
      },
      "message": "Merge \"NdkMediaCodec: Wrong check in error callback handler\" am: 49a4f52e02 am: 8155143547\nam: a001e57f7d\n\nChange-Id: I31ae7ba23934ff80af30ea6e574a0b84ad90efb3\n"
    },
    {
      "commit": "8155143547ebfabd4273925706bd22659d174508",
      "tree": "f3091a18314a69b9099e8158dedf9c5cbac39f89",
      "parents": [
        "77a9db4b237811620d44db54b94dab29c1f9e6c2",
        "49a4f52e02a6d47c7f73442023c475dc4b6dcf6d"
      ],
      "author": {
        "name": "Rakesh Kumar",
        "email": "rakesh.kumar@ittiam.com",
        "time": "Wed Sep 25 17:15:53 2019 -0700"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Wed Sep 25 17:15:53 2019 -0700"
      },
      "message": "Merge \"NdkMediaCodec: Wrong check in error callback handler\"\nam: 49a4f52e02\n\nChange-Id: I9e2acddec99706b3bfe763d85051b0f13e99b363\n"
    },
    {
      "commit": "49a4f52e02a6d47c7f73442023c475dc4b6dcf6d",
      "tree": "c1eef847dcd025173a69d209a5710b2d7ebc4f6f",
      "parents": [
        "706d9606bee174bc1d087fa316e0d7d66605b417",
        "d5ea3f35468e778de030615c48aa0af12d4a7073"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Wed Sep 25 23:45:32 2019 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Wed Sep 25 23:45:32 2019 +0000"
      },
      "message": "Merge \"NdkMediaCodec: Wrong check in error callback handler\""
    },
    {
      "commit": "a731a7954105517932f6f495162e1860955fc595",
      "tree": "653ef55d0d9736f0981b20e5bebe65c63275307d",
      "parents": [
        "80d3e9a8111d53abd0015a046f356cb8fa60931b",
        "ae324f0114abc5b37c80938e42300d1bd896e5c5"
      ],
      "author": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Wed Sep 25 10:44:52 2019 -0700"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Wed Sep 25 10:44:52 2019 -0700"
      },
      "message": "Merge \"Remove MediaPlayer2\" am: a63468a847 am: 038672258e\nam: ae324f0114\n\nChange-Id: I5de6784004ab284f4704c576822ee08393f3f120\n"
    },
    {
      "commit": "038672258e8cdea815145bfd5f2785ef663c66de",
      "tree": "aec7a9ce560448ac3c0f2294a2ba10ba1741093a",
      "parents": [
        "7f8a396dffe4c2581991e2e938c2d9a6c13c3dfc",
        "a63468a84701b1da0328cb861c80043000f12798"
      ],
      "author": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Wed Sep 25 10:30:26 2019 -0700"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Wed Sep 25 10:30:26 2019 -0700"
      },
      "message": "Merge \"Remove MediaPlayer2\"\nam: a63468a847\n\nChange-Id: If4bb1436ca9e71400831e133b65926a4a5a5e86a\n"
    },
    {
      "commit": "d1ecb917f884e8f5ff69a80c6c22d84f42074300",
      "tree": "b58302fdf89cf0b326d9d51409b14d76318d195f",
      "parents": [
        "402fd7c9a7aead3cfdb75d4d8a21a2c071d69926"
      ],
      "author": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Tue Sep 24 09:27:40 2019 -0700"
      },
      "committer": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Wed Sep 25 08:12:32 2019 -0700"
      },
      "message": "Remove MediaPlayer2\n\nBug: 141546997\nTest: build, boot\nChange-Id: Ie2a94aace8286a1fad4e9f59232f761bcab0cc5e\nMerged-In: Ie2a94aace8286a1fad4e9f59232f761bcab0cc5e\n"
    },
    {
      "commit": "d5ea3f35468e778de030615c48aa0af12d4a7073",
      "tree": "76377b4ccc5f53cb1ff7c0ac2d6984e76ea3ce2b",
      "parents": [
        "0647d8c5f64c577b10b791b2d86383183decb297"
      ],
      "author": {
        "name": "Rakesh Kumar",
        "email": "rakesh.kumar@ittiam.com",
        "time": "Fri Sep 20 17:08:07 2019 +0530"
      },
      "committer": {
        "name": "Rakesh Kumar",
        "email": "rakesh.kumar@ittiam.com",
        "time": "Mon Sep 23 19:10:56 2019 +0530"
      },
      "message": "NdkMediaCodec: Wrong check in error callback handler\n\nNdkMediaCodec checks for wrong item in case of CB_ERROR callback. It\nis checking for action instead of actionCode, because of which error\nis not getting propagated. This leads to hang in application using\nasync NdkMediaCodec APIs.\n\nTest: encoderTest --gtest_repeat\u003d20 -P /sdcard/res/\nTest: decoderTest --gtest_repeat\u003d20 -P /sdcard/res/\n\nBug: 141458223\n\nChange-Id: I9da8a361d1925b73f341f36e55f7426888155fc6\n"
    },
    {
      "commit": "1fa2686026ce128fa16f47fb00f33ecc70ecdb4f",
      "tree": "09afcd977ec8cfbb267ab1820687f2e954bd2978",
      "parents": [
        "804b87d1f80df7b5fbe77e59100c375be1542db7"
      ],
      "author": {
        "name": "Chong Zhang",
        "email": "chz@google.com",
        "time": "Mon Sep 16 16:15:00 2019 -0700"
      },
      "committer": {
        "name": "Chong Zhang",
        "email": "chz@google.com",
        "time": "Fri Sep 20 18:21:42 2019 +0000"
      },
      "message": "Make a copy of output format in onOutputFormatChanged\n\nMake a copy of output format in NDK and camera\u0027s heic encoder.\n(MediaCodec.java JNI is already making a copy, so copy out of\nMediaCodec.cpp to avoid unnecessary dup)\n\nbug:141140020\nChange-Id: I8afb1e48b73f0fb2fa584bdee2b93985b48a5e91\n(cherry picked from commit 860eff192e00df5977be5ff8a6fbf3efa6f1f8d5)\n"
    },
    {
      "commit": "641cf39651b4e1a34bce760d53a7f460acf93fdf",
      "tree": "d8a3f8c4550537669a5165af71b0f3af20bd0c31",
      "parents": [
        "f06897b16eb529f79955b12bb34109667a2ffd60"
      ],
      "author": {
        "name": "Robert Shih",
        "email": "robertshih@google.com",
        "time": "Tue Sep 10 18:00:42 2019 -0700"
      },
      "committer": {
        "name": "Robert Shih",
        "email": "robertshih@google.com",
        "time": "Tue Sep 10 18:00:42 2019 -0700"
      },
      "message": "NdkMediaDrm: properly check null listeners\n\nBug: 140456613\nTest: NativeMediaDrmClearkeyTest\nChange-Id: Id3bfaa3da4a73d1607f191d2ad44dce47ae7f4a0\n"
    },
    {
      "commit": "9e0302fcc104bbeddc4c9c0f913b9f633de84dc1",
      "tree": "fa3f75ad3291885bb054ea2bd8a310c16679f58a",
      "parents": [
        "4c6d99520c95386e5a4f4a94aafe9c63053ae734"
      ],
      "author": {
        "name": "Jayant Chowdhary",
        "email": "jchowdhary@google.com",
        "time": "Tue Jul 16 11:04:06 2019 -0700"
      },
      "committer": {
        "name": "Jayant Chowdhary",
        "email": "jchowdhary@google.com",
        "time": "Wed Jul 17 14:30:10 2019 -0700"
      },
      "message": "AImage: don\u0027t allow ~AImageReader to run before AImages are deleted.\n\nWe can never be sure whether ~AImageReader() has run to completion or\nnot in AImage::close(). So we move clean up to another AImageReader\nmethod and make sure that\u0027s called when in AImageReader_delete. AImage\nnow contains an sp\u003c\u003e to AImageReader so we can be sure that its members\nwouldn\u0027t have been destroyed by ~AImageReader and we can check whether\nAImageReader_delete has been called on it.\n\nThis also prevents us from deadlocking since AImage_delete could also cause\n~AImageReader to run with AImageReader::mLock held in AImage::close().\n\nBug: 137571625\nBug: 137694217\n\nTest: enroll; auth\nTest: cts native AImageReader, camera, graphics tests\n\nChange-Id: If5803cb6fcb6f4800032069872daaeac1cd36ed2\nSigned-off-by: Jayant Chowdhary \u003cjchowdhary@google.com\u003e\n"
    },
    {
      "commit": "ebca5b9862df0175b913f172384d80123a3865e3",
      "tree": "4a579fbe83201ceaec472df2a9d9cf6c39ebb3bb",
      "parents": [
        "265eb9954ebf6ded1fc10577a29fa49081af9f9b"
      ],
      "author": {
        "name": "Jayant Chowdhary",
        "email": "jchowdhary@google.com",
        "time": "Mon Jul 01 13:18:17 2019 -0700"
      },
      "committer": {
        "name": "Jayant Chowdhary",
        "email": "jchowdhary@google.com",
        "time": "Mon Jul 01 13:30:21 2019 -0700"
      },
      "message": "AImageReader: make sure ~AImageReader isn\u0027t called with FrameListener::mLock held.\n\nThe following sequence of events is possible:\n\nt1: FrameListener::onFrameAvailable callback is called, mReader is\n    promoted from wp\u003c\u003e to sp\u003c\u003e, t1 holds mLock.\n  t2: AImageReader_delete is called, decStrong is called on AImageReader,\n      but since its refcount isn\u0027t 0, ~AImageReader isn\u0027t called\n    t1: onFrameAvailable completes, ~AImageReader is called with mLock\n        held, ~AImageReader-\u003e\n        setImageListenerLocked-\u003eFrameListener::setImageListener-\u003etries\n        to lock mLock again, t1 deadlocks.\n\nWe move the locking mLock to after the promotion of mReader to sp\u003c\u003e so\nthat it gets destructed before ~AImageReader is called.\n\nThe same is done for BufferRemovedListener.\n\nBug: 136193631\n\nTest: Auth; unlock\n\nChange-Id: I8bb8c7d59f3711fd9fe434159095938eb5db9153\nSigned-off-by: Jayant Chowdhary \u003cjchowdhary@google.com\u003e\n"
    },
    {
      "commit": "9c4e0fa92912a1fdd7235cd7ae108ad32fe5ea0f",
      "tree": "adb3d730bf0556913f249772caca6afd35900d0f",
      "parents": [
        "f95c698108b608e6ebf86e7450a9a2464e3ae264"
      ],
      "author": {
        "name": "John W. Bruce",
        "email": "juce@google.com",
        "time": "Fri May 03 17:12:44 2019 -0700"
      },
      "committer": {
        "name": "John Bruce",
        "email": "juce@google.com",
        "time": "Wed May 08 01:08:07 2019 +0000"
      },
      "message": "Do Not Pass Blank App Package Name to MediaDrm Plugins\n\nPreviously, the NDK has always passed a blank app package name to the\nMediaDrm plugins. However, some DRM systems need this value to be filled\nin to operate correctly.\n\nUnfortunately, since supplying or not supplying this value can\ninvalidate existing DRM licenses, we cannot start passing it in for\ndevices that might have previously run without it. As such, passing it\nis only supported on devices for which Q is their first Android release.\n\nBug: 65680731\nTest: CTS NativeMediaDrmClearkeyTest\nChange-Id: Icccde9708766a86ccd352c82be25285fc9f8ebca\n"
    },
    {
      "commit": "0fe4c4795015357290b098715f6d3cd17cf554df",
      "tree": "cb9fb49616e0ff7890359f7eefb6563d25426934",
      "parents": [
        "8d14f5ccff2440f39630965486e9601ab6d007b6"
      ],
      "author": {
        "name": "Chong Zhang",
        "email": "chz@google.com",
        "time": "Mon Apr 08 21:51:46 2019 +0000"
      },
      "committer": {
        "name": "Chong Zhang",
        "email": "chz@google.com",
        "time": "Mon Apr 08 14:56:30 2019 -0700"
      },
      "message": "Revert \"Revert \"Remove direct libgui reference from omx server side\"\"\n\nThis reverts commit b4979c59d93a6ca2be7e65489fc39896bfdc2c96.\n\nReason for revert: reland with fixes:\n1) make OMXHarness use OMXClient, not directly IOMX wrappers.\n2) fix ref of consumer listener interface in GraphicBufferSource.\n\nbug: 129272021\nTest: camera recording, aosp_x86 build\n\nChange-Id: Idaaaf412c65cbe89c95a2cb54f3833ff1fc4c304\n"
    },
    {
      "commit": "b4979c59d93a6ca2be7e65489fc39896bfdc2c96",
      "tree": "3da5a8d97ee8f37f4f480ad80104b6f77d3bcd87",
      "parents": [
        "482f60ccccc12e6afe24f9ba503496ce65d1ba43"
      ],
      "author": {
        "name": "Sung-fang Tsai",
        "email": "sungfang@google.com",
        "time": "Sun Apr 07 00:29:22 2019 +0000"
      },
      "committer": {
        "name": "Victor Chang",
        "email": "vichang@google.com",
        "time": "Mon Apr 08 10:32:03 2019 +0000"
      },
      "message": "Revert \"Remove direct libgui reference from omx server side\"\n\nThis reverts commit 482f60ccccc12e6afe24f9ba503496ce65d1ba43.\n\nReason for revert: b/130058749 camera recording hang\n\nBug: 130058749\nChange-Id: I358bc9c62c48328c01c8611c7e6f77d16affff54\n"
    },
    {
      "commit": "482f60ccccc12e6afe24f9ba503496ce65d1ba43",
      "tree": "90e04135449e80434f0b399d0e33d91bfce1de20",
      "parents": [
        "6e38e1a2b74bd2ed304080b1dca1f77b1053dada"
      ],
      "author": {
        "name": "Chong Zhang",
        "email": "chz@google.com",
        "time": "Thu Mar 21 16:41:28 2019 -0700"
      },
      "committer": {
        "name": "Chong Zhang",
        "email": "chz@google.com",
        "time": "Fri Apr 05 18:12:10 2019 +0000"
      },
      "message": "Remove direct libgui reference from omx server side\n\n- Make mediacodec service/libstagefright_omx not dependent\non libgui. Server should only reference bqhelper (which\ncurrently still have a dependency on libgui, but could be\nremoved later as it\u0027s only used internally).\n\n- Make libmedia_omx not dependent on libgui by moving the\nIOMX wrapper code into a separately that\u0027s only used by\nthe platform.\n\n- Move ConsumerListener references in GraphicBufferSource\nto implementation only, so that other libs including\nGraphicBufferSource doesn\u0027t need to link libgui.\n\n- Remove bqhelper references from some client side libs.\n\n- Remove IOMX ipc related code, as IOMX interface is no\nlonger used for ipc. It\u0027s only used as an interface on\nclient side.\n\nbug: 129272021\ntest: builds;\natest CtsMediaTestCases -- --module-arg CtsMediaTestCases:size:small\n\nChange-Id: I49d80bf72eba325ee80b223d4a5ba7b0c1ab4d35\n"
    },
    {
      "commit": "f92acc7039cdb8cb50d5e9d4ae9dfab314f89d47",
      "tree": "cdd45f7331f87f67b9ce949f6cfcc32a86f43704",
      "parents": [
        "1d52d8f13215417d132b4a8ba3ab3ed36b12ad18"
      ],
      "author": {
        "name": "Jooyung Han",
        "email": "jooyung@google.com",
        "time": "Thu Mar 07 17:43:25 2019 +0900"
      },
      "committer": {
        "name": "Jooyung Han",
        "email": "jooyung@google.com",
        "time": "Wed Mar 27 12:06:00 2019 +0900"
      },
      "message": "libmediandk: use libandroid_runtime_lazy\n\nlibmediandk and libbinder_ndk have a duplicate code\nthat loads libandroid_runtime lazily. That part has been extracted\ninto its own library: libandroid_runtime_lazy.\n\nBug: 125550121\nTest: m -j\nTest: readelf -d $OUT/system/lib64/libmediandk.so | grep NEED\nTest: # see if there is not libandroid_runtime)\nChange-Id: If7cde2f9d3076cec4e69fd8f6e7b19c99804f42e\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": "48616156f80645f6a751f52c0f12d2e4a914c2b4",
      "tree": "350fa534853421b6b92206859b746f05fbc88692",
      "parents": [
        "60c73a445b632cc2e233b1a275efeee7414a41a4"
      ],
      "author": {
        "name": "Pawin Vongmasa",
        "email": "pawin@google.com",
        "time": "Thu Feb 21 06:28:10 2019 -0800"
      },
      "committer": {
        "name": "Pawin Vongmasa",
        "email": "pawin@google.com",
        "time": "Tue Mar 19 06:52:35 2019 -0700"
      },
      "message": "Export libgui headers from media modules\n\nlibstagefright, libmedia_ndk and libmedia_omx\n\nAlso, fix the reference to HGraphicBufferProducer in\nAImageReaderWindowHandleTest.\n\nTest: Builds\n\nBug: 112508112\nChange-Id: I2ce0e4fd395a0c733aaf98b7397d7183c7475672\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": "0e8c901dad036218bc8676ad99fb1bae2dc7ebff",
      "tree": "665c28ae97f0a405b5855a87d8a612db34bc9b11",
      "parents": [
        "f31b173dd1b7f3fcf78e20641a1b087a7eb02904",
        "5fa1276d36862e95d8893ec2e1f627b8b59ef1f9"
      ],
      "author": {
        "name": "Jayant Chowdhary",
        "email": "jchowdhary@google.com",
        "time": "Thu Mar 14 21:52:01 2019 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Mar 14 21:52:01 2019 +0000"
      },
      "message": "Merge \"Add RAW_DEPTH private format and allow AImageReader creation with it.\""
    }
  ],
  "next": "4c1f95845160320a689d388598a11f2aeb067d78"
}
