)]}'
{
  "log": [
    {
      "commit": "6a2589182db02a101a43c0ebcab5b5b9d7d5e082",
      "tree": "ae289212613d613ce0d6b250d453348def6dde15",
      "parents": [
        "7ff681b4d1d55f26bcd74ef430e9e2605e7b3d59",
        "f0dc08a910e4e50d1b3b98d1195509a05798dcaf"
      ],
      "author": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Tue Jun 21 22:00:25 2016 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Tue Jun 21 22:00:25 2016 +0000"
      },
      "message": "Merge \\\"DO NOT MERGE: Camera: Adjust pointers to ANW buffers to avoid infoleak\\\" into mnc-dev\nam: f0dc08a910\n\nChange-Id: I1ce29159fdfc1fe343e91df11d804902720bdcbf\n"
    },
    {
      "commit": "79c139a492bdf2977cf07d6faaf1b0268c1026da",
      "tree": "d0f27a75a51cfc303b450a8062e64244e87bd42a",
      "parents": [
        "b6ba5f90166a1121047838d72fd4adb4ad4b74d4"
      ],
      "author": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Mon Jun 20 17:00:14 2016 -0700"
      },
      "committer": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Mon Jun 20 21:32:49 2016 -0700"
      },
      "message": "DO NOT MERGE: Camera: Adjust pointers to ANW buffers to avoid infoleak\n\nSubtract address of a random static object from pointers being routed\nthrough app process.\n\nBug: 28466701\nChange-Id: Idcbfe81e9507433769672f3dc6d67db5eeed4e04\n"
    },
    {
      "commit": "f8fc3b7ca596e102d1bcd13622a248ab6cea2389",
      "tree": "a1e5ac335d5a89bc1a274307a78812c5db5f9dd4",
      "parents": [
        "3d36f600aec0c780d50abdb2c2078b30d9c721ff",
        "30302ea600604ea30bae4652cd8d18fb16ee84fa"
      ],
      "author": {
        "name": "Chien-Yu Chen",
        "email": "cychen@google.com",
        "time": "Mon Mar 21 18:41:38 2016 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Mon Mar 21 18:41:38 2016 +0000"
      },
      "message": "Merge \"Camera3Device: Validate template ID\" into klp-dev am: ac5ef62 am: e57ada1 am: d6e3220 am: e2049c7 am: edcd8f9 am: a4996d9\nam: 30302ea\n\n* commit \u002730302ea600604ea30bae4652cd8d18fb16ee84fa\u0027:\n  Camera3Device: Validate template ID\n"
    },
    {
      "commit": "30302ea600604ea30bae4652cd8d18fb16ee84fa",
      "tree": "2b0db72fd46fe983617f7b137510acc95aeea8fd",
      "parents": [
        "6c2dac8aaadfc5c0b303114898899831c0d43aa2",
        "a4996d9f0edece83bcb7ea85a8dae0e90a9221d1"
      ],
      "author": {
        "name": "Chien-Yu Chen",
        "email": "cychen@google.com",
        "time": "Mon Mar 21 18:39:11 2016 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Mon Mar 21 18:39:11 2016 +0000"
      },
      "message": "Merge \"Camera3Device: Validate template ID\" into klp-dev am: ac5ef62 am: e57ada1 am: d6e3220 am: e2049c7 am: edcd8f9\nam: a4996d9\n\n* commit \u0027a4996d9f0edece83bcb7ea85a8dae0e90a9221d1\u0027:\n  Camera3Device: Validate template ID\n"
    },
    {
      "commit": "a4996d9f0edece83bcb7ea85a8dae0e90a9221d1",
      "tree": "b35f432afb7565cec836628b8159f3b8cf0bfe10",
      "parents": [
        "192f85d20cfd62dea04debf612e0fd9f60240deb",
        "edcd8f90cd5513b4992dc12955bca3163b763c6d"
      ],
      "author": {
        "name": "Chien-Yu Chen",
        "email": "cychen@google.com",
        "time": "Mon Mar 21 18:36:48 2016 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Mon Mar 21 18:36:48 2016 +0000"
      },
      "message": "Merge \"Camera3Device: Validate template ID\" into klp-dev am: ac5ef62 am: e57ada1 am: d6e3220 am: e2049c7\nam: edcd8f9\n\n* commit \u0027edcd8f90cd5513b4992dc12955bca3163b763c6d\u0027:\n  Camera3Device: Validate template ID\n"
    },
    {
      "commit": "e2049c7cc08737ba1fc8847b343d1d82987f3d1d",
      "tree": "27d5329394b565859e120dea06b67239e591c798",
      "parents": [
        "51031115881f76af46ac8964dade00e2a952a925",
        "d6e32200aa134c0fc058bc830ccce7eb4c830026"
      ],
      "author": {
        "name": "Chien-Yu Chen",
        "email": "cychen@google.com",
        "time": "Mon Mar 21 18:32:07 2016 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Mon Mar 21 18:32:07 2016 +0000"
      },
      "message": "Merge \"Camera3Device: Validate template ID\" into klp-dev am: ac5ef62 am: e57ada1\nam: d6e3220\n\n* commit \u0027d6e32200aa134c0fc058bc830ccce7eb4c830026\u0027:\n  Camera3Device: Validate template ID\n"
    },
    {
      "commit": "d6e32200aa134c0fc058bc830ccce7eb4c830026",
      "tree": "e1fc635ca3b0f0baa094c1bcddcbbb96966a538b",
      "parents": [
        "726338dfde794469362f6d62139dee3cf062f030",
        "e57ada1277564469704810aa0ceb353787475c68"
      ],
      "author": {
        "name": "Chien-Yu Chen",
        "email": "cychen@google.com",
        "time": "Mon Mar 21 18:29:38 2016 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Mon Mar 21 18:29:38 2016 +0000"
      },
      "message": "Merge \"Camera3Device: Validate template ID\" into klp-dev am: ac5ef62\nam: e57ada1\n\n* commit \u0027e57ada1277564469704810aa0ceb353787475c68\u0027:\n  Camera3Device: Validate template ID\n"
    },
    {
      "commit": "e57ada1277564469704810aa0ceb353787475c68",
      "tree": "b12f709579dbbeecece2c7bd90f0375654237746",
      "parents": [
        "5d44fff74dea989e51236d89b5ca19f37cae2ef3",
        "ac5ef6284656864eca089da83edfd062ea8139b7"
      ],
      "author": {
        "name": "Chien-Yu Chen",
        "email": "cychen@google.com",
        "time": "Mon Mar 21 18:24:47 2016 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Mon Mar 21 18:24:47 2016 +0000"
      },
      "message": "Merge \"Camera3Device: Validate template ID\" into klp-dev\nam: ac5ef62\n\n* commit \u0027ac5ef6284656864eca089da83edfd062ea8139b7\u0027:\n  Camera3Device: Validate template ID\n"
    },
    {
      "commit": "116a18940e30859ac04a95ffe4d4fefb313d7ab2",
      "tree": "c37348abc54ddea7552532e1f3d63ab07a2a12cc",
      "parents": [
        "09e024fe9a8dd9646e053275dd636301a9d463f0"
      ],
      "author": {
        "name": "Chien-Yu Chen",
        "email": "cychen@google.com",
        "time": "Wed Mar 09 12:21:01 2016 -0800"
      },
      "committer": {
        "name": "Chien-Yu Chen",
        "email": "cychen@google.com",
        "time": "Fri Mar 18 20:37:49 2016 +0000"
      },
      "message": "Camera3Device: Validate template ID\n\nValidate template ID before creating a default request.\n\nBug: 26866110\nBug: 27568958\nChange-Id: Ifda457024f1d5c2b1382f189c1a8d5fda852d30d\n"
    },
    {
      "commit": "6313e262f90683d46e4bdbe7b59df47c432b5772",
      "tree": "26faf554c76eb8b293c7948dae0d8bdefb351215",
      "parents": [
        "0945199000aaa5a628705de69f17d28a5c04cc36",
        "1ab7985b88febde58352c7410c26dcca35b7043a"
      ],
      "author": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Fri Jan 15 00:26:12 2016 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Fri Jan 15 00:26:12 2016 +0000"
      },
      "message": "resolve merge conflicts of 88b736a198 to lmp-dev. am: 899823966e am: 0fefc974ff am: 295a488e49\nam: 1ab7985b88\n\n* commit \u00271ab7985b88febde58352c7410c26dcca35b7043a\u0027:\n  Camera: Disallow dumping clients directly\n"
    },
    {
      "commit": "295a488e49007fc0493135d5003ec206ecf308b2",
      "tree": "188a77d28de12b635c24b3f978fc16885dc6aca9",
      "parents": [
        "e2e46f5fa1e669fb7f00b3ed2bbc37390e0a5a68",
        "0fefc974ff78acd66429b750b7131b0425b1ede3"
      ],
      "author": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Fri Jan 15 00:19:54 2016 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Fri Jan 15 00:19:54 2016 +0000"
      },
      "message": "resolve merge conflicts of 88b736a198 to lmp-dev. am: 899823966e\nam: 0fefc974ff\n\n* commit \u00270fefc974ff78acd66429b750b7131b0425b1ede3\u0027:\n  Camera: Disallow dumping clients directly\n"
    },
    {
      "commit": "899823966e78552bb6dfd7772403a4f91471d2b0",
      "tree": "a3ee356874a5200535b4f7debe395fb642ee8098",
      "parents": [
        "e6bd186c7e2a3b948fdd27a4b71048ee85229e7c",
        "88b736a198fb29ffa946b10d0ed993bf15e77a98"
      ],
      "author": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Thu Jan 14 14:55:37 2016 -0800"
      },
      "committer": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Thu Jan 14 14:55:37 2016 -0800"
      },
      "message": "resolve merge conflicts of 88b736a198 to lmp-dev.\n\nChange-Id: Iec3cf4fb4bf75be853a1249ee1439eb4c5b38b50\n"
    },
    {
      "commit": "88b736a198fb29ffa946b10d0ed993bf15e77a98",
      "tree": "0216f148cd794c7e03f63e77e4e6f94413fefe83",
      "parents": [
        "fb2eb8610208d3ad2ea69f57a151ffe436c6c6e6",
        "c9ab2b0bb05a7e19fb057e79b36e232809d70122"
      ],
      "author": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Thu Jan 14 22:34:55 2016 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Thu Jan 14 22:34:55 2016 +0000"
      },
      "message": "Camera: Disallow dumping clients directly\nam: c9ab2b0bb0\n\n* commit \u0027c9ab2b0bb05a7e19fb057e79b36e232809d70122\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": "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": "c9ab2b0bb05a7e19fb057e79b36e232809d70122",
      "tree": "56b7491b0926f3cee5da173483e2d49e11969237",
      "parents": [
        "5403587a74aee2fb57076528c3927851531c8afb"
      ],
      "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:21:49 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": "5adc76c49a525993f3362cf648864fb21f4547f0",
      "tree": "6e17c9ab60cdc625ef49754aef2e345f5137e130",
      "parents": [
        "e710ae53001bbbf1e1afd6b3f5c3478c673afd0e"
      ],
      "author": {
        "name": "Tom Keel",
        "email": "thomas.keel@intel.com",
        "time": "Thu Oct 08 16:42:56 2015 +0200"
      },
      "committer": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Wed Oct 21 17:41:39 2015 -0700"
      },
      "message": "DO NOT MERGE: libcameraservice: Fix nullptr crash when no client.\n\nThis change prevents a crash in the camera service when the camera\nHAL notifies the service about the absence of a removable camera and\nthere happens to be no client connected to the service. It checks\nthat the pointer returned from clientToDisconnect.get() is non-null\nbefore trying to dereference it (as is done in existing code\nimmediately below this change).\n\nBug: 25165323\nChange-Id: I8055654bac980542e63ea7f52bf897eaafbc09bc\nSigned-off-by: Tom Keel \u003cthomas.keel@intel.com\u003e\n"
    },
    {
      "commit": "32ab9fdab562127ccd37a8cdb15421ebdf82a458",
      "tree": "7e8728530de6477afa7bb46bfa497af50079a362",
      "parents": [
        "3e600894685b994849d59307721c6862ae0c45b7"
      ],
      "author": {
        "name": "Ranjith Kagathi Ananda",
        "email": "ranjith@codeaurora.org",
        "time": "Thu Oct 08 16:41:09 2015 -0700"
      },
      "committer": {
        "name": "Zhijun He",
        "email": "zhijunhe@google.com",
        "time": "Fri Oct 16 17:08:48 2015 -0700"
      },
      "message": "libcameraservice: Fix ALOG prints in FlashLight.\n\nAdd missing __FUNCTION__ arguments into log statements.\n\nAck by: Dilip Gopalakrishna\n\nBug: 25023187\nChange-Id: I0256bad626d490fb9360a73c104afaad7a012a97\n"
    },
    {
      "commit": "3e600894685b994849d59307721c6862ae0c45b7",
      "tree": "1d2636ae0bdbda0b35dc8b3cd176607f3f58a361",
      "parents": [
        "b3d9f56313f1838649712297ebc8205c4ec14870"
      ],
      "author": {
        "name": "Ranjith Kagathi Ananda",
        "email": "ranjith@codeaurora.org",
        "time": "Thu Oct 08 16:00:33 2015 -0700"
      },
      "committer": {
        "name": "Zhijun He",
        "email": "zhijunhe@google.com",
        "time": "Fri Oct 16 17:08:14 2015 -0700"
      },
      "message": "Camera: frameworks: Add NULL check for callback\n\n--Added NULL check for mRemoteCallback\n\nAck by: Susmitha Gummalla\n\nBug: 25023187\nChange-Id: Ib88a128a52e81b8ec1052e3222b6d8b9e494afcc\n"
    },
    {
      "commit": "ceb10ea795d92d889201cd40f5ac6290edf4ded7",
      "tree": "bb6ef8b2f18c832bcb9d4ec777e025918ac351b1",
      "parents": [
        "0926aab4b8d5d307c95788086090e8d2b2763f1f",
        "d4a653a15767d4de37dbfdee22c2170951c93299"
      ],
      "author": {
        "name": "Yin-Chia Yeh",
        "email": "yinchiayeh@google.com",
        "time": "Thu Oct 15 20:57:56 2015 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Oct 15 20:57:56 2015 +0000"
      },
      "message": "Merge \"Camera: setup vendor tags before get_camera_info\" into mnc-dr-dev"
    },
    {
      "commit": "5f54de483624a5731d82060bd3e1aab74b32b15e",
      "tree": "ec9f443ec03bac727740985f6ab08cf6038583a2",
      "parents": [
        "6e2ea5abb4344bf2e308a03ac488e93ab92778ab",
        "82104ebbb2cc04277ab07b355f38f73045a11770"
      ],
      "author": {
        "name": "Chien-Yu Chen",
        "email": "cychen@google.com",
        "time": "Wed Oct 14 23:36:51 2015 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Oct 14 23:36:51 2015 +0000"
      },
      "message": "Merge \"Camera: Add video recording stop sound\" into mnc-dr-dev"
    },
    {
      "commit": "82104ebbb2cc04277ab07b355f38f73045a11770",
      "tree": "ec4857f3465d6e07407cc554e2465985b06625df",
      "parents": [
        "ea6a3dc069809ec071290eb2c8cacef3582ead98"
      ],
      "author": {
        "name": "Chien-Yu Chen",
        "email": "cychen@google.com",
        "time": "Wed Oct 14 11:29:31 2015 -0700"
      },
      "committer": {
        "name": "Chien-Yu Chen",
        "email": "cychen@google.com",
        "time": "Wed Oct 14 11:29:31 2015 -0700"
      },
      "message": "Camera: Add video recording stop sound\n\nAdd video recording stop sound to match MediaActionSound.\n\nBug: 24745252\nChange-Id: I84b69757c7e0a98abfaafcce5f41dd45fd41cf74\n"
    },
    {
      "commit": "d4a653a15767d4de37dbfdee22c2170951c93299",
      "tree": "1915d59eab5269b2d3743cbee4f7adc9a019a0ef",
      "parents": [
        "d805214cec5219eef42346cc136effe89292ac69"
      ],
      "author": {
        "name": "Yin-Chia Yeh",
        "email": "yinchiayeh@google.com",
        "time": "Wed Oct 14 11:05:44 2015 -0700"
      },
      "committer": {
        "name": "Yin-Chia Yeh",
        "email": "yinchiayeh@google.com",
        "time": "Wed Oct 14 11:05:44 2015 -0700"
      },
      "message": "Camera: setup vendor tags before get_camera_info\n\nSo HAL can use vendor tags on first get_camera_info call.\n\nBug: 24913201\nChange-Id: I73f17de87e3712a27f9cee366995df27a740f5cb\n"
    },
    {
      "commit": "8a4a0ac6545f53a9ec4af6074caf0e935b08ffbe",
      "tree": "a07274e6959d497d9aabe1dbc991279218d8a1d8",
      "parents": [
        "036b6593eec6ced2f34293e8407f1cb86ae1e75f"
      ],
      "author": {
        "name": "Oleksiy Avramchenko",
        "email": "oleksiy.avramchenko@sonymobile.com",
        "time": "Mon Sep 14 11:00:33 2015 +0200"
      },
      "committer": {
        "name": "Chien-Yu Chen",
        "email": "cychen@google.com",
        "time": "Wed Oct 14 10:49:17 2015 -0700"
      },
      "message": "DO NOT MERGE: Fix setTorchMode support for the old HAL version\n\nCameraHardwareInterfaceFlashControl class calls disconnectCameraDevice\nwhen torch is disabled. This closes connection to the camera module,\nbut mDevice instance is kept and variable is non-NULL which will\nprevent connection next time torch is going to be enabled.\n\nBug: 24909924\nChange-Id: Icb1ffb07f05256afd92821f0f4908cda5332c05b\n"
    },
    {
      "commit": "4a8f4a3f567d8b3134b1c7ab21ca774f279ab9c2",
      "tree": "56b7339cd9ebccb979c9b3b9e91c3705e8c41fea",
      "parents": [
        "a24a1a63284b0f9d61720ee27bf8c0d9609ce2ab"
      ],
      "author": {
        "name": "Chien-Yu Chen",
        "email": "cychen@google.com",
        "time": "Thu Oct 01 15:23:22 2015 -0700"
      },
      "committer": {
        "name": "Chien-Yu Chen",
        "email": "cychen@google.com",
        "time": "Thu Oct 01 15:28:06 2015 -0700"
      },
      "message": "Camera3Device: Change HFR request thread priority to 1\n\nBased on periods of the request thread and audio threads with\nSCHED_FIFO policy, 1 is a more reasonable priority for HFR\nrequest thread.\n\nBug: 24427480\nChange-Id: I91f0066a0e114fc83abcc6a604ecbaa72c6a34e8\n"
    },
    {
      "commit": "3df11ce7240d0ce5d957c626be467832c1c7fde9",
      "tree": "7c54de353814b76dd782004100c6c32a627e2484",
      "parents": [
        "f99498ee4de7123e2fd71778c6877be44fbd1506"
      ],
      "author": {
        "name": "Chien-Yu Chen",
        "email": "cychen@google.com",
        "time": "Wed Sep 30 14:13:30 2015 -0700"
      },
      "committer": {
        "name": "Chien-Yu Chen",
        "email": "cychen@google.com",
        "time": "Wed Sep 30 14:13:30 2015 -0700"
      },
      "message": "Camera3Device: Bookkeeping reprocess shutters separately\n\nBookkeeping reprocess shutters separately so regular and reprocess\nshutters together don\u0027t need to come in order.\n\nBug: 24497512\nChange-Id: I4aaf22045131e9e2e26bf163f7df9ff4c5cd6259\n"
    },
    {
      "commit": "f99498ee4de7123e2fd71778c6877be44fbd1506",
      "tree": "76fc5f13ab660c053101f09a701187259952e90a",
      "parents": [
        "8595eaab5884bb74d884d366ad6e371a296bf576"
      ],
      "author": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Fri Sep 25 16:52:55 2015 -0700"
      },
      "committer": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Sat Sep 26 11:22:20 2015 -0700"
      },
      "message": "CameraService: Use SCHED_FIFO for request queue thread in HFR\n\n- Move SchedulingPolicyService from audioservice to mediautils\n\n- When starting up a high speed stream config, set request queue thread\n  to SCHED_FIFO using SchedulingPolicyService\n\nBug: 24227252\nChange-Id: I224b59142bd111caf563779f55cddd62385b9bac\n"
    },
    {
      "commit": "3818c6964a000bcac34176afa2bae5e247f5d223",
      "tree": "a2a217e4c6ee066fdf0020491217ace6a556d4a1",
      "parents": [
        "f00b70e082c14f789c948f623daca9be7a0e36e8",
        "652f7d7ebd9a8cec067588c2a232e49710d5cd83"
      ],
      "author": {
        "name": "Yin-Chia Yeh",
        "email": "yinchiayeh@google.com",
        "time": "Tue Sep 15 00:40:15 2015 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Sep 15 00:40:15 2015 +0000"
      },
      "message": "Merge \"Camera: API1 shim: select better default FPS range\" into mnc-dr-dev"
    },
    {
      "commit": "99c906570b8663da8709fd986323470984f9c57e",
      "tree": "b6c89e759a64d887b8099b0eec4e1eaa8c690cba",
      "parents": [
        "5c0adc3e632fbb2929cb20e32a8a9f2864c01490",
        "b83c1fe4e793da269b9340c64f7032a9cc27809c"
      ],
      "author": {
        "name": "Chien-Yu Chen",
        "email": "cychen@google.com",
        "time": "Sat Sep 12 18:12:25 2015 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Sat Sep 12 18:12:25 2015 +0000"
      },
      "message": "Merge \"Camera3Device: Signal buffer returned after it failed\" into mnc-dr-dev"
    },
    {
      "commit": "b83c1fe4e793da269b9340c64f7032a9cc27809c",
      "tree": "849892744754ce783d03414e7b4c3be9c5ec2bda",
      "parents": [
        "a2ab4505c807f42afe34809409c4e85d91618a8c"
      ],
      "author": {
        "name": "Chien-Yu Chen",
        "email": "cychen@google.com",
        "time": "Thu Sep 10 16:15:21 2015 -0700"
      },
      "committer": {
        "name": "Chien-Yu Chen",
        "email": "cychen@google.com",
        "time": "Fri Sep 11 14:13:47 2015 -0700"
      },
      "message": "Camera3Device: Signal buffer returned after it failed\n\nSignal buffer returned even after it failed so the thread waiting\nfor it can wake up sooner.\n\nBug: 23981045\nChange-Id: Iccbcc7ece2e0f6204da9c54f2bdd96ff6843a8f5\n"
    },
    {
      "commit": "652f7d7ebd9a8cec067588c2a232e49710d5cd83",
      "tree": "b350b90f4339c5c2ed5cf88a367d6a989f24065d",
      "parents": [
        "a89ee9ef8ee7774c1ea2d64c7f24c870fcc791ca"
      ],
      "author": {
        "name": "Yin-Chia Yeh",
        "email": "yinchiayeh@google.com",
        "time": "Fri Sep 11 13:01:30 2015 -0700"
      },
      "committer": {
        "name": "Yin-Chia Yeh",
        "email": "yinchiayeh@google.com",
        "time": "Fri Sep 11 13:01:30 2015 -0700"
      },
      "message": "Camera: API1 shim: select better default FPS range\n\nBug: 23992350\nChange-Id: Ie86b24d9e5ea753c6dfc2e5526d371b339be96a1\n"
    },
    {
      "commit": "fefa614f92346e929921bfd47e3643861850bc2a",
      "tree": "700d34dcd080cfdcbe03a49107b76304e5b9fac8",
      "parents": [
        "a89ee9ef8ee7774c1ea2d64c7f24c870fcc791ca"
      ],
      "author": {
        "name": "dcashman",
        "email": "dcashman@google.com",
        "time": "Wed Sep 09 13:43:01 2015 -0700"
      },
      "committer": {
        "name": "dcashman",
        "email": "dcashman@google.com",
        "time": "Fri Sep 11 11:57:19 2015 -0700"
      },
      "message": "Reduce DUMP permission denial output to one line.\n\nBug: 23940813\nChange-Id: I0060dbaff5cd0c3d028ac5cd7aba7da3f0371150\n"
    },
    {
      "commit": "a84bbe6b59721b1b963d65d270aa98d6513bbb78",
      "tree": "216a03ed2aeec280d33ac13f52cd752f3b8be681",
      "parents": [
        "27e0350ae57184d5e300f96c8338379f5d3d0fbc"
      ],
      "author": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Tue Sep 08 17:59:17 2015 -0700"
      },
      "committer": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Wed Sep 09 18:42:46 2015 +0000"
      },
      "message": "CameraService: Add more systracing, fix module init order\n\nImprove debugging of performance of concurrent calls to the service.\n\n- Add ATRACE calls to camera service entry points\n- Add ATRACE calls for camera HAL module calls\n- Ensure that camera module init method is called before all others\n\nBug: 23718257\nBug: 23933447\nChange-Id: I2a025866ab39eda3962877120cab13a063c7727e\n"
    },
    {
      "commit": "c85dc0548dcc59aebc39251aa66b8c5df956c76f",
      "tree": "7ab270afa8be22e59076689b6f8c98983dd1a0b5",
      "parents": [
        "4abef9bf7cfb98930044c75354f5200b811d099f",
        "24901c86e10a0923fe10f5e9bce5e6dba061a289"
      ],
      "author": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Sat Sep 05 00:18:57 2015 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Sat Sep 05 00:18:57 2015 +0000"
      },
      "message": "Merge \"CameraService: Link to client binder death at end of connect\" into mnc-dr-dev"
    },
    {
      "commit": "4abef9bf7cfb98930044c75354f5200b811d099f",
      "tree": "61e06f2155c34502a2d923675d38d40214315867",
      "parents": [
        "8f1ee70c56aad841e4b9b569243d830ece04fdfe",
        "57ea29251d93c9423030de387573142064366a30"
      ],
      "author": {
        "name": "Chien-Yu Chen",
        "email": "cychen@google.com",
        "time": "Sat Sep 05 00:13:52 2015 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Sat Sep 05 00:13:52 2015 +0000"
      },
      "message": "Merge \"Camera3Device: Clean up next request batch variable\" into mnc-dr-dev"
    },
    {
      "commit": "24901c86e10a0923fe10f5e9bce5e6dba061a289",
      "tree": "178597477c4a44e371a273069ea4089113e33c14",
      "parents": [
        "8f1ee70c56aad841e4b9b569243d830ece04fdfe"
      ],
      "author": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Fri Sep 04 14:15:58 2015 -0700"
      },
      "committer": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Fri Sep 04 15:47:17 2015 -0700"
      },
      "message": "CameraService: Link to client binder death at end of connect\n\nIf, within a binder Looper thread, a Binder object death notifier is\nregistered, and then a nested Binder transaction is begun, that\ntransaction may process a death notification callback for the\njust-registered object, if it was dead at the time of registration.\n\nThis can lead to an unexpected nested call into the service, and cause\ndeadlock.\n\nTo avoid this, move the death notifier registration to the end of\nhandling the connect transaction.\n\nAlso remove one extra bit of disconnect logging.\n\nBug: 23525545\nChange-Id: If01cbaf42704f55134118afefc9a8f7bdb014e09\n"
    },
    {
      "commit": "57ea29251d93c9423030de387573142064366a30",
      "tree": "d091aae12f730add56eb0ff92be9e1d7834b4dee",
      "parents": [
        "85a6455f269d79adf9bf48d757a4b1b3c81cf760"
      ],
      "author": {
        "name": "Chien-Yu Chen",
        "email": "cychen@google.com",
        "time": "Fri Sep 04 12:58:56 2015 -0700"
      },
      "committer": {
        "name": "Chien-Yu Chen",
        "email": "cychen@google.com",
        "time": "Fri Sep 04 15:06:58 2015 -0700"
      },
      "message": "Camera3Device: Clean up next request batch variable\n\nMake the Vector of next requests a RequestThread member variable\nto avoid memory allocation in every threadloop.\n\nBug: 23360060\nChange-Id: I4f33e5c49f0f4deb1f9f45bada0909da748849e4\n"
    },
    {
      "commit": "50d12164efe3e4df9a1d994afdeb4779ce0f63c9",
      "tree": "0b1785e26deb4dcc6ae55fb74e63d66feb51a819",
      "parents": [
        "52aad85627f5216e7a3d9db425d2cc409f998a01",
        "85a6455f269d79adf9bf48d757a4b1b3c81cf760"
      ],
      "author": {
        "name": "Chien-Yu Chen",
        "email": "cychen@google.com",
        "time": "Fri Sep 04 01:51:46 2015 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Sep 04 01:51:46 2015 +0000"
      },
      "message": "Merge \"Camera3Device: Support batch requests\" into mnc-dr-dev"
    },
    {
      "commit": "85a6455f269d79adf9bf48d757a4b1b3c81cf760",
      "tree": "7ad6b688f9e60e2f8597b7de932cd8c6ff4f628e",
      "parents": [
        "cfb252cdb748429789f918c4268fcca1331f6cec"
      ],
      "author": {
        "name": "Chien-Yu Chen",
        "email": "cychen@google.com",
        "time": "Fri Aug 28 15:46:12 2015 -0700"
      },
      "committer": {
        "name": "Chien-Yu Chen",
        "email": "cychen@google.com",
        "time": "Thu Sep 03 17:35:25 2015 -0700"
      },
      "message": "Camera3Device: Support batch requests\n\nRefactor request threadLoop to three parts: waiting for next\nbatch of requests, preparing HAL requests and output buffers for\nnext batch of requests, and submitting the batch of requests to\nHAL.\n\nSet the batch size to the size of the request list if it\u0027s a video\nrecording request in a high speed video configuration.\n\nAdd a flush lock so that HAL\u0027s flush() won\u0027t be called while\nsubmitting a batch of requests.\n\nBug: 23360060\nChange-Id: Icd395b1f955a9b336eec6fa5aff6b17741ce08c7\n"
    },
    {
      "commit": "52aad85627f5216e7a3d9db425d2cc409f998a01",
      "tree": "8733629f149e3bd00e56d99afc55a28bf441f004",
      "parents": [
        "3ca51aa9c8eb670b3b93ab37350fa4e0a0397bd6"
      ],
      "author": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Thu Sep 03 12:24:24 2015 -0700"
      },
      "committer": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Thu Sep 03 12:24:24 2015 -0700"
      },
      "message": "CameraService: Treat TOP_SLEEPING same as TOP for priority.\n\nWhen arbitrating between camera clients, treat processes in the\nTOP_SLEEPING state with the same high priority as processes in the\nTOP state.\n\nThis resolves race conditions during lock screen handoffs between\nclients such as face unlock (a bound foreground process) and a\nsecure camera app (the topmost activity, but transitioning from\nTOP_SLEEPING to TOP asynchronously from the activity lifecycle\ncallbacks).\n\nBug: 23731720\nChange-Id: I92c3f8f561c7725627826c0ba3dc926e99af746c\n"
    },
    {
      "commit": "ef7826692df89514701d12dfbfc31bec3814cf95",
      "tree": "6e91d3217d379f14ad217544297291ff7954f78f",
      "parents": [
        "5dc3d9928f85580a2351925b5f11ff0189524c39",
        "fe751bea0d3eedd6e817aebf4e457425b82e7117"
      ],
      "author": {
        "name": "Chien-Yu Chen",
        "email": "cychen@google.com",
        "time": "Wed Sep 02 17:49:32 2015 +0000"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Wed Sep 02 17:49:32 2015 +0000"
      },
      "message": "am fe751bea: Camera: Fix flashlight deadlock\n\n* commit \u0027fe751bea0d3eedd6e817aebf4e457425b82e7117\u0027:\n  Camera: Fix flashlight deadlock\n"
    },
    {
      "commit": "fe751bea0d3eedd6e817aebf4e457425b82e7117",
      "tree": "263226e98081eb5f3ed9dc8d20840719b837d4f3",
      "parents": [
        "389e765394a950b9697bba49c1998f2029bd58b4"
      ],
      "author": {
        "name": "Chien-Yu Chen",
        "email": "cychen@google.com",
        "time": "Tue Sep 01 14:16:44 2015 -0700"
      },
      "committer": {
        "name": "Chien-Yu Chen",
        "email": "cychen@google.com",
        "time": "Tue Sep 01 14:16:44 2015 -0700"
      },
      "message": "Camera: Fix flashlight deadlock\n\nUse a dedicated mutex for torch UID map so it won\u0027t cause a deadlock\nafter flashlight app gets killed while the torch is on.\n\nBug: 23722318\nChange-Id: I228377aa0412052d56b6b948361d9abaecbbc686\n"
    },
    {
      "commit": "efff1c4ba2bf195d97de2fd5718b708e4b942901",
      "tree": "80bd9df579b10a5bb5083383952178b9113e46eb",
      "parents": [
        "0b4543149bd5afa2e9ffc26baa9f472349bea201"
      ],
      "author": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Fri Aug 28 16:27:27 2015 -0700"
      },
      "committer": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Fri Aug 28 16:27:27 2015 -0700"
      },
      "message": "Camera3Device: Don\u0027t hold mutex during HAL device close.\n\nThe HAL device shutdown will likely need to wait on various events and\nqueues to drain, and holding the mutex will prevent, for example, error\nnotifications from being processed. This can lead to deadlocks.\n\nBug: 23501571\nChange-Id: I873ac23ef30545adf533e7839445448573ab5048\n"
    },
    {
      "commit": "412fe56cd7cf7d73bc5d2bcc3f635bc650d18de9",
      "tree": "919a0a09510d53e39c23126f7d4760d761d954d6",
      "parents": [
        "37ea1d0de9b7c9ffbfa7cb1895dcbf4a4f92803a"
      ],
      "author": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Thu Aug 20 17:08:32 2015 -0700"
      },
      "committer": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Fri Aug 21 17:41:43 2015 -0700"
      },
      "message": "CameraService: Notify camera service proxy of device status\n\nSend the camera proxy service in system server updates to\ncamera device state: opened/closed/active/idle.\n\nBug: 23393557\nChange-Id: Id7c70f134821efa34af8f6e7b4caa4c2ab128ebc\n"
    },
    {
      "commit": "5d1103e5a229401a4c4e0cb7dd91b2742881ff92",
      "tree": "ac815f1a2ee6af6deb53754a149d31a6b3eac34a",
      "parents": [
        "5f7d4b957a4b41eaee3bcfbe8cb5a2f8f3dc8dc0",
        "c78ac26e3a65328fc0118f16ee76a800d0687eb7"
      ],
      "author": {
        "name": "Ruben Brunk",
        "email": "rubenbrunk@google.com",
        "time": "Mon Aug 17 17:28:11 2015 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Aug 17 17:28:11 2015 +0000"
      },
      "message": "Merge \"Add experimental camera session prepare API.\" into mnc-dr-dev"
    },
    {
      "commit": "c78ac26e3a65328fc0118f16ee76a800d0687eb7",
      "tree": "9009e37c981c7cbfdd106c44de2622edf1672a49",
      "parents": [
        "a09f8cf8c76fa946c4b91be059b420941abcdc3b"
      ],
      "author": {
        "name": "Ruben Brunk",
        "email": "rubenbrunk@google.com",
        "time": "Thu Aug 13 17:58:46 2015 -0700"
      },
      "committer": {
        "name": "Ruben Brunk",
        "email": "rubenbrunk@google.com",
        "time": "Fri Aug 14 17:30:24 2015 -0700"
      },
      "message": "Add experimental camera session prepare API.\n\nBug: 18949148\nChange-Id: I8f73e68ea2e3acc60d98954106f364d13f439a82\n"
    },
    {
      "commit": "bad4358c83c7daaf9eeb8542c15eea4f473c884c",
      "tree": "0b01065e69f769a7dc058b8ac6652ef93d4736ed",
      "parents": [
        "49f0246c2eac50bbfebf48316b1086de64ac9860"
      ],
      "author": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Fri Aug 14 13:12:32 2015 -0700"
      },
      "committer": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Fri Aug 14 16:02:03 2015 -0700"
      },
      "message": "Camera: Add camera type to ICameraService.getNumberOfCameras.\n\nAlso determine the number of \u0027normal\u0027 cameras present on\ncamera service startup, and ensure that all normal cameras have\nIDs lower than the \u0027strange\u0027 cameras.\n\nBug: 23194168\nChange-Id: I1f7b14825cb52707de698a955f85da1eaa932663\n"
    },
    {
      "commit": "3ba0c6ec009aa675d3433cd6c12af173874787bd",
      "tree": "b2f5d5d8e4e9dee580233670912530da2b028ac0",
      "parents": [
        "a45ccfb88f043f859f9674b8d78b0c3e93328d10",
        "183f056393423b344e73f388f21d30379a38e519"
      ],
      "author": {
        "name": "Ruben Brunk",
        "email": "rubenbrunk@google.com",
        "time": "Thu Aug 13 22:59:35 2015 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Aug 13 22:59:35 2015 +0000"
      },
      "message": "Merge \"Fix deadlock conditions in Camera3Device.\" into mnc-dev"
    },
    {
      "commit": "5732386666aa2265d658e9fc861a1dfe22033861",
      "tree": "1ba35271c05fcf3790f7216ff625c1e00df81c12",
      "parents": [
        "4327df2af078894c38a8eb69f4873bef92cc0f83",
        "c96ac8dfcae66a45b7ae67b82dabdf19f60f859d"
      ],
      "author": {
        "name": "Chien-Yu Chen",
        "email": "cychen@google.com",
        "time": "Thu Aug 13 00:55:24 2015 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Aug 13 00:55:24 2015 +0000"
      },
      "message": "Merge \"Camera3Device: Relax InFlightMap size check\" into mnc-dev"
    },
    {
      "commit": "c96ac8dfcae66a45b7ae67b82dabdf19f60f859d",
      "tree": "e6c6e01b854fc40c4f66805df6c661b41c5b034c",
      "parents": [
        "09da86913ca97d7a818a8917b6601527e5e18a24"
      ],
      "author": {
        "name": "Chien-Yu Chen",
        "email": "cychen@google.com",
        "time": "Wed Aug 12 16:46:24 2015 -0700"
      },
      "committer": {
        "name": "Chien-Yu Chen",
        "email": "cychen@google.com",
        "time": "Wed Aug 12 17:31:03 2015 -0700"
      },
      "message": "Camera3Device: Relax InFlightMap size check\n\nRelax InFlightMap size check for high speed configurations to\nallow more pending capture requests.\n\nBug: 23162274\nChange-Id: I955fe9a0754f0daed001f4a2b34ccb50f2465a11\n"
    },
    {
      "commit": "183f056393423b344e73f388f21d30379a38e519",
      "tree": "a3ea7463340322257cc66457f66d43532cd6a0be",
      "parents": [
        "4327df2af078894c38a8eb69f4873bef92cc0f83"
      ],
      "author": {
        "name": "Ruben Brunk",
        "email": "rubenbrunk@google.com",
        "time": "Wed Aug 12 12:55:02 2015 -0700"
      },
      "committer": {
        "name": "Ruben Brunk",
        "email": "rubenbrunk@google.com",
        "time": "Wed Aug 12 14:13:16 2015 -0700"
      },
      "message": "Fix deadlock conditions in Camera3Device.\n\nPotential deadlock conditions this addresses, include:\n- Not waking up waiting threads for several situations where\n  the status had been updated.\n- Not waking up all waiting thread when status had been updated\n  (only one thread was awoken due to use of signal).\n- Threads clear status transitions before other waiting threads\n  have a chance to examine them.\n\nBug: 22448586\nChange-Id: I53ba669d333a83d2bfa1ca3170d34acc6d8fe6e3\n"
    },
    {
      "commit": "95a1d0f2fb1ea85c549ef8b869ab9ab52601d1db",
      "tree": "588303955754f420083abf393acc61de98c7e7b8",
      "parents": [
        "9872cdceaf76727e9ccc353ee41957b957b76566"
      ],
      "author": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Tue Aug 11 15:08:53 2015 -0700"
      },
      "committer": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Tue Aug 11 15:08:53 2015 -0700"
      },
      "message": "Camera: Allocate correctly-sized buffers for DEPTH_POINT_CLOUD\n\nBug: 20537722\nChange-Id: I9fa2fcdcfd41cd3370732c70414914993d3dc94e\n"
    },
    {
      "commit": "f6d07bc61fd7fefe9d2b2cbdaf637f2fdb1bd21e",
      "tree": "7f96f8c7ebb56d5865ae8f6b993615f4f203b12c",
      "parents": [
        "b9f72ab0b0b7582e021d369e7179022f7be5b37d",
        "eff134a61a5dd081ee578628704a66dca24e0cf7"
      ],
      "author": {
        "name": "Ruben Brunk",
        "email": "rubenbrunk@google.com",
        "time": "Sat Jul 18 01:39:21 2015 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Sat Jul 18 01:39:21 2015 +0000"
      },
      "message": "Merge \"Fix UAF error in CameraModule.\" into mnc-dev"
    },
    {
      "commit": "eff134a61a5dd081ee578628704a66dca24e0cf7",
      "tree": "f9c20cdd5b2fd292581f50246157d635f81616e4",
      "parents": [
        "4b33e0838fdb1b5e545449add02005916b512c99"
      ],
      "author": {
        "name": "Ruben Brunk",
        "email": "rubenbrunk@google.com",
        "time": "Fri Jul 17 15:22:01 2015 -0700"
      },
      "committer": {
        "name": "Ruben Brunk",
        "email": "rubenbrunk@google.com",
        "time": "Fri Jul 17 15:33:46 2015 -0700"
      },
      "message": "Fix UAF error in CameraModule.\n\nBug: 22542551\nChange-Id: I2fe5791a6554a8e2f7fd94593d552d8af18257db\n"
    },
    {
      "commit": "51d0b1d84dc1c095e68126257213f24f64ab3aa0",
      "tree": "ee4b7ce1d0cbaac20923833dcc6e454356b7e45d",
      "parents": [
        "dbd0f3c5e15e56c2d91ae1405fecf2279785ef00",
        "355d9c6b74cd22a88fc7d1c9ba2e928ba566c69e"
      ],
      "author": {
        "name": "Yin-Chia Yeh",
        "email": "yinchiayeh@google.com",
        "time": "Fri Jul 17 21:10:49 2015 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Jul 17 21:10:50 2015 +0000"
      },
      "message": "Merge \"Camera2Client: handle slower jpeg stream sensor\" into mnc-dev"
    },
    {
      "commit": "355d9c6b74cd22a88fc7d1c9ba2e928ba566c69e",
      "tree": "bc32a65fff0ded381544c769d66e694c284adfe8",
      "parents": [
        "11addc1d922efa0bf12e261481bba11024c7c7ab"
      ],
      "author": {
        "name": "Yin-Chia Yeh",
        "email": "yinchiayeh@google.com",
        "time": "Tue Feb 24 15:51:43 2015 -0800"
      },
      "committer": {
        "name": "Yin-Chia Yeh",
        "email": "yinchiayeh@google.com",
        "time": "Thu Jul 16 16:19:05 2015 -0700"
      },
      "message": "Camera2Client: handle slower jpeg stream sensor\n\nIf largest jpeg stream cannot sustain 30 FPS, don\u0027t\ncreate jpeg stream until takePicture is called and remove\nit after still capture is done.\nAlso, disable video snapshot for such sensors so video snapshot\nwon\u0027t slow down video recording.\n\nBug: 22231605\nChange-Id: I2b34d2537c224694ae10f2006b5a46be45a1b1a6\n"
    },
    {
      "commit": "b25e3c87724b6147ed1da7c1d6617c39bfce2fbf",
      "tree": "c0e95e487b2583b8ba87e2ce5505fb74dec9d2d8",
      "parents": [
        "1bc88814f530bf67e425cfb8cea0f2b8dce3c03f"
      ],
      "author": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Wed Jul 15 16:04:27 2015 -0700"
      },
      "committer": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Thu Jul 16 14:55:33 2015 -0700"
      },
      "message": "Camera: Add hidden experimental tearDown method.\n\nBug: 18949148\nChange-Id: Ie86ec7d1ec3db54e1154563b2339a208a935f849\n"
    },
    {
      "commit": "878b8f1a0128cf63617782e3073dffb212d0c8f1",
      "tree": "71045bbd8b8ebed4b5139ce6e4ef5bd490823b1b",
      "parents": [
        "637709460ea75e927a5802899d6547bca3b5e7be",
        "3450ba7879be6522ea46a56c5e66e5382f5dd5ba"
      ],
      "author": {
        "name": "Ruben Brunk",
        "email": "rubenbrunk@google.com",
        "time": "Tue Jul 07 19:31:52 2015 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Jul 07 19:31:53 2015 +0000"
      },
      "message": "Merge \"camera2: Fix native binder interface and add tests.\" into mnc-dev"
    },
    {
      "commit": "3450ba7879be6522ea46a56c5e66e5382f5dd5ba",
      "tree": "201ed5e416af4f44012e6b5c7f2b16bd30cfc673",
      "parents": [
        "a3b3caaae3fc23b99c5c455ee429f79c270cfbae"
      ],
      "author": {
        "name": "Ruben Brunk",
        "email": "rubenbrunk@google.com",
        "time": "Tue Jun 16 11:00:37 2015 -0700"
      },
      "committer": {
        "name": "Ruben Brunk",
        "email": "rubenbrunk@google.com",
        "time": "Mon Jul 06 17:49:44 2015 -0700"
      },
      "message": "camera2: Fix native binder interface and add tests.\n\n- Add CameraBinderTests for limited coverage of native\n  camera2 binder interfaces for the camera service.\n- Fix several bugs in the native binder interfaces.\n\nBug: 18468810\nChange-Id: Iab2d81a5cacd20daf7454aeeed033cc13d88452c\n"
    },
    {
      "commit": "944f843015c440837abb029356108a81b4095e53",
      "tree": "4e15fbdc1a32f75bd419e3fde5c3f897cd3789a6",
      "parents": [
        "f60b6b6c776a762827874f6f635c0577359a7ee4"
      ],
      "author": {
        "name": "Chien-Yu Chen",
        "email": "cychen@google.com",
        "time": "Wed Jul 01 17:08:03 2015 -0700"
      },
      "committer": {
        "name": "Chien-Yu Chen",
        "email": "cychen@google.com",
        "time": "Mon Jul 06 16:45:13 2015 -0700"
      },
      "message": "CameraModule: fix getCameraInfo()\n\nRemove mCameraCharacteristicsMap.\n\nCameraModule kept a CameraMetadata in mCameraCharacteristicsMap\nand kept its camera_metadata in mCameraInfoMap. When CameraMetadata\ngets moved in mCameraCharacteristicsMap, it may clone a new\ncamera_metadata and free the old one. So the original\ncamera_metadata stored in mCameraCharacteristicsMap becomes invalid.\n\nBug: 22171288\nChange-Id: Ia8e99fe42989946bc952ad23abb296aeac60da83\n"
    },
    {
      "commit": "ab5135b254c6f9aaac8edb816596f8823dbdb3d5",
      "tree": "493cfbff9b52250cea24491a330afc131e8d5dc6",
      "parents": [
        "29b7cec9a248828d2371bc8758d819308d0e84a4"
      ],
      "author": {
        "name": "Chien-Yu Chen",
        "email": "cychen@google.com",
        "time": "Tue Jun 30 11:20:58 2015 -0700"
      },
      "committer": {
        "name": "Chien-Yu Chen",
        "email": "cychen@google.com",
        "time": "Tue Jun 30 11:20:58 2015 -0700"
      },
      "message": "Camera3-Device: Fix AE lock available\n\nPass whether AE lock is available when creating the request thread\nbecause when the request thread was created, its parent\u0027s info\nwas not set yet.\n\nBug: 20494782\nChange-Id: I11ed3f99c473955c437e81f3e1d704c15a9ca1a4\n"
    },
    {
      "commit": "ed8505836c0b2fba0ab4be0c1eff31d4f241bc1d",
      "tree": "504bc9d1a026036d269f4a351ef5c19225e0de72",
      "parents": [
        "76e06bedda1b759d806b8d13ab58c5b7fabc8a52",
        "d196d6165aa1ac0dd7c0ad6cc5ada3a2f8e4b49d"
      ],
      "author": {
        "name": "Chien-Yu Chen",
        "email": "cychen@google.com",
        "time": "Wed Jun 24 23:03:14 2015 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Jun 24 23:03:15 2015 +0000"
      },
      "message": "Merge \"Camera3: Support AE precapture trigger CANCEL\" into mnc-dev"
    },
    {
      "commit": "d196d6165aa1ac0dd7c0ad6cc5ada3a2f8e4b49d",
      "tree": "14eecffaaf54b97b3146303021107970287a136f",
      "parents": [
        "fa907d4ee326c7bb9cbb4882ab7c0ec42bbceee3"
      ],
      "author": {
        "name": "Chien-Yu Chen",
        "email": "cychen@google.com",
        "time": "Mon Jun 22 19:49:01 2015 -0700"
      },
      "committer": {
        "name": "Chien-Yu Chen",
        "email": "cychen@google.com",
        "time": "Wed Jun 24 15:42:16 2015 -0700"
      },
      "message": "Camera3: Support AE precapture trigger CANCEL\n\nSupport AE precapture trigger CANCEL for devices \u003c\u003d API\nversion 3.2.\n\nBug: 20494782\nChange-Id: I6003ba8057ca4ec9e8dfda47b8411ae6be913d22\n"
    },
    {
      "commit": "a3b3caaae3fc23b99c5c455ee429f79c270cfbae",
      "tree": "0e23fd4afb42e4b1aa48f73e5862c5358b539afa",
      "parents": [
        "99b38856e91a55bb67085dbabffac9739998fe8b"
      ],
      "author": {
        "name": "Ruben Brunk",
        "email": "rubenbrunk@google.com",
        "time": "Mon Jun 22 14:26:51 2015 -0700"
      },
      "committer": {
        "name": "Ruben Brunk",
        "email": "rubenbrunk@google.com",
        "time": "Mon Jun 22 15:07:34 2015 -0700"
      },
      "message": "Add default for pre-distortion active array.\n\nBug: 20491394\nChange-Id: I53b0539b37cc7a042e6765c97775b8c2bbba7159\n"
    },
    {
      "commit": "17338fca4a51dfb32c1291f94b65d4b4f30b682d",
      "tree": "1f9e96d39548676dc852afb64e1488fc02a2ab15",
      "parents": [
        "3fc792fe36b0b9100f74185665221b37f650ff65"
      ],
      "author": {
        "name": "Chien-Yu Chen",
        "email": "cychen@google.com",
        "time": "Thu Jun 18 16:30:12 2015 -0700"
      },
      "committer": {
        "name": "Chien-Yu Chen",
        "email": "cychen@google.com",
        "time": "Thu Jun 18 16:30:12 2015 -0700"
      },
      "message": "Camera3Device: Fix high speed configuration\n\nIf high speed mode changed, HAL needs to reconfigure the streams\neven when the stream configurations don\u0027t change.\n\nBug: 21900311\nChange-Id: I76aee456b3b6d8c8f599a1638dcd38d75553a235\n"
    },
    {
      "commit": "f8f2f137cceebe3bee4ff3219bc75189a4eccc65",
      "tree": "3a9785eaa821fbd8f67235af6e27cc7329c08755",
      "parents": [
        "7bf8e1c28ba7ba6eb0c677d9ca749e4238fa43f4",
        "77a77f6ef6f04dba8caa54bda937cb276cace9ad"
      ],
      "author": {
        "name": "Ruben Brunk",
        "email": "rubenbrunk@google.com",
        "time": "Fri Jun 12 23:34:49 2015 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Jun 12 23:34:54 2015 +0000"
      },
      "message": "Merge \"Fix rounding width.\" into mnc-dev"
    },
    {
      "commit": "77a77f6ef6f04dba8caa54bda937cb276cace9ad",
      "tree": "9ecf4f8427cb33f78a5e4ad7effdfeda892fcaa4",
      "parents": [
        "f49b5150f87c98c389a334c3af5a9a586d40ee8f"
      ],
      "author": {
        "name": "Ruben Brunk",
        "email": "rubenbrunk@google.com",
        "time": "Fri Jun 12 16:15:35 2015 -0700"
      },
      "committer": {
        "name": "Ruben Brunk",
        "email": "rubenbrunk@google.com",
        "time": "Fri Jun 12 16:18:20 2015 -0700"
      },
      "message": "Fix rounding width.\n\nBug: 19930700\nChange-Id: I9d5685bd98a049fcb01f6ecc649f15f3b4498e6d\n"
    },
    {
      "commit": "727d172137b4f32681c098de8e2623c0b65a6406",
      "tree": "8e7a403274d5a770ecd473d6ef66f3a5f32f45da",
      "parents": [
        "9a17941fa70e43119d2c3464bc00a3cd30b2bd14"
      ],
      "author": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Tue Jun 09 13:44:19 2015 -0700"
      },
      "committer": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Tue Jun 09 14:52:26 2015 -0700"
      },
      "message": "CameraService: Add consumer name to output stream dumpsys\n\nAlso switch use of ANativeWindow to Surface, to get to the\ngetConsumerName() method where necessary.\n\nSurface can always be cast to ANativeWindow, but not the other way\naround, so it\u0027s a better option anyway.\n\nChange-Id: Ie5c2d30821c1a754f9e382699ff50b4b328288b3\n"
    },
    {
      "commit": "9a17941fa70e43119d2c3464bc00a3cd30b2bd14",
      "tree": "8403142aa383ae28e264118d69775636da6269eb",
      "parents": [
        "d46a6b9fd8b2a4f9098757384711e2cd03a91651"
      ],
      "author": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Tue Jun 09 13:15:16 2015 -0700"
      },
      "committer": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Tue Jun 09 13:16:35 2015 -0700"
      },
      "message": "Camera3Device: Default-initialize operating mode.\n\nSince configureStreams is only called by CameraDeviceClient,\nthe operation mode could default-initialize to CONSTRAINED_HIGH_SPEED\nfor API1 operation.\n\nChange-Id: Ide71af07ca3925db8e450d00def1daeb44d8046a\n"
    },
    {
      "commit": "d46a6b9fd8b2a4f9098757384711e2cd03a91651",
      "tree": "6a292d7d4948ad40719925c82ee95945a6ccb99d",
      "parents": [
        "b4b4cd11c9b95af613f5c0f14f93e3c9590fda7c"
      ],
      "author": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Thu May 14 17:26:24 2015 -0700"
      },
      "committer": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Mon Jun 08 13:21:50 2015 -0700"
      },
      "message": "Camera1 API: Support SW encoders for new camera HALs\n\n- Support new set video format/dataspace command in camera service\n  - HALv3: Select gralloc usage flags based on format\n  - HALv1: Pass format command directly to HAL layer\n- Use format/dataspace command in CameraSource\n- Switch all API1 recording to use metadata mode\n- Switch all \u003e\u003d HALv2 API1 recording to use kMetadataBufferTypeANWBuffer\n\nBug: 13222807\nChange-Id: I2e609b92c65792611bb1dab09e0c41c363ebbc42\n"
    },
    {
      "commit": "e3afb2cc438b76ae433c8c40ceabf0457ad7a678",
      "tree": "4410c41bb351d0b646e5d156a0e8fbd4cb69e533",
      "parents": [
        "afd492436efc7f66b958da14659b52232efa5910"
      ],
      "author": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Wed Jun 03 16:03:30 2015 -0700"
      },
      "committer": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Fri Jun 05 17:19:39 2015 -0700"
      },
      "message": "Camera: Change error for app ops reject, propagate binder errors\n\nINVALID_OPERATION surfaces as an non-specific device-level error to\napplications in the onError callback. This is not a condition apps\ntargeting camera2 in L will generally have to deal with.\n\nInstead, return -EACCESS which maps to throwing\nCameraAccessException.CAMERA_DISABLED, same as disabling camera access\nwith DevicePolicyManager.\n\nThe old camera API converts any error code to -EACCESS at the JNI layer,\nso this doesn\u0027t change anything for the older API.\n\nAlso update the various native ICameraService binder connect calls to\ncheck for the transact error code, and return it if it is not OK.\nWithout this, PERMISSION_DENIED transact errors from the camera\nservice cannot be distinguished from CAMERA_DISABLED errors in\nsome codepaths.\n\nBug: 21604925\nChange-Id: Ifccc8989b8c20653429e2d3e51dba7abb2be9c35\n"
    },
    {
      "commit": "1fa8999c91d5df81949aa723000058380cd3faa2",
      "tree": "3ebf10fd408c34bc35108c24df5ccbd02e2153eb",
      "parents": [
        "4170eeec0a2dc2a9543b7e4674a43b3d2faac61d"
      ],
      "author": {
        "name": "Zhijun He",
        "email": "zhijunhe@google.com",
        "time": "Mon Jun 01 15:44:31 2015 -0700"
      },
      "committer": {
        "name": "Zhijun He",
        "email": "zhijunhe@google.com",
        "time": "Wed Jun 03 20:22:06 2015 -0700"
      },
      "message": "Camera2: implement high speed video APIs\n\nBug: 21442271\nChange-Id: Ia0ae5bbd3e8c81bad293c29987301a2457817d12\n"
    },
    {
      "commit": "cb18ec05b7097a63262b81afe1e866105d400f4a",
      "tree": "4b13077360dfb54722298be1b793a8df5ddc6d7a",
      "parents": [
        "cc7cc67349b7a3f498882087aa42ffc05a2daf11",
        "99e69716215cd0665379bc90d708f2ea8689831d"
      ],
      "author": {
        "name": "Ruben Brunk",
        "email": "rubenbrunk@google.com",
        "time": "Tue Jun 02 01:48:21 2015 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Jun 02 01:48:23 2015 +0000"
      },
      "message": "Merge \"Track camera and flashlight usage in battery stats.\" into mnc-dev"
    },
    {
      "commit": "99e69716215cd0665379bc90d708f2ea8689831d",
      "tree": "d013b8e9273ea6032ddf24ba701eccb755b672bb",
      "parents": [
        "4a95e69406aa2e9896d865962d6d947ebbdac6fc"
      ],
      "author": {
        "name": "Ruben Brunk",
        "email": "rubenbrunk@google.com",
        "time": "Tue May 26 17:25:07 2015 -0700"
      },
      "committer": {
        "name": "Ruben Brunk",
        "email": "rubenbrunk@google.com",
        "time": "Mon Jun 01 16:53:45 2015 -0700"
      },
      "message": "Track camera and flashlight usage in battery stats.\n\nBug: 15986092\n\nChange-Id: I9dc6828332e4091fd93bf2d82839e8e3862a2fc2\n"
    },
    {
      "commit": "c2adf48e2dfae0b2b5ddd9de9e7d79ca471bfd37",
      "tree": "eb4d40202cabbd2d13d6bfc420a75339b2b1f882",
      "parents": [
        "db431db53fbbb9024b6e72c528e2d195d63ad544"
      ],
      "author": {
        "name": "Chien-Yu Chen",
        "email": "cychen@google.com",
        "time": "Wed May 27 14:27:49 2015 -0700"
      },
      "committer": {
        "name": "Chien-Yu Chen",
        "email": "cychen@google.com",
        "time": "Mon Jun 01 11:18:05 2015 -0700"
      },
      "message": "Camera3: fix aborting reprocess requests\n\nGet an input buffer right after camera service takes one\nreprocess capture request from the request queue to prevent\nthe input buffers getting out of order.\n\nWhen aborting pending reprocess requests in the request queue, also\nabort the same amount of input buffers.\n\nBug: 21028914\nChange-Id: I7cfacecb4c24509f59c983abd587db5a403237bd\n"
    },
    {
      "commit": "fb683371379606bd3f41c880d83e33f8f3e445ac",
      "tree": "52316e06fbde21f7865264fd9cc99554ee6bd331",
      "parents": [
        "12129ccd0766ba6647ff8e2cc13f80c485d28a1f",
        "3e28a1a1dea11eada3a1c27b973301796032ae20"
      ],
      "author": {
        "name": "Yin-Chia Yeh",
        "email": "yinchiayeh@google.com",
        "time": "Thu May 28 22:40:59 2015 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu May 28 22:40:59 2015 +0000"
      },
      "message": "Merge \"Camera: derive LSC characteristics keys\" into mnc-dev"
    },
    {
      "commit": "3e28a1a1dea11eada3a1c27b973301796032ae20",
      "tree": "8e4272a1338fe9cab488c183da680a79d208b93b",
      "parents": [
        "2d6b6601743c3c6960c6511a2cb774ef902759f4"
      ],
      "author": {
        "name": "Yin-Chia Yeh",
        "email": "yinchiayeh@google.com",
        "time": "Fri May 22 15:03:38 2015 -0700"
      },
      "committer": {
        "name": "Yin-Chia Yeh",
        "email": "yinchiayeh@google.com",
        "time": "Thu May 28 15:25:28 2015 -0700"
      },
      "message": "Camera: derive LSC characteristics keys\n\nAlso fix a typo in AWB lock available key.\n\nBug: 21403373\nBug: 20883751\nChange-Id: I5156f4fafcf4ae86f680fb618966c7cc58900120\n"
    },
    {
      "commit": "0ec23d3f89d804cc1d9dea8f0585dc6d57bfd5c2",
      "tree": "ce0acecdfdb3f8903acfcf8541944ed3676546ad",
      "parents": [
        "e74c228e83906e0e317c4eb6eac20815ff839c04"
      ],
      "author": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Thu May 28 15:15:54 2015 -0700"
      },
      "committer": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Thu May 28 15:21:48 2015 -0700"
      },
      "message": "Camera3Device: Do not call cleanUpFailedRequest with mutex held\n\nDouble-acquiring a non-recursive mutex tends to work poorly.\n\nBug: 21498811\nChange-Id: I1d59959fca69c97684522195808019797f7a6a7d\n"
    },
    {
      "commit": "e74c228e83906e0e317c4eb6eac20815ff839c04",
      "tree": "a54eb6dadada7fc4ca3fcd6013c2fc50315a8bac",
      "parents": [
        "ad9cb8b88e4f8face23f01d8dc89fa769dacb50f"
      ],
      "author": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Wed May 27 14:46:23 2015 -0700"
      },
      "committer": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Wed May 27 17:44:25 2015 -0700"
      },
      "message": "Camera3Device: Close hole in prepare in-use stream check\n\nThere\u0027s a narrow window in which a capture request is neither in the\nrequest queue or handed off to the HAL, which can be expanded to some\nsize if buffers have to be allocated.  During this window, the\nprepare() method will not correctly notice that a stream should be\nconsidered in use.\n\nAdd a member to contain the current request being processed, and check\nagainst it in prepare as well.\n\nChange-Id: I3a198d617f5feee0a3332af4b4439f24eda28ea3\n"
    },
    {
      "commit": "2232aee25e4df7d04446912e8ad9e9dc44d8ec16",
      "tree": "069b67ffba5507b89d75bc27a2c14ca0f625b6f9",
      "parents": [
        "523d08709ba4a0124eb2117907d79113fbe00cfb",
        "2823ce0ce6f9d508a07de20912c93cce9165027f"
      ],
      "author": {
        "name": "Ruben Brunk",
        "email": "rubenbrunk@google.com",
        "time": "Wed May 20 20:44:13 2015 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed May 20 20:44:15 2015 +0000"
      },
      "message": "Merge \"camera: Add AIDL interface for CameraServiceProxy.\" into mnc-dev"
    },
    {
      "commit": "2823ce0ce6f9d508a07de20912c93cce9165027f",
      "tree": "8cba3b9c036b486e69578d13d8a76dcc77c5f7a7",
      "parents": [
        "6267b539d0d1ee7118aafd976d75cb8db397bc24"
      ],
      "author": {
        "name": "Ruben Brunk",
        "email": "rubenbrunk@google.com",
        "time": "Tue May 19 17:25:13 2015 -0700"
      },
      "committer": {
        "name": "Ruben Brunk",
        "email": "rubenbrunk@google.com",
        "time": "Wed May 20 11:43:11 2015 -0700"
      },
      "message": "camera: Add AIDL interface for CameraServiceProxy.\n\n- Adds an AIDL interface to allow the proxy camera service\n  running in system server to accept RPCs from the camera\n  service running in mediaserver.\n- Request an update to the valid user set from the proxy\n  camera service when mediaserver restarts to initialize\n  properly + avoid DOS after a crash.\n\nBug: 21267484\n\nChange-Id: Ib821582794ddd1e3574b5dc6c79f7cb197b57f10\n"
    },
    {
      "commit": "fb2b8eaf0c4bf980605030f3c66b44a097fa7950",
      "tree": "958a7af9fa6125b87635d95905012db3a3a08045",
      "parents": [
        "8f9dd2c40b8ab996e71d6835c379a5d4a8551b00",
        "022f0cb0c6f135edde4ebe84859c685933ee895e"
      ],
      "author": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Wed May 20 00:08:15 2015 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed May 20 00:08:15 2015 +0000"
      },
      "message": "Merge \"CameraService: Logcat conflicting devices on rejected open\" into mnc-dev"
    },
    {
      "commit": "022f0cb0c6f135edde4ebe84859c685933ee895e",
      "tree": "938b6389523d0afeb02acf7904ce067869718a6c",
      "parents": [
        "4a95e69406aa2e9896d865962d6d947ebbdac6fc"
      ],
      "author": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Tue May 19 16:31:16 2015 -0700"
      },
      "committer": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Tue May 19 16:31:16 2015 -0700"
      },
      "message": "CameraService: Logcat conflicting devices on rejected open\n\nAlready in dumpsys log, but also put into logcat for feedback reports\n\nAlso fix a minor warning about an uninitialized variable.\n\nBug: 21063372\nChange-Id: I04b45932e4500ac72aaa1cb724abc8a82a0e70e8\n"
    },
    {
      "commit": "216db7455a19a2f1a5b29e3a9610231365b6c778",
      "tree": "86b657d4b0767ab3949a8e144675a3762f44df27",
      "parents": [
        "e28159ba94a7fa6711c2f1e459413ccce9f065ab"
      ],
      "author": {
        "name": "Yin-Chia Yeh",
        "email": "yinchiayeh@google.com",
        "time": "Mon May 18 15:03:35 2015 -0700"
      },
      "committer": {
        "name": "Yin-Chia Yeh",
        "email": "yinchiayeh@google.com",
        "time": "Tue May 19 11:56:18 2015 -0700"
      },
      "message": "Camera: API1 shim: notify shutter correctly\n\nPrevious implementation only notifies the callback when we receive\nfull capture result. This implementation notifies the callback\nonce HAL sends capture start callback.\n\nBug: 12530628\nChange-Id: Ibf71d532b5cf649514b316e35683c217021698b4\n"
    },
    {
      "commit": "6267b539d0d1ee7118aafd976d75cb8db397bc24",
      "tree": "5c950439fc8243ffd960bd72a666b4fce172a24d",
      "parents": [
        "51c834c8d321cee50cd07026771e46167a640dd3"
      ],
      "author": {
        "name": "Ruben Brunk",
        "email": "rubenbrunk@google.com",
        "time": "Thu Apr 30 17:44:07 2015 -0700"
      },
      "committer": {
        "name": "Ruben Brunk",
        "email": "rubenbrunk@google.com",
        "time": "Thu May 14 18:49:53 2015 -0700"
      },
      "message": "camera2: Fix work-profile eviction handling.\n\nBug: 20124384\nChange-Id: I6fb82dbfd5f98746ed4befed81a583e3709bfee8\n"
    },
    {
      "commit": "24fdd7a48ad8ef66f1e91567a9f7f4d8f89faa7f",
      "tree": "12fd8bd33552ec216e238c69e62ea4d97624484e",
      "parents": [
        "e6858d597ca98ce7e68e10545dfb604ed572d46a",
        "8050721de77a64c7b53467c5959f0ea38d80cab3"
      ],
      "author": {
        "name": "Ruben Brunk",
        "email": "rubenbrunk@google.com",
        "time": "Thu May 14 21:12:21 2015 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu May 14 21:12:21 2015 +0000"
      },
      "message": "Merge \"camera2: Fix empty set handling for eviction.\" into mnc-dev"
    },
    {
      "commit": "8050721de77a64c7b53467c5959f0ea38d80cab3",
      "tree": "66ffca37c75847be4e91d85b3f8c874743a7e0b1",
      "parents": [
        "804a77d1045c6c4023f73a0975a09025b2e8eef2"
      ],
      "author": {
        "name": "Ruben Brunk",
        "email": "rubenbrunk@google.com",
        "time": "Thu May 14 13:50:57 2015 -0700"
      },
      "committer": {
        "name": "Ruben Brunk",
        "email": "rubenbrunk@google.com",
        "time": "Thu May 14 13:50:57 2015 -0700"
      },
      "message": "camera2: Fix empty set handling for eviction.\n\nBug: 20304829\nChange-Id: I120ed6e41ca592c3770797a5fb1e5ce556543949\n"
    },
    {
      "commit": "467b6e152e3064b8da58551effb39e72acec14af",
      "tree": "847e606853829dd5d2739c76dfb3dbf3137f7773",
      "parents": [
        "56d78dffbd2e88987f693edb56d8fb9e5cd1c9f8",
        "b28c344904e9bab979ec58a1c7b42b0bf25234ba"
      ],
      "author": {
        "name": "Yin-Chia Yeh",
        "email": "yinchiayeh@google.com",
        "time": "Wed May 13 23:20:26 2015 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed May 13 23:20:27 2015 +0000"
      },
      "message": "Merge \"Camera: update CameraModule deriveKey\" into mnc-dev"
    },
    {
      "commit": "56d78dffbd2e88987f693edb56d8fb9e5cd1c9f8",
      "tree": "f23d9680f8a9a7c05769e3c337f906aaf6c9ead4",
      "parents": [
        "7cf1fe5df87e249557c87f5954d5dbbe310a618d",
        "261394e3edbe10f4f145f543187dcfbabf702c11"
      ],
      "author": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Wed May 13 22:58:55 2015 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed May 13 22:58:55 2015 +0000"
      },
      "message": "Merge \"Camera: Cleanup to prepare() implementation\" into mnc-dev"
    },
    {
      "commit": "261394e3edbe10f4f145f543187dcfbabf702c11",
      "tree": "218628b189893b3f8021f53466ff2976cb8b801f",
      "parents": [
        "804a77d1045c6c4023f73a0975a09025b2e8eef2"
      ],
      "author": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Wed May 13 14:28:38 2015 -0700"
      },
      "committer": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Wed May 13 14:28:38 2015 -0700"
      },
      "message": "Camera: Cleanup to prepare() implementation\n\n- Mutexes _might_ be a good idea\n- Don\u0027t be surprised by behavior that\u0027s expected\n- Use the existing logging macros\n\nBug: 20537148\nChange-Id: Ie62985a786d7e6645b4e4fe019dd98b02891a1f7\n"
    },
    {
      "commit": "2882bb9a94bba6477552e7f696984e8e1ce052ff",
      "tree": "d9c3a4121bc65f1f160f9cfb520a6ba10bf9989d",
      "parents": [
        "94183482a089690278fbe2346fa6946c9c7d97ef",
        "be0b6b4a3770a9dd2ff357fe3e88a6ba11a976ff"
      ],
      "author": {
        "name": "Ruben Brunk",
        "email": "rubenbrunk@google.com",
        "time": "Wed May 13 00:07:06 2015 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed May 13 00:07:07 2015 +0000"
      },
      "message": "Merge \"camera2: Fix arbitration priority calculation.\" into mnc-dev"
    },
    {
      "commit": "be0b6b4a3770a9dd2ff357fe3e88a6ba11a976ff",
      "tree": "108a879cb7c9f99d5c00695498863c65a66db14e",
      "parents": [
        "804a77d1045c6c4023f73a0975a09025b2e8eef2"
      ],
      "author": {
        "name": "Ruben Brunk",
        "email": "rubenbrunk@google.com",
        "time": "Tue May 12 16:10:52 2015 -0700"
      },
      "committer": {
        "name": "Ruben Brunk",
        "email": "rubenbrunk@google.com",
        "time": "Tue May 12 16:10:52 2015 -0700"
      },
      "message": "camera2: Fix arbitration priority calculation.\n\n- Simplify priority calculation + handle constants\n  added for device sleep: FOREGROUND_SERVICE and\n  TOP_SLEEPING.\n\nBug: 19186859\nChange-Id: Ia2a5517cd3150deaccb58a0aa1eaa583cb769add\n"
    },
    {
      "commit": "d0e25a2529584b07e4fe3544f973c6b0ebda7fc3",
      "tree": "e59d9497976b71d5860f5939a7e4f6f9e7e7a0ee",
      "parents": [
        "28e8ef72dab287af59663b89b12507e43f760701",
        "022ed72e650f756288492ac7a10a7b41e0b14f82"
      ],
      "author": {
        "name": "Ronghua Wu",
        "email": "ronghuawu@google.com",
        "time": "Tue May 12 17:10:03 2015 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue May 12 17:10:04 2015 +0000"
      },
      "message": "Merge \"mediaresourcemanager: change resource manager service log to use ring buffer.\" into mnc-dev"
    },
    {
      "commit": "28e8ef72dab287af59663b89b12507e43f760701",
      "tree": "00aa103533ce393977def221c5a642716ef0fec1",
      "parents": [
        "7e31a87177740d06c4a1bc81369d3cfb9e013ad9"
      ],
      "author": {
        "name": "Svetoslav",
        "email": "svetoslavganov@google.com",
        "time": "Mon May 11 19:21:31 2015 -0700"
      },
      "committer": {
        "name": "Svetoslav Ganov",
        "email": "svetoslavganov@google.com",
        "time": "Tue May 12 03:47:31 2015 +0000"
      },
      "message": "Fail gracefully when camera app op is not enabled.\n\nChange-Id: I0c7c1dca1c0966efaf30bcfe12636953683712ab\n"
    },
    {
      "commit": "7e31a87177740d06c4a1bc81369d3cfb9e013ad9",
      "tree": "396858f5a823e9e13313dc91c820a2fe77cf8aed",
      "parents": [
        "fedef1384d5ff758285fb19161a0348e1e32ab3f",
        "280405a138a0068694f3c39b4290f510173133d9"
      ],
      "author": {
        "name": "Svetoslav Ganov",
        "email": "svetoslavganov@google.com",
        "time": "Tue May 12 02:20:24 2015 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue May 12 02:20:24 2015 +0000"
      },
      "message": "Merge \"Revert \"Add camera app op - camera\"\" into mnc-dev"
    },
    {
      "commit": "280405a138a0068694f3c39b4290f510173133d9",
      "tree": "691b6bc4e9a5011b38233f01df9e0486d9ce759a",
      "parents": [
        "32fa6d0e65dbf956e253a1006e9419dce2fe75c9"
      ],
      "author": {
        "name": "Svetoslav Ganov",
        "email": "svetoslavganov@google.com",
        "time": "Tue May 12 02:19:27 2015 +0000"
      },
      "committer": {
        "name": "Svetoslav Ganov",
        "email": "svetoslavganov@google.com",
        "time": "Tue May 12 02:19:27 2015 +0000"
      },
      "message": "Revert \"Add camera app op - camera\"\n\nThis is not needed duplication of work\n\nThis reverts commit 32fa6d0e65dbf956e253a1006e9419dce2fe75c9.\n\nChange-Id: I2c81b0dacb2ed99c408c79c1f9e22a4baa564494\n"
    },
    {
      "commit": "022ed72e650f756288492ac7a10a7b41e0b14f82",
      "tree": "6c07c47b9b3c2d0b68eb9b989a879065a96f15bc",
      "parents": [
        "9ba21b9418d10ddcc39f08901e24fbf43d82b2bc"
      ],
      "author": {
        "name": "Ronghua Wu",
        "email": "ronghuawu@google.com",
        "time": "Mon May 11 15:15:09 2015 -0700"
      },
      "committer": {
        "name": "Ronghua Wu",
        "email": "ronghuawu@google.com",
        "time": "Mon May 11 15:16:54 2015 -0700"
      },
      "message": "mediaresourcemanager: change resource manager service log to use ring buffer.\n\nmove the ring buffer implementation from libcameraservice to media include.\n\nalso add line prefix support to the service log.\n\nBug: 20637674\nChange-Id: Ib6b32f31abe92c42644ef7012f1e3d46220ccfbd\n"
    },
    {
      "commit": "b28c344904e9bab979ec58a1c7b42b0bf25234ba",
      "tree": "40d3909682ff0c599e86ca2e75011d0721c853d1",
      "parents": [
        "d7ab7afa57ed1fa6fb9c4ce18ea0df3ec939c067"
      ],
      "author": {
        "name": "Yin-Chia Yeh",
        "email": "yinchiayeh@google.com",
        "time": "Thu May 07 14:43:19 2015 -0700"
      },
      "committer": {
        "name": "Yin-Chia Yeh",
        "email": "yinchiayeh@google.com",
        "time": "Thu May 07 14:43:19 2015 -0700"
      },
      "message": "Camera: update CameraModule deriveKey\n\nTo add derived keys into availableCharacteristicsKey.\n\nBug: 20883751\nChange-Id: I49d6d1bb79e6f31825dbfdebb039acbd5d9abe68\n"
    },
    {
      "commit": "5da9f8450c8d91ec91b79a74542f997a4bbb2f27",
      "tree": "7402598de498ba1dfd93c0ebcfef7ca45f6a35a3",
      "parents": [
        "d975e98aac096b8b0ed600f39c18630ba234ef7d",
        "ed0412ed78321bf9d35537626e33115862f7c805"
      ],
      "author": {
        "name": "Chien-Yu Chen",
        "email": "cychen@google.com",
        "time": "Thu May 07 20:24:48 2015 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu May 07 20:24:49 2015 +0000"
      },
      "message": "Merge \"Camera2: allow mixing regular/reprocess requests\" into mnc-dev"
    },
    {
      "commit": "ed0412ed78321bf9d35537626e33115862f7c805",
      "tree": "b581ebde8b57ebf5fac45e5b9d24926f9786594f",
      "parents": [
        "466dc8ed6ca6b7f585104806c48613dd34e608c9"
      ],
      "author": {
        "name": "Chien-Yu Chen",
        "email": "cychen@google.com",
        "time": "Mon Apr 27 15:04:22 2015 -0700"
      },
      "committer": {
        "name": "Chien-Yu Chen",
        "email": "cychen@google.com",
        "time": "Tue May 05 14:02:01 2015 -0700"
      },
      "message": "Camera2: allow mixing regular/reprocess requests\n\nAllow mixing regular and reprocess requests in a capture burst. Also\ncall abandon() when deleting an input stream.\n\nBug: 20537735\nChange-Id: If8c7781038173ab21c73f5ddc32f53793cf86fd9\n"
    }
  ],
  "next": "9c5af614aac9d9ffeee9124ce10f0f4bc025398d"
}
