)]}'
{
  "log": [
    {
      "commit": "abe5ea1b0bdca448713ecd0fb06e3a64d81822ea",
      "tree": "721d6d22d8cc606e57bd6b32e2c2ee1e8d6a1a26",
      "parents": [
        "bae7e457c296aa8a64826aa355e784a78419d521"
      ],
      "author": {
        "name": "Shuzhen Wang",
        "email": "shuzhenwang@google.com",
        "time": "Thu Dec 15 22:38:07 2022 -0800"
      },
      "committer": {
        "name": "Shuzhen Wang",
        "email": "shuzhenwang@google.com",
        "time": "Mon Jan 09 20:22:55 2023 -0800"
      },
      "message": "Camera: Add adb shell cmd to override stream use case\n\nAdding ability to override stream use cases using adb makes testing\n3P apps\u0027 stream use case behavior easier. 3P apps don\u0027t need to make code\nchange.\n\nExample:\n\nadb shell cmd media.camera set-stream-use-case-override STILL_CAPTURE \\\nPREVIEW_VIDEO_STILL\nadb shell cmd media.camera clear-stream-use-case-override\n\nTest: Run social media app after set-stream-use-case-override\nBug: 262286032\nChange-Id: Ibed4fcb7b1983461f060ca8fc452e2ebbf9cfc81\nMerged-In: Ibed4fcb7b1983461f060ca8fc452e2ebbf9cfc81\n"
    },
    {
      "commit": "1c0042b52fcaf018b9b5988c01c69009be0baf82",
      "tree": "c1c1491527d703a0cb2a42a33df59688341a40aa",
      "parents": [
        "7e4fb4beed9c7eb6279542b98920ea50f91d11b1"
      ],
      "author": {
        "name": "Kwangkyu Park",
        "email": "kk48.park@samsung.com",
        "time": "Tue Dec 20 00:03:17 2022 +0900"
      },
      "committer": {
        "name": "Shuzhen Wang",
        "email": "shuzhenwang@google.com",
        "time": "Mon Dec 19 13:09:46 2022 -0800"
      },
      "message": "Fix an issue that the syncTimestampToDisplayLocked incorrect\n\nIf the device turned on for a long time then the timestamp get biffer.\nIn this case, the conversion error between float\u003c-\u003ensecs_t also becomes\nlarge enough to prevent the best timestamp selection. This causes frame\ndrops when timestamps get large enough.\n\nBug: 263096067\nTest: Manual test after device is turned on for long time\nChange-Id: I94c90b32a053f7c0c0816dadbef8a47e13c64b30\n"
    },
    {
      "commit": "f221e8dd72c325f15437ed4ba32916393e587461",
      "tree": "4a7867e564bfca9f51f89f437b1375dd28879c73",
      "parents": [
        "6aea1603bbfa2b7223271836eef44d12e3114e49"
      ],
      "author": {
        "name": "Shuzhen Wang",
        "email": "shuzhenwang@google.com",
        "time": "Thu Dec 15 13:26:29 2022 -0800"
      },
      "committer": {
        "name": "Shuzhen Wang",
        "email": "shuzhenwang@google.com",
        "time": "Thu Dec 15 13:27:50 2022 -0800"
      },
      "message": "Camera: Fix parameter misalignment in getDeviceVersion\n\nTest: atest CtsCameraApi31TestCases\nBug: 262690095\nChange-Id: I0fa83f2d309eb7675d0eac4436acf64f688b18a9\n"
    },
    {
      "commit": "b68ae1538ae75f6cdd810a82dbef87f88dbe5d23",
      "tree": "89c46df3479ca9c127a86c938d72abdd8a45fddf",
      "parents": [
        "01ad3770e86bc9d5732ff9ca9d5ee7fcf697d271",
        "dc519093e8ece9e2f587151fea4fde5d67da08a5"
      ],
      "author": {
        "name": "Shuzhen Wang",
        "email": "shuzhenwang@google.com",
        "time": "Mon Dec 12 17:44:04 2022 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Dec 12 17:44:04 2022 +0000"
      },
      "message": "Merge \"Camera: memcpy Blob header rather than directly writing fields\" into tm-qpr-dev"
    },
    {
      "commit": "8a177430c63e0fb0ffc2daf0baf78a7cc40e7269",
      "tree": "db59508fa852d077b811534a6fd082f9459bda8b",
      "parents": [
        "3560b7e9373b54f8662d3f3f0df9c2c3b35a4c33"
      ],
      "author": {
        "name": "Austin Borger",
        "email": "borgera@google.com",
        "time": "Thu Dec 08 07:09:04 2022 -0800"
      },
      "committer": {
        "name": "Austin Borger",
        "email": "borgera@google.com",
        "time": "Thu Dec 08 08:36:40 2022 -0800"
      },
      "message": "RotateAndCropMapper - reverse rotation direction.\n\nBased on an end-to-end test of the RotateAndCropMapper, the rotation\nis being applied in the wrong direction. After swapping 270 and 90\ndegree rotations, the output is as expected.\n\nBug: 261775770\nTest: Ran face detection on app with all rotations\nChange-Id: I209e360918d9e48abf2372527602b2b454e3b88a\n"
    },
    {
      "commit": "3560b7e9373b54f8662d3f3f0df9c2c3b35a4c33",
      "tree": "3fa3bc7b73507606d9754c2209e2ff2ab1a49e50",
      "parents": [
        "9553becaf8c0e7d801f9a683b2af57826ec4798c"
      ],
      "author": {
        "name": "Austin Borger",
        "email": "borgera@google.com",
        "time": "Thu Oct 27 12:20:29 2022 -0700"
      },
      "committer": {
        "name": "Austin Borger",
        "email": "borgera@google.com",
        "time": "Mon Dec 05 21:06:46 2022 -0800"
      },
      "message": "DO NOT MERGE libcameraservice: Provide flag for overriding camera output to portrait.\n\nApps commonly do not handle landscape orientation cameras correctly. In\norder to prevent stretching and rotation issues in these apps, this\npatch adds a flag to override the behavior of these landscape cameras\nto produce a portrait image instead by changing the SENSOR_ORIENTATION\nreported by CameraCharacteristics and applying a 90 degree rotate and\ncrop.\n\nChange-Id: I64ed52812326edc11f1cdb6bfbdbe75fcb8b1fb8\nBug: 250678880\nTest: Ran on foldable device with several camera apps to verify behavior.\n"
    },
    {
      "commit": "dc519093e8ece9e2f587151fea4fde5d67da08a5",
      "tree": "1c86c5c5e2b4f1e62b68ee5a0b436c52fe240c40",
      "parents": [
        "15d9586c88abdfa5ad0aa3c613f7256f0f3156bb"
      ],
      "author": {
        "name": "Shuzhen Wang",
        "email": "shuzhenwang@google.com",
        "time": "Fri Dec 02 12:29:04 2022 -0800"
      },
      "committer": {
        "name": "Shuzhen Wang",
        "email": "shuzhenwang@google.com",
        "time": "Fri Dec 02 12:46:34 2022 -0800"
      },
      "message": "Camera: memcpy Blob header rather than directly writing fields\n\nThe CameraBlob embedded in the output bitstream may not be word aligned.\nDirectly casting a byte* to a CameraBlob and assigning its field could\ncause alignment exception.\n\nUse memcpy from a CameraBlob struct instead.\n\nTest: Partner tested on 32-bit system\nBug: 260045056\nChange-Id: I34b6ba8ded458b2dc59638a50237b7a1f64bfb86\n"
    },
    {
      "commit": "f3d7e730f96a7cfd7c59d4012e975a633c0ffeef",
      "tree": "f8ebf633a3625e2c6a03416e86f996dd51e246da",
      "parents": [
        "ed7469bbdff6de3281ad9dd33e3af069e06ac809"
      ],
      "author": {
        "name": "Shuzhen Wang",
        "email": "shuzhenwang@google.com",
        "time": "Tue Nov 29 12:50:18 2022 -0800"
      },
      "committer": {
        "name": "Shuzhen Wang",
        "email": "shuzhenwang@google.com",
        "time": "Tue Nov 29 17:43:48 2022 -0800"
      },
      "message": "Camera: Use focalLength in CaptureResult for CameraParameters\n\nWith logical multi-camera, the focal length of the camera may change\ndepending on zoom/crop setting or foldable\u0027s fold/unfold state.\n\nFor Camera1-HAL3 path, update the FOCAL_LENGTH field in camera\nparameters based on capture result.\n\nTest: CameraTest#testVideoSnapshot on a foldable phone\nBug: 254611744\nChange-Id: Ibec44c0a738faeb0f768fe30109a45921d878c31\n"
    },
    {
      "commit": "17a2579f1e8d87641587e69cf96ddb2c1c3fea9a",
      "tree": "4537bebbad460a07f3ec4b00e1e44376f58255cb",
      "parents": [
        "3d316f37cc755289bdfd8a4c70d9e36a40e7e64d"
      ],
      "author": {
        "name": "Shuzhen Wang",
        "email": "shuzhenwang@google.com",
        "time": "Tue Nov 22 10:59:16 2022 -0800"
      },
      "committer": {
        "name": "Shuzhen Wang",
        "email": "shuzhenwang@google.com",
        "time": "Tue Nov 22 11:19:03 2022 -0800"
      },
      "message": "Camera: Filter readoutTimestamp for older vndk\n\n- readoutTimestamp was added in HAL version 3.8. Filter it for older vndk\nversions.\n- Renegerate the VNdkVersionMetdataTags by ordering them.\n\nTest: Run VtsHalCameraServiceV2_0TargetTest on GSI build\nBug: 259932518\nBug: 259367770\nChange-Id: I0aed8072ea3884a50c3874b352035a4c6efb4269\nMerged-In: I0aed8072ea3884a50c3874b352035a4c6efb4269\n"
    },
    {
      "commit": "3d316f37cc755289bdfd8a4c70d9e36a40e7e64d",
      "tree": "9d82825164bc106b57ccb4ff25c2f88330f6760d",
      "parents": [
        "25c6807926a1ccabecd5d4bd568b304bb068175b"
      ],
      "author": {
        "name": "Shuzhen Wang",
        "email": "shuzhenwang@google.com",
        "time": "Tue Oct 25 20:33:34 2022 +0000"
      },
      "committer": {
        "name": "Shuzhen Wang",
        "email": "shuzhenwang@google.com",
        "time": "Wed Nov 02 15:52:51 2022 -0700"
      },
      "message": "Camera: Fix missing physical camera availability callback\n\nThe missing physical camera availability callback is due to a race\ncondition between provider enumeration and physical camera availability\ncallback. If the HAL triggers a physical camera availability callback,\nit could be dropped because the logical camera\u0027s availability callback\nisn\u0027t triggered until the provider enumeration finishes.\n\nFix the issue by deferring physical camera availability callbacks\nuntil the logical camera availability callback is called.\n\nTest: Camera CTS, vendor test on foldable phone, cameraservice_test\nBug: 255472536\nChange-Id: Ia5a535b1530b3666e616cc3619fcb759ff5d8560\n"
    },
    {
      "commit": "d7a6aeea49ab92353ac9a75fdaaa429d3f1a9dcb",
      "tree": "0a22bd7a8e0acd2c95e20276f3a67871d6923cd5",
      "parents": [
        "72c966598d239df2445b9d863d7a7884bddd581c",
        "4b35b1d1d5b20c8181305408e27f45a35dd553fa"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Tue Oct 11 22:20:06 2022 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Oct 11 22:20:06 2022 +0000"
      },
      "message": "Merge \"Camera: Avoid over-delaying frames in PreviewFrameSpacer\" into tm-qpr-dev"
    },
    {
      "commit": "72c966598d239df2445b9d863d7a7884bddd581c",
      "tree": "bd239caac8fa533740810313f92e2eb08069b0bd",
      "parents": [
        "b9cefaf408b7fe51906a8b39a9ab227f515e9a99"
      ],
      "author": {
        "name": "Ravneet Dhanjal",
        "email": "rdhanjal@google.com",
        "time": "Wed Jun 29 01:34:01 2022 +0000"
      },
      "committer": {
        "name": "Charisee Chiw",
        "email": "chiw@google.com",
        "time": "Thu Oct 06 21:41:10 2022 +0000"
      },
      "message": "CameraService: Updated watchdog disconnect timer\n\n- Update disconnect watchdog timer to prevent\nthwarting of existing error handling for\ntimeouts and prevent from firing earlier than\nintended delays.\n\n\nBug: 251252726\nBug: 247397845\nTest: Manual\nChange-Id: Id494157d02dae089a91305f128d9e4f5b660e30f\n(cherry picked from commit 7d412d2cd37510100c1a3e22f2790e96b435ee26)\n"
    },
    {
      "commit": "4b35b1d1d5b20c8181305408e27f45a35dd553fa",
      "tree": "707e09c5c256aff80dc4ba8915fd9639f95f3ab6",
      "parents": [
        "3560d53fa947220097d1f0e7041a42916716774b"
      ],
      "author": {
        "name": "Shuzhen Wang",
        "email": "shuzhenwang@google.com",
        "time": "Mon Oct 03 15:53:14 2022 -0700"
      },
      "committer": {
        "name": "Shuzhen Wang",
        "email": "shuzhenwang@google.com",
        "time": "Thu Oct 06 14:10:20 2022 -0700"
      },
      "message": "Camera: Avoid over-delaying frames in PreviewFrameSpacer\n\nThere could be 1 or 2 ms between calculating the timeToWait and\nqueueBuffer(). As a result currently we are over-delaying each\nframe for about 1ms. This over-delay can accumulate and recover\nonce the maximum 10ms limit is reached or 2 frames are queued.\n\nTo compensate, wait up to until (mLastPresentTime + captureInterval - 2ms)\nSo that the presentation intervals don\u0027t always exceed captureInternal.\n\nBug: 251183098\nTest: Camera CTS, vendor testing\nTest: testPreviewJitterSurfaceTexture\nChange-Id: I2728d0516686950141c8e6d41e041d8d6dc00c8a\n"
    },
    {
      "commit": "3560d53fa947220097d1f0e7041a42916716774b",
      "tree": "94ce05e4345d62f172b034e1d077f088781619bd",
      "parents": [
        "2170f74cbb11d79117f29876c960d79ea920523c",
        "35bd3553b06468c8d77adecca498ff0a0d194d41"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Wed Sep 28 19:03:21 2022 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Sep 28 19:03:21 2022 +0000"
      },
      "message": "Merge \"Camera: Reduce latency for dejittering\" into tm-qpr-dev"
    },
    {
      "commit": "58106affc4cd12ad3fc35c609c418b080a55b765",
      "tree": "3cb09e988d578c59545a2ab416d15ae017cf2b42",
      "parents": [
        "36af0f66e5c27f106459bd9aa013eb8ef0770aca"
      ],
      "author": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Fri Sep 23 16:51:06 2022 -0700"
      },
      "committer": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Mon Sep 26 17:51:31 2022 -0700"
      },
      "message": "Camera: Look up client name for NDK earlier\n\nBefore, the client package name, which can be empty for NDK clients,\nwasn\u0027t looked up until BasicClient. Move lookup to connectHelper,\nto ensure there\u0027s a name to pass to other system services such as\nwindow manager.\n\nNote that for shared UID processes, we may select the wrong name,\nbut this is not expected to cause problems for the situations where\nthe name is used, beyond just confusing logs.\n\nAlso fix up PID reporting for the initial camera connect logging.\n\nTest: atest CtsCameraTestCases on oriole, plus manual testing\n  with an NDK-using app to verify that the frame rate override reaches\n  window manager correctly.\nBug: 239452794\nChange-Id: I006a73e0c9eec99c827085a722d0edfa879bdd23\n"
    },
    {
      "commit": "35bd3553b06468c8d77adecca498ff0a0d194d41",
      "tree": "ede940f970b5706a87e0da918a0285d8eda1cf5f",
      "parents": [
        "36af0f66e5c27f106459bd9aa013eb8ef0770aca"
      ],
      "author": {
        "name": "Shuzhen Wang",
        "email": "shuzhenwang@google.com",
        "time": "Wed Sep 21 16:56:04 2022 -0700"
      },
      "committer": {
        "name": "Shuzhen Wang",
        "email": "shuzhenwang@google.com",
        "time": "Mon Sep 26 16:01:31 2022 -0700"
      },
      "message": "Camera: Reduce latency for dejittering\n\nThere is a tradeoff between dejittering and latency. The more we delay\nthe presentation of frames, the longer latency there is.\n\n- Only look ahead for 2 frames in the vsync timeline. And do not exceed\n2+1 vsync timestamps when spacing out fixed frame rates in lockstep with\ndisplay vsync.\n- Disable synchronizing presentation time to vsync for variable frame\nrate. Fixed frame rate and video mode is typically more tolerant to\nhigher latency and prefers smoother user experience.\n- Reduce the upper bound of holding onto buffers to 10ms.\n\nTest: Measure photon-to-photon latency\nBug: 239775097\nChange-Id: I601a0fadf89529922fd1bd5d0a17ba80832b4cab\n"
    },
    {
      "commit": "c235270ed552cbbe1df31cf3862f913872fab38a",
      "tree": "336b3f02b2685149aa344f92bca32f5893468644",
      "parents": [
        "c25c6ed7ad6b5feb1a4483dbaf9751665d0d30ee"
      ],
      "author": {
        "name": "Shuzhen Wang",
        "email": "shuzhenwang@google.com",
        "time": "Tue Sep 06 18:36:31 2022 -0700"
      },
      "committer": {
        "name": "Shuzhen Wang",
        "email": "shuzhenwang@google.com",
        "time": "Wed Sep 21 15:57:29 2022 +0000"
      },
      "message": "Camera: Avoid dequeue too many buffers from buffer queue\n\nThe PreviewFrameSpacer could defer 1 or 2 buffers to reduce jitter.\nAnd we update the handout buffer count at the time of queuing to\nthe preview frame spacer, not at the time of queuing to the buffer\nqueue.\n\nThis results in accounting mismatch where the framework could allow\nthe HAL to dequeue more buffers than supported.\n\nThe fix is to track the framework cached buffer count in addition to the\nhandout buffer count.\n\nTest: Camera CTS, vendor testing, observe logcat with GoogleCamera\nBug: 242674531\nChange-Id: I579ae7465b59f5bd9e12dfda332998b401793eb4\n"
    },
    {
      "commit": "c25c6ed7ad6b5feb1a4483dbaf9751665d0d30ee",
      "tree": "d4a5029e73784b55fa2f450f9490d62e6b1f2da8",
      "parents": [
        "70c8179d11e77775c6b9a5a56a1629d5b68dc281",
        "696e4da718391c11b5742369dfa12d4a65900520"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Wed Sep 21 15:49:25 2022 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Sep 21 15:49:25 2022 +0000"
      },
      "message": "Merge \"Camera: Avoid latency accumulation when syncing preview to vsync\" into tm-qpr-dev"
    },
    {
      "commit": "696e4da718391c11b5742369dfa12d4a65900520",
      "tree": "6442d43a1b5069632ebe2d4e179f6725407bc55a",
      "parents": [
        "7c3252767b45c3d7fca4c0c525be03bbdb0fe468"
      ],
      "author": {
        "name": "Shuzhen Wang",
        "email": "shuzhenwang@google.com",
        "time": "Thu Sep 08 14:31:13 2022 -0700"
      },
      "committer": {
        "name": "Shuzhen Wang",
        "email": "shuzhenwang@google.com",
        "time": "Tue Sep 20 09:45:33 2022 -0700"
      },
      "message": "Camera: Avoid latency accumulation when syncing preview to vsync\n\nCurrently if the capture intervals deviate from vsync intervals by more\nthan 5%, reset the captureToPresent offset. This could be problematic\nwhen the camera capture intervals switches frequently between within 5%\nthreshold and outside 5% thread, because each time we reset the offset,\nit could increase resulting in the overall latency become larger\nand larger.\n\n- Distinguish between fixed FPS and variable FPS\n  - For fixed FPS, if the frame duration is roughly aligned with display\n    refresh rate, use the current logic by enforcing a minimum frame\n    interval.\n  - For variable FPS, or fixed FPS deviating from display refresh rate,\n    simply find the closest timestamp in the vsync timeline.\n- If we fail to find a presentation timestamp larger than the\n  previous frame, manually increase one vsync interval so that we don\u0027t\n  drop frame.\n\nTest: Visually observe GoogleCamera 30/60/variable-fps video preview\nTest: Visually observe OpenCamera photo and video preview,\nTest: Camera CTS, PerformanceTest#testPreviewJitter*\nBug: 245629333\nChange-Id: I4529b4fb5d2d5efd2dc8acf64f74412fbcafd67f\n"
    },
    {
      "commit": "e8dec5ff9759e1b21eb2e10638e0755524f53e75",
      "tree": "20e352f907286cc18c77ac6d3063e929a7c52eed",
      "parents": [
        "58c3812982332bd922e0f4eaacd5e9ce02d8989a",
        "73d6d9ddf604e813a93efae2ffb3b358bd887e05"
      ],
      "author": {
        "name": "Jayant Chowdhary",
        "email": "jchowdhary@google.com",
        "time": "Tue Sep 20 16:16:15 2022 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Sep 20 16:16:15 2022 +0000"
      },
      "message": "Merge \"cameraserver: inherit RT priority for AIDL HAL ICameraDeviceCallback calls.\" into tm-qpr-dev"
    },
    {
      "commit": "73d6d9ddf604e813a93efae2ffb3b358bd887e05",
      "tree": "df7a63a715e8e66bc67aa2813850c0aae60aaaed",
      "parents": [
        "1f0ac9da70d59bb6fcf3480fd47083287513b31b"
      ],
      "author": {
        "name": "Jayant Chowdhary",
        "email": "jchowdhary@google.com",
        "time": "Thu Sep 01 15:13:50 2022 -0700"
      },
      "committer": {
        "name": "Jayant Chowdhary",
        "email": "jchowdhary@google.com",
        "time": "Wed Sep 14 17:24:50 2022 +0000"
      },
      "message": "cameraserver: inherit RT priority for AIDL HAL ICameraDeviceCallback calls.\n\nBug: 242077173\n\nTest: Check perfetto trace; When camera HAL has an RT thread making a binder call to cameraserver\n      the serving threads priority is RT as well (bug has details)\n\nChange-Id: I1f07176ccc07a8e523289a5d1e47c9cec66c765f\nSigned-off-by: Jayant Chowdhary \u003cjchowdhary@google.com\u003e\n"
    },
    {
      "commit": "61a4ee1dab29f7127258e8b1194589934109514f",
      "tree": "1ea2b203eb109ca06f6121f150bc6b575a760b87",
      "parents": [
        "1c7fb94296f12b8c598f128069ffa19c0cff1953",
        "74cd373d6a9d5539ea9856b50f1c316ddc580d78"
      ],
      "author": {
        "name": "Ravneet Dhanjal",
        "email": "rdhanjal@google.com",
        "time": "Tue Sep 13 18:33:23 2022 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Sep 13 18:33:23 2022 +0000"
      },
      "message": "Merge \"Add disable/enable camera service watchdog feature\" into tm-qpr-dev"
    },
    {
      "commit": "74cd373d6a9d5539ea9856b50f1c316ddc580d78",
      "tree": "89e210ccee2f7a76ced259de773935b96d107fd6",
      "parents": [
        "1f0ac9da70d59bb6fcf3480fd47083287513b31b"
      ],
      "author": {
        "name": "Ravneet",
        "email": "rdhanjal@google.com",
        "time": "Wed Mar 30 05:33:03 2022 +0000"
      },
      "committer": {
        "name": "Ravneet Dhanjal",
        "email": "rdhanjal@google.com",
        "time": "Tue Sep 13 18:29:10 2022 +0000"
      },
      "message": "Add disable/enable camera service watchdog feature\n\n- Allows the camera service watchdog to be enabled and disabled\n- Usage: adb shell cmd media.camera set-cameraservice-watchdog [0/1]\n\nTest: Manual\nBug: 246600576\nChange-Id: I528ca819cc2be03006c77e869adf8f5fa99128d6\n(cherry picked from commit aeb20dc9ce47cc36852a366cd695346550d4ca20)\n"
    },
    {
      "commit": "80173a933a7d8331132e756b6cb1983ca8ced42d",
      "tree": "88ecd1fef7359ebb4b70312d6e910e143e0f0ad0",
      "parents": [
        "1f0ac9da70d59bb6fcf3480fd47083287513b31b"
      ],
      "author": {
        "name": "Austin Borger",
        "email": "borgera@google.com",
        "time": "Wed Aug 03 17:50:40 2022 -0700"
      },
      "committer": {
        "name": "Austin Borger",
        "email": "borgera@google.com",
        "time": "Wed Sep 07 18:28:03 2022 +0000"
      },
      "message": "CameraService: Check if the camera is disabled via device policy by user.\n\nThe current approach to checking the camera device policy is multi-user\nagnostic. This patch takes the user into account.\n\nTest: Tested GCA with device policy set via TestDPC\nBug: 230026863\nChange-Id: I3937f75ebfc219906a3c379b6b4cfacd801a40bf\nMerged-In: I3937f75ebfc219906a3c379b6b4cfacd801a40bf\n"
    },
    {
      "commit": "efa004af85718b52538ca5783d9ab2d91baec80b",
      "tree": "355af40a21f63b7924fbcb64995f0707cc147f8e",
      "parents": [
        "dcca821eff4a325934820b3094f66b8e4654d9ba"
      ],
      "author": {
        "name": "Avichal Rakesh",
        "email": "arakesh@google.com",
        "time": "Tue Jun 21 14:31:09 2022 -0700"
      },
      "committer": {
        "name": "Avichal Rakesh",
        "email": "arakesh@google.com",
        "time": "Thu Jun 30 17:23:51 2022 -0700"
      },
      "message": "cameraservice: Clean up tag monitoring output\n\nPrinting tag monitoring information either via `watch` or `dumpsys`\ncommand had a few bugs. This CL fixes the following:\n\n- Missing newline after \"(Removed)\" tags\n- Move changes in input and output stream ids to its own line. Changes\n  to stream ids and changes to tag values were coupled in outputs. After\n  this CL, changes to stream ids show up in their own line regardless of\n  any other tag changes.\n\nTest: Manually tested using `adb shell cmd media.camera watch live`\nBug: 236275873\nChange-Id: I85e23544a9938d5079656f4700f27b4fc06ff489\n"
    },
    {
      "commit": "c3cf1b8ced0e1c53afc7f25f06bccb8d685eeb41",
      "tree": "d2248457ad4fe7587cebb86e8092d4a05946effb",
      "parents": [
        "a53c7ea63b519f77fd8dfd2d3c96d9a49b6fd9e3",
        "ed08fbe1381f2de16c6ef4247436610443c5a2ed"
      ],
      "author": {
        "name": "Shuzhen Wang",
        "email": "shuzhenwang@google.com",
        "time": "Wed Jun 22 04:55:45 2022 +0000"
      },
      "committer": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Wed Jun 22 04:55:45 2022 +0000"
      },
      "message": "Camera: reset presentation timestamp more aggressively am: ed08fbe138\n\nOriginal change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/av/+/19014324\n\nChange-Id: Ibd27675b6229679031f9c21ee699e6687ef10e7d\nSigned-off-by: Automerger Merge Worker \u003candroid-build-automerger-merge-worker@system.gserviceaccount.com\u003e\n"
    },
    {
      "commit": "a53c7ea63b519f77fd8dfd2d3c96d9a49b6fd9e3",
      "tree": "0fca470e7ac0fe340e0786181eeea36fc3fc3ba8",
      "parents": [
        "50e8e38bc3e8ad55d64a0384e7fb01474b74c7c9",
        "34a5e28cbcf0d9ba486d84ca00580976baa97b75"
      ],
      "author": {
        "name": "Shuzhen Wang",
        "email": "shuzhenwang@google.com",
        "time": "Wed Jun 22 03:19:44 2022 +0000"
      },
      "committer": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Wed Jun 22 03:19:44 2022 +0000"
      },
      "message": "Camera: Handle deviation between frame duration and vsync intervals am: 34a5e28cbc\n\nOriginal change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/av/+/18988395\n\nChange-Id: I9a47816e41f851aadc88589448df0757eef4f973\nSigned-off-by: Automerger Merge Worker \u003candroid-build-automerger-merge-worker@system.gserviceaccount.com\u003e\n"
    },
    {
      "commit": "7de5fcc5043791c2e4db9dd75ee3c004ec970b82",
      "tree": "7e3e50a17a88278eb0c468b1ea1846842c42a724",
      "parents": [
        "cb9f076c62d101c48826b972d5d9708c3c52dfff",
        "96368f0763c70f3fa0d26efd7ea964c98e9bf52d"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Wed Jun 22 03:19:05 2022 +0000"
      },
      "committer": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Wed Jun 22 03:19:05 2022 +0000"
      },
      "message": "Merge \"Camera: Reset mExpectedMinDuration during configureStreams\" into tm-dev am: 96368f0763\n\nOriginal change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/av/+/18915945\n\nChange-Id: I06ca8aba7623df1d1325ee54a67a33530f560fdc\nSigned-off-by: Automerger Merge Worker \u003candroid-build-automerger-merge-worker@system.gserviceaccount.com\u003e\n"
    },
    {
      "commit": "ed08fbe1381f2de16c6ef4247436610443c5a2ed",
      "tree": "11c2d7ba8bc76167f7d7dd68345f177b4179ec27",
      "parents": [
        "34a5e28cbcf0d9ba486d84ca00580976baa97b75"
      ],
      "author": {
        "name": "Shuzhen Wang",
        "email": "shuzhenwang@google.com",
        "time": "Tue Jun 21 01:00:50 2022 -0700"
      },
      "committer": {
        "name": "Shuzhen Wang",
        "email": "shuzhenwang@google.com",
        "time": "Wed Jun 22 02:01:14 2022 +0000"
      },
      "message": "Camera: reset presentation timestamp more aggressively\n\nOn some platforms, VSYNC may run at a slightly lower rate\nthan camera output. With the current approach, the selected\ntimeline index may keep increase until it reaches max value,\nresulting in long latency.\n\nAddress this by:\n- Only use up to the first 3 expected presentation time.\n- Use a bias factor which decreases the minimum presentation\n  interval as the timeline index increases.\n- Reset presentation time as soon as capture intervals exceed\n  1.5 * 33ms.\n\nTest: Run GoogleCamera at 24, 30, and 60fps and analyze frame drop rate\nTest: Run camcorder preview/record for 10 iterations and observe preview\nBug: 236707639\nChange-Id: Iabd4f7b17a6ee1eb6772fbb943c8800f48a40869\n"
    },
    {
      "commit": "34a5e28cbcf0d9ba486d84ca00580976baa97b75",
      "tree": "f47e0627c957595fdcc7dab54f6284e006e78949",
      "parents": [
        "5b33db054b4a0423d42e5b90a2898c8da6ff52ab"
      ],
      "author": {
        "name": "Shuzhen Wang",
        "email": "shuzhenwang@google.com",
        "time": "Fri Jun 17 14:48:35 2022 -0700"
      },
      "committer": {
        "name": "Shuzhen Wang",
        "email": "shuzhenwang@google.com",
        "time": "Tue Jun 21 14:31:09 2022 -0700"
      },
      "message": "Camera: Handle deviation between frame duration and vsync intervals\n\nWhen camera frame duration deviates from display vsync interval, the\ncurrent approach doesn\u0027t work because it favors delaying the frames to\nlatch onto next VSYNC interval.\n\nWe cannot compensate such delay by pulling in and latching onto an\nealier VSYNC signal. That will result in periods where frames are\ndisplayed at 16ms, 50ms, 16ms, 50ms intervals for 30fps case.\n\nThe solution is to use different methods for different cases:\n1. If the frame duration is multiples of VSYNC intervals, use existing\n   approach.\n2. Otherwise, simply use the earlist expected presentation time in the\n   VSYNC timeline.\n\nTest: Run camera at lower FPS (24) and observe trace\nTest: No regression for fixed 30fps or 60fps use cases\nTest: Vendor verifies 24/30/60 fps display rate on different SoC chips\nTest: PerformanceTest#testSurfaceViewJitterReduction\nBug: 236389092\nChange-Id: I5408192550a1e09b18c4c0aa255a7687bf5dd829\n"
    },
    {
      "commit": "cddfdbf3ad77e5de8e55a7e706d1352493656bd6",
      "tree": "403fd14bfebbe12d2214d3dcef3ea491d84b5988",
      "parents": [
        "3ff1283e23a907bb152f2aff149519f9baafa118"
      ],
      "author": {
        "name": "Shuzhen Wang",
        "email": "shuzhenwang@google.com",
        "time": "Wed Jun 15 14:22:02 2022 -0700"
      },
      "committer": {
        "name": "Shuzhen Wang",
        "email": "shuzhenwang@google.com",
        "time": "Wed Jun 15 15:16:17 2022 -0700"
      },
      "message": "Camera: Reset mExpectedMinDuration during configureStreams\n\nmExpectedMinDuration needs to be reset during configureStreams.\nOtherwise, when streams are configured, the output streams wont\u0027\nreceive the callback.\n\nTest: Measure frame drop/miss after switching from camera to video\nBug: 236179978\nChange-Id: Ie6795c2ec728e54e77676d55875dafca1997049f\n"
    },
    {
      "commit": "46c7315cdf3b6f64e1093d25d7b401c11757531a",
      "tree": "7652749f2b67e510da8ae7e61690a33d9464b39a",
      "parents": [
        "ccaf166a2bf47c54fc1a26f65ba8994d0d89bf17",
        "c83d7c4a24e98f714d9f2f8b68e1292356e17fec"
      ],
      "author": {
        "name": "Ravneet Dhanjal",
        "email": "rdhanjal@google.com",
        "time": "Fri Jun 10 05:43:24 2022 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Jun 10 05:43:24 2022 +0000"
      },
      "message": "Merge \"cameraserver: Exit watchdog for disconnect call\" into tm-d1-dev"
    },
    {
      "commit": "c83d7c4a24e98f714d9f2f8b68e1292356e17fec",
      "tree": "194a1f54511fa0a1b4b02356e0c431bbea4615f3",
      "parents": [
        "756eb6bac99453e7a16eaa843b4968c614900388"
      ],
      "author": {
        "name": "Ravneet",
        "email": "rdhanjal@google.com",
        "time": "Fri Jun 03 20:51:58 2022 +0000"
      },
      "committer": {
        "name": "Ravneet Dhanjal",
        "email": "rdhanjal@google.com",
        "time": "Fri Jun 10 04:05:43 2022 +0000"
      },
      "message": "cameraserver: Exit watchdog for disconnect call\n\n- Add requestExit for watchdog call added for\ndisconnect\n\nTest: Manual; Used debuggerd to confirm watchdog thread\ncount remained stable\nBug: 235427445\nChange-Id: Ibc5a14981a645ded7c7de97ef68f9aa03f794145\n"
    },
    {
      "commit": "ee4811eb80499b264c59dc34e20353281caa776e",
      "tree": "3a733d94486bada2578828c5d55a672761a121ee",
      "parents": [
        "266922e6dfa2ed4b5d6170a5ef7ce764c684edcd",
        "3f20d19b2940098995e20d682d78d78470f07558"
      ],
      "author": {
        "name": "Jayant Chowdhary",
        "email": "jchowdhary@google.com",
        "time": "Wed Jun 08 19:01:40 2022 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Jun 08 19:01:40 2022 +0000"
      },
      "message": "Merge \"cameraservice: Check for watchdog initialization before timing disconnect.\" into tm-d1-dev"
    },
    {
      "commit": "3f20d19b2940098995e20d682d78d78470f07558",
      "tree": "440fb02ae9d4beadc08fc197ecb8cde161caf8c3",
      "parents": [
        "48162a773f8a62f3f131a2740e6bed51a6be6e75"
      ],
      "author": {
        "name": "Jayant Chowdhary",
        "email": "jchowdhary@google.com",
        "time": "Tue May 31 17:24:39 2022 +0000"
      },
      "committer": {
        "name": "Jayant Chowdhary",
        "email": "jchowdhary@google.com",
        "time": "Tue Jun 07 21:02:14 2022 +0000"
      },
      "message": "cameraservice: Check for watchdog initialization before timing disconnect.\n\nBug: 234330877\nBug: 234544015\n\nTest: atest MultiViewTest#testDualCameraPreview passes\n\nChange-Id: I665851f10eb2153844a3dbe248b5b4dae756dc50\nSigned-off-by: Jayant Chowdhary \u003cjchowdhary@google.com\u003e\n"
    },
    {
      "commit": "266922e6dfa2ed4b5d6170a5ef7ce764c684edcd",
      "tree": "f6dd80a7bbb906c46adad1204b192b3fc4a26c1f",
      "parents": [
        "fdaa206a6a005429dcfee3722de3396811288b64",
        "b3f0ddabab689babc5b35458fb8ae6e141417845"
      ],
      "author": {
        "name": "Avichal Rakesh",
        "email": "arakesh@google.com",
        "time": "Mon Jun 06 22:44:57 2022 +0000"
      },
      "committer": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Mon Jun 06 22:44:57 2022 +0000"
      },
      "message": "Merge \"cameraservice: memcpy AIDL header instead of directly writing buffer\" into tm-dev am: b3f0ddabab\n\nOriginal change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/av/+/18624814\n\nChange-Id: Ifd24b341ef6d8acd2606ecd1658df4db2fb54585\nSigned-off-by: Automerger Merge Worker \u003candroid-build-automerger-merge-worker@system.gserviceaccount.com\u003e\n"
    },
    {
      "commit": "51af070e2ad70aaee8e3736cd2b5448242769bb2",
      "tree": "700164f16c495a948cf54c6821407267bf3b840e",
      "parents": [
        "e054011b5a63592568d43e7d0df4f7a91e7159c3"
      ],
      "author": {
        "name": "Avichal Rakesh",
        "email": "arakesh@google.com",
        "time": "Thu May 26 22:58:03 2022 +0000"
      },
      "committer": {
        "name": "Avichal Rakesh",
        "email": "arakesh@google.com",
        "time": "Fri Jun 03 21:17:16 2022 +0000"
      },
      "message": "cameraservice: memcpy AIDL header instead of directly writing buffer\n\ncamera_jpeg_blob_t and AIDL\u0027s CameraBlob might have different sizes and\nmemory alignment requirement on some systems. Instead of attempting to\nmodify the buffer through a struct pointer, this CL uses memcpy to\nreplace the end of the buffer with the content of the AIDL header. This\nensures that reading and writing the header always succeeds regardless\nof size and location of the jpeg buffer in memory.\n\nBug: 233986162\nTest: Camera CTS Passes, and verified by partner\nChange-Id: Ifcb03c98863108d9b278934b917d2e2c70160c8f\n"
    },
    {
      "commit": "e1036abe04cbc0d36564ebdb26440dc22412108e",
      "tree": "1877d79bdf4b2ee09353e64332d7b27f767e363c",
      "parents": [
        "366ddaebaee05d30546eb293f14b4fc60d683677",
        "e054011b5a63592568d43e7d0df4f7a91e7159c3"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Tue May 31 20:42:34 2022 +0000"
      },
      "committer": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Tue May 31 20:42:34 2022 +0000"
      },
      "message": "Merge \"Camera: Fix condition check for Performance Class\" into tm-dev am: e054011b5a\n\nOriginal change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/av/+/18673802\n\nChange-Id: I99dffb9634ee7d5c118ab2e392023fbf93fddcbc\nSigned-off-by: Automerger Merge Worker \u003candroid-build-automerger-merge-worker@system.gserviceaccount.com\u003e\n"
    },
    {
      "commit": "e054011b5a63592568d43e7d0df4f7a91e7159c3",
      "tree": "b8bd46082bd8437f1b14975e8e49777f481acdad",
      "parents": [
        "60697a76896084c4bcfb0db618eefa2363809a4f",
        "f18887cfe5cff8c548c5342043602b00c9c71b93"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Tue May 31 20:16:11 2022 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue May 31 20:16:11 2022 +0000"
      },
      "message": "Merge \"Camera: Fix condition check for Performance Class\" into tm-dev"
    },
    {
      "commit": "f18887cfe5cff8c548c5342043602b00c9c71b93",
      "tree": "ccb8014f9a56c7dfb7bd859eaa701f5a8fe572cb",
      "parents": [
        "0665da9b2422c7815933bb70f30a078a9b50c5e3"
      ],
      "author": {
        "name": "Shuzhen Wang",
        "email": "shuzhenwang@google.com",
        "time": "Tue May 31 10:24:02 2022 -0700"
      },
      "committer": {
        "name": "Shuzhen Wang",
        "email": "shuzhenwang@google.com",
        "time": "Tue May 31 10:44:34 2022 -0700"
      },
      "message": "Camera: Fix condition check for Performance Class\n\nTest: Observe Pixel 6 dumpsys with media_performance_class set to 33\nBug: 234414724\nChange-Id: I378c7e1adf1446a70593d04da73521a81050150d\n"
    },
    {
      "commit": "b7a86ae064ebea1ef8d57c8e37a8aae76d7c3ee8",
      "tree": "49cbe9f646c6d3e547b4e47aecd00705c9211f35",
      "parents": [
        "7494970084c4442fb0bf885acaa0cc121b37c2c3",
        "48162a773f8a62f3f131a2740e6bed51a6be6e75"
      ],
      "author": {
        "name": "Jayant Chowdhary",
        "email": "jchowdhary@google.com",
        "time": "Fri May 27 20:57:11 2022 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri May 27 20:57:11 2022 +0000"
      },
      "message": "Merge \"[RESTRICT AUTOMERGE] cameraserver: Add watchdog timer for disconnect.\" into tm-d1-dev"
    },
    {
      "commit": "48162a773f8a62f3f131a2740e6bed51a6be6e75",
      "tree": "6095bc335a42b59c446732d50566a9ea3168d66d",
      "parents": [
        "05b0583b1d87d00201bef954ac978840fd0f1f86"
      ],
      "author": {
        "name": "Jayant Chowdhary",
        "email": "jchowdhary@google.com",
        "time": "Fri May 27 05:37:14 2022 +0000"
      },
      "committer": {
        "name": "Jayant Chowdhary",
        "email": "jchowdhary@google.com",
        "time": "Fri May 27 18:06:59 2022 +0000"
      },
      "message": "[RESTRICT AUTOMERGE] cameraserver: Add watchdog timer for disconnect.\n\nBug: 228641945\n\nTest: Add artifical delay of 2 seconds in disconnectImpl, see tombstone\n\nChange-Id: I11254e04d9d883e839dc1a7eee309e249613957e\nSigned-off-by: Jayant Chowdhary \u003cjchowdhary@google.com\u003e\n"
    },
    {
      "commit": "42498a761ea67372d550daa2778772e534d3947e",
      "tree": "1b5ee7d88a1ec8055d9dc403d0fe155e29c84807",
      "parents": [
        "0dd6b4d23512b41f95de8bf0d19563ba2a5f9c0c",
        "959254597c608f4577baf55c2773f68e954f85ae"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Thu May 26 18:26:24 2022 +0000"
      },
      "committer": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Thu May 26 18:26:24 2022 +0000"
      },
      "message": "Merge \"Camera: Correct torch support query\" into tm-dev am: 959254597c\n\nOriginal change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/av/+/18591106\n\nChange-Id: I66a7eb2eee0ffd3c2ea6293a6c7c03bb0e917d4f\nSigned-off-by: Automerger Merge Worker \u003candroid-build-automerger-merge-worker@system.gserviceaccount.com\u003e\n"
    },
    {
      "commit": "959254597c608f4577baf55c2773f68e954f85ae",
      "tree": "c533cebd2acd89cf319c9315720d270a5b28550b",
      "parents": [
        "7264291645f3f8bfb0e8d7a77ce23f1a1d0100ca",
        "b070e1db03db90ed922db2131e15ab687259374e"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Thu May 26 18:02:07 2022 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu May 26 18:02:07 2022 +0000"
      },
      "message": "Merge \"Camera: Correct torch support query\" into tm-dev"
    },
    {
      "commit": "15da1158d09c6d685d9a1aeccc06236a3a1c2c2b",
      "tree": "80bfbd39e9f64efd33c1983036819d481c57e065",
      "parents": [
        "1d08e9817c5e336281afcaaf61ce7ec4da335df1",
        "e1c25ccd193710126c1801943990fab8a6677d2c"
      ],
      "author": {
        "name": "Austin Borger",
        "email": "borgera@google.com",
        "time": "Thu May 26 17:13:08 2022 +0000"
      },
      "committer": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Thu May 26 17:13:08 2022 +0000"
      },
      "message": "Merge \"CameraService: Consider pids before priority when evicting a client.\" into tm-dev am: e1c25ccd19\n\nOriginal change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/av/+/18604200\n\nChange-Id: If245373d0ca0721a6152f7a7f88eb6907ba1d4bf\nSigned-off-by: Automerger Merge Worker \u003candroid-build-automerger-merge-worker@system.gserviceaccount.com\u003e\n"
    },
    {
      "commit": "e1c25ccd193710126c1801943990fab8a6677d2c",
      "tree": "3fbaa6b93cd308415af29e87120b579d9f49fe7f",
      "parents": [
        "aa88108b8b5c7e0d114a1305439c01e81c85e02f",
        "9ff44bbcb97b6ab00e7a04198583d991c284a0ed"
      ],
      "author": {
        "name": "Austin Borger",
        "email": "borgera@google.com",
        "time": "Thu May 26 16:38:58 2022 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu May 26 16:38:58 2022 +0000"
      },
      "message": "Merge \"CameraService: Consider pids before priority when evicting a client.\" into tm-dev"
    },
    {
      "commit": "df61218538496a1083ef3d032a815a889b2b68ba",
      "tree": "5a8c801d6d9fad6c94f4d32a7579a22cccb700da",
      "parents": [
        "b857cde40e7392e37a6657da5448c95f5a8430e9",
        "1f1b7aa49e763fc6fb608db682e759f5763c277b"
      ],
      "author": {
        "name": "Jayant Chowdhary",
        "email": "jchowdhary@google.com",
        "time": "Thu May 26 05:16:33 2022 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu May 26 05:16:33 2022 +0000"
      },
      "message": "Merge \"Delete support for HIDL V3.8\" into tm-dev"
    },
    {
      "commit": "1f1b7aa49e763fc6fb608db682e759f5763c277b",
      "tree": "b46a152b7ee0e651e68e9dac8f9e6b923e3479eb",
      "parents": [
        "03ad8074fac06c1780373b099ea70a956bc76f1a"
      ],
      "author": {
        "name": "Jayant Chowdhary",
        "email": "jchowdhary@google.com",
        "time": "Thu May 12 18:34:34 2022 +0000"
      },
      "committer": {
        "name": "Jayant Chowdhary",
        "email": "jchowdhary@google.com",
        "time": "Wed May 25 23:36:34 2022 +0000"
      },
      "message": "Delete support for HIDL V3.8\n\n- HIDL camera device@3.8, metadata@3.8 were temporary interfaces\n\nBug: 221108824\n\nTest: Use GCA (basic validity)\n\nMerged-In: If9ecf3a243dcbf827b8b24f8abd9ae90fc41ba46\nChange-Id: If9ecf3a243dcbf827b8b24f8abd9ae90fc41ba46\nSigned-off-by: Jayant Chowdhary \u003cjchowdhary@google.com\u003e\n"
    },
    {
      "commit": "9ff44bbcb97b6ab00e7a04198583d991c284a0ed",
      "tree": "a467f2813951f8be8fb9f560ada76cb987a2a3ef",
      "parents": [
        "866b66391ddb6d61f73b1b258868aa7407e5d466"
      ],
      "author": {
        "name": "Austin Borger",
        "email": "borgera@google.com",
        "time": "Wed May 25 13:32:37 2022 -0700"
      },
      "committer": {
        "name": "Austin Borger",
        "email": "borgera@google.com",
        "time": "Wed May 25 13:32:37 2022 -0700"
      },
      "message": "CameraService: Consider pids before priority when evicting a client.\n\nWe are occasionally seeing differences in priority scores for the same\npid when a process tries to open a second camera (or the same one twice\nwithout closing it). While this is a problem by itself, checking the pid\nbefore the priority scores would ensure the correct behavior for\nconsecutive calls to opening the camera (closing the first camera\nconnection and opening up a second one). This is especially true for\ncases where oomScoreOffset is nonzero, since it will only be considered\nfor the new client.\n\nBug: 233743526\nTest: Ran custom cameraservice_test before and after fix.\nChange-Id: Ie6b678681d1141e077670e627f9c4244fbdf1287\n"
    },
    {
      "commit": "72b41c745df25c07c153ee99b2be780b8276ba7b",
      "tree": "22977a6f4629cb9118ce18608fde57c3a41853ff",
      "parents": [
        "c2e07a6de91fba655d587656c5555ec1a43c1338",
        "ffc5d689ac1da3cd30fbec7b1f5385fd86110176"
      ],
      "author": {
        "name": "Jayant Chowdhary",
        "email": "jchowdhary@google.com",
        "time": "Wed May 25 18:28:43 2022 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed May 25 18:28:43 2022 +0000"
      },
      "message": "Merge \"Delete support for HIDL V3.8\" into tm-d1-dev"
    },
    {
      "commit": "c2e07a6de91fba655d587656c5555ec1a43c1338",
      "tree": "3ec416040db52a8fd29303a7d19bd3d00ba041dd",
      "parents": [
        "eb6c45a52600f90fcdd6c0d83e6d60c113e483e6",
        "255c3d9084c4b53ab07a590df0015c7a456bff7a"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Wed May 25 17:30:31 2022 +0000"
      },
      "committer": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Wed May 25 17:30:31 2022 +0000"
      },
      "message": "Merge \"Camera: Avoid possible deadlock during R\u0026C updates\" into tm-dev am: 255c3d9084\n\nOriginal change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/av/+/18594292\n\nChange-Id: I33f30ec465c8cdd8e634871b336389d2b10571c7\nSigned-off-by: Automerger Merge Worker \u003candroid-build-automerger-merge-worker@system.gserviceaccount.com\u003e\n"
    },
    {
      "commit": "58aa9c1fa7397b3ca76ddffc5774a0637d42a822",
      "tree": "b37066257397632861dfa3563c43613ecffed2a9",
      "parents": [
        "a2ac684a282bf99b8d6846a5034b9aaa61fc0c2c"
      ],
      "author": {
        "name": "Emilian Peev",
        "email": "epeev@google.com",
        "time": "Tue May 24 18:23:10 2022 -0700"
      },
      "committer": {
        "name": "Emilian Peev",
        "email": "epeev@google.com",
        "time": "Wed May 25 01:34:20 2022 +0000"
      },
      "message": "Camera: Avoid possible deadlock during R\u0026C updates\n\nRotate and crop updates in the legacy shim layer are\nsynchronized via the \u0027mBinderSerializationLock\u0027.\nThe binder thread that does this will also acquire\nthe camera service lock. However there might another\nthread that is in the middle of a client disconnect\nand already owns \u0027mBinderSerializationLock\u0027. The second\nthread will also try to acquire the camera service lock\nas shown below and this can result in a deadlock.\nAvoid this by using a dedicated lock for the rotate and\ncrop updates instead of \u0027mBinderSerializationLock\u0027.\n\nThread 2:\nandroid::CameraService::removeByClient\n..\nandroid::Camera2Client::disconnect()\n\nThread 1:\nandroid::Camera2Client::setRotateAndCropOverride\nandroid::CameraService::notifyDisplayConfigurationChange\n\nBug: 233752445\nTest: Camera CTS\nChange-Id: I3d37f0f6034e929a0bf3321ba122fffbd21fa923\n"
    },
    {
      "commit": "b070e1db03db90ed922db2131e15ab687259374e",
      "tree": "3952371bf219e679e1479bbeb487a618ecdbb73c",
      "parents": [
        "a2ac684a282bf99b8d6846a5034b9aaa61fc0c2c"
      ],
      "author": {
        "name": "Emilian Peev",
        "email": "epeev@google.com",
        "time": "Tue May 24 17:09:31 2022 -0700"
      },
      "committer": {
        "name": "Emilian Peev",
        "email": "epeev@google.com",
        "time": "Tue May 24 17:34:10 2022 -0700"
      },
      "message": "Camera: Correct torch support query\n\nThe current camera provider is not used when searching\nfor specific devices with torch support. Any devices found\nmay belong to different camera provider resulting in\nincorrect queries.\n\nBug: 233658365\nTest: Camera CTS, CtsVerifier using flashlight activity\nChange-Id: I09934a7799ed3f3638fefa34128e61c035b1aa84\n"
    },
    {
      "commit": "ffc5d689ac1da3cd30fbec7b1f5385fd86110176",
      "tree": "e27da59ff067f008d4cb5c8c89ac3b9240bd13bf",
      "parents": [
        "05b0583b1d87d00201bef954ac978840fd0f1f86"
      ],
      "author": {
        "name": "Jayant Chowdhary",
        "email": "jchowdhary@google.com",
        "time": "Thu May 12 18:34:34 2022 +0000"
      },
      "committer": {
        "name": "Jayant Chowdhary",
        "email": "jchowdhary@google.com",
        "time": "Tue May 24 07:51:09 2022 +0000"
      },
      "message": "Delete support for HIDL V3.8\n\n- HIDL camera device@3.8, metadata@3.8 were temporary interfaces\n\nBug: 221108824\n\nTest: Use GCA (basic validity)\n\nChange-Id: If9ecf3a243dcbf827b8b24f8abd9ae90fc41ba46\nSigned-off-by: Jayant Chowdhary \u003cjchowdhary@google.com\u003e\n"
    },
    {
      "commit": "05b0583b1d87d00201bef954ac978840fd0f1f86",
      "tree": "17fa6b064b83e141582344b574db9d3d5e494048",
      "parents": [
        "a47aa73b4116c9269cd6d7e20ee4eab9b5dcd4b6",
        "139f57ce7756e0e56e8b60c655d5f8c5684b3b37"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Mon May 23 22:33:59 2022 +0000"
      },
      "committer": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Mon May 23 22:33:59 2022 +0000"
      },
      "message": "Merge \"Camera: Correct request buffer error status\" into tm-dev am: 139f57ce77\n\nOriginal change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/av/+/18380847\n\nChange-Id: I274a8558a86ecda7ed2df3a3685222c26348265b\nSigned-off-by: Automerger Merge Worker \u003candroid-build-automerger-merge-worker@system.gserviceaccount.com\u003e\n"
    },
    {
      "commit": "a47aa73b4116c9269cd6d7e20ee4eab9b5dcd4b6",
      "tree": "d4353815663c0d5373ca0cafb0b598e85fce1dbd",
      "parents": [
        "48fa096bc87c886f80ac1a6502dff728c3c93f48",
        "54622f1817c1d846b41ea5824d0e7e0b1b965a26"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Mon May 23 22:31:53 2022 +0000"
      },
      "committer": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Mon May 23 22:31:53 2022 +0000"
      },
      "message": "Merge \"Camera: Replace SDR profile constraint value\" into tm-dev am: 54622f1817\n\nOriginal change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/av/+/18510118\n\nChange-Id: I707d94487fe3170c8005777baa7b6f149dff54c4\nSigned-off-by: Automerger Merge Worker \u003candroid-build-automerger-merge-worker@system.gserviceaccount.com\u003e\n"
    },
    {
      "commit": "139f57ce7756e0e56e8b60c655d5f8c5684b3b37",
      "tree": "712d3468465c5feb6799d34ab320234110deedb2",
      "parents": [
        "54622f1817c1d846b41ea5824d0e7e0b1b965a26",
        "32a73f21554d0b6c7341cd0a0772045502f89647"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Mon May 23 21:44:48 2022 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon May 23 21:44:48 2022 +0000"
      },
      "message": "Merge \"Camera: Correct request buffer error status\" into tm-dev"
    },
    {
      "commit": "54622f1817c1d846b41ea5824d0e7e0b1b965a26",
      "tree": "8215814839c288f0ccbbdc4466228af87d93010a",
      "parents": [
        "8fed6de7f5f7e75c32279cc9e6ece3d9884913e3",
        "ef715e2d2529b2e85317ae3c78363ad759f5c50d"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Mon May 23 21:27:37 2022 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon May 23 21:27:37 2022 +0000"
      },
      "message": "Merge \"Camera: Replace SDR profile constraint value\" into tm-dev"
    },
    {
      "commit": "b6f1f7d413a3304a73b99e1061ff329726c3ae56",
      "tree": "9f5731c6f6686699ef255a8bd71887cbb1cb7de7",
      "parents": [
        "03d4aab237baf67b8dd333e59e939773c01f506e",
        "ebb5db24ee17182894a5dcd3f1059ee71e7f3d8b"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Sun May 22 00:28:09 2022 +0000"
      },
      "committer": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Sun May 22 00:28:09 2022 +0000"
      },
      "message": "Merge \"Camera: Fix CPU hogging when flush() is called after device goes idle\" into tm-dev am: ebb5db24ee\n\nOriginal change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/av/+/18527849\n\nChange-Id: Ia415e26235f07d992b8858da8d76f50990257b2c\nSigned-off-by: Automerger Merge Worker \u003candroid-build-automerger-merge-worker@system.gserviceaccount.com\u003e\n"
    },
    {
      "commit": "ebb5db24ee17182894a5dcd3f1059ee71e7f3d8b",
      "tree": "8c22bde34c706302bf19a4a2d085209f2c3e07bd",
      "parents": [
        "ec6795cbd66ca99901c873173900564c1cb4b518",
        "b8696c0489833afdcb2c5408cacffad73748bd2c"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Sun May 22 00:06:55 2022 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Sun May 22 00:06:55 2022 +0000"
      },
      "message": "Merge \"Camera: Fix CPU hogging when flush() is called after device goes idle\" into tm-dev"
    },
    {
      "commit": "c5c79c8ad70ff188e27987cbcf9430e332d11bd9",
      "tree": "0b055ed8bb2844aeb307c31fe01bd6b21b03e6e1",
      "parents": [
        "842116d32eef41e08d3a4e933fa31f993fc3e4ee",
        "24eb57bec2e9695abc3e6f5c3713db522b06f845"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Fri May 20 23:24:26 2022 +0000"
      },
      "committer": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Fri May 20 23:24:26 2022 +0000"
      },
      "message": "Merge \"Camera: Fix rounding issue with minInterval\" into tm-dev am: 24eb57bec2\n\nOriginal change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/av/+/18484360\n\nChange-Id: Ib775819c7beda46ba6a6be99a5a21bde4225eaf4\nSigned-off-by: Automerger Merge Worker \u003candroid-build-automerger-merge-worker@system.gserviceaccount.com\u003e\n"
    },
    {
      "commit": "b8696c0489833afdcb2c5408cacffad73748bd2c",
      "tree": "57fc625653d14371e9b917a514fc40e7608e9d74",
      "parents": [
        "03ad8074fac06c1780373b099ea70a956bc76f1a"
      ],
      "author": {
        "name": "Shuzhen Wang",
        "email": "shuzhenwang@google.com",
        "time": "Fri May 20 13:31:02 2022 -0700"
      },
      "committer": {
        "name": "Shuzhen Wang",
        "email": "shuzhenwang@google.com",
        "time": "Fri May 20 13:32:15 2022 -0700"
      },
      "message": "Camera: Fix CPU hogging when flush() is called after device goes idle\n\nIf flush() is called after the request thread goes idle, we still need\nto reset the mRequestClearing flag. Otherwise, the requestThread will\ngo onto a busy loop.\n\nTest: Camera CTS, Observe CPU trace when exiting camera\nBug: 232711266\nChange-Id: I25c191e7df2a788ad34ab137b39da8d5031beb0a\n"
    },
    {
      "commit": "ef715e2d2529b2e85317ae3c78363ad759f5c50d",
      "tree": "89faa92a4a4aa0e17df7b1ba9b5b42ca5aee904a",
      "parents": [
        "a9c6db920118f03424f511280548fc417be600af"
      ],
      "author": {
        "name": "Emilian Peev",
        "email": "epeev@google.com",
        "time": "Thu May 19 17:44:33 2022 -0700"
      },
      "committer": {
        "name": "Emilian Peev",
        "email": "epeev@google.com",
        "time": "Thu May 19 17:47:00 2022 -0700"
      },
      "message": "Camera: Replace SDR profile constraint value\n\nThe SDR dynamic range profile constraint value will always be\ninitialized. Avoid emplacing it again in case the camera device\nsupports concurrent SDR+HDR requests.\n\nBug: 233283431\nTest: Camera CTS\nChange-Id: I8651cbd910f8b8f3178522e6ea3bacffa30d0fb9\n"
    },
    {
      "commit": "661b34f66f410d0b3087ec77e0d5ccca14636179",
      "tree": "f14838d6d7db923141f4a2d8bc6213a47acea7b5",
      "parents": [
        "03ad8074fac06c1780373b099ea70a956bc76f1a"
      ],
      "author": {
        "name": "Shuzhen Wang",
        "email": "shuzhenwang@google.com",
        "time": "Wed May 18 22:00:19 2022 -0700"
      },
      "committer": {
        "name": "Shuzhen Wang",
        "email": "shuzhenwang@google.com",
        "time": "Thu May 19 10:34:36 2022 -0700"
      },
      "message": "Camera: Fix rounding issue with minInterval\n\nExisting formula to calculate minInterval may set the minInterval too\nlarge.\n\nFor example, if the vSyncInterval is 16.5ms, minFrameDurtion is 33.3ms,\nthe existing calculation may derive minInterval to be 2+ vSync intervals,\nDue to rounding up in calculation, the minInterval could cause the\nexpectedPresentationTime to be 3 vSyncs. That spaces frames too far away.\n\nTest: Switch between front/back and 30fps/60fps video mode in GCA\nBug: 232722528\nChange-Id: I430d571b44a87d32153c54cc661dbf5e42e6ed56\n"
    },
    {
      "commit": "9677fef721070e88e2cbf494e9f0e37906a1dd72",
      "tree": "fa8433b7b1d6b2ac8796c1342db0499304326499",
      "parents": [
        "2aa5943481044d8bea613d1e09733530fe740af8",
        "15f8a7ca9804c521b47bc784fe0889c5a6f4324f"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Wed May 18 21:33:08 2022 +0000"
      },
      "committer": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Wed May 18 21:33:08 2022 +0000"
      },
      "message": "Merge \"Camera: Add video stabilization mode to camera session stats\" into tm-dev am: 15f8a7ca98\n\nOriginal change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/av/+/18374607\n\nChange-Id: I04c6921774c411dac94177a94af638eb35da6bdc\nSigned-off-by: Automerger Merge Worker \u003candroid-build-automerger-merge-worker@system.gserviceaccount.com\u003e\n"
    },
    {
      "commit": "15f8a7ca9804c521b47bc784fe0889c5a6f4324f",
      "tree": "e82b7c1a9d7c15a79788225c51de65bf1b98be79",
      "parents": [
        "c3a3ee8362e53aff2d8608995f3e5f9000b69d66",
        "9372b0bad63eb0db7e75e425337893540764d87f"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Wed May 18 06:57:56 2022 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed May 18 06:57:56 2022 +0000"
      },
      "message": "Merge \"Camera: Add video stabilization mode to camera session stats\" into tm-dev"
    },
    {
      "commit": "2aa5943481044d8bea613d1e09733530fe740af8",
      "tree": "19deee9ffde59e6e7db7e80ebaeccfa77384241e",
      "parents": [
        "99655cf3679a45898b2e31c0485d85ed2f5f0e17",
        "c3a3ee8362e53aff2d8608995f3e5f9000b69d66"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Tue May 17 22:21:14 2022 +0000"
      },
      "committer": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Tue May 17 22:21:14 2022 +0000"
      },
      "message": "Merge \"Camera: Exit PreviewStreamSpacer when disconnecting stream\" into tm-dev am: c3a3ee8362\n\nOriginal change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/av/+/18415584\n\nChange-Id: I412cf50b752912e815c974ff3f3a84ae9fde1d93\nSigned-off-by: Automerger Merge Worker \u003candroid-build-automerger-merge-worker@system.gserviceaccount.com\u003e\n"
    },
    {
      "commit": "99655cf3679a45898b2e31c0485d85ed2f5f0e17",
      "tree": "fbf01ea2d62643fbb4fc0c40cebe37d181246ae0",
      "parents": [
        "0c628c449a992ab8f2d95c8c799df63557de398c",
        "065fb0f576532edc127abe67dd917783fae84395"
      ],
      "author": {
        "name": "Emilian Peev",
        "email": "epeev@google.com",
        "time": "Tue May 17 22:20:59 2022 +0000"
      },
      "committer": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Tue May 17 22:20:59 2022 +0000"
      },
      "message": "Camera: Initialize input stream dynamic range profile am: 065fb0f576\n\nOriginal change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/av/+/18418281\n\nChange-Id: I285a3fd04ec05324359bca2732c0e270ce8c6fcb\nSigned-off-by: Automerger Merge Worker \u003candroid-build-automerger-merge-worker@system.gserviceaccount.com\u003e\n"
    },
    {
      "commit": "c3a3ee8362e53aff2d8608995f3e5f9000b69d66",
      "tree": "def882450e4318d16a41596792406e171f02f591",
      "parents": [
        "065fb0f576532edc127abe67dd917783fae84395",
        "dc9aa82c33f10ccde2955e60df721372264b5b5a"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Tue May 17 21:36:01 2022 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue May 17 21:36:01 2022 +0000"
      },
      "message": "Merge \"Camera: Exit PreviewStreamSpacer when disconnecting stream\" into tm-dev"
    },
    {
      "commit": "9372b0bad63eb0db7e75e425337893540764d87f",
      "tree": "8f057506434c6b23d1e9fe4108bd76472eb74502",
      "parents": [
        "4408cbe061d0c8aef09947a1bd5d28c87f8ef5cf"
      ],
      "author": {
        "name": "Shuzhen Wang",
        "email": "shuzhenwang@google.com",
        "time": "Wed May 11 18:55:19 2022 -0700"
      },
      "committer": {
        "name": "Shuzhen Wang",
        "email": "shuzhenwang@google.com",
        "time": "Tue May 17 14:18:16 2022 -0700"
      },
      "message": "Camera: Add video stabilization mode to camera session stats\n\nStore the videoStabilization key value in the last request of the session.\n\nTest: ./out/host/linux-x86/bin/statsd_testdrive 227\nBug: 224639088\nChange-Id: I9f5dcc7d2eaa045e7243774df150e46b29aa491f\n"
    },
    {
      "commit": "dc9aa82c33f10ccde2955e60df721372264b5b5a",
      "tree": "c8f596935b7f752578b6b753e16e8823c9487673",
      "parents": [
        "f6523efd8ce97152b9e97f85d6420a61f820ee11"
      ],
      "author": {
        "name": "Shuzhen Wang",
        "email": "shuzhenwang@google.com",
        "time": "Mon May 16 10:04:17 2022 -0700"
      },
      "committer": {
        "name": "Shuzhen Wang",
        "email": "shuzhenwang@google.com",
        "time": "Mon May 16 16:56:21 2022 -0700"
      },
      "message": "Camera: Exit PreviewStreamSpacer when disconnecting stream\n\n- Call requestExit() during Camera3OutputStream disconnect.\n- Remove requestExitAndWait() from the PreviewStreamSpacer\n  destructor.\n- Return false if exitPending() is true in threadLoop.\n- Use wp\u003c\u003e when accessing parent from PreviewStreamSpacer.\n\nTest: Camera CTS, and vendor testing\nBug: 232046746\nBug: 232829166\nChange-Id: I136a93fee37cd6fbdb8050cacea1511170e03ee6\n"
    },
    {
      "commit": "065fb0f576532edc127abe67dd917783fae84395",
      "tree": "7bd7ec52aa172d8b047ee43e837356a6fb5264b7",
      "parents": [
        "4408cbe061d0c8aef09947a1bd5d28c87f8ef5cf"
      ],
      "author": {
        "name": "Emilian Peev",
        "email": "epeev@google.com",
        "time": "Mon May 16 15:37:16 2022 -0700"
      },
      "committer": {
        "name": "Emilian Peev",
        "email": "epeev@google.com",
        "time": "Mon May 16 22:53:00 2022 +0000"
      },
      "message": "Camera: Initialize input stream dynamic range profile\n\nInput streams must have a valid dynamic range profile value\nwhen they are converted to AIDL.\n\nBug: 232848163\nTest: Camera CTS\nChange-Id: Ic9a02668d45eea5ef5ba4363fa54f5e6cf4a2015\n"
    },
    {
      "commit": "f6523efd8ce97152b9e97f85d6420a61f820ee11",
      "tree": "41e2f27ce31ebf893e71ad0cae2c2dc85fdadc13",
      "parents": [
        "de6277bcedf23590f860d66ec6dde9f032f4b869",
        "05ce6b5294901cdf344b08d2a3a5f5bbdf1e1976"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Sat May 14 18:05:10 2022 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Sat May 14 18:05:10 2022 +0000"
      },
      "message": "Merge \"Camera: Narrow down cases preview spacer is used\" into tm-dev"
    },
    {
      "commit": "05ce6b5294901cdf344b08d2a3a5f5bbdf1e1976",
      "tree": "0258647693061f20e5e1bf254cca9d88da7d59d8",
      "parents": [
        "85a25fc5dc595cb571d1eb0809ccc18d26c13099"
      ],
      "author": {
        "name": "Shuzhen Wang",
        "email": "shuzhenwang@google.com",
        "time": "Tue May 10 18:18:54 2022 -0700"
      },
      "committer": {
        "name": "Shuzhen Wang",
        "email": "shuzhenwang@google.com",
        "time": "Fri May 13 23:30:33 2022 +0000"
      },
      "message": "Camera: Narrow down cases preview spacer is used\n\nHW_TEXTURE usage flag may be used for ImageReader. Do not treat the\nsurface as SurfaceTexture if the surface has CPU read flag at the\nsame time.\n\nIn addition:\n- Only enable preview spacer if timestamp base is DEFAULT,\n- Use readoutTimestamp for re-spacing.\n- Remove the system property to disable frame spacing.\n\nTest: Camera CTS, Observe smoother GCA photo preview\nBug: 195025014\nChange-Id: I40a3b1acac44ed8a474aad94b77aee8f7399eb31\nMerged-In: I40a3b1acac44ed8a474aad94b77aee8f7399eb31\n"
    },
    {
      "commit": "3357ac9fddf099d7440d7e2ca029d2c486a17bca",
      "tree": "9434c97c8323161836e3fa084b35ac3d2f9f3c7c",
      "parents": [
        "a6de259c1fa1322415c8413d6d5d1232c6315072",
        "fe8a2a32c2154de30f53bae37783b67d84ec1f9a"
      ],
      "author": {
        "name": "Shuzhen Wang",
        "email": "shuzhenwang@google.com",
        "time": "Fri May 13 20:51:06 2022 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri May 13 20:51:06 2022 +0000"
      },
      "message": "Merge \"Camera: Narrow down cases preview spacer is used\" into tm-d1-dev"
    },
    {
      "commit": "32a73f21554d0b6c7341cd0a0772045502f89647",
      "tree": "6099bc28b013044d98a82904cd4fb8c951594e63",
      "parents": [
        "a9c6db920118f03424f511280548fc417be600af"
      ],
      "author": {
        "name": "Emilian Peev",
        "email": "epeev@google.com",
        "time": "Fri May 13 13:04:56 2022 -0700"
      },
      "committer": {
        "name": "Emilian Peev",
        "email": "epeev@google.com",
        "time": "Fri May 13 13:04:56 2022 -0700"
      },
      "message": "Camera: Correct request buffer error status\n\nCamera providers can occasionally reach the maximum amount of de-queue\nbuffers which will fail any further acquire requests.\nReturn the corresponding native error status so that providers can\nhandle this corner case accordingly.\n\nBug: 232562516\nTest: Camera CTS\nChange-Id: I6986a15cddb951a284f25dd4aabcbbe14224e33f\n"
    },
    {
      "commit": "fe8a2a32c2154de30f53bae37783b67d84ec1f9a",
      "tree": "dcbee19c45260460f4f6c8c870cac0034fe25033",
      "parents": [
        "96ae46c59e7a9a3c712ecc7d5c08bc5422bcb546"
      ],
      "author": {
        "name": "Shuzhen Wang",
        "email": "shuzhenwang@google.com",
        "time": "Tue May 10 18:18:54 2022 -0700"
      },
      "committer": {
        "name": "Shuzhen Wang",
        "email": "shuzhenwang@google.com",
        "time": "Fri May 13 16:14:06 2022 +0000"
      },
      "message": "Camera: Narrow down cases preview spacer is used\n\nHW_TEXTURE usage flag may be used for ImageReader. Do not treat the\nsurface as SurfaceTexture if the surface has CPU read flag at the\nsame time.\n\nIn addition:\n- Only enable preview spacer if timestamp base is DEFAULT,\n- Use readoutTimestamp for re-spacing.\n- Remove the system property to disable frame spacing.\n\nTest: Camera CTS, Observe smoother GCA photo preview\nBug: 195025014\nChange-Id: I40a3b1acac44ed8a474aad94b77aee8f7399eb31\n"
    },
    {
      "commit": "7d0ae2d813ac4ef0a04d5552f4b500986a4cc123",
      "tree": "1aec53513d4145dc3f07dd940d0499d2b58c141b",
      "parents": [
        "c703763826189a574c6586d9032340c859d334e8",
        "ed1e893a83e8251e27db7bfc61108ae7b9bf8e9e"
      ],
      "author": {
        "name": "Jayant Chowdhary",
        "email": "jchowdhary@google.com",
        "time": "Fri May 13 10:40:05 2022 +0000"
      },
      "committer": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Fri May 13 10:40:05 2022 +0000"
      },
      "message": "Merge \"Filter out metadata out of version tags from hidl cameraservice interface.\" into tm-dev am: ed1e893a83\n\nOriginal change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/av/+/18235444\n\nChange-Id: I4fab3cc109ab84697c70dbf3bec9a3cf0ba7be60\nSigned-off-by: Automerger Merge Worker \u003candroid-build-automerger-merge-worker@system.gserviceaccount.com\u003e\n"
    },
    {
      "commit": "ed1e893a83e8251e27db7bfc61108ae7b9bf8e9e",
      "tree": "5c9a71feb6687916ba868c390d163aecaeb0e316",
      "parents": [
        "f09d60b072703d7e979a3aad45e5b8d1f490ca9a",
        "2f68652a3152507bc44c465593718a304b25b666"
      ],
      "author": {
        "name": "Jayant Chowdhary",
        "email": "jchowdhary@google.com",
        "time": "Fri May 13 09:56:34 2022 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri May 13 09:56:34 2022 +0000"
      },
      "message": "Merge \"Filter out metadata out of version tags from hidl cameraservice interface.\" into tm-dev"
    },
    {
      "commit": "c703763826189a574c6586d9032340c859d334e8",
      "tree": "283b702121d99b01d94afd7e19b60fb53b795bd6",
      "parents": [
        "96ae46c59e7a9a3c712ecc7d5c08bc5422bcb546",
        "f09d60b072703d7e979a3aad45e5b8d1f490ca9a"
      ],
      "author": {
        "name": "Austin Borger",
        "email": "borgera@google.com",
        "time": "Fri May 13 00:18:32 2022 +0000"
      },
      "committer": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Fri May 13 00:18:32 2022 +0000"
      },
      "message": "Merge \"Revert \"Remove redundant calls to onCameraAccessPrioritiesChanged.\"\" into tm-dev am: f09d60b072\n\nOriginal change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/av/+/18330488\n\nChange-Id: I33fe7350fa308cc903f06be67d1897640a031f1e\nSigned-off-by: Automerger Merge Worker \u003candroid-build-automerger-merge-worker@system.gserviceaccount.com\u003e\n"
    },
    {
      "commit": "f09d60b072703d7e979a3aad45e5b8d1f490ca9a",
      "tree": "e0c15f7e207e102c2598195e3c5f3b1c9b07a1ce",
      "parents": [
        "f8ec839056b57e496dba034f9d1e5840badf5acf",
        "c5585dc3189a2a72298c9abfef0f0a37bfc34337"
      ],
      "author": {
        "name": "Austin Borger",
        "email": "borgera@google.com",
        "time": "Thu May 12 23:49:32 2022 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu May 12 23:49:32 2022 +0000"
      },
      "message": "Merge \"Revert \"Remove redundant calls to onCameraAccessPrioritiesChanged.\"\" into tm-dev"
    },
    {
      "commit": "2f68652a3152507bc44c465593718a304b25b666",
      "tree": "c38711b5d01f7e056a4b41ed658ce77276fe2493",
      "parents": [
        "63d2f56ba2a95d86d7845eb4438f358363e266b6"
      ],
      "author": {
        "name": "Jayant Chowdhary",
        "email": "jchowdhary@google.com",
        "time": "Mon May 09 14:52:16 2022 +0000"
      },
      "committer": {
        "name": "Jayant Chowdhary",
        "email": "jchowdhary@google.com",
        "time": "Thu May 12 18:34:49 2022 +0000"
      },
      "message": "Filter out metadata out of version tags from hidl cameraservice interface.\n\nTags which are in versions \u003e vndk version used by vendor clients need to\nbe filtered out to avoid metadata invalidation in the receiving process.\n\nBug: 231517902\n\nTest: make VtsHalCameraServiceV2_0TargetTest.cpp a vendor test, run it\n      on a mixed build (sc-v2 vendor + T framework); without the CL,\n      metadatata validation fails, with the CL metadata validation\n      passes.\n\nTest: Vendor testing\n\nChange-Id: I08e823845fc171615a48fe9d7d1e0550367f873e\nSigned-off-by: Jayant Chowdhary \u003cjchowdhary@google.com\u003e\n"
    },
    {
      "commit": "a59078acd81ae002e28422c4c2dc8d2aeb192b71",
      "tree": "2b1050ef43208ddbc903a9eba8694b7decc042e1",
      "parents": [
        "ab90214d73b8ce951fbe521145f4722fffd8bdb5",
        "ba81ad8551757f663eceea664dae7fa47327af38"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Thu May 12 17:57:14 2022 +0000"
      },
      "committer": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Thu May 12 17:57:14 2022 +0000"
      },
      "message": "Merge \"Camera: Enable the rotate\u0026crop heuristics in the legacy shim layer\" into tm-dev am: ba81ad8551\n\nOriginal change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/av/+/18010866\n\nChange-Id: I658b7438aa6ebd468f37f054f66588eb0935abb4\nSigned-off-by: Automerger Merge Worker \u003candroid-build-automerger-merge-worker@system.gserviceaccount.com\u003e\n"
    },
    {
      "commit": "ba81ad8551757f663eceea664dae7fa47327af38",
      "tree": "3a0817f1bea19cce2f5491f024f0e0cb8d3886d7",
      "parents": [
        "c6edc48e627b7a68853b60be63e98b69270e48e8",
        "13f35addf48a878b98fdaafb1cf8026ce2068fba"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Thu May 12 17:20:03 2022 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu May 12 17:20:03 2022 +0000"
      },
      "message": "Merge \"Camera: Enable the rotate\u0026crop heuristics in the legacy shim layer\" into tm-dev"
    },
    {
      "commit": "b39a9d1409387def1189a288069fefa9e74cb1f6",
      "tree": "f7b17762b8b87226209b6c8965339ce3ae9022b7",
      "parents": [
        "fafb2c9bb46cc530ade38f3ef659b84ef4e2e2b7",
        "63d2f56ba2a95d86d7845eb4438f358363e266b6"
      ],
      "author": {
        "name": "Jayant Chowdhary",
        "email": "jchowdhary@google.com",
        "time": "Thu May 12 05:10:29 2022 +0000"
      },
      "committer": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Thu May 12 05:10:29 2022 +0000"
      },
      "message": "Merge \"cameraserver: Fix HIDL vs AIDL CameraBlobId discrepancy; Move HIDL into seperate source files.\" into tm-dev am: 63d2f56ba2\n\nOriginal change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/av/+/17694354\n\nChange-Id: I4f6ea432cf174bda1074e782f72c8918d9c717f6\nSigned-off-by: Automerger Merge Worker \u003candroid-build-automerger-merge-worker@system.gserviceaccount.com\u003e\n"
    },
    {
      "commit": "63d2f56ba2a95d86d7845eb4438f358363e266b6",
      "tree": "fd685e0d3dfc1b9374b3fbe0620b21d8137541b7",
      "parents": [
        "2ea87cb70bf712a046e3272b8fc234fe5305ff72",
        "c67af1bd4616f237070f609e4ec53b94eba5f614"
      ],
      "author": {
        "name": "Jayant Chowdhary",
        "email": "jchowdhary@google.com",
        "time": "Thu May 12 04:16:57 2022 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu May 12 04:16:57 2022 +0000"
      },
      "message": "Merge \"cameraserver: Fix HIDL vs AIDL CameraBlobId discrepancy; Move HIDL into seperate source files.\" into tm-dev"
    },
    {
      "commit": "c5585dc3189a2a72298c9abfef0f0a37bfc34337",
      "tree": "0b6d113fff01f1c2a7d8ba4ae91b84d93b3292d0",
      "parents": [
        "03befa0c12839996299b27e172840b082f30b57f"
      ],
      "author": {
        "name": "Austin Borger",
        "email": "borgera@google.com",
        "time": "Thu May 12 00:48:17 2022 +0000"
      },
      "committer": {
        "name": "Austin Borger",
        "email": "borgera@google.com",
        "time": "Thu May 12 00:48:17 2022 +0000"
      },
      "message": "Revert \"Remove redundant calls to onCameraAccessPrioritiesChanged.\"\n\nThis reverts commit 03befa0c12839996299b27e172840b082f30b57f.\n\nReason for revert: The assertion made that a uid state change implies a proc oom adj change is not true on GSI. There may be a more complex way of handling this, but it\u0027s low priority to implement it.\n\nChange-Id: I0c08f810e574553d3d34f553f427a7b3fffdc326\n"
    },
    {
      "commit": "c67af1bd4616f237070f609e4ec53b94eba5f614",
      "tree": "67e97b2f8f9487db466edcd7b8e1e07483fe181f",
      "parents": [
        "6e91caf4b5923c36e18b72e18cf816e151f51dad"
      ],
      "author": {
        "name": "Jayant Chowdhary",
        "email": "jchowdhary@google.com",
        "time": "Thu Apr 07 18:05:04 2022 +0000"
      },
      "committer": {
        "name": "Jayant Chowdhary",
        "email": "jchowdhary@google.com",
        "time": "Mon May 09 20:34:45 2022 +0000"
      },
      "message": "cameraserver: Fix HIDL vs AIDL CameraBlobId discrepancy; Move HIDL into seperate source files.\n\n- Have cameraserver fix the discrepancy between HIDL and AIDL CameraBlobId enum backing type.\n- Move HIDL specific code into seperate source files (preparation for b/219020552).\n\nBug: 219020552\nBug: 229688810\n\nTest: build; use GCA (basic validity)\nTest: atest DngCreatorTest.java#testRaw16JpegConsistency (both HIDL and AIDL GCH)\n\nChange-Id: I317c434d22e5e93e7e4cf5ab3aebc4efc93d2d46\nSigned-off-by: Jayant Chowdhary \u003cjchowdhary@google.com\u003e\n"
    },
    {
      "commit": "226cddb4fef59a713b50b3fdee084ac4ca673ae3",
      "tree": "d783ae3fc9171511d128f2feafa0aaf3058ae010",
      "parents": [
        "c4761cd96b1a1d9bbfc6f231347f42b00787c04d",
        "43eceebcbd0206f27830a61bf3951d066106bea2"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Mon May 09 17:22:03 2022 +0000"
      },
      "committer": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Mon May 09 17:22:03 2022 +0000"
      },
      "message": "Merge \"Camera: Add debug logs for disconnectLocked.\" into tm-dev am: 43eceebcbd\n\nOriginal change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/av/+/17832384\n\nChange-Id: I903547b6394b7108b9051ab301712e13df070b62\nSigned-off-by: Automerger Merge Worker \u003candroid-build-automerger-merge-worker@system.gserviceaccount.com\u003e\n"
    },
    {
      "commit": "43eceebcbd0206f27830a61bf3951d066106bea2",
      "tree": "8a6201264ab5b9fe47b3dc8dc5413e809e8b0f05",
      "parents": [
        "d8bef59f6d97751a0e0031d792dd922e7393fc44",
        "046f4a82df09f0d49484fba14d101c6ee62e2e3e"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Mon May 09 17:17:20 2022 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon May 09 17:17:20 2022 +0000"
      },
      "message": "Merge \"Camera: Add debug logs for disconnectLocked.\" into tm-dev"
    },
    {
      "commit": "0a77f89cac3c25c83aa39b7ab3f863a02489a5ef",
      "tree": "4873289b790d708b1c0b19f314e34f07b44f8e7b",
      "parents": [
        "5dcdab4b7848f6fdeade52c06364f8a2d71e11cf",
        "ffc4c0164df8a13f365e980d2ebcc4777f44256b"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Sat May 07 04:09:51 2022 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Sat May 07 04:09:51 2022 +0000"
      },
      "message": "Merge \"Camera: Add support for readout timestamp\" into tm-d1-dev"
    },
    {
      "commit": "046f4a82df09f0d49484fba14d101c6ee62e2e3e",
      "tree": "e0840347c7bb8b861b3dcb87229566286fabcb85",
      "parents": [
        "e55db70293dbff768ee454cf456a39ad2cfdd7e2"
      ],
      "author": {
        "name": "Shuzhen Wang",
        "email": "shuzhenwang@google.com",
        "time": "Thu May 05 17:15:24 2022 -0700"
      },
      "committer": {
        "name": "Shuzhen Wang",
        "email": "shuzhenwang@google.com",
        "time": "Fri May 06 09:49:41 2022 -0700"
      },
      "message": "Camera: Add debug logs for disconnectLocked.\n\nThis patch is aimed to track down possible disconnect hang.\n\nBug: 228641945\nTest: Run camera and observe logs\nChange-Id: I77c99e64b8496c45ac86c739cdd0a2b39e8884ee\nSigned-off-by: Jayant Chowdhary \u003cjchowdhary@google.com\u003e\n"
    },
    {
      "commit": "1b80a837079e1831d3f8256f4c01b3b9425b561a",
      "tree": "d735cd0f09e3d99cf118624bee927ab906a381be",
      "parents": [
        "e55db70293dbff768ee454cf456a39ad2cfdd7e2",
        "976bb4d569fb4153203d00d3632bb2f645ce7461"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Fri May 06 01:16:00 2022 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri May 06 01:16:00 2022 +0000"
      },
      "message": "Merge \"camera: make waiting for state more accurate\" into tm-dev"
    },
    {
      "commit": "e55db70293dbff768ee454cf456a39ad2cfdd7e2",
      "tree": "2ef77bd13faec7e116345efcb61405fe5d8146a6",
      "parents": [
        "e6df10a7695e912310fc02c69f0537c9f19afe79",
        "31fbf3a67e3482d3a4a363077febde7ba8bcc16b"
      ],
      "author": {
        "name": "Rucha Katakwar",
        "email": "ruchamk@google.com",
        "time": "Thu May 05 15:42:04 2022 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu May 05 15:42:04 2022 +0000"
      },
      "message": "Merge \"Camera: Fix up torch strength keys.\" into tm-dev"
    },
    {
      "commit": "ffc4c0164df8a13f365e980d2ebcc4777f44256b",
      "tree": "aafcd27dbbcb7dc37d538db31f70e1d6d15566b4",
      "parents": [
        "0830985fde7eb864f348ebdcaca39cd651f63769"
      ],
      "author": {
        "name": "Shuzhen Wang",
        "email": "shuzhenwang@google.com",
        "time": "Wed Apr 20 15:55:46 2022 -0700"
      },
      "committer": {
        "name": "Shuzhen Wang",
        "email": "shuzhenwang@google.com",
        "time": "Wed May 04 23:51:20 2022 +0000"
      },
      "message": "Camera: Add support for readout timestamp\n\nThe readout timestamp is added to CaptureResultExtras used by\nonCaptureStarted(). If the HAL supports readoutTimestamp, the\nreadout timestamp is passed in onCaptureStarted().\n\nTest: atest Experimental2022SystemTest\nBug: 229097448\nBug: 229773853\nChange-Id: I1ac822b14a2a4198e7c8ef17a39212f504c2d719\n"
    },
    {
      "commit": "d2085a9bbc470e9000bb9f92d37296460cdd2943",
      "tree": "e16ef72381eef064a3cdb01f19f50efa7a7b2c56",
      "parents": [
        "a246977512c50d180a67e9c5df14c27a0b994fe5",
        "98ffa75d811e2b7deb951cf42eff40488342436e"
      ],
      "author": {
        "name": "Ravneet Dhanjal",
        "email": "rdhanjal@google.com",
        "time": "Tue May 03 23:05:53 2022 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue May 03 23:05:53 2022 +0000"
      },
      "message": "Merge \"Add CameraService Watchdog\" into tm-dev"
    },
    {
      "commit": "a246977512c50d180a67e9c5df14c27a0b994fe5",
      "tree": "e173b05b7295147e666115bbf81686a657ccecef",
      "parents": [
        "f19aba2ab497405f52df09c64f017e1b570d380b",
        "5f7abe2f93e76b1479ed6a280829a3e8acad3b31"
      ],
      "author": {
        "name": "Austin Borger",
        "email": "borgera@google.com",
        "time": "Tue May 03 19:14:14 2022 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue May 03 19:14:14 2022 +0000"
      },
      "message": "Merge \"Check the device policy for the camera disabled flag before trying to open a connection to the camera.\" into tm-dev"
    },
    {
      "commit": "f19aba2ab497405f52df09c64f017e1b570d380b",
      "tree": "23387c16e84acb586f4bc282a29ada4251674e9f",
      "parents": [
        "34eb60a114c5a8c5466562e09d214ff264e3f571",
        "b77131a48131681b8c8f859daf74bf6061b9625a"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Tue May 03 17:19:01 2022 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue May 03 17:19:01 2022 +0000"
      },
      "message": "Merge \"Camera: Allow vendor stream use case unconditionally.\" into tm-dev"
    },
    {
      "commit": "13f35addf48a878b98fdaafb1cf8026ce2068fba",
      "tree": "4ee4a7a3061b78d9f48cdb86a07ae62bcb973ac2",
      "parents": [
        "006a15b87f6c7f71895ed208a20cd9ac6406af6a"
      ],
      "author": {
        "name": "Emilian Peev",
        "email": "epeev@google.com",
        "time": "Wed Apr 27 11:28:48 2022 -0700"
      },
      "committer": {
        "name": "Emilian Peev",
        "email": "epeev@google.com",
        "time": "Tue May 03 10:12:09 2022 -0700"
      },
      "message": "Camera: Enable the rotate\u0026crop heuristics in the legacy shim layer\n\nEnable the rotate\u0026crop heuristics within the legacy shim layer.\nTo avoid regressions, calls to \"setDisplayOrientation\" must be handled\ndifferently. The client value passed there takes in to account both\nthe sensor orientation as well as the necessary extra display\ncompensation. The heuristics on the other hand will only include the\nnecessary display adjustment. In order to have consistent behavior\nwith the Camera2 path, the client display orientation value will\nbe ignored and we will only use the sensor orientation calculated\ntransformation instead.\n\nBug: 228947590\nTest: Manual using legacy camera application\nChange-Id: I774dbc63c3bcdc8757b3e6b667712452b42426ef\n"
    },
    {
      "commit": "976bb4d569fb4153203d00d3632bb2f645ce7461",
      "tree": "d7bf8380d3a86252bd25870e22418e820d1e1ee6",
      "parents": [
        "ce01b72e3a01c973a00f970a2b8eb0d313852bf0"
      ],
      "author": {
        "name": "Avichal Rakesh",
        "email": "arakesh@google.com",
        "time": "Mon May 02 15:23:00 2022 -0700"
      },
      "committer": {
        "name": "Avichal Rakesh",
        "email": "arakesh@google.com",
        "time": "Mon May 02 15:28:57 2022 -0700"
      },
      "message": "camera: make waiting for state more accurate\n\nThe current implementation of Camera3Device doesn\u0027t account for spurious\nthread wakeups when waiting for a specific device state in\n`waitUntilStateThenRelock`. This is usually not an issue but in the\nworst case can double or triple the time a thread waits for the device\nto reach the desired state.\n\nThis CL reduces the timeout every time the thread wakes up to ensure\nthat a thread waits only as long as specified by the passed parameter.\n\nBug: 223736973\nTest: Existing camera CTS tests pass\nChange-Id: Ie25c9c8e48f7cd369a089803774d62f6ba566c88\n"
    }
  ],
  "next": "31fbf3a67e3482d3a4a363077febde7ba8bcc16b"
}
