)]}'
{
  "log": [
    {
      "commit": "b0a144d705a021994628d136a170a6d2bd4282e7",
      "tree": "f6144a26c0e19fa9a7ba75e136c80afeb9ecf14a",
      "parents": [
        "7f308c3e0556a5e704bcb3b341842ed50ba80b0a",
        "fdb3c07db5d44535eb8c3ec46dc78ad8446c01eb"
      ],
      "author": {
        "name": "Phil Burk",
        "email": "philburk@google.com",
        "time": "Fri Feb 12 22:24:53 2016 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Feb 12 22:24:55 2016 +0000"
      },
      "message": "Merge \"AudioTrack: support ENCODING_IEC61937\" into nyc-dev"
    },
    {
      "commit": "e58f3c5a8b51dfe9153e39bada55dd3ede98f693",
      "tree": "01e94c31cbb86a9d47791886b9119d19aea84526",
      "parents": [
        "661c5953f54848a37a012d9106af00e61bb98e08",
        "c28dcccb9bc0a94950a7475f9bd8a6a38be34419"
      ],
      "author": {
        "name": "Shuzhen Wang",
        "email": "shuzhenwang@google.com",
        "time": "Fri Feb 12 21:26:09 2016 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Feb 12 21:26:09 2016 +0000"
      },
      "message": "Merge \"Camera3: Use proper timestamp clock domain for different streams\" into nyc-dev"
    },
    {
      "commit": "c28dcccb9bc0a94950a7475f9bd8a6a38be34419",
      "tree": "cc2dd0ea424ac62a24c75a6d5f821789c08ac628",
      "parents": [
        "3aaa699a46edb4f47d0cd5a11d57eba93493bd90"
      ],
      "author": {
        "name": "Shuzhen Wang",
        "email": "shuzhenwang@google.com",
        "time": "Thu Feb 11 23:48:46 2016 -0800"
      },
      "committer": {
        "name": "Shuzhen Wang",
        "email": "shuzhenwang@google.com",
        "time": "Fri Feb 12 13:16:30 2016 -0800"
      },
      "message": "Camera3: Use proper timestamp clock domain for different streams\n\nIf buffer consumers assume different clock domain compared to the camera\noutput, camera3 device uses the offset between the clock domains to convert\nthe timestamp.\n\nBug: 27153476\nChange-Id: Iaae33281411cb27b639e87b0dad957d640182898\n"
    },
    {
      "commit": "661c5953f54848a37a012d9106af00e61bb98e08",
      "tree": "d1990ea391e9c225a60f55aa85fbe77842de1c6c",
      "parents": [
        "e99556b85081778027653bd3e716a529ab518b35",
        "e8decedb429ed76dfa84cdb3e80ab3b969e77298"
      ],
      "author": {
        "name": "Jean-Michel Trivi",
        "email": "jmtrivi@google.com",
        "time": "Fri Feb 12 16:57:49 2016 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Feb 12 16:57:51 2016 +0000"
      },
      "message": "Merge \"Dynamic audio policies on UID\" into nyc-dev"
    },
    {
      "commit": "fdb3c07db5d44535eb8c3ec46dc78ad8446c01eb",
      "tree": "b8c3d97da524e8aefcb37e736619da6b8e087a82",
      "parents": [
        "3ea4f828a6906e9931f96ebdcae9c63e14b86cbd"
      ],
      "author": {
        "name": "Phil Burk",
        "email": "philburk@google.com",
        "time": "Tue Feb 09 10:47:02 2016 -0800"
      },
      "committer": {
        "name": "Phil Burk",
        "email": "philburk@google.com",
        "time": "Fri Feb 12 06:30:43 2016 +0000"
      },
      "message": "AudioTrack: support ENCODING_IEC61937\n\nSet DIRECT flag.\nUse audio_has_proportional_frames() instead of audio_is_linear_pcm()\nwhere appropriate.\n\nBug: 24541671\nBug: 20891646\nBug: 26373761\nChange-Id: Ia32036b18683b084d6c9887593df87397ea0afd9\nSigned-off-by: Phil Burk \u003cphilburk@google.com\u003e\n"
    },
    {
      "commit": "e99556b85081778027653bd3e716a529ab518b35",
      "tree": "b7895d2eead6577be1f77ed8c28d205ebd6e5b3d",
      "parents": [
        "dea9cbc6badae6a03a16fa49a02215f18e3ed93a",
        "e10393e72454bfd8298017dc193faf424f4e9a8f"
      ],
      "author": {
        "name": "Andy Hung",
        "email": "hunga@google.com",
        "time": "Fri Feb 12 04:06:53 2016 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Feb 12 04:06:54 2016 +0000"
      },
      "message": "Merge \"Fix audio timestamp computation for pause, stop, and dynamic speed changes\" into nyc-dev"
    },
    {
      "commit": "dea9cbc6badae6a03a16fa49a02215f18e3ed93a",
      "tree": "fd11e3913737088d7c4f95250b43181218a88654",
      "parents": [
        "fe8ca336d38c30e6ee2181af5cd08fd1dd315958",
        "138ed1796f8c8edd318488911a9b056877191778"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Fri Feb 12 01:54:50 2016 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Feb 12 01:54:50 2016 +0000"
      },
      "message": "Merge \"audio policy: fix issues in effect parameters parsing\" into nyc-dev"
    },
    {
      "commit": "b3a486fecddc9e9264fe63d356eca0812493db27",
      "tree": "cd2ff28eac5233cdb2037b437cb68abe9b9dff3c",
      "parents": [
        "e8c8ed47ca15aa6be83c6feef89e27a832e763e9"
      ],
      "author": {
        "name": "Andy Hung",
        "email": "hunga@google.com",
        "time": "Tue Aug 04 15:17:58 2015 -0700"
      },
      "committer": {
        "name": "Andy Hung",
        "email": "hunga@google.com",
        "time": "Fri Feb 12 00:34:47 2016 +0000"
      },
      "message": "Enable FastTrack timestamps\n\nBug: 26413951\nChange-Id: I99a69241a0bcd69f6bfebf785cac6d9ee1e2cd5f\n"
    },
    {
      "commit": "e10393e72454bfd8298017dc193faf424f4e9a8f",
      "tree": "e7d3946c0e12b8f50e351a401eaa35986e2d0f2d",
      "parents": [
        "e8c8ed47ca15aa6be83c6feef89e27a832e763e9"
      ],
      "author": {
        "name": "Andy Hung",
        "email": "hunga@google.com",
        "time": "Fri Jun 12 13:59:33 2015 -0700"
      },
      "committer": {
        "name": "Andy Hung",
        "email": "hunga@google.com",
        "time": "Fri Feb 12 00:17:13 2016 +0000"
      },
      "message": "Fix audio timestamp computation for pause, stop, and dynamic speed changes\n\nTimestamp on pause and underrun (stop) do not reflect actual position.\nTimestamps do not account for dynamic changes to track speed / sample rate.\n\nBug: 11085154\nBug: 17552775\nChange-Id: I0e5e40ab3eaee82f0c91b9f399089698a0b1947e\n"
    },
    {
      "commit": "e8decedb429ed76dfa84cdb3e80ab3b969e77298",
      "tree": "3cdcd5f6ad76945ef052e0a68978a8c2930e4c3a",
      "parents": [
        "3aaa699a46edb4f47d0cd5a11d57eba93493bd90"
      ],
      "author": {
        "name": "Jean-Michel Trivi",
        "email": "jmtrivi@google.com",
        "time": "Thu Feb 11 12:50:39 2016 -0800"
      },
      "committer": {
        "name": "Jean-Michel Trivi",
        "email": "jmtrivi@google.com",
        "time": "Thu Feb 11 12:50:39 2016 -0800"
      },
      "message": "Dynamic audio policies on UID\n\nWhen looking for an output, take attributes and UID into account.\nTo find the matching mix: for each mix\n- inspect which rules are used\n- find a candidate mix for usage\n- check UID compatibility\nRename AttributeMatchCriterion to AudioMixMatchCriterion to be consistent\n with the fact that now mixing rules are not always about audio attributes.\n\nBug 26798796\n\nChange-Id: I1520b0df190a98f197ea8e0144b770e1e6d97888\n"
    },
    {
      "commit": "138ed1796f8c8edd318488911a9b056877191778",
      "tree": "d13629fcc205cc2a2ed858d7caced0436ce820e8",
      "parents": [
        "e3b06f27668901d3d7ae53b6d77aafd4181045ad"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Wed Feb 10 10:40:44 2016 -0800"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Thu Feb 11 12:10:16 2016 -0800"
      },
      "message": "audio policy: fix issues in effect parameters parsing\n\nFix several issues in AudioPolicyEffects.cpp\n- Fix old bug in growParamSize() that should take a pointer\nto the address of the parameter structure because it can\nmodify it by calling realloc()\n- Fix warnings reported by clang static analyzer\n- Add checks on memory allocations\n\nBug: 26938281\n\nChange-Id: Id0bfa64371d95356d9fc308c6ea9c74e10ab1be0\n"
    },
    {
      "commit": "3f0c902beb53a245c9db35e871607dba05b8d391",
      "tree": "93b456b76dd9504e53de955f75c5c6a4f3d2be7c",
      "parents": [
        "00803f7e94052144ecf476268bc717191ee29865"
      ],
      "author": {
        "name": "Andy Hung",
        "email": "hunga@google.com",
        "time": "Fri Jan 15 17:49:46 2016 -0800"
      },
      "committer": {
        "name": "Andy Hung",
        "email": "hunga@google.com",
        "time": "Wed Feb 10 15:57:51 2016 +0000"
      },
      "message": "Add AudioRecord timestamps\n\nBug: 13569372\nBug: 22886739\nChange-Id: Ibc81afefb733d23676a632a0f2da31163fdbe05f\n"
    },
    {
      "commit": "4329981317b6102cbbbf92504af300ca7115b039",
      "tree": "d65183c7ee8cb43e648fc92630bccf205419fab7",
      "parents": [
        "52785f3df24fe817af4f1c3c2cddfb30ab5450ee",
        "1900e77bac4276f247f80fd06d19316cac598f57"
      ],
      "author": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Wed Feb 10 05:46:33 2016 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Feb 10 05:46:33 2016 +0000"
      },
      "message": "Merge \"Run codecs in a separate process\" into nyc-dev"
    },
    {
      "commit": "52785f3df24fe817af4f1c3c2cddfb30ab5450ee",
      "tree": "28535fcfed7f5d82c1c8575da06ecae08f46353d",
      "parents": [
        "b30f2636bc36d56b94dc5d35e20a68b2e403aac2"
      ],
      "author": {
        "name": "Chris Thornton",
        "email": "thorntonc@google.com",
        "time": "Tue Feb 09 17:28:49 2016 -0800"
      },
      "committer": {
        "name": "Chris Thornton",
        "email": "thorntonc@google.com",
        "time": "Tue Feb 09 17:28:49 2016 -0800"
      },
      "message": "Call SoundTrigger::setCaptureState in AudioPoilcyManager::closeAllInputs\n\ncloseAllInputs wasn\u0027t informing the sound trigger service that all\ninputs were closed. This meant that the service could get stuck in a\nstate where it was disabled because it thought there was some active\ncapture, even though there was nothing listening. (This was particularly\ncommon when a bluetooth device disconnected).\n\nBUG: 26970013,26450651\nChange-Id: I613434ecacce3ef03a657008fd94c314948ba2b8\n"
    },
    {
      "commit": "1900e77bac4276f247f80fd06d19316cac598f57",
      "tree": "b97774b7b48e386a774ed817d1e3dc6defeacc42",
      "parents": [
        "687bb88d330048075e69a7fc514d92901eeb0eee"
      ],
      "author": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Tue Feb 02 16:12:16 2016 -0800"
      },
      "committer": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Tue Feb 09 14:45:15 2016 -0800"
      },
      "message": "Run codecs in a separate process\n\nEncoders and secure decoders still run in the mediaserver, while\nall other codecs run in a separate codec process.\n\nBug: 22775369\n\nChange-Id: Ifbcab8a8f2fe77d2567830ac88f0d982e77f7b00\n"
    },
    {
      "commit": "b30f2636bc36d56b94dc5d35e20a68b2e403aac2",
      "tree": "bf28313a8675f35e140f6ea6f1fc728fb0bca90c",
      "parents": [
        "814ce809867326e6ba46583444476e9f63ad01f7",
        "f73511756147a685267f208784921fea40decc64"
      ],
      "author": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Tue Feb 09 21:33:51 2016 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Feb 09 21:33:51 2016 +0000"
      },
      "message": "Merge \"CameraHardwareInterface: Reconnect preview in HAL set_buffer_count\" into nyc-dev"
    },
    {
      "commit": "f73511756147a685267f208784921fea40decc64",
      "tree": "a9ecf3941f8c65a4e741a6cdad5ee186997191f9",
      "parents": [
        "664041339740874917944c850b113656236edda6"
      ],
      "author": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Tue Feb 09 12:13:57 2016 -0800"
      },
      "committer": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Tue Feb 09 12:13:57 2016 -0800"
      },
      "message": "CameraHardwareInterface: Reconnect preview in HAL set_buffer_count\n\nWorkaround for b/27039775\n\nSome camera device HAL v1 implementations expect that calling\npreview_stream_ops-\u003eset_buffer_count resets the preview stream\u0027s flag\nfor whether any buffers have been queued up by the camera HAL, allowing\nthe HAL to dequeue all buffers in the stream again (instead of just its\nown buffer count limit, which is lower).\n\nThe underlying buffer queue behavior has now changed, and that flag is\nno longer reset on a change of buffer count, to support dynamic buffer\nqueue buffer count features.\n\nTo maintain backwards compatibility with HALv1 implementations that rely\non this implicit HAL interface behavior, add a disconnect/connect pair\nto the set_buffer_count call, which will reset the dequeue flag, along\nwith all other preview stream parameters.\n\nTo maintain other parameters, cache them when they are originall\nset (either by the HAL or by the higher-level camera client), and apply\nthem again after reconnecting.\n\nBug: 27039775\nChange-Id: I9fa220b356715e7f8e48adc7acdffbfa598c329c\n"
    },
    {
      "commit": "814ce809867326e6ba46583444476e9f63ad01f7",
      "tree": "56db7eaca6e39117f365704e8db638e948d78f90",
      "parents": [
        "9792ec3735dc56ca2bd97d7e6524deb8c46f5186"
      ],
      "author": {
        "name": "François Gaffie",
        "email": "francois.gaffie@intel.com",
        "time": "Mon Jan 18 11:23:47 2016 +0100"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Tue Feb 09 11:15:49 2016 -0800"
      },
      "message": "audio policy: engine configurable: support fail safe\n\nWhen the parameter manager could not be launched, the engine will abort if\nLOG_NDEBUG is defined, unless a segmentation fault will happen later.\nThis patch allows fail safe feature when LOG_NDEBUG is not defined.\n\nChange-Id: Ie78575bddad6d19beed61673979e1b8ef1c70b0e\nSigned-off-by: François Gaffie \u003cfrancois.gaffie@intel.com\u003e\n"
    },
    {
      "commit": "9792ec3735dc56ca2bd97d7e6524deb8c46f5186",
      "tree": "8e8943b4d83e9a7aaa1f0aea4540f68da5d5f54c",
      "parents": [
        "687bb88d330048075e69a7fc514d92901eeb0eee"
      ],
      "author": {
        "name": "François Gaffie",
        "email": "francois.gaffie@intel.com",
        "time": "Tue Jan 26 11:08:22 2016 +0100"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Tue Feb 09 11:14:01 2016 -0800"
      },
      "message": "audio policy: engine configurable: update example PFW files\n\nThis patch updates the PFW files given as example.\n-it adapts to N-definition\n-fixes some bugs\n\nChange-Id: I9537982b33bf772056a3bf94c775ce28d9069ef2\nSigned-off-by: François Gaffie \u003cfrancois.gaffie@intel.com\u003e\n"
    },
    {
      "commit": "62e4bc53be19e96f8e37e850b9c8a9e15b9e2ba6",
      "tree": "f3b454f08ebd786f30b9fea45ef4c85bb91b704d",
      "parents": [
        "43e08e0146b825cde52480b64764765d9a61f97c"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Tue Feb 02 18:37:28 2016 -0800"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Tue Feb 09 01:52:21 2016 +0000"
      },
      "message": "audio policy: strengthen dynamic audio profile intialization\n\nAdd some robustness to getParameters() reply parsing\nin AudioPolicyManager::updateAudioProfiles().\nSome audio HALs may respond with more than just the parameters requested.\n\nChange-Id: Id9327604f521f9fb5636ff93cb6a7c3c23c86778\n"
    },
    {
      "commit": "80fa61994c8bcc21e5150c1a6bf447f6423239c4",
      "tree": "a6880ac57427a788addd486f96a86be45750d544",
      "parents": [
        "664041339740874917944c850b113656236edda6"
      ],
      "author": {
        "name": "Zhijun He",
        "email": "zhijunhe@google.com",
        "time": "Mon Feb 08 12:02:25 2016 -0800"
      },
      "committer": {
        "name": "Zhijun He",
        "email": "zhijunhe@google.com",
        "time": "Mon Feb 08 14:39:48 2016 -0800"
      },
      "message": "Camera3: increase the buffer manager water mark by one\n\nThis reduces the chance of allocation during stream steady state.\nIt helps the cases where one stream is active, and other streams may\nrandomly request some buffers.\n\nChange-Id: I3f29001a45e223dd2e7929452c4a2ac81a1213f2\n"
    },
    {
      "commit": "0baa212e45892655bbaeef303dce54f5b6458515",
      "tree": "2fb4aa72f42c30bab4f81fd730eb0d79e7b657d7",
      "parents": [
        "16380da9953214f627475f493f268b0c29373cd1",
        "88b27b560cc46ffa52f4211df3821d146ae34427"
      ],
      "author": {
        "name": "Dan Willemsen",
        "email": "dwillemsen@google.com",
        "time": "Fri Feb 05 22:58:05 2016 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Feb 05 22:58:05 2016 +0000"
      },
      "message": "Merge \"mediaex: Fix build rule under Make\""
    },
    {
      "commit": "88b27b560cc46ffa52f4211df3821d146ae34427",
      "tree": "134a96afbefaed88ab88fab7ccf6f0854d100f91",
      "parents": [
        "b586c8e6a3415a4f0426239510300bbbaefad166"
      ],
      "author": {
        "name": "Dan Willemsen",
        "email": "dwillemsen@google.com",
        "time": "Fri Feb 05 14:11:51 2016 -0800"
      },
      "committer": {
        "name": "Dan Willemsen",
        "email": "dwillemsen@google.com",
        "time": "Fri Feb 05 14:11:51 2016 -0800"
      },
      "message": "mediaex: Fix build rule under Make\n\nNinja automatically creates the output directory for a rule, but make\ndoes not. Add mkdir -p so that make builds work.\n\nChange-Id: I123226b2b1b641d268ad0a4922172d43506741cf\n"
    },
    {
      "commit": "156260319a15174a86676fa3de8819976199ccac",
      "tree": "19d07ee4a6fabafdf2c1c374034693af3ce310e9",
      "parents": [
        "5405b7f0c1e1859d036951a1ddba0fb222a11934",
        "4342335fb84bfa4ec5b99e3ef82f186820c2275f"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Fri Feb 05 20:34:13 2016 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Feb 05 20:34:13 2016 +0000"
      },
      "message": "Merge \"audio policy: fix capture concurrency mode checks\""
    },
    {
      "commit": "4342335fb84bfa4ec5b99e3ef82f186820c2275f",
      "tree": "8cb38b5d0f1d00ec6f8e73e97b5827ceee260d1d",
      "parents": [
        "da53ce37c5283fad74d213f855ed8f4a078b860c"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Fri Feb 05 11:57:57 2016 -0800"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Fri Feb 05 11:57:57 2016 -0800"
      },
      "message": "audio policy: fix capture concurrency mode checks\n\nCapture concurrency mode indicated by policy manager\nafter startInput() is a bit field and should be handled as\nsuch by startInput() in AudioPolicyInterfaceImpl.\n\nBug: 26994864\nChange-Id: Iff093a82b8b68262abab50bc84060cf023450783\n"
    },
    {
      "commit": "6e63ee89d0acd39d20c4aa48ef9eb717d0a89a0b",
      "tree": "60f3b00406f36fdabc726812f92d1539f2559123",
      "parents": [
        "8f94fb419597677df23bd3cd5d0767ae1d36dd92",
        "cdf924a32579e92ea456e8e7d5c14ed5920b620f"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Fri Feb 05 16:48:37 2016 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Feb 05 16:48:37 2016 +0000"
      },
      "message": "Merge \"audio flinger: add check in getInputBufferSize()\""
    },
    {
      "commit": "cdf924a32579e92ea456e8e7d5c14ed5920b620f",
      "tree": "5bf84116acb58e98506f95bd93bccbf39d678309",
      "parents": [
        "da53ce37c5283fad74d213f855ed8f4a078b860c"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Thu Feb 04 15:57:56 2016 -0800"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Fri Feb 05 16:46:29 2016 +0000"
      },
      "message": "audio flinger: add check in getInputBufferSize()\n\nMake sure that the sample rate passed to getInputBufferSize()\nis not 0 to avoid divide by 0 in destinationFramesPossible()\n\nAlso check the channel mask parameter for validity.\n\nbug: 26866012\nChange-Id: Ifabbf56cadb0db104f99230cacdba30e0c6a0a3a\n"
    },
    {
      "commit": "edd41ae47b99b98249e819ac72fb94264326a4eb",
      "tree": "e573b70cb41a6617aab98b0aa7ee0c0646fa48f9",
      "parents": [
        "6bd34cc33c65634cf76787b17a79959716faf596"
      ],
      "author": {
        "name": "Zhijun He",
        "email": "zhijunhe@google.com",
        "time": "Wed Feb 03 14:45:53 2016 -0800"
      },
      "committer": {
        "name": "Zhijun He",
        "email": "zhijunhe@google.com",
        "time": "Wed Feb 03 20:45:33 2016 -0800"
      },
      "message": "Camera3: buffer manager doesn\u0027t support HAL3.2 devices\n\nNot all HAL3.2 devices implemented dynamic buffer registeration.\nThis CL excludes the HAL3.2 devices from the buffer manager\nsupported devices.\n\nBug: 26955436\nChange-Id: I5bc2eec0a4db2f5ab85f7677ed7b367c13ce67aa\n"
    },
    {
      "commit": "6bd34cc33c65634cf76787b17a79959716faf596",
      "tree": "d080fb9f808076da48c289b88aed97820e003f28",
      "parents": [
        "9aee54d4456c86ab389c798d2efccaa1ae6bf7a0",
        "bfdefc5be80920781f421ab82e026c7dc626b466"
      ],
      "author": {
        "name": "Jeffrey Vander Stoep",
        "email": "jeffv@google.com",
        "time": "Wed Feb 03 23:55:40 2016 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Feb 03 23:55:40 2016 +0000"
      },
      "message": "Merge \"mediaex: arm: add syscalls for debuggerd attach\""
    },
    {
      "commit": "bfdefc5be80920781f421ab82e026c7dc626b466",
      "tree": "b6c9f28e99af314f9117e385ac501097fe1fcf2a",
      "parents": [
        "16558ea318c3cf25a945fc1771572f489763527e"
      ],
      "author": {
        "name": "Jeff Vander Stoep",
        "email": "jeffv@google.com",
        "time": "Wed Feb 03 15:05:43 2016 -0800"
      },
      "committer": {
        "name": "Jeff Vander Stoep",
        "email": "jeffv@google.com",
        "time": "Wed Feb 03 15:45:39 2016 -0800"
      },
      "message": "mediaex: arm: add syscalls for debuggerd attach\n\nSilent crashes and empty bug reports are not useful.\n\nBug: 26580739\nChange-Id: I436d9b4af488158d75b277c228598335acd7a5b3\n"
    },
    {
      "commit": "9aee54d4456c86ab389c798d2efccaa1ae6bf7a0",
      "tree": "efa59391ba48cae3dc722d068b6da83fbcf855db",
      "parents": [
        "19bd5498a78936436e982ff074cd9d460494c066",
        "03c48d5afcb3dfc1e43df93e1f3b3b3e9292e148"
      ],
      "author": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Wed Feb 03 23:07:11 2016 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Feb 03 23:07:11 2016 +0000"
      },
      "message": "Merge \"Add limiter for mono blend\""
    },
    {
      "commit": "19bd5498a78936436e982ff074cd9d460494c066",
      "tree": "248192b1811a1417f5f49f6e01acf84f05a63ada",
      "parents": [
        "da53ce37c5283fad74d213f855ed8f4a078b860c",
        "56afc7a5cc0f0bfc8021f6413b2e2267050bdc8a"
      ],
      "author": {
        "name": "Jean-Michel Trivi",
        "email": "jmtrivi@google.com",
        "time": "Wed Feb 03 22:08:32 2016 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Feb 03 22:08:32 2016 +0000"
      },
      "message": "Merge \"Fix connection of OUT_REMOTE_SUBMIX device on APM startInput\""
    },
    {
      "commit": "56afc7a5cc0f0bfc8021f6413b2e2267050bdc8a",
      "tree": "4130dd51cc5d405ece260c66916a84024e6979ee",
      "parents": [
        "2e5408ac3e51cb459160b9cd392f1809b0758316"
      ],
      "author": {
        "name": "Jean-Michel Trivi",
        "email": "jmtrivi@google.com",
        "time": "Wed Feb 03 11:35:52 2016 -0800"
      },
      "committer": {
        "name": "Jean-Michel Trivi",
        "email": "jmtrivi@google.com",
        "time": "Wed Feb 03 11:46:08 2016 -0800"
      },
      "message": "Fix connection of OUT_REMOTE_SUBMIX device on APM startInput\n\nFix a regression in AudioPolicyManager::startInput() where\n the OUT_REMOTE_SUBMIX audio device was never made available\n due to the test on the input descriptor, which was already\n active by the time it is tested, as the activity on the\n session has already been updated.\n\nAdd methods to AudioInputDescriptor and AudioSessionCollection\n to query the number of active sessions. Use the new method\n to optimize AudioSessionCollection::hasActiveSession()\n\nBug 26798796\n\nChange-Id: I2de4e47970505e64c4c78a148a80a9f0ec19e821\n"
    },
    {
      "commit": "e1c37946c27024acd80b1af8724ad5d309ddcf92",
      "tree": "80ee92bb5f8b58ffa45d231b1c5d2e6562ace2f3",
      "parents": [
        "3ba7ed56de35656a1eeb12fff16531085d3f37cb",
        "d7eda8d0127fabf2d63b0890043da40e2a9e366c"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Wed Feb 03 01:57:33 2016 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Feb 03 01:57:33 2016 +0000"
      },
      "message": "Merge \"audio policy: fix overflow in condition wait timeout\""
    },
    {
      "commit": "d7eda8d0127fabf2d63b0890043da40e2a9e366c",
      "tree": "6feeb75bb2eca25b1eb77725a0d0c005b4332bf1",
      "parents": [
        "16558ea318c3cf25a945fc1771572f489763527e"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Tue Feb 02 17:18:39 2016 -0800"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Tue Feb 02 17:18:39 2016 -0800"
      },
      "message": "audio policy: fix overflow in condition wait timeout\n\nDo not pass a large value to Condition::waitRelative() as this\ncan cause an overflow in pthread_cond_timedwait_relative_np() when\nconverting to absolute time.\n\nBug: 26891803\nChange-Id: Ie2a00bca52d469aa08b2718089dc19cfb1f3475f\n"
    },
    {
      "commit": "36672af51e20268e4649075858943f7545ddd15b",
      "tree": "a257704a038de13fb305123a6c546b23bd499850",
      "parents": [
        "be6d26f434b385f253b7058947ab2b3238aa8bf0",
        "8d1a154cc6239096edda698ea638e6ab6fe53c4e"
      ],
      "author": {
        "name": "Zhijun He",
        "email": "zhijunhe@google.com",
        "time": "Wed Feb 03 00:24:55 2016 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Feb 03 00:24:55 2016 +0000"
      },
      "message": "Merge \"Camera3: add dynamic buffer count water mark support\""
    },
    {
      "commit": "8d1a154cc6239096edda698ea638e6ab6fe53c4e",
      "tree": "2bdda9c3490ad3dfe06726157b8bf84f4777fe19",
      "parents": [
        "251322bc8ac7ff7690bf706206c8ef251ca059f2"
      ],
      "author": {
        "name": "Zhijun He",
        "email": "zhijunhe@google.com",
        "time": "Fri Jan 29 20:28:21 2016 -0800"
      },
      "committer": {
        "name": "Zhijun He",
        "email": "zhijunhe@google.com",
        "time": "Tue Feb 02 11:44:13 2016 -0800"
      },
      "message": "Camera3: add dynamic buffer count water mark support\n\nThe dynamic buffer count water mark starts from zero, and grows when the max of\nhand-out buffer counts grow, until reach to the max allowed total buffer count.\nFor the case where the clients almost always uses less number of buffers than\nthe max allowed total buffer count, the dynamic buffer count water mark will\nremain low, and the memory footprint will be smaller.\n\nChange-Id: I305f40232f4740d3e9bedf14ee9b76a81e29e244\n"
    },
    {
      "commit": "9609a91f8560622735f6725f7f597be47a8e2f5f",
      "tree": "df3a632e50696920de74bb46e39be27a01b7628f",
      "parents": [
        "2e5408ac3e51cb459160b9cd392f1809b0758316"
      ],
      "author": {
        "name": "Ryan Bavetta",
        "email": "bavetta@google.com",
        "time": "Thu Jan 28 19:22:29 2016 -0800"
      },
      "committer": {
        "name": "Ryan Bavetta",
        "email": "bavetta@google.com",
        "time": "Mon Feb 01 16:05:43 2016 -0800"
      },
      "message": "Restore Abort Event for Unknown Sound Models\n\nRestore abort event when setting capture state\nfrom active to inactive for Unknown Sound Models\nThis was taken out mistakenly in change 853028\nAlso fix/improve log messages\n\nChange-Id: I58771de47ea357bb99a4ba3cfeea412490746443\n"
    },
    {
      "commit": "2e5408ac3e51cb459160b9cd392f1809b0758316",
      "tree": "66527477ef5a03dbd4bd13e773010ab0e56b9e2c",
      "parents": [
        "706de969169a8f651726ab7de7302a3d35b39768",
        "e04e62bc05316d9682688f87053be5cf47e9c707"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Mon Feb 01 19:54:26 2016 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Feb 01 19:54:26 2016 +0000"
      },
      "message": "Merge \"audio policy: fix set volume with explicit audio patch\""
    },
    {
      "commit": "706de969169a8f651726ab7de7302a3d35b39768",
      "tree": "b416c007f71098a17f41d008088bb9988f7641a5",
      "parents": [
        "16558ea318c3cf25a945fc1771572f489763527e",
        "bacd9d7ae33d831f9b8b3a0bc7ba8d367164a1d0"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Mon Feb 01 19:53:36 2016 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Feb 01 19:53:36 2016 +0000"
      },
      "message": "Merge \"audio policy: fix loss of audio patch client UID\""
    },
    {
      "commit": "e04e62bc05316d9682688f87053be5cf47e9c707",
      "tree": "11271f0fc771239d28f0bedeb8f3589c9e047428",
      "parents": [
        "37dfacdf3e66516bd4b0c7d08e1aad5869bf5825"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Fri Jan 29 18:25:01 2016 -0800"
      },
      "committer": {
        "name": "Jean-Michel Trivi",
        "email": "jmtrivi@google.com",
        "time": "Mon Feb 01 19:31:14 2016 +0000"
      },
      "message": "audio policy: fix set volume with explicit audio patch\n\nsetStreamVolumeIndex() receives both a stream and a device as inputs.\nWhen an explicit audio patch is requested on an output mix, it\nis possible that the active device does not match the strategy\nderived from the stream, in which case the function would not update\ncurrent volume.\nThis patch makes sure that the device explicitly passed to\nsetStreamVolumeIndex() is always taken into acount.\n\nChange-Id: Ie496ff70f059166af6c81c8f8445a9a9c7548a72\n"
    },
    {
      "commit": "03c48d5afcb3dfc1e43df93e1f3b3b3e9292e148",
      "tree": "14e38bde5515cc54b0295faf92c13c37097f53e7",
      "parents": [
        "16558ea318c3cf25a945fc1771572f489763527e"
      ],
      "author": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Wed Jan 27 17:25:17 2016 -0800"
      },
      "committer": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Mon Feb 01 11:11:51 2016 -0800"
      },
      "message": "Add limiter for mono blend\n\nBug: 26904791\nChange-Id: I76b16e70871cd9fc0a9b8badc66f27069fabe1cb\n"
    },
    {
      "commit": "bacd9d7ae33d831f9b8b3a0bc7ba8d367164a1d0",
      "tree": "8a3174549761071b27dcb4cad25906019009678e",
      "parents": [
        "37dfacdf3e66516bd4b0c7d08e1aad5869bf5825"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Fri Jan 29 17:49:52 2016 -0800"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Fri Jan 29 17:49:52 2016 -0800"
      },
      "message": "audio policy: fix loss of audio patch client UID\n\nIf an explicit audio patch is present on an output mix,\nits client UID should not be reset by default when the device is updated\non this output mix.\n\nBug: 26423115\nChange-Id: I87973e62d6eeb6f8fef3780bd67f58ae52d07812\n"
    },
    {
      "commit": "52d49a8a1f48c2d59769b9257e2eed988014aa03",
      "tree": "c535638a45a7dbd7025c5d868a444c882b47d0f4",
      "parents": [
        "313d1e7dfb4bf8e0a2f09a9adb287062dd64410c"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Thu Jan 28 14:18:00 2016 -0800"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Fri Jan 29 20:29:33 2016 +0000"
      },
      "message": "audio policy: fix connected device address.\n\nAlso update the audio device address with the one passed by\nsetDeviceConnectionState() if the device is in the list of\ndeclared devices but does not have an address set.\n\nChange-Id: Ibe9008b0c96fc336a90646b98703ed238a6cf4a9\n"
    },
    {
      "commit": "313d1e7dfb4bf8e0a2f09a9adb287062dd64410c",
      "tree": "70b8d0bf8ee87072115c91f108365c4001eecaa9",
      "parents": [
        "6186b0f418e6efd0bf2463397f4c783cde75ecff"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Fri Jan 29 09:56:57 2016 -0800"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Fri Jan 29 20:28:54 2016 +0000"
      },
      "message": "audio policy: fix input device selection\n\nMake sure session activity count is incremented before\nselecting device in startInput().\n\nBug: 26841909\nChange-Id: I0b4867b9ad4c7a98e5eddb4f1f23c4cf075f074e\n"
    },
    {
      "commit": "6186b0f418e6efd0bf2463397f4c783cde75ecff",
      "tree": "1d635e5dd23bf505531569ab1e586bdd31680806",
      "parents": [
        "f7a186efd4dc399de2c07adee68cee93e47c1feb",
        "fb66dd9f95a1168698f072c4e5c2a2cf8c49a80f"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Fri Jan 29 20:28:43 2016 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Jan 29 20:28:43 2016 +0000"
      },
      "message": "Merge \"Revert \"Revert \"audio policy for concurrent capture.\"\"\""
    },
    {
      "commit": "fb66dd9f95a1168698f072c4e5c2a2cf8c49a80f",
      "tree": "e08f2ecc670ee5828d5ef4bece2e962b02295afc",
      "parents": [
        "37dfacdf3e66516bd4b0c7d08e1aad5869bf5825"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Thu Jan 28 18:32:03 2016 -0800"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Fri Jan 29 18:06:50 2016 +0000"
      },
      "message": "Revert \"Revert \"audio policy for concurrent capture.\"\"\n\nThis reverts commit 84332aaa807037baca05340875f2d94fcc519ac4.\n\nBug:26841909\n"
    },
    {
      "commit": "f7a186efd4dc399de2c07adee68cee93e47c1feb",
      "tree": "2489267b38a39918a2744b919870407b65fe8b74",
      "parents": [
        "b3e5bbedff47b33baab6389b173e854e36e82bdb",
        "f1d124eff4ce99adb8ea34912ef899863e7b76e3"
      ],
      "author": {
        "name": "Yin-Chia Yeh",
        "email": "yinchiayeh@google.com",
        "time": "Fri Jan 29 01:13:21 2016 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Jan 29 01:13:21 2016 +0000"
      },
      "message": "Merge \"Camera: derive post RAW sensitivity boost range\""
    },
    {
      "commit": "f1d124eff4ce99adb8ea34912ef899863e7b76e3",
      "tree": "3e6e5b7c9d9cce2e22d8b74cddff56c5a2d69f8e",
      "parents": [
        "157bd8a8a69c15cba8276652a15dbb7e5fd5cffb"
      ],
      "author": {
        "name": "Yin-Chia Yeh",
        "email": "yinchiayeh@google.com",
        "time": "Thu Jan 28 16:32:15 2016 -0800"
      },
      "committer": {
        "name": "Yin-Chia Yeh",
        "email": "yinchiayeh@google.com",
        "time": "Thu Jan 28 16:32:15 2016 -0800"
      },
      "message": "Camera: derive post RAW sensitivity boost range\n\nBug: 26625646\nChange-Id: Ifbc49d744ac0dca201028aa414dae56febf28e4b\n"
    },
    {
      "commit": "b3e5bbedff47b33baab6389b173e854e36e82bdb",
      "tree": "d0c97ae127ed242e2336c1e426dbbf5c1f4fdfef",
      "parents": [
        "37dfacdf3e66516bd4b0c7d08e1aad5869bf5825",
        "d79072e9dff59f767cce2cda1caab80ce5a0815b"
      ],
      "author": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Fri Jan 29 00:28:58 2016 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Jan 29 00:28:58 2016 +0000"
      },
      "message": "Merge \"Remove TimedAudioTrack and associated code\""
    },
    {
      "commit": "35cb56342e80dbbba3a9cbf5c1398976f1f1befd",
      "tree": "dd25b6024aad666459718276cf8e068cfb289118",
      "parents": [
        "157bd8a8a69c15cba8276652a15dbb7e5fd5cffb",
        "84332aaa807037baca05340875f2d94fcc519ac4"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Thu Jan 28 22:51:30 2016 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Jan 28 22:51:30 2016 +0000"
      },
      "message": "Merge \"Revert \"audio policy for concurrent capture.\"\""
    },
    {
      "commit": "84332aaa807037baca05340875f2d94fcc519ac4",
      "tree": "638152ca1462b98449c8985f53c4c7986dcdf15d",
      "parents": [
        "4b2fcd8abf90b1bd95539f9f4ef2ac39ce9e2df1"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Thu Jan 28 22:19:18 2016 +0000"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Thu Jan 28 22:20:23 2016 +0000"
      },
      "message": "Revert \"audio policy for concurrent capture.\"\n\nThis reverts commit 4b2fcd8abf90b1bd95539f9f4ef2ac39ce9e2df1.\n\nBug:26841909\n\nChange-Id: Ifc74b195394b9fb3f73d33455ad061bd896d5331\n"
    },
    {
      "commit": "157bd8a8a69c15cba8276652a15dbb7e5fd5cffb",
      "tree": "d1549277705ae171e676c5ab5b2eddba33ae440d",
      "parents": [
        "254012a040733ec2476171d311005168810d1d01",
        "1ff811b024c690e53510113d19042b7cd2d2637a"
      ],
      "author": {
        "name": "Zhijun He",
        "email": "zhijunhe@google.com",
        "time": "Thu Jan 28 22:04:49 2016 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Jan 28 22:04:49 2016 +0000"
      },
      "message": "Merge \"Camera3: return cancelled buffers to buffer manager\""
    },
    {
      "commit": "254012a040733ec2476171d311005168810d1d01",
      "tree": "c069d85ca6a64f011c5a55f43e0ecdedb8e199b6",
      "parents": [
        "2b7893250228abb63dd7ca577d8c7769dcff2344",
        "260e56c9a17737bf280d776797d6dee411c9b4da"
      ],
      "author": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Thu Jan 28 21:55:41 2016 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Jan 28 21:55:41 2016 +0000"
      },
      "message": "Merge \"Revert \"Run codecs in a separate process\"\""
    },
    {
      "commit": "260e56c9a17737bf280d776797d6dee411c9b4da",
      "tree": "5e2de882c337b17d1d06dd5dd323be134d7bb882",
      "parents": [
        "4f12d94fc26df1d0c7a566792711b8863fd39fe9"
      ],
      "author": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Thu Jan 28 21:41:25 2016 +0000"
      },
      "committer": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Thu Jan 28 21:41:25 2016 +0000"
      },
      "message": "Revert \"Run codecs in a separate process\"\n\nThis reverts commit 4f12d94fc26df1d0c7a566792711b8863fd39fe9.\n\nChange-Id: Ic850a950119a45efd3042f40147253b37c328853\n"
    },
    {
      "commit": "1ff811b024c690e53510113d19042b7cd2d2637a",
      "tree": "cbb5f8d7385b194819bdb18247c5cef7d48e4eee",
      "parents": [
        "2961a35354218904bf190c10a9e52350298c4385"
      ],
      "author": {
        "name": "Zhijun He",
        "email": "zhijunhe@google.com",
        "time": "Tue Jan 26 14:39:51 2016 -0800"
      },
      "committer": {
        "name": "Zhijun He",
        "email": "zhijunhe@google.com",
        "time": "Thu Jan 28 12:37:42 2016 -0800"
      },
      "message": "Camera3: return cancelled buffers to buffer manager\n\nWhen a buffer is cancelled, it is considered as a free buffer and need to be\nreturned to buffer manamager for buffer reuse. This will also make the prepare\nwork.\n\nAlso fix the buffer removal bug.\n\nBug: 25088440\nChange-Id: I0e3da44c76008406ee19541366da7a962c355949\n"
    },
    {
      "commit": "2961a35354218904bf190c10a9e52350298c4385",
      "tree": "953f0b301a60dfd55c5e0cb3ea92fa1db5608a96",
      "parents": [
        "feb76cc0340f3eb4c9ae91cbfab4dcea449422f5",
        "00a727c430c474f77f8835675a9d773f0314fb68"
      ],
      "author": {
        "name": "Ryan Bavetta",
        "email": "bavetta@google.com",
        "time": "Thu Jan 28 03:27:05 2016 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Jan 28 03:27:05 2016 +0000"
      },
      "message": "Merge \"Add SoundTrigger GenericSoundModel type\""
    },
    {
      "commit": "00a727c430c474f77f8835675a9d773f0314fb68",
      "tree": "b1ee872a8c6eb7983243f3ddced1d6a10d344853",
      "parents": [
        "e0db30868d9734f95a02df516dd0dc6a7226474b"
      ],
      "author": {
        "name": "Ryan Bavetta",
        "email": "bavetta@google.com",
        "time": "Tue Jan 26 21:56:19 2016 -0800"
      },
      "committer": {
        "name": "Ryan Bavetta",
        "email": "bavetta@google.com",
        "time": "Thu Jan 28 02:05:10 2016 +0000"
      },
      "message": "Add SoundTrigger GenericSoundModel type\n\nBUG: 22860713\nChange-Id: I462ba039577511674a08aee42e3f1941ff7005ce\n"
    },
    {
      "commit": "feb76cc0340f3eb4c9ae91cbfab4dcea449422f5",
      "tree": "cc4ca7aee0d37dfbf5438aa1b948698116403706",
      "parents": [
        "dfb7c95a69f43201cfe52f1e3cffde9adf7b88ba",
        "6773d4777f4ccbbe6377e4ae1b42c117066ae6ba"
      ],
      "author": {
        "name": "Chien-Yu Chen",
        "email": "cychen@google.com",
        "time": "Thu Jan 28 02:04:34 2016 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Jan 28 02:04:34 2016 +0000"
      },
      "message": "Merge changes from topic \u0027camera-hardening\u0027\n\n* changes:\n  camera: Add support to pass native handles across binders\n  Camera: Fix client permission check\n  Add cameraserver process\n"
    },
    {
      "commit": "d98985b9f9257d4da8be9c4789c1035099c1f564",
      "tree": "b85736b7e7596c9cfed2448987797ddbe405de14",
      "parents": [
        "30c4374eaec0a7dbb6cbefe8e4598f3bbb35911d",
        "13a69633108f40f56aa47f1bcbb406cd5173c245"
      ],
      "author": {
        "name": "Shuzhen Wang",
        "email": "shuzhenwang@google.com",
        "time": "Thu Jan 28 01:08:31 2016 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Jan 28 01:08:31 2016 +0000"
      },
      "message": "Merge \"Camera3: Selectively set buffer timestamp depends on consumer\""
    },
    {
      "commit": "13a69633108f40f56aa47f1bcbb406cd5173c245",
      "tree": "106facab429a8d42b21cecb330ade13e4b640709",
      "parents": [
        "a03910b23a31058eea178e8d3f5e84fcf852d5c2"
      ],
      "author": {
        "name": "Shuzhen Wang",
        "email": "shuzhenwang@google.com",
        "time": "Tue Jan 26 09:51:07 2016 -0800"
      },
      "committer": {
        "name": "Shuzhen Wang",
        "email": "shuzhenwang@google.com",
        "time": "Wed Jan 27 16:36:02 2016 -0800"
      },
      "message": "Camera3: Selectively set buffer timestamp depends on consumer\n\nCertain consumers such as Hardware Composer and AudioSource\nuse MONOTONIC timestamp, which causes time misalignment if\ncamera timestamp is in BOOTTIME.\n\nDo not set buffer time stamp for such streams and let\nBufferQueue handle it.\n\nBug: 22214409\nBug: 26762232\nChange-Id: Id1c4b85a181e39827e8f27949a199165bbd445f9\n"
    },
    {
      "commit": "19219b44e05555b29e00ce56ce273d168fa83888",
      "tree": "11790a2d472ade7c736296c7f1ee4c446c0bffbb",
      "parents": [
        "c9d7c4e35afd48ac8a315f53666943b6210dafa1"
      ],
      "author": {
        "name": "François Gaffie",
        "email": "francois.gaffie@intel.com",
        "time": "Mon Jan 25 11:28:17 2016 +0100"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Wed Jan 27 12:49:24 2016 -0800"
      },
      "message": "audio policy: use reference for all default volume table\n\nThis patch migrates all default volume tables as reference\nvolume tables.\nNo implicit volume tables is allowed any more, the reference\nmust be given for all stream type and device category.\nIt allows removing the WA that was introduce to use the stream CNT\nto host the default volume tables.\n\nChange-Id: I19f5e9d2a62d448f0f8447f93acbbd2e1a723958\nSigned-off-by: François Gaffie \u003cfrancois.gaffie@intel.com\u003e\n"
    },
    {
      "commit": "c9d7c4e35afd48ac8a315f53666943b6210dafa1",
      "tree": "20d04a20ed8afc299a01e7a0a763860c674bba4f",
      "parents": [
        "5bae3d6b17d7eb90b52174f8149aaa7c7ff334d6"
      ],
      "author": {
        "name": "François Gaffie",
        "email": "francois.gaffie@intel.com",
        "time": "Fri Jan 22 13:54:30 2016 +0100"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Wed Jan 27 10:57:49 2016 -0800"
      },
      "message": "audio policy: allows to use reference for volume table\n\nThis patch allows to definie reference attribute within XML\nVolume Element and define a reference volume curve.\nIt allows to factorize efficiently and avoid too much XML\nduplication.\n\nChange-Id: I462808ea38d7a39e1e20fe7090a6ebee0cb3c39b\nSigned-off-by: François Gaffie \u003cfrancois.gaffie@intel.com\u003e\n"
    },
    {
      "commit": "26736fd21faada79c4fb91cb6ef91582c113e9eb",
      "tree": "00f6d0ed7b67904ad183548331ab1581492c95cf",
      "parents": [
        "4b2fcd8abf90b1bd95539f9f4ef2ac39ce9e2df1",
        "4f12d94fc26df1d0c7a566792711b8863fd39fe9"
      ],
      "author": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Wed Jan 27 17:46:46 2016 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Jan 27 17:46:46 2016 +0000"
      },
      "message": "Merge \"Run codecs in a separate process\""
    },
    {
      "commit": "4b2fcd8abf90b1bd95539f9f4ef2ac39ce9e2df1",
      "tree": "8d98964e142912b23352b5c67fd6a3b6568645ab",
      "parents": [
        "a03910b23a31058eea178e8d3f5e84fcf852d5c2"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Fri Jan 15 18:00:39 2016 -0800"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Wed Jan 27 03:09:22 2016 +0000"
      },
      "message": "audio policy for concurrent capture.\n\nFirst implementation of concurrent capture policy:\nInitially, only capture for HOTWORD or FM TUNER sources or\nre-route submix is allowed at the same time as any other capture.\nSeveral capture clients can share the same input stream. In this case\nactive clients are sorted by audio source priority level and the input\npath configuration and routing is driven by the highest priority\nactive source.\n\nBug: 22702906\n\nChange-Id: Icbedfe001c6243ecad7a7b57ab78d893b2b97402\n"
    },
    {
      "commit": "a03910b23a31058eea178e8d3f5e84fcf852d5c2",
      "tree": "638152ca1462b98449c8985f53c4c7986dcdf15d",
      "parents": [
        "93ec0d71800824481b41b883739c9ab1d0559c27",
        "20eb3a4340a1f1f6e978a23527daff080140db1a"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Wed Jan 27 03:07:40 2016 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Jan 27 03:07:40 2016 +0000"
      },
      "message": "Merge \"audio policy: fix merging error for commit 112b0af8.\""
    },
    {
      "commit": "20eb3a4340a1f1f6e978a23527daff080140db1a",
      "tree": "73efd63103d906488cd369c3572545361b90dfa3",
      "parents": [
        "987f953298169027df001409fbd82991d82900bc"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Tue Jan 26 18:39:17 2016 -0800"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Tue Jan 26 18:43:21 2016 -0800"
      },
      "message": "audio policy: fix merging error for commit 112b0af8.\n\nWrong patch set was merged from partner gerrit.\n\nChange-Id: I850d61b1cc8682e0a82ee64bc8cb022b7512de1c\n"
    },
    {
      "commit": "832e43305f25f9f71d3cf0e6ae49853569b31b90",
      "tree": "7429f7d6a6ac98eee5c0066655b68ec79850c684",
      "parents": [
        "7a22cf99151fa42a49ba9c0a135407ccc263a163",
        "d1ab2bd4f1ea166a7e9e81cfd7f3e5dd47135d4d"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Tue Jan 26 02:11:12 2016 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Jan 26 02:11:12 2016 +0000"
      },
      "message": "Merge \"audio policy: move volume table to XML file\""
    },
    {
      "commit": "98a668f6ea51e4d894d2ebb61a0e18287fb14008",
      "tree": "2e0942e593e58b5b6c44b87526a35dbf3d808b34",
      "parents": [
        "1f36e3b27abfb16bc5e788e253d367eff4886dba"
      ],
      "author": {
        "name": "Chien-Yu Chen",
        "email": "cychen@google.com",
        "time": "Fri Dec 18 14:10:33 2015 -0800"
      },
      "committer": {
        "name": "Chien-Yu Chen",
        "email": "cychen@google.com",
        "time": "Mon Jan 25 17:47:12 2016 -0800"
      },
      "message": "Camera: Fix client permission check\n\nModify StageFright\u0027s CameraSource to forward calling PID as\nclient PID when connecting to CameraService so CameraService\ncan check if the client PID has permission to use camera.\n\nChange CameraService to check calling UID is trusted before\nusing the passed in client PID and client UID to verify permission.\n\nBug: 24511454\nChange-Id: I4906ab73510e2c75714690bed675e3c13aca3ccf\n"
    },
    {
      "commit": "8aa17d0c577594e1240d21fd823d9f4c5cc14fa0",
      "tree": "6313b6e02bcece4fc1b53047ccd10d0ae9621bae",
      "parents": [
        "cc97730e142c21a0af67bd2f18d9938a4ef96a39",
        "0dea57fd9fc4b2ccaab97d9477359fbd5a626f5c"
      ],
      "author": {
        "name": "Yin-Chia Yeh",
        "email": "yinchiayeh@google.com",
        "time": "Tue Jan 26 00:52:20 2016 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Jan 26 00:52:20 2016 +0000"
      },
      "message": "Merge \"Camera NDK library: first draft\""
    },
    {
      "commit": "0dea57fd9fc4b2ccaab97d9477359fbd5a626f5c",
      "tree": "2cee23a637023c0365748d4a2f7f1048c9d97ab8",
      "parents": [
        "52a942055bcc4a96b6e281a54a70a53b6fca5798"
      ],
      "author": {
        "name": "Yin-Chia Yeh",
        "email": "yinchiayeh@google.com",
        "time": "Wed Dec 09 16:46:07 2015 -0800"
      },
      "committer": {
        "name": "Yin-Chia Yeh",
        "email": "yinchiayeh@google.com",
        "time": "Mon Jan 25 16:40:17 2016 -0800"
      },
      "message": "Camera NDK library: first draft\n\nBug: 23012001\n\nChange-Id: I06d834421289d4dead1c87301a6ee94487ccf023\n"
    },
    {
      "commit": "d79072e9dff59f767cce2cda1caab80ce5a0815b",
      "tree": "cab9cab36ddf4bb61675c4508d923b283fd3edd6",
      "parents": [
        "a7b723715bab4ddf6db364c825135a9bc003c7c0"
      ],
      "author": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Wed Jan 06 08:41:20 2016 -0800"
      },
      "committer": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Mon Jan 25 15:34:04 2016 -0800"
      },
      "message": "Remove TimedAudioTrack and associated code\n\nBug: 8278435\nChange-Id: I095c1a4888e645e14d93b0b15fbef4524a831ca1\n"
    },
    {
      "commit": "cc97730e142c21a0af67bd2f18d9938a4ef96a39",
      "tree": "2d4ecbfd8984419251325620c4635fbf8b71d62d",
      "parents": [
        "52a942055bcc4a96b6e281a54a70a53b6fca5798"
      ],
      "author": {
        "name": "Zhijun He",
        "email": "zhijunhe@google.com",
        "time": "Mon Jan 25 13:46:23 2016 -0800"
      },
      "committer": {
        "name": "Zhijun He",
        "email": "zhijunhe@google.com",
        "time": "Mon Jan 25 13:46:23 2016 -0800"
      },
      "message": "Camera3: hook up stream set Id\n\nHook up the stream set Id with native implementation.\n\nBug: 25088440\nChange-Id: Iaed9f02d6638ea259d18f7ea75fbd2c87073c3e4\n"
    },
    {
      "commit": "125684aba1a11b7adbf5f9d607ee2bcc9449081c",
      "tree": "36bdb7aeb1e28c40f3ec04816f3e97eca472ad8a",
      "parents": [
        "97385561584e96c1c1149cf883e0ad1c75cfbdd0"
      ],
      "author": {
        "name": "Zhijun He",
        "email": "zhijunhe@google.com",
        "time": "Sat Dec 26 15:07:30 2015 -0800"
      },
      "committer": {
        "name": "Zhijun He",
        "email": "zhijunhe@google.com",
        "time": "Sat Jan 23 16:16:48 2016 -0800"
      },
      "message": "Camera3: add camera3 buffer manager support\n\n* Add camera buffer manager for buffer allocation and sharing management across\nmultiple streams. Only gralloc v0 implementation is done, v1 implementation is\npending. With this, the max mem footprint for multiple streams in the same\nstream set will be the max buffer count x max buffer size.\n* API1 client will still use the old bufferQueue code path, buffer manager\nis only targeting at API2 clients.\n* Prepare and teardown should work with buffer manager.\n* Some existing code typo fix and cleanup (to fix the compiling warnings).\n\nBug: 25088440\nChange-Id: I68b246faa43080302acd02a8e976384bd3e26a23\n"
    },
    {
      "commit": "4f12d94fc26df1d0c7a566792711b8863fd39fe9",
      "tree": "35c3df0045f97769878455388f4c99e2ffa65d68",
      "parents": [
        "97385561584e96c1c1149cf883e0ad1c75cfbdd0"
      ],
      "author": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Wed Dec 16 11:11:59 2015 -0800"
      },
      "committer": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Fri Jan 22 19:53:00 2016 -0800"
      },
      "message": "Run codecs in a separate process\n\nFor now this only runs decoders and Google encoders in the codec process.\n\nBug: 22775369\nChange-Id: Iadd8b6bc2873ddcfaee3e68866642ba74c6949aa\n"
    },
    {
      "commit": "d1ab2bd4f1ea166a7e9e81cfd7f3e5dd47135d4d",
      "tree": "14c1b9bb94c6b5bf6820be9cce3484995486696e",
      "parents": [
        "987f953298169027df001409fbd82991d82900bc"
      ],
      "author": {
        "name": "François Gaffie",
        "email": "francois.gaffie@intel.com",
        "time": "Wed Dec 02 18:20:06 2015 +0100"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Thu Jan 21 14:40:54 2016 -0800"
      },
      "message": "audio policy: move volume table to XML file\n\nThis patch allows to store in XML file volume tables.\nThe compatibility is maintained for legacy conf file.\nConfigurable Engine is only compatible with new XML conf.\nThis patch removes from configurable engine Structure / Settings the volume\ntable but keep the configurabllity of switching volume profiles from\none another according to criteria like phone state...\n(ex: DTMF stream type is following Voice Profile in call)\n\nChange-Id: I78c91bc3378b6c47202abe7b5c1c1e011ff62eed\nSigned-off-by: François Gaffie \u003cfrancois.gaffie@intel.com\u003e\n"
    },
    {
      "commit": "2812d9ea3a3a33142dd8e23c9d949c498d6f7a12",
      "tree": "5079c758817d0c42b3f7ade661366fdae25fe5d1",
      "parents": [
        "e0db30868d9734f95a02df516dd0dc6a7226474b"
      ],
      "author": {
        "name": "Phil Burk",
        "email": "philburk@google.com",
        "time": "Mon Jan 04 10:34:30 2016 -0800"
      },
      "committer": {
        "name": "Phil Burk",
        "email": "philburk@google.com",
        "time": "Sat Jan 16 11:21:38 2016 -0800"
      },
      "message": "AudioTrack: Add getUnderrunCount()\n\nThis allows an app to detect application-level output glitches.\nUnderrun counts survive track recreation.\n\nChange-Id: I8eb14e92f6fc1007718a29b0666ab51ace30cdb8\nBug: 25641253\nSigned-off-by: Phil Burk \u003cphilburk@google.com\u003e\n"
    },
    {
      "commit": "e0db30868d9734f95a02df516dd0dc6a7226474b",
      "tree": "3f04825a30e035add93f323e96680e38a3d69585",
      "parents": [
        "3583c435f773ceef3f340d14c06c62579866f2aa"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Fri Jan 15 17:41:39 2016 -0800"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Fri Jan 15 17:41:39 2016 -0800"
      },
      "message": "audio policy: fix combo device parsing\n\nWhen parsing a device type entry in audio_policy.conf, do not\nload device combos (e.g AUDIO_DEVICE_OUT_ALL_A2DP) in a single\nDeviceDescriptor but create one descriptor for each device type\nin the combo.\n\nBug: 24113912.\nChange-Id: I3a7f43c7fc9cf516506bb3255dd2ed86564b7cd6\n"
    },
    {
      "commit": "3583c435f773ceef3f340d14c06c62579866f2aa",
      "tree": "d2090f46f376dfd2614c5d2a887e04d50443a422",
      "parents": [
        "f8e187c67b951b3382d224b395f5bfcf5e469c53",
        "f4ad6e5637b6deccdac4b60615383f290b3806cf"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Fri Jan 15 21:06:38 2016 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Jan 15 21:06:38 2016 +0000"
      },
      "message": "Merge \"Audio policy: implement configuration file in XML\""
    },
    {
      "commit": "f8e187c67b951b3382d224b395f5bfcf5e469c53",
      "tree": "2ca3aaa117c5c4dfb77b5dd3427680f6da9dc1e3",
      "parents": [
        "60ff9e5543ea1adada1d2c2a043d20aadbd30171"
      ],
      "author": {
        "name": "Jeff Vander Stoep",
        "email": "jeffv@google.com",
        "time": "Fri Jan 15 10:01:47 2016 -0800"
      },
      "committer": {
        "name": "Jeff Vander Stoep",
        "email": "jeffv@google.com",
        "time": "Fri Jan 15 10:01:47 2016 -0800"
      },
      "message": "mediaextractor: allow rt_sigprocmask syscall\n\nChange-Id: I551b34565305bb72a105789a29f9793cbd653ad1\n"
    },
    {
      "commit": "f4ad6e5637b6deccdac4b60615383f290b3806cf",
      "tree": "c5f1796e20a7e7d34f71cb2c6ef0b0ab3a9cde4d",
      "parents": [
        "74a930b2bb7c61c25232c4f06b67abdbeaca8116"
      ],
      "author": {
        "name": "François Gaffie",
        "email": "francois.gaffie@intel.com",
        "time": "Thu Nov 19 16:59:57 2015 +0100"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Fri Jan 15 09:53:00 2016 -0800"
      },
      "message": "Audio policy: implement configuration file in XML\n\nThis patch introduces configuration file of the policy in XML.\nLegacy configuration file is used by default and\ncompilation flag USE_XML_AUDIO_POLICY_CONF must be defined to\nuse XML file format.\n\nChange-Id: I352b788b5829d42ed82c851a4faef0e526be582e\nSigned-off-by: François Gaffie \u003cfrancois.gaffie@intel.com\u003e\n"
    },
    {
      "commit": "c73e0410c6b931fe598061b2f348834da0a21707",
      "tree": "9108dbd203574f12a5e0b50e5f669eecb1a2e2c3",
      "parents": [
        "1d2d88b2040e600463a25f72de24d28aefcf457b",
        "715e5cdec771abb372d46813a8b0ab57d47afd99"
      ],
      "author": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Fri Jan 15 01:11:52 2016 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Fri Jan 15 01:11:52 2016 +0000"
      },
      "message": "Camera: Disallow dumping clients directly am: c400396525 am: 795243686f am: fb5043a703 am: 3a0d1df37d am: f0b0a7c7bb\nam: 715e5cdec7\n\n* commit \u0027715e5cdec771abb372d46813a8b0ab57d47afd99\u0027:\n  Camera: Disallow dumping clients directly\n"
    },
    {
      "commit": "715e5cdec771abb372d46813a8b0ab57d47afd99",
      "tree": "8d21b188753f55c475040495c0abf078b5971258",
      "parents": [
        "b1501e2917d94ec0fff6959cbdcf2db84b97f4b0",
        "f0b0a7c7bb61d6ea9f8f89c55368529711d18e1a"
      ],
      "author": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Thu Jan 14 22:43:31 2016 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Thu Jan 14 22:43:31 2016 +0000"
      },
      "message": "Camera: Disallow dumping clients directly am: c400396525 am: 795243686f am: fb5043a703 am: 3a0d1df37d\nam: f0b0a7c7bb\n\n* commit \u0027f0b0a7c7bb61d6ea9f8f89c55368529711d18e1a\u0027:\n  Camera: Disallow dumping clients directly\n"
    },
    {
      "commit": "3a0d1df37df09b0fbbc7b9768c6f7d530fd7a024",
      "tree": "e757172164fb43a787e0a3a863d18172637b865c",
      "parents": [
        "72bc40dc51911c2f3860b67c8aea57082a4c0bb2",
        "fb5043a703f596b7393c1e24ca4b321b0f697293"
      ],
      "author": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Thu Jan 14 22:37:15 2016 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Thu Jan 14 22:37:15 2016 +0000"
      },
      "message": "Camera: Disallow dumping clients directly am: c400396525 am: 795243686f\nam: fb5043a703\n\n* commit \u0027fb5043a703f596b7393c1e24ca4b321b0f697293\u0027:\n  Camera: Disallow dumping clients directly\n"
    },
    {
      "commit": "fb5043a703f596b7393c1e24ca4b321b0f697293",
      "tree": "e73accf4133146bc489c380a720173e55c6e7fbe",
      "parents": [
        "6dd6c546513aa18dc1d7fba0f72d670edce34f77",
        "795243686fe2e1c352732b47bcdb6ea9e9e7e39e"
      ],
      "author": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Thu Jan 14 22:35:00 2016 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Thu Jan 14 22:35:00 2016 +0000"
      },
      "message": "Camera: Disallow dumping clients directly am: c400396525\nam: 795243686f\n\n* commit \u0027795243686fe2e1c352732b47bcdb6ea9e9e7e39e\u0027:\n  Camera: Disallow dumping clients directly\n"
    },
    {
      "commit": "795243686fe2e1c352732b47bcdb6ea9e9e7e39e",
      "tree": "3edcea13261beb3b42a2b4e4d55ab14e3ace186e",
      "parents": [
        "e463301aa44f0ea0ae1a2399bf8800d94cf6ce3e",
        "c4003965258404a19b99280ac0f475e2f290bf27"
      ],
      "author": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Thu Jan 14 22:33:06 2016 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Thu Jan 14 22:33:06 2016 +0000"
      },
      "message": "Camera: Disallow dumping clients directly\nam: c400396525\n\n* commit \u0027c4003965258404a19b99280ac0f475e2f290bf27\u0027:\n  Camera: Disallow dumping clients directly\n"
    },
    {
      "commit": "5a94f6f199e261c235a05f6b066aa53078962e93",
      "tree": "adcd7e1ae1fa56f903172caa31e28b00552e7830",
      "parents": [
        "0ca02a0c2c77bf88aa7d7b7c3ec04f9153ddce93",
        "49c9705a7987b94bd53fddd4834f5f534cf946f7"
      ],
      "author": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Thu Jan 14 22:07:44 2016 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Jan 14 22:07:44 2016 +0000"
      },
      "message": "Merge \"CameraService: Further fixes to default camera counts\""
    },
    {
      "commit": "74a930b2bb7c61c25232c4f06b67abdbeaca8116",
      "tree": "76bdd4368b4f103c386b6d7be9a7e9fa73cc4d87",
      "parents": [
        "e1c8f4e3c1b181a658f0bd69ee0b5a6de8309dc6",
        "95bab28c0e6d63c262131663184ea05ef4f5251b"
      ],
      "author": {
        "name": "Jeffrey Vander Stoep",
        "email": "jeffv@google.com",
        "time": "Thu Jan 14 17:11:11 2016 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Jan 14 17:11:11 2016 +0000"
      },
      "message": "Merge \"mediaex: add seccomp filter for x86\""
    },
    {
      "commit": "e1c8f4e3c1b181a658f0bd69ee0b5a6de8309dc6",
      "tree": "96974538a3015f0da8c465a16cbd35d8d489e03f",
      "parents": [
        "cc671f3687a0b876e5ff221596fc84c60744c69b",
        "aacf27a10488604ce755a79cd7744cca32725f80"
      ],
      "author": {
        "name": "Jeffrey Vander Stoep",
        "email": "jeffv@google.com",
        "time": "Thu Jan 14 17:10:48 2016 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Jan 14 17:10:48 2016 +0000"
      },
      "message": "Merge \"mediaex: reorder and reduce seccomp filter\""
    },
    {
      "commit": "c4003965258404a19b99280ac0f475e2f290bf27",
      "tree": "c9a4ed77bfc9c2d5b677ffb4943e657b215e04e1",
      "parents": [
        "a39f9818759155a2651995d6844f9821d83e3f0d"
      ],
      "author": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Wed Jan 13 10:07:04 2016 -0800"
      },
      "committer": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Wed Jan 13 16:39:53 2016 -0800"
      },
      "message": "Camera: Disallow dumping clients directly\n\nCamera service dumps should only be initiated through\nICameraService::dump.\n\nBug: 26265403\nChange-Id: If3ca4718ed74bf33ad8a416192689203029e2803\n"
    },
    {
      "commit": "aacf27a10488604ce755a79cd7744cca32725f80",
      "tree": "763019158c40b931e7ff2088e3e3e1c0475aedb8",
      "parents": [
        "6f6376b996fa46e5a853faeaf22e45d28d305192"
      ],
      "author": {
        "name": "Jeff Vander Stoep",
        "email": "jeffv@google.com",
        "time": "Wed Jan 13 09:50:12 2016 -0800"
      },
      "committer": {
        "name": "Jeff Vander Stoep",
        "email": "jeffv@google.com",
        "time": "Wed Jan 13 14:14:37 2016 -0800"
      },
      "message": "mediaex: reorder and reduce seccomp filter\n\nRemove syscalls that are only used before seccomp filter is applied.\n\nReorder filter based on syscall frequency using a much longer strace\nof mediaextractor and its children.\n\nChange-Id: I7e74e9dcbd0c197b0fe4a935f915feb14036b721\n"
    },
    {
      "commit": "95bab28c0e6d63c262131663184ea05ef4f5251b",
      "tree": "2264cd3ddc7333f47dfdc49d4cfaf4ed346f3646",
      "parents": [
        "6f6376b996fa46e5a853faeaf22e45d28d305192"
      ],
      "author": {
        "name": "Jeff Vander Stoep",
        "email": "jeffv@google.com",
        "time": "Fri Jan 08 09:02:40 2016 -0800"
      },
      "committer": {
        "name": "Jeff Vander Stoep",
        "email": "jeffv@google.com",
        "time": "Wed Jan 13 14:00:28 2016 -0800"
      },
      "message": "mediaex: add seccomp filter for x86\n\nFilter organized by frequency of syscall for optimal performance.\n\nChange-Id: Ib774cd8e2cca9f2de50caefca7d7f09eeaa371f6\n"
    },
    {
      "commit": "b1501e2917d94ec0fff6959cbdcf2db84b97f4b0",
      "tree": "a975e15bad569a12905a72c574d72839d244462b",
      "parents": [
        "3432236e09331ae4c6e94d9850e679f3c1d8ae01",
        "6258d848c52d36e804977c3007a968ad823b9244"
      ],
      "author": {
        "name": "Yin-Chia Yeh",
        "email": "yinchiayeh@google.com",
        "time": "Wed Jan 13 20:45:16 2016 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Wed Jan 13 20:45:16 2016 +0000"
      },
      "message": "Camera: set mNumberOfNormalCameras correctly am: 6dd6c54651 am: 72bc40dc51\nam: 6258d848c5\n\n* commit \u00276258d848c52d36e804977c3007a968ad823b9244\u0027:\n  Camera: set mNumberOfNormalCameras correctly\n"
    },
    {
      "commit": "72bc40dc51911c2f3860b67c8aea57082a4c0bb2",
      "tree": "885a52a5daf440e37e2319d01c79e2f0b7296418",
      "parents": [
        "eb65c5f77b2da243ba30da71490e15ea9bc78e05",
        "6dd6c546513aa18dc1d7fba0f72d670edce34f77"
      ],
      "author": {
        "name": "Yin-Chia Yeh",
        "email": "yinchiayeh@google.com",
        "time": "Wed Jan 13 20:34:58 2016 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Wed Jan 13 20:34:58 2016 +0000"
      },
      "message": "Camera: set mNumberOfNormalCameras correctly\nam: 6dd6c54651\n\n* commit \u00276dd6c546513aa18dc1d7fba0f72d670edce34f77\u0027:\n  Camera: set mNumberOfNormalCameras correctly\n"
    },
    {
      "commit": "b51b4a650df14daae2e9fbf14643185da19db9bc",
      "tree": "9931882da61bd75d3fee1836c5a841df9cd3291a",
      "parents": [
        "954225da1347cde407b899c94069d032a72662f4"
      ],
      "author": {
        "name": "Jeff Vander Stoep",
        "email": "jeffv@google.com",
        "time": "Wed Jan 13 12:09:40 2016 -0800"
      },
      "committer": {
        "name": "Jeff Vander Stoep",
        "email": "jeffv@google.com",
        "time": "Wed Jan 13 12:09:40 2016 -0800"
      },
      "message": "mediaextractor: allow gettid call\n\nAddresses:\nmedia.extractor: libminijail: blocked syscall: gettid\n\nChange-Id: I4da1835308012fe87c989ec75f3537ba12763b3c\n"
    },
    {
      "commit": "954225da1347cde407b899c94069d032a72662f4",
      "tree": "63f0cf437e7779a8da68dcd959788b31b9351d94",
      "parents": [
        "05dc55452066f01b1c941ae0ef3c50a732dccede",
        "fe508d3a7a151c20fd2942dae2328f02fc1c1464"
      ],
      "author": {
        "name": "Dongwon Kang",
        "email": "dwkang@google.com",
        "time": "Wed Jan 13 18:21:28 2016 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Jan 13 18:21:28 2016 +0000"
      },
      "message": "Merge \"Add a way for SystemUI to receive media resource (e.g. A/V codec) usage\""
    },
    {
      "commit": "6dd6c546513aa18dc1d7fba0f72d670edce34f77",
      "tree": "8a80f6984f7a31f59a392d36acb2ebe4941af740",
      "parents": [
        "0dd00d9b1986cd2cc4f45bdb96266dee01f20d72"
      ],
      "author": {
        "name": "Yin-Chia Yeh",
        "email": "yinchiayeh@google.com",
        "time": "Mon Dec 07 12:20:11 2015 -0800"
      },
      "committer": {
        "name": "Zhengyin Qian",
        "email": "qianzy@google.com",
        "time": "Tue Jan 12 17:35:27 2016 -0800"
      },
      "message": "Camera: set mNumberOfNormalCameras correctly\n\nNeed to set the number correctly when a camera HAL is not present.\n\nBug: 25951590\nChange-Id: I666acf7a2a523c51f2c2ae88ff690ca9dccda08c\n"
    },
    {
      "commit": "d55d0bee625d4bb02d72fcd91d40fc30e1f87b86",
      "tree": "b57076f570612dd65661a118d6fc348e747ba776",
      "parents": [
        "c16bf1d9e8ccdd27327e988d50f5b9640e5406f8",
        "f615179ee48bb11a27426d60f76845764cf00f75"
      ],
      "author": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Wed Jan 13 00:55:09 2016 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Wed Jan 13 00:55:09 2016 +0000"
      },
      "message": "Merge \"libcameraservice: Allow media server to disconnect camera even unlocked\" am: a68b10a49b\nam: f615179ee4\n\n* commit \u0027f615179ee48bb11a27426d60f76845764cf00f75\u0027:\n  libcameraservice: Allow media server to disconnect camera even unlocked\n"
    },
    {
      "commit": "3432236e09331ae4c6e94d9850e679f3c1d8ae01",
      "tree": "be321d950f09a6f5fbf39cb8169a0d3982101d63",
      "parents": [
        "d69128a8519e02cbfe5a14220f14f2fa63eec297",
        "1571b63e1f1749004d51e9b8dda339a769c7ef39"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Wed Jan 13 00:52:23 2016 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Wed Jan 13 00:52:23 2016 +0000"
      },
      "message": "Merge \"audioflinger: fix standby delay on A2DP output\" into mnc-dr1.5-dev am: eb65c5f77b\nam: 1571b63e1f\n\n* commit \u00271571b63e1f1749004d51e9b8dda339a769c7ef39\u0027:\n  audioflinger: fix standby delay on A2DP output\n"
    },
    {
      "commit": "c16bf1d9e8ccdd27327e988d50f5b9640e5406f8",
      "tree": "11def686f4fa83f744f266851b0a7a204a64220a",
      "parents": [
        "31fc66042d4241f443ebbd2c7b37946edf35b8e9",
        "2f4fe9f7df8f22c6bc8745407d19df73128810ec"
      ],
      "author": {
        "name": "Jean-Michel Trivi",
        "email": "jmtrivi@google.com",
        "time": "Wed Jan 13 00:20:55 2016 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Jan 13 00:20:55 2016 +0000"
      },
      "message": "Merge \"AudioPolicy: callback for recording configuration change\""
    }
  ],
  "next": "49c9705a7987b94bd53fddd4834f5f534cf946f7"
}
