)]}'
{
  "log": [
    {
      "commit": "316781aef6d71f7daac4f054d73ef705f25fd39e",
      "tree": "78aa6e3c71c2d9a3c4a9bf44c4070385c059d39b",
      "parents": [
        "ddd2c167f5653d452d745d776d2eb8d831f2624b"
      ],
      "author": {
        "name": "Shuzhen Wang",
        "email": "shuzhenwang@google.com",
        "time": "Tue Aug 18 18:11:01 2020 -0700"
      },
      "committer": {
        "name": "Shuzhen Wang",
        "email": "shuzhenwang@google.com",
        "time": "Tue Nov 17 10:54:40 2020 -0800"
      },
      "message": "Camera: Pass system health metrics to ServiceProxy\n\n- Measure session statistics:\n  - Camera open, close, and session creation latency\n  - Session information such as camera id, is_ndk, operating mode,\n    and reconfiguration count.\n- Measure stream statistics:\n  - width, height, format, dataspace, usage\n  - max buffer count\n  - buffer loss count\n  - startup latency.\n\nTest: ./out/host/linux-x86/bin/statsd_testdrive 227\nTest: Camera CTS, VNDK test\nBug: 154159000\nChange-Id: I082ef26a312bddbfd4abcc2148728a4b7bf8a9f6\n"
    },
    {
      "commit": "4d9c30cfb50360be99e686714569c537d5b2debf",
      "tree": "aaebe1757cea12c4a41e34063e4dbcbd7bf1e8f6",
      "parents": [
        "7f706874c0608f6d643b313ed5b0751ef9f4e44a",
        "9e9f925a5aa22700c038981634b6ffe7108a350f"
      ],
      "author": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Tue Mar 10 23:42:36 2020 +0000"
      },
      "committer": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Tue Mar 10 23:42:36 2020 +0000"
      },
      "message": "Merge \"Camera: Add onCameraOpened/onCameraClosed callbacks\" into rvc-dev am: 5ae4551c92 am: 9e9f925a5a\n\nChange-Id: I1ea2c7563519ad156948356c82ba6364660d3ade\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": "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": "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": "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": "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": "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": "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": "35ae826b8d002b5045e208106a38354d86aed01d",
      "tree": "a02af8be0bb7fca6305333e2136e94d650e42bdb",
      "parents": [
        "54cbc29870372ef9d5763c2a86d86508bc351d1b"
      ],
      "author": {
        "name": "Emilian Peev",
        "email": "epeev@google.com",
        "time": "Thu Nov 08 13:11:32 2018 +0000"
      },
      "committer": {
        "name": "Emilian Peev",
        "email": "epeev@google.com",
        "time": "Wed Nov 14 18:17:58 2018 +0000"
      },
      "message": "Camera: Add support for stream combination query\n\nSupport runtime \"SessionConfiguration\" queries by camera\nclients.\n\nBug: 111593096\nTest: adb shell /data/nativetest64/camera_client_test/camera_client_test\n--gtest_filter\u003dCameraClientBinderTest.CheckBinderCameraDeviceUser,\nCamera CTS\nChange-Id: I1505e7bccdce468490b46ad4546e459354a4cda3\n"
    },
    {
      "commit": "5c22c15ed8c593189ed9bb8fcbccace2ca63b82a",
      "tree": "d3f608b779d55a54851ab49aacb697510725725f",
      "parents": [
        "91b1f83220c6fc643e2618f92b28482fa880c7fd"
      ],
      "author": {
        "name": "Shuzhen Wang",
        "email": "shuzhenwang@google.com",
        "time": "Sun Dec 31 17:12:25 2017 -0800"
      },
      "committer": {
        "name": "Shuzhen Wang",
        "email": "shuzhenwang@google.com",
        "time": "Wed Jan 24 18:18:18 2018 -0800"
      },
      "message": "Camera: Support physical camera metadata in capture result\n\n- Add physical camera metadata in capture result.\n- Adjust capture_result book-keeping for physical capture result.\n- Adapt to new version of ICameraDeviceCallback.\n- Batch physical metadata with logical metadata within one\nprocess_capture_result call.\n\nTest: testLogicalCameraTest CTS test\nBug: 64691172\nChange-Id: I63fd343770cbb6183b7c6e4566c698f69801a8e8\n"
    },
    {
      "commit": "aebbe41461c597cdcb4be35edb5484410b9b2dff",
      "tree": "82061515fa8890cba39f1161b809b1875d578c73",
      "parents": [
        "c28189a64a6ef65aecccb6e3bb980f1afc189a1c"
      ],
      "author": {
        "name": "Emilian Peev",
        "email": "epeev@google.com",
        "time": "Mon Jan 15 13:53:24 2018 +0000"
      },
      "committer": {
        "name": "Emilian Peev",
        "email": "epeev@google.com",
        "time": "Sat Jan 20 16:11:35 2018 +0000"
      },
      "message": "camera: Support multiple physical camera requests\n\nCapture requests could include settings for different physical\ncameras. Camera service should always check whether such\nextended requests refer to valid physical devices and process\nthem accordingly.\nFix some stability issues in the camera native tests.\n\nTest: Basic camera sanity using camera application,\ncamera_client_test, Camera CTS\nBug: 64691172\n\nChange-Id: I68b81e983dd0b7caebfa03e4f0cf283f2a91dc7a\n"
    },
    {
      "commit": "5fbe0ba24d88910e68610add74fd1e1b94d282b5",
      "tree": "571e90551fd1ee5e0d326af18d3e400970d8ea41",
      "parents": [
        "3700e162a5526ada762d081de34c9abdd085c5fe"
      ],
      "author": {
        "name": "Emilian Peev",
        "email": "epeev@google.com",
        "time": "Fri Oct 20 15:45:45 2017 +0100"
      },
      "committer": {
        "name": "Emilian Peev",
        "email": "epeev@google.com",
        "time": "Thu Dec 14 09:35:46 2017 +0000"
      },
      "message": "Camera: Add support for session parameters\n\nThe initial values of the session-wide capture parameters\nshould be passed along the stream list during stream\nconfiguration. This could yield performance gains depending\non the Hal implementation and support.\n\nBug: 64450664\nTest: Camera CTS\nChange-Id: I2b0ec8916f027e7f34f81dc414c3ca649807e925\n"
    },
    {
      "commit": "8ca23dca1cd450b4d93e8da1c8bd6f6ee61e2f5f",
      "tree": "259191c6f2a13395c27c8095d00bfcbf3e926616",
      "parents": [
        "90153cae7ffd321338f90678a80abd62fb56e877"
      ],
      "author": {
        "name": "Yin-Chia Yeh",
        "email": "yinchiayeh@google.com",
        "time": "Tue Sep 05 18:15:56 2017 -0700"
      },
      "committer": {
        "name": "Yin-Chia Yeh",
        "email": "yinchiayeh@google.com",
        "time": "Tue Sep 05 18:15:56 2017 -0700"
      },
      "message": "Camera: fix race in onRepeatingRequestError callback\n\nTest: CTS\nBug: 64180296\nChange-Id: I620e238bf1f4e7ab72911b6e68c689580fba22f1\n"
    },
    {
      "commit": "f51fca277eb5b86bd0b2e3fc90ecb2b63089de29",
      "tree": "4c9b0b9c9e3969dca6ee7a0e0f4b0904a1757d8c",
      "parents": [
        "07f49573613aee5a8e661f74a324db371ecc8551"
      ],
      "author": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Tue Dec 13 11:25:55 2016 -0800"
      },
      "committer": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Tue Dec 13 16:32:23 2016 -0800"
      },
      "message": "Camera service: Updates in preparation for HIDL\n\n- For all camera2 paths, and anything shared between the legacy API and\n  camera2, switch to using strings for camera IDs\n- Update ICameraService.addListener to return current set of known\n  devices and their status, to allow for immediate return of camera\n  devices when first connecting to camera service\n- Remove unused code path for getCameraCharacteristics with HALv1\n- Add namespace qualifiers to Binder objects that are also used by\n  hardware binder.\n- Switch to using new HIDL DeviceStatus and TorchStatus enumerations\n  for better type safety in the service; map more clearly between\n  the HAL, service-internal, and Binder enums.\n\nTest: cts-tradefed run cts -m Camera --skip-connectivity-check -d -o --abi armeabi-v7a --disable-reboot\nBug: 32991422\nChange-Id: I765951d9a21000a8432bed9aa0e3604709daa4b1\n"
    },
    {
      "commit": "9d06601e54848f076b7472a376c672215cd70c46",
      "tree": "8ef76a427e631fde284d0e920075f406a6d885ab",
      "parents": [
        "d3196abc2d216e74be7b137cd0b93ef5b4f005db"
      ],
      "author": {
        "name": "Shuzhen Wang",
        "email": "shuzhenwang@google.com",
        "time": "Fri Sep 30 11:30:20 2016 -0700"
      },
      "committer": {
        "name": "Shuzhen Wang",
        "email": "shuzhenwang@google.com",
        "time": "Mon Oct 17 10:39:19 2016 -0700"
      },
      "message": "Camera2: Add onCaptureQueueEmpty callback\n\nonCaptureQueueEmpty is called when the non-repeating request queue in\ncameraservice becomes empty. Application can use this callback as a\ntrigger for a new request.\n\nTest: testMultipleCapture in PerformanceTest.java\n\nBug: 29006447\nChange-Id: Id21afd74381e0b70f924c6026025c91a8ffd5ee0\n"
    },
    {
      "commit": "e8c535e833ed135895e99ca81aa3b85d80d7cf3c",
      "tree": "b0b0a255eda7c96bfffd3da79828d52c86372677",
      "parents": [
        "bc0c73e05ec935bc478ee0e40aee79f80771a482"
      ],
      "author": {
        "name": "Chien-Yu Chen",
        "email": "cychen@google.com",
        "time": "Thu Apr 14 12:18:26 2016 -0700"
      },
      "committer": {
        "name": "Chien-Yu Chen",
        "email": "cychen@google.com",
        "time": "Fri Apr 15 16:01:25 2016 -0700"
      },
      "message": "Camera: Stop repeating request if its output is abandoned\n\nStop repeating request if any of its output stream is abandoned.\nAdd a callback to notify the repeating request has been stopped\nwith frame number of the last frame.\n\nUpdate NDK with the new callback and behavior.\n\nBug: 21270879\n\nChange-Id: I3553775c7807a77104aa1650609480ca3321310c\n"
    },
    {
      "commit": "d56db1d2bee182d1851097a9c712712fc094d117",
      "tree": "243fda59e2b4d51491af628b49b3a35b267e0051",
      "parents": [
        "cf7913e2389a5e850e01aa6f905d252ee54c9891"
      ],
      "author": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Thu Dec 17 16:50:35 2015 -0800"
      },
      "committer": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Wed Mar 02 10:27:36 2016 -0800"
      },
      "message": "Camera: Switch camera2 to auto-gen C++ binder interfaces\n\n - Move camera service AIDL files to frameworks/av\n - Build C++ interface stubs with AIDL tools\n - Add necessary native-side parcelables and update existing ones\n - Remove manually-written stubs, rearrange remaining manual stubs\n - Adjust implementations to work with auto-generated stubs\n   - Adjust method signatures for auto-gen differences\n   - Add rich error messages using binder::Status\n\nBug: 25091611\nChange-Id: I6f69f34b9d1a3f8d1fb7db87357363f8fa8483ff\n"
    },
    {
      "commit": "0dea57fd9fc4b2ccaab97d9477359fbd5a626f5c",
      "tree": "2cee23a637023c0365748d4a2f7f1048c9d97ab8",
      "parents": [
        "52a942055bcc4a96b6e281a54a70a53b6fca5798"
      ],
      "author": {
        "name": "Yin-Chia Yeh",
        "email": "yinchiayeh@google.com",
        "time": "Wed Dec 09 16:46:07 2015 -0800"
      },
      "committer": {
        "name": "Yin-Chia Yeh",
        "email": "yinchiayeh@google.com",
        "time": "Mon Jan 25 16:40:17 2016 -0800"
      },
      "message": "Camera NDK library: first draft\n\nBug: 23012001\n\nChange-Id: I06d834421289d4dead1c87301a6ee94487ccf023\n"
    },
    {
      "commit": "d309fb9c8a2c4564d88fffba19c4e3688e4b862b",
      "tree": "6bfe3758c23a0a46e4d198ccb9a3a28ba65abe4d",
      "parents": [
        "dc123cbae198204e8c6c3d4f4f09a95cbc0e9ec5"
      ],
      "author": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Wed Nov 25 12:12:45 2015 -0800"
      },
      "committer": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Tue Dec 01 11:58:16 2015 -0800"
      },
      "message": "CameraService: Remove device HALv2 support, other cleanup\n\nHALv2 only ever shipped with Nexus 10, and has been fully superceded by\nHALv3. Remove it to allow for various code simplifications and cleanup.\n\n- Remove Camera2Device\n- Remove various special-case codepaths for supporting Camera2Device\n- Remove CameraDeviceFactory, since it only creates Camera3Devices now\n- Remove BurstCapture and associated CaptureSequence/Parameters code\n- Remove old ZslProcessor and simplify ZslProcessor hierarchy to be\n  just ZslProcessor3, which is renamed to just ZslProcessor\n- Add service-init-time check for unsupported device versions\n- Fix assorted compiler warnings, some old, some new\n- Remove references to HALv2 when possible\n\nBug: 25866588\nChange-Id: Ia1063264d315f9b742ec5cdd0483539310894f5e\n"
    },
    {
      "commit": "3450ba7879be6522ea46a56c5e66e5382f5dd5ba",
      "tree": "201ed5e416af4f44012e6b5c7f2b16bd30cfc673",
      "parents": [
        "a3b3caaae3fc23b99c5c455ee429f79c270cfbae"
      ],
      "author": {
        "name": "Ruben Brunk",
        "email": "rubenbrunk@google.com",
        "time": "Tue Jun 16 11:00:37 2015 -0700"
      },
      "committer": {
        "name": "Ruben Brunk",
        "email": "rubenbrunk@google.com",
        "time": "Mon Jul 06 17:49:44 2015 -0700"
      },
      "message": "camera2: Fix native binder interface and add tests.\n\n- Add CameraBinderTests for limited coverage of native\n  camera2 binder interfaces for the camera service.\n- Fix several bugs in the native binder interfaces.\n\nBug: 18468810\nChange-Id: Iab2d81a5cacd20daf7454aeeed033cc13d88452c\n"
    }
  ]
}
