)]}'
{
  "log": [
    {
      "commit": "8a3d012c769eaf7ee686ac3d9e53f46b14ff2dfc",
      "tree": "51d95f43674408949470024d8cd7cfc8bbf807a0",
      "parents": [
        "0918fec076ece100028fe46cfdef4360e883255f",
        "d1fb9d3fdc5dcaf512811093d203457eb38c7682"
      ],
      "author": {
        "name": "Jayant Chowdhary",
        "email": "jchowdhary@google.com",
        "time": "Mon Apr 22 18:03:42 2019 -0700"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Mon Apr 22 18:03:42 2019 -0700"
      },
      "message": "Merge \"cameraserver: log setTorchMode calls.\" into qt-dev am: 074ed55c3d\nam: d1fb9d3fdc\n\nChange-Id: Ifa6ebe066838134e8e8c63316e2db8fccdec255b\n"
    },
    {
      "commit": "074ed55c3d3c54654d0cf0b501599823bec11418",
      "tree": "fe1975cab742584e5074e3c455f12345f4c98c99",
      "parents": [
        "7fc3bbe570e94ceec28e09a87196ed564de2ff5b",
        "0e2eefd580aeae1e74fdc06a070116faa702d629"
      ],
      "author": {
        "name": "Jayant Chowdhary",
        "email": "jchowdhary@google.com",
        "time": "Mon Apr 22 23:08:14 2019 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Apr 22 23:08:14 2019 +0000"
      },
      "message": "Merge \"cameraserver: log setTorchMode calls.\" into qt-dev"
    },
    {
      "commit": "0e2eefd580aeae1e74fdc06a070116faa702d629",
      "tree": "10b0b3b5c574e38b188ddd66a13a1d380a67ce2f",
      "parents": [
        "3208826f676b1be78e1c04692d7f17249e45c3ea"
      ],
      "author": {
        "name": "Jayant Chowdhary",
        "email": "jchowdhary@google.com",
        "time": "Thu Apr 18 14:05:43 2019 -0700"
      },
      "committer": {
        "name": "Jayant Chowdhary",
        "email": "jchowdhary@google.com",
        "time": "Mon Apr 22 12:40:42 2019 -0700"
      },
      "message": "cameraserver: log setTorchMode calls.\n\nBug: 120314037\n\nTest: Turn torch on / off; logcat | grep \u0027Torch turned\u0027\nTest: Turn torch on / off; adb shell dumpsys media.camera\n\nChange-Id: Ib98e8847f49c6977b9cba65ae0605b8abe774a15\nSigned-off-by: Jayant Chowdhary \u003cjchowdhary@google.com\u003e\n"
    },
    {
      "commit": "0918fec076ece100028fe46cfdef4360e883255f",
      "tree": "b94fcc0e848f235c4f7bcec100b5983ac84e2a88",
      "parents": [
        "506a9d1a2019a998f435fa5e47d0a63e52d2323b",
        "19f41f854a2450de4e9f4bd3200927d6f69c1074"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Mon Apr 22 11:25:47 2019 -0700"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Mon Apr 22 11:25:47 2019 -0700"
      },
      "message": "Merge \"audio policy: improve input device connection logic\" into qt-dev am: 7fc3bbe570\nam: 19f41f854a\n\nChange-Id: Ie7931a5413a85a2bc1c956aac2910b69afb1a708\n"
    },
    {
      "commit": "7fc3bbe570e94ceec28e09a87196ed564de2ff5b",
      "tree": "6a27b852a2d7f4ba448edaa66145051dadb8cb53",
      "parents": [
        "3dd5000ef67416710e63aec92f9b758b3a294862",
        "0dd5185555db64af2cb5ff1e161629054086abb6"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Mon Apr 22 18:07:17 2019 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Apr 22 18:07:17 2019 +0000"
      },
      "message": "Merge \"audio policy: improve input device connection logic\" into qt-dev"
    },
    {
      "commit": "0dd5185555db64af2cb5ff1e161629054086abb6",
      "tree": "c2e0f9c49b263891bf94522226337d922da0b95e",
      "parents": [
        "8263e3519b6801f019e471efe4a6045b7046e4d3"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Fri Apr 19 18:18:58 2019 -0700"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Mon Apr 22 08:41:05 2019 -0700"
      },
      "message": "audio policy: improve input device connection logic\n\nDo not systematically close all inputs when an input device is connected\nor disconnected but only those affected by the change.\n\nAlso:\n- refactor setDeviceConnectionStateInt() to align input and output\ndevices connection sequence\n- remove unused \"inputs\" argument to checkInputsForDevice()\n\nBug: 126370328\nTest: phone call, video call , camcorder, assistant, auto projected\nChange-Id: I27734b32da97ad4790d6cd74eaaf866e414db211\n"
    },
    {
      "commit": "7a73d8537a8a4ee13c42a73193fd2ddd475dab3e",
      "tree": "11249169a6a2b81140bc1098630a17d99a7d1c18",
      "parents": [
        "12318cc01c2515fa545450ee5c10938f2d38033e",
        "b405737641c2d9b55bdda386739d24ffebb35b68"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Sun Apr 21 00:02:55 2019 -0700"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Sun Apr 21 00:02:55 2019 -0700"
      },
      "message": "Merge \"audio policy: fix HOTWORD capture device\" into qt-dev am: 3208826f67\nam: b405737641\n\nChange-Id: Ib1e2c50058f19bde532055f31151ad582f3c94c7\n"
    },
    {
      "commit": "3208826f676b1be78e1c04692d7f17249e45c3ea",
      "tree": "b9afab679aa17652d8252b96bc727d8ccf66e770",
      "parents": [
        "1c5347146851b2e86bceefd812e9ba0c7a1e77e0",
        "5ee8d120318266334aabc21d4f676813b3ac288f"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Sun Apr 21 06:49:24 2019 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Sun Apr 21 06:49:24 2019 +0000"
      },
      "message": "Merge \"audio policy: fix HOTWORD capture device\" into qt-dev"
    },
    {
      "commit": "12318cc01c2515fa545450ee5c10938f2d38033e",
      "tree": "97d06311011309f531ec29aae7768894a5fe502c",
      "parents": [
        "81b4f7a686403d5074e2e90fb28b6700a9c5ace8",
        "ea4d7d9b297037d2b2a27544710d9645d79c9287"
      ],
      "author": {
        "name": "Phil Burk",
        "email": "philburk@google.com",
        "time": "Fri Apr 19 23:00:06 2019 -0700"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Fri Apr 19 23:00:06 2019 -0700"
      },
      "message": "Merge \"AudioFlinger: allow small requested capacity for FAST path\" into qt-dev am: 1c53471468\nam: ea4d7d9b29\n\nChange-Id: Iaad2a87cbecf306944e6abd1df0fcbdcaae64426\n"
    },
    {
      "commit": "5ee8d120318266334aabc21d4f676813b3ac288f",
      "tree": "6af1a806b7cf903e6d6c1b6dd3b8a8b5eaab4784",
      "parents": [
        "8263e3519b6801f019e471efe4a6045b7046e4d3"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Fri Apr 19 15:41:52 2019 -0700"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Fri Apr 19 15:41:52 2019 -0700"
      },
      "message": "audio policy: fix HOTWORD capture device\n\nUse only devices attached to primary HAL when capturing\nfor audio source HOTWORD as they have to be accessible by\nthe audio DSP.\n\nBug: 123311424\nTest: capture use cases: phone calls, Duo, Camcorder, Assistant.\nChange-Id: Ib54622b69612e6ed12f36193d4b1918ba892a2cd\n"
    },
    {
      "commit": "7ed66a1a879399edf356e54f09d59c1a7ca2d5f7",
      "tree": "498ea915266ffda87754b03e4b40230e2712ee1d",
      "parents": [
        "8263e3519b6801f019e471efe4a6045b7046e4d3"
      ],
      "author": {
        "name": "Phil Burk",
        "email": "philburk@google.com",
        "time": "Thu Apr 18 13:20:30 2019 -0700"
      },
      "committer": {
        "name": "Phil Burk",
        "email": "philburk@google.com",
        "time": "Fri Apr 19 19:03:30 2019 +0000"
      },
      "message": "AudioFlinger: allow small requested capacity for FAST path\n\nAudioFlinger used to reject requests for the low latency FAST\npath when the capacity was !\u003d mPipeFramesP2.\nBut if the caller requests \u003c mPipeFramesP2 than we can just bump it\nup to mPipeFramesP2 because the API allows that.\n\nFor example, on Pixel, mPipeFramesP2 is 4096\n\nBug: 80308183\nTest: adb shell input_monitor_callback -pl -b4000 -m1\nTest: should see performance mode 12 for LOW_LATENCY\nChange-Id: I987067910de3194fb52370d0ea1626cffad6248c\n"
    },
    {
      "commit": "1ed02295381f5af9741cf1aa35f27b6fdb018eb0",
      "tree": "3ffc04aaa6455a80ccdb517774aa88e7a26a0264",
      "parents": [
        "d1e3315b12e1e7bcbfe1bd116c527d0a30a6a925",
        "b6e483bbd27f506d37097c9db79d78b54ef0fc5f"
      ],
      "author": {
        "name": "Yin-Chia Yeh",
        "email": "yinchiayeh@google.com",
        "time": "Thu Apr 18 14:19:28 2019 -0700"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Thu Apr 18 14:19:28 2019 -0700"
      },
      "message": "Merge \"Camera: don\u0027t enable buffer manager for display/texture streams\" into qt-dev am: 68b8684c8e\nam: b6e483bbd2\n\nChange-Id: Ief68b2adf5ded5b2936289527848e943423dc70c\n"
    },
    {
      "commit": "d1e3315b12e1e7bcbfe1bd116c527d0a30a6a925",
      "tree": "44ce59cc4657cb70b782707c3a2e8a4f3c26a395",
      "parents": [
        "4e9661c889f728339f37cc2c16bdd9af4402dcff",
        "a74392b1adb6f6e026752b25069796fd7b33d65f"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Thu Apr 18 13:14:09 2019 -0700"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Thu Apr 18 13:14:09 2019 -0700"
      },
      "message": "Merge \"audio policy: concurrent capture effects\" into qt-dev am: df8638b4c4\nam: a74392b1ad\n\nChange-Id: I4fc5ecb19a8a5240f05b1e558924dcf47f6d6ed1\n"
    },
    {
      "commit": "68b8684c8eb2b68a03887cdba6bea75de438c179",
      "tree": "78a9e6edbb8e89d66e86dacbf4969b8a0d437f68",
      "parents": [
        "df8638b4c4cfabcdeade1a3af497cd6e0521cb89",
        "b6578908df3c3f1730d286c1897ef9e9859e3495"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Thu Apr 18 20:12:27 2019 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Apr 18 20:12:27 2019 +0000"
      },
      "message": "Merge \"Camera: don\u0027t enable buffer manager for display/texture streams\" into qt-dev"
    },
    {
      "commit": "df8638b4c4cfabcdeade1a3af497cd6e0521cb89",
      "tree": "d4b192648cf45213baaa415f6842af7c58242e12",
      "parents": [
        "a74c7274069fdfa95e4f9768e14bd2ce7ed1219e",
        "b20cf7db9e669169bbae5f0da97018a866c3f634"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Thu Apr 18 19:15:42 2019 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Apr 18 19:15:42 2019 +0000"
      },
      "message": "Merge \"audio policy: concurrent capture effects\" into qt-dev"
    },
    {
      "commit": "4e9661c889f728339f37cc2c16bdd9af4402dcff",
      "tree": "3601e838518c71859afff773997beb925ac41a35",
      "parents": [
        "df9167614fd36456c895881cd8f074e18bd7b519",
        "2ebf6629605a0d44cb83f3dfbd0130132a686cda"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Thu Apr 18 17:57:31 2019 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Apr 18 17:57:31 2019 +0000"
      },
      "message": "Merge \"AAudio: bump priority of AAudio Mixer to match FastMixer\""
    },
    {
      "commit": "df9167614fd36456c895881cd8f074e18bd7b519",
      "tree": "885acea7565bf2604420f43ff5280dbf358eab43",
      "parents": [
        "37fd52e8d7ab4e4c01272fdee253cdf27a0b20b4",
        "ea547ec252e8b83f00dd3dde0e70800e73afadc3"
      ],
      "author": {
        "name": "Varun Shah",
        "email": "varunshah@google.com",
        "time": "Thu Apr 18 09:18:42 2019 -0700"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Thu Apr 18 09:18:42 2019 -0700"
      },
      "message": "Merge \"Include calling uid proc state in CameraService reject log.\" into qt-dev am: a74c727406\nam: ea547ec252\n\nChange-Id: I3ac4ed7d4cfdc2dfba18e99d851569098e1db664\n"
    },
    {
      "commit": "2ebf6629605a0d44cb83f3dfbd0130132a686cda",
      "tree": "2190b4af2d71c552118c87c7f3c3861be8f09457",
      "parents": [
        "8946fa33044a8b216f85d962b49b52fe36642c0b"
      ],
      "author": {
        "name": "Phil Burk",
        "email": "philburk@google.com",
        "time": "Wed Apr 17 11:10:25 2019 -0700"
      },
      "committer": {
        "name": "Phil Burk",
        "email": "philburk@google.com",
        "time": "Thu Apr 18 09:04:30 2019 -0700"
      },
      "message": "AAudio: bump priority of AAudio Mixer to match FastMixer\n\nService RT thread should run at a slightly higher priority because\nit generally does less work and is more critical.\n\nBug: 71817389\nTest: Run an AAudio stream in SHARED mode.\nTest:   adb shell ps -e -T -o uid,pid,tid,ppid,pri,ni,cmd| grep AAudio\nTest: See bug for more test instructions.\nChange-Id: I762af6ac1a9883d47b4c42bfe9f8455416251a12\n"
    },
    {
      "commit": "a74c7274069fdfa95e4f9768e14bd2ce7ed1219e",
      "tree": "47e7e4aa28e9ad18a9beea08f90e3b7792698978",
      "parents": [
        "d198b7b7d6daddb78153e4d6a9135854f95ae856",
        "b42f1ebb71e709fc4e035a88121ac2c1ac75271a"
      ],
      "author": {
        "name": "Varun Shah",
        "email": "varunshah@google.com",
        "time": "Thu Apr 18 15:32:04 2019 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Apr 18 15:32:04 2019 +0000"
      },
      "message": "Merge \"Include calling uid proc state in CameraService reject log.\" into qt-dev"
    },
    {
      "commit": "37fd52e8d7ab4e4c01272fdee253cdf27a0b20b4",
      "tree": "2bc111a75595d954feb94e87b3a72cff2a40da82",
      "parents": [
        "a846510df84f9666ef347bec77faacf3fb750a96",
        "f69ef32645e95c1bb60a037e9d4e28d2012e971e"
      ],
      "author": {
        "name": "Chong Zhang",
        "email": "chz@google.com",
        "time": "Wed Apr 17 21:57:12 2019 -0700"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Wed Apr 17 21:57:12 2019 -0700"
      },
      "message": "Merge \"Fix cpu hint for sw codecs\" into qt-dev am: d198b7b7d6\nam: f69ef32645\n\nChange-Id: Id39edee3124c5349c1f5787faeffdd56dbc24e3d\n"
    },
    {
      "commit": "a846510df84f9666ef347bec77faacf3fb750a96",
      "tree": "b44307b65e3d8157099d874bf3d0571238a94a85",
      "parents": [
        "6249b60246d4a9a920602dd7d2b6980394d16107",
        "0f5c5db183083bfbf4b2f4552b54cf19f2154bfd"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Wed Apr 17 21:52:06 2019 -0700"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Wed Apr 17 21:52:06 2019 -0700"
      },
      "message": "Merge changes I188f11e9,I6e77dc2c into qt-dev am: f03a3a6fb9\nam: 0f5c5db183\n\nChange-Id: I8c61b535e7f5576eca41173704aa457774d0d3d4\n"
    },
    {
      "commit": "6249b60246d4a9a920602dd7d2b6980394d16107",
      "tree": "e39611181f68ab8d6aed9b4c935878e3d0fedd4a",
      "parents": [
        "6018e9e51421e7250d999ea43c8dc1e8d758587d",
        "665f3f28721a94fb8ef3fdf76b6fc79a21a4ff2b"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Wed Apr 17 21:21:19 2019 -0700"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Wed Apr 17 21:21:19 2019 -0700"
      },
      "message": "Merge \"audiopolicy: align input and output devices for engine\" into qt-dev am: 24ba1c4082\nam: 665f3f2872\n\nChange-Id: I590a0f9ad0941e8ff3379d76a923ce7ad1dece50\n"
    },
    {
      "commit": "6018e9e51421e7250d999ea43c8dc1e8d758587d",
      "tree": "6a16b20e2630d52696c2e2bb61c73bf476779730",
      "parents": [
        "a54054bc1f09fcdd65d0eaec55fe46eb7cd55f65",
        "d4e2e853abf90b5a84fa1a6ddc52ff1d495e7847"
      ],
      "author": {
        "name": "Shuzhen Wang",
        "email": "shuzhenwang@google.com",
        "time": "Wed Apr 17 20:30:07 2019 -0700"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Wed Apr 17 20:30:07 2019 -0700"
      },
      "message": "Merge \"Camera: Clarify multi-camera RAW and FOV behaviors\" into qt-dev am: 8bf6e5d3c0\nam: d4e2e853ab\n\nChange-Id: I9e9560e8d2ebcc78402e31fdbe6bbbcd2e2c3b3f\n"
    },
    {
      "commit": "d198b7b7d6daddb78153e4d6a9135854f95ae856",
      "tree": "e757141711c5014aab9904c645d1112373321e3d",
      "parents": [
        "f03a3a6fb95812f7d6cdcee7e75365a8aca6cc46",
        "0808b1745a73923f48be34aeb6acbad80adbeae4"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Thu Apr 18 03:24:14 2019 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Apr 18 03:24:14 2019 +0000"
      },
      "message": "Merge \"Fix cpu hint for sw codecs\" into qt-dev"
    },
    {
      "commit": "a54054bc1f09fcdd65d0eaec55fe46eb7cd55f65",
      "tree": "d7982c607520fb33d11e23253cff4f322751183c",
      "parents": [
        "e1ad4b14ca5bf3d4e7008bbf2ae2134d9e9cf7df",
        "599e14911b09aa31b902d40e473fdd9039683a18"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Wed Apr 17 19:55:01 2019 -0700"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Wed Apr 17 19:55:01 2019 -0700"
      },
      "message": "Merge \"refactor mutexes for audio effects in audio flinger and audio policy\" into qt-dev am: aceea8bddd\nam: 599e14911b\n\nChange-Id: Id5fc98f6ef4179951abc16c7036a5e51262ce671\n"
    },
    {
      "commit": "b20cf7db9e669169bbae5f0da97018a866c3f634",
      "tree": "96e88e1850e1fb27fcc0bad53cc575e837d86c60",
      "parents": [
        "aceea8bddd0324df4414673bc39a3f38fe16e8a1"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Fri Apr 05 19:37:34 2019 -0700"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Wed Apr 17 19:27:20 2019 -0700"
      },
      "message": "audio policy: concurrent capture effects\n\nAdd pre processing effect management for concurrent capture scenarii.\nWhen several clients on the same input stream have enabled audio effects,\nonly the effects attached to the top priotity client are active.\nOther effects are suspended.\n\nAdd AudioFlinger API to suspend/restore audio effects build on top\nof exisiting internal effect suspend mechanism.\n\nRecordThread now supports more than one effect chain.\n\nAOSP pre processing implementation supports more than one effect session\nper input.\n\nRefactor AudioPolicyManager::closeAllInputs() to call closeInput() on\nall inputs instead of partially duplicated code.\n\nBug: 128419018\nTest: make\nChange-Id: I685286da4c2905a8894a4354679f9787b1400621\n"
    },
    {
      "commit": "f03a3a6fb95812f7d6cdcee7e75365a8aca6cc46",
      "tree": "44d35d0b9135d316f8f97b24f91dd8eda4cea2a6",
      "parents": [
        "24ba1c4082afec57a3d6e7bbefde5ed5d2d05bdd",
        "993f390f8076868a4e42ebbe0b1072c4cd110d34"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Thu Apr 18 02:22:00 2019 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Apr 18 02:22:00 2019 +0000"
      },
      "message": "Merge changes I188f11e9,I6e77dc2c into qt-dev\n\n* changes:\n  audiopolicy: remove double call to attach / getModuleForDeviceType\n  audiopolicy: audioflinger: manage stream patch volume\n"
    },
    {
      "commit": "24ba1c4082afec57a3d6e7bbefde5ed5d2d05bdd",
      "tree": "6d682ce67cb7fdfda16ed333721d5f6fec03b512",
      "parents": [
        "8bf6e5d3c0e60b05ec6dbe7ef9ee9b01b9278976",
        "4b8d5ce58d98d4a163f63e17735450a7cac4821c"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Thu Apr 18 00:49:14 2019 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Apr 18 00:49:14 2019 +0000"
      },
      "message": "Merge \"audiopolicy: align input and output devices for engine\" into qt-dev"
    },
    {
      "commit": "8bf6e5d3c0e60b05ec6dbe7ef9ee9b01b9278976",
      "tree": "71d8049e0cd2dadbcab8c660d768439297ed994c",
      "parents": [
        "aceea8bddd0324df4414673bc39a3f38fe16e8a1",
        "4f6fa9daa4557de78789b937276e45bbaf0b019c"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Wed Apr 17 23:23:30 2019 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Apr 17 23:23:30 2019 +0000"
      },
      "message": "Merge \"Camera: Clarify multi-camera RAW and FOV behaviors\" into qt-dev"
    },
    {
      "commit": "993f390f8076868a4e42ebbe0b1072c4cd110d34",
      "tree": "35bc752744988158d0c602eba1ac105a76818eb4",
      "parents": [
        "9e1533cd0b8f3bf08eb9c81c21cd42f5782474f4"
      ],
      "author": {
        "name": "Francois Gaffie",
        "email": "francois.gaffie@renault.com",
        "time": "Wed Apr 10 15:39:27 2019 +0200"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Wed Apr 17 14:05:50 2019 -0700"
      },
      "message": "audiopolicy: remove double call to attach / getModuleForDeviceType\n\nFor a2dp hybrid mode, device retrieval is done through type / code pair.\nWhen the device is connected, getDeviceDescriptor is called with allowToCreate\nboolean. As a result, HwModuleCollection::createDevice will be called, invoking\ngetModuleForDeviceTypes as done laterly in setDeviceConnectionState.\n\nThis CL removes double call to these function.\n\nBug: 130284799\nTest: make\n\nChange-Id: I188f11e9325cfc6af2ae872e00485e00ccd9096b\nSigned-off-by: Francois Gaffie \u003cfrancois.gaffie@renault.com\u003e\n"
    },
    {
      "commit": "9e1533cd0b8f3bf08eb9c81c21cd42f5782474f4",
      "tree": "3ba52e0b3d83ce58a20ebb69a61f2811a4c3a9f6",
      "parents": [
        "4b8d5ce58d98d4a163f63e17735450a7cac4821c"
      ],
      "author": {
        "name": "François Gaffie",
        "email": "francois.gaffie@renault.com",
        "time": "Thu Apr 11 16:07:36 2019 +0200"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Wed Apr 17 14:05:50 2019 -0700"
      },
      "message": "audiopolicy: audioflinger: manage stream patch volume\n\nAudioPolicy used to hide activity of stream patch to prevent changing\nthe volume.\nThis CL replaces the filtering of the stream patch activity on the policy\nby a full volume range within audio flinger.\nIt updates also product strategies example for automotive to add associated\nstrategy and full range volume.\n\nBug: 130284799\nTest: make\n\nSigned-off-by: François Gaffie \u003cfrancois.gaffie@renault.com\u003e\nChange-Id: I6e77dc2cbed0289f0a1341f7597b1c25abee5f7d\n"
    },
    {
      "commit": "4b8d5ce58d98d4a163f63e17735450a7cac4821c",
      "tree": "5c407be9d37d6aee5bf5e4d9068629621a9f4616",
      "parents": [
        "aceea8bddd0324df4414673bc39a3f38fe16e8a1"
      ],
      "author": {
        "name": "François Gaffie",
        "email": "francois.gaffie@renault.com",
        "time": "Thu Apr 11 15:57:20 2019 +0200"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Wed Apr 17 14:03:29 2019 -0700"
      },
      "message": "audiopolicy: align input and output devices for engine\n\nNo need to filter anymore the remote submix to engine as\nboth configurable and default engine take care of legacy remote\nsubmix address (aka \"0\") and wont only care about type.\n\nBug: 130284799\nTest: AudioPolicyEmulatorTests --gtest_filter\u003d*.DynamicPolicyMixRecordInjectionTest.*\nAudioPolicyEmulatorTests --gtest_filter\u003d*.DynamicPolicyMixPlaybackReRoutingTest.*\n\nChange-Id: Ia90c65ccfc51220a2344cecec2fbba7f2bad776a\nSigned-off-by: François Gaffie \u003cfrancois.gaffie@renault.com\u003e\n"
    },
    {
      "commit": "aceea8bddd0324df4414673bc39a3f38fe16e8a1",
      "tree": "0544b1778318ece423d32ef1ac213a5da94e321b",
      "parents": [
        "060016102a3f8924592d9cdc812e1f6ea13ea1d4",
        "6c79632bbece71f7af0c2453bb62a5d6f0cca664"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Wed Apr 17 20:59:32 2019 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Apr 17 20:59:32 2019 +0000"
      },
      "message": "Merge \"refactor mutexes for audio effects in audio flinger and audio policy\" into qt-dev"
    },
    {
      "commit": "29ccc29d482b6e4a2c46c2b8e731d44938888e32",
      "tree": "84034c7928d373aec61f9076d26065197a541693",
      "parents": [
        "2cb1a8ccbd402d74a06ee34721f5dd787ecb396f"
      ],
      "author": {
        "name": "Phil Burk",
        "email": "philburk@google.com",
        "time": "Mon Apr 15 08:58:08 2019 -0700"
      },
      "committer": {
        "name": "Phil Burk",
        "email": "philburk@google.com",
        "time": "Wed Apr 17 18:22:37 2019 +0000"
      },
      "message": "aaudio: reduce error logging, improve security\n\nReduce log spam and error logging as part of the Green Log effort.\nReplace logging of addresses with integer IDs.\n\nBug: 36785118\nBug: 122073229\nBug: 130569151\nTest: Open an AAudio stream at 44100 and look at logcat.\nTest:   adb shell write_sine_callback -pl -r44100\nTest:   adb logcat | grep -i aaudio | grep \" E \"\nTest: Should see no \"E\" logs from AAudio.\nTest: Should see no addresses from AAudio.\nChange-Id: I1d4e0bc349095f818fad52603d2bb8e7317d3681\nMerged-In: I1d4e0bc349095f818fad52603d2bb8e7317d3681\n(cherry picked from commit 7ba46558fbd28b555ba751837cc9094a7c785f75)\n"
    },
    {
      "commit": "8fb15578d79323b02d856e3170f680f6d2f05bd0",
      "tree": "5e7118e9ca551c8e76c814478fad1408890dc36d",
      "parents": [
        "e434e0dd92c21b0c47229af4fe12e699d0b924a3",
        "7ba46558fbd28b555ba751837cc9094a7c785f75"
      ],
      "author": {
        "name": "Phil Burk",
        "email": "philburk@google.com",
        "time": "Wed Apr 17 18:21:31 2019 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Apr 17 18:21:31 2019 +0000"
      },
      "message": "Merge \"aaudio: reduce error logging, improve security\""
    },
    {
      "commit": "6c79632bbece71f7af0c2453bb62a5d6f0cca664",
      "tree": "a70a17d1f723b7e0241bb762bf5478e3c9947348",
      "parents": [
        "2cb1a8ccbd402d74a06ee34721f5dd787ecb396f"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Tue Apr 09 14:13:17 2019 -0700"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Wed Apr 17 10:29:30 2019 -0700"
      },
      "message": "refactor mutexes for audio effects in audio flinger and audio policy\n\nRemove effect specific mutex (mEffectLock) in AudioPolicyService: Due to\nconcurrent capture (among other reasons), it is necessary that the audio\npolicy manager state preserved by mLock includes audio effects\nregistration and enabling.\n\nMoved all audio policy API calls from audio flinger out of locked regions\nfor audio flinger, thread and effects mutexes to avoid cross deadlocks\nbetween audioflinger and audio policy manager:\n- centralized audio policy API calls in EffectModule::updatePolicyState()\n- the enabled state now reflects the state requested by the controlling\nhandle, not the actual effect processing state: a suspended effect is\nnow considered enabled.\n\nA new audio policy manager API moveEffectsToIo() is added to atomically\nhandle moving effects to a new input or output without having to call\nunregister \u003e register \u003e enable sequence.\n\nAlso fix assert in setStreamVolume to match volume group refactoring\nin audio policy manager.\n\nBug: 128419018\nTest: CTS tests for audio effects.\nTest: manual tests with Duo calls, Play Music, Youtube, notifications\n with and without Bluetooth and wired headset.\n\nChange-Id: I8bd3af81026c55b6be283b3a9b41fe4998e060fd\n"
    },
    {
      "commit": "0808b1745a73923f48be34aeb6acbad80adbeae4",
      "tree": "51fd39b9a9daf5895161634d26b450b355ee5df6",
      "parents": [
        "019b2fc5aa5d62b911d029234548eb9c253b8f60"
      ],
      "author": {
        "name": "Chong Zhang",
        "email": "chz@google.com",
        "time": "Tue Apr 16 17:27:07 2019 -0700"
      },
      "committer": {
        "name": "Chong Zhang",
        "email": "chz@google.com",
        "time": "Tue Apr 16 17:29:23 2019 -0700"
      },
      "message": "Fix cpu hint for sw codecs\n\nAdd cpu hint for c2 sw codecs as well as omx.\n\nbug: 130669553\ntest: manually test that when playing YouTube 1080pHDR\ncontent, adb logcat shows traces from SchedulingPolicyService:\nSchedulingPolicyService: Moving xxxx to group 5\n\nChange-Id: Ie7afeb207fc0a898669bc7b98b270982471e6b65\n"
    },
    {
      "commit": "4f6fa9daa4557de78789b937276e45bbaf0b019c",
      "tree": "1eca67f25a562bca05c149fccc1073b241285bd6",
      "parents": [
        "019b2fc5aa5d62b911d029234548eb9c253b8f60"
      ],
      "author": {
        "name": "Shuzhen Wang",
        "email": "shuzhenwang@google.com",
        "time": "Fri Mar 29 10:40:35 2019 -0700"
      },
      "committer": {
        "name": "Shuzhen Wang",
        "email": "shuzhenwang@google.com",
        "time": "Tue Apr 16 17:11:01 2019 -0700"
      },
      "message": "Camera: Clarify multi-camera RAW and FOV behaviors\n\n- RAW capability can exist for multi-camera even if physical cameras are\nof different sizes/capabilities.\n- FOV for all processes streams must be the same regardless of logical\nor physical streams.\n- All metadata tags related to pixelArray/preCorrectionActiveArray/activeArray\nneeds to be mapped properly by the camera HAL.\n- Do distortion correction mapping for physical subcamera as well.\n\nTest: Build and read docs, camera CTS, ITS.\nBug: 118906351\nBug: 126220135\n\nChange-Id: I29a61fc3a603561c1d74dc2261600ce4cd3d34cd\n"
    },
    {
      "commit": "b42f1ebb71e709fc4e035a88121ac2c1ac75271a",
      "tree": "b01d917ca511973806c9dd9b581dcb03cd36c9e5",
      "parents": [
        "8d14f5ccff2440f39630965486e9601ab6d007b6"
      ],
      "author": {
        "name": "Varun Shah",
        "email": "varunshah@google.com",
        "time": "Tue Apr 16 14:45:13 2019 -0700"
      },
      "committer": {
        "name": "Varun Shah",
        "email": "varunshah@google.com",
        "time": "Tue Apr 16 16:08:09 2019 -0700"
      },
      "message": "Include calling uid proc state in CameraService reject log.\n\nBug: 123762288\nTest: builds.\nChange-Id: Ibaf080a7c60e52af014664f882cc37e0920353fe\n"
    },
    {
      "commit": "7ba46558fbd28b555ba751837cc9094a7c785f75",
      "tree": "b71f408fcd6398781692ea48ff4e0be6d066dba0",
      "parents": [
        "8946fa33044a8b216f85d962b49b52fe36642c0b"
      ],
      "author": {
        "name": "Phil Burk",
        "email": "philburk@google.com",
        "time": "Mon Apr 15 08:58:08 2019 -0700"
      },
      "committer": {
        "name": "Phil Burk",
        "email": "philburk@google.com",
        "time": "Tue Apr 16 15:59:36 2019 -0700"
      },
      "message": "aaudio: reduce error logging, improve security\n\nReduce log spam and error logging as part of the Green Log effort.\nReplace logging of addresses with integer IDs.\n\nBug: 36785118\nBug: 122073229\nBug: 130569151\nTest: Open an AAudio stream at 44100 and look at logcat.\nTest:   adb shell write_sine_callback -pl -r44100\nTest:   adb logcat | grep -i aaudio | grep \" E \"\nTest: Should see no \"E\" logs from AAudio.\nTest: Should see no addresses from AAudio.\nChange-Id: I1d4e0bc349095f818fad52603d2bb8e7317d3681\n"
    },
    {
      "commit": "a4f6c8f03c36b2a19a429de307a1b2b31ce1860f",
      "tree": "652cd20a1e9115b0e193e17a9c533f8148b52f52",
      "parents": [
        "57d466ee83bace3d5358c197ca21958186e53c8f",
        "57970a23d96d91fc4bfa65d87aab93afa61ced9a"
      ],
      "author": {
        "name": "Hongwei Wang",
        "email": "hwwang@google.com",
        "time": "Tue Apr 16 15:21:43 2019 -0700"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Tue Apr 16 15:21:43 2019 -0700"
      },
      "message": "Merge \"AudioFlinger::Thread ensure proper add / sub\" into qt-dev am: 654438952d\nam: 57970a23d9\n\nChange-Id: I23b380a8aaf56fb278cf187fba659b92cb51c8eb\n"
    },
    {
      "commit": "b6578908df3c3f1730d286c1897ef9e9859e3495",
      "tree": "05dd5c770dee82a02c2d228eab2fbe8e9aa9d0f3",
      "parents": [
        "d3757001b9c9c89c2a945b071b36bcbb38ad673b"
      ],
      "author": {
        "name": "Yin-Chia Yeh",
        "email": "yinchiayeh@google.com",
        "time": "Tue Apr 16 13:36:16 2019 -0700"
      },
      "committer": {
        "name": "Yin-Chia Yeh",
        "email": "yinchiayeh@google.com",
        "time": "Tue Apr 16 13:36:16 2019 -0700"
      },
      "message": "Camera: don\u0027t enable buffer manager for display/texture streams\n\nThese streams have their own buffer management logic.\n\nTest: camera CTS tests\nBug: 130050659\nChange-Id: I6943b10d48a2e78fc8626d20c3f6bcc3327c936c\n"
    },
    {
      "commit": "654438952d760d80986270db81d498f1b6e110b4",
      "tree": "3b3da8dedee329a89f54804513fc39aad0d92061",
      "parents": [
        "e46a14777671ec310b35aa1b0a90510f29bf8085",
        "95e3768e1936673cacf185c721f9b2c117a94a0a"
      ],
      "author": {
        "name": "Hongwei Wang",
        "email": "hwwang@google.com",
        "time": "Tue Apr 16 19:07:03 2019 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Apr 16 19:07:03 2019 +0000"
      },
      "message": "Merge \"AudioFlinger::Thread ensure proper add / sub\" into qt-dev"
    },
    {
      "commit": "95e3768e1936673cacf185c721f9b2c117a94a0a",
      "tree": "993e603d53a6bf44744b94a394de2c790d81ed2f",
      "parents": [
        "8d14f5ccff2440f39630965486e9601ab6d007b6"
      ],
      "author": {
        "name": "Hongwei Wang",
        "email": "hwwang@google.com",
        "time": "Fri Apr 12 11:13:36 2019 -0700"
      },
      "committer": {
        "name": "Hongwei Wang",
        "email": "hwwang@google.com",
        "time": "Mon Apr 15 14:11:36 2019 -0700"
      },
      "message": "AudioFlinger::Thread ensure proper add / sub\n\nBug: 126772841\nBug: 130371615\nTest: 24 hours recording with 64 bit audioserver\nChange-Id: I71305448ee194d1cc325ab238f1681aee93ab18d\n"
    },
    {
      "commit": "4e2fa8fc6e8e333f3965b7ad1ff72e3a681a80a3",
      "tree": "8cbc77148b6014ccec2693c5be2551830a963fde",
      "parents": [
        "8946fa33044a8b216f85d962b49b52fe36642c0b",
        "901fde5638743796f6fee93854a19946b7cb28f8"
      ],
      "author": {
        "name": "Andy Hung",
        "email": "hunga@google.com",
        "time": "Mon Apr 15 14:07:35 2019 -0700"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Mon Apr 15 14:07:35 2019 -0700"
      },
      "message": "Merge \"AudioFlinger: Ensure triple buffering is preserved for notifications\" into qt-dev am: 9341f1c618\nam: 901fde5638\n\nChange-Id: I03b9265706873e57f8fb4d14ffc522a3998622b8\n"
    },
    {
      "commit": "9341f1c61852c6508975dd5d064ea7fbd654ad38",
      "tree": "347bb15e729fed3c4bd24fb66b98fdc9f317adc0",
      "parents": [
        "d3757001b9c9c89c2a945b071b36bcbb38ad673b",
        "fa11780f3d3f5ce87120c27cc539e8672ec4636f"
      ],
      "author": {
        "name": "Andy Hung",
        "email": "hunga@google.com",
        "time": "Mon Apr 15 20:37:57 2019 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Apr 15 20:37:57 2019 +0000"
      },
      "message": "Merge \"AudioFlinger: Ensure triple buffering is preserved for notifications\" into qt-dev"
    },
    {
      "commit": "0f6d3ddd6da011a32ad6634a85f3be252f653e59",
      "tree": "5164d2ae284a7fc35e96375a3b496e40a1e5c422",
      "parents": [
        "0557a3ad0bd1ca57c2b9a33d09aa2dad840d943e",
        "b1e3b30946287eb208727786caa2ded46f51ab42"
      ],
      "author": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Sat Apr 13 01:13:58 2019 -0700"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Sat Apr 13 01:13:58 2019 -0700"
      },
      "message": "Merge \"Camera: Camera3Device: Fix off-by-one error\" into qt-dev am: c3f0e69568\nam: b1e3b30946\n\nChange-Id: I6cb59104c95c4491fcdd97730d6e4579ad698599\n"
    },
    {
      "commit": "c3f0e69568b1333fc42cb3e7ee72d892456d66e1",
      "tree": "118e296ec3551753f8f3be9fc82f893a9b640efa",
      "parents": [
        "8e604bb84d3351083a96f13fb04a4cc2154fef60",
        "370875f93ecd5f4340cb3fb663e8df4dc331f561"
      ],
      "author": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Sat Apr 13 00:43:44 2019 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Sat Apr 13 00:43:44 2019 +0000"
      },
      "message": "Merge \"Camera: Camera3Device: Fix off-by-one error\" into qt-dev"
    },
    {
      "commit": "fa11780f3d3f5ce87120c27cc539e8672ec4636f",
      "tree": "1536eb3724b90140b9d84dd349b0bf75744accd3",
      "parents": [
        "019b2fc5aa5d62b911d029234548eb9c253b8f60"
      ],
      "author": {
        "name": "Andy Hung",
        "email": "hunga@google.com",
        "time": "Fri Apr 12 13:50:39 2019 -0700"
      },
      "committer": {
        "name": "Andy Hung",
        "email": "hunga@google.com",
        "time": "Fri Apr 12 14:45:18 2019 -0700"
      },
      "message": "AudioFlinger: Ensure triple buffering is preserved for notifications\n\nTest: write_sine_callback, com.zebproj.etherpad\nBug: 26230944\nBug: 129545307\nChange-Id: I0b3abb571f706b947430ac36810260289ae0c627\n"
    },
    {
      "commit": "370875f93ecd5f4340cb3fb663e8df4dc331f561",
      "tree": "dcd04d1cc28757a1189f97603ccb32b211ce4e76",
      "parents": [
        "0e5a1b3bb64d9a5d38903770e018379856401efd"
      ],
      "author": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Fri Apr 12 12:40:27 2019 -0700"
      },
      "committer": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Fri Apr 12 12:40:27 2019 -0700"
      },
      "message": "Camera: Camera3Device: Fix off-by-one error\n\nThese things are ceaseless: /\n  code reviews, design docs - /\n  off-by-one errors making a mess\n\nTest: atest CtsCameraTestCases\nBug: 129561652\n\nChange-Id: I807d7ad4740ffe267053fe5da2080f9ecb45aa72\n"
    },
    {
      "commit": "895c7330934756db28d4a158614ce02dd712bca1",
      "tree": "edc6b03ed710ecc2e753aafe899601a489927ba6",
      "parents": [
        "fbafe209aa9cf90210cdfd27fb2c0606b5c1a4eb",
        "5ff76105f83b9f4f88f1213ede1935dd10af671f"
      ],
      "author": {
        "name": "Chong Zhang",
        "email": "chz@google.com",
        "time": "Thu Apr 11 15:09:58 2019 -0700"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Thu Apr 11 15:09:58 2019 -0700"
      },
      "message": "Merge \"add readlink to mediacodec-x86.policy\" into qt-dev am: 019b2fc5aa\nam: 5ff76105f8\n\nChange-Id: Ic28b80cfaf3bf4e3b2b7ab7ca878676a35dfa7af\n"
    },
    {
      "commit": "2d32a7fe70cc7474a4dff860daba5e470f23a3be",
      "tree": "0cf2064ea57b7d6c9742c08d90bfe2bdf4f9be68",
      "parents": [
        "511a0f661bf218284c302d08b74a68aa9f422c9d",
        "bc16d4f26ece90d8b135ce78cc0036b1c10f64a2"
      ],
      "author": {
        "name": "jiabin",
        "email": "jiabin@google.com",
        "time": "Thu Apr 11 14:39:25 2019 -0700"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Thu Apr 11 14:39:25 2019 -0700"
      },
      "message": "Merge \"Init haptic intensity for the first fast track.\" into qt-dev am: e5a3ca2f83\nam: bc16d4f26e\n\nChange-Id: Ie2d801740797a2438c6eb0f39613aae7b1089dfb\n"
    },
    {
      "commit": "019b2fc5aa5d62b911d029234548eb9c253b8f60",
      "tree": "d745534743bfd01e0023fd90b113b36e5ae5c363",
      "parents": [
        "3eaf1bcfd60a077f41747821ed192027203157c7",
        "dda6ed1e22ed6adea3adb7c0a9a71d55ef2be4dd"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Thu Apr 11 20:39:48 2019 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Apr 11 20:39:48 2019 +0000"
      },
      "message": "Merge \"add readlink to mediacodec-x86.policy\" into qt-dev"
    },
    {
      "commit": "e5a3ca2f835afb3a670c00eee72e3b2289d82cb5",
      "tree": "5147d72c6edbbbc571b5d1af306f3f877886a699",
      "parents": [
        "c9a59dd31c15f2d5c015a091602fc723af61c812",
        "84114c3fc63f1b3a7535d1b9df171c40d7969be2"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Thu Apr 11 19:46:10 2019 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Apr 11 19:46:10 2019 +0000"
      },
      "message": "Merge \"Init haptic intensity for the first fast track.\" into qt-dev"
    },
    {
      "commit": "dda6ed1e22ed6adea3adb7c0a9a71d55ef2be4dd",
      "tree": "23bc37b198368b6170560b9099239f4a3c8075ab",
      "parents": [
        "d21b6de7181840e14300e94284db48172e24004b"
      ],
      "author": {
        "name": "Chong Zhang",
        "email": "chz@google.com",
        "time": "Thu Apr 11 10:29:09 2019 -0700"
      },
      "committer": {
        "name": "Chong Zhang",
        "email": "chz@google.com",
        "time": "Thu Apr 11 10:37:46 2019 -0700"
      },
      "message": "add readlink to mediacodec-x86.policy\n\nbug: 130216896\nChange-Id: Id46881507b0ccfcdf9fbea681c68b000efc113bb\n"
    },
    {
      "commit": "1fe704054295a6645ac052fe177969372b228c79",
      "tree": "cc1e2d91b6a43c2a7eb20a2bb0aaff6d12b34bc1",
      "parents": [
        "b4c1705219781eddba59ff631a2824358ab62c3f",
        "f40ca1804e872ce39f8c6624249f2e659214d610"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Thu Apr 11 08:13:45 2019 -0700"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Thu Apr 11 08:13:45 2019 -0700"
      },
      "message": "Merge \"audiopolicy: fix routing of exclusive preferred device\" into qt-dev am: 03517c5985\nam: f40ca1804e\n\nChange-Id: I59ae6720caa613df6dff76c03f784130bbac5990\n"
    },
    {
      "commit": "03517c5985804971ce4d961dadc92a24c5de8c85",
      "tree": "a3afa13587e6e9061f479bafc5d2b269c18e52c3",
      "parents": [
        "5832f99bbbf7b963322a8c6d2efbf37181ac540c",
        "f96e543868c4ba0c24a060d15e20748921593db2"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Thu Apr 11 14:48:16 2019 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Apr 11 14:48:16 2019 +0000"
      },
      "message": "Merge \"audiopolicy: fix routing of exclusive preferred device\" into qt-dev"
    },
    {
      "commit": "84e83b1fae54a00fd2e77d2286c5f8fe192f725e",
      "tree": "ed7d4662207c9656c066a694973e7a691a56d808",
      "parents": [
        "26ce697fc1904b6be2ce7e8aed5a4c29d7d51331",
        "051e99e613bb567d9b50ff43b4d5213b60dd969b"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Thu Apr 11 00:46:39 2019 -0700"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Thu Apr 11 00:46:39 2019 -0700"
      },
      "message": "Merge \"audiopolicy: fix mix recorder regression\" into qt-dev am: fa36d4b242\nam: 051e99e613\n\nChange-Id: Ia6702f595df460619cfc4b955578297f0bfcb99a\n"
    },
    {
      "commit": "fa36d4b242bd0dcd2f1ce2ea6e0f838b7191a042",
      "tree": "c06c265b0c2d098600b1cb991796df5c1d533b68",
      "parents": [
        "6d99dc8f31e1fe9aae7ddea23e44b23a50b7cbbf",
        "698d353587d6d0563a6451b2d701358e6cb4496e"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Thu Apr 11 01:47:03 2019 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Apr 11 01:47:03 2019 +0000"
      },
      "message": "Merge \"audiopolicy: fix mix recorder regression\" into qt-dev"
    },
    {
      "commit": "6a00489be13e35a793a6eaa2f0895cd77e34f213",
      "tree": "32898bbf2da927bc86488f04dbf473e349ea0a13",
      "parents": [
        "5ea0752710b74dfc73e7b575a571b9f0419bf2e7",
        "8413de29898fd13441b497fdf464e8373757ecd2"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Wed Apr 10 17:18:53 2019 -0700"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Wed Apr 10 17:18:53 2019 -0700"
      },
      "message": "Merge \"audio policy: fix output session effect leak\" into qt-dev am: 0a8f199b7a\nam: 8413de2989\n\nChange-Id: If60c7beae26ffc8e03ff9d9460e04c8540e126d6\n"
    },
    {
      "commit": "84114c3fc63f1b3a7535d1b9df171c40d7969be2",
      "tree": "f0fce03d0c39ccdaea71805ef175bcb3340a2c12",
      "parents": [
        "d21b6de7181840e14300e94284db48172e24004b"
      ],
      "author": {
        "name": "jiabin",
        "email": "jiabin@google.com",
        "time": "Wed Apr 10 16:38:07 2019 -0700"
      },
      "committer": {
        "name": "jiabin",
        "email": "jiabin@google.com",
        "time": "Wed Apr 10 16:38:07 2019 -0700"
      },
      "message": "Init haptic intensity for the first fast track.\n\nThe haptic intensity for fast track should be initialized, or it will be\nHAPTIC_SCALE_MUTE by default, which may result in no haptics.\n\nBug: 130312331\nTest: play haptics stream with FastMixer enabled\nChange-Id: If5a1ea12c563c4af1422b2e32451b80e69d2ef58\n"
    },
    {
      "commit": "f96e543868c4ba0c24a060d15e20748921593db2",
      "tree": "db9cf0f4b59692721a60af46b070c0b8f0c9cfa5",
      "parents": [
        "393f0e05e3fa7351c81a470e5bd841451bcc13ae"
      ],
      "author": {
        "name": "François Gaffie",
        "email": "francois.gaffie@renault.com",
        "time": "Tue Apr 09 17:13:56 2019 +0200"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Wed Apr 10 12:31:39 2019 -0700"
      },
      "message": "audiopolicy: fix routing of exclusive preferred device\n\nIn call music played on remote is called an \"exclusive\" preferred\ndevice. It may not be propagated to other client that may play locally.\nThe client of the exclusive preferred device is not routed as the\nexclusive preferred device are ignored from findPreferredDevice helper.\n\nThis CL fixes the routing\n\nBug: 130284799\nTest: AudioPolicyEmulatorTests --gtest_filter\u003dFilteringExpliciRoutingTest*\n\nChange-Id: Iec7e14cb170d0f67c8c0b231f8219c133d7d2185\nSigned-off-by: François Gaffie \u003cfrancois.gaffie@renault.com\u003e\n"
    },
    {
      "commit": "698d353587d6d0563a6451b2d701358e6cb4496e",
      "tree": "f2bed9fc7ae60d23cc3df7e19a30af4c84af4c7a",
      "parents": [
        "d21b6de7181840e14300e94284db48172e24004b"
      ],
      "author": {
        "name": "Francois Gaffie",
        "email": "francois.gaffie@renault.com",
        "time": "Wed Apr 10 15:20:05 2019 +0200"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Wed Apr 10 12:13:36 2019 -0700"
      },
      "message": "audiopolicy: fix mix recorder regression\n\nEngine is not only responsible of legacy remote submix for input\ndevice selection (aka \"0\" adress) but also regular remote submix\nwith a given address. Filtering the remote submixes prevents engine\nto select the remote submix for input stream in case a policy mix\nrule has been set to record specific sources.\n\nBug: 130284799\nTest: AudioPolicyEmulatorTests --gtest_filter\u003dRecordInjectionSourceMatch/DynamicPolicyMixRecordInjectionTest\n\nChange-Id: Iaafd1195b9ab5c82ad3bd2766061d982a10bb9da\nSigned-off-by: Francois Gaffie \u003cfrancois.gaffie@renault.com\u003e\n"
    },
    {
      "commit": "bcfe5be7cd16530269aaa204d25013d2df18b9e2",
      "tree": "913858590a1da882c3454e2c27b281c872a0f6cf",
      "parents": [
        "d21b6de7181840e14300e94284db48172e24004b"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Tue Apr 09 19:56:39 2019 -0700"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Wed Apr 10 09:28:44 2019 -0700"
      },
      "message": "audio policy: fix output session effect leak\n\nClean up session effects in releaseOutput in case stopOutput\nis not received before release.\n\nBug: 124689305\nTest: start/stop cast screen while playing music\nChange-Id: Ie0588dd3336d56d34c2d717268fcd0918cbf5717\n"
    },
    {
      "commit": "91af1929c606c37fadacff23d68bf56346e5c5c9",
      "tree": "c9c6c9e529ea800f6a13748c5c66bb81fb75767d",
      "parents": [
        "975cd6b1d0700d9a0e3b87ffb71bf686b1d0dced",
        "7dcf1263f9d042b1afdd83e8439fae54bfc4e350"
      ],
      "author": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Tue Apr 09 15:58:38 2019 -0700"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Tue Apr 09 15:58:38 2019 -0700"
      },
      "message": "Merge \"Cameraservice: Cache camera service proxy interface\" into qt-dev am: 72b8b7df5e\nam: 7dcf1263f9\n\nChange-Id: Ia84307d8e0c03a7b831af626aff5712343fe19d1\n"
    },
    {
      "commit": "975cd6b1d0700d9a0e3b87ffb71bf686b1d0dced",
      "tree": "619a7a246f13db1c2b3b4a2f7cfc5def2b60ed44",
      "parents": [
        "0edc4f462d3c5b1614c56dafcbf68ea001e9ee39",
        "b63d977cccf4af1eb159f493870cac83bb4c63b2"
      ],
      "author": {
        "name": "jiabin",
        "email": "jiabin@google.com",
        "time": "Tue Apr 09 15:45:54 2019 -0700"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Tue Apr 09 15:45:54 2019 -0700"
      },
      "message": "Merge \"Copy haptic data directly from effect in buffer to out buffer.\" into qt-dev am: 4b99b0dc3d\nam: b63d977ccc\n\nChange-Id: I4b580191e46c8eaf2dc01adaf27455cf90be3846\n"
    },
    {
      "commit": "d21b6de7181840e14300e94284db48172e24004b",
      "tree": "827bfba46386e804b9fbd1eed20da7cbb09cf94f",
      "parents": [
        "e9e801bff7cdd6f6fe5a82263d4686c1cbda76f4",
        "94114a21c855fb7525cf47fcfe965bf0735e19f1"
      ],
      "author": {
        "name": "Kevin Rocard",
        "email": "krocard@google.com",
        "time": "Tue Apr 09 21:06:23 2019 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Apr 09 21:06:23 2019 +0000"
      },
      "message": "Merge \"APC: Disable MMAP when a stream is to be captured\" into qt-dev"
    },
    {
      "commit": "72b8b7df5e563a46910dd324b7b0fb35112b1663",
      "tree": "21ee9ebe6bdc54a7bc4900e8e181e280979eab91",
      "parents": [
        "4b99b0dc3d4bc5700f276f59fc3a5da4dc90a108",
        "7d5569f51ff64ca8896d90128e085ca33596433d"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Tue Apr 09 19:28:44 2019 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Apr 09 19:28:44 2019 +0000"
      },
      "message": "Merge \"Cameraservice: Cache camera service proxy interface\" into qt-dev"
    },
    {
      "commit": "0edc4f462d3c5b1614c56dafcbf68ea001e9ee39",
      "tree": "586acb7f317696d999d1e191f8e17e7db60e7b09",
      "parents": [
        "ff226af96637891a083ecfaf0e2b03fb09c1c32e",
        "46e187e34e0204490be0eb78f5e2f96d444a37e4"
      ],
      "author": {
        "name": "Chong Zhang",
        "email": "chz@google.com",
        "time": "Tue Apr 09 12:22:57 2019 -0700"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Tue Apr 09 12:22:57 2019 -0700"
      },
      "message": "Merge \"Revert \"Revert \"Remove direct libgui reference from omx server side\"\"\" into qt-dev am: e313cff42d\nam: 46e187e34e\n\nChange-Id: If021f227682ac45c34a261615c5fff8d56071aa8\n"
    },
    {
      "commit": "4b99b0dc3d4bc5700f276f59fc3a5da4dc90a108",
      "tree": "fee1bf6b404352b1135fbb17e9f6987d1580aab5",
      "parents": [
        "e313cff42defff96ac2d94da50213e6df1b97c06",
        "47affe5c842bdab14d5889d7a12da74b9ac97eb5"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Tue Apr 09 19:07:01 2019 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Apr 09 19:07:01 2019 +0000"
      },
      "message": "Merge \"Copy haptic data directly from effect in buffer to out buffer.\" into qt-dev"
    },
    {
      "commit": "e313cff42defff96ac2d94da50213e6df1b97c06",
      "tree": "3e65ed755422077dc24c1f99f695f20efaf34f24",
      "parents": [
        "e807b2f4884a85a911dfbe7467ca0d709ad6ee91",
        "0fe4c4795015357290b098715f6d3cd17cf554df"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Tue Apr 09 18:17:04 2019 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Apr 09 18:17:04 2019 +0000"
      },
      "message": "Merge \"Revert \"Revert \"Remove direct libgui reference from omx server side\"\"\" into qt-dev"
    },
    {
      "commit": "ff226af96637891a083ecfaf0e2b03fb09c1c32e",
      "tree": "fa272d94af439a3e0ff23ed7e30c15b1c2bb6b16",
      "parents": [
        "0680520851c658bc05f4f4bcd248dd842a5199ad",
        "3efa3c2ae77b34f52e2b70b72309c3b7b7de2694"
      ],
      "author": {
        "name": "Robert Lee",
        "email": "lerobert@google.com",
        "time": "Mon Apr 08 21:15:01 2019 -0700"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Mon Apr 08 21:15:01 2019 -0700"
      },
      "message": "Merge \"audiopolicy: fix ring stream volume cannot apply when previewing ringtone\" into qt-dev am: e807b2f488\nam: 3efa3c2ae7\n\nChange-Id: Ia28e45e0c3252af5e8c6f2550b0f734323cacc05\n"
    },
    {
      "commit": "e807b2f4884a85a911dfbe7467ca0d709ad6ee91",
      "tree": "7c79c18776f858a85be6771327f0e13995a6a1a8",
      "parents": [
        "8d14f5ccff2440f39630965486e9601ab6d007b6",
        "5e66e79ec60d0389fe025076dd0839bf695f1495"
      ],
      "author": {
        "name": "Robert Lee",
        "email": "lerobert@google.com",
        "time": "Tue Apr 09 01:51:50 2019 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Apr 09 01:51:50 2019 +0000"
      },
      "message": "Merge \"audiopolicy: fix ring stream volume cannot apply when previewing ringtone\" into qt-dev"
    },
    {
      "commit": "47affe5c842bdab14d5889d7a12da74b9ac97eb5",
      "tree": "bee2e203709f46662163771a4a3ebf84d27123d5",
      "parents": [
        "0e5a1b3bb64d9a5d38903770e018379856401efd"
      ],
      "author": {
        "name": "jiabin",
        "email": "jiabin@google.com",
        "time": "Thu Apr 04 18:02:07 2019 -0700"
      },
      "committer": {
        "name": "jiabin",
        "email": "jiabin@google.com",
        "time": "Mon Apr 08 17:15:10 2019 -0700"
      },
      "message": "Copy haptic data directly from effect in buffer to out buffer.\n\nThe haptic data will be partially interleaved at the end of the buffer\nafter processing audio mixing. When processing audio effect, only audio\ndata will be handled. In that case, haptic data will be missed if there\nis any audio effect. Copying haptic data directly from audio effect in\nbuffer to out buffer could help solve the problem.\n\nBug: 129956425\nTest: play haptic with audio effect.\nChange-Id: I2b48bb43bec10167d4eacbcaa5c27959e0d44c32\n"
    },
    {
      "commit": "0fe4c4795015357290b098715f6d3cd17cf554df",
      "tree": "cb9fb49616e0ff7890359f7eefb6563d25426934",
      "parents": [
        "8d14f5ccff2440f39630965486e9601ab6d007b6"
      ],
      "author": {
        "name": "Chong Zhang",
        "email": "chz@google.com",
        "time": "Mon Apr 08 21:51:46 2019 +0000"
      },
      "committer": {
        "name": "Chong Zhang",
        "email": "chz@google.com",
        "time": "Mon Apr 08 14:56:30 2019 -0700"
      },
      "message": "Revert \"Revert \"Remove direct libgui reference from omx server side\"\"\n\nThis reverts commit b4979c59d93a6ca2be7e65489fc39896bfdc2c96.\n\nReason for revert: reland with fixes:\n1) make OMXHarness use OMXClient, not directly IOMX wrappers.\n2) fix ref of consumer listener interface in GraphicBufferSource.\n\nbug: 129272021\nTest: camera recording, aosp_x86 build\n\nChange-Id: Idaaaf412c65cbe89c95a2cb54f3833ff1fc4c304\n"
    },
    {
      "commit": "7d5569f51ff64ca8896d90128e085ca33596433d",
      "tree": "97d546f713a08d7a7a08a0c8759a1af7ae8978fc",
      "parents": [
        "0e5a1b3bb64d9a5d38903770e018379856401efd"
      ],
      "author": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Mon Apr 08 13:57:54 2019 -0700"
      },
      "committer": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Mon Apr 08 14:17:19 2019 -0700"
      },
      "message": "Cameraservice: Cache camera service proxy interface\n\nTo improve camera launch performance, cache the proxy service\ninterface.  System tracing indicates fetching the interface can take\nup to 8-10 ms during real camera opens, which is a percent or two\nof total camera startup time.\n\nTest: atest CameraCtsTestCases\nBug: 130173970\nChange-Id: Icdf5218b04f608b897dcbf2085f971b04a913f3b\n"
    },
    {
      "commit": "3f7661b2adcf954e898728fd1a94a28d062713bc",
      "tree": "51898e877a3f1a76fea727b31e571bdb47813572",
      "parents": [
        "91f90a9354be06b0d1db51310cb208e6b798c1cf",
        "55d28d70f19389d221051593970e04ab3e4ea6e7"
      ],
      "author": {
        "name": "Sung-fang Tsai",
        "email": "sungfang@google.com",
        "time": "Mon Apr 08 06:22:44 2019 -0700"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Mon Apr 08 06:22:44 2019 -0700"
      },
      "message": "Merge \"Revert \"Remove direct libgui reference from omx server side\"\" into qt-dev am: a759a72e88\nam: 55d28d70f1\n\nChange-Id: Icc605d03a515832ebed169ba3d9a6e3d8f3c5c1f\n"
    },
    {
      "commit": "a759a72e881357a802f703c745e88df75fe0927c",
      "tree": "1f8a620bf587a4e47cc38b61e50bd7f97ae38efb",
      "parents": [
        "de83aa7d657e4c0beaddc756d9da9f6d2ccb282d",
        "b4979c59d93a6ca2be7e65489fc39896bfdc2c96"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Mon Apr 08 13:04:10 2019 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Apr 08 13:04:10 2019 +0000"
      },
      "message": "Merge \"Revert \"Remove direct libgui reference from omx server side\"\" into qt-dev"
    },
    {
      "commit": "b4979c59d93a6ca2be7e65489fc39896bfdc2c96",
      "tree": "3da5a8d97ee8f37f4f480ad80104b6f77d3bcd87",
      "parents": [
        "482f60ccccc12e6afe24f9ba503496ce65d1ba43"
      ],
      "author": {
        "name": "Sung-fang Tsai",
        "email": "sungfang@google.com",
        "time": "Sun Apr 07 00:29:22 2019 +0000"
      },
      "committer": {
        "name": "Victor Chang",
        "email": "vichang@google.com",
        "time": "Mon Apr 08 10:32:03 2019 +0000"
      },
      "message": "Revert \"Remove direct libgui reference from omx server side\"\n\nThis reverts commit 482f60ccccc12e6afe24f9ba503496ce65d1ba43.\n\nReason for revert: b/130058749 camera recording hang\n\nBug: 130058749\nChange-Id: I358bc9c62c48328c01c8611c7e6f77d16affff54\n"
    },
    {
      "commit": "5e66e79ec60d0389fe025076dd0839bf695f1495",
      "tree": "a3282d17e6be64e8d1672231f1579277adc11fba",
      "parents": [
        "de83aa7d657e4c0beaddc756d9da9f6d2ccb282d"
      ],
      "author": {
        "name": "Robert Lee",
        "email": "lerobert@google.com",
        "time": "Wed Apr 03 18:37:15 2019 +0800"
      },
      "committer": {
        "name": "Robert Lee",
        "email": "lerobert@google.com",
        "time": "Mon Apr 08 06:53:01 2019 +0000"
      },
      "message": "audiopolicy: fix ring stream volume cannot apply when previewing ringtone\n\nUsing AUDIO_DEVICE_OUT_SPEAKER to replace AUDIO_DEVICE_OUT_SPEAKER_SAFE\nfor device match.\n\nBug: 129456342\nTest: volume can adjust while previewing ringtone\nChange-Id: I3015f811ac6d2e3f3cdd606f453348c4bc526935\nSigned-off-by: Robert Lee \u003clerobert@google.com\u003e\n"
    },
    {
      "commit": "91f90a9354be06b0d1db51310cb208e6b798c1cf",
      "tree": "66a54841173ee7302b9fb98269759d39de9000c6",
      "parents": [
        "2652b81af20310a483ed5deb9a04ff430897fdf5",
        "5c300010e7549f03952eade17c0ad7191a81318b"
      ],
      "author": {
        "name": "Nicholas Sauer",
        "email": "nicksauer@google.com",
        "time": "Fri Apr 05 22:15:58 2019 -0700"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Fri Apr 05 22:15:58 2019 -0700"
      },
      "message": "Merge \"Allow a --user param for cmd media.camera commands.\" into qt-dev am: de83aa7d65\nam: 5c300010e7\n\nChange-Id: I2f401bee2b9a8656dc548c3d12d01d7f6f9a1565\n"
    },
    {
      "commit": "58d15e4c533795e3c6ea6cb204a0f9cb30451a03",
      "tree": "24208a91f62058037775b5fa4e34ff2681357994",
      "parents": [
        "7164b9c03a74ea0fb2be823fb7d4a466c47940b8",
        "1e7ef6c7e543af8ef4f2f4b1090bd4c75be28394"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Fri Apr 05 20:45:12 2019 -0700"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Fri Apr 05 20:45:12 2019 -0700"
      },
      "message": "Merge \"audio flinger: fix cross deadlock in RecordThread loop\" into qt-dev am: 7915fe691f\nam: 1e7ef6c7e5\n\nChange-Id: If1e419e7f7b6264645ee4651038838b2658080c8\n"
    },
    {
      "commit": "ab84a90a66b0ecbe057ceb4ca9a19c7ccfa3e970",
      "tree": "878efc133ad5ca275fcd122db5d71fe33fc79769",
      "parents": [
        "20ab4966ed113fff32071af0fd48a883c25e9ab7",
        "9fc3bde1931f2ea871c30c545cf0edb814dd8c73"
      ],
      "author": {
        "name": "Chong Zhang",
        "email": "chz@google.com",
        "time": "Fri Apr 05 20:09:36 2019 -0700"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Fri Apr 05 20:09:36 2019 -0700"
      },
      "message": "Remove direct libgui reference from omx server side am: 482f60cccc\nam: 9fc3bde193\n\nChange-Id: I01b3cd7ebd70a82c907ee2ae0b92fef9f281913b\n"
    },
    {
      "commit": "de83aa7d657e4c0beaddc756d9da9f6d2ccb282d",
      "tree": "16b69a403defcb13690b7793bb4c882278f470f4",
      "parents": [
        "d114f841b8bb6a22a1a8576b8c49b54a564a5c22",
        "a362033b87bad8bacf3b9fe91cb251d2bb9b18d6"
      ],
      "author": {
        "name": "Nicholas Sauer",
        "email": "nicksauer@google.com",
        "time": "Sat Apr 06 01:42:21 2019 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Sat Apr 06 01:42:21 2019 +0000"
      },
      "message": "Merge \"Allow a --user param for cmd media.camera commands.\" into qt-dev"
    },
    {
      "commit": "7915fe691f728c7b70c80c03a2fc80c50627bd6d",
      "tree": "a1efd10135a734d1073651fc1c6e30576a429bb3",
      "parents": [
        "fbb1e4afedcebaa5d49a5c93ed3d929781cf1e8d",
        "cccbc765d39c2f017d6626b4c83758d853d156ea"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Fri Apr 05 23:28:37 2019 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Apr 05 23:28:37 2019 +0000"
      },
      "message": "Merge \"audio flinger: fix cross deadlock in RecordThread loop\" into qt-dev"
    },
    {
      "commit": "cccbc765d39c2f017d6626b4c83758d853d156ea",
      "tree": "75081f9ca82641ea9d514508e04e96d2c54bf26d",
      "parents": [
        "0e5a1b3bb64d9a5d38903770e018379856401efd"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Fri Apr 05 14:20:05 2019 -0700"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Fri Apr 05 14:20:05 2019 -0700"
      },
      "message": "audio flinger: fix cross deadlock in RecordThread loop\n\nFix a cross deadlock between thread and effect chain mutex introduced by\ncommit 446f4df5.\n\nBug: 130044136\nTest: start/stop audio capture for voice communication in 2 different apps\nChange-Id: I23bdbd203476d2bc0b3d8d87ab66e1a9c00f7bcd\n"
    },
    {
      "commit": "a362033b87bad8bacf3b9fe91cb251d2bb9b18d6",
      "tree": "262049d7b2ca869710ebde7777eab6541cb58bfb",
      "parents": [
        "6e38e1a2b74bd2ed304080b1dca1f77b1053dada"
      ],
      "author": {
        "name": "Nicholas Sauer",
        "email": "nicksauer@google.com",
        "time": "Wed Apr 03 14:05:17 2019 -0700"
      },
      "committer": {
        "name": "Nicholas Sauer",
        "email": "nicksauer@google.com",
        "time": "Fri Apr 05 19:08:31 2019 +0000"
      },
      "message": "Allow a --user param for cmd media.camera commands.\n\nThis allows testing on secondary users. For more information, please see go/aae-cts-on-u10\n\nbug: 126472822\nTest: Create and switch to secondary user.\n$ cts-tradefed run cts -a arm64-v8a -m CtsCameraTestCases -t android.hardware.camera2.cts.IdleUidTest\n\nand ...\n$ adb install testcases/CtsCameraTestCases.apk\nSuccess\n$ adb shell cmd media.camera get-uid-state android.camera.cts --user 10\nidle\n$ adb shell cmd media.camera set-uid-state android.camera.cts active --user 10\n$ adb shell cmd media.camera get-uid-state android.camera.cts --user 10\nactive\n$ adb shell cmd media.camera get-uid-state android.camera.cts --user 0\nidle\n$ adb shell cmd media.camera get-uid-state android.camera.cts\nidle\n$ adb shell cmd media.camera reset-uid-state android.camera.cts --user 10\n$ adb shell cmd media.camera get-uid-state android.camera.cts\nidle\n$ adb shell cmd media.camera get-uid-state android.camera.cts --user 10\nidle\n\nChange-Id: I7a5a3455d36ce6b95638ff13313f06e7e9b92feb\n"
    },
    {
      "commit": "482f60ccccc12e6afe24f9ba503496ce65d1ba43",
      "tree": "90e04135449e80434f0b399d0e33d91bfce1de20",
      "parents": [
        "6e38e1a2b74bd2ed304080b1dca1f77b1053dada"
      ],
      "author": {
        "name": "Chong Zhang",
        "email": "chz@google.com",
        "time": "Thu Mar 21 16:41:28 2019 -0700"
      },
      "committer": {
        "name": "Chong Zhang",
        "email": "chz@google.com",
        "time": "Fri Apr 05 18:12:10 2019 +0000"
      },
      "message": "Remove direct libgui reference from omx server side\n\n- Make mediacodec service/libstagefright_omx not dependent\non libgui. Server should only reference bqhelper (which\ncurrently still have a dependency on libgui, but could be\nremoved later as it\u0027s only used internally).\n\n- Make libmedia_omx not dependent on libgui by moving the\nIOMX wrapper code into a separately that\u0027s only used by\nthe platform.\n\n- Move ConsumerListener references in GraphicBufferSource\nto implementation only, so that other libs including\nGraphicBufferSource doesn\u0027t need to link libgui.\n\n- Remove bqhelper references from some client side libs.\n\n- Remove IOMX ipc related code, as IOMX interface is no\nlonger used for ipc. It\u0027s only used as an interface on\nclient side.\n\nbug: 129272021\ntest: builds;\natest CtsMediaTestCases -- --module-arg CtsMediaTestCases:size:small\n\nChange-Id: I49d80bf72eba325ee80b223d4a5ba7b0c1ab4d35\n"
    },
    {
      "commit": "5ac6a79a2fbc4b74cfcdbd7f42a72c0821552bd1",
      "tree": "c6c4f1c2f483150fef1f93fe6bac79f1147fbc93",
      "parents": [
        "04aeb89a85b03220ee948b77fd58b69a3e8dc5a6",
        "508ef398364daf34e2bc234d2223c469703734f6"
      ],
      "author": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Fri Apr 05 16:16:35 2019 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Apr 05 16:16:35 2019 +0000"
      },
      "message": "Merge \"Remove ICU from mediaextractor binary\""
    },
    {
      "commit": "27a355450007732dc23f3756c7a8343d3ac1e7b5",
      "tree": "5d764af5d9bbf1ee671dce2f02e335ab69e16c3b",
      "parents": [
        "61e8b2c74d4cbcaae5a134fd08ba55d1ef1af409",
        "ea725f9043e993d36ad042c7daadf59c1f24ba3b"
      ],
      "author": {
        "name": "Shuzhen Wang",
        "email": "shuzhenwang@google.com",
        "time": "Thu Apr 04 18:49:24 2019 -0700"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Thu Apr 04 18:49:24 2019 -0700"
      },
      "message": "Merge \"Camera1: Handle multiple logical cameras with same facing\" into qt-dev am: d6f5f351cc\nam: ea725f9043\n\nChange-Id: I697dc22e2d38faf0e87cd0ec387e7516e8474ac1\n"
    },
    {
      "commit": "94114a21c855fb7525cf47fcfe965bf0735e19f1",
      "tree": "a10bbc96b77cb71681a358fdb7913b54d47b5483",
      "parents": [
        "d233276ad591814829b6ccbd2d7577558522fe3f"
      ],
      "author": {
        "name": "Kevin Rocard",
        "email": "krocard@google.com",
        "time": "Mon Apr 01 19:38:23 2019 -0700"
      },
      "committer": {
        "name": "Kevin Rocard",
        "email": "krocard@google.com",
        "time": "Fri Apr 05 01:12:42 2019 +0000"
      },
      "message": "APC: Disable MMAP when a stream is to be captured\n\nAs MMAP does not support APC, it is disabled when a render loopback\npolicy is installed.\n\nTest: adb shell write_sine_callback -pl # mmap is used\n      adb shell audiorecorder  --target /data/file1.raw \u0026\n      adb shell write_sine_callback -pl # mmap is NOT used\nBug: 129948989\nChange-Id: Ia90c24953890de7e19fd99485bf760788f81126d\nSigned-off-by: Kevin Rocard \u003ckrocard@google.com\u003e\n(cherry picked from commit c1dde631401a9cda122cf3058a99e36274906801)\n"
    },
    {
      "commit": "508ef398364daf34e2bc234d2223c469703734f6",
      "tree": "577dcf27d4d89d54974c61cdaa31ae2e127cf046",
      "parents": [
        "0f56f0a9173e17173b408486ddc1aff401a1d8f2"
      ],
      "author": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Thu Apr 04 10:50:43 2019 -0700"
      },
      "committer": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Thu Apr 04 10:50:43 2019 -0700"
      },
      "message": "Remove ICU from mediaextractor binary\n\nBug: 123309740\nTest: manual, CTS\nChange-Id: I6bc764bd122decd141c88647832b12bbba8c597a\n"
    },
    {
      "commit": "38e119b73d432a0dc518b39638f08d9c8867dd5d",
      "tree": "d51f105e12ff40a73817f3b55a9f5e50d788cb57",
      "parents": [
        "0e5a1b3bb64d9a5d38903770e018379856401efd"
      ],
      "author": {
        "name": "Shuzhen Wang",
        "email": "shuzhenwang@google.com",
        "time": "Mon Oct 01 16:03:53 2018 -0700"
      },
      "committer": {
        "name": "Shuzhen Wang",
        "email": "shuzhenwang@google.com",
        "time": "Thu Apr 04 15:56:18 2019 +0000"
      },
      "message": "Camera1: Handle multiple logical cameras with same facing\n\nFor Camera1-HAL3 shim, the camera ID filtering logic is revised to\nhandle case of multiple logical cameras facing the same direction,\nand are backed by same/different set of physical camera IDs.\n\nExample 1 (all facing back):\nID1 \u003d ID3 + ID4\nID2 \u003d ID5 + ID6\n\nExample 2 (all facing back):\nID5 \u003d ID1 + ID2\nID6 \u003d ID3 + ID4\n\nIn both examples, only ID1 will be advertised to camera1 app.\n\nTest: Check cameras on devices with multiple logical cameras\nTest: Camera CTS\nBug: 113705942\nChange-Id: I76f370938b3311bbe7adcac8eddf8b6cf08e4571\n"
    },
    {
      "commit": "84d9e892c38b27158fdae920b3119bc614ff2347",
      "tree": "00f200a8e1f7760db02e251503742f0877ea5df7",
      "parents": [
        "04e3fe7364541507dd272c6f3ac457873822b25a",
        "c1dde631401a9cda122cf3058a99e36274906801"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Thu Apr 04 02:33:52 2019 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Apr 04 02:33:52 2019 +0000"
      },
      "message": "Merge \"APC: Disable MMAP when a stream is to be captured\""
    },
    {
      "commit": "c1dde631401a9cda122cf3058a99e36274906801",
      "tree": "0b54dbc55007123cab9b5af30f71c0c36e12786b",
      "parents": [
        "7795e4a3fda5623acbb8dd985150207642059218"
      ],
      "author": {
        "name": "Kevin Rocard",
        "email": "krocard@google.com",
        "time": "Mon Apr 01 19:38:23 2019 -0700"
      },
      "committer": {
        "name": "Kevin Rocard",
        "email": "krocard@google.com",
        "time": "Wed Apr 03 17:59:04 2019 -0700"
      },
      "message": "APC: Disable MMAP when a stream is to be captured\n\nAs MMAP does not support APC, it is disabled when a render loopback\npolicy is installed.\n\nTest: adb shell write_sine_callback -pl # mmap is used\n      adb shell audiorecorder  --target /data/file1.raw \u0026\n      adb shell write_sine_callback -pl # mmap is NOT used\nChange-Id: Ia90c24953890de7e19fd99485bf760788f81126d\nSigned-off-by: Kevin Rocard \u003ckrocard@google.com\u003e\n"
    },
    {
      "commit": "67336139290c89ac891f8899f70e78f0726e75eb",
      "tree": "450e7ca7132b4c6a4140e176a93441aa4b689eae",
      "parents": [
        "0f56f0a9173e17173b408486ddc1aff401a1d8f2",
        "83d17c208422b6c5df57716e9782925b0a787ee2"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Wed Apr 03 23:04:52 2019 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Apr 03 23:04:52 2019 +0000"
      },
      "message": "Merge \"audio policy: fix stream to volume source mapping\""
    },
    {
      "commit": "0f56f0a9173e17173b408486ddc1aff401a1d8f2",
      "tree": "e6f79e60306fca55ff7d2401d5ab5423f27da907",
      "parents": [
        "5bcf284e8177a2dfb58e01e8e1a88ec13165c29d",
        "b47712a9eb1843e25f19f78d015e19b1f6698a83"
      ],
      "author": {
        "name": "Christopher Ferris",
        "email": "cferris@google.com",
        "time": "Wed Apr 03 20:44:41 2019 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Apr 03 20:44:41 2019 +0000"
      },
      "message": "Merge \"Move codec and extractor to libc_scudo.\""
    },
    {
      "commit": "5bcf284e8177a2dfb58e01e8e1a88ec13165c29d",
      "tree": "76d439db32a3c18870170b140ba9f14ab8248afb",
      "parents": [
        "41618a66a853a441304bb8fdefcafc903b3ab27c",
        "74e01fa7d96b71952b32ec98f1ac352e6e74186b"
      ],
      "author": {
        "name": "Jean-Michel Trivi",
        "email": "jmtrivi@google.com",
        "time": "Wed Apr 03 19:59:00 2019 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Apr 03 19:59:00 2019 +0000"
      },
      "message": "Merge \"Audioflinger: tracks monitor OP_PLAY_AUDIO\""
    },
    {
      "commit": "a3176ff7be9e1ffee8cff2701f18a9b3d16205d2",
      "tree": "e4a1ed9e415fbc9e7df0a0aa00b1d9008357bc81",
      "parents": [
        "69d6cf3e59cae2e7f2fac015b17c9f6f1d1de041",
        "68e0df70cdd57dbe32f11b5de50dd83c6492d075"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Wed Apr 03 19:36:20 2019 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Apr 03 19:36:20 2019 +0000"
      },
      "message": "Merge \"Use package name, pid, uid to check permission of capturing hotword.\""
    },
    {
      "commit": "69d6cf3e59cae2e7f2fac015b17c9f6f1d1de041",
      "tree": "783db77b6af31f8ea6bcb3b0e0730ea6f6c2a49c",
      "parents": [
        "7eb548022e45ea1f91d88f43aabf7ff0013eaa88",
        "c6eacf4a4d0e2960e625a327ebf2c840f743ee6c"
      ],
      "author": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Wed Apr 03 19:21:17 2019 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Apr 03 19:21:17 2019 +0000"
      },
      "message": "Merge \"Update seccomp policy to support crash dumps\""
    }
  ],
  "next": "f1273c07a7b718504c1d0bbff5bcea4ef0379c38"
}
