)]}'
{
  "log": [
    {
      "commit": "a60859f945daf744696b8e8b3ac6d85c9d98050c",
      "tree": "2be45154745086c1d0cf0d4a22f99f0fadfa0142",
      "parents": [
        "3fe8606c68eb68a63610865f29cba9f1e552ea8a",
        "554e4897e7f002893b251d99fc393a83363b7110"
      ],
      "author": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Thu Apr 30 01:17:23 2020 +0000"
      },
      "committer": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Thu Apr 30 01:17:23 2020 +0000"
      },
      "message": "Merge \"Camera: Validate face count in received metadata\" into rvc-dev am: fdb7e3c281 am: 554e4897e7\n\nChange-Id: Ie454624a80d04540aec9424d1a16c9bd63024235\n"
    },
    {
      "commit": "b393a2d9a93e4af4191e8cbf80a4cc4e9c201940",
      "tree": "43bb6b4174ac76336a2d640cddf6c4a845570e1f",
      "parents": [
        "3742d5e5106982da1ae1ad4f38a28efb69e7fe0b"
      ],
      "author": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Tue Apr 28 18:08:50 2020 -0700"
      },
      "committer": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Wed Apr 29 11:29:04 2020 -0700"
      },
      "message": "Camera: Validate face count in received metadata\n\nEnsure the count can\u0027t cause an overflow in bytes to be read.\n\nTest: atest CtsCameraTestCases; also add bad face count data from camera\n  service and manually verify the error logs appear when running\n  android.hardware.cts.CameraTest#testFaceDetection.\nBug: 150156131\nChange-Id: Ic78ec0ccf67ef8665f80f69aabbb1ae71dd609cd\n"
    },
    {
      "commit": "5da38f9198ddaa064c29843c773dfeec131a2858",
      "tree": "32827bad4ae6d00cf7632380419bd1a4d9af8dfa",
      "parents": [
        "fd13d65c3458bc12c4047d8058ce7d56205d2ab4",
        "85a78eb3764f4df08cf4de4ec9f5801c6976cf2e"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Tue Apr 14 21:17:02 2020 +0000"
      },
      "committer": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Tue Apr 14 21:17:02 2020 +0000"
      },
      "message": "Merge \"Camera: Fix race between callback and unregisteration of callbacks\" into rvc-dev am: f8673bf03d am: 85a78eb376\n\nChange-Id: I4f8f13c93ebce9d8fbc384ab7dd5e7b588d54026\n"
    },
    {
      "commit": "887b1a3719b31f605147c5ee580f42f769d3e9ee",
      "tree": "f76572a43fc4ebf5c967e5537cb8c45f7ded08b8",
      "parents": [
        "da4faa6c2e50b6ab28dfd9a40289313239319d16",
        "42c1c38d7f0340f448b38dcf228b2e7753a2bcd2"
      ],
      "author": {
        "name": "Tom Cherry",
        "email": "tomcherry@google.com",
        "time": "Tue Apr 14 02:10:00 2020 +0000"
      },
      "committer": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Tue Apr 14 02:10:00 2020 +0000"
      },
      "message": "Merge \"Include what you use: \u003cunistd.h\u003e\" am: 8a71223d5a am: 42c1c38d7f\n\nChange-Id: I7487c7d3e566736733b6510072f6a32c2c4534ac\n"
    },
    {
      "commit": "42c1c38d7f0340f448b38dcf228b2e7753a2bcd2",
      "tree": "5c2d51a723e7514ae3f31fdcbba7022e4143f31a",
      "parents": [
        "1c09d740e714fa8963a2399eed953cc2015f2519",
        "8a71223d5a998fd743ac3b25a799bc2cfedf2f86"
      ],
      "author": {
        "name": "Tom Cherry",
        "email": "tomcherry@google.com",
        "time": "Tue Apr 14 01:48:52 2020 +0000"
      },
      "committer": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Tue Apr 14 01:48:52 2020 +0000"
      },
      "message": "Merge \"Include what you use: \u003cunistd.h\u003e\" am: 8a71223d5a\n\nChange-Id: Ia9c0bba3fa290221d00bbfd7aec4aab65db5e4f0\n"
    },
    {
      "commit": "7e540682b362a3e8679e274084aeaefdf01314da",
      "tree": "9a4a88c8548c0a4b672e2d208ecfa88b45580d8d",
      "parents": [
        "5226677901af08551446c103bf7d15797e87756c"
      ],
      "author": {
        "name": "Shuzhen Wang",
        "email": "shuzhenwang@google.com",
        "time": "Fri Apr 10 13:30:25 2020 -0700"
      },
      "committer": {
        "name": "Shuzhen Wang",
        "email": "shuzhenwang@google.com",
        "time": "Mon Apr 13 17:48:27 2020 -0700"
      },
      "message": "Camera: Fix race between callback and unregisteration of callbacks\n\nBecause callbacks are called from a looper thread, if the subscriber\nunsubscribes and frees the callback, invalid memory access may occur from the\nlooper thread.\n\nAddress this by draining all pending callbacks at the time of listener\nunregistration.\n\nNOTE: There is rare chance that the wait on the condition times out,\nstill resulting in the original NPE issue. We intensionally allow that\nto avoid deadlock, in case the application uses the same mutex lock for\ncallbacks and unregister functions.\n\nTest: for i in {1..10}; do atest -it NativeImageReaderTest; done\nTest: ACameraNdkVendorTest\nBug: 148976953\nChange-Id: I92f5a02a4e3e63f2e72e8043ff4f4ac16c1eec5d\n"
    },
    {
      "commit": "7ae782545020eec1bfb9eb74e690ae26e2cca7fa",
      "tree": "b99f5db2f4d75aeddb175896c3fa67070b21154e",
      "parents": [
        "2ac41184ae00b2e99e55d995944288f33b2fce49"
      ],
      "author": {
        "name": "Tom Cherry",
        "email": "tomcherry@google.com",
        "time": "Mon Apr 13 15:20:50 2020 -0700"
      },
      "committer": {
        "name": "Tom Cherry",
        "email": "tomcherry@google.com",
        "time": "Mon Apr 13 15:20:50 2020 -0700"
      },
      "message": "Include what you use: \u003cunistd.h\u003e\n\nThis was transitively included, but no longer is, so it must be\nexplicitly included.\n\nExempt-From-Owner-Approval: Janitorial\nTest: build\nChange-Id: I78268a4867697bf797d40b5fead3745fdd0cc807\n"
    },
    {
      "commit": "7c06a8bda84302c8bde5814ce3b5843b23d58a56",
      "tree": "6d939a89aa35a6e097f1790bb966d0824e99753b",
      "parents": [
        "cb00499828a898a3863ce4a5fcbc95a5c365f401",
        "8f612b453b1f2d8d873e615aae281cb047d5a7dc"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Tue Mar 24 18:55:45 2020 +0000"
      },
      "committer": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Tue Mar 24 18:55:45 2020 +0000"
      },
      "message": "Merge \"Camera: Improve documentation for android.control.zoomRatio\" into rvc-dev am: 8f612b453b\n\nChange-Id: I400fa1ccfe8157b1bcc9699659c3c5045819b46e\n"
    },
    {
      "commit": "878f9df9e6877e73bee4f510833fc74a4bd3d2fc",
      "tree": "162c4da44f14814ce616fe9ff621f9782040b7bf",
      "parents": [
        "1939a00071ce5dc757566c7af24a1f5589ea22f7"
      ],
      "author": {
        "name": "Shuzhen Wang",
        "email": "shuzhenwang@google.com",
        "time": "Fri Mar 13 09:37:34 2020 -0700"
      },
      "committer": {
        "name": "Shuzhen Wang",
        "email": "shuzhenwang@google.com",
        "time": "Mon Mar 23 13:25:17 2020 -0700"
      },
      "message": "Camera: Improve documentation for android.control.zoomRatio\n\nTo better document how android.control.zoomRatio works, add examples to\nillustrate its relationship with scalerCropRegion.\n\nTest: Build and read docs\nBug: 144780745\nChange-Id: Iab0e849b4d045fc1648fcf2ddc51d84c66249273\n"
    },
    {
      "commit": "138c4d0809944815ed0470a908daaebaa1101d25",
      "tree": "13cb9e87628accc50a4fb8e7ac882cf0ca81e0fd",
      "parents": [
        "c8566c6bb2771b838d3f0a8240b68732a8e40247",
        "1939a00071ce5dc757566c7af24a1f5589ea22f7"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Sat Mar 21 04:40:36 2020 +0000"
      },
      "committer": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Sat Mar 21 04:40:36 2020 +0000"
      },
      "message": "Merge \"Camera: Move bokeh mode to extended scene mode.\" into rvc-dev am: 1939a00071\n\nChange-Id: I8d845389d6d9b0834975de4852ed43da38333c6b\n"
    },
    {
      "commit": "aa0ae2bb07632ac39f266a6f6167a5a0f87c597e",
      "tree": "35963920eca3dd1521992f195ca02914b0a8a6a8",
      "parents": [
        "301dd5f1d99993725cb6336e6d520904e23ce925"
      ],
      "author": {
        "name": "Shuzhen Wang",
        "email": "shuzhenwang@google.com",
        "time": "Mon Mar 16 16:00:45 2020 -0700"
      },
      "committer": {
        "name": "Shuzhen Wang",
        "email": "shuzhenwang@google.com",
        "time": "Fri Mar 20 12:14:54 2020 -0700"
      },
      "message": "Camera: Move bokeh mode to extended scene mode.\n\nMigrate BOKEH_MODE_STILL_CAPTURE and BOKEH_MODE_CONTINUOUS to be 2 enums\nof CONTROL_EXTENDED_SCENE_MODE.\n\nTest: Camera CTS, VTS\nBug: 151759402\nChange-Id: Ie56c6403cd7b530356d3a007088e30730906ec65\n"
    },
    {
      "commit": "c504dbb3dbd236ab3b7c7f14e6b886286dd121b1",
      "tree": "93842170e9d9ad6dc49866e602e414e563209dac",
      "parents": [
        "d6bd406abdd7937658abf33bc8684c464e8bc413",
        "cb7796d6af25df5170a494ca4c36cf426d9a0dec"
      ],
      "author": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Thu Mar 19 20:47:21 2020 +0000"
      },
      "committer": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Thu Mar 19 20:47:21 2020 +0000"
      },
      "message": "RESTRICT AUTOMERGE: Camera NDK: Hide keys for the rotate-and-crop controls am: cb7796d6af\n\nChange-Id: Ic42f2437851982f2c050ff4e7181469a7f8e4ce1\n"
    },
    {
      "commit": "cb7796d6af25df5170a494ca4c36cf426d9a0dec",
      "tree": "6abe04fa305389f1ea105e5086d944c8cf52b1c2",
      "parents": [
        "8d386f779d76eb2a87ec570bf6ee3c0ce674085f"
      ],
      "author": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Wed Mar 18 13:33:24 2020 -0700"
      },
      "committer": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Wed Mar 18 14:49:16 2020 -0700"
      },
      "message": "RESTRICT AUTOMERGE: Camera NDK: Hide keys for the rotate-and-crop controls\n\nImplementation is not complete yet, so hide the feature for now.\n\nTest: Adjusted camera CTS continues to pass\nBug: 150036107\nChange-Id: Ie112d21121693336c77700b982fc547f5cba429b\n"
    },
    {
      "commit": "3f7417cf5d6d0288919729f6c188e8b570c2bc3e",
      "tree": "0191cf641e7f9b23ac7a95f35dc40d9a7c144998",
      "parents": [
        "935a03364789a0b8b6d51f594f2b680ec0cddebc",
        "ce554fe70047ed68a70527786f12afacc4e402a6"
      ],
      "author": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Mon Mar 16 23:25:59 2020 +0000"
      },
      "committer": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Mon Mar 16 23:25:59 2020 +0000"
      },
      "message": "Merge \"camera2 ndk: Fix vndk error return value for ACameraManager::OpenCamera().\" am: 5995f21460 am: ce554fe700\n\nChange-Id: Ib1a0a1f322ea9b3cbca7ffc3eece6c3e5bd510d7\n"
    },
    {
      "commit": "5995f2146016068b5619445b2f93372f12b5be51",
      "tree": "4bfaecbf42f23f203322a3411c05c4d1c13e07e9",
      "parents": [
        "e4f1dbca673187c0e1a384338845e8b770c8227b",
        "0197292197ea94427199d68536237c7d11d0666d"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Mon Mar 16 22:57:29 2020 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Mon Mar 16 22:57:29 2020 +0000"
      },
      "message": "Merge \"camera2 ndk: Fix vndk error return value for ACameraManager::OpenCamera().\""
    },
    {
      "commit": "be4e9983ec5281b8186047fcebf6f8118eb8aa4d",
      "tree": "7c369b753118360ab41c2b119539b459977dfaa7",
      "parents": [
        "fb92f096994098051d23ededce2f345cad2de073",
        "10b1611714960c67c8661a228ea36879e9e05e18"
      ],
      "author": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Mon Mar 16 22:40:59 2020 +0000"
      },
      "committer": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Mon Mar 16 22:40:59 2020 +0000"
      },
      "message": "Merge \"Camera: fix NDK logspam\" into rvc-dev am: 10b1611714\n\nChange-Id: Iab97bb1398a09953c66263a9044c994fc0e62c83\n"
    },
    {
      "commit": "0197292197ea94427199d68536237c7d11d0666d",
      "tree": "fc97fb3caab5e2f2deef80b05535fc61ee4017b6",
      "parents": [
        "edfb26069d7548ea33ec379f39768de5622ea7f4"
      ],
      "author": {
        "name": "Jayant Chowdhary",
        "email": "jchowdhary@google.com",
        "time": "Thu Mar 05 15:22:46 2020 -0800"
      },
      "committer": {
        "name": "Jayant Chowdhary",
        "email": "jchowdhary@google.com",
        "time": "Mon Mar 16 12:01:07 2020 -0700"
      },
      "message": "camera2 ndk: Fix vndk error return value for ACameraManager::OpenCamera().\n\nBug: 147402004\n\nTest: make hidl connectDevice return Status::DISCONNECTED.\n      Run AImageReaderVendorTest. See that\n      ACameraManager::openCamera() returns ACAMERA_ERROR_DISCONNECTED.\n\nMerged-In: I3bcf0be54d1b9e88baa0b22350d74c0370ad23a6\nChange-Id: I3bcf0be54d1b9e88baa0b22350d74c0370ad23a6\n(cherry picked from commit 911a13b29bfed85ae22d117954b6cd63cac4195d)\nSigned-off-by: Jayant Chowdhary \u003cjchowdhary@google.com\u003e\n"
    },
    {
      "commit": "42924a24cfddc9efecec4725a518a75e01f4e6b5",
      "tree": "205c3bb95f903dc233539fb323aa1a08ad5747ba",
      "parents": [
        "90334d0f03f4bee709969433898025fc16863f01"
      ],
      "author": {
        "name": "Yin-Chia Yeh",
        "email": "yinchiayeh@google.com",
        "time": "Thu Mar 12 11:19:14 2020 -0700"
      },
      "committer": {
        "name": "Yin-Chia Yeh",
        "email": "yinchiayeh@google.com",
        "time": "Mon Mar 16 17:43:41 2020 +0000"
      },
      "message": "Camera: fix NDK logspam\n\nDuration keys may be missing if the device doesn\u0027t support\ncorresponding capture feature.\n\nTest: build (log only change)\nBug: 150900659\n\nMerged-In: I83e122ff08bc581ddd4bb7e304f152f612817875\nChange-Id: I83e122ff08bc581ddd4bb7e304f152f612817875\n"
    },
    {
      "commit": "8826d844042c5a46fbd076b2bdd199d7fd049a11",
      "tree": "7b28d040df1a137d37edd819b30d49b93dc80bfa",
      "parents": [
        "ff3d889419a9ce859cd888e2a93d1b27c2926d6a",
        "cad23c25737f100ac117835aa234c02f2013c0a9"
      ],
      "author": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Sat Mar 14 01:48:14 2020 +0000"
      },
      "committer": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Sat Mar 14 01:48:14 2020 +0000"
      },
      "message": "cameraserver: rename getConcurrentStreamingCameraIds -\u003e getConcurrentCameraIds. am: cad23c2573\n\nChange-Id: I8b8430eefbd61fb2f62cf9e41c6060900808a7e9\n"
    },
    {
      "commit": "28fc70a6cb4f90c5ff24873d41ad2320a4e7fc34",
      "tree": "30435c4dffc4afd72d6fe7be76e7da2b9992ef56",
      "parents": [
        "1ca9e116a1a8cc1eaecdb3d2481dac71909c270d",
        "cad23c25737f100ac117835aa234c02f2013c0a9"
      ],
      "author": {
        "name": "Jayant Chowdhary",
        "email": "jchowdhary@google.com",
        "time": "Sat Mar 14 01:44:49 2020 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Sat Mar 14 01:44:49 2020 +0000"
      },
      "message": "Merge \"cameraserver: rename getConcurrentStreamingCameraIds -\u003e getConcurrentCameraIds.\" into rvc-dev"
    },
    {
      "commit": "c92172e004d608967fb38824947340e32ac70b1c",
      "tree": "f6ebf1a0995ee1a1515a9cd9ca2f4bb3fb0b9ebd",
      "parents": [
        "f4522c4b1d972f924f1b8374649cfd7ac47d9dd7",
        "4cfc33a875ba878b46327dc6db34d3a75f903342"
      ],
      "author": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Fri Mar 13 01:08:36 2020 +0000"
      },
      "committer": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Fri Mar 13 01:08:36 2020 +0000"
      },
      "message": "Merge \"camera2 ndk: Fix vndk error return value for ACameraManager::OpenCamera().\" into rvc-dev am: 4cfc33a875\n\nChange-Id: I15430ed7b817e6de6c06f6074eb26e4c51f6e566\n"
    },
    {
      "commit": "4cfc33a875ba878b46327dc6db34d3a75f903342",
      "tree": "1cdf37fa3da85f468f59782bbea7e853d3b4deac",
      "parents": [
        "018c41740674d42b79b99f9361f75749ddabacae",
        "911a13b29bfed85ae22d117954b6cd63cac4195d"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Fri Mar 13 00:53:21 2020 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Mar 13 00:53:21 2020 +0000"
      },
      "message": "Merge \"camera2 ndk: Fix vndk error return value for ACameraManager::OpenCamera().\" into rvc-dev"
    },
    {
      "commit": "911a13b29bfed85ae22d117954b6cd63cac4195d",
      "tree": "9fca529f92fe0b9e17dad9fd66b540217c38921c",
      "parents": [
        "904b623c8cdbd43a2089c5d3b45240757bd3bc81"
      ],
      "author": {
        "name": "Jayant Chowdhary",
        "email": "jchowdhary@google.com",
        "time": "Thu Mar 05 15:22:46 2020 -0800"
      },
      "committer": {
        "name": "Jayant Chowdhary",
        "email": "jchowdhary@google.com",
        "time": "Thu Mar 12 15:17:10 2020 -0700"
      },
      "message": "camera2 ndk: Fix vndk error return value for ACameraManager::OpenCamera().\n\nBug: 147402004\n\nTest: make hidl connectDevice return Status::DISCONNECTED.\n      Run AImageReaderVendorTest. See that\n      ACameraManager::openCamera() returns ACAMERA_ERROR_DISCONNECTED.\n\nChange-Id: I3bcf0be54d1b9e88baa0b22350d74c0370ad23a6\nSigned-off-by: Jayant Chowdhary \u003cjchowdhary@google.com\u003e\n"
    },
    {
      "commit": "cad23c25737f100ac117835aa234c02f2013c0a9",
      "tree": "06b8ffe5296c19a4256e990ac2eced37bc209caa",
      "parents": [
        "904b623c8cdbd43a2089c5d3b45240757bd3bc81"
      ],
      "author": {
        "name": "Jayant Chowdhary",
        "email": "jchowdhary@google.com",
        "time": "Tue Mar 10 15:04:59 2020 -0700"
      },
      "committer": {
        "name": "Jayant Chowdhary",
        "email": "jchowdhary@google.com",
        "time": "Wed Mar 11 16:11:14 2020 -0700"
      },
      "message": "cameraserver: rename getConcurrentStreamingCameraIds -\u003e getConcurrentCameraIds.\n\nBug: 150896133\n\nTest: builds\nTest: atest ConcurrentCameraTest.java\n\nChange-Id: Id73f15164200a4cc91354b67784bab3c470caf57\nSigned-off-by: Jayant Chowdhary \u003cjchowdhary@google.com\u003e\n"
    },
    {
      "commit": "859bcfc10ff9e1702d1bc7cfad066807b46db497",
      "tree": "5ab8027dca088203f5da46cfd77d8892ef453d1e",
      "parents": [
        "db51e1f159df4cec37032b436ae6bce746c402c7",
        "ec29306db53ae51d6a1bc094f3b4ca3f98b9f01a"
      ],
      "author": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Wed Mar 11 20:17:31 2020 +0000"
      },
      "committer": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Wed Mar 11 20:17:31 2020 +0000"
      },
      "message": "Merge \"Camera: Add onCameraOpened/onCameraClosed callbacks\" into qt-qpr1-dev am: 67110b519a am: ec29306db5\n\nChange-Id: I786534d1aff256842b0e26db3e550754f7ce0b87\n"
    },
    {
      "commit": "80fbc4cb9e32b1a7bd762d3b106ef1ba94295fc2",
      "tree": "aaebe1757cea12c4a41e34063e4dbcbd7bf1e8f6",
      "parents": [
        "aeef85fba43f7384f25cd777ac2fc392917ba403",
        "5ae4551c9290e02f7890e014ca69b1b748567ccd"
      ],
      "author": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Tue Mar 10 23:29:03 2020 +0000"
      },
      "committer": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Tue Mar 10 23:29:03 2020 +0000"
      },
      "message": "Merge \"Camera: Add onCameraOpened/onCameraClosed callbacks\" into rvc-dev am: 5ae4551c92\n\nChange-Id: I1f9d25313e2dc509e3ae196b4f5d31c582352849\n"
    },
    {
      "commit": "1bb30b2efa3cf029daaedf7cfb4cbec7433ee38d",
      "tree": "90e9b007d4327887126db4907cd3131d9a083a82",
      "parents": [
        "a6544e3bf7de17f104d5fb509d6cb7f6d90dc79f"
      ],
      "author": {
        "name": "Shuzhen Wang",
        "email": "shuzhenwang@google.com",
        "time": "Fri Mar 06 09:02:23 2020 -0800"
      },
      "committer": {
        "name": "Shuzhen Wang",
        "email": "shuzhenwang@google.com",
        "time": "Tue Mar 10 11:38:13 2020 -0700"
      },
      "message": "Camera: Add onCameraOpened/onCameraClosed callbacks\n\nThe onCameraOpened/onCameraClosed callbacks are used to notify camera\nservice client with [] permission that a certain camera device has been\nopened/closed.\n\nTest: Manually check callbacks are received in SystemUI app\nBug: 150540299\nChange-Id: If6f3624c43927c30afef7df0a780eafe3ae4c527\nMerged-In: If6f3624c43927c30afef7df0a780eafe3ae4c527\n"
    },
    {
      "commit": "695044d6f177871d349fa7e9a4a2ac07e093ae25",
      "tree": "e0dda6998c8734784af3f88cc4fa96da98d0eeba",
      "parents": [
        "6d4357197004ad81b2a256db33c82aa5c86a0b41"
      ],
      "author": {
        "name": "Shuzhen Wang",
        "email": "shuzhenwang@google.com",
        "time": "Fri Mar 06 09:02:23 2020 -0800"
      },
      "committer": {
        "name": "Shuzhen Wang",
        "email": "shuzhenwang@google.com",
        "time": "Mon Mar 09 08:43:25 2020 -0700"
      },
      "message": "Camera: Add onCameraOpened/onCameraClosed callbacks\n\nThe onCameraOpened/onCameraClosed callbacks are used to notify camera\nservice client with CAMERA_OPEN_CLOSE_LISTENER permission that a certain\ncamera device has been opened/closed.\n\nTest: Manually check callbacks are received in SystemUI app\nBug: 150540299\nChange-Id: If6f3624c43927c30afef7df0a780eafe3ae4c527\n"
    },
    {
      "commit": "b3f7cd2ec35e4fa1eb013afa13906e25bfc4bcec",
      "tree": "8b7049d25c7a3d2a77e0b72d5e0be8e9bb82494e",
      "parents": [
        "b9bfddabc21c0819e7feccecddf09a70ade2670f"
      ],
      "author": {
        "name": "Jooyung Han",
        "email": "jooyung@google.com",
        "time": "Thu Jan 23 12:27:18 2020 +0900"
      },
      "committer": {
        "name": "Jooyung Han",
        "email": "jooyung@google.com",
        "time": "Wed Feb 26 04:01:10 2020 +0000"
      },
      "message": "Use std::optional for nullable\n\nAIDL now use std::optional to represent nullable types for efficiency\ninstead of std::unique_ptr which might cause additional heap allocation.\n\nBug: 1447732670\nTest: m\nMerged-In: I9045bc6fc2eb06839203af6db94a80de9b83ad1f\nChange-Id: I9045bc6fc2eb06839203af6db94a80de9b83ad1f\n(cherry picked from commit 3f9a3b407aeff0311038b2097d657446c4f98b90)\n\nExempt-From-Owner-Approval: CP from master\n"
    },
    {
      "commit": "8a0be29c19ba7c1de4a0983b8dbcafb730b17fc0",
      "tree": "a7514664b6bda989070d4b7548783a8af1578345",
      "parents": [
        "450c7b2aa6e5df8cdbebd763c719b3e149fb75f2"
      ],
      "author": {
        "name": "Jayant Chowdhary",
        "email": "jchowdhary@google.com",
        "time": "Wed Jan 08 13:10:38 2020 -0800"
      },
      "committer": {
        "name": "Jayant Chowdhary",
        "email": "jchowdhary@google.com",
        "time": "Wed Feb 19 14:48:59 2020 -0800"
      },
      "message": "Add some move constructors and assignment operators to CameraMetadata.\n\nThis avoids unnecessary copying of camera metadata which can get\nexpensive in cases of large camera metadata blobs.\n\nBug: 71727540\n\nTest: GCA (sanity)\nTest: Add CallStack::logStack() in CameraMetadata\u0027s move asignment\n      operator -\u003e see that it gets called for every insertResultLocked.\n\nChange-Id: I6c75c7ce5267126916c865b028e5f7c7f50b763b\nSigned-off-by: Jayant Chowdhary \u003cjchowdhary@google.com\u003e\n"
    },
    {
      "commit": "b949b61103a14645ed6fda09dc626fc273bf49e3",
      "tree": "b7c5fcc38ef21c8cfd31771f4b122a18d01c27dc",
      "parents": [
        "eeb2d61b7f123b87c1fdb359035ced62e5f0dbb9"
      ],
      "author": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Thu Feb 06 11:08:41 2020 -0800"
      },
      "committer": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Tue Feb 11 11:08:01 2020 -0800"
      },
      "message": "Camera NDK: New lifecycle for ACameraMetadata_fromCameraMetadata\n\nInstead of requiring the user to call NewGlobalRef/DeleteGlobalRef\nfor keeping the java object alive when creating an NDK view into it,\nreference count the real native data instead, so that there\u0027s no need\nto keep track of the Java object lifecycle.\n\n- Switch CameraMetadataNative to use std::shared_ptr internally\n- Switch ACameraMetadata to use std::shared_ptr internally\n- Always copy data in the ACameraMetadata copy constructor\n\nTest: New CTS tests pass, fail without this CL\nBug: 148972471\nChange-Id: I40a0ccb8b40c7a89ee7d3a6f7bac7c9c88d709f1\n"
    },
    {
      "commit": "61780a953c8befea40b89a289c6b66d511372c0e",
      "tree": "2cd6c3acbd6b6c90028fe50194f50e9b85cd00c3",
      "parents": [
        "117c6f7d414421093c54055fdd7672e916ec7740",
        "4fa28d2e0a2294bb265a24c7e7fe112076cfc724"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Sat Feb 08 00:32:40 2020 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Sat Feb 08 00:32:40 2020 +0000"
      },
      "message": "Merge \"Camera: Fill out vndk implementation for physical camera callbacks\""
    },
    {
      "commit": "4fa28d2e0a2294bb265a24c7e7fe112076cfc724",
      "tree": "a4cfa9ee18204b5198a72cd414eb367a730a2ea7",
      "parents": [
        "de8e67bc32a4c1494ed59a36c222b6ec7ad594c6"
      ],
      "author": {
        "name": "Shuzhen Wang",
        "email": "shuzhenwang@google.com",
        "time": "Thu Jan 23 15:57:25 2020 -0800"
      },
      "committer": {
        "name": "Shuzhen Wang",
        "email": "shuzhenwang@google.com",
        "time": "Thu Feb 06 13:48:55 2020 -0800"
      },
      "message": "Camera: Fill out vndk implementation for physical camera callbacks\n\nAlso fixed missing implementation of Camera availability callbacks for\nExtendedAvailabilityCallback.\n\nTest: Camera CTS, and vndk test\nBug: 148146086\nChange-Id: I557d6db3900b2346b7bc7e12cd946bc4c2dc4076\n"
    },
    {
      "commit": "04613e1ac72ddff0d86f09b5dcb8645e0342dda6",
      "tree": "786766e9af0b74270987b0d32a965e762a742385",
      "parents": [
        "2308ec5ee0e4c15890c29eb70134631beb74d65c",
        "7d564738165333a2fb1e20147f1979a3ffccefd0"
      ],
      "author": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Thu Feb 06 19:22:27 2020 +0000"
      },
      "committer": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Thu Feb 06 19:22:27 2020 +0000"
      },
      "message": "Merge \"Use libbinderthreadstateutils.\" am: 7d56473816\n\nChange-Id: I72b0f76a2207f8ec8c0c79dd36b80bbeb32791ea\n"
    },
    {
      "commit": "0fcc78cdea615e4dd93d9d310644f927f769ed8d",
      "tree": "824773feaa6dec366dd87735264d72f1aedb145e",
      "parents": [
        "5b16d6b28d7bd7145cd45a1446c616027d33f3f9"
      ],
      "author": {
        "name": "Steven Moreland",
        "email": "smoreland@google.com",
        "time": "Fri Jan 31 15:02:25 2020 -0800"
      },
      "committer": {
        "name": "Steven Moreland",
        "email": "smoreland@google.com",
        "time": "Wed Feb 05 10:14:50 2020 -0800"
      },
      "message": "Use libbinderthreadstateutils.\n\nClients needing to differentiate between system/vendor used to be able\nto use isServingCall. However, this was expensive to implement. This\nalternative approach instead requires users of this API to use\nlibbinderthreadstateutils which does a slighty different operation.\n\nBug: 148692216\nTest: atest VtsHalCameraServiceV2_0TargetTest\nTest: running AImageReaderVendorTest\nTest: try face unlock\nChange-Id: I5615f4e8863487d0de8dad2d0529214750897036\nMerged-In: I5615f4e8863487d0de8dad2d0529214750897036\n"
    },
    {
      "commit": "89a2c5ceef75fbefca117d9df56a8047a36005fa",
      "tree": "ccc27362514e6bb804fe090672d443e71a19646b",
      "parents": [
        "b5c0071bb7a1c6524deb42ac6643d8fae3106248"
      ],
      "author": {
        "name": "Steven Moreland",
        "email": "smoreland@google.com",
        "time": "Fri Jan 31 15:02:25 2020 -0800"
      },
      "committer": {
        "name": "Steven Moreland",
        "email": "smoreland@google.com",
        "time": "Tue Feb 04 11:30:15 2020 -0800"
      },
      "message": "Use libbinderthreadstateutils.\n\nClients needing to differentiate between system/vendor used to be able\nto use isServingCall. However, this was expensive to implement. This\nalternative approach instead requires users of this API to use\nlibbinderthreadstateutils which does a slighty different operation.\n\nBug: 148692216\nTest: atest VtsHalCameraServiceV2_0TargetTest\nTest: running AImageReaderVendorTest\nTest: try face unlock\nChange-Id: I5615f4e8863487d0de8dad2d0529214750897036\n"
    },
    {
      "commit": "0da716bedb8d61afdb46d1871e3eea5c580c8fa2",
      "tree": "fbdb964c4dde886db167017aaff08ef3ecd8f1ed",
      "parents": [
        "9d73033022f883101e17bed172ee63b421fd011e"
      ],
      "author": {
        "name": "Jiawen Chen",
        "email": "jiawen@google.com",
        "time": "Tue Jan 28 15:31:08 2020 -0500"
      },
      "committer": {
        "name": "Jiawen Chen",
        "email": "jiawen@google.com",
        "time": "Wed Jan 29 11:05:46 2020 -0500"
      },
      "message": "Fix ACameraMetadata_fromCameraMetadata crash.\n\nRoot cause was that jclass instances acquired from JNIEnv::FindClass are\nnot pinned and become invalidated due to Java garbage collection. Adding\na new global ref pins the pointer.\n\nFIXED\u003d148174094\n\nTest: atest android.hardware.camera2.cts.CameraManagerTest#testCameraCharacteristicsNdkFromSdk android.hardware.camera2.cts.CaptureResultTest#testCameraCaptureResultAllKeys\nTest: atest NativeCameraDeviceTest NativeCameraManagerTest NativeImageReaderTest NativeStillCaptureTest\n\nChange-Id: Id0601b9c01e1a58485e3b039a87a5cf56a19e0af\n"
    },
    {
      "commit": "2bbdce4e9b9d36ebd6fac699cbefe33c773558fe",
      "tree": "2bb3e0497fbf32e52b2e46bb5aeb91ec531b4629",
      "parents": [
        "e66dc80ed7ab709613d7f465f22793ef3e9d0114"
      ],
      "author": {
        "name": "Jayant Chowdhary",
        "email": "jchowdhary@google.com",
        "time": "Sun Jan 12 14:55:41 2020 -0800"
      },
      "committer": {
        "name": "Jayant Chowdhary",
        "email": "jchowdhary@google.com",
        "time": "Sun Jan 26 19:20:17 2020 -0800"
      },
      "message": "ICameraService: Add methods to query concurrent streaming camera support.\n\n- getConcurrentStreamingCameraIds() :\n        returns a list of combinations of camera ids that may stream\n        concurrently.\n\n- isConcurrentSessionConfigurationSupported() :\n        queries whether camera devices can support the\n        corresponding given session configurations concurrently.\n\nBug: 77960042\n\nTest: GCA (sanity)\nTest: CTS\n\nChange-Id: Iba237118ccf145695a500a2c406713e416e66011\nSigned-off-by: Jayant Chowdhary \u003cjchowdhary@google.com\u003e\n"
    },
    {
      "commit": "e2a8892e61129a62c1ac158d1b7f25bead50ef03",
      "tree": "78284a4b097f87d6ef80268da3913240fc326093",
      "parents": [
        "a2055c57eaf82a94fdcbf8af1ae6069b357d0105"
      ],
      "author": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Mon Jan 06 13:09:21 2020 -0800"
      },
      "committer": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Thu Jan 23 13:25:41 2020 -0800"
      },
      "message": "Camera NDK: Add android.scaler.rotateAndCrop control\n\nTest: None yet\nBug: 134631897\nChange-Id: I656e0da76f440ae1ceca3e05f3a66ef26465de24\n"
    },
    {
      "commit": "4385816acc487864df24f48a97c5c1e772d87313",
      "tree": "47ebe72a3ae88881555ae75cccf1f65d4dc3017a",
      "parents": [
        "0bc6f60e1f036380bd48d022631e6561b90f210c"
      ],
      "author": {
        "name": "Shuzhen Wang",
        "email": "shuzhenwang@google.com",
        "time": "Fri Jan 10 13:42:15 2020 -0800"
      },
      "committer": {
        "name": "Shuzhen Wang",
        "email": "shuzhenwang@google.com",
        "time": "Thu Jan 23 00:08:42 2020 -0800"
      },
      "message": "Camera: Support new provider callback version in camera service\n\nThe new provider callback version enables availability callback for\nphysical camera.\n\nTest: Camera CTS\nBug: 119325027\nChange-Id: I22e0b669c3d9891a431e1befc7f1c9f40b826a08\n"
    },
    {
      "commit": "f0b35a84d669235a39ec67ce938d228029b2663f",
      "tree": "b4c0eb50adf8544d490fbb412795372bf00bf857",
      "parents": [
        "2c5b3c2f90acaf233112c7921e4c75a88d7a7227",
        "cc0b795ac29688e1675d177e60eb4f37184240c5"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Wed Jan 22 04:01:01 2020 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Jan 22 04:01:01 2020 +0000"
      },
      "message": "Merge changes from topic \"OfflineReproc-impl\"\n\n* changes:\n  Camera: Propagate all offline stream ids to clients\n  Camera: Add initial offline client listener logic\n  Camera: Initial support for composite streams in offline mode\n  Camera: Initial offline session client\n  Camera: fill in Camera3Device offline processing impl\n"
    },
    {
      "commit": "2c5b3c2f90acaf233112c7921e4c75a88d7a7227",
      "tree": "cf1c4adf07ad5ebf894b45429632da72d2a25325",
      "parents": [
        "8bd561127e1c124e6abae040683df7ae70763f74",
        "9f713e83cf3c0f31d4b2771d36fdd66a5faa9068"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Tue Jan 21 22:02:48 2020 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Jan 21 22:02:48 2020 +0000"
      },
      "message": "Merge \"Add ACameraMetadata_fromCameraMetadata.\""
    },
    {
      "commit": "cc0b795ac29688e1675d177e60eb4f37184240c5",
      "tree": "c55c8e4b206b243c09947dfc5149867fdfc35117",
      "parents": [
        "d99c8ae877daa76ad182bab886c85ad4811ff428"
      ],
      "author": {
        "name": "Emilian Peev",
        "email": "epeev@google.com",
        "time": "Tue Jan 07 13:54:47 2020 -0800"
      },
      "committer": {
        "name": "Yin-Chia Yeh",
        "email": "yinchiayeh@google.com",
        "time": "Tue Jan 21 13:23:33 2020 -0800"
      },
      "message": "Camera: Propagate all offline stream ids to clients\n\nCamera clients must be aware of any configured streams\nthat can support offline processing mode.\nA few corner cases that need to be considered:\n - Composite streams can support offline mode only\n   when all internal streams support it as well.\n - Streams that use the internal camera buffer manager\n   will not have support for offline mode.\n - Shared streams are also unsupported in offline mode.\n\nBug: 135142453\nTest: Camera CTS\nChange-Id: Idde826a6fb18a8907850e87cfe593de7cb1c5f4a\n"
    },
    {
      "commit": "b2bc5a46efe3e77a5962ba0f2f770c524e93e03f",
      "tree": "378fd039dafaeaff8882eb774a7be1a864778b86",
      "parents": [
        "5fd603ea87e9f94e4b8c5fdc5b891518d6a471a8"
      ],
      "author": {
        "name": "Emilian Peev",
        "email": "epeev@google.com",
        "time": "Wed Nov 20 16:02:14 2019 -0800"
      },
      "committer": {
        "name": "Yin-Chia Yeh",
        "email": "yinchiayeh@google.com",
        "time": "Tue Jan 21 13:22:53 2020 -0800"
      },
      "message": "Camera: Initial offline session client\n\nTest: N/A, no implementation yet\nBug: 135142453\nChange-Id: I08fecba80ab88a8b70fe71fdd4b660d49e40324c\n"
    },
    {
      "commit": "9f713e83cf3c0f31d4b2771d36fdd66a5faa9068",
      "tree": "2a44923b190b4cfb1793a20e7692e4a0b61de887",
      "parents": [
        "255f610f5ab71b5e36d93744dfe058daf6c96041"
      ],
      "author": {
        "name": "Jiawen Chen",
        "email": "jiawen@google.com",
        "time": "Wed Jan 15 11:06:13 2020 -0500"
      },
      "committer": {
        "name": "Jiawen Chen",
        "email": "jiawen@google.com",
        "time": "Tue Jan 21 14:26:28 2020 -0500"
      },
      "message": "Add ACameraMetadata_fromCameraMetadata.\n\nTest: atest android.hardware.camera2.cts.CameraManagerTest#testCameraCharacteristicsNdkFromSdk android.hardware.camera2.cts.CaptureResultTest#testCameraCaptureResultAllKeys\nBug: 80513080\n\nChange-Id: If3ec6e9531829f2eaec788df237ff69083a6c580\n"
    },
    {
      "commit": "31f98910412ed7e023ffb240c49de63f958fd226",
      "tree": "eaa6841ecc653cac5c87c54b21947263c14c89bf",
      "parents": [
        "ff1725382653dfa2db8536edc38a6b1f2c166f2a",
        "b0168b2bca591185b522cbf1911817d513a94084"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Thu Jan 16 21:49:18 2020 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Jan 16 21:49:18 2020 +0000"
      },
      "message": "Merge \"Camera: Add new pose reference for foldables\""
    },
    {
      "commit": "b0168b2bca591185b522cbf1911817d513a94084",
      "tree": "340ed39e2d67682cc9e833f59ca851c38e29a6e4",
      "parents": [
        "f0a91423d480c4634e647c4e4a1fe760580f7ff2"
      ],
      "author": {
        "name": "Shuzhen Wang",
        "email": "shuzhenwang@google.com",
        "time": "Wed Jan 08 13:06:46 2020 -0800"
      },
      "committer": {
        "name": "Shuzhen Wang",
        "email": "shuzhenwang@google.com",
        "time": "Tue Jan 14 14:15:37 2020 -0800"
      },
      "message": "Camera: Add new pose reference for foldables\n\nBug: 119325027\nTest: Build\nChange-Id: I0e5291acb53dd0e5861a3031fd082cf075468487\n"
    },
    {
      "commit": "9d37afccb782049e8a39ac49961327e84f67b65a",
      "tree": "06992e9b1127350a478686ea66976d5002ae6d4d",
      "parents": [
        "d1ce689ac43bfd6c75c2f15a349e475396d04dcd"
      ],
      "author": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Thu Jan 09 15:11:58 2020 -0800"
      },
      "committer": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Thu Jan 09 15:11:58 2020 -0800"
      },
      "message": "Camera: Improve timestamping docs\n\nSpecifically, publicly commit to UNKNOWN being CLOCK_MONOTONIC, though\nwith loose accuracy guarantees.\n\nAlso document how to handle REALTIME timestamps for A/V sync purposes.\n\nTest: Builds, docs-only change\nChange-Id: I600b553c38f1b3490879630ae90d207bed0277b5\n"
    },
    {
      "commit": "39dff6917f6a87ce0f9a5eb9e5868f266a65f8c1",
      "tree": "7d39b32e42829c52c9ec6e8915e291a3395cebe3",
      "parents": [
        "336ffa96f5bb0cdd4b24b7967d9385c42d7e9299"
      ],
      "author": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Mon Jan 06 16:11:49 2020 -0800"
      },
      "committer": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Mon Jan 06 16:11:49 2020 -0800"
      },
      "message": "Camera: Add visual samples for android.scaler.cropRegion docs\n\nTo better document the cropping specification for camera2, add diagrams\nfrom source.android.com into the reference docs as well.\n\nTest: Docs build, look correct\n\nChange-Id: I624dac7dbdc9146fbb89ab57cf6fda4ae03c1214\n"
    },
    {
      "commit": "47cdcf399ff933d2bec4e505a02938311c9f5e32",
      "tree": "52e51b2e61f48bcac25cc263ef9a9be607acfe01",
      "parents": [
        "684e4758669bacea71379735d49bdc74807772f3"
      ],
      "author": {
        "name": "Shuzhen Wang",
        "email": "shuzhenwang@google.com",
        "time": "Fri Nov 08 15:48:19 2019 -0800"
      },
      "committer": {
        "name": "Shuzhen Wang",
        "email": "shuzhenwang@google.com",
        "time": "Wed Jan 01 05:15:14 2020 +0000"
      },
      "message": "CameraMetadata: Add trace points CameraMetadata operations\n\nTest: Build\nBug: 144028609\nChange-Id: I168b6394844837a710d66a21ba7c1cf8b78c3108\n"
    },
    {
      "commit": "dbdf72b97b2d591bfecd22825df6b2550464bb75",
      "tree": "2897d8758f1c148594172e968ba1738565c97df5",
      "parents": [
        "9c7e2a51e2fb24bbf193b46a3f5e892af19cdfe5"
      ],
      "author": {
        "name": "Shuzhen Wang",
        "email": "shuzhenwang@google.com",
        "time": "Wed Nov 13 11:22:12 2019 -0800"
      },
      "committer": {
        "name": "Shuzhen Wang",
        "email": "shuzhenwang@google.com",
        "time": "Wed Dec 18 14:34:09 2019 -0800"
      },
      "message": "Camera: Add support for new camera zoom API\n\n- Add NDK API spec for the new zoom API\nThe new zoom API combines optical and digital zoom, and supports both\nzoom-out and zoom-in with more precision.\n- Add new NDK API to specify separate zoom ratio ranges for different\nbokeh modes.\n- Add ZoomRatioMapper in camera service to convert between\ncontrol.zoomRation to and from scaler.cropRegion.\n\nTest: Camera CTS/ITS/CtsVerifier/ZoomRatioTest\nBug: 130025314\nChange-Id: I4c7d867f840b5720bc73bb0485e8a9a93d2276b5\n"
    },
    {
      "commit": "1f338c87f80bbf6adf1985c88ec8dfed311d4a45",
      "tree": "c819dfe26697ea73d28064e26428c28e30af8535",
      "parents": [
        "85b01c780e0065ee56a4623f62edad1125108be4",
        "826e5c01ed7cf182009de09fc52ac1e250833540"
      ],
      "author": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Tue Dec 17 21:45:33 2019 +0000"
      },
      "committer": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Tue Dec 17 21:45:33 2019 +0000"
      },
      "message": "Merge \"camera2 ndk: Allow nullptr for ACameraCaptureSession_captureCallbacks.onClosed.\" into qt-qpr1-dev am: 9ed54cdf4d am: 826e5c01ed\n\nChange-Id: I33107fb888e664a1d80fba26dd8645991863115e\n"
    },
    {
      "commit": "221f7b2d2140a49411767b1706eb48037bfada71",
      "tree": "b23dd37c758df7c1aae8e07e22cb8d3324e16b1c",
      "parents": [
        "f12b7622412701c4725ed5633972dd53bdd4d3c9"
      ],
      "author": {
        "name": "Jayant Chowdhary",
        "email": "jchowdhary@google.com",
        "time": "Wed Aug 14 15:00:24 2019 -0700"
      },
      "committer": {
        "name": "Jayant Chowdhary",
        "email": "jchowdhary@google.com",
        "time": "Mon Dec 16 13:17:17 2019 -0800"
      },
      "message": "camera2 ndk: Allow nullptr for ACameraCaptureSession_captureCallbacks.onClosed.\n\nBug: 134680093\nBug: 146357162\n\nTest: AImageReaderVendorTest\n\nMerged-In: I8d365b434c257e949496d9495d0fa31a18a2e068\nChange-Id: I8d365b434c257e949496d9495d0fa31a18a2e068\nSigned-off-by: Jayant Chowdhary \u003cjchowdhary@google.com\u003e\n(cherry picked from commit 9da975d887ef8d63970e4b11dc9f2c0e0da92705)\n"
    },
    {
      "commit": "b978c389e811a957d173cca97e19dfb5cc49ba38",
      "tree": "2586a6d50d09135ede7ff4d609f4b332fb44cbe2",
      "parents": [
        "68e5e9a665f0b57be41329325258a9839a9c7ed2"
      ],
      "author": {
        "name": "Yin-Chia Yeh",
        "email": "yinchiayeh@google.com",
        "time": "Wed Oct 30 00:22:37 2019 -0700"
      },
      "committer": {
        "name": "Yin-Chia Yeh",
        "email": "yinchiayeh@google.com",
        "time": "Mon Dec 16 11:31:14 2019 -0800"
      },
      "message": "Camera: add offline session API skeleton\n\nTest: N/A, no implementation yet\nBug: 135142453\nChange-Id: I497e42433d4d49466fe37467d4ff66e8583c55df\n"
    },
    {
      "commit": "f12b7622412701c4725ed5633972dd53bdd4d3c9",
      "tree": "d4f2eab461cb087a7488e49201294a3c6fdaac0d",
      "parents": [
        "960bbfab7bd5f2fff6afdecb920f21b8eb3fee45"
      ],
      "author": {
        "name": "Jayant Chowdhary",
        "email": "jchowdhary@google.com",
        "time": "Thu Sep 26 08:50:17 2019 -0700"
      },
      "committer": {
        "name": "Jayant Chowdhary",
        "email": "jchowdhary@google.com",
        "time": "Mon Dec 09 14:08:59 2019 -0800"
      },
      "message": "camera2ndk: ~ACameraCaptureSession shouldn\u0027t hold device lock in ACameraDevice_close().\n\nWe call disconnectLocked before stopping CameraDevice\u0027s looper, in order to avoid this situation:\n\n1) Its possible that an OnResultReceived callback is received, and posts an\n   AMessage with sp\u003cACameraCaptureSession\u003e on CameraDevice\u0027s looper.\n\n2) Before the looper message is processsed, ACameraDevice_close() is\n   called by the client, which results in the looper being stopped and\n   cleared with device lock held.\n\n3) When the looper is getting cleared, the AMessage containg the\n   ACameraCaptureSession pointer is destructed leading to\n   ~ACameraCaptureSession running without knowing that the device is\n   being closed, as a result it tries to hold device lock, resulting in\n   a deadlock.\n\nBug: 141603005\n\nTest: CTS native tests\nTest: use camera2 vndk client for extended periods of time\n\nChange-Id: Ia0d47fc2975981055cd1f2103c1cbe8d76642fe4\nSigned-off-by: Jayant Chowdhary \u003cjchowdhary@google.com\u003e\n(cherry picked from commit a8bf1c6e6d210833070152adf130f4d988fc255e)\n"
    },
    {
      "commit": "efdabae3644f6009846aa726d362150c64f0b0c1",
      "tree": "f46fd5cdc15c3f8976e92ec3d81b332b8ca6e153",
      "parents": [
        "73b065fe9ea7169a1747490b95e58a981388c1fc",
        "b3fc5d6b8edaf593c907430cd8bc90c2fc718480"
      ],
      "author": {
        "name": "Jayant Chowdhary",
        "email": "jchowdhary@google.com",
        "time": "Tue Nov 26 23:23:04 2019 -0800"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Tue Nov 26 23:23:04 2019 -0800"
      },
      "message": "Merge \"camera2 ndk: Don\u0027t send onStatusChanged callbacks for devices which don\u0027t support camera2.\" am: b2872d478f am: 837798c7e3\nam: b3fc5d6b8e\n\nChange-Id: I6cfd02b1ef58b05d70ab90f229cb69b4829c3902\n"
    },
    {
      "commit": "837798c7e3600ae424a0e8d6badcbae0762f53cd",
      "tree": "c962087a9ff1ed8b9aee7a5207072489ce56bd92",
      "parents": [
        "7cde662ae30119b45f5530ade23d77ff3c82ad4e",
        "b2872d478fbb66eddd59d8a35d81796850927153"
      ],
      "author": {
        "name": "Jayant Chowdhary",
        "email": "jchowdhary@google.com",
        "time": "Tue Nov 26 23:18:02 2019 -0800"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Tue Nov 26 23:18:02 2019 -0800"
      },
      "message": "Merge \"camera2 ndk: Don\u0027t send onStatusChanged callbacks for devices which don\u0027t support camera2.\"\nam: b2872d478f\n\nChange-Id: Ic224387dcfa8a4b180a6436babf59813e0f1eed1\n"
    },
    {
      "commit": "80f128b4074ab814060b460cc5059c523e81eeb3",
      "tree": "a36b3ba3757dfaa9e45bb55c3ce690f1dacd0bdd",
      "parents": [
        "3066e206366b25b6b64cf0ad29188bd04b56b183"
      ],
      "author": {
        "name": "Jayant Chowdhary",
        "email": "jchowdhary@google.com",
        "time": "Wed Oct 30 16:13:31 2019 -0700"
      },
      "committer": {
        "name": "Jayant Chowdhary",
        "email": "jchowdhary@google.com",
        "time": "Mon Nov 18 08:45:48 2019 -0800"
      },
      "message": "camera2 ndk: Don\u0027t send onStatusChanged callbacks for devices which don\u0027t support camera2.\n\nBug: 143368726\n\nTest: CTS native camera tests\n\nChange-Id: I7b33bdc906924f3acb3d1809aacdf6e4769d0607\nSigned-off-by: Jayant Chowdhary \u003cjchowdhary@google.com\u003e\n"
    },
    {
      "commit": "9e648f6d57901b8d2c6d595d08d0cb55d87981e4",
      "tree": "93503618ab62ac82e0f1dd0c5fa8fdefaed04748",
      "parents": [
        "f1a584a44cd2fb35a1817438db4342ee8bd6825e"
      ],
      "author": {
        "name": "Philip P. Moltmann",
        "email": "moltmann@google.com",
        "time": "Mon Nov 04 12:52:45 2019 -0800"
      },
      "committer": {
        "name": "Philip P. Moltmann",
        "email": "moltmann@google.com",
        "time": "Wed Nov 13 16:57:43 2019 -0800"
      },
      "message": "Pipe through featureId from context to Camera code\n\nBug: 136595429\nTest: atest CtsAppOpsTestCases (now including two new test cases that\n          open a camera with a null and a non-null feature)\nChange-Id: Idfb8f8049dff536525d4f081151c79d980d76c69\n"
    },
    {
      "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": "77e073fcf861354cc2197c930a9f3ccbfee4bb41",
      "tree": "640e043a35b5819fb4c578f4b9458c0d93c84b44",
      "parents": [
        "77e5c86ab8179080c8687aa21c838051f330ba0a"
      ],
      "author": {
        "name": "Shuzhen Wang",
        "email": "shuzhenwang@google.com",
        "time": "Mon Jul 08 15:09:13 2019 -0700"
      },
      "committer": {
        "name": "Shuzhen Wang",
        "email": "shuzhenwang@google.com",
        "time": "Mon Oct 28 17:42:37 2019 -0700"
      },
      "message": "Camera: Add bokeh mode tags in camera ndk metadata\n\nIntroduce new bokeh mode metadata tags for camera device to enable bokeh\neffect.\n\nTest: Build and read docs\nBug: 118258123\nChange-Id: Iadd7c2a0edcafc516411a5a5f49ad0563e3736be\n"
    },
    {
      "commit": "77819b82784e4a0a9ef4ccea7618c886f175817e",
      "tree": "ed83084e698b6494774dc0cd5b9cfe4815d899f3",
      "parents": [
        "57cf28f79c1d24ed259bcd8ca6227bb06952c24c",
        "00900336c1e2a67fb852758f9790fbf8050c19c5"
      ],
      "author": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Fri Oct 25 13:30:40 2019 -0700"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Fri Oct 25 13:30:40 2019 -0700"
      },
      "message": "Merge \"Remove more header symlinks\" am: a2bc7eada8 am: ec565c575d am: ef6bd3e3a5\nam: 00900336c1\n\nChange-Id: I1ee034dda7407c84110b8fa92a38a427d58203b5\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": "ec565c575d029bdef8bcdf9762276b44255e5dfb",
      "tree": "660e5fa119829f2528809ec9c7ecfb4cc27d7082",
      "parents": [
        "001b8646402131b5e55c6633971b9d9a851cd18e",
        "a2bc7eada863d845b04c85195dbb26df37bdef69"
      ],
      "author": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Fri Oct 25 13:08:26 2019 -0700"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Fri Oct 25 13:08:26 2019 -0700"
      },
      "message": "Merge \"Remove more header symlinks\"\nam: a2bc7eada8\n\nChange-Id: I690dd345b0a74078b7cae24bdf3fdb2549d8c62d\n"
    },
    {
      "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": "f6ad0bb7ca3c4ff789f704a77868e04d915f5d55",
      "tree": "93c8f1ecc920728b799fbb204c590a7f3305a826",
      "parents": [
        "77dfac6e8f9e74ef77597e091aaace61f7e3b5ee",
        "e3b3be4826e5a3d43f2547c4fdd469ddd7cc5847"
      ],
      "author": {
        "name": "Jayant Chowdhary",
        "email": "jchowdhary@google.com",
        "time": "Wed Oct 23 10:02:52 2019 -0700"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Wed Oct 23 10:02:52 2019 -0700"
      },
      "message": "Merge changes from topic \"camera_ndk_fixes\" am: 35f148bc5a am: ee6b817886 am: 6928bc3506\nam: e3b3be4826\n\nChange-Id: I1583ced230e9c359d8dcdf39773c2da7b5eec9b1\n"
    },
    {
      "commit": "e3b3be4826e5a3d43f2547c4fdd469ddd7cc5847",
      "tree": "96c861f6d91b0234a42d8aa40488c8348e27e0c6",
      "parents": [
        "513c0f4b394c9d02a77e7ba490aeba5117ab2204",
        "6928bc3506207864e07dbd3b95eee19009bb2071"
      ],
      "author": {
        "name": "Jayant Chowdhary",
        "email": "jchowdhary@google.com",
        "time": "Wed Oct 23 09:57:17 2019 -0700"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Wed Oct 23 09:57:17 2019 -0700"
      },
      "message": "Merge changes from topic \"camera_ndk_fixes\" am: 35f148bc5a am: ee6b817886\nam: 6928bc3506\n\nChange-Id: Id0738d4d84b4715e2579d6e77f64b795ff1d2cb8\n"
    },
    {
      "commit": "ee6b8178863916cfa7aa751ddb1b45be932b01ab",
      "tree": "fc1c6ade2b019c017a2fa1e48e956263e57284b9",
      "parents": [
        "b340eb8a289ae7c289a0bb87176bc8480f8d1dde",
        "35f148bc5a1cb1efffd9aee0223a06720a303329"
      ],
      "author": {
        "name": "Jayant Chowdhary",
        "email": "jchowdhary@google.com",
        "time": "Mon Oct 21 11:30:56 2019 -0700"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Mon Oct 21 11:30:56 2019 -0700"
      },
      "message": "Merge changes from topic \"camera_ndk_fixes\"\nam: 35f148bc5a\n\nChange-Id: I0e8da27ad9d603597ee1741c3e89322f98dedd94\n"
    },
    {
      "commit": "a8bf1c6e6d210833070152adf130f4d988fc255e",
      "tree": "4c66eb6d2c40df1f398b3d05a8ef7035e1801f07",
      "parents": [
        "9ddd6e8d9e472e9bc9e023444a4715466d1e9390"
      ],
      "author": {
        "name": "Jayant Chowdhary",
        "email": "jchowdhary@google.com",
        "time": "Thu Sep 26 08:50:17 2019 -0700"
      },
      "committer": {
        "name": "Jayant Chowdhary",
        "email": "jchowdhary@google.com",
        "time": "Mon Oct 14 11:02:46 2019 -0700"
      },
      "message": "camera2ndk: ~ACameraCaptureSession shouldn\u0027t hold device lock in ACameraDevice_close().\n\nWe call disconnectLocked before stopping CameraDevice\u0027s looper, in order to avoid this situation:\n\n1) Its possible that an OnResultReceived callback is received, and posts an\n   AMessage with sp\u003cACameraCaptureSession\u003e on CameraDevice\u0027s looper.\n\n2) Before the looper message is processsed, ACameraDevice_close() is\n   called by the client, which results in the looper being stopped and\n   cleared with device lock held.\n\n3) When the looper is getting cleared, the AMessage containg the\n   ACameraCaptureSession pointer is destructed leading to\n   ~ACameraCaptureSession running without knowing that the device is\n   being closed, as a result it tries to hold device lock, resulting in\n   a deadlock.\n\nBug: 141603005\n\nTest: CTS native tests\nTest: use camera2 vndk client for extended periods of time\n\nChange-Id: Ia0d47fc2975981055cd1f2103c1cbe8d76642fe4\nSigned-off-by: Jayant Chowdhary \u003cjchowdhary@google.com\u003e\n"
    },
    {
      "commit": "3c797d1d0502c9323acdd1085af96280d20d0d1c",
      "tree": "79b4ec7ba4edcd7ca6560e076957b10178aa0913",
      "parents": [
        "9ee56ec1a7ace45b42b65e01fdda98114b5c0833"
      ],
      "author": {
        "name": "Jayant Chowdhary",
        "email": "jchowdhary@google.com",
        "time": "Tue Jun 11 13:35:42 2019 -0700"
      },
      "committer": {
        "name": "Jayant Chowdhary",
        "email": "jchowdhary@google.com",
        "time": "Mon Oct 07 18:14:18 2019 -0700"
      },
      "message": "AImageReaderVendorTest: Tolerate failures for ACameraDevice_isSessionConfigurationSupported.\n\nBug: 134683975\n\nTest: AImageReaderVendorTest on multiple devices supporting physical different stream\n      combinations.\n\nMerged-In: I6aabd024b7092d4ecf60f8e0adbd0a2bf799cd25\nChange-Id: I6aabd024b7092d4ecf60f8e0adbd0a2bf799cd25\n(cherry picked from commit 48eb9b80c4e2751488b68df29ea64a137b52e2f7)\nSigned-off-by: Jayant Chowdhary \u003cjchowdhary@google.com\u003e\n"
    },
    {
      "commit": "71c3dea4a21789e64a6fab369af3a5c8f6ee6229",
      "tree": "a8248314b670d522d8cf15e47b4c7aa0195cb144",
      "parents": [
        "d22ee095a0fd479cadc163c51af8f190bdf573f7",
        "15acd121f0f8f006ac7e8ca81dc2a4b2cd8eb6b1"
      ],
      "author": {
        "name": "Shuzhen Wang",
        "email": "shuzhenwang@google.com",
        "time": "Fri Sep 20 17:59:17 2019 -0700"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Fri Sep 20 17:59:17 2019 -0700"
      },
      "message": "Merge \"Camera: Delay pingCameraServiceProxy to end of onFirstRef\" into qt-qpr1-dev am: a118105368\nam: 15acd121f0\n\nChange-Id: I94ee8ac282afb46f2691e363267f40dd85d5a25e\n"
    },
    {
      "commit": "15acd121f0f8f006ac7e8ca81dc2a4b2cd8eb6b1",
      "tree": "43c0813eb09b6adb7566ff607fa2df7d34be2d98",
      "parents": [
        "3dcd55bf8d45e9f7ab40ba00e7afdfb9b0036517",
        "a11810536889285331a3b82fa202311fd5bf8b8d"
      ],
      "author": {
        "name": "Shuzhen Wang",
        "email": "shuzhenwang@google.com",
        "time": "Fri Sep 20 17:55:17 2019 -0700"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Fri Sep 20 17:55:17 2019 -0700"
      },
      "message": "Merge \"Camera: Delay pingCameraServiceProxy to end of onFirstRef\" into qt-qpr1-dev\nam: a118105368\n\nChange-Id: Ia1913dfc9e1dc1d94b8c285819bd4137986c7fde\n"
    },
    {
      "commit": "24b44157d3a9736fce60479cbbbabadf53471df0",
      "tree": "4f4e0b6b8941b52fee0ed67d764734d098453d68",
      "parents": [
        "804b87d1f80df7b5fbe77e59100c375be1542db7"
      ],
      "author": {
        "name": "Shuzhen Wang",
        "email": "shuzhenwang@google.com",
        "time": "Fri Sep 20 10:38:11 2019 -0700"
      },
      "committer": {
        "name": "Shuzhen Wang",
        "email": "shuzhenwang@google.com",
        "time": "Fri Sep 20 10:48:18 2019 -0700"
      },
      "message": "Camera: Delay pingCameraServiceProxy to end of onFirstRef\n\nThe cameraservice is only registered to service manager after onFirstRef\nis returned. To reduce the probability of getBinderService() call\nreturning null, move pingCameraServiceProxy to end of onFirstRef().\n\nAlso add debug messages in onFirstRef and main() for better diagnoses.\n\nTest: Camera CTS\nBug: 140414594\nChange-Id: I52defd1c138ade57ebc5181c42aff30921fbeaeb\n"
    },
    {
      "commit": "fdb43e49e9b43df47c8d9afb86f7e4ab83f8702b",
      "tree": "124853b510e9586e006aca7aea9dd2291f6265ea",
      "parents": [
        "ee14f8236132fc05a1236e0c54aaf9af91b38b56",
        "cfaf477e54f6c9d58b079f73507a5dfbeb773faa"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Wed Sep 11 20:31:33 2019 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Sep 11 20:31:33 2019 +0000"
      },
      "message": "Merge \"Merge qt-r1-dev-plus-aosp-without-vendor (5817612) into stage-aosp-master\" into stage-aosp-master"
    },
    {
      "commit": "eccdf2ae06f02ad90c43f47f6b39d709caa9acab",
      "tree": "d22f69dda330eb61995f5d423555284e29899fed",
      "parents": [
        "0f6aaed13c22a8f5a428390ae2b89429a8922668",
        "cfab4e162c66843f1d0b2b45ef2281201df78d06"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Tue Sep 10 23:37:34 2019 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Sep 10 23:37:34 2019 +0000"
      },
      "message": "Merge \"Camera: update camera audio restriction API\""
    },
    {
      "commit": "78cb7123b23c197b296d40b2ffb886bde97ddfc4",
      "tree": "db2db564be30a32fd02232f7bc856b53621eed8f",
      "parents": [
        "a4be0c37e92faf1579b05077d7e3cbef8b93db78",
        "8c7465931249ed0ffea7de99f2d736ce0bc607dc"
      ],
      "author": {
        "name": "Steven Moreland",
        "email": "smoreland@google.com",
        "time": "Mon Sep 09 14:51:59 2019 -0700"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Mon Sep 09 14:51:59 2019 -0700"
      },
      "message": "Merge \"Remove libhwbinder/libhidltransport deps\" am: 6cffe44e0f am: b7d2632c22 am: 2dc8ae5642\nam: 8c74659312\n\nChange-Id: I3ce106ae89de98eb9c438ccc30067a07b44da581\n"
    },
    {
      "commit": "2dc8ae5642ff2e4d92a5f141189f73082d0a9478",
      "tree": "933101c420fd8c2e7b4fdb5baf5c10310739bb17",
      "parents": [
        "f6d4e3349b7b44995109f845328ce73e98eb6b82",
        "b7d2632c22781990ab23d492abce4820334a2842"
      ],
      "author": {
        "name": "Steven Moreland",
        "email": "smoreland@google.com",
        "time": "Mon Sep 09 14:37:57 2019 -0700"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Mon Sep 09 14:37:57 2019 -0700"
      },
      "message": "Merge \"Remove libhwbinder/libhidltransport deps\" am: 6cffe44e0f\nam: b7d2632c22\n\nChange-Id: I93c5296391c469571e153e5366ee90ab9754ea9c\n"
    },
    {
      "commit": "cfab4e162c66843f1d0b2b45ef2281201df78d06",
      "tree": "2acaf2be7a2ec5c1b236540842213f0da2843f13",
      "parents": [
        "5f5ee1ccd75a23df68fd506142348f1476e1e5b6"
      ],
      "author": {
        "name": "Yin-Chia Yeh",
        "email": "yinchiayeh@google.com",
        "time": "Mon Sep 09 13:08:28 2019 -0700"
      },
      "committer": {
        "name": "Yin-Chia Yeh",
        "email": "yinchiayeh@google.com",
        "time": "Mon Sep 09 13:08:28 2019 -0700"
      },
      "message": "Camera: update camera audio restriction API\n\nAdd dedicated get API for API review feedback.\n\nTest: updated CTS pass\nBug: 140524714\nChange-Id: I0559e24d6d9f4a2d9db6c0b6035eaf49bd41d950\n"
    },
    {
      "commit": "af905470168892078ca85cbd77c844b07f46d1d7",
      "tree": "02acf167a294e18f49a8cf075aa6ee7eb21fbf68",
      "parents": [
        "1210f45ea764f0d186e55a19c068283a4ff6cfac"
      ],
      "author": {
        "name": "Steven Moreland",
        "email": "smoreland@google.com",
        "time": "Fri Sep 06 12:08:49 2019 -0700"
      },
      "committer": {
        "name": "Steven Moreland",
        "email": "smoreland@google.com",
        "time": "Fri Sep 06 12:08:49 2019 -0700"
      },
      "message": "Remove libhwbinder/libhidltransport deps\n\nSince these were combined into libhidlbase.\n\nBug: 135686713\nTest: build only (libhwbinder/libhidltransport are empty)\nChange-Id: I6cc85a91afb603e31b85090917f9f3b59d82a4d1\n"
    },
    {
      "commit": "6bbbfe2daf51a59056c331182aec57c79e474f55",
      "tree": "7576e1be43dbe35b69a5867b41587e7b9a45a5df",
      "parents": [
        "dba03231c2fb2c54c8a7b313786c7bc7d3471908",
        "7dc76b20ab402a032f00e93c5ef8594bef7336cd"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Sun Sep 01 04:40:38 2019 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Sun Sep 01 04:40:38 2019 +0000"
      },
      "message": "Merge \"Camera: Mention postRawSensitivityBoost together with sensitivity\""
    },
    {
      "commit": "dba03231c2fb2c54c8a7b313786c7bc7d3471908",
      "tree": "cc1ee659dacb67c1eb87cc9f6967126bf6ab9dc4",
      "parents": [
        "b59478c8fb4cefef00fb46c05749d64265d5bb4a"
      ],
      "author": {
        "name": "Yin-Chia Yeh",
        "email": "yinchiayeh@google.com",
        "time": "Mon Aug 19 15:54:28 2019 -0700"
      },
      "committer": {
        "name": "Yin-Chia Yeh",
        "email": "yinchiayeh@google.com",
        "time": "Fri Aug 30 14:41:17 2019 -0700"
      },
      "message": "Camera: implement camera audio restriction API\n\nTest: new CTS test\nBug: 135676184\nChange-Id: I5f26e343a4ee92b66fabfaa6bda94224ae311c40\n"
    },
    {
      "commit": "5216b21181e16103db22a8fe10ef76eca6fc83fa",
      "tree": "5064f0c470e238dbd3f66ab307b1b87da1884233",
      "parents": [
        "676a5419d7cd73695ce22fe0c6d8666dc9c4e234"
      ],
      "author": {
        "name": "Jayant Chowdhary",
        "email": "jchowdhary@google.com",
        "time": "Wed Jul 17 09:26:23 2019 -0700"
      },
      "committer": {
        "name": "Jayant Chowdhary",
        "email": "jchowdhary@google.com",
        "time": "Mon Aug 19 19:33:43 2019 -0700"
      },
      "message": "cameraserver: Add support for system only cameras\n\nBug: 133508924\nBug: 138135733\n\nandroid.permission.CAMERA and android.permission.SYSTEM_CAMERA are both\nrequired by a client process to access system only cameras.\n\nTest: Advertise the back camera as system only;\n        1) don\u0027t give Camera2 SYSTEM_CAMERA permissions,\n           Camera2 can\u0027t connect to the back camera\n        2) give Camera2 SYSTEM_CAMERA permissions, Camera2 successfully\n           connects.\n        3) 3P app can\u0027t connect to any camera if all cameras are\n           advertised as SYSTEM_ONLY_CAMERAs.\n\nTest: CTS CameraDeviceTest, CameraManagerTest\n\nChange-Id: I0309462f962d9c8c92564ef6781b2aae1485a933\nSigned-off-by: Jayant Chowdhary \u003cjchowdhary@google.com\u003e\n"
    },
    {
      "commit": "9da975d887ef8d63970e4b11dc9f2c0e0da92705",
      "tree": "bbe6890d9a7d7e4b76ac872c18b752e4d68bab37",
      "parents": [
        "b535c8d620c393e34f8ea6ac91edc25975042bcd"
      ],
      "author": {
        "name": "Jayant Chowdhary",
        "email": "jchowdhary@google.com",
        "time": "Wed Aug 14 15:00:24 2019 -0700"
      },
      "committer": {
        "name": "Jayant Chowdhary",
        "email": "jchowdhary@google.com",
        "time": "Wed Aug 14 15:06:21 2019 -0700"
      },
      "message": "camera2 ndk: Allow nullptr for ACameraCaptureSession_captureCallbacks.onClosed.\n\nBug: 134680093\n\nTest: AImageReaderVendorTest\n\nChange-Id: I8d365b434c257e949496d9495d0fa31a18a2e068\nSigned-off-by: Jayant Chowdhary \u003cjchowdhary@google.com\u003e\n"
    },
    {
      "commit": "5a095ea7b0175ec83840596ddb666d570c92fe52",
      "tree": "3ccabc79382d87ecc9445f19372e73496f5f2776",
      "parents": [
        "00fe64e74f243f29ffb050f0638c880cd5678f86"
      ],
      "author": {
        "name": "Jiyong Park",
        "email": "jiyong@google.com",
        "time": "Tue Jul 09 15:43:57 2019 +0900"
      },
      "committer": {
        "name": "Jiyong Park",
        "email": "jiyong@google.com",
        "time": "Tue Jul 09 15:43:57 2019 +0900"
      },
      "message": "ICameraServiceDefault is not available\n\n\u003cIfaceName\u003eDefault class was automatically generated, but a change in\nthe AIDL compiler is scheduled to generate the class only when the aidl\nfile is compiled with `-version` option, because the default class is\nonly useful for the versioned AIDL case.\n\nStop using ICameraServiceDefault since it will be removed. Instead use\nICameraService class instead.\n\nTest: build\nChange-Id: Ifa06e5580f62878d498d9773c81da910ee84acd1\n"
    },
    {
      "commit": "7dc76b20ab402a032f00e93c5ef8594bef7336cd",
      "tree": "7ee1c576590ad7cba3d57c318b0855e3c071d37b",
      "parents": [
        "1b03fc43bd922333dde02bc3be8fa44b1333d341"
      ],
      "author": {
        "name": "Shuzhen Wang",
        "email": "shuzhenwang@google.com",
        "time": "Mon Jul 08 15:09:13 2019 -0700"
      },
      "committer": {
        "name": "Shuzhen Wang",
        "email": "shuzhenwang@google.com",
        "time": "Mon Jul 08 15:09:13 2019 -0700"
      },
      "message": "Camera: Mention postRawSensitivityBoost together with sensitivity\n\nThis helps application developer be aware of availability of\npostRawSensitivityBoost.\n\nTest: Build and read docs\nBug: 119755308\nChange-Id: I65778a17d98aa9a9bdbb4a452005c25dfae96950\n"
    },
    {
      "commit": "648db896cc1bd8ae91c236de81f755dd1054a5e2",
      "tree": "4042e71adad92280a524a57e05367b63677a7fb7",
      "parents": [
        "fee0ea55bbc54a5898433797a599ae7ff0b52a64",
        "5a5881d89d543c732d1fe1491cd26ed14290dd85"
      ],
      "author": {
        "name": "Shuzhen Wang",
        "email": "shuzhenwang@google.com",
        "time": "Fri Jun 28 19:54:49 2019 -0700"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Fri Jun 28 19:54:49 2019 -0700"
      },
      "message": "Merge \"Camera: Clarify manual capture behavior for logical camera\" into qt-dev am: 2655a0d0fc am: 4fea62f7a0\nam: 5a5881d89d\n\nChange-Id: I822ce30980300aabca94b6f4b56b5ce7bd3d47d6\n"
    },
    {
      "commit": "5a5881d89d543c732d1fe1491cd26ed14290dd85",
      "tree": "32be5222bb3167aba3fdd4534d7fa25cc0ef347f",
      "parents": [
        "a5e70a4b8f9bef36b1aa6c657e44c55e34175bbd",
        "4fea62f7a0aa454710f69f2fdfd7d08492f94808"
      ],
      "author": {
        "name": "Shuzhen Wang",
        "email": "shuzhenwang@google.com",
        "time": "Fri Jun 28 18:22:24 2019 -0700"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Fri Jun 28 18:22:24 2019 -0700"
      },
      "message": "Merge \"Camera: Clarify manual capture behavior for logical camera\" into qt-dev am: 2655a0d0fc\nam: 4fea62f7a0\n\nChange-Id: I0b8aadad96630b4104961c294b3dc74b2195a308\n"
    },
    {
      "commit": "ea2243babbaef6e682703c57925c15293fbc6642",
      "tree": "a5e2365f1391378d52b6e3ba580cb3e03db12f46",
      "parents": [
        "43a2bc9353a8dafa1270a89e1004f990a617de9a",
        "2655a0d0fcb2065ae680808e87206effe9610042"
      ],
      "author": {
        "name": "Shuzhen Wang",
        "email": "shuzhenwang@google.com",
        "time": "Fri Jun 28 17:48:57 2019 -0700"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Fri Jun 28 17:48:57 2019 -0700"
      },
      "message": "Merge \"Camera: Clarify manual capture behavior for logical camera\" into qt-dev\nam: 2655a0d0fc\n\nChange-Id: I35bdbc4ac9864a7d315c1385c9d4207885742608\n"
    },
    {
      "commit": "4fea62f7a0aa454710f69f2fdfd7d08492f94808",
      "tree": "2a6bd49694a01939b3353f06cf9ac51a8232a0f3",
      "parents": [
        "3439c875dd21991992afe033005e4f2ebed919bd",
        "2655a0d0fcb2065ae680808e87206effe9610042"
      ],
      "author": {
        "name": "Shuzhen Wang",
        "email": "shuzhenwang@google.com",
        "time": "Fri Jun 28 17:33:55 2019 -0700"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Fri Jun 28 17:33:55 2019 -0700"
      },
      "message": "Merge \"Camera: Clarify manual capture behavior for logical camera\" into qt-dev\nam: 2655a0d0fc\n\nChange-Id: Iaf3864b08fb90db90e77a9ec1e6dca54ad7475a2\n"
    },
    {
      "commit": "4d641386b33e7323fe8c44d4fc538049736ee4ee",
      "tree": "90a012fd915725558b5c6a44fa3ed2cc57beed7d",
      "parents": [
        "2cbc7cd807382e371ad5ae71039afccb9641433c"
      ],
      "author": {
        "name": "Shuzhen Wang",
        "email": "shuzhenwang@google.com",
        "time": "Wed Jun 26 14:46:02 2019 -0700"
      },
      "committer": {
        "name": "Shuzhen Wang",
        "email": "shuzhenwang@google.com",
        "time": "Thu Jun 27 10:29:13 2019 -0700"
      },
      "message": "Camera: Clarify manual capture behavior for logical camera\n\nTest: Build and read docs\nBug: 136098496\nChange-Id: I2d62c383798b86c3fa4f7bcb9d55cd990a6d1718\n"
    },
    {
      "commit": "dfd13b714b41e80ffb9bba5ce9281bfa276bc327",
      "tree": "9f29300da204b6e2fe7dc3f3aa7c48625fe09682",
      "parents": [
        "253e8188fe642cefc178760d313f8fa03b6dfddb",
        "4574d4ed7a979ad0d91e37a09a315c479f920962"
      ],
      "author": {
        "name": "Jayant Chowdhary",
        "email": "jchowdhary@google.com",
        "time": "Tue Jun 25 14:04:45 2019 -0700"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Tue Jun 25 14:04:45 2019 -0700"
      },
      "message": "Merge \"camera2 ndk/vndk: cleanup-\u003estop CameraDevice\u0027s looper in ~ACameraDevice()\" into qt-dev\nam: 4574d4ed7a\n\nChange-Id: Id1c3ce2ef868add8abe26774dfaf7a578b0df990\n"
    },
    {
      "commit": "4574d4ed7a979ad0d91e37a09a315c479f920962",
      "tree": "b03afa6fbebf6618a82ca129b97ab7906bf361b2",
      "parents": [
        "62a6173c5443f9726b914ede43b3c2e0fd643128",
        "a8488c9c32de3d4cfa6f9b96bec362bbc337a91b"
      ],
      "author": {
        "name": "Jayant Chowdhary",
        "email": "jchowdhary@google.com",
        "time": "Tue Jun 25 19:51:18 2019 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Jun 25 19:51:18 2019 +0000"
      },
      "message": "Merge \"camera2 ndk/vndk: cleanup-\u003estop CameraDevice\u0027s looper in ~ACameraDevice()\" into qt-dev"
    },
    {
      "commit": "4c3979cf2bdb0ef406898496e1bb14202f3821dc",
      "tree": "a705a369bf2a12183f5e8f7f87f7b36a1e6142f9",
      "parents": [
        "c4871a8abe1c0669f6cd9825421df6256ef30c0c",
        "78048ace061e784c4bee5fc45b0eddc867d843a4"
      ],
      "author": {
        "name": "Jayant Chowdhary",
        "email": "jchowdhary@google.com",
        "time": "Mon Jun 24 16:14:23 2019 -0700"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Mon Jun 24 16:14:23 2019 -0700"
      },
      "message": "Merge \"camera2 ndk/vndk: cleanup-\u003estop CameraDevice\u0027s looper in ~ACameraDevice()\" into qt-r1-dev am: 95f6e43fa2\nam: 78048ace06\n\nChange-Id: I7a47c05f3053b22494eb22553f7c8fcaa0b7d542\n"
    },
    {
      "commit": "78048ace061e784c4bee5fc45b0eddc867d843a4",
      "tree": "429ffcc42ad1121b690490906e61f2f8c67bddaf",
      "parents": [
        "fe403b84943e60f8c8adb00dd5461ca7926e792b",
        "95f6e43fa2ba9be26f7d77665246fbf956d24c1a"
      ],
      "author": {
        "name": "Jayant Chowdhary",
        "email": "jchowdhary@google.com",
        "time": "Mon Jun 24 16:10:28 2019 -0700"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Mon Jun 24 16:10:28 2019 -0700"
      },
      "message": "Merge \"camera2 ndk/vndk: cleanup-\u003estop CameraDevice\u0027s looper in ~ACameraDevice()\" into qt-r1-dev\nam: 95f6e43fa2\n\nChange-Id: I201860b7e310cf8032305e08d4e3c5a0595adc52\n"
    },
    {
      "commit": "a8488c9c32de3d4cfa6f9b96bec362bbc337a91b",
      "tree": "a44151003b388a6950e52fc7e8cc465ce8e5e467",
      "parents": [
        "50f9a1320b8dfff8732ca26c73a50b1950f2831e"
      ],
      "author": {
        "name": "Jayant Chowdhary",
        "email": "jchowdhary@google.com",
        "time": "Fri Jun 21 12:45:34 2019 -0700"
      },
      "committer": {
        "name": "Jayant Chowdhary",
        "email": "jchowdhary@google.com",
        "time": "Mon Jun 24 14:43:46 2019 -0700"
      },
      "message": "camera2 ndk/vndk: cleanup-\u003estop CameraDevice\u0027s looper in ~ACameraDevice()\n\nIt\u0027s possible that the following sequence happens:\n\n1) hwbinder / binder thread T1: onResultReceived() starts -\u003e promotes wp\u003cCameraDevice\u003e to sp\u003c\u003e;\n\n2) Some other app thread T2 : ACameraDevice_close() -\u003e delete ACameraDevice -\u003e doesn\u0027t result in\n                              CameraDevice\u0027s destructor running since mCameraDevice has another live\n                              reference, app destroys some object O1.\n\n3) T3 (callback looper thread): callback is received since looper is still running which accesses\n                                dead app object O1 -\u003e results in undefined behavior.\n\n4) T1: onResultReceived completes and CameraDevice is destructed\n\nWe need to stop CameraDevice\u0027s looper thread (that waits for all callbacks queued to complete) in\n~ACameraDevice() so we receive no callbacks after ACameraDevice is closed.\n\nBug: 135641415\n\nTest: CTS native tests: no new failures\nTest: AImageReaderVendorTest; enroll; while(1) auth;\n\nChange-Id: Ia24de753f6ee409d941fff39616f09df2164880a\nMerged-In: Ia24de753f6ee409d941fff39616f09df2164880a\nSigned-off-by: Jayant Chowdhary \u003cjchowdhary@google.com\u003e\n(cherry picked from commit 174084011ca8b593a8cf35412928517b9e864be9)\nSigned-off-by: Jayant Chowdhary \u003cjchowdhary@google.com\u003e\n"
    },
    {
      "commit": "174084011ca8b593a8cf35412928517b9e864be9",
      "tree": "034550890e2f44344d82eaa547f6e2cac97fa988",
      "parents": [
        "b233eaef6a0b9a0b38845de252322c5e7418cdcf"
      ],
      "author": {
        "name": "Jayant Chowdhary",
        "email": "jchowdhary@google.com",
        "time": "Fri Jun 21 12:45:34 2019 -0700"
      },
      "committer": {
        "name": "Jayant Chowdhary",
        "email": "jchowdhary@google.com",
        "time": "Fri Jun 21 13:52:39 2019 -0700"
      },
      "message": "camera2 ndk/vndk: cleanup-\u003estop CameraDevice\u0027s looper in ~ACameraDevice()\n\nIt\u0027s possible that the following sequence happens:\n\n1) hwbinder / binder thread T1: onResultReceived() starts -\u003e promotes wp\u003cCameraDevice\u003e to sp\u003c\u003e;\n\n2) Some other app thread T2 : ACameraDevice_close() -\u003e delete ACameraDevice -\u003e doesn\u0027t result in\n                              CameraDevice\u0027s destructor running since mCameraDevice has another live\n                              reference, app destroys some object O1.\n\n3) T3 (callback looper thread): callback is received since looper is still running which accesses\n                                dead app object O1 -\u003e results in undefined behavior.\n\n4) T1: onResultReceived completes and CameraDevice is destructed\n\nWe need to stop CameraDevice\u0027s looper thread (that waits for all callbacks queued to complete) in\n~ACameraDevice() so we receive no callbacks after ACameraDevice is closed.\n\nBug: 135641415\n\nTest: CTS native tests: no new failures\nTest: AImageReaderVendorTest; enroll; while(1) auth;\n\nChange-Id: Ia24de753f6ee409d941fff39616f09df2164880a\nSigned-off-by: Jayant Chowdhary \u003cjchowdhary@google.com\u003e\n"
    },
    {
      "commit": "a161bbe3bdf3c42ad2815411364e1d79f3d947c5",
      "tree": "2581e058dd9b5014bdf76d8a9c1e392d323dc408",
      "parents": [
        "cba2d38632c2984f3dde4a42f68e804f5d11ca82",
        "490e2062a4f1f258ff23821ca438d89edf5c0ed2"
      ],
      "author": {
        "name": "Andrew Chant",
        "email": "achant@google.com",
        "time": "Thu Jun 20 22:46:35 2019 -0700"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Thu Jun 20 22:46:35 2019 -0700"
      },
      "message": "Merge \"libcamera2ndk_vendor: stop looper thread on ~ACameraDevice()\" into qt-r1-dev am: 1c388a30c1\nam: 490e2062a4\n\nChange-Id: Ie5d771bf1c1275625bcf7c827d36bbe095697c08\n"
    },
    {
      "commit": "490e2062a4f1f258ff23821ca438d89edf5c0ed2",
      "tree": "b7a1943aa0060b08af4371c2bcf6551af9637d47",
      "parents": [
        "c75b5ccfcdb7ae8f2c3809b707441f1a70816f4d",
        "1c388a30c1ca41ecf523eaa1ab5613b4bb11abc9"
      ],
      "author": {
        "name": "Andrew Chant",
        "email": "achant@google.com",
        "time": "Thu Jun 20 22:26:38 2019 -0700"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Thu Jun 20 22:26:38 2019 -0700"
      },
      "message": "Merge \"libcamera2ndk_vendor: stop looper thread on ~ACameraDevice()\" into qt-r1-dev\nam: 1c388a30c1\n\nChange-Id: I7e791a41c5698d01855220586cb13cdbd365d98b\n"
    },
    {
      "commit": "b233eaef6a0b9a0b38845de252322c5e7418cdcf",
      "tree": "c5e73f9f173c0a8a81f4d8195513141d1a03eaa1",
      "parents": [
        "3bd9e0e1a16a4fbe74c4edbe8be7069f988e9c2c"
      ],
      "author": {
        "name": "Jayant Chowdhary",
        "email": "jchowdhary@google.com",
        "time": "Thu Jun 20 20:30:07 2019 -0700"
      },
      "committer": {
        "name": "Jayant Chowdhary",
        "email": "jchowdhary@google.com",
        "time": "Thu Jun 20 20:30:08 2019 -0700"
      },
      "message": "libcamera2ndk_vendor: stop looper thread on ~ACameraDevice()\n\nBug: 135641415\n\nTest: enroll; while(1) auth;\n\nChange-Id: I59c522a0e8827c5990926f0cf7c7960e1cea2e5e\nSigned-off-by: Jayant Chowdhary \u003cjchowdhary@google.com\u003e\n"
    },
    {
      "commit": "a5a4f632cd7b59c8f2836a06fbdc8e59eed1a716",
      "tree": "e5a4c1f859cf3b6c3757982b86361978b2dce3d9",
      "parents": [
        "88ed3ec19285504f81b979bf5f11be72b04170b5",
        "2af3e748e114d32191ae5634269ca744e6b2fd81"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Tue Jun 18 04:37:59 2019 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Jun 18 04:37:59 2019 +0000"
      },
      "message": "Merge \"Camera: don\u0027t require (15, max) fps range on NIR camera\""
    }
  ],
  "next": "aaeb801f352177416f9cc025182adf2b1e4de67e"
}
