)]}'
{
  "log": [
    {
      "commit": "599a092e344e00032cfbc56a7395910fc0439453",
      "tree": "f407b0699b42ce4f34e895918d88ba13e205a7fb",
      "parents": [
        "fb092d3b720923efaf0f9d4f4c16c57da6d657ac"
      ],
      "author": {
        "name": "Chong Zhang",
        "email": "chz@google.com",
        "time": "Wed Aug 14 13:15:32 2019 -0700"
      },
      "committer": {
        "name": "Chong Zhang",
        "email": "chz@google.com",
        "time": "Wed Aug 21 13:37:15 2019 -0700"
      },
      "message": "Add ResourceManager unit tests to presubmit\n\nbug: 138381810\nbug: 139440234\nChange-Id: Id6a447ca070322b21d1b07457c16a6a5e2a8a1fe\n"
    },
    {
      "commit": "fb092d3b720923efaf0f9d4f4c16c57da6d657ac",
      "tree": "c19f0a91dfe61a1e12a64cd9a2531f8af9872315",
      "parents": [
        "57eeeb00319e8f3c01d547bd0f4b5fc55338326b"
      ],
      "author": {
        "name": "Chong Zhang",
        "email": "chz@google.com",
        "time": "Mon Aug 12 09:45:44 2019 -0700"
      },
      "committer": {
        "name": "Chong Zhang",
        "email": "chz@google.com",
        "time": "Tue Aug 20 22:55:11 2019 +0000"
      },
      "message": "Add support for combining and remove individual resource\n\n- Fix ResourceManagerSerivce handling of adding same-type\nresource in multiple calls, combine entries with the same\n\u003ctype, subtype\u003e. This is not required in existing usage,\nbug could be required if we allow same type to be added\nincrementally (eg. memory usage).\n\n- Add api for removing some resources. Currently we can\nadd resources in multiple calls, but removeResource always\nremove all resources of that client. We need this to toggle\nbattery stat On/Off based on actual usage of the codec.\n\n- Add unit tests for the above.\n\nbug: 138381810\ntest: ResourceManagerService_test; CTS ResourceManangerTest.\n\nChange-Id: Icdba6c6b4c517755291668c52764169aac3071ea\n"
    },
    {
      "commit": "57eeeb00319e8f3c01d547bd0f4b5fc55338326b",
      "tree": "40e0bc82272071f7fc58227c2291e4fb3de8c7af",
      "parents": [
        "90f56b7ac7052d59a9aa9353457309c2d93e3f38",
        "ee33d64bf82f3781ab826863f69d089d0a7400da"
      ],
      "author": {
        "name": "Chong Zhang",
        "email": "chz@google.com",
        "time": "Tue Aug 20 22:54:37 2019 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Aug 20 22:54:37 2019 +0000"
      },
      "message": "Merge \"Report video battery on/off from mediaserver\" into qt-qpr1-dev"
    },
    {
      "commit": "90f56b7ac7052d59a9aa9353457309c2d93e3f38",
      "tree": "4122c6cfb7a66379b7370e3ab1165be89a8167ef",
      "parents": [
        "5f55524296edd32a00e848febff99b2849cef015",
        "847eaf44dd735b9c1c3c7648add3665bd639bd9a"
      ],
      "author": {
        "name": "Pawin Vongmasa",
        "email": "pawin@google.com",
        "time": "Fri Aug 16 14:49:16 2019 -0700"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Fri Aug 16 14:49:16 2019 -0700"
      },
      "message": "Add option to remove OMX components from IOmxStore\nam: 847eaf44dd\n\nChange-Id: I4e89d3dc810ab9077abb043ef3a3c3771ede0a27\n"
    },
    {
      "commit": "ee33d64bf82f3781ab826863f69d089d0a7400da",
      "tree": "0627c7b51438b3cbd882400331928646ad11dc5b",
      "parents": [
        "5f55524296edd32a00e848febff99b2849cef015"
      ],
      "author": {
        "name": "Chong Zhang",
        "email": "chz@google.com",
        "time": "Thu Aug 08 14:26:43 2019 -0700"
      },
      "committer": {
        "name": "Chong Zhang",
        "email": "chz@google.com",
        "time": "Wed Aug 14 17:13:24 2019 -0700"
      },
      "message": "Report video battery on/off from mediaserver\n\n    We can\u0027t track video stats accurately if it\u0027s reported from\n    app side MediaCodec. If the app dies, video stats get stuck\n    in On state forever. This can be easily triggered by forcefully\n    kill and app that uses MediaCodec from app side (instead of\n    through mediaserver\u0027s Recorder or Player service), eg.\n    launch GoogleCamera app and switch to Video tab, and kill it\n    from adb shell.\n\n    In order to track MediaCodec usage from apps we need to move\n    the battery stats reporting from MediaCodec into ResourceManager.\n\nbug: 138381810\ntest:\n1. test if app uses MediaCodec directly and it dies off, the video\n   off is received: launch GoogleCamera app, swipe to Video tab,\n   \"dumpsys batterystats --history\" and see +video; now adb shell\n   kill GoogleCamera, dumpsys should show -video.\n2. test app that uses MediaCodec through mediaserver: use Chrome\n   (which uses MediaPlayer) to play some website with video, kills\n   Chrome from adb shell, and check -video is received.\n   In anycase it shouldn\u0027t stuck in On state.\n3. ResourceManagerService_test\n\nChange-Id: I164b31681c4e72e8cce02342641dbec14b8df374\n(cherry picked from commit 47db2ff19c3ceb2d3b39ff9315a463984e55dec1)\n"
    },
    {
      "commit": "847eaf44dd735b9c1c3c7648add3665bd639bd9a",
      "tree": "e7098adb22159594a00c6e210acd3921574f2199",
      "parents": [
        "9c6f37fa98ae4b62949149686bde43319dbbca6f"
      ],
      "author": {
        "name": "Pawin Vongmasa",
        "email": "pawin@google.com",
        "time": "Wed Aug 14 10:28:29 2019 -0700"
      },
      "committer": {
        "name": "Pawin Vongmasa",
        "email": "pawin@google.com",
        "time": "Wed Aug 14 20:03:07 2019 +0000"
      },
      "message": "Add option to remove OMX components from IOmxStore\n\nTest: vts-tradefed run vts -m VtsHalMediaOmxStoreV1_0Host\n\nBug: 139111743\nChange-Id: Ica1e1619f53615f5e2363f7e7aec1831649631e2\n"
    },
    {
      "commit": "3ef81e1acc74da842b3689418f007267caddf99d",
      "tree": "fdf6a6f82a6d3b1a164f4e0eb603ef18278f8ff7",
      "parents": [
        "732af1892e74e716b7a96aea90079afa767bd8b9",
        "26c7997dea97345a81bcabd21fa07050c8ff0a57"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Fri Aug 02 22:19:07 2019 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Aug 02 22:19:07 2019 +0000"
      },
      "message": "Merge \"Camera: listen to provider instance names from hwservicemanager\" into qt-qpr1-dev"
    },
    {
      "commit": "26c7997dea97345a81bcabd21fa07050c8ff0a57",
      "tree": "3972c857ca6683491bc6ec10c9212dda7a922021",
      "parents": [
        "8454f90b4d71cf47dfcdb7e3268dc5cd20046d3a"
      ],
      "author": {
        "name": "Yin-Chia Yeh",
        "email": "yinchiayeh@google.com",
        "time": "Tue Jun 25 10:53:03 2019 -0700"
      },
      "committer": {
        "name": "Yin-Chia Yeh",
        "email": "yinchiayeh@google.com",
        "time": "Tue Jul 30 13:27:51 2019 -0700"
      },
      "message": "Camera: listen to provider instance names from hwservicemanager\n\nAlso remove the expected argument in addProviderLocked method as\nwe now can query from device manifest for instance names.\n\nTest: manually modify Pixel3 manifest to test, CTS\nBug: 136010319\nMerged-In: Ib57fd84ad8f22aac2a82920e03148cff2592daae\nChange-Id: Ib57fd84ad8f22aac2a82920e03148cff2592daae\n"
    },
    {
      "commit": "44302851c3081d244093d4ad1d03ddfbca6c71f4",
      "tree": "5828c1b68188939157cac506d069d47be68f4b52",
      "parents": [
        "b94ff28527e7d2a826992d83de1961114bab136f",
        "589171c80afab0f515e99044aca15be9ee24d16b"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Tue Jul 30 20:12:27 2019 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Jul 30 20:12:27 2019 +0000"
      },
      "message": "Merge \"audio policy: fix capture policy for accessibility\" into qt-r1-dev"
    },
    {
      "commit": "589171c80afab0f515e99044aca15be9ee24d16b",
      "tree": "651759d6970794163cc7b7f91a8f6466ffb2ee71",
      "parents": [
        "1c74123afb488b39c850e3b897fc921a9396bfb1"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Thu Jul 25 18:04:29 2019 -0700"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Fri Jul 26 09:45:29 2019 -0700"
      },
      "message": "audio policy: fix capture policy for accessibility\n\nDo not consider Accessibility services when determining\nlastest active capture client. As an Accessibility service\ncapturing does not silence other captures, it should not\nprevent another client from being selected as the latest active.\n\nBug: 135806801\nTest: Start capture with Recorder app, activate Voice Access\nChange-Id: I864be785752f27201d45ce24f95013de6391dbd6\n"
    },
    {
      "commit": "ea0bf32a189b3998880181118caf6016ed4b7d0f",
      "tree": "ef434308dcec9ac2e17d0d5ba750cb535c0faf1b",
      "parents": [
        "1c74123afb488b39c850e3b897fc921a9396bfb1"
      ],
      "author": {
        "name": "Emilian Peev",
        "email": "epeev@google.com",
        "time": "Thu Jul 25 15:12:39 2019 -0700"
      },
      "committer": {
        "name": "Emilian Peev",
        "email": "epeev@google.com",
        "time": "Thu Jul 25 15:38:53 2019 -0700"
      },
      "message": "Camera: Update depth photo container item MIME type\n\nReplace the item MIME type with value supported\nby the dynamic depth specification.\n\nBug: 138399780\nTest: runtest -x\ncts/tests/camera/src/android/hardware/camera2/cts/ImageReaderTest.java\n-m testDynamicDepth\n\nChange-Id: Ib51dd69e6de7da3269eccfa6b671fe95a269b4d6\n"
    },
    {
      "commit": "c6af90d5efad45b652bbd40d63324efe01da4341",
      "tree": "4616bcade90442d7e589973a853a966688477324",
      "parents": [
        "c2a3a82419327c6ffbad9711ed07415341eca00d"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Fri Jul 19 10:31:39 2019 -0700"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Fri Jul 19 10:48:09 2019 -0700"
      },
      "message": "audio policy: fix capture policy for HOTWORD source\n\nDo not consider Assistant capturing with HOTWORD source\nwhen determining lastest active capture client. As assistant\ncapturing for HOTWORD does not silence other captures, it should not\nprevent another client from being selected as the latest active.\n\nBug: 135806801\nTest: Start capture with Recorder app, place in background and trigger\nfalse OK G detection\n\nChange-Id: Ic17bfd70675ef749d6a678d067112b1dbd205746\n"
    },
    {
      "commit": "c2a3a82419327c6ffbad9711ed07415341eca00d",
      "tree": "005a3560290a9682742136605f02b1250ccfbb30",
      "parents": [
        "d2d66abd1aa5fcb2fad9cc43e397015d5580f058"
      ],
      "author": {
        "name": "Ricardo Garcia",
        "email": "rago@google.com",
        "time": "Wed Jul 17 14:29:12 2019 -0700"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Wed Jul 17 23:17:10 2019 +0000"
      },
      "message": "Fix for untimely suspension of Dynamics Processing\n\nAdded exception to avoid suspending Dynamics Processing Effect.\n\nTest: Manual testing with popular apps\nBug: 134852575\nChange-Id: I1ffee570984897304169b30b7af417f61f762ffa\n"
    },
    {
      "commit": "f00fd722c8e06c22e55615e7b2604eb32656bebd",
      "tree": "bade541a934dc4ab73fdea77128bbb230ff2edbc",
      "parents": [
        "7ec1eafeaaa5238e50c369a0c52691ba2af71a47",
        "7bd2939d6ce0574f01771b8569b1d76faf2b09b7"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Tue Jul 16 17:57:27 2019 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Jul 16 17:57:27 2019 +0000"
      },
      "message": "Merge \"audio policy: fix mmap capture disconnect\" into qt-r1-dev"
    },
    {
      "commit": "7bd2939d6ce0574f01771b8569b1d76faf2b09b7",
      "tree": "492504cedcaa1c4afd57db5d273b1e36f81cfd5e",
      "parents": [
        "e5e116d0a945c330c0f42ea857076db81c397036"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Sat Jul 13 09:32:47 2019 -0700"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Sat Jul 13 09:32:47 2019 -0700"
      },
      "message": "audio policy: fix mmap capture disconnect\n\nForce close mmap input streams when a capture device is\nconnected to force disconnect callback to client.\n\nBug: 137311579\nTest: capture with oboetester and connect headset\nChange-Id: Iafe939247fa565e2424b40afacdb79a31b8955b7\n"
    },
    {
      "commit": "441ed65bc852b3a27f9265e56d2411da62a780e5",
      "tree": "da829115081fdd71e51a0b8b13187b44f9068a34",
      "parents": [
        "e84253d7e3925c2404b7c76def6878740db124b2"
      ],
      "author": {
        "name": "Jean-Michel Trivi",
        "email": "jmtrivi@google.com",
        "time": "Thu Jul 11 14:55:16 2019 -0700"
      },
      "committer": {
        "name": "Jean-Michel Trivi",
        "email": "jmtrivi@google.com",
        "time": "Thu Jul 11 22:08:24 2019 +0000"
      },
      "message": "AudioPolicy: do not cap a11y volume during call screening\n\n  Add accessibility playback as exemption for volume capping\nduring call screening.\n\nBug: 133879660\nTest: enable Talkback, receive a call, screen it, touch responses icons,\nverify labels are read\n\nChange-Id: I661a544261ef57e439b3eb8cf3d1dde1c31ac303\n"
    },
    {
      "commit": "7a7e63456bcdba32ea41180d53fc9ecafba9c484",
      "tree": "714623a21f7d950fd638320810fe1538373cffe6",
      "parents": [
        "4c6d99520c95386e5a4f4a94aafe9c63053ae734"
      ],
      "author": {
        "name": "Shuzhen Wang",
        "email": "shuzhenwang@google.com",
        "time": "Fri May 31 16:28:21 2019 -0700"
      },
      "committer": {
        "name": "Shuzhen Wang",
        "email": "shuzhenwang@google.com",
        "time": "Tue Jul 09 16:15:09 2019 -0700"
      },
      "message": "Camera: Filter out NIR cameras for camera1 API\n\nThis is to reduce application confusion when switching between back and\nfront cameras.\n\nTest: Observe dumpsys on a phone with NIR camera device\nBug: 133141567\nChange-Id: I0c11b99fc3a0304d54562548d109df8c56ba1db1\n"
    },
    {
      "commit": "ca343cb6c17454dbaf41fbaba9ef90474265b819",
      "tree": "b074cfb5411b9f0a20e07bf4e3d7480028dfc7be",
      "parents": [
        "6d5ee512f5d184fea6c5d11070c8230d39447cfd",
        "ae59ab3159097828a42e6cef4b35891f9e75a3ff"
      ],
      "author": {
        "name": "Yin-Chia Yeh",
        "email": "yinchiayeh@google.com",
        "time": "Wed Jul 03 18:49:23 2019 -0700"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Wed Jul 03 18:49:23 2019 -0700"
      },
      "message": "Merge \"Camera: fix format overriden logic\" into qt-dev\nam: ae59ab3159\n\nChange-Id: I2303a7112ae1c08e169e837732c1aeb769d25091\n"
    },
    {
      "commit": "947c0f18f5f0836f745ac97e19ae1e9d1e29b6be",
      "tree": "fb2e83e91c22f3216cfd38f582af4d98749640f2",
      "parents": [
        "91eaf16f58f27fba8d963b90c172f28ad6b9c12f"
      ],
      "author": {
        "name": "Jean-Michel Trivi",
        "email": "jmtrivi@google.com",
        "time": "Tue Jul 02 09:28:16 2019 -0700"
      },
      "committer": {
        "name": "Jean-Michel Trivi",
        "email": "jmtrivi@google.com",
        "time": "Tue Jul 02 22:36:37 2019 +0000"
      },
      "message": "Audio policy: fix HwModuleCollection::getDeviceDescriptor\n\n  The deprecated method AudioManager.isBluetoothA2dpOn() calls\ngetDeviceConnectionState on APM with an empty address, which\ncaused HwModuleCollection::getDeviceDescriptor to set an empty\naddress on the DeviceDescriptor for the currently connected\nA2DP device. This method is called by MediaRouter.\n  When the address was reset, the java listener for audio device\nconnection monitoring was reporting the connection of an A2DP\ndevice with an empty address, which in turn caused AvrcpManager\nto behave as if the audio device connection failed.\n  If MediaRouter called isBluetoothA2dpOn() before AvrcpManager\nreceived its called for device connection, the error would occur.\n\nBug: 132416679\nTest: call isBluetoothA2dpOn() and check for valid address in dumpsys media.audio_policy\nTest: atest AudioServiceHostTest#testInjectForRecord ; atest AudioHostTest ; atest AudioPlaybackCaptureTest\nChange-Id: I1370edbbca46657506a990855d06a176f07c54d3\n"
    },
    {
      "commit": "9066766c0f6fc1c9282023070de2abacaa25a6df",
      "tree": "4484bcdfea9726e072ec7c56eb4317950ff742f8",
      "parents": [
        "9694a99645a42c23d489ce605e5cea4fdc0e1936"
      ],
      "author": {
        "name": "Yin-Chia Yeh",
        "email": "yinchiayeh@google.com",
        "time": "Mon Jul 01 15:45:00 2019 -0700"
      },
      "committer": {
        "name": "Yin-Chia Yeh",
        "email": "yinchiayeh@google.com",
        "time": "Tue Jul 02 11:00:01 2019 -0700"
      },
      "message": "Camera: fix format overriden logic\n\nOriginal logic was comparing an overridden format int, switch\nto use a const original format.\n\nTest: partner device, Pixel 3 CTS\nBug: 136456900\nChange-Id: I03d6e190770ee05e40446c417e323f546fdc2689\n"
    },
    {
      "commit": "d4e179b95ae90aa5d6698bdd50d018908da6950e",
      "tree": "6a1b6e67ed1fe2956dd8153767d35e1465b7ceb7",
      "parents": [
        "5146b3556d7ce5fd926ce9dc769569816d3efc40",
        "99fd097ae6b9542051917270e6d2a92ae707da4a"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Fri Jun 28 08:25:46 2019 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Jun 28 08:25:46 2019 +0000"
      },
      "message": "Merge \"Camera: reduce long inflight request list spam\" into qt-r1-dev"
    },
    {
      "commit": "99fd097ae6b9542051917270e6d2a92ae707da4a",
      "tree": "405d316732cb67bbb5d8d85ed9dd9528b9268c2d",
      "parents": [
        "a5a6788d8eff3c8808e8816055f0fca5a873b950"
      ],
      "author": {
        "name": "Yin-Chia Yeh",
        "email": "yinchiayeh@google.com",
        "time": "Thu Jun 27 14:22:44 2019 -0700"
      },
      "committer": {
        "name": "Yin-Chia Yeh",
        "email": "yinchiayeh@google.com",
        "time": "Thu Jun 27 14:22:44 2019 -0700"
      },
      "message": "Camera: reduce long inflight request list spam\n\nBy checking the expected duration for all inflight requests to\nfinish and only log when it takes more than a threshold (5 secs)\nto process all inflight requests and the list is long.\n\nTest: manual testing\nBug: 135927862\nChange-Id: Iaa2c593f1e69f63b1da7d35d73c696de3510cd2c\n"
    },
    {
      "commit": "e30c6c001dd8831ae84dc1939d0236167f316503",
      "tree": "854aa3203954438856c639f3878f1b021a9d1109",
      "parents": [
        "418653c613941453f3745496497eefc5a3d6dcbe",
        "eab904559f8c248787898783e442e92ffc53b529"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Wed Jun 26 21:58:45 2019 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Jun 26 21:58:45 2019 +0000"
      },
      "message": "Merge \"audioflinger: fix VoIP volume for fast track\" into qt-r1-dev"
    },
    {
      "commit": "418653c613941453f3745496497eefc5a3d6dcbe",
      "tree": "0d00441e39413e19ae352047b2bd0d26d18cbe5a",
      "parents": [
        "58b1638dfe92ec92c4aa93581efcd19584e87d83",
        "5bf11bf8ffb548c87fe409b6859c390e335a118e"
      ],
      "author": {
        "name": "Jayant Chowdhary",
        "email": "jchowdhary@google.com",
        "time": "Wed Jun 26 21:20:04 2019 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Jun 26 21:20:04 2019 +0000"
      },
      "message": "Merge \"cameraserver: Fix logging for vendor clients in connectDevice\" into qt-r1-dev"
    },
    {
      "commit": "eab904559f8c248787898783e442e92ffc53b529",
      "tree": "62c63db70c0c1c3df4cb1370612f25a33ab058bb",
      "parents": [
        "91c9dcb862ce28e2a1ca9ff8bf17ad9df0bd88e2"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Mon Jun 24 15:17:46 2019 -0700"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Tue Jun 25 16:23:02 2019 -0700"
      },
      "message": "audioflinger: fix VoIP volume for fast track\n\nAlso use audio HAL volume APIs for fast tracks opened on a\nspecific VoIP RX output. Previous implementation was only\nconsidering regular tracks.\n\nFix regular track implementation to send volume before it is altered by\neffect volume controller if present.\nAlso only reflect stream and master volume in volume sent to HAL:\ntrack and shaper volumes are still applied by mixer.\n\nBug: 133829194\nTest: VoIP call\nChange-Id: Id5025a1f67df0eab7391056715047a23429e0f02\n"
    },
    {
      "commit": "5bf11bf8ffb548c87fe409b6859c390e335a118e",
      "tree": "1cf0aecc7ebe3ac1b0b383222b4f5c6f58f752bd",
      "parents": [
        "174084011ca8b593a8cf35412928517b9e864be9"
      ],
      "author": {
        "name": "Jayant Chowdhary",
        "email": "jchowdhary@google.com",
        "time": "Mon Jun 24 19:42:56 2019 -0700"
      },
      "committer": {
        "name": "Jayant Chowdhary",
        "email": "jchowdhary@google.com",
        "time": "Tue Jun 25 11:01:02 2019 -0700"
      },
      "message": "cameraserver: Fix logging for vendor clients in connectDevice\n\nBug: 135658628\n\nTest: GCA; auth\n\nChange-Id: I57c60f36461534c66d0c6eaa5bbe04f76a976dcb\nSigned-off-by: Jayant Chowdhary \u003cjchowdhary@google.com\u003e\n"
    },
    {
      "commit": "62a6173c5443f9726b914ede43b3c2e0fd643128",
      "tree": "932fd27e4e895ba76a9b98623fedf4dc63ed25ca",
      "parents": [
        "a426cf1c3d42d2e17212bd0aa5fbfe7517ad3284",
        "94c98021b7e0ea614d92a1d1ea8bf163de9136bd"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Sat Jun 22 03:16:26 2019 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Sat Jun 22 03:16:26 2019 +0000"
      },
      "message": "Merge \"Camera: Destroy jpeg handle in \u0027encodeGrayscaleJpeg\u0027\" into qt-dev"
    },
    {
      "commit": "a426cf1c3d42d2e17212bd0aa5fbfe7517ad3284",
      "tree": "28688ba181fa2c42a44e113fa7be1e6d5a83483e",
      "parents": [
        "239ff11cdb463c4d1559f9a1a31c041b94c8b921",
        "fad001d05d2a928d6196978ba94adf95f0297244"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Fri Jun 21 17:10:00 2019 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Jun 21 17:10:00 2019 +0000"
      },
      "message": "Merge \"audio policy: mute call RX when SCO volume is 0\" into qt-dev"
    },
    {
      "commit": "23f4d6cc618576ac53da4ce9e761e9bee3109333",
      "tree": "96fa896900c3cf2aaab10f74d91cc95cf38dd812",
      "parents": [
        "0963d443b054ad3a83afbee1035f2d7a9db6086d"
      ],
      "author": {
        "name": "Ray Essick",
        "email": "essick@google.com",
        "time": "Thu Jun 20 10:16:37 2019 -0700"
      },
      "committer": {
        "name": "Ray Essick",
        "email": "essick@google.com",
        "time": "Thu Jun 20 10:16:37 2019 -0700"
      },
      "message": "Enable count-based expiration for media metrics\n\nin addition to the time-based expiration, enable count based expiration\nand set it to 2000 records, about 5x the daily average. Caps the memory\nfootprint.\n\nBug: 135552978\nTest: boot, enough traffic to force expirations\nChange-Id: Ide96df24b00e8f115905678800c782f29a91bcba\n"
    },
    {
      "commit": "94c98021b7e0ea614d92a1d1ea8bf163de9136bd",
      "tree": "788292b06ccba866f790469bbcbfcb1d762509f8",
      "parents": [
        "a69eacc42ca98e7da08efaac1426c691be0a85b2"
      ],
      "author": {
        "name": "Emilian Peev",
        "email": "epeev@google.com",
        "time": "Wed Jun 19 09:11:51 2019 -0700"
      },
      "committer": {
        "name": "Emilian Peev",
        "email": "epeev@google.com",
        "time": "Wed Jun 19 13:23:19 2019 -0700"
      },
      "message": "Camera: Destroy jpeg handle in \u0027encodeGrayscaleJpeg\u0027\n\nMake sure \u0027jpeg_destroy_compress()\u0027 is always called\nbefore leaving \u0027encodeGrayscaleJpeg()\u0027.\nAdditionally fix misspelling of \u0027intrinsic\u0027.\n\nBug: 135622974\nTest: atest\ncts/tests/camera/src/android/hardware/camera2/cts/StillCaptureTest.java#testDynamicDepth\n--generate-baseline\u003d12\nChange-Id: I55c1f86881ba05aac6aac6981df5fcb276c9d4da\n"
    },
    {
      "commit": "63655808d78f8e6219fd0915671cca7d87363bbc",
      "tree": "504a8cf81bf181208b6d0dffe81a42b076aa25ea",
      "parents": [
        "7061679b69cd2b3fa2da058c725b14c2a3672d26",
        "5fee0f2b7c6fc2ac8ca7c908aef25864ce8894a2"
      ],
      "author": {
        "name": "Steven Moreland",
        "email": "smoreland@google.com",
        "time": "Fri Jun 14 22:54:21 2019 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Jun 14 22:54:21 2019 +0000"
      },
      "message": "Merge \"libhidltransport users user libhidlbase\" into qt-dev"
    },
    {
      "commit": "fad001d05d2a928d6196978ba94adf95f0297244",
      "tree": "0875e33154326ff4b05afea3ba315710d4407fc5",
      "parents": [
        "e81a326d90dfce1249917b796f69b48fe1c59971"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Tue Jun 11 19:17:57 2019 -0700"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Fri Jun 14 15:13:32 2019 -0700"
      },
      "message": "audio policy: mute call RX when SCO volume is 0\n\nSet voice volume to 0 when SCO volume index is 0 to\nallow muting RX audio. when index is not 0, voice volume\nis set to max to allow volume control by headset as before.\n\nBug: 111195322\nTest: check call volume with SCO headset\nChange-Id: I90466b01a9899929cd3e6fb1ac0a4985099497fc\n"
    },
    {
      "commit": "e81a326d90dfce1249917b796f69b48fe1c59971",
      "tree": "ff2150258ac552a5ac5d23a626d4821be434cf36",
      "parents": [
        "b365706b2675fcc16eb14d89db5c3736170c7dd5",
        "6ede98f9b3e3e1988f401d79b625ead653027ccc"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Wed Jun 12 01:02:33 2019 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Jun 12 01:02:33 2019 +0000"
      },
      "message": "Merge \"audioservice: add RTT mode observer\" into qt-dev"
    },
    {
      "commit": "6ede98f9b3e3e1988f401d79b625ead653027ccc",
      "tree": "2306e3b551752f70ec01a6d8ed87824743c2ef81",
      "parents": [
        "e0092766d214720c1fd22b8c08ccc7ceeaf4a700"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Tue Jun 11 14:50:30 2019 -0700"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Tue Jun 11 14:55:25 2019 -0700"
      },
      "message": "audioservice: add RTT mode observer\n\nEnable audio capture by the Assistant when RTT is ON during a call\nsimilarly to when an accessibility service is in the foreground.\n\nAlso remove log when permission checked for hotword\nand audio output capture fail as those checks are now done\nsystematically.\n\nAlso do not check permission to bypass interruption policy if\nbypass flags are not set.\n\nBug: 132976361\nTest: use voice input during a call with RTT enabled.\nChange-Id: Iff45b0816dac889262ec29ea115f74dea4dc6b6d\n"
    },
    {
      "commit": "584d868a6bfc0a51ff4c0b6e9ea2b5b9895d3240",
      "tree": "dfb8a7c7a03280efa17a995369cd3a2bf6706617",
      "parents": [
        "7a92b009df1f4cc5a98078f1c2808524e237b7bc",
        "f9b4eb9e3f74ee03adccdf471d9e1073b6bc9d8c"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Tue Jun 11 17:36:54 2019 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Jun 11 17:36:54 2019 +0000"
      },
      "message": "Merge \"Camera: Compare old and new overrides for finishConfigure\" into qt-dev"
    },
    {
      "commit": "f9b4eb9e3f74ee03adccdf471d9e1073b6bc9d8c",
      "tree": "6b40d02f452498ca27294677f68b11ebac9994ac",
      "parents": [
        "9c8dfd599caf7c8b727b90601da4fc8160d23ab4"
      ],
      "author": {
        "name": "Shuzhen Wang",
        "email": "shuzhenwang@google.com",
        "time": "Mon Jun 10 11:06:01 2019 -0700"
      },
      "committer": {
        "name": "Shuzhen Wang",
        "email": "shuzhenwang@google.com",
        "time": "Mon Jun 10 22:48:33 2019 -0700"
      },
      "message": "Camera: Compare old and new overrides for finishConfigure\n\nWith the new dataSpace/format override logic, during\nfinishConfiguration, we shouldn\u0027t check mDataSpaceOverride flag anymore\nbecause now mDataSpaceOverride will be true for reconfigure.\n\nInstead, we should check if the new override is the same as old\noverride.\n\nTest: testPrepare on HAL device with dataSpace override\nBug: 134800141\nChange-Id: I1ddc258100dfd7e3c2cc86f9e476d8d52c710e3f\n"
    },
    {
      "commit": "ed95748f36d6440fad826ca2d01331697c5e4215",
      "tree": "6df4961c85d7c76fbb6cfaaa48e623d247fd0b81",
      "parents": [
        "e0092766d214720c1fd22b8c08ccc7ceeaf4a700",
        "4e5f402253592726d05f4864b2f30b740abf15fc"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Mon Jun 10 23:55:45 2019 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Jun 10 23:55:45 2019 +0000"
      },
      "message": "Merge \"Fix remote-submix not found for MIX_TYPE_RECORDERS LOOPBACK\" into qt-dev"
    },
    {
      "commit": "4e5f402253592726d05f4864b2f30b740abf15fc",
      "tree": "985acb69bb0c83784662238236e2a9bfd4e1adf7",
      "parents": [
        "90d1d53862638210d848ddedef2600aae35337d3"
      ],
      "author": {
        "name": "Kevin Rocard",
        "email": "krocard@google.com",
        "time": "Sat Jun 08 02:32:21 2019 -0700"
      },
      "committer": {
        "name": "Kevin Rocard",
        "email": "krocard@google.com",
        "time": "Mon Jun 10 14:06:11 2019 -0700"
      },
      "message": "Fix remote-submix not found for MIX_TYPE_RECORDERS LOOPBACK\n\n[Context]\nWhen a LOOPBACK dynamic audio policy mix PLAYER/RECORDER\nis registered, first the REMOTE_SUBMIX device that will be\nused by the app to capture/play respectively is activated.\n\nEg a mix RECORDER (used to inject audio to apps recording),\nwhen registered will activate an OUT_REMOTE_SUBMIX.\n\nThen the app can open a record/playback track on this\nREMOTE_SUBMIX, which will trigger the other end of the pipe\nto be activated.\n\nFollowing this the playback/Record Tracks that match the\nmix will be routed to the IN/OUT REMOTE_SUBMIX.\n\n[Example for an app FUU]\n 1) App FUU register Playback/record mix\n    2) APM activates out/in remote submix\n 3) App FUU opens track to out/in remote submix\n    4) APM activates in/out remote submix\n 5) tracks matching mix are redirected to the out/in remote submix\n\nWhen an OUT_REMOTE_SUBMIX is activated, it tries to check if it matches\na mix, if it does, it saves the output in the mix (in mOutput).\nThis output is then used to find a matching mix output in\ngetOutputForAttr(). If a mix has no output is is considered inactive.\n\nNote that IN_REMOTE_SUBMIX do not save their input in the mix, the\ninput is queried by APM each time in its mAvailableInputDevices.\n\n[Issue]\nThe issue is that in step (2), when an OUT_REMOTE_SUBMIX is\nactivated (thus for a MIX_TYPE_RECORDERS), no mix is matched because the\nmix is of type IN_REMOTE_SUBMIX as it will be used to route AudioTracks\nin step (5).\nThus no mix output is found in getOutputForAttr and the step (3) fails.\n\nThis is a recent regression as previously the type was not checked when\nlooking up for a mix in step (1).\n\nThe Change-Id of the patch that caused the regression is:\nI4dc7f23bef19a7d47afc2998102da07dde41fbca, its sha1 is:\n679172768d86e29a47b9e15dd56776694128cf59\n\n[Workaround]\nFor now, given the release timing, implement a minimal fix that restore\nthe previous behavior for the OUT_REMOTE_SUBMIX output save lookup.\nAka, make sure to query for a IN_REMOTE_SUBMIX mix in step (2).\n\nStep (4) is fine as the mix type is the same as the REMOTE_SUBMIX type.\n\nAs IN_REMOTE_SUBMIX do not attempt to save their output in the mix, no\nissue is present on this code path.\n\nA proper fix needs to be implemented on master, preferably by having the\nsame device save behaviour on both mix type.\n\nBug: 134068143\nTest: Wifi calling call screening\nTest: atest AudioPlaybackCaptureTest AudioHostTest\nChange-Id: I1547948ae412dbdeb2d85cc62bf18f7ac5f1efc0\nSigned-off-by: Kevin Rocard \u003ckrocard@google.com\u003e\n"
    },
    {
      "commit": "5fee0f2b7c6fc2ac8ca7c908aef25864ce8894a2",
      "tree": "6983a1bf9b3f51ac216509f257719312632acec7",
      "parents": [
        "e0092766d214720c1fd22b8c08ccc7ceeaf4a700"
      ],
      "author": {
        "name": "Steven Moreland",
        "email": "smoreland@google.com",
        "time": "Mon Jun 10 13:35:00 2019 -0700"
      },
      "committer": {
        "name": "Steven Moreland",
        "email": "smoreland@google.com",
        "time": "Mon Jun 10 13:35:06 2019 -0700"
      },
      "message": "libhidltransport users user libhidlbase\n\nlibhidltransport symbols are being moved into libhidlbase in order to\noptimize linking/memory usage. libhidltransport will no longer be\nrequired in the future (however removing references to it will come\nseparately).\n\nBug: 134961554\nTest: boot\nChange-Id: Ie8b9b03a53ae1f5672ce2565550768b4bcd321ee\n"
    },
    {
      "commit": "8caf80a23a6abdfdea466e424679b176c4c649bc",
      "tree": "061c39cd7f365101d458dc6c0e982c48a89b41e8",
      "parents": [
        "ca77ca26c12734407f12581854701b1d255cbba3",
        "9265395f3429d1c324e66a91a6a42cf5525b4498"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Fri Jun 07 00:05:50 2019 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Jun 07 00:05:50 2019 +0000"
      },
      "message": "Merge \"Camera: Use original format and dataSpace for reconfigure\" into qt-dev"
    },
    {
      "commit": "b61526c6a080af7bc062b231c52d1b7e6545868d",
      "tree": "1d5916e12e4d7a3ee2493dca2185677431fbab0d",
      "parents": [
        "46238cd0395a0cb759bb1370356a8ac0fb2fa72b"
      ],
      "author": {
        "name": "Jayant Chowdhary",
        "email": "jchowdhary@google.com",
        "time": "Mon May 13 19:37:42 2019 -0700"
      },
      "committer": {
        "name": "Jayant Chowdhary",
        "email": "jchowdhary@google.com",
        "time": "Wed Jun 05 16:51:08 2019 -0700"
      },
      "message": "cameraserver: Stop appOps camera reporting for vendor clients.\n\nSince vendor native clients don\u0027t have package names, appOps reporting\nwould be inaccurate for them. In order to avoid that, we stop appOps\nreporting for vendor clients.\n\nBug: 132718220\n\nTest: AImageReaderVendorTest, use hal client for cameraserver, GCA(sanity)\n\nChange-Id: Ie6f80e8ab530aa755df57f8d25d9f1a15a20d7f7\nSigned-off-by: Jayant Chowdhary \u003cjchowdhary@google.com\u003e\n"
    },
    {
      "commit": "9265395f3429d1c324e66a91a6a42cf5525b4498",
      "tree": "e7142391b15465d7174e2c0ab0a93c7f7423447e",
      "parents": [
        "90d1d53862638210d848ddedef2600aae35337d3"
      ],
      "author": {
        "name": "Shuzhen Wang",
        "email": "shuzhenwang@google.com",
        "time": "Tue May 07 15:11:43 2019 -0700"
      },
      "committer": {
        "name": "Shuzhen Wang",
        "email": "shuzhenwang@google.com",
        "time": "Wed Jun 05 15:23:19 2019 -0700"
      },
      "message": "Camera: Use original format and dataSpace for reconfigure\n\nStarting from HAL device version 3.5, the format and dataSpace for\nIMPLEMENTATION_DEFINED pixel format uses original instead of overridden\nvalues.\n\nThis makes HAL interface behavior consistent in that HAL doesn\u0027t need to\ndistinguish between first-time configureStreams and subsequent\nreconfigure.\n\nTest: Camera CTS and partner testing\nBug: 131864007\nChange-Id: Ie5fdc7e9b6c11c1c96a069262b9458455855bcef\n"
    },
    {
      "commit": "333ab963ed35ee99efa076db100e70a45e6ffff9",
      "tree": "ccab1ba155378b4e57996049a08afa4a74ef5171",
      "parents": [
        "b472cf075b83686fe30254a3b58f60e5866a667a"
      ],
      "author": {
        "name": "Andy Hung",
        "email": "hunga@google.com",
        "time": "Tue May 28 20:23:35 2019 -0700"
      },
      "committer": {
        "name": "Andy Hung",
        "email": "hunga@google.com",
        "time": "Wed May 29 09:53:04 2019 -0700"
      },
      "message": "VolumeShaper: Ensure consistent observable state when muted\n\nPrior to this patch, VolumeShaper state for direct\nand offloaded tracks did not appear to advance for master mute\nand all tracks did not appear to advance for stream mute.\n\nTest: atest android.media.cts.VolumeShaperTest with and without muting\nBug: 133354056\nChange-Id: I589f4e0837124a185509718f1175e06102a1be96\n"
    },
    {
      "commit": "679172768d86e29a47b9e15dd56776694128cf59",
      "tree": "f96e84cd5dcf55079976366eb1d8c8be210262dd",
      "parents": [
        "5592ee268507a8ee90fd374530e55a6279dbf0de"
      ],
      "author": {
        "name": "Jean-Michel Trivi",
        "email": "jmtrivi@google.com",
        "time": "Wed May 22 11:54:37 2019 -0700"
      },
      "committer": {
        "name": "Jean-Michel Trivi",
        "email": "jmtrivi@google.com",
        "time": "Fri May 24 07:27:52 2019 -0700"
      },
      "message": "APM: make AudioPolicyMixCollection inherit from Vector\n\n  Modify AudioPolicyMixCollection to inherit from Vector instead\nof KeyedVector so all so the collection of mixes stays in the same\norder as the mixes were added.\n  Also make the mix selection take the deviceType into consideration,\nnot just the address to enable the same address to be associated to\ndifferent devices.\n\nBug: 131090322\nTest: see bug for multi bus scenario\nTest: atest AudioPlaybackCaptureTest\n\nChange-Id: I4dc7f23bef19a7d47afc2998102da07dde41fbca\n"
    },
    {
      "commit": "5592ee268507a8ee90fd374530e55a6279dbf0de",
      "tree": "2a2ef3e15e9073a81c23fdf667b128963de98f5b",
      "parents": [
        "f9b3d532eb7422446d7efbd54b15fa87ea60d68a"
      ],
      "author": {
        "name": "François Gaffie",
        "email": "francois.gaffie@renault.com",
        "time": "Wed May 22 08:00:05 2019 +0200"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Wed May 22 18:57:28 2019 -0700"
      },
      "message": "audiopolicy: fix source client lifecycle\n\nUpon startAudioSource -\u003e connectAudioSource, the source client\nis attached to the output.\nUpon stopAudioSource -\u003e disconnectAudioSource, the source client is\nnever removed.\n\nAs a result, if the same client is trying to call startAudioSource again,\nasthe client is already attached, getClient will lead to bailing out in\nconnectAudioSource and the source will not be started.\nThe stopAudioSource if called would claim that the client refcount is already 0.\n\nAny following call to start would fail again on outputDesc-\u003estart as invalid\nas the profile fails on canStartNewIo.\n\nThis CL fixes this issue by removing the client source desc on disconnectAudioSource.\n\nBug: 133367802\nTest: build \u0026 run\n\t    AudioPolicyEmulatorTests --gtest_filter\u003d*AudioSourceEffectTest*\n      multiple consecutive times.\n\nChange-Id: I78370be248ff24cf4135d51f709d965c5bfae4e8\nSigned-off-by: François Gaffie \u003cfrancois.gaffie@renault.com\u003e\n"
    },
    {
      "commit": "3be0ffbd9d2804e7cfcd425b80c6835d5cc5e7af",
      "tree": "0631d94e73c487bc9f1b441648dc39d1bcd18e62",
      "parents": [
        "f01afea93046d442f0ed7517fcac0d9be125365d",
        "9066ad3846deb54fe2bba86b25a934d5bf6033d7"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Wed May 22 00:23:26 2019 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed May 22 00:23:26 2019 +0000"
      },
      "message": "Merge \"audioflinger: fix App Ops for services\" into qt-dev"
    },
    {
      "commit": "9066ad3846deb54fe2bba86b25a934d5bf6033d7",
      "tree": "c23c4f7093b5f9775f4284471b913e14c1dc028b",
      "parents": [
        "86bd6afc79a46d586be816172f3cef7e7c89dc09"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Mon May 20 14:40:10 2019 -0700"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Tue May 21 14:28:58 2019 -0700"
      },
      "message": "audioflinger: fix App Ops for services\n\nDo not check app ops for audio playback for services in\ngeneral, not just for audioserver or root user.\n\nBug: 133178934\nTest: audio smoke tests\nChange-Id: I3a34e6418dc750cc12ed35d465ca8874b0ce0f73\n"
    },
    {
      "commit": "688abaa2865dab9ba955a6543a965d10e4c506db",
      "tree": "260fed212b84c3ce6afcaded95707082c66b7dcc",
      "parents": [
        "86bd6afc79a46d586be816172f3cef7e7c89dc09"
      ],
      "author": {
        "name": "Chong Zhang",
        "email": "chz@google.com",
        "time": "Fri May 17 16:32:23 2019 -0700"
      },
      "committer": {
        "name": "Chong Zhang",
        "email": "chz@google.com",
        "time": "Tue May 21 12:03:30 2019 -0700"
      },
      "message": "Enumerate all hevc encoders to find one that support CQ @ 512x512 size\n\nbug: 132905160\ntest: ImageReaderTest#testHeic\nChange-Id: I497b203f7e21299eb4e322af4d4c5c925cf5a48a\n"
    },
    {
      "commit": "d68496deee058c6c03c35859b2548bfee3393a62",
      "tree": "02b4f7eade9369f92f807b2191ef3409b1accffa",
      "parents": [
        "4f1b69083719207f8cde2a6bf22bd3ebef80fdd8",
        "f8e28fb940d725afb26a37c1964fbd1fcdb50fe8"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Mon May 20 02:09:36 2019 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon May 20 02:09:36 2019 +0000"
      },
      "message": "Merge \"Camera: fix acquire fence FD double close\" into qt-dev"
    },
    {
      "commit": "b7a422adffb463c62617895ed8d1d46188f08aa4",
      "tree": "32a49fbf6c353351c67e609fe3765ac23eac3357",
      "parents": [
        "a37a0d1295dc0f4336c1eac745a493f8eca5670f",
        "22fcda29e5982a052d2f6c6ce312d1f65edc7920"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Sat May 18 01:01:40 2019 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Sat May 18 01:01:40 2019 +0000"
      },
      "message": "Merge \"audio policy: fix camera shutter sound\" into qt-dev"
    },
    {
      "commit": "a37a0d1295dc0f4336c1eac745a493f8eca5670f",
      "tree": "aeed0c3767140e0638e2a0dabfea723f225bc7b8",
      "parents": [
        "302652eab7ad68a89af1dcf06c190492e941b8c1",
        "097090588fa2d4beebb7defb9481f6e990b55c98"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Sat May 18 00:22:00 2019 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Sat May 18 00:22:00 2019 +0000"
      },
      "message": "Merge \"Pull xaac codec from build\" into qt-dev"
    },
    {
      "commit": "302652eab7ad68a89af1dcf06c190492e941b8c1",
      "tree": "3913775585af1ef99e5ba38fd5970de392e9ff6b",
      "parents": [
        "5f31276553dea24e56b4a4feae6edfd939e07d5e",
        "11648852d7e9b92d36879bb2ed6d9953751121c5"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Fri May 17 23:57:00 2019 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri May 17 23:57:00 2019 +0000"
      },
      "message": "Merge \"Camera: cleanup some dead code\" into qt-dev"
    },
    {
      "commit": "22fcda29e5982a052d2f6c6ce312d1f65edc7920",
      "tree": "5212b9474c047e7f68b73e46b9d63b60103541de",
      "parents": [
        "4fc900d75601247d565a736decb36381165f6d83"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Fri May 17 16:28:47 2019 -0700"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Fri May 17 16:28:47 2019 -0700"
      },
      "message": "audio policy: fix camera shutter sound\n\nFix regression in camera shutter sound when system stream\nvolume is 0.\n\nBug: 132696227\nTest: repro steps in bug.\nTest: regressions when camera sound is enforced\nChange-Id: I76b4a5ee041f97c5f771c003bf4f99327d797096\n"
    },
    {
      "commit": "5f31276553dea24e56b4a4feae6edfd939e07d5e",
      "tree": "7ded9ca6848e3599bfaf4ae96288b332de59acda",
      "parents": [
        "1dc04e4127742b47a700c41915637967ae41c37a",
        "5ee9984930753d3231f457be1bbcdba8910b7666"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Fri May 17 21:20:44 2019 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri May 17 21:20:44 2019 +0000"
      },
      "message": "Merge \"Camera: Allow out of order ZSL shutter vs regular shutter\" into qt-dev"
    },
    {
      "commit": "f8e28fb940d725afb26a37c1964fbd1fcdb50fe8",
      "tree": "c45ffdcd968213bb90e658a4d75957921a31903b",
      "parents": [
        "11648852d7e9b92d36879bb2ed6d9953751121c5"
      ],
      "author": {
        "name": "Yin-Chia Yeh",
        "email": "yinchiayeh@google.com",
        "time": "Thu May 16 11:46:54 2019 -0700"
      },
      "committer": {
        "name": "Yin-Chia Yeh",
        "email": "yinchiayeh@google.com",
        "time": "Fri May 17 14:17:58 2019 -0700"
      },
      "message": "Camera: fix acquire fence FD double close\n\nThis patch fixes several issues:\n* Change the timing the acquire fence FD is closed: we used to\n  close the FD when the buffer is returned from HAL. This patch\n  changes that to after the request is sent to HAL (or failed\n  to send to HAL)\n* Cleanup inflight buffer map if the request fails to be sent to\n  HAL\n* With the CL, the acquire fence FDs are now closed by\n    - HalInterface::processBatchCaptureRequests if the HIDL\n      processCaptureRequests call succeeds and HAL is running\n      in binderized mode (for passthrough mode the FD is owned\n      by HAL if the HIDL call succeeds)\n    - Camera3Device::cleanupFailedRequests otherwise\n\nTest: Camera CTS tests\nBug: 132594861\nChange-Id: I5f67ae9e7b8008738bd9a24246d754a6a3669b0c\n"
    },
    {
      "commit": "097090588fa2d4beebb7defb9481f6e990b55c98",
      "tree": "09419a10ef41bf5086e71d95afbf0c851105447b",
      "parents": [
        "efb768921e7566c41b2d01eb0fccdff4d2445445"
      ],
      "author": {
        "name": "Ray Essick",
        "email": "essick@google.com",
        "time": "Fri May 17 11:04:03 2019 -0700"
      },
      "committer": {
        "name": "Ray Essick",
        "email": "essick@google.com",
        "time": "Fri May 17 11:04:03 2019 -0700"
      },
      "message": "Pull xaac codec from build\n\nremove references that pull xaac codec into the build; the codec is\nstill considered experimental and not to be included in product.\n\nBug: 131342273\nTest: compilation\nChange-Id: Ic7ff3871c88555bd006c0c79beebada3732a8b8e\n"
    },
    {
      "commit": "b57bf1667082ddc329828895559c46edb1997cae",
      "tree": "884eb3f2f34f760499966ac644a039ea50842260",
      "parents": [
        "b8378c37cc7b837a7069c2483cbf0d6589520b0c",
        "97bab91e628cb0b8029a422939e2ceef83bf6a7b"
      ],
      "author": {
        "name": "Oliver Nguyen",
        "email": "olivernguyen@google.com",
        "time": "Thu May 16 23:05:00 2019 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu May 16 23:05:00 2019 +0000"
      },
      "message": "Merge \"Mark setAppState as pure virtual.\" into qt-dev"
    },
    {
      "commit": "11648852d7e9b92d36879bb2ed6d9953751121c5",
      "tree": "2828a179c15a51d0eb1094a886673c9232eba764",
      "parents": [
        "e445c2817a0996d6ced1c24e3a9d8532fd7ee51a"
      ],
      "author": {
        "name": "Yin-Chia Yeh",
        "email": "yinchiayeh@google.com",
        "time": "Thu May 16 10:42:54 2019 -0700"
      },
      "committer": {
        "name": "Yin-Chia Yeh",
        "email": "yinchiayeh@google.com",
        "time": "Thu May 16 10:42:54 2019 -0700"
      },
      "message": "Camera: cleanup some dead code\n\nWe no longer have code path running non-HIDL interface.\nThis cleanup also simplifies some logic needed for fixing\nb/132594861\n\nBug: 132594861\nTest: Camera CTS\nChange-Id: If15ea359a1a59c5a8e7a59818ce4db8120000bc4\n"
    },
    {
      "commit": "efb768921e7566c41b2d01eb0fccdff4d2445445",
      "tree": "666750fdb5c1d24b41f96f052276f839f791d21e",
      "parents": [
        "a6d436ca2741657360882e54d868937127a430a8",
        "9924d5ad544cabbc1de06ab6871aaa696f90b2a0"
      ],
      "author": {
        "name": "Greg Kaiser",
        "email": "gkaiser@google.com",
        "time": "Thu May 16 16:04:33 2019 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu May 16 16:04:33 2019 +0000"
      },
      "message": "Merge \"mediacodec: Add a couple 32-bit permissions\" into qt-dev"
    },
    {
      "commit": "a6d436ca2741657360882e54d868937127a430a8",
      "tree": "c841cb6827dcc9b8b208cf4255bd63bf6df9731c",
      "parents": [
        "6de2d24bd940e74141a418fe5f6ad395e77a784e",
        "9a645a9355f697182bd11ba7fbdddae7e0b13708"
      ],
      "author": {
        "name": "Carter Hsu",
        "email": "carterhsu@google.com",
        "time": "Thu May 16 01:56:41 2019 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu May 16 01:56:41 2019 +0000"
      },
      "message": "Merge \"audio: fix index of input vector\" into qt-dev"
    },
    {
      "commit": "9a645a9355f697182bd11ba7fbdddae7e0b13708",
      "tree": "d4f4457defd2de1bab4d11e96b4120efdfcf9489",
      "parents": [
        "f95c698108b608e6ebf86e7450a9a2464e3ae264"
      ],
      "author": {
        "name": "Carter Hsu",
        "email": "carterhsu@google.com",
        "time": "Wed May 15 12:15:32 2019 +0800"
      },
      "committer": {
        "name": "Carter Hsu",
        "email": "carterhsu@google.com",
        "time": "Thu May 16 01:56:03 2019 +0000"
      },
      "message": "audio: fix index of input vector\n\nBug: 131666114\nTest: manual\nChange-Id: I7de750aa2f212e6b7e6296ce2caf544a0188902b\nSigned-off-by: Carter Hsu \u003ccarterhsu@google.com\u003e\n"
    },
    {
      "commit": "9924d5ad544cabbc1de06ab6871aaa696f90b2a0",
      "tree": "adcac8ac15d79957a96cd994d82dc02dd9331736",
      "parents": [
        "e445c2817a0996d6ced1c24e3a9d8532fd7ee51a"
      ],
      "author": {
        "name": "Greg Kaiser",
        "email": "gkaiser@google.com",
        "time": "Wed May 15 16:00:14 2019 -0700"
      },
      "committer": {
        "name": "Greg Kaiser",
        "email": "gkaiser@google.com",
        "time": "Wed May 15 16:00:14 2019 -0700"
      },
      "message": "mediacodec: Add a couple 32-bit permissions\n\nWe add permissions for \u0027readlink\u0027 and \u0027open\u0027 for 32-bit targets.\nThese are used when grabbing bug reports, at least on some\n32-bit devices.\n\nTest: Tried this change on a 32-bit device that was getting fatal\naborts when taking bugreports, and confirm we no longer get fatal\naborts.\nBug: 132807384\n\nChange-Id: I526217e9201d2a709baa2a6d9f078244578d678d\n"
    },
    {
      "commit": "97bab91e628cb0b8029a422939e2ceef83bf6a7b",
      "tree": "7b9a8dba80475149dfc7df42e927ea14facd72f2",
      "parents": [
        "00ffd9e0c4cd97529b77248eae5c819a7d3f8a13"
      ],
      "author": {
        "name": "Oliver Nguyen",
        "email": "olivernguyen@google.com",
        "time": "Tue May 07 13:12:20 2019 -0700"
      },
      "committer": {
        "name": "Oliver Nguyen",
        "email": "olivernguyen@google.com",
        "time": "Mon May 13 21:07:46 2019 +0000"
      },
      "message": "Mark setAppState as pure virtual.\n\nFixes build issues with -O0, due to missing vtable entries.\n\nBug: 116873221\nTest: Build with -O0\nTest: make NATIVE_COVERAGE\u003dtrue COVERAGE_PATHS\u003dframeworks/av\nChange-Id: Ice06940f4ccc55609abf0d820f9b3c6d4e43d2c6\n(cherry picked from commit 24fe48807f4f2d86677459bb5b1a9ca2cac757ff)\n"
    },
    {
      "commit": "68f7b18e8edaabf6c6c67b350d3126c11ba590ff",
      "tree": "d4e8c5fe2157ef8843fb31baa6b49744ca294254",
      "parents": [
        "d4e2ab1785d813aa336479a57de634f30fb13a92",
        "429844193f7149f3b642f1f260a7f20398eb3778"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Sat May 11 02:47:56 2019 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Sat May 11 02:47:56 2019 +0000"
      },
      "message": "Merge \"audio policy: add permission check for privileged attributes flags\" into qt-dev"
    },
    {
      "commit": "d4e2ab1785d813aa336479a57de634f30fb13a92",
      "tree": "eb7ee11fab376ca0fc7bf75c7490e6b508ccdb89",
      "parents": [
        "eb99a27ffabbdf1795c063bd630f437a5d446052",
        "6e16157202e8c273d3c84be001e68bf7b13c9ee8"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Sat May 11 02:46:59 2019 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Sat May 11 02:46:59 2019 +0000"
      },
      "message": "Merge \"audio policy: fix channel match rule for input profiles\" into qt-dev"
    },
    {
      "commit": "eb99a27ffabbdf1795c063bd630f437a5d446052",
      "tree": "88316801946b87bd13b78bdfe65f6b4a8f6a6beb",
      "parents": [
        "b09f621af65848cb1c9336091d857ba2a8e6fdf8",
        "38bbaf299649d1addcaec105417af0aeca4c2051"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Sat May 11 01:07:26 2019 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Sat May 11 01:07:26 2019 +0000"
      },
      "message": "Merge \"Camera: Prune depth samples with low confidence\" into qt-dev"
    },
    {
      "commit": "6e16157202e8c273d3c84be001e68bf7b13c9ee8",
      "tree": "ec83ddec857579985597cad7ffd8be10c25f187c",
      "parents": [
        "459e59820f8914a10c1d015fb4fa09b723cacaca"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Fri May 10 15:53:08 2019 -0700"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Fri May 10 17:44:09 2019 -0700"
      },
      "message": "audio policy: fix channel match rule for input profiles\n\nModify channel mask match rule for input profiles in order to\nfavor profiles with positional masks and less than 2 channels.\nThis reflects the audio HAL convention to not list index channel\nmasks for less than 2 channels.\n\nBug: 131943885\nTest: repro steps in bug.\nChange-Id: I85e06f3afc2833b6aa7d52675bfd1ffda524fbcf\n"
    },
    {
      "commit": "b09f621af65848cb1c9336091d857ba2a8e6fdf8",
      "tree": "d0affd474b5da86022507ff88fbb82f9a748b4da",
      "parents": [
        "b14e4295b2cd6aebb77d67108dc6b639f24d25d2",
        "e2f34be1b70a564a9e7866934f0b626e98be999f"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Fri May 10 23:20:58 2019 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri May 10 23:20:58 2019 +0000"
      },
      "message": "Merge \"APM: uid-device affinity: fix for multiple concurrent apps\" into qt-dev"
    },
    {
      "commit": "429844193f7149f3b642f1f260a7f20398eb3778",
      "tree": "96fc240567b6c528242f4a88582b587e7ba09c48",
      "parents": [
        "459e59820f8914a10c1d015fb4fa09b723cacaca"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Thu May 09 17:57:03 2019 -0700"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Fri May 10 15:38:12 2019 -0700"
      },
      "message": "audio policy: add permission check for privileged attributes flags\n\nAdd check for privileged permission if attributes\nflags BYPASS_INTERRUPTION_POLICY or BYPASS_MUTE are set.\n\nBug: 131873101\nTest: Manual smoke tests for audio playback.\nTest: Emergency cell broadcast in\nChange-Id: I073cf669f606f0d081ff5c8d19f39b5e12efe297\n"
    },
    {
      "commit": "b14e4295b2cd6aebb77d67108dc6b639f24d25d2",
      "tree": "2934e7eae30ff36f48c14575f39f0f7bacb09650",
      "parents": [
        "432e0fd4a48678e34d7c63e3d9b8514d1fb08be6",
        "c2cba12587834d9f9b7d076d740e8abb2cca3d51"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Fri May 10 22:35:53 2019 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri May 10 22:35:53 2019 +0000"
      },
      "message": "Merge \"Camera: Add logical camera related metadata in dumpsys\" into qt-dev"
    },
    {
      "commit": "432e0fd4a48678e34d7c63e3d9b8514d1fb08be6",
      "tree": "b0511a6f72d7b53c6b56dc0b3d5d7ef98e62a69d",
      "parents": [
        "d7f726d950aa842f7c835510d795057c97d8efb4",
        "ae22b4843b3cfcbbf6fdbc21e60f1bd0c1d1f763"
      ],
      "author": {
        "name": "Andy Hung",
        "email": "hunga@google.com",
        "time": "Fri May 10 22:07:11 2019 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri May 10 22:07:11 2019 +0000"
      },
      "message": "Merge \"AudioFlinger: Do not permit fast patch tracks if not compatible\" into qt-dev"
    },
    {
      "commit": "38bbaf299649d1addcaec105417af0aeca4c2051",
      "tree": "05470f6ea595f0d78f4dc2a813fc18b74da8d80c",
      "parents": [
        "d7f726d950aa842f7c835510d795057c97d8efb4"
      ],
      "author": {
        "name": "Emilian Peev",
        "email": "epeev@google.com",
        "time": "Fri May 10 12:58:18 2019 -0700"
      },
      "committer": {
        "name": "Emilian Peev",
        "email": "epeev@google.com",
        "time": "Fri May 10 14:55:08 2019 -0700"
      },
      "message": "Camera: Prune depth samples with low confidence\n\nDepth samples with low confidence can skew the\nnear/far values and impact the range inverse coding.\nAvoid using such samples when searching for the near\nand far points and clamp their values if necessary.\n\nBug: 132248813\nTest: Camera CTS\nChange-Id: I7dc134b50e46c664f9fc8750b9b9b37c416c9afe\n"
    },
    {
      "commit": "c2cba12587834d9f9b7d076d740e8abb2cca3d51",
      "tree": "29657a65fcad27f15d13e9773185cb0fa13ad17a",
      "parents": [
        "34a740d5360edd1f0bfd6a13b4d75667f550a512"
      ],
      "author": {
        "name": "Shuzhen Wang",
        "email": "shuzhenwang@google.com",
        "time": "Thu May 17 18:10:24 2018 -0700"
      },
      "committer": {
        "name": "Shuzhen Wang",
        "email": "shuzhenwang@google.com",
        "time": "Fri May 10 17:57:31 2019 +0000"
      },
      "message": "Camera: Add logical camera related metadata in dumpsys\n\nAdd below logical camera support to dumpsys:\n- Physical camera id to stream info.\n- Physical camera request/result metadata.\n- Physical camera metadata in tag monitor.\n\nAlso fixed an issue of missing vendor tags in physical metadata.\n\nTest: Run physical streams and observe dumpsys\nBug: 111940580\nChange-Id: I02889b213ff5e7ec29506c0483ef40de9d107ccb\n"
    },
    {
      "commit": "1526ab3ea008ffbe967d56dea2bfe6f1199b9c97",
      "tree": "fba50f593158321276d87cdf58fccd227fcd8dce",
      "parents": [
        "d023624cd9d9b16171a7673a19c14d55d1b2ede4",
        "c728a42d4f9f03f74b901fc7dd7fba1bc06579e9"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Fri May 10 17:33:29 2019 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri May 10 17:33:29 2019 +0000"
      },
      "message": "Merge changes Idbea7883,Ie49cec34 into qt-dev\n\n* changes:\n  extractor: load extractors on boot, not on request.\n  Revert \"Make tombstone in the child process on loading failure.\"\n"
    },
    {
      "commit": "e2f34be1b70a564a9e7866934f0b626e98be999f",
      "tree": "e57d0b82ebd689f5734c8bedd84ecbe091d3dd72",
      "parents": [
        "3350096bf8e52b2d96f7b7ba95642d92c05e8f09"
      ],
      "author": {
        "name": "Jean-Michel Trivi",
        "email": "jmtrivi@google.com",
        "time": "Thu May 09 12:31:06 2019 -0700"
      },
      "committer": {
        "name": "Jean-Michel Trivi",
        "email": "jmtrivi@google.com",
        "time": "Fri May 10 09:52:56 2019 -0700"
      },
      "message": "APM: uid-device affinity: fix for multiple concurrent apps\n\nAudio mix rules that contain both a match and exclude for a uid\n  or usage are ignored for routing evaluation. The implementation\n  of the uid-device affinity caused uid matches and exclusions to\n  be added to any mixes, causing previously valid mixes to be\n  discarded in the routing logic.\nThe fix consists in implementing the uid-device affinity by only\n  applying uid exclusions on mixes that:\n  a/ are compatible with the concept (mixes of players that are\n     render only),\n  b/ do not route to the selected devices\n  c/ do not have a uid match rule (such mixes are already exclusive\n     to the uid to match)\n  d/ do not already have a uid exclusion for the uid\nFix removeUidDeviceAffinities() that skipped the wrong mixes.\n\nBug: 124319394\nBug: 131180578\nTest: atest AudioHostTest#testUidDeviceAffinity\nChange-Id: I813c4cfb15956e56599740948775c32562266c21\n"
    },
    {
      "commit": "b904fe4799f1c239ef1170b016022929dd5766cb",
      "tree": "6ceaca0c0e1861ea3f39f53d4a65e7a4a056526d",
      "parents": [
        "2b7127f46d5987907cbb1edaf26d20f305b685fa",
        "04ed046665ff8466b061eccf63e21fde10508441"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Fri May 10 03:06:19 2019 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri May 10 03:06:19 2019 +0000"
      },
      "message": "Merge \"AudioPolicy: Improve logging on Remote submix errors\" into qt-dev"
    },
    {
      "commit": "04ed046665ff8466b061eccf63e21fde10508441",
      "tree": "316394a2d114e1b45e4e79cf4c3734162f3b84e2",
      "parents": [
        "48aa740fb62459d02b9f23e27205c51d37f971d8"
      ],
      "author": {
        "name": "Kevin Rocard",
        "email": "krocard@google.com",
        "time": "Thu May 02 17:53:24 2019 -0700"
      },
      "committer": {
        "name": "Kevin Rocard",
        "email": "krocard@google.com",
        "time": "Fri May 10 01:31:29 2019 +0000"
      },
      "message": "AudioPolicy: Improve logging on Remote submix errors\n\nBug: 131064451\nTest: atest AudioPlaybackCaptureTest\nChange-Id: I13e662514de11e66f7ca145b320f351640a55ddb\nSigned-off-by: Kevin Rocard \u003ckrocard@google.com\u003e\n"
    },
    {
      "commit": "ae22b4843b3cfcbbf6fdbc21e60f1bd0c1d1f763",
      "tree": "91ebed531eb0e24fbe9d9fc0ad9577a4c337e80f",
      "parents": [
        "e905b6b18738572062e9c30735539836af683643"
      ],
      "author": {
        "name": "Andy Hung",
        "email": "hunga@google.com",
        "time": "Thu May 09 15:38:55 2019 -0700"
      },
      "committer": {
        "name": "Andy Hung",
        "email": "hunga@google.com",
        "time": "Thu May 09 17:02:49 2019 -0700"
      },
      "message": "AudioFlinger: Do not permit fast patch tracks if not compatible\n\nTest: atest AudioPlaybackCaptureTest\nBug: 132346038\nChange-Id: I67939ed7f98c546d41148d36764d93723353c893\n"
    },
    {
      "commit": "2b7127f46d5987907cbb1edaf26d20f305b685fa",
      "tree": "1a8d0f0606fa1fff13811ce75d6afe05bc7c5405",
      "parents": [
        "ceb7cc1f61d7475a2eeba807dfb5272fa0f5c035",
        "6ce27e5ffa056948b506bf7320a9f9c961150684"
      ],
      "author": {
        "name": "Ray Essick",
        "email": "essick@google.com",
        "time": "Thu May 09 23:37:35 2019 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu May 09 23:37:35 2019 +0000"
      },
      "message": "Merge \"connect mediametrics service to statsd\" into qt-dev"
    },
    {
      "commit": "459e59820f8914a10c1d015fb4fa09b723cacaca",
      "tree": "4b8431e59a45fcfac23fe93ee8d15bfdd3b775c0",
      "parents": [
        "b34bd48605d3ff17398139853d1709f54f388560",
        "2dab03030c95b40902e66b81a247738e375ebcf9"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Thu May 09 22:45:08 2019 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu May 09 22:45:08 2019 +0000"
      },
      "message": "Merge \"audioflinger: honor flag AUDIO_FLAG_BYPASS_INTERRUPTION_POLICY\" into qt-dev"
    },
    {
      "commit": "b34bd48605d3ff17398139853d1709f54f388560",
      "tree": "4a3449045fb8ae0a0ee06e833b1ca9887471f63d",
      "parents": [
        "48aa740fb62459d02b9f23e27205c51d37f971d8",
        "c578a50c9d54e18441ffea41ce81eefbb17360ff"
      ],
      "author": {
        "name": "Jayant Chowdhary",
        "email": "jchowdhary@google.com",
        "time": "Thu May 09 22:10:48 2019 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu May 09 22:10:48 2019 +0000"
      },
      "message": "Merge \"cameraservice: re-map oom_adj scores and states of native vendor clients.\" into qt-dev"
    },
    {
      "commit": "3daf5d9146b74f3c03b1e2bd72bab547962ec351",
      "tree": "f5cc8fc321b61644487eccd71a72ccb242333732",
      "parents": [
        "486194f79edc78ef99f0f1d29ec02e9277bd20ac"
      ],
      "author": {
        "name": "Lajos Molnar",
        "email": "lajos@google.com",
        "time": "Wed May 08 22:34:49 2019 -0700"
      },
      "committer": {
        "name": "Lajos Molnar",
        "email": "lajos@google.com",
        "time": "Wed May 08 22:35:53 2019 -0700"
      },
      "message": "media: include softomx plugin in omx HAL service\n\nBug: 132213171\nChange-Id: I1a35db1344701a7e125e45543b4282b572a28182\n"
    },
    {
      "commit": "486194f79edc78ef99f0f1d29ec02e9277bd20ac",
      "tree": "89b8d125ad2bc293f5fabdb58f535f900c59265b",
      "parents": [
        "9794a84308b31f6e17915cb29c99282f4b75cd11",
        "c1de2dfe8602f10ed3086ab601b626bec632b198"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Thu May 09 03:48:36 2019 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu May 09 03:48:36 2019 +0000"
      },
      "message": "Merge \"Fix NPE when trying to get input device for attributes.\" into qt-dev"
    },
    {
      "commit": "2dab03030c95b40902e66b81a247738e375ebcf9",
      "tree": "cd140cffff1b7ff1c7e35f0d3d56479bfef054d7",
      "parents": [
        "af0b1c1b5cd67cafa81dbcd1ccb7eb68821173f9"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Wed May 08 18:15:55 2019 -0700"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Wed May 08 18:19:49 2019 -0700"
      },
      "message": "audioflinger: honor flag AUDIO_FLAG_BYPASS_INTERRUPTION_POLICY\n\ncommit 74e01fa7 did not bypass app ops policy when flag\nAUDIO_FLAG_BYPASS_INTERRUPTION_POLICY is set.\n\nBug: 131873101\nTest: repro steps in bug\nChange-Id: Idbce26cfdcddbb7a2ae8702ce3d135ef5a69f047\n"
    },
    {
      "commit": "34a2d4c80d002751435e0ab552e9513608e36438",
      "tree": "7e2f228f2630415f4e7fa71a8a717f603e141711",
      "parents": [
        "e6f3293b77b38867f553987e24dc82ee004071af",
        "d0cce2ebcb9e4f95729d1f5da447f345428a8315"
      ],
      "author": {
        "name": "Carter Hsu",
        "email": "carterhsu@google.com",
        "time": "Thu May 09 00:49:10 2019 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu May 09 00:49:10 2019 +0000"
      },
      "message": "Merge \"audio: correct the boundary of soundtrigger index\" into qt-dev"
    },
    {
      "commit": "c1de2dfe8602f10ed3086ab601b626bec632b198",
      "tree": "68241794ce067005b2770a31b232588ecb4c33fc",
      "parents": [
        "a8cc6d418bdf459a0c0f79326b09faa45645850c"
      ],
      "author": {
        "name": "jiabin",
        "email": "jiabin@google.com",
        "time": "Tue May 07 14:26:40 2019 -0700"
      },
      "committer": {
        "name": "jiabin",
        "email": "jiabin@google.com",
        "time": "Wed May 08 15:19:13 2019 -0700"
      },
      "message": "Fix NPE when trying to get input device for attributes.\n\n1. Return error when remote submix device is null. Remote submix device\ncould be null in some case, such as device address error. Returning\nerror to avoid native crash.\n2. Unregister policy mix if set device connection fails. In that case,\nget input device could fail when policy mix is not found.\n\nBug: 131906484\nTest: Manually\nChange-Id: I03ab2bf217341b672c14adfba96d92ad9b453b01\n"
    },
    {
      "commit": "c578a50c9d54e18441ffea41ce81eefbb17360ff",
      "tree": "c77c416a2119d2396d349ecdd4bb3c054100f0d1",
      "parents": [
        "4714c214a0fa5a85f6f8b98c7a6c2339b6a847d1"
      ],
      "author": {
        "name": "Jayant Chowdhary",
        "email": "jchowdhary@google.com",
        "time": "Wed May 08 10:57:54 2019 -0700"
      },
      "committer": {
        "name": "Jayant Chowdhary",
        "email": "jchowdhary@google.com",
        "time": "Wed May 08 12:56:52 2019 -0700"
      },
      "message": "cameraservice: re-map oom_adj scores and states of native vendor clients.\n\nOverride the oom_adj scores of vendor clients from to PERCEPTIBLE_APP_ADJ.\nOverride the process state of vendor clients to to PROCESS_STATE_PERSISTENT_UI.\n\nThis is in order for app processes to take priority over vendor clients.\nFor example, this could help in the case of the default camera app and\nface auth contending for resources from the lock screen.\n\nBug: 132117718\n\nTest: manual test on lockscreen, try to double press and open camera app\n      while a vendor client is connected to a contending camera device.\n\nChange-Id: Ie5fabb59c876cb02eb706f3dda8f748c69e3c063\nSigned-off-by: Jayant Chowdhary \u003cjchowdhary@google.com\u003e\n"
    },
    {
      "commit": "c728a42d4f9f03f74b901fc7dd7fba1bc06579e9",
      "tree": "e41bb014ce60d61ac54c4bfad108d37836239e38",
      "parents": [
        "673236b3a962335013baddee4065be138eb610b8"
      ],
      "author": {
        "name": "Dongwon Kang",
        "email": "dwkang@google.com",
        "time": "Wed May 08 11:17:01 2019 -0700"
      },
      "committer": {
        "name": "Dongwon Kang",
        "email": "dwkang@google.com",
        "time": "Wed May 08 11:17:01 2019 -0700"
      },
      "message": "extractor: load extractors on boot, not on request.\n\nTest: build + dumpsys media.extractor\nBug: 131106476\nChange-Id: Idbea788340c4849f1286727c159a8eb43d6a7bb0\n"
    },
    {
      "commit": "e905b6b18738572062e9c30735539836af683643",
      "tree": "77d202a1cc06ca2f620afb7fae52775bc4ab81dd",
      "parents": [
        "2f81c33460670e05f3cd8ddeab8b991c2663ee87",
        "329ddab0a26a06f828314860d290b5d6fb3bd0c9"
      ],
      "author": {
        "name": "Abhijith Shastry",
        "email": "ashastry@google.com",
        "time": "Wed May 08 17:52:41 2019 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed May 08 17:52:41 2019 +0000"
      },
      "message": "Merge \"Do not cap volume for ring stream when voice stream has been programatically muted.\" into qt-dev"
    },
    {
      "commit": "d0cce2ebcb9e4f95729d1f5da447f345428a8315",
      "tree": "6be11d80af78cfa1f17c1a5b8959e8fffd8b791e",
      "parents": [
        "2ddd17ca5c49fe02c459b7026d4c271bf76c4e3c"
      ],
      "author": {
        "name": "Carter Hsu",
        "email": "carterhsu@google.com",
        "time": "Fri May 03 17:36:28 2019 +0800"
      },
      "committer": {
        "name": "Carter Hsu",
        "email": "carterhsu@google.com",
        "time": "Wed May 08 14:29:05 2019 +0000"
      },
      "message": "audio: correct the boundary of soundtrigger index\n\nBug: 129111371\nTest: manual\nChange-Id: Ic3e2d5b8b6b53be2184307b076ba8680c6f81a29\nSigned-off-by: Carter Hsu \u003ccarterhsu@google.com\u003e\n"
    },
    {
      "commit": "329ddab0a26a06f828314860d290b5d6fb3bd0c9",
      "tree": "93acc84d44b31debeae888ec8cbf28ee850062e2",
      "parents": [
        "34a740d5360edd1f0bfd6a13b4d75667f550a512"
      ],
      "author": {
        "name": "Abhijith Shastry",
        "email": "ashastry@google.com",
        "time": "Tue Apr 23 11:53:26 2019 -0700"
      },
      "committer": {
        "name": "Abhijith Shastry",
        "email": "ashastry@google.com",
        "time": "Tue May 07 15:55:24 2019 -0700"
      },
      "message": "Do not cap volume for ring stream when voice stream has been programatically\nmuted.\n\nTest: Manual\nBug: 131171138\nChange-Id: Iea9aaa618cfef60cae592a8a21026d59212c0740\n"
    },
    {
      "commit": "a171e359408050194cbc68f3fa37f2b8d8ca361c",
      "tree": "8d4f6529347d0b6d155b731340603b87002ca821",
      "parents": [
        "af0b1c1b5cd67cafa81dbcd1ccb7eb68821173f9"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Tue May 07 13:04:45 2019 -0700"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Tue May 07 13:04:45 2019 -0700"
      },
      "message": "audio policy: fix concurrent capture policy\n\nRestrict concurrent capture scenarii by not allowing 3rd party\napplications to capture concurrently\n\nBug: 131758164\nTest: manual test of main capture use cases\nTest: CTS tests for audio recording\nChange-Id: Ica17d6eea81671eeb872fe55c1e7e06ec9ad279b\n"
    },
    {
      "commit": "af0b1c1b5cd67cafa81dbcd1ccb7eb68821173f9",
      "tree": "2cba9fb6dbdda8d1aff506b68b1d7d6ee06d1387",
      "parents": [
        "4714c214a0fa5a85f6f8b98c7a6c2339b6a847d1",
        "424cfb5c35aedac5973097edb093a3cca3f8cdf7"
      ],
      "author": {
        "name": "Lajos Molnar",
        "email": "lajos@google.com",
        "time": "Tue May 07 16:30:43 2019 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue May 07 16:30:43 2019 +0000"
      },
      "message": "Merge changes from topic \"b129710438_2\" into qt-dev\n\n* changes:\n  codec2: use media_codecs from apex and support variants/domains\n  media: add media_codecs.xml to apex module\n  media: expand media_codecs.xml to support variants and domains\n  media/omx: Make OMX software plugin an actual plugin\n  omx: only list existing OMX codecs in OmxStore\n"
    },
    {
      "commit": "6d831980776617247a209ea8a2a22fbe1c12302c",
      "tree": "4f01bcad6bd399e3f17dc673e921e420dcf3aea9",
      "parents": [
        "7906c2896a0fcb4d8f1bd6534cc0915f346c0d3e",
        "80e1a6dd0dde5302bd00e742d840550288427094"
      ],
      "author": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Mon May 06 22:57:06 2019 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon May 06 22:57:06 2019 +0000"
      },
      "message": "Merge \"Move mediaextractor seccomp policy into apex\" into qt-dev"
    },
    {
      "commit": "7906c2896a0fcb4d8f1bd6534cc0915f346c0d3e",
      "tree": "6e8d0e224e1546b69fef82690164740ce3c127ce",
      "parents": [
        "f7a11d93404ddff7323cb0055099e6696de88824",
        "573a270f26d063a388eb467d381a06c94bcfe7c4"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Mon May 06 22:36:47 2019 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon May 06 22:36:47 2019 +0000"
      },
      "message": "Merge \"Camera: clear buffer cache when stream is reconfigured\" into qt-dev"
    },
    {
      "commit": "6ce27e5ffa056948b506bf7320a9f9c961150684",
      "tree": "d3c75842dba2db375a7b3b4413e902ecccbbb5ef",
      "parents": [
        "ef7eaaf8d873e9d832673fd0a8e07371fa47a0a0"
      ],
      "author": {
        "name": "Ray Essick",
        "email": "essick@google.com",
        "time": "Fri Feb 15 10:58:05 2019 -0800"
      },
      "committer": {
        "name": "Ray Essick",
        "email": "essick@google.com",
        "time": "Mon May 06 11:35:11 2019 -0700"
      },
      "message": "connect mediametrics service to statsd\n\ntake the collected media.metrics (as they arrive) and push a copy over\nto statsd, the statistics logging subsystem.\ngather data, wrap in protobufs apppropriately, and submit it to statsd.\n\nBug: 118782504\nTest: statsd\u0027s test_drive app\nChange-Id: Ieb82c43633851075e9eaf65d2a95c8cba87441ea\n"
    },
    {
      "commit": "5ee9984930753d3231f457be1bbcdba8910b7666",
      "tree": "cf585cf5da36f4576303ecceacf1b2d0cf0c29bc",
      "parents": [
        "34a740d5360edd1f0bfd6a13b4d75667f550a512"
      ],
      "author": {
        "name": "Shuzhen Wang",
        "email": "shuzhenwang@google.com",
        "time": "Fri Apr 12 11:55:48 2019 -0700"
      },
      "committer": {
        "name": "Shuzhen Wang",
        "email": "shuzhenwang@google.com",
        "time": "Mon May 06 11:32:45 2019 -0700"
      },
      "message": "Camera: Allow out of order ZSL shutter vs regular shutter\n\nHAL ZSL request may be out-of-order compared to normal/reprocess\nrequests. Allow such case to improve shot lantecy.\n\nTest: Camera CTS, 3P camera app sanity test.\nBug: 120604717\nChange-Id: Id994efbe392094cdae694afaa2d159bc9c49d5f0\n"
    },
    {
      "commit": "34a740d5360edd1f0bfd6a13b4d75667f550a512",
      "tree": "6565a7a0c7bda1c3a1e1b5594a8249b4ed38879d",
      "parents": [
        "92e11689bbbdab1fed786436c624d6530d56c848",
        "16c66dd1e60d6b65b846f371c2ae4bf2b673545f"
      ],
      "author": {
        "name": "Andy Hung",
        "email": "hunga@google.com",
        "time": "Mon May 06 17:07:54 2019 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon May 06 17:07:54 2019 +0000"
      },
      "message": "Merge \"aaudio: fix multichannel legacy streams\" into qt-dev"
    },
    {
      "commit": "80e1a6dd0dde5302bd00e742d840550288427094",
      "tree": "d5c54e6364b3753e74a2d7ef9dc2b31631f864fc",
      "parents": [
        "eb1b8e4a365a8833ebdaba4975d7b3e610ed709f"
      ],
      "author": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Tue Apr 30 15:52:10 2019 -0700"
      },
      "committer": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Mon May 06 09:26:50 2019 -0700"
      },
      "message": "Move mediaextractor seccomp policy into apex\n\nBug: 112767732\nTest: build, run\nChange-Id: I3d63b6346c1305ba662077eb81b714cbe24ccfb9\nMerged-In: I3d63b6346c1305ba662077eb81b714cbe24ccfb9\n"
    },
    {
      "commit": "377cc84da5332f0e0480c259eee340b752027833",
      "tree": "152eeb97f4b6cb5bd7f221691558291d8d4bd21d",
      "parents": [
        "eb1b8e4a365a8833ebdaba4975d7b3e610ed709f",
        "c16463885b106429146b6f89fbde6ef8eb372538"
      ],
      "author": {
        "name": "Andy Hung",
        "email": "hunga@google.com",
        "time": "Sat May 04 00:56:12 2019 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Sat May 04 00:56:12 2019 +0000"
      },
      "message": "Merge \"AudioFlinger: Properly account for underruns\" into qt-dev"
    }
  ],
  "next": "16c66dd1e60d6b65b846f371c2ae4bf2b673545f"
}
