)]}'
{
  "log": [
    {
      "commit": "9561db99ec348b40207765e2fea4a0e96e7843aa",
      "tree": "7a18a528e6acfc741eb178fdc3b2cb19509d064e",
      "parents": [
        "4fe9f3e9ad145980e244aa84ecf4204857036a2f",
        "e8322b5584596350b2bb7ccffacd9af8ffe8194c"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Tue Apr 23 23:19:07 2019 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Apr 23 23:19:07 2019 +0000"
      },
      "message": "Merge \"Camera: The vector memory is freed after clear\" into qt-dev"
    },
    {
      "commit": "e8322b5584596350b2bb7ccffacd9af8ffe8194c",
      "tree": "56e5f19d53c9159f630b0dbc8094b5f3924741c8",
      "parents": [
        "3208826f676b1be78e1c04692d7f17249e45c3ea"
      ],
      "author": {
        "name": "zhangshuxiao",
        "email": "zhangshuxiao@xiaomi.com",
        "time": "Tue Dec 18 19:27:28 2018 +0800"
      },
      "committer": {
        "name": "Shuzhen Wang",
        "email": "shuzhenwang@google.com",
        "time": "Mon Apr 22 14:36:53 2019 -0700"
      },
      "message": "Camera: The vector memory is freed after clear\n\nThe clear function of vector will release memory,\nso mBins will use overflow.\n\nTest: enable asan for cameraserver\nBug: 131103281\nChange-Id: Iaaa353332d7ac3992f018aa667fb8ef20a810f20\nSigned-off-by: zhangshuxiao \u003czhangshuxiao@xiaomi.com\u003e\n"
    },
    {
      "commit": "0e2eefd580aeae1e74fdc06a070116faa702d629",
      "tree": "10b0b3b5c574e38b188ddd66a13a1d380a67ce2f",
      "parents": [
        "3208826f676b1be78e1c04692d7f17249e45c3ea"
      ],
      "author": {
        "name": "Jayant Chowdhary",
        "email": "jchowdhary@google.com",
        "time": "Thu Apr 18 14:05:43 2019 -0700"
      },
      "committer": {
        "name": "Jayant Chowdhary",
        "email": "jchowdhary@google.com",
        "time": "Mon Apr 22 12:40:42 2019 -0700"
      },
      "message": "cameraserver: log setTorchMode calls.\n\nBug: 120314037\n\nTest: Turn torch on / off; logcat | grep \u0027Torch turned\u0027\nTest: Turn torch on / off; adb shell dumpsys media.camera\n\nChange-Id: Ib98e8847f49c6977b9cba65ae0605b8abe774a15\nSigned-off-by: Jayant Chowdhary \u003cjchowdhary@google.com\u003e\n"
    },
    {
      "commit": "68b8684c8eb2b68a03887cdba6bea75de438c179",
      "tree": "78a9e6edbb8e89d66e86dacbf4969b8a0d437f68",
      "parents": [
        "df8638b4c4cfabcdeade1a3af497cd6e0521cb89",
        "b6578908df3c3f1730d286c1897ef9e9859e3495"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Thu Apr 18 20:12:27 2019 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Apr 18 20:12:27 2019 +0000"
      },
      "message": "Merge \"Camera: don\u0027t enable buffer manager for display/texture streams\" into qt-dev"
    },
    {
      "commit": "a74c7274069fdfa95e4f9768e14bd2ce7ed1219e",
      "tree": "47e7e4aa28e9ad18a9beea08f90e3b7792698978",
      "parents": [
        "d198b7b7d6daddb78153e4d6a9135854f95ae856",
        "b42f1ebb71e709fc4e035a88121ac2c1ac75271a"
      ],
      "author": {
        "name": "Varun Shah",
        "email": "varunshah@google.com",
        "time": "Thu Apr 18 15:32:04 2019 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Apr 18 15:32:04 2019 +0000"
      },
      "message": "Merge \"Include calling uid proc state in CameraService reject log.\" into qt-dev"
    },
    {
      "commit": "8bf6e5d3c0e60b05ec6dbe7ef9ee9b01b9278976",
      "tree": "71d8049e0cd2dadbcab8c660d768439297ed994c",
      "parents": [
        "aceea8bddd0324df4414673bc39a3f38fe16e8a1",
        "4f6fa9daa4557de78789b937276e45bbaf0b019c"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Wed Apr 17 23:23:30 2019 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Apr 17 23:23:30 2019 +0000"
      },
      "message": "Merge \"Camera: Clarify multi-camera RAW and FOV behaviors\" into qt-dev"
    },
    {
      "commit": "4f6fa9daa4557de78789b937276e45bbaf0b019c",
      "tree": "1eca67f25a562bca05c149fccc1073b241285bd6",
      "parents": [
        "019b2fc5aa5d62b911d029234548eb9c253b8f60"
      ],
      "author": {
        "name": "Shuzhen Wang",
        "email": "shuzhenwang@google.com",
        "time": "Fri Mar 29 10:40:35 2019 -0700"
      },
      "committer": {
        "name": "Shuzhen Wang",
        "email": "shuzhenwang@google.com",
        "time": "Tue Apr 16 17:11:01 2019 -0700"
      },
      "message": "Camera: Clarify multi-camera RAW and FOV behaviors\n\n- RAW capability can exist for multi-camera even if physical cameras are\nof different sizes/capabilities.\n- FOV for all processes streams must be the same regardless of logical\nor physical streams.\n- All metadata tags related to pixelArray/preCorrectionActiveArray/activeArray\nneeds to be mapped properly by the camera HAL.\n- Do distortion correction mapping for physical subcamera as well.\n\nTest: Build and read docs, camera CTS, ITS.\nBug: 118906351\nBug: 126220135\n\nChange-Id: I29a61fc3a603561c1d74dc2261600ce4cd3d34cd\n"
    },
    {
      "commit": "b42f1ebb71e709fc4e035a88121ac2c1ac75271a",
      "tree": "b01d917ca511973806c9dd9b581dcb03cd36c9e5",
      "parents": [
        "8d14f5ccff2440f39630965486e9601ab6d007b6"
      ],
      "author": {
        "name": "Varun Shah",
        "email": "varunshah@google.com",
        "time": "Tue Apr 16 14:45:13 2019 -0700"
      },
      "committer": {
        "name": "Varun Shah",
        "email": "varunshah@google.com",
        "time": "Tue Apr 16 16:08:09 2019 -0700"
      },
      "message": "Include calling uid proc state in CameraService reject log.\n\nBug: 123762288\nTest: builds.\nChange-Id: Ibaf080a7c60e52af014664f882cc37e0920353fe\n"
    },
    {
      "commit": "b6578908df3c3f1730d286c1897ef9e9859e3495",
      "tree": "05dd5c770dee82a02c2d228eab2fbe8e9aa9d0f3",
      "parents": [
        "d3757001b9c9c89c2a945b071b36bcbb38ad673b"
      ],
      "author": {
        "name": "Yin-Chia Yeh",
        "email": "yinchiayeh@google.com",
        "time": "Tue Apr 16 13:36:16 2019 -0700"
      },
      "committer": {
        "name": "Yin-Chia Yeh",
        "email": "yinchiayeh@google.com",
        "time": "Tue Apr 16 13:36:16 2019 -0700"
      },
      "message": "Camera: don\u0027t enable buffer manager for display/texture streams\n\nThese streams have their own buffer management logic.\n\nTest: camera CTS tests\nBug: 130050659\nChange-Id: I6943b10d48a2e78fc8626d20c3f6bcc3327c936c\n"
    },
    {
      "commit": "c3f0e69568b1333fc42cb3e7ee72d892456d66e1",
      "tree": "118e296ec3551753f8f3be9fc82f893a9b640efa",
      "parents": [
        "8e604bb84d3351083a96f13fb04a4cc2154fef60",
        "370875f93ecd5f4340cb3fb663e8df4dc331f561"
      ],
      "author": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Sat Apr 13 00:43:44 2019 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Sat Apr 13 00:43:44 2019 +0000"
      },
      "message": "Merge \"Camera: Camera3Device: Fix off-by-one error\" into qt-dev"
    },
    {
      "commit": "370875f93ecd5f4340cb3fb663e8df4dc331f561",
      "tree": "dcd04d1cc28757a1189f97603ccb32b211ce4e76",
      "parents": [
        "0e5a1b3bb64d9a5d38903770e018379856401efd"
      ],
      "author": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Fri Apr 12 12:40:27 2019 -0700"
      },
      "committer": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Fri Apr 12 12:40:27 2019 -0700"
      },
      "message": "Camera: Camera3Device: Fix off-by-one error\n\nThese things are ceaseless: /\n  code reviews, design docs - /\n  off-by-one errors making a mess\n\nTest: atest CtsCameraTestCases\nBug: 129561652\n\nChange-Id: I807d7ad4740ffe267053fe5da2080f9ecb45aa72\n"
    },
    {
      "commit": "72b8b7df5e563a46910dd324b7b0fb35112b1663",
      "tree": "21ee9ebe6bdc54a7bc4900e8e181e280979eab91",
      "parents": [
        "4b99b0dc3d4bc5700f276f59fc3a5da4dc90a108",
        "7d5569f51ff64ca8896d90128e085ca33596433d"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Tue Apr 09 19:28:44 2019 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Apr 09 19:28:44 2019 +0000"
      },
      "message": "Merge \"Cameraservice: Cache camera service proxy interface\" into qt-dev"
    },
    {
      "commit": "7d5569f51ff64ca8896d90128e085ca33596433d",
      "tree": "97d546f713a08d7a7a08a0c8759a1af7ae8978fc",
      "parents": [
        "0e5a1b3bb64d9a5d38903770e018379856401efd"
      ],
      "author": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Mon Apr 08 13:57:54 2019 -0700"
      },
      "committer": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Mon Apr 08 14:17:19 2019 -0700"
      },
      "message": "Cameraservice: Cache camera service proxy interface\n\nTo improve camera launch performance, cache the proxy service\ninterface.  System tracing indicates fetching the interface can take\nup to 8-10 ms during real camera opens, which is a percent or two\nof total camera startup time.\n\nTest: atest CameraCtsTestCases\nBug: 130173970\nChange-Id: Icdf5218b04f608b897dcbf2085f971b04a913f3b\n"
    },
    {
      "commit": "a362033b87bad8bacf3b9fe91cb251d2bb9b18d6",
      "tree": "262049d7b2ca869710ebde7777eab6541cb58bfb",
      "parents": [
        "6e38e1a2b74bd2ed304080b1dca1f77b1053dada"
      ],
      "author": {
        "name": "Nicholas Sauer",
        "email": "nicksauer@google.com",
        "time": "Wed Apr 03 14:05:17 2019 -0700"
      },
      "committer": {
        "name": "Nicholas Sauer",
        "email": "nicksauer@google.com",
        "time": "Fri Apr 05 19:08:31 2019 +0000"
      },
      "message": "Allow a --user param for cmd media.camera commands.\n\nThis allows testing on secondary users. For more information, please see go/aae-cts-on-u10\n\nbug: 126472822\nTest: Create and switch to secondary user.\n$ cts-tradefed run cts -a arm64-v8a -m CtsCameraTestCases -t android.hardware.camera2.cts.IdleUidTest\n\nand ...\n$ adb install testcases/CtsCameraTestCases.apk\nSuccess\n$ adb shell cmd media.camera get-uid-state android.camera.cts --user 10\nidle\n$ adb shell cmd media.camera set-uid-state android.camera.cts active --user 10\n$ adb shell cmd media.camera get-uid-state android.camera.cts --user 10\nactive\n$ adb shell cmd media.camera get-uid-state android.camera.cts --user 0\nidle\n$ adb shell cmd media.camera get-uid-state android.camera.cts\nidle\n$ adb shell cmd media.camera reset-uid-state android.camera.cts --user 10\n$ adb shell cmd media.camera get-uid-state android.camera.cts\nidle\n$ adb shell cmd media.camera get-uid-state android.camera.cts --user 10\nidle\n\nChange-Id: I7a5a3455d36ce6b95638ff13313f06e7e9b92feb\n"
    },
    {
      "commit": "38e119b73d432a0dc518b39638f08d9c8867dd5d",
      "tree": "d51f105e12ff40a73817f3b55a9f5e50d788cb57",
      "parents": [
        "0e5a1b3bb64d9a5d38903770e018379856401efd"
      ],
      "author": {
        "name": "Shuzhen Wang",
        "email": "shuzhenwang@google.com",
        "time": "Mon Oct 01 16:03:53 2018 -0700"
      },
      "committer": {
        "name": "Shuzhen Wang",
        "email": "shuzhenwang@google.com",
        "time": "Thu Apr 04 15:56:18 2019 +0000"
      },
      "message": "Camera1: Handle multiple logical cameras with same facing\n\nFor Camera1-HAL3 shim, the camera ID filtering logic is revised to\nhandle case of multiple logical cameras facing the same direction,\nand are backed by same/different set of physical camera IDs.\n\nExample 1 (all facing back):\nID1 \u003d ID3 + ID4\nID2 \u003d ID5 + ID6\n\nExample 2 (all facing back):\nID5 \u003d ID1 + ID2\nID6 \u003d ID3 + ID4\n\nIn both examples, only ID1 will be advertised to camera1 app.\n\nTest: Check cameras on devices with multiple logical cameras\nTest: Camera CTS\nBug: 113705942\nChange-Id: I76f370938b3311bbe7adcac8eddf8b6cf08e4571\n"
    },
    {
      "commit": "09cc4b1d530e550167c4ad01c84559c8797e0ff8",
      "tree": "c22a1ea6f6a4b9433be7910d5c6ecfa775dc98aa",
      "parents": [
        "fc332471b307dff3ab152db2f0cb35f12c7a50aa",
        "edec62de621a69e66db6b753dacb4919da16f3ae"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Mon Apr 01 17:00:41 2019 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Apr 01 17:00:41 2019 +0000"
      },
      "message": "Merge \"Camera: Include the physical camera device during errors\""
    },
    {
      "commit": "118f33e53daa6180781a3f3aa44fbada1783dd1f",
      "tree": "5f1c8e651dfb78e347f77f9f8fddd06f732dc43b",
      "parents": [
        "204745c7a078c72e7f9991f4b79cf329ee434fd1",
        "a1b56c8df7cde6a294a5a878e276c71995e5e309"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Fri Mar 29 20:34:33 2019 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Mar 29 20:34:33 2019 +0000"
      },
      "message": "Merge \"Camera: reduce logspam from abandonded streams\""
    },
    {
      "commit": "a1b56c8df7cde6a294a5a878e276c71995e5e309",
      "tree": "a835f0680f3e2124cac9de535cb1eb38d6fd4e08",
      "parents": [
        "11df024f9e4e58c9b46e36a01a61d7e77efd7ec3"
      ],
      "author": {
        "name": "Yin-Chia Yeh",
        "email": "yinchiayeh@google.com",
        "time": "Wed Mar 27 15:50:39 2019 -0700"
      },
      "committer": {
        "name": "Yin-Chia Yeh",
        "email": "yinchiayeh@google.com",
        "time": "Thu Mar 28 11:45:47 2019 -0700"
      },
      "message": "Camera: reduce logspam from abandonded streams\n\n1. Change Camera3Device logs to ALOGV\n2. In Camera3OutputStream, only log before we mark stream state\n   to STATE_ABANDONED\n3. Also changed BUFFER_ERROR log to ALOGV\n\nTest: manually check log of GCA mode switch\nBug: 125415787\nChange-Id: Ibd83b7010932a8be25d85573d9c9dce9c394f6bb\n"
    },
    {
      "commit": "e097f4a2011dd14e306ea90ade815ddd4f3b9657",
      "tree": "1e1613816a39c8d35096d8acde03e66071c66954",
      "parents": [
        "97214de1fa29f114213d6272abc401d2bd2df754",
        "8ec41c1ecaf3c29df14276f45e06cc95e54a4f67"
      ],
      "author": {
        "name": "Jayant Chowdhary",
        "email": "jchowdhary@google.com",
        "time": "Wed Mar 27 23:50:12 2019 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Mar 27 23:50:12 2019 +0000"
      },
      "message": "Merge \"Allow VNDK \u0027users\u0027 which are not foreground to connect to camera devices.\""
    },
    {
      "commit": "edec62de621a69e66db6b753dacb4919da16f3ae",
      "tree": "fc20b99e88ece37258d8da39461e6553a62d8a27",
      "parents": [
        "f97d64cd3a1588b22b47dd3805be291525bb17d9"
      ],
      "author": {
        "name": "Emilian Peev",
        "email": "epeev@google.com",
        "time": "Tue Mar 19 17:59:24 2019 -0700"
      },
      "committer": {
        "name": "Emilian Peev",
        "email": "epeev@google.com",
        "time": "Fri Mar 22 13:27:08 2019 -0700"
      },
      "message": "Camera: Include the physical camera device during errors\n\nThe physical camera device ID must be present as part\nof the capture result extras in case of corresponding\nresult failure notification.\n\nBug: 128835627\nTest: Camera CTS,\nAImageReaderVendorTest\n--gtest_filter\u003dAImageReaderVendorTest.LogicalCameraPhysicalStream\nChange-Id: I042af8bd85eaadd389b059c2833f352ceb2f40fc\n"
    },
    {
      "commit": "759bd0f18f2271c9c997818827d5e92bcada7453",
      "tree": "2f1c84b3827ea332b1e0f73e18912ec80936dc41",
      "parents": [
        "88b4ca8d7c5e8454bf3fc4cebcf029e604485c9a",
        "24810e7a6725e9c3275bd9a8115a3049a73685d1"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Fri Mar 22 00:23:14 2019 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Mar 22 00:23:14 2019 +0000"
      },
      "message": "Merge \"Camera: Add isSessionConfigurationSupported in NDK/VNDK\""
    },
    {
      "commit": "28404e281d6e175b1afc093b41aca1ee32070b7c",
      "tree": "fcc68f4a0e7fc1fd936fdb72d09b87952edc8614",
      "parents": [
        "9000d698910368b8679817369a80f64dfb26c7f2",
        "7d355db285c285d212908e08756c5ca7739b7ad3"
      ],
      "author": {
        "name": "Jayant Chowdhary",
        "email": "jchowdhary@google.com",
        "time": "Thu Mar 21 18:01:31 2019 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Mar 21 18:01:31 2019 +0000"
      },
      "message": "Merge \"cameraserver: Check for dataspace override during finishConfiguration.\""
    },
    {
      "commit": "7d355db285c285d212908e08756c5ca7739b7ad3",
      "tree": "013b946bc02bf9a4b767af1959344e48a138f8fa",
      "parents": [
        "f97d64cd3a1588b22b47dd3805be291525bb17d9"
      ],
      "author": {
        "name": "Jayant Chowdhary",
        "email": "jchowdhary@google.com",
        "time": "Mon Mar 18 13:41:29 2019 -0700"
      },
      "committer": {
        "name": "Jayant Chowdhary",
        "email": "jchowdhary@google.com",
        "time": "Wed Mar 20 16:13:26 2019 -0700"
      },
      "message": "cameraserver: Check for dataspace override during finishConfiguration.\n\nBug: 120407707\n\nTest: CTS\nTest: Use camera to take pictures / record videos (sanity)\n\nChange-Id: I7b29c337d0e217d2eb6a62e2c75ccc550d795e61\nSigned-off-by: Jayant Chowdhary \u003cjchowdhary@google.com\u003e\n"
    },
    {
      "commit": "24810e7a6725e9c3275bd9a8115a3049a73685d1",
      "tree": "3d2857d01991626c2cd71a1a1b2ba021271c09a2",
      "parents": [
        "8f922e189dbb1d7e75a4f4d2a51fe32a905549de"
      ],
      "author": {
        "name": "Shuzhen Wang",
        "email": "shuzhenwang@google.com",
        "time": "Mon Mar 18 10:55:01 2019 -0700"
      },
      "committer": {
        "name": "Shuzhen Wang",
        "email": "shuzhenwang@google.com",
        "time": "Wed Mar 20 12:58:11 2019 -0700"
      },
      "message": "Camera: Add isSessionConfigurationSupported in NDK/VNDK\n\nTest: NativeCameraDeviceTest and AImageReaderVendorTest\nBug: 128933069\nChange-Id: I26ca4c0ca12f7bd1b872c2f33e8fa63a056ae068\n"
    },
    {
      "commit": "60c73a445b632cc2e233b1a275efeee7414a41a4",
      "tree": "2457663db441033f880f465c39e4cd4982b403ee",
      "parents": [
        "06709c6db6992675ce3b83d9d7aa0682e17dc0ad",
        "70bfcec27553516ce22b1513d28da5d09d3a3c82"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Mon Mar 18 22:39:21 2019 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Mar 18 22:39:21 2019 +0000"
      },
      "message": "Merge \"Replace \"max-pts-gap-to-encoder\" with defined key\""
    },
    {
      "commit": "70bfcec27553516ce22b1513d28da5d09d3a3c82",
      "tree": "dedb41f69638dcc98b9954dbbd31486127670608",
      "parents": [
        "e9955729faa3a33483b9739f085856b5b4b451d5"
      ],
      "author": {
        "name": "Chong Zhang",
        "email": "chz@google.com",
        "time": "Mon Mar 18 12:52:28 2019 -0700"
      },
      "committer": {
        "name": "Chong Zhang",
        "email": "chz@google.com",
        "time": "Mon Mar 18 12:54:51 2019 -0700"
      },
      "message": "Replace \"max-pts-gap-to-encoder\" with defined key\n\nReplace the raw string with defined key in ndk.\n\nbug: 80314065\ntest: builds\nChange-Id: I483d63d05c766f34e45d6a391fd1e241a7b875bc\n"
    },
    {
      "commit": "635ebee7b8e9529178ba7cb8b651e32b76c6c9ad",
      "tree": "8a3b38c93b24bb9a310db5614d7d5536c27c5d91",
      "parents": [
        "ede17f7293baf51af1541e734e404a5e1529a2a5"
      ],
      "author": {
        "name": "Emilian Peev",
        "email": "epeev@google.com",
        "time": "Tue Mar 12 18:05:35 2019 -0700"
      },
      "committer": {
        "name": "Emilian Peev",
        "email": "epeev@google.com",
        "time": "Fri Mar 15 12:53:10 2019 -0700"
      },
      "message": "Camera: Add low latency snapshot use case id\n\nAdditionally initializey the stream id to invalid negative\nvalue in case the Hal tries to verify it during stream\ncombination queries.\n\nBug: 128450197\nTest: Camera CTS\nChange-Id: Ife058e22ef72ee84be82799ed397ca49cd8ea99f\n"
    },
    {
      "commit": "f73c8512a461aa2c45b9e506cc285c9c48a21383",
      "tree": "66ebcd60d5289e5ecf11dea1e214c32d8d4e5915",
      "parents": [
        "baf2d2c69a281803c039c92b74cf8d7223f88c48",
        "be55e0a1df9d80ecdb5a6a3353dce54aff1547d9"
      ],
      "author": {
        "name": "username",
        "email": "majiajun@huawei.com",
        "time": "Tue Mar 12 22:12:59 2019 -0700"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Tue Mar 12 22:12:59 2019 -0700"
      },
      "message": "Merge \"Camera: Lazy load sound files to speed up camera startup\" am: 2b65dca6e1 am: 2e6ed61d17\nam: be55e0a1df\n\nChange-Id: Idbff51d1aab72db872b950caa91ee8d66dc94c70\n"
    },
    {
      "commit": "5755fea3fbd2b1deebe0fa935b444b8731c610a6",
      "tree": "14df41c35ef12073d932da46632d079aba3809e9",
      "parents": [
        "fe610f0fa30cf58c448f718c05d53208431baf08"
      ],
      "author": {
        "name": "username",
        "email": "majiajun@huawei.com",
        "time": "Thu Dec 27 09:48:08 2018 +0800"
      },
      "committer": {
        "name": "Shuzhen Wang",
        "email": "shuzhenwang@google.com",
        "time": "Tue Mar 12 13:17:26 2019 -0700"
      },
      "message": "Camera: Lazy load sound files to speed up camera startup\n\nLazy loading of sound files can speed up camera startup more than 60ms,\nit gives users a great experience. Many apps do not playSound when camera\nopen or they may use their own audio files. so we load audio files as needed.\n\nBug: 128432959\nTest: install wechat app,open camera,use systrace to see the uiThread wait time.\nChange-Id: I3b3697cf9d0d919b88276f6d8e7fdd84578f4fcd\n"
    },
    {
      "commit": "9f685f48458a22ee9bd51be7f8c04a312db606ae",
      "tree": "645997bd658f15d3a2e8fa2cd6900c0370814d1a",
      "parents": [
        "1812b4e7dd2409dc82e34c6e9a25c8c766680197"
      ],
      "author": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Tue Mar 12 11:22:46 2019 -0700"
      },
      "committer": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Tue Mar 12 11:22:46 2019 -0700"
      },
      "message": "Camera: Centralize owners, try two\n\nUse the correct include syntax\n\nTest: Builds\nChange-Id: I85fb81445ece687bc68819eadf9e42e474f14368\n"
    },
    {
      "commit": "eb91f4821595a17726fb957b2e1b46d02481fb1e",
      "tree": "9d50f49ef76321375cb1b7cab51bfae38e351582",
      "parents": [
        "efde55813cfc4430cdd4c0627b2d9834903eec95"
      ],
      "author": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Mon Mar 11 14:23:21 2019 -0700"
      },
      "committer": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Mon Mar 11 14:44:06 2019 -0700"
      },
      "message": "Camera: Centralize OWNERS\n\nTest: Builds\nChange-Id: I17830f84ebfeb11bf7cbe0ba5aa9f19838ec37be\n"
    },
    {
      "commit": "e631c1f4ccb7a9c796dbf37e00a415ed1c1a64c0",
      "tree": "f3d867f5945a20413115721e29ddbcaf0d4a9507",
      "parents": [
        "c2b585d8714da3049568f3001409ee1bc2b1b8e2",
        "bf1b8b968a11630d2269380f9e3426e611907ebc"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Fri Mar 08 22:06:49 2019 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Mar 08 22:06:49 2019 +0000"
      },
      "message": "Merge \"Camera: fix long dequeueBuffer call\""
    },
    {
      "commit": "bf1b8b968a11630d2269380f9e3426e611907ebc",
      "tree": "8ad96aaf4aa70796aff8024326f99fdf713b71a0",
      "parents": [
        "5f840f8daa250b832a492fd368741916f777e0b1"
      ],
      "author": {
        "name": "Yin-Chia Yeh",
        "email": "yinchiayeh@google.com",
        "time": "Wed Mar 06 14:56:08 2019 -0800"
      },
      "committer": {
        "name": "Yin-Chia Yeh",
        "email": "yinchiayeh@google.com",
        "time": "Fri Mar 08 12:03:53 2019 -0800"
      },
      "message": "Camera: fix long dequeueBuffer call\n\nFix the long (\u003e1s) dequeueBuffer call when a stream is managed by\nCamera3BufferManager and its consumer end discards free buffers.\n\nTest: CTS, no more long dequeBuffer call in GCA mode switch\nBug: 126054873\nChange-Id: I03d6526b076796bb44f15cc2c4a092ff3d04fc1d\n"
    },
    {
      "commit": "f03cb213d22b238cbd0b72ded36048f0549f921f",
      "tree": "45ea557e1d138bca705966a019ed88fc52bc541d",
      "parents": [
        "c750c131c4dc4ed3aef05d2583e61661d3c38119",
        "5f840f8daa250b832a492fd368741916f777e0b1"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Wed Mar 06 21:59:21 2019 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Mar 06 21:59:21 2019 +0000"
      },
      "message": "Merge \"Camera: do not register empty buffer as inflight\""
    },
    {
      "commit": "5f840f8daa250b832a492fd368741916f777e0b1",
      "tree": "343105d0dae0aafdd9865104f30840b00af997ed",
      "parents": [
        "84be578ec6387a33e54b716acbb4e95be3b35b6e"
      ],
      "author": {
        "name": "Yin-Chia Yeh",
        "email": "yinchiayeh@google.com",
        "time": "Tue Mar 05 11:59:04 2019 -0800"
      },
      "committer": {
        "name": "Yin-Chia Yeh",
        "email": "yinchiayeh@google.com",
        "time": "Tue Mar 05 11:59:04 2019 -0800"
      },
      "message": "Camera: do not register empty buffer as inflight\n\nTest: no more wrong log print during disconnect\nBug: 120986771\nChange-Id: I7926f12ba5d234ddb02ac9e5fddfb8c23df4ddb6\n"
    },
    {
      "commit": "8702e425c7755d56dbcac0cd557cd682d1cb3694",
      "tree": "cc0e479de019898962fa2b2aaac4f60a9dc33f52",
      "parents": [
        "13c8870eb5b25dbf0e5b7d99f19a6c1d3d8ddab3",
        "53722fa75c1b74b7accdf2293fda9948beaeb461"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Mon Mar 04 20:36:38 2019 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Mar 04 20:36:38 2019 +0000"
      },
      "message": "Merge \"Camera: Update listeners about permission changes\""
    },
    {
      "commit": "53722fa75c1b74b7accdf2293fda9948beaeb461",
      "tree": "f5eff9c096e7a23d43608104d655ce9596412173",
      "parents": [
        "3f1962974d7611adf3d7db6aee63d5876eb12c4e"
      ],
      "author": {
        "name": "Emilian Peev",
        "email": "epeev@google.com",
        "time": "Fri Feb 22 17:47:20 2019 -0800"
      },
      "committer": {
        "name": "Emilian Peev",
        "email": "epeev@google.com",
        "time": "Mon Mar 04 10:22:55 2019 -0800"
      },
      "message": "Camera: Update listeners about permission changes\n\nCamera service listeners must be able to receive\ninformation about camera access permission changes.\n\nBug: 121379978\nTest: Camera CTS\nChange-Id: I2e13fdd35a267901a3caa0e0ce78ab1cea83e7ab\n"
    },
    {
      "commit": "61be94bfc9c09ebc61f8cbb9fc01c3143fec362f",
      "tree": "1fa8543a4bfe7f87f063a3bc26ae33a419ea3695",
      "parents": [
        "9d453f2787c37255462076d6bbd8cf8f58d7e6ab",
        "84be578ec6387a33e54b716acbb4e95be3b35b6e"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Fri Mar 01 21:50:47 2019 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Mar 01 21:50:47 2019 +0000"
      },
      "message": "Merge \"Camera: improve error handling when HAL crash\""
    },
    {
      "commit": "84be578ec6387a33e54b716acbb4e95be3b35b6e",
      "tree": "e900df8214471c84cfba9bf22fa4e11fced5494f",
      "parents": [
        "defe9d507eb566ce960a1f41f4082c0fc98a1436"
      ],
      "author": {
        "name": "Yin-Chia Yeh",
        "email": "yinchiayeh@google.com",
        "time": "Fri Mar 01 11:47:02 2019 -0800"
      },
      "committer": {
        "name": "Yin-Chia Yeh",
        "email": "yinchiayeh@google.com",
        "time": "Fri Mar 01 12:24:38 2019 -0800"
      },
      "message": "Camera: improve error handling when HAL crash\n\nReturn buffers managed by HAL buffer manager in disconnect.\n\nTest: kill HAL process and check for buffer leak in cameraserver\nBug: 126889012\nChange-Id: I83173c5eaae13ee11eb3f185e7204a2dd8855b4e\n"
    },
    {
      "commit": "b7ab1e4794384a28a52189d8ef58a6197a817e02",
      "tree": "940e20b4d4e1827349e45fed16015ba230d025da",
      "parents": [
        "ea69bfb0f5b3fc247882355b919a3076e4992694"
      ],
      "author": {
        "name": "Shuzhen Wang",
        "email": "shuzhenwang@google.com",
        "time": "Wed Feb 20 15:42:23 2019 -0800"
      },
      "committer": {
        "name": "Shuzhen Wang",
        "email": "shuzhenwang@google.com",
        "time": "Tue Feb 26 22:38:45 2019 -0800"
      },
      "message": "Camera: Initialize bufferSize for JPEG app segments stream\n\nSet bufferSize in @3.4::Stream::bufferSize for JPEG_APP_SEGMENTS stream.\n\nBug: 124999074\nTest: Build\nChange-Id: I6f24f4273b0d3d18b1bdbf263fc12ed48e857004\n"
    },
    {
      "commit": "8ec41c1ecaf3c29df14276f45e06cc95e54a4f67",
      "tree": "619d5ab78a200aa3a16338f830cbe76da716d1c5",
      "parents": [
        "b8a07acca4392e1be911dd6a8f88be3ef7265668"
      ],
      "author": {
        "name": "Jayant Chowdhary",
        "email": "jchowdhary@google.com",
        "time": "Thu Feb 21 20:17:22 2019 -0800"
      },
      "committer": {
        "name": "Jayant Chowdhary",
        "email": "jchowdhary@google.com",
        "time": "Tue Feb 26 12:12:25 2019 -0800"
      },
      "message": "Allow VNDK \u0027users\u0027 which are not foreground to connect to camera devices.\n\nBug: 125464062\n\nTest: GCA (sanity)\nTest: Connect to a camera device using a HAL process, change the device user and connect again;\n      connection is successful\n\nChange-Id: Ia25b961baa396fd383d089e400c6d877b9875955\nSigned-off-by: Jayant Chowdhary \u003cjchowdhary@google.com\u003e\n"
    },
    {
      "commit": "5a523197d3c00f695c12729c39e838c1de365465",
      "tree": "0d3a1943581c21a9c77fe364f99a03d4baaf1318",
      "parents": [
        "0cc7c07a0d66369ec7d3c9827aaf63384891106b",
        "0d2fa08f27ef47730d62e5ea7ef0f9e668eb1069"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Thu Feb 21 04:39:36 2019 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Feb 21 04:39:36 2019 +0000"
      },
      "message": "Merge \"Camera: notify captureSequener errors\""
    },
    {
      "commit": "0d2fa08f27ef47730d62e5ea7ef0f9e668eb1069",
      "tree": "55182a1a079ae64ba975de3f399c25845f1287bc",
      "parents": [
        "0302b6d14cca873521fb65b184fe8964b496affc"
      ],
      "author": {
        "name": "Yin-Chia Yeh",
        "email": "yinchiayeh@google.com",
        "time": "Wed Feb 20 12:31:53 2019 -0800"
      },
      "committer": {
        "name": "Yin-Chia Yeh",
        "email": "yinchiayeh@google.com",
        "time": "Wed Feb 20 12:31:53 2019 -0800"
      },
      "message": "Camera: notify captureSequener errors\n\nTest: locally modified camera HAL (faking buffer errors) passing\n      CameraTest.java\nBug: 120986771\n\nChange-Id: I436ac5d033f68b59eaa7b129370faf0c0ca6a5f3\n"
    },
    {
      "commit": "e7e4191d9bb4857b4272e4b21e473f4a4a9ed2fd",
      "tree": "46cdabcb54a447bfc48453303f95b01b476a449a",
      "parents": [
        "317981f3651566dd6e9b63104c5ef18bcc17c9f6",
        "c300a07bf7cc4722540c9068ad5a23ded914ba38"
      ],
      "author": {
        "name": "Yin-Chia Yeh",
        "email": "yinchiayeh@google.com",
        "time": "Wed Feb 20 19:02:18 2019 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Feb 20 19:02:18 2019 +0000"
      },
      "message": "Merge \"Camera: fix signalStreamFlush logic\""
    },
    {
      "commit": "31f8d5f8e2259900c90cf5e7a161df891329b5b2",
      "tree": "d33010b70654070f7fe5bc6932efa12efd42a1b9",
      "parents": [
        "14109e8a4b5c0aa50b053bcfe239c7a8874833b4",
        "06af8c9d08b2e541b1acf6f2c06100109f948ec2"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Wed Feb 20 16:26:39 2019 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Feb 20 16:26:39 2019 +0000"
      },
      "message": "Merge changes from topic \"b123699590\"\n\n* changes:\n  Camera: Apply physical rotation for depth/conf. maps\n  Camera: Keep Depth EXIF orientation consistent\n"
    },
    {
      "commit": "ecab82de83bdd7e2d698a29e93d72a705a25921c",
      "tree": "722d0d4041f28a16a1249693da34d7ab73d18da9",
      "parents": [
        "0cecba27510db17af510feccd75bf514d5e7cd98",
        "7aa9180125b2cdab7affc50425d3d0cad0bf004e"
      ],
      "author": {
        "name": "Xin Li",
        "email": "delphij@google.com",
        "time": "Wed Feb 20 16:26:01 2019 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Wed Feb 20 16:26:01 2019 +0000"
      },
      "message": "Merge \"DO NOT MERGE - Merge PPRL.190205.001 into master\""
    },
    {
      "commit": "14109e8a4b5c0aa50b053bcfe239c7a8874833b4",
      "tree": "c398a08d1a71416dd63a963e68cf14739b3bb8e5",
      "parents": [
        "99586db6016f3f755581d8401b5f3d6b6aa3c438",
        "219c299fe663f6f1708448370f9ec854bb1af30e"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Wed Feb 20 15:51:23 2019 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Feb 20 15:51:23 2019 +0000"
      },
      "message": "Merge \"Camera: HEIC: Use libyuv utilities to speed up memcpy\""
    },
    {
      "commit": "c6e89f8e957fe67c347275df706256e607e5cad7",
      "tree": "24fbafd6365e8c14664aaef3c546cd12d0c533dd",
      "parents": [
        "6b2b2b91c7ae3a4b92c20363a9bfd33edfa620fa",
        "78a3ac5b7725d893eaf2a62784a633e4471fcd43"
      ],
      "author": {
        "name": "Emilian Peev",
        "email": "epeev@google.com",
        "time": "Tue Feb 19 22:56:43 2019 -0800"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Tue Feb 19 22:56:43 2019 -0800"
      },
      "message": "Merge \"Camera: Avoid invalid member variable access from RequestThread\" am: aaa51ee218 am: 6b12cf9640\nam: 78a3ac5b77\n\nChange-Id: I50d600e4fa34780bdf2da430ba4816317f6d254d\n"
    },
    {
      "commit": "6b12cf9640fb061aa936b55d4af60c0def03d940",
      "tree": "7d96fdda35c4811fdbaaa91f39ffbf95cff4f68c",
      "parents": [
        "86f3ee848c7f82e2af5989abf2e1d49c50aaedc1",
        "aaa51ee21805f0994835cd113befa55e65d23cb1"
      ],
      "author": {
        "name": "Emilian Peev",
        "email": "epeev@google.com",
        "time": "Tue Feb 19 22:48:20 2019 -0800"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Tue Feb 19 22:48:20 2019 -0800"
      },
      "message": "Merge \"Camera: Avoid invalid member variable access from RequestThread\"\nam: aaa51ee218\n\nChange-Id: Icfe17a380fce1411e60b0d313c36fc7748b80fcd\n"
    },
    {
      "commit": "219c299fe663f6f1708448370f9ec854bb1af30e",
      "tree": "ff81b913a6914bd8838dfb9c32180d13b242091b",
      "parents": [
        "d0488712e53070e3cdef4ed03ac9232a61f6dcbb"
      ],
      "author": {
        "name": "Shuzhen Wang",
        "email": "shuzhenwang@google.com",
        "time": "Fri Feb 15 17:24:28 2019 -0800"
      },
      "committer": {
        "name": "Shuzhen Wang",
        "email": "shuzhenwang@google.com",
        "time": "Tue Feb 19 18:08:46 2019 -0800"
      },
      "message": "Camera: HEIC: Use libyuv utilities to speed up memcpy\n\nUse libyuv\u0027s optimized CopyRow function to improve performance of YUV\ntiling.\n\nBug: 124781199\nTest: Camera CTS\nTest: TestingCamera2 smoke test\nChange-Id: I6af6678099655b7e35ddaccf7cd9aa817ec64a9c\n"
    },
    {
      "commit": "06af8c9d08b2e541b1acf6f2c06100109f948ec2",
      "tree": "ecd337eeeeda4c1d84f474ba9c79568e4ec010ca",
      "parents": [
        "4b08d5dce8d3a8aef64b493da1fa3e4bf114b347"
      ],
      "author": {
        "name": "Emilian Peev",
        "email": "epeev@google.com",
        "time": "Thu Feb 07 12:34:41 2019 -0800"
      },
      "committer": {
        "name": "Emilian Peev",
        "email": "epeev@google.com",
        "time": "Tue Feb 19 10:55:30 2019 -0800"
      },
      "message": "Camera: Apply physical rotation for depth/conf. maps\n\nDepth and confidence maps require physical rotation in\ncase the source color image has similar physical rotation.\nThe EXIF orientation value will be kept consistent and\nset to 0 in case of physical rotation.\n\nBug: 123699590\nTest: Manual using application,\nadb shell /data/nativetest64/cameraservice_test/cameraservice_test\n--gtest_filter\u003dDepthProcessorTest.*\nChange-Id: I5cdd41c89368a1841d53f2195790aa1b55258495\n"
    },
    {
      "commit": "4b08d5dce8d3a8aef64b493da1fa3e4bf114b347",
      "tree": "f89dc0e58c21e354cf80c93d019611b3185fded6",
      "parents": [
        "8b0e6fa090b6013899d48112761f45e12705f838"
      ],
      "author": {
        "name": "Emilian Peev",
        "email": "epeev@google.com",
        "time": "Fri Feb 01 09:53:14 2019 -0800"
      },
      "committer": {
        "name": "Emilian Peev",
        "email": "epeev@google.com",
        "time": "Tue Feb 19 08:41:25 2019 -0800"
      },
      "message": "Camera: Keep Depth EXIF orientation consistent\n\nDepth and confidence maps should always use the same\nEXIF orientation as the main color image.\n\nBug: 123699590\nTest: Manual using application,\nCamera CTS,\nadb shell /data/nativetest64/cameraservice_test/cameraservice_test\n--gtest_filter\u003dDepthProcessorTest.*\nChange-Id: I0d887798e8717cdff81aba10d595dc3ccfe99197\n"
    },
    {
      "commit": "e86358b8afb6cd4cf4b1960bf5a4fda592bfa2e6",
      "tree": "b036b4b3523faf7559911f9fa9cfe93c5fc6515e",
      "parents": [
        "9c23986ec56150ef4163fa8f67398035470a2388"
      ],
      "author": {
        "name": "Emilian Peev",
        "email": "epeev@google.com",
        "time": "Fri Feb 15 13:51:39 2019 -0800"
      },
      "committer": {
        "name": "Emilian Peev",
        "email": "epeev@google.com",
        "time": "Tue Feb 19 08:30:57 2019 -0800"
      },
      "message": "Camera: Avoid invalid member variable access from RequestThread\n\nIn case the Camera3Device enters a bad state, the\nRequestThread can continue to run after disconnect()\ncompletes. This can potentially cause instabilities\nbecause some of the Camera3Device member variables\nwill become invalid after disconnect() but are still\naccessible in code paths triggered by RequestThread.\nAvoid using potentially invalid reference by checking\nthe respective strong pointer.\n\nBug: 123293729\nTest: Manual using application,\nCamera CTS\n\nChange-Id: If3305840db89537593370b7f57bccbb257e49cbd\n"
    },
    {
      "commit": "e7f4b46a572a0131de6d9d2a2ca81247dec056ff",
      "tree": "1241518b766e632674222fa28e707a8c87ce1625",
      "parents": [
        "c6aa503951f6d65ead9b0066568bdb47b9896ca3"
      ],
      "author": {
        "name": "Shuzhen Wang",
        "email": "shuzhenwang@google.com",
        "time": "Tue Feb 12 08:43:07 2019 -0800"
      },
      "committer": {
        "name": "Shuzhen Wang",
        "email": "shuzhenwang@google.com",
        "time": "Fri Feb 15 12:05:44 2019 -0800"
      },
      "message": "Camera: Use capture result metadata to override EXIF\n\nUse static and dynamic metadata to override Exif tags.\n\nAlso added back a missing ATRACE_ASYNC_ENDs statement.\n\nTest: Camera CTS\nTest: ERROR_BUFFER of internal streams is propagated to app\nTest: ERROR_RESULT only results in EXIF not being overridden\nBug: 124066183\nChange-Id: Id2c69c6bee04ae724ff5f190b2dd96d0159700c9\n"
    },
    {
      "commit": "0302b6d14cca873521fb65b184fe8964b496affc",
      "tree": "5c23cc9d1aa2d5cd2a199b51e7261295328938eb",
      "parents": [
        "d97b1b3994f3cb026348b136817d107934ba6677",
        "7e5a2042659b0659be82397202261732a797c216"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Thu Feb 14 18:41:53 2019 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Feb 14 18:41:53 2019 +0000"
      },
      "message": "Merge changes I7362942f,I946fb95d\n\n* changes:\n  Camera: rework API1 shim takePicture retry logic\n  Camera: bug fixes for HAL buffer manager\n"
    },
    {
      "commit": "c300a07bf7cc4722540c9068ad5a23ded914ba38",
      "tree": "93b63b078eab5c75555da39d57315b0c3489cd31",
      "parents": [
        "7e5a2042659b0659be82397202261732a797c216"
      ],
      "author": {
        "name": "Yin-Chia Yeh",
        "email": "yinchiayeh@google.com",
        "time": "Wed Feb 13 14:56:57 2019 -0800"
      },
      "committer": {
        "name": "Yin-Chia Yeh",
        "email": "yinchiayeh@google.com",
        "time": "Wed Feb 13 14:56:57 2019 -0800"
      },
      "message": "Camera: fix signalStreamFlush logic\n\n1. Fix off by one error in signalStreamFlush call\n2. Make sure signalStreamFlush is called before we toggle request\n   thread idle (which might cause another thread finishing\n   waitUntilIdle() and thus start calling configureStreams)\n\nTest: Pixel 3 + camera CTS\nBug: 120986771\nChange-Id: Ifd6f77ef628ee200c024c7c6a05bde20937c745d\n"
    },
    {
      "commit": "cbfa4c1c9b2dd9976ccb16e39545a7ba6449761a",
      "tree": "bc2e2e2d019cf75794a19bbd03dbf97d99760f87",
      "parents": [
        "cf272c82a2bda2cb759b62a01ad38d89bd31d356",
        "4ec1788b4f826bedebedb8d4bb7e957a8c5d14f5"
      ],
      "author": {
        "name": "Emilian Peev",
        "email": "epeev@google.com",
        "time": "Wed Feb 13 21:54:22 2019 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Feb 13 21:54:22 2019 +0000"
      },
      "message": "Merge \"Camera: Enable Hal side stream reconfiguration queries\""
    },
    {
      "commit": "7e5a2042659b0659be82397202261732a797c216",
      "tree": "334ce161ad5de35aebfae4486d393fb77e6d59f7",
      "parents": [
        "cd333fe74677da852cc05dcb24c9e7e4614377ec"
      ],
      "author": {
        "name": "Yin-Chia Yeh",
        "email": "yinchiayeh@google.com",
        "time": "Wed Feb 06 16:01:06 2019 -0800"
      },
      "committer": {
        "name": "Yin-Chia Yeh",
        "email": "yinchiayeh@google.com",
        "time": "Wed Feb 13 11:54:55 2019 -0800"
      },
      "message": "Camera: rework API1 shim takePicture retry logic\n\nonBufferReleased is no longer reliable indicator of capture\nerror due to HAL buffer manager feature. Switch to listen\nto error callback from HAL directly.\n\nTest: API1 CTS + Pixel 3\nBug: 123952355\nChange-Id: I7362942f19356583ec66f259b01e963a1af3a205\n"
    },
    {
      "commit": "cd333fe74677da852cc05dcb24c9e7e4614377ec",
      "tree": "8f6b5f27a5d510da3bf2027601d6eb514c5c7bd8",
      "parents": [
        "ffb2516cc730b5ac621ad8a92e827faf4e86b8ca"
      ],
      "author": {
        "name": "Yin-Chia Yeh",
        "email": "yinchiayeh@google.com",
        "time": "Fri Feb 08 13:45:41 2019 -0800"
      },
      "committer": {
        "name": "Yin-Chia Yeh",
        "email": "yinchiayeh@google.com",
        "time": "Wed Feb 13 11:06:18 2019 -0800"
      },
      "message": "Camera: bug fixes for HAL buffer manager\n\nTest: GCA smoke test + Camera CTS\nBug: 120986771\nChange-Id: I946fb95d8e685995ebb8cf3d36b0373958bfad09\n"
    },
    {
      "commit": "48849e0e06aa636e1e1ed21513a96ee2bb65893c",
      "tree": "e11442deb3543089b40c6b7a7ef0096052c06739",
      "parents": [
        "1c0163ff3db1218def8df6a3fbc531d7009d3b09",
        "993d76204d5bb7cf352dec44acf2bc257b4c5035"
      ],
      "author": {
        "name": "Xin Li",
        "email": "delphij@google.com",
        "time": "Tue Feb 12 09:53:36 2019 -0800"
      },
      "committer": {
        "name": "Xin Li",
        "email": "delphij@google.com",
        "time": "Tue Feb 12 09:53:36 2019 -0800"
      },
      "message": "DO NOT MERGE - Merge pi-platform-release (PPRL.190205.001) into stage-aosp-master\n\nBug: 124234733\nChange-Id: Ie50d57036ac3509f5588947c6fba26923883a301\n"
    },
    {
      "commit": "5a9b492828f9bc0d04e1292add45a271e0189c4e",
      "tree": "9c3fe53b8a78f01bfc55f480e9e12e8e1a915489",
      "parents": [
        "1342d0740e9a7accd48a7c28725ca61ded231ee1",
        "63f3611018857754d60a176783133371bae5f009"
      ],
      "author": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Mon Feb 11 01:22:52 2019 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Feb 11 01:22:52 2019 +0000"
      },
      "message": "Merge \"Camera service: Support for device state change notifications\""
    },
    {
      "commit": "2c54504df6b633d9840da6b5f781e69c41890d54",
      "tree": "babc5581801fbb8211c18783cf3a3efa564d7847",
      "parents": [
        "ffb2516cc730b5ac621ad8a92e827faf4e86b8ca"
      ],
      "author": {
        "name": "Shuzhen Wang",
        "email": "shuzhenwang@google.com",
        "time": "Thu Feb 07 10:27:35 2019 -0800"
      },
      "committer": {
        "name": "Shuzhen Wang",
        "email": "shuzhenwang@google.com",
        "time": "Fri Feb 08 17:13:58 2019 +0000"
      },
      "message": "Camera: Disconnect composite streams from output surface at shutdown\n\nWhen a composite stream is deleted, the previously connected output\nsurface needs to be disconnected. Otherwise when the composite stream is\nre-created with the same output surface, connect() will fail.\n\nTest: TestingCamera2, and Camera CTS\nBug: 79465976\nBug: 109735087\nBug: 124072769\nChange-Id: I254238235d306f9be8152110b1c55a7ada46424a\n"
    },
    {
      "commit": "4ec1788b4f826bedebedb8d4bb7e957a8c5d14f5",
      "tree": "5a8e77b46d6a24e94bfef41a33f11e5cac562ca6",
      "parents": [
        "627cb60a9fb54e8f6b2eab0c874392f20cd9d8e8"
      ],
      "author": {
        "name": "Emilian Peev",
        "email": "epeev@google.com",
        "time": "Thu Jan 24 17:16:58 2019 -0800"
      },
      "committer": {
        "name": "Emilian Peev",
        "email": "epeev@google.com",
        "time": "Thu Feb 07 14:10:14 2019 -0800"
      },
      "message": "Camera: Enable Hal side stream reconfiguration queries\n\nSession parameter changes will by default trigger internal stream\nreconfiguration. If possible query Hal whether this sequence\nis required for specific parameter values.\n\nBug: 122609098\nTest: Manual using application\nChange-Id: I9eaa55b0a552d9753122c16f9470779e2ed8ffec\n"
    },
    {
      "commit": "68ac7ada1f7329db65445d05c986899dbb13b745",
      "tree": "89ee2fc914f6b49e5cac2aae83c61f5c6ace83b2",
      "parents": [
        "627cb60a9fb54e8f6b2eab0c874392f20cd9d8e8"
      ],
      "author": {
        "name": "Shuzhen Wang",
        "email": "shuzhenwang@google.com",
        "time": "Wed Jan 30 14:03:28 2019 -0800"
      },
      "committer": {
        "name": "Shuzhen Wang",
        "email": "shuzhenwang@google.com",
        "time": "Wed Feb 06 10:32:08 2019 -0800"
      },
      "message": "Camera: Add HEIC support\n\n- Derive HEIC capabilities from camera HAL and media framework.\n- Add HeicCompositeStream to encode camera buffers to HEIC buffers.\n- Add ExifUtils to overwrite JPEG APP segments and send to media codec.\n- Add NDK enums and corresponding format support.\n\nTest: Camera CTS\nBug: 79465976\nChange-Id: I0a885e76335f3eba4be0fd42241edb0b7349f284\n"
    },
    {
      "commit": "8ec576b7abfc01ac99f3542d29a86ddc3533541b",
      "tree": "0a5f9b632ca91d056c2bc4b06399361ccdf1703f",
      "parents": [
        "988393f76077ebe699cd9d13c7c2804a5da23eb1",
        "a1185162c486651b856f3cb5ced219b67be735bf"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Tue Feb 05 18:08:16 2019 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Feb 05 18:08:16 2019 +0000"
      },
      "message": "Merge \"Camera: Only report dynamic depth tag related errors\""
    },
    {
      "commit": "988393f76077ebe699cd9d13c7c2804a5da23eb1",
      "tree": "bdb118dfea77963960be629d118b53d47c50a767",
      "parents": [
        "0435a4dcb66366da53cf4544c941a40ed2b9c2bd",
        "f949ddde2b4d1c986b847676f8bd9ad8364ebd4b"
      ],
      "author": {
        "name": "Jayant Chowdhary",
        "email": "jchowdhary@google.com",
        "time": "Tue Feb 05 17:55:03 2019 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Feb 05 17:55:03 2019 +0000"
      },
      "message": "Merge \"cameraserver: Add support for hiding secure cameras.\""
    },
    {
      "commit": "d64607b6a79c235b7daaa7e3fe3002270f1ede1c",
      "tree": "fac60e4f298a716530dd616342ead44b68f07aaf",
      "parents": [
        "81c75b410ebab27152f2c39fcb6d703ee8d6c0e7",
        "21cb47be5a6b0170c3a6cea57d13a9c6fcbf03da"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Mon Feb 04 22:02:21 2019 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Feb 04 22:02:21 2019 +0000"
      },
      "message": "Merge \"Camera: fix cleanupFailedRequests + HAL buffer manager path\""
    },
    {
      "commit": "21cb47be5a6b0170c3a6cea57d13a9c6fcbf03da",
      "tree": "7bdda77377bda38b562b76af5d23d1916f25f6bb",
      "parents": [
        "6512d900a8e1af55f9bf6be5f37bd7f3d7ddbe27"
      ],
      "author": {
        "name": "Yin-Chia Yeh",
        "email": "yinchiayeh@google.com",
        "time": "Fri Jan 18 15:08:17 2019 -0800"
      },
      "committer": {
        "name": "Yin-Chia Yeh",
        "email": "yinchiayeh@google.com",
        "time": "Mon Feb 04 12:19:04 2019 -0800"
      },
      "message": "Camera: fix cleanupFailedRequests + HAL buffer manager path\n\nTest: crash fixed\nBug: 120986771\nChange-Id: I3f7031b0a2db30dfbdcf0522dec1c0d6dc9ab26b\n"
    },
    {
      "commit": "26af1a51efb42d3b6a5ed76bd307bba9cd636bfe",
      "tree": "bcf9cf14ad35fdfc358ccab5f33029486804de5c",
      "parents": [
        "464a1f3f00320bdd603e6f2d0b069280fe1b11f4"
      ],
      "author": {
        "name": "Peter Kalauskas",
        "email": "peskal@google.com",
        "time": "Fri Jan 25 06:57:01 2019 -0800"
      },
      "committer": {
        "name": "Peter Kalauskas",
        "email": "peskal@google.com",
        "time": "Mon Feb 04 11:48:48 2019 -0800"
      },
      "message": "Camera: Remove thread that keeps HAL service alive for extra delay\n\nhwservicemanager now guarantees clients will be held for ~5s before the\ncallback onClients(false) is called and they are allowed to exit.\n\nTest: On walleye_svelte, manually observe camera behavior and the\n      lifetime of the lazy camera service process.\n\nChange-Id: Iafbdd73f439da3a4f0fecb069e356d30aa2732b5\n"
    },
    {
      "commit": "63f3611018857754d60a176783133371bae5f009",
      "tree": "a867c7939bd6c855c013144401e5ccdebb20f9c6",
      "parents": [
        "7de66a0e2fc5d37e22710583e88be5aa53e6ed5b"
      ],
      "author": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Thu Dec 06 14:57:03 2018 -0800"
      },
      "committer": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Fri Feb 01 16:15:13 2019 -0800"
      },
      "message": "Camera service: Support for device state change notifications\n\nAdd AIDL method for device-wide physical state updates (such as\nfolding/unfolding), and wire it up to the new camera provider HAL call.\n\nAlso clean up camera provider startup sequence - devices were being enumerated before\nthe new lazy HAL interface pointers were set up, resulting in many repeated calls\nto getService even for a non-lazy HAL.\n\nAlso add unit test for CameraProviderManager to verify its section of\nthe callpath, as well as tests to check that the provider HAL and\nhardware service manager aren\u0027t queried more than expected during\ninitialization.\n\nTest: atest cameraservice_test\n\nChange-Id: I5ec60fd9d93b7a2fe4d1a5854fad720a972fe8ea\n"
    },
    {
      "commit": "a1185162c486651b856f3cb5ced219b67be735bf",
      "tree": "0658410f267e10cb42178f9314269b9ebc5d22b0",
      "parents": [
        "af87b707107ccab0b7a29bd784c9025606960c56"
      ],
      "author": {
        "name": "Emilian Peev",
        "email": "epeev@google.com",
        "time": "Wed Jan 30 16:41:43 2019 -0800"
      },
      "committer": {
        "name": "Emilian Peev",
        "email": "epeev@google.com",
        "time": "Wed Jan 30 17:09:02 2019 -0800"
      },
      "message": "Camera: Only report dynamic depth tag related errors\n\nFailing to add dynamic depth camera characteristics\nmust not have any additional side effects for the\ndevice info constructor.\nIn case we encounter any issues report the failure and\ntry to continue with the intitialization.\nAdditionally fix a minor typo and remove a debug log.\n\nBug: 123660999\nTest: Manual using application,\nCamera CTS\nChange-Id: I7b4e723ce3bcaf0e5d4c313ba17bca965e8964d8\n"
    },
    {
      "commit": "f949ddde2b4d1c986b847676f8bd9ad8364ebd4b",
      "tree": "8772f413703528cff344d72d192094a98ab395cd",
      "parents": [
        "88cc9a5fbc2fc8acd37f10816fcc5c39cfd8bad5"
      ],
      "author": {
        "name": "Jayant Chowdhary",
        "email": "jchowdhary@google.com",
        "time": "Tue Jan 29 14:34:11 2019 -0800"
      },
      "committer": {
        "name": "Jayant Chowdhary",
        "email": "jchowdhary@google.com",
        "time": "Wed Jan 30 15:27:20 2019 -0800"
      },
      "message": "cameraserver: Add support for hiding secure cameras.\n\nBug: 123046494\n\nTest: Sanity -\u003e GCA\nTest: Hardcode all cameras hidden, AImageReaderVendorTest passes, GCA\n      cannot find cameras.\n\nChange-Id: I7780751101c660e47d84627ec191f43d268f1aa9\nSigned-off-by: Jayant Chowdhary \u003cjchowdhary@google.com\u003e\n"
    },
    {
      "commit": "07095df02a11678cf4637ead28bc5c8c5d27db2a",
      "tree": "4230c9ea7c8b0ab1fbf782c70eb602276b0b8230",
      "parents": [
        "ed6addb0dba071c2830df161c0c273cda449ea5c"
      ],
      "author": {
        "name": "Greg Kaiser",
        "email": "gkaiser@google.com",
        "time": "Tue Jan 29 06:28:58 2019 -0800"
      },
      "committer": {
        "name": "Greg Kaiser",
        "email": "gkaiser@google.com",
        "time": "Tue Jan 29 06:28:58 2019 -0800"
      },
      "message": "DepthCompositeStream: Fix erase() in error case\n\nWe had a typo for which vector we were erase()ing from in an\nerror case.  We fix that typo here.\n\nTest: TreeHugger\nChange-Id: Id1d38a5c1955e19415ca2e1c84a3f58763bf83c8\n"
    },
    {
      "commit": "cbf174b59307290e4c80947232feedb4cc9c0c26",
      "tree": "b0f8827388ee27877d4b1786e8f8b8f4f7a252fe",
      "parents": [
        "538c90e79d06f99e8a2dda4b1ccf3a5e46062934"
      ],
      "author": {
        "name": "Emilian Peev",
        "email": "epeev@google.com",
        "time": "Fri Jan 25 14:38:59 2019 -0800"
      },
      "committer": {
        "name": "Emilian Peev",
        "email": "epeev@google.com",
        "time": "Sun Jan 27 19:58:55 2019 -0800"
      },
      "message": "Camera: Link dynamically to Depth photo library\n\nMove all depth photo specific processing in a separate\nlibrary and link to it dynamically.\n\nBug: 109735087\nTest: Camera CTS\nChange-Id: I00a20b26fc9a1d127ad962a36b5b554dd36f0d41\n"
    },
    {
      "commit": "538c90e79d06f99e8a2dda4b1ccf3a5e46062934",
      "tree": "ea9226aea37c9790b69b587d1650b80d89fb5909",
      "parents": [
        "4c6d2b5c41bc6f233e281d227e26f16f5f49ae26"
      ],
      "author": {
        "name": "Emilian Peev",
        "email": "epeev@google.com",
        "time": "Mon Dec 17 18:03:19 2018 +0000"
      },
      "committer": {
        "name": "Emilian Peev",
        "email": "epeev@google.com",
        "time": "Fri Jan 25 11:05:10 2019 -0800"
      },
      "message": "Camera: Add DepthCompositeStream\n\nAdd the necessary logic to support dynamic depth metadata.\n\nBug: 109735087\nTest: Manual using application,\nCamera CTS\nChange-Id: Ic4710872dc596bc718270e1c79d4da53fb850875\n"
    },
    {
      "commit": "4c6d2b5c41bc6f233e281d227e26f16f5f49ae26",
      "tree": "d1c8753dfd21489968b673be4a36c1e85a76c698",
      "parents": [
        "45b005c624c8178d42fa7ba518b7a7d23fd47c68"
      ],
      "author": {
        "name": "Emilian Peev",
        "email": "epeev@google.com",
        "time": "Fri Jan 04 17:13:56 2019 +0000"
      },
      "committer": {
        "name": "Emilian Peev",
        "email": "epeev@google.com",
        "time": "Fri Jan 25 11:05:10 2019 -0800"
      },
      "message": "Camera: Add support for dynamic depth if possible\n\nComposite dynamic depth streams will be supported\nin case camera devices include:\n- Dense depth streams which are not exclusive.\n- Jpeg/Blob output with sizes that either match depth\n  or are with similar aspect ratio.\nMake a guesstimate regarding the dynamic depth minimum\nframe and stall durations.\n\nBug: 109735087\nTest: Manual using application,\nCamera CTS\n\nChange-Id: I8a89c7895cf57ce4408e41b1afae9c85d48c4e07\n"
    },
    {
      "commit": "d1d435a76bc728e3e0883d525c2cf34f32c6517d",
      "tree": "1ab4ebe95e1593ebee4b5a020e8595153a0f328e",
      "parents": [
        "abf2929e8d084d2ca99d4d8712abbf31c2cb5178"
      ],
      "author": {
        "name": "Michael Groover",
        "email": "mpgroover@google.com",
        "time": "Tue Dec 18 17:39:42 2018 -0800"
      },
      "committer": {
        "name": "Michael Groover",
        "email": "mpgroover@google.com",
        "time": "Thu Jan 03 21:30:13 2019 -0800"
      },
      "message": "Prevent camera access when sensor privacy is enabled\n\nTest: Manually verified apps cannot use the camera when sensor privacy \\\n      is enabled.\nBug: 110842805\n\nChange-Id: Ic3fed8272e90f3f64e0f6c342569c27e1a476014\n"
    },
    {
      "commit": "0ff9ae3ecbb421551d5de9701a349d8a3741f965",
      "tree": "2fb69b8701f672c09fc5b139caccfa95fa6976cf",
      "parents": [
        "3c3c97ae534870c90f54e8cffc6d7d82ab8ca3da"
      ],
      "author": {
        "name": "Shuzhen Wang",
        "email": "shuzhenwang@google.com",
        "time": "Wed Dec 05 18:06:12 2018 -0800"
      },
      "committer": {
        "name": "Shuzhen Wang",
        "email": "shuzhenwang@google.com",
        "time": "Thu Dec 20 10:34:27 2018 -0800"
      },
      "message": "Camera: Enable logical multi-camera API in NDK\n\nThe support inclues:\n- Physical camera specific stream support,\n- Physical camera result metadata, and\n\nTest: Newly added NDK CTS test pass\nTest: Newly added VNDK test pass\nBug: 120566141\nBug: 115532726\nChange-Id: I939b81522ca6c518c0e54ded5d3615f9973a6a65\n"
    },
    {
      "commit": "ef4b27d1d1123b452316f722a0eacc282d3fa94a",
      "tree": "a0acf7f1501bebe58caa1fb15fc118072b71a305",
      "parents": [
        "dd44e3c5f2d199589c040a422b3e343c796bd362",
        "538d53267bee085e08d489546bde620520b5b188"
      ],
      "author": {
        "name": "Chih-Hung Hsieh",
        "email": "chh@google.com",
        "time": "Thu Dec 13 16:23:10 2018 -0800"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Thu Dec 13 16:23:10 2018 -0800"
      },
      "message": "Merge \"Fix performance-for-range-copy warnings\" am: 1ce37f1de3 am: c9584831bc\nam: 538d53267b\n\nChange-Id: I15dfaa7eb997c7caf497b488384477952513cef7\n"
    },
    {
      "commit": "538d53267bee085e08d489546bde620520b5b188",
      "tree": "ad1f76cc15a1b1f1b6ccc223884e651a321ce77d",
      "parents": [
        "7dac08bb5b0750188e4cc5ffcf6330c1351cd759",
        "c9584831bc346189dbc09e3301111d74a4c8602d"
      ],
      "author": {
        "name": "Chih-Hung Hsieh",
        "email": "chh@google.com",
        "time": "Thu Dec 13 15:34:27 2018 -0800"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Thu Dec 13 15:34:27 2018 -0800"
      },
      "message": "Merge \"Fix performance-for-range-copy warnings\" am: 1ce37f1de3\nam: c9584831bc\n\nChange-Id: Ie1ce6c4e3f89aaec185947473cdd437fb5d2cb63\n"
    },
    {
      "commit": "1ce37f1de3f7185ccffd4d9145b036941a582fe4",
      "tree": "f9bc06168767ceabcc6c1732e4bf4a3d24abf802",
      "parents": [
        "ebd8c69ac531cfcb6aa05a96e8cba604008bd6f0",
        "3ef324d11cc4b6f84c147998fcf02c3a528fc2b8"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Thu Dec 13 21:28:33 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Thu Dec 13 21:28:33 2018 +0000"
      },
      "message": "Merge \"Fix performance-for-range-copy warnings\""
    },
    {
      "commit": "18343452006468a83457b9623b082f64fb479169",
      "tree": "1999a7d544c9bd5b1b4c09a536f0199fd93f1805",
      "parents": [
        "c6b48fe6272db5d3ca910598565c2b48b547ce7f",
        "0cf77658fa992cef0247484ba6b43526a9d2d571"
      ],
      "author": {
        "name": "Xin Li",
        "email": "delphij@google.com",
        "time": "Tue Dec 11 13:59:12 2018 -0800"
      },
      "committer": {
        "name": "Xin Li",
        "email": "delphij@google.com",
        "time": "Tue Dec 11 13:59:12 2018 -0800"
      },
      "message": "DO NOT MERGE - Merge pie-platform-release (PPRL.181205.001) into master\n\nBug: 120502534\nChange-Id: Ifdd73b6dfcf3791fb8dae2b1796a34bb56aea190\n"
    },
    {
      "commit": "3ef324d11cc4b6f84c147998fcf02c3a528fc2b8",
      "tree": "9c31c781e4172fb511af7552838c6a63b0f04ac9",
      "parents": [
        "14c577fac81b8fdcc75e4bf9243f16bd624ba58b"
      ],
      "author": {
        "name": "Chih-Hung Hsieh",
        "email": "chh@google.com",
        "time": "Tue Dec 11 11:48:12 2018 -0800"
      },
      "committer": {
        "name": "Chih-Hung Hsieh",
        "email": "chh@google.com",
        "time": "Tue Dec 11 11:48:12 2018 -0800"
      },
      "message": "Fix performance-for-range-copy warnings\n\nBug: 30413223\nTest: make with WITH_TIDY\u003d1 DEFAULT_GLOBAL_TIDY_CHECKS\u003d-*,performance*\nChange-Id: Ia63c695575d2602ff7e67db874d423b99f4daeef\n"
    },
    {
      "commit": "a29c135cab39ff25d8394d0fa31e0ab2c0d08d6a",
      "tree": "3880f5ca39c8dfd7652ba05e44822097f0b3178d",
      "parents": [
        "b7bd4383c9dbebc0d094b33cfe0fc4b8f9b313b2"
      ],
      "author": {
        "name": "Peter Kalauskas",
        "email": "peskal@google.com",
        "time": "Wed Oct 10 12:05:42 2018 -0700"
      },
      "committer": {
        "name": "Peter Kalauskas",
        "email": "peskal@google.com",
        "time": "Mon Dec 10 09:25:04 2018 -0800"
      },
      "message": "Camera: Support lazy HALs\n\nDrop camera HAL references when unused.\n\nUse ro.camera.enableLazyHal property to toggle behavior on or off.\n * If true, the cameraserver drops references to ICameraProvider HALs\n   when they are not being used for either camera or torch.\n * If false (or unset), stores a strong reference to each ICameraProvider\n   that is registered. This is the same as the old behavior.\n\nBug: 79374634\nTest: Apply CL that lets camera HAL exit when unused. Open camera/enable\n      torch, close camera/disable torch, check ps -A to see if HAL exits.\nChange-Id: I1842f9bf9e862ab74e4ec8aa72fc46fc47782ed0\n"
    },
    {
      "commit": "b7bd4383c9dbebc0d094b33cfe0fc4b8f9b313b2",
      "tree": "079524972e446f49b4466190028da97bf2393f94",
      "parents": [
        "1b3c907bb2cb9d1e2f91baf37709d935f687bf96"
      ],
      "author": {
        "name": "Peter Kalauskas",
        "email": "peskal@google.com",
        "time": "Thu Nov 15 17:19:48 2018 -0800"
      },
      "committer": {
        "name": "Peter Kalauskas",
        "email": "peskal@google.com",
        "time": "Fri Dec 07 13:29:21 2018 -0800"
      },
      "message": "Camera: Remove superfluous hardware::camera\n\nTest: Ensure camera works as before\nBug: 79374634\nChange-Id: Ie8f0da2ec6e6b855329983a2ec39ef2acf0f3eff\n"
    },
    {
      "commit": "1b3c907bb2cb9d1e2f91baf37709d935f687bf96",
      "tree": "e7449d196f98e8906851fe7e4763097fbe5972e9",
      "parents": [
        "0422892023dcd4616f00028fd223fef056bc0e16"
      ],
      "author": {
        "name": "Peter Kalauskas",
        "email": "peskal@google.com",
        "time": "Wed Nov 07 12:41:53 2018 -0800"
      },
      "committer": {
        "name": "Peter Kalauskas",
        "email": "peskal@google.com",
        "time": "Fri Dec 07 13:29:21 2018 -0800"
      },
      "message": "Camera: Setup vendors tags when initializing ProviderInfo\n\nAdd new VendorTagDescriptor member to ProviderInfo, allowing it to cache\nthe descriptor\n\nTest: Use torch, camera, and run cameraservice_test\nChange-Id: Iba5af5dc890b3188a9e55ff5c71421aceec14cbb\n"
    },
    {
      "commit": "b852e79b827e0a78f9ea20ab44603031dcc8f1b5",
      "tree": "577bc16842688d7b377174c308ea98370b600aac",
      "parents": [
        "3989f64995b4a5ff4da651dcc8207f41bcdffc1e",
        "639ed1204cec08fe779d11728d1ae33c90c3151e"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Fri Dec 07 00:50:05 2018 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Dec 07 00:50:05 2018 +0000"
      },
      "message": "Merge \"Camera: VNDK: Fix deferred endConfigure due to missing sessionParam\""
    },
    {
      "commit": "639ed1204cec08fe779d11728d1ae33c90c3151e",
      "tree": "0c92425cf4d99bda246d22535cce3df49e6bdfac",
      "parents": [
        "f4a342abd2959904caa18b5a0671e8107581ff24"
      ],
      "author": {
        "name": "Shuzhen Wang",
        "email": "shuzhenwang@google.com",
        "time": "Thu Dec 06 14:42:52 2018 -0800"
      },
      "committer": {
        "name": "Shuzhen Wang",
        "email": "shuzhenwang@google.com",
        "time": "Thu Dec 06 14:46:03 2018 -0800"
      },
      "message": "Camera: VNDK: Fix deferred endConfigure due to missing sessionParam\n\nIn case the app doesn\u0027t provide sessionParameters, the VNDK should still\nallow endConfigure() to be called to the camera service.\n\nTest: Run test app and observe camera streams properly\nBug: 120505813\nChange-Id: Ifa72dca61b8e25cd433d2c02c70b1c8e5e097228\n"
    },
    {
      "commit": "71738ebf94589faa5aef3c1ba8d53cd17b7fec0f",
      "tree": "f2b932fdd7a713db6ef4a74dc7c442c2764deae1",
      "parents": [
        "4d58d4d8c750c01b9435b95ffdb5552c663aae76",
        "35ae826b8d002b5045e208106a38354d86aed01d"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Thu Dec 06 12:33:31 2018 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Dec 06 12:33:31 2018 +0000"
      },
      "message": "Merge \"Camera: Add support for stream combination query\""
    },
    {
      "commit": "e8c8b4359835a12a3d1bf84f281c36bce031bb33",
      "tree": "cac3af958f25ed4f7163b8ddfe2134a957aafc9b",
      "parents": [
        "6b6a0f05248fc646d42f09cb891d8b6fda19426e"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Wed Oct 17 10:08:02 2018 -0700"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Mon Dec 03 16:28:21 2018 -0800"
      },
      "message": "audio policy: implement uid state management for capture\n\nReceive app state updates from ActivityManager and use it to implement\nconcurrent capture policy.\n\nBug: 111438757\nTest: Manual test with solotester app concurrently with Camera, Duo and\nAssistant\n\nChange-Id: I979ad4ecc8b926abb64e1b321b43bd7bd442a8f1\n"
    },
    {
      "commit": "db0532ba88de07e3ee8aa48db31e0ed5b5eff903",
      "tree": "2a3a8cae54830536a0eb30b089c3ba268803d184",
      "parents": [
        "55bb8a1dcce15a931c35d3705afe19c52d06f881",
        "8cf929268cdb2cede142ebca0932fa4ac59d0f60"
      ],
      "author": {
        "name": "Jayant Chowdhary",
        "email": "jchowdhary@google.com",
        "time": "Wed Nov 28 16:30:00 2018 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Nov 28 16:30:00 2018 +0000"
      },
      "message": "Merge \"cameraserver: Allow cameraserver HIDL interface to get provider ids with VendorTagSections.\""
    },
    {
      "commit": "fcbaf540db0fb0adf70962067977d04582d5dc78",
      "tree": "14eb995ac0ab752e6993d570c1f9514fd6015600",
      "parents": [
        "71085b5a772c4b50ce80692a6268713bd2eae585",
        "05ca87ccf43d0f39881af9e30d3a88d7b7f28d70"
      ],
      "author": {
        "name": "Shuzhen Wang",
        "email": "shuzhenwang@google.com",
        "time": "Tue Nov 27 15:36:10 2018 -0800"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Tue Nov 27 15:36:10 2018 -0800"
      },
      "message": "Merge \"Camera: Do not update state at HAL starts up if state already exists\" am: c3ee35f339\nam: 05ca87ccf4\n\nChange-Id: Ie7e5ab214485ab8eda9f3630a7df78486d1e0921\n"
    },
    {
      "commit": "c3ee35f339ce6b67f8e3b17f48a2dc0f9959db3f",
      "tree": "39ba3e062194bed351e55c488dda8787e2a59ed8",
      "parents": [
        "9a4842894af7b5b7db4f152ddd1420660876c36f",
        "e1aedc5a83ba7cc1d2849b5c6d6272e29bc7fe51"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Tue Nov 27 23:15:03 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Tue Nov 27 23:15:03 2018 +0000"
      },
      "message": "Merge \"Camera: Do not update state at HAL starts up if state already exists\""
    },
    {
      "commit": "b1e11d229957a67fb3592edb372ecf506b65d15d",
      "tree": "d501e8503500bc315565d0d39c218d24ddffafdf",
      "parents": [
        "11da03b75cdefb3bd34f4f5caf7aa7904d22d67a",
        "6407c30275b986fdb172a12588c822161ae578c0"
      ],
      "author": {
        "name": "Lei Yuan",
        "email": "leiyuan@asrmicro.com",
        "time": "Tue Nov 27 09:32:25 2018 -0800"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Tue Nov 27 09:32:25 2018 -0800"
      },
      "message": "Merge \"Camera: update Intent firstly at api1 capture with device3\" am: 792a7e94a5 am: fd99b9f7fc\nam: 6407c30275\n\nChange-Id: Iccfb2cd5181f79549b9b268c01168fcebaa9976b\n"
    },
    {
      "commit": "e1aedc5a83ba7cc1d2849b5c6d6272e29bc7fe51",
      "tree": "e9d84108fe5d06f1ab7a0cf8287356eb3337cf63",
      "parents": [
        "18697362534415319b635dbdc96bfb43769b327a"
      ],
      "author": {
        "name": "Shuzhen Wang",
        "email": "shuzhenwang@google.com",
        "time": "Tue Nov 20 10:04:08 2018 -0800"
      },
      "committer": {
        "name": "Peter Kalauskas",
        "email": "peskal@google.com",
        "time": "Tue Nov 27 17:29:53 2018 +0000"
      },
      "message": "Camera: Do not update state at HAL starts up if state already exists\n\nThis is to handle lazy hal, where cameraserver doesn\u0027t know HAL goes\naway.\n\nTest: Observe that the between QS Torch Tile and Camera App is correct.\nBug: 79374634\nMerged-In: I2f802b1c409ba3581f0fcacfc0ac5f6059391139\nChange-Id: I2f802b1c409ba3581f0fcacfc0ac5f6059391139\n"
    },
    {
      "commit": "6407c30275b986fdb172a12588c822161ae578c0",
      "tree": "823f8f4cf74305f159f722582e4bdaec2918e1d5",
      "parents": [
        "0cbe83b72c89c71a945f022fac50442ffe433a05",
        "fd99b9f7fc8be77f125e6048bfa2b58f97e43f16"
      ],
      "author": {
        "name": "Lei Yuan",
        "email": "leiyuan@asrmicro.com",
        "time": "Tue Nov 27 09:24:16 2018 -0800"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Tue Nov 27 09:24:16 2018 -0800"
      },
      "message": "Merge \"Camera: update Intent firstly at api1 capture with device3\" am: 792a7e94a5\nam: fd99b9f7fc\n\nChange-Id: Ia5c92a287b516750a9513de0284f61374b0abe06\n"
    },
    {
      "commit": "950eca05791b92d6d7e6838317077b4d01064633",
      "tree": "68e2260641ae33363e3a78cfe997eaf47b2a0df5",
      "parents": [
        "45214bb80ed49a14cf8661f093016166148794fc",
        "6ba3f5e527169386472f0fb0b8ccd3184ecfd435"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Tue Nov 27 16:58:24 2018 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Nov 27 16:58:24 2018 +0000"
      },
      "message": "Merge \"Camera: Do not update state at HAL starts up if state already exists\""
    },
    {
      "commit": "792a7e94a5238d352cb4eb2707884d796d6af85b",
      "tree": "fd8973031922233b314be2c443b261e6a79c26ff",
      "parents": [
        "18697362534415319b635dbdc96bfb43769b327a",
        "1e8baa298c6ddf98a0834cb9f30d1796b607c4cc"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Tue Nov 27 16:50:50 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Tue Nov 27 16:50:50 2018 +0000"
      },
      "message": "Merge \"Camera: update Intent firstly at api1 capture with device3\""
    },
    {
      "commit": "8b3299d514cdd9f219c7fd50980d3fc949572077",
      "tree": "79e967f1b43fa63e878944ae5d54113366a32040",
      "parents": [
        "7fd4312a952f063e292cbf500e121aefc654d33d",
        "644a3e1cb3287a5a863968998fd77efccc915241"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Tue Nov 27 08:40:51 2018 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Nov 27 08:40:51 2018 +0000"
      },
      "message": "Merge \"Camera: Clear camera 3.5 device session\""
    },
    {
      "commit": "1e8baa298c6ddf98a0834cb9f30d1796b607c4cc",
      "tree": "9889785f493337cb4ac82cee45ccde8e7e3ecb3b",
      "parents": [
        "4462ff08c41880644903702e4734cda7a320aadd"
      ],
      "author": {
        "name": "Lei Yuan",
        "email": "leiyuan@asrmicro.com",
        "time": "Wed Nov 21 10:50:37 2018 +0800"
      },
      "committer": {
        "name": "Shuzhen Wang",
        "email": "shuzhenwang@google.com",
        "time": "Mon Nov 26 20:04:11 2018 +0000"
      },
      "message": "Camera: update Intent firstly at api1 capture with device3\n\ncapture fps range depend on intent which is different between still capture and video snapshot.\n\nBug: 119841034\nChange-Id: Ib7c653c5f32c451631f208bf7353c06340c43b18\nSigned-off-by: Lei Yuan \u003cleiyuan@asrmicro.com\u003e\n"
    }
  ],
  "next": "644a3e1cb3287a5a863968998fd77efccc915241"
}
