)]}'
{
  "log": [
    {
      "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": "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": "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": "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": "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": "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": "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": "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": "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": "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": "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": "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": "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": "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": "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": "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": "49c9705a7987b94bd53fddd4834f5f534cf946f7",
      "tree": "0fb944424a80a64d9af14239309c7d3264e127df",
      "parents": [
        "df9e6aaf716279baf0e27b99acf10005924245ed"
      ],
      "author": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Tue Jan 12 14:29:40 2016 -0800"
      },
      "committer": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Tue Jan 12 14:30:28 2016 -0800"
      },
      "message": "CameraService: Further fixes to default camera counts\n\nAt least one section of code still doesn\u0027t clear the camera\ncounts correctly on error, so ensure that they always start at 0.\n\nAlso include normal camera count in dumpsys, and remove unnecessary\ninitializers in the constructor.\n\nChange-Id: Ib891bd37ab5f74b43d5d31b24ac23fa0b11434b3\n"
    },
    {
      "commit": "418f4d1350da8931853a616d4da180978c6bb971",
      "tree": "2d8f8bd98e9b6f7b03916cd5218236c150d77bf4",
      "parents": [
        "7abffd68a77a7ed89b75361a671ce4a4cdacd142"
      ],
      "author": {
        "name": "Wang, Jianfeng XA",
        "email": "jianfeng.xa.wang@sonymobile.com",
        "time": "Tue May 27 17:48:08 2014 +0900"
      },
      "committer": {
        "name": "Hidenari Koshimae",
        "email": "hidenari.koshimae@sonymobile.com",
        "time": "Tue Jan 12 15:04:39 2016 +0900"
      },
      "message": "libcameraservice: Allow media server to disconnect camera even unlocked\n\nThe camera service may fail to release the camera hardware instance\nin some use cases.\nWhen an application unlocked the camera before disconnect, disconnect\nfrom the application will not be accepted. And disconnect from media\nserver will not be accepted also. Then, the camera hardware instance\nwill not be released and a resource leak will be caused.\n\nAllow media server to disconnect the camera at all times even if\nthe camera is unlocked.\n\nChange-Id: Icd5ed81bed242fa5947aa40ca85e4ca7fa7286e7\n"
    },
    {
      "commit": "d0ef20e9e91afa734078bc229a5ded8e7e3ab944",
      "tree": "90d2f552051d2bc811fe01bea052842766e6dcfd",
      "parents": [
        "6152b8ce798f3cbb6a737a2b834edf0a33feee6f",
        "8cca0750a84c2d97224c0cfef7cf255308ee80b3"
      ],
      "author": {
        "name": "Chien-Yu Chen",
        "email": "cychen@google.com",
        "time": "Wed Dec 09 18:27:46 2015 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Dec 09 18:27:46 2015 +0000"
      },
      "message": "Merge \"Camera: Support BufferQueue between Camera and StageFright\""
    },
    {
      "commit": "e9154ced1216ceb06a82140ed65051c0397e8abc",
      "tree": "ec510e85dfb95120b707d1985a99ec92263f236b",
      "parents": [
        "5be2304ab2a1e40ca85f2c01defa4bb33e8344d9"
      ],
      "author": {
        "name": "Yin-Chia Yeh",
        "email": "yinchiayeh@google.com",
        "time": "Mon Dec 07 14:38:04 2015 -0800"
      },
      "committer": {
        "name": "Yin-Chia Yeh",
        "email": "yinchiayeh@google.com",
        "time": "Tue Dec 08 13:31:10 2015 -0800"
      },
      "message": "Camera: plumbing for RAW OPAQUE\n\nBug: 25596619\nChange-Id: I0867a36962084bc508aebc89cb910473402a5e09\n"
    },
    {
      "commit": "654b4bf34361b0166a564d178c11ce98cf561cfa",
      "tree": "8a76eb9c6e4f193dab308688d03ee8bf2d0bfed3",
      "parents": [
        "4aeee811662bdb8f6f4b24884d62780deb7ca1c6"
      ],
      "author": {
        "name": "Yin-Chia Yeh",
        "email": "yinchiayeh@google.com",
        "time": "Tue Dec 08 12:19:31 2015 -0800"
      },
      "committer": {
        "name": "Yin-Chia Yeh",
        "email": "yinchiayeh@google.com",
        "time": "Tue Dec 08 12:22:47 2015 -0800"
      },
      "message": "Camera: fix HAL1.0 support\n\nBug: 26050582\nChange-Id: Ic64fb005d7c804dc2b8b9c22fdbe44408646b406\n"
    },
    {
      "commit": "8cca0750a84c2d97224c0cfef7cf255308ee80b3",
      "tree": "5c57eb6c935102e464667b8fa86364f19bce8495",
      "parents": [
        "cf52591e7441fcea757ca9090a66dbcdff0a73e3"
      ],
      "author": {
        "name": "Chien-Yu Chen",
        "email": "cychen@google.com",
        "time": "Fri Nov 13 15:28:48 2015 -0800"
      },
      "committer": {
        "name": "Chien-Yu Chen",
        "email": "cychen@google.com",
        "time": "Tue Dec 08 12:17:46 2015 -0800"
      },
      "message": "Camera: Support BufferQueue between Camera and StageFright\n\nUse a BufferQueue between Camera and StageFright to pass video\nbuffers for Camera HALv3 devices.\n\nCameraSource in StageFright will try to use \"buffer queue\" mode\nif it is supported by the camera device. In \"buffer queue\" mode,\nCameraSource creates a buffer queue and a listener thread to recieve\nvideo buffers from camera device. CameraSource then wraps the\nANWBuffer in MediaBuffer. If the camera device doesn\u0027t support\n\"buffer queue\" mode, it falls back to \"metadata in video buffer\"\nmode or \"real YUV data\" mode.\n\n\"Metadata in video buffer\" mode is removed from Camera2Client and\nonly \"buffer queue\" mode is supported.\n\nBug: 24511454\n\nChange-Id: Ice833b57bcd8d91852d6415402013f56f3e3970a\n"
    },
    {
      "commit": "a6b3ed1b8ee37fe244dfbcbe3dbeda66b55c846d",
      "tree": "4f71def928a5d8fe056fc09ba45e8d2a559fb96b",
      "parents": [
        "d00a17d24d888dd1f6d245fbe6425865e6f56894",
        "169e8ebba23f461cdb57f10985e044e235457b0a"
      ],
      "author": {
        "name": "Yin-Chia Yeh",
        "email": "yinchiayeh@google.com",
        "time": "Mon Dec 07 20:25:55 2015 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Dec 07 20:25:55 2015 +0000"
      },
      "message": "Merge \"Camera: set mNumberOfNormalCameras correctly\""
    },
    {
      "commit": "169e8ebba23f461cdb57f10985e044e235457b0a",
      "tree": "fa989031a53297c5f2ff9f88c93fe5ff4c6ce4a3",
      "parents": [
        "fd51bde24bcd19a265c8d54acbd12322caca91c2"
      ],
      "author": {
        "name": "Yin-Chia Yeh",
        "email": "yinchiayeh@google.com",
        "time": "Mon Dec 07 12:20:11 2015 -0800"
      },
      "committer": {
        "name": "Yin-Chia Yeh",
        "email": "yinchiayeh@google.com",
        "time": "Mon Dec 07 12:20:11 2015 -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": "d309fb9c8a2c4564d88fffba19c4e3688e4b862b",
      "tree": "6bfe3758c23a0a46e4d198ccb9a3a28ba65abe4d",
      "parents": [
        "dc123cbae198204e8c6c3d4f4f09a95cbc0e9ec5"
      ],
      "author": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Wed Nov 25 12:12:45 2015 -0800"
      },
      "committer": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Tue Dec 01 11:58:16 2015 -0800"
      },
      "message": "CameraService: Remove device HALv2 support, other cleanup\n\nHALv2 only ever shipped with Nexus 10, and has been fully superceded by\nHALv3. Remove it to allow for various code simplifications and cleanup.\n\n- Remove Camera2Device\n- Remove various special-case codepaths for supporting Camera2Device\n- Remove CameraDeviceFactory, since it only creates Camera3Devices now\n- Remove BurstCapture and associated CaptureSequence/Parameters code\n- Remove old ZslProcessor and simplify ZslProcessor hierarchy to be\n  just ZslProcessor3, which is renamed to just ZslProcessor\n- Add service-init-time check for unsupported device versions\n- Fix assorted compiler warnings, some old, some new\n- Remove references to HALv2 when possible\n\nBug: 25866588\nChange-Id: Ia1063264d315f9b742ec5cdd0483539310894f5e\n"
    },
    {
      "commit": "7e7a62dc6c20b5ff761b87d99379797aa3fd7d9d",
      "tree": "6653efc556689b23b9e929d630911235bb7f32fa",
      "parents": [
        "1f90f7da49cbccb710b9a7b39828bd147917b6bb"
      ],
      "author": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Wed Nov 04 14:49:43 2015 -0800"
      },
      "committer": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Wed Nov 04 14:49:43 2015 -0800"
      },
      "message": "CameraService: Add option to dump templates to HALv3 devices\n\nAdd -t to dumpsys media.camera to dump the request templates of any open\nHALv3 camera devices.\n\nChange-Id: Ib2746d5ca4a25e7f8eab842e6a99daa03f15acb8\n"
    },
    {
      "commit": "e9ccb98fc7259cbd876f02381b0eec4d5a5ff4ff",
      "tree": "2ae7b9ec162e08343bc5f16bbbae32225640b0e4",
      "parents": [
        "7350b057ca864f5dc9e53d48e34710a8e81133f8"
      ],
      "author": {
        "name": "Makoto Onuki",
        "email": "omakoto@google.com",
        "time": "Wed Oct 28 16:48:27 2015 -0700"
      },
      "committer": {
        "name": "Makoto Onuki",
        "email": "omakoto@google.com",
        "time": "Thu Oct 29 11:11:08 2015 -0700"
      },
      "message": "Remove \"sys.secpolicy.camera.off_\" system property check\n\nWith I421690f14ee57fa818d2b233fe48a90a0a575a9e, now the device policy camera\nrestrictions will be propagated with a user restriction via appops, so the\nsystem property check is no longer needed.\n\nBug 24538855\n\nChange-Id: I7b034c0d49b834e570c758315df6a0163f64af4e\n"
    },
    {
      "commit": "55a4d0bdf185b0cf7e37ca0446e4e5046cef5534",
      "tree": "aa08cb079f6ec576540ee954d53606748355b458",
      "parents": [
        "d58f15c3329123d9506263a07301b70a86e9bc17",
        "80ad49403ede54092e128ddf9f1fe2ef7bc53944"
      ],
      "author": {
        "name": "Ian Pedowitz",
        "email": "ijpedowitz@google.com",
        "time": "Thu Oct 22 02:15:15 2015 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Thu Oct 22 02:15:15 2015 +0000"
      },
      "message": "Merge \"DO NOT MERGE: libcameraservice: Fix nullptr crash when no client.\" into mnc-dr-dev am: c0d8c35a2d\nam: 80ad49403e\n\n* commit \u002780ad49403ede54092e128ddf9f1fe2ef7bc53944\u0027:\n  DO NOT MERGE: libcameraservice: Fix nullptr crash when no client.\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": "2d3e2892f1640ad9fa18f70e2152cf10fa43f933",
      "tree": "f0da994f49599a1157c6af421aec82d7c26aa83d",
      "parents": [
        "7f03a03a62bb10b99fd194ba864f17e61a73dda7",
        "fc7b5a4a10fe8cf02f1a9fd330d06319fcabdb05"
      ],
      "author": {
        "name": "Ranjith Kagathi Ananda",
        "email": "ranjith@codeaurora.org",
        "time": "Mon Oct 19 17:32:38 2015 +0000"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Mon Oct 19 17:32:38 2015 +0000"
      },
      "message": "am fc7b5a4a: am a04159ac: libcameraservice: Fix ALOG prints in FlashLight. am: 32ab9fdab5\n\n* commit \u0027fc7b5a4a10fe8cf02f1a9fd330d06319fcabdb05\u0027:\n  libcameraservice: Fix ALOG prints in FlashLight.\n"
    },
    {
      "commit": "7f03a03a62bb10b99fd194ba864f17e61a73dda7",
      "tree": "bfab1c7a5ce286e1491fdbb59fd02521160f8f76",
      "parents": [
        "25cf8fe362e3fb57e7abdf2930be9f40296fb450",
        "1d288267c357e90dd68a1eb43f35db00309cab5a"
      ],
      "author": {
        "name": "Ranjith Kagathi Ananda",
        "email": "ranjith@codeaurora.org",
        "time": "Mon Oct 19 17:32:36 2015 +0000"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Mon Oct 19 17:32:36 2015 +0000"
      },
      "message": "am 1d288267: am b4a3c6dd: Camera: frameworks: Add NULL check for callback am: 3e60089468\n\n* commit \u00271d288267c357e90dd68a1eb43f35db00309cab5a\u0027:\n  Camera: frameworks: Add NULL check for callback\n"
    },
    {
      "commit": "fc7b5a4a10fe8cf02f1a9fd330d06319fcabdb05",
      "tree": "ca32c3d44f07c0ff5f37d7dacb5e110d050ada09",
      "parents": [
        "1d288267c357e90dd68a1eb43f35db00309cab5a",
        "a04159acc4c49f13fbfa5b5bee5e5b622eb2d659"
      ],
      "author": {
        "name": "Ranjith Kagathi Ananda",
        "email": "ranjith@codeaurora.org",
        "time": "Mon Oct 19 17:29:48 2015 +0000"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Mon Oct 19 17:29:48 2015 +0000"
      },
      "message": "am a04159ac: libcameraservice: Fix ALOG prints in FlashLight. am: 32ab9fdab5\n\n* commit \u0027a04159acc4c49f13fbfa5b5bee5e5b622eb2d659\u0027:\n  libcameraservice: Fix ALOG prints in FlashLight.\n"
    },
    {
      "commit": "1d288267c357e90dd68a1eb43f35db00309cab5a",
      "tree": "748ffa711658f0a3bb0d8c8dde9dc93952f68307",
      "parents": [
        "2022f6f8f6df75eac878fac0cd5338f878700fc6",
        "b4a3c6dd7e48bc9d3f68c609b2b28abec67d1eeb"
      ],
      "author": {
        "name": "Ranjith Kagathi Ananda",
        "email": "ranjith@codeaurora.org",
        "time": "Mon Oct 19 17:29:47 2015 +0000"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Mon Oct 19 17:29:47 2015 +0000"
      },
      "message": "am b4a3c6dd: Camera: frameworks: Add NULL check for callback am: 3e60089468\n\n* commit \u0027b4a3c6dd7e48bc9d3f68c609b2b28abec67d1eeb\u0027:\n  Camera: frameworks: Add NULL check for callback\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": "ce497dabca19d34d46a87598315be885e906871e",
      "tree": "1be7d926c29b033e6a2c1505c6a4806e8a7226f0",
      "parents": [
        "13758331f9db389271c1cb432f1a11edbf073ab2",
        "176a017fabaf753db36ffe4a3069447d9df4cf3b"
      ],
      "author": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Fri Oct 16 23:33:14 2015 +0000"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Fri Oct 16 23:33:14 2015 +0000"
      },
      "message": "am 176a017f: am 25add6d4: am 43c39be5: Merge \"ALOGE does not match triggering condition.\"\n\n* commit \u0027176a017fabaf753db36ffe4a3069447d9df4cf3b\u0027:\n  ALOGE does not match triggering condition.\n"
    },
    {
      "commit": "176a017fabaf753db36ffe4a3069447d9df4cf3b",
      "tree": "c9686beb5fff7d3698c538db84c963b3d0d802f4",
      "parents": [
        "4e027b587f6b05999ed10f14c4f8ccf0cd7a1f02",
        "25add6d481bba37552f0f8b6ed225bed98594034"
      ],
      "author": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Fri Oct 16 23:07:19 2015 +0000"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Fri Oct 16 23:07:19 2015 +0000"
      },
      "message": "am 25add6d4: am 43c39be5: Merge \"ALOGE does not match triggering condition.\"\n\n* commit \u002725add6d481bba37552f0f8b6ed225bed98594034\u0027:\n  ALOGE does not match triggering condition.\n"
    },
    {
      "commit": "25add6d481bba37552f0f8b6ed225bed98594034",
      "tree": "cc06216e8f36d8dc16a21a9d650778ceb66be063",
      "parents": [
        "a80a60fe98b49a85368ebfe454ccf9d276d95813",
        "43c39be58651745a55e5d66568f92c03d695b461"
      ],
      "author": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Fri Oct 16 16:01:34 2015 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Fri Oct 16 16:01:34 2015 -0700"
      },
      "message": "am 43c39be5: Merge \"ALOGE does not match triggering condition.\"\n\n* commit \u002743c39be58651745a55e5d66568f92c03d695b461\u0027:\n  ALOGE does not match triggering condition.\n"
    },
    {
      "commit": "43c39be58651745a55e5d66568f92c03d695b461",
      "tree": "f2695600731028d5b0709995107951d84eaf523b",
      "parents": [
        "34f7007194bcc6a27cafc93e2a15eee468b3d746",
        "19fdbfcf8af3ca689c3c62b88059ac5d3c6907d1"
      ],
      "author": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Fri Oct 16 22:55:57 2015 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Fri Oct 16 22:55:57 2015 +0000"
      },
      "message": "Merge \"ALOGE does not match triggering condition.\""
    },
    {
      "commit": "86803a9be4dbe0c544aff4c44b186433b9efed26",
      "tree": "15f3d6aeb806fb60ca32bc93f7fc89ee5cbdcac6",
      "parents": [
        "9690bf3690c9b720656cebf6da390800e7395213",
        "bb19b792cf51934fd5f4fe989e66255cc8e132a4"
      ],
      "author": {
        "name": "Yin-Chia Yeh",
        "email": "yinchiayeh@google.com",
        "time": "Thu Oct 15 21:13:45 2015 +0000"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Thu Oct 15 21:13:45 2015 +0000"
      },
      "message": "am bb19b792: am abe90449: am ceb10ea7: Merge \"Camera: setup vendor tags before get_camera_info\" into mnc-dr-dev\n\n* commit \u0027bb19b792cf51934fd5f4fe989e66255cc8e132a4\u0027:\n  Camera: setup vendor tags before get_camera_info\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": "454b6785c759a9bcfa33fce1ed27b04a381f9799",
      "tree": "204c1e6124b542e736ece72323f396bcf44b74b9",
      "parents": [
        "f1d250c4f18c48773cecde827b79bfb1b2c597d5",
        "2aeef2fdb34575d7981f62bd06936e6e9cee628a"
      ],
      "author": {
        "name": "Chien-Yu Chen",
        "email": "cychen@google.com",
        "time": "Wed Oct 14 23:59:23 2015 +0000"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Wed Oct 14 23:59:23 2015 +0000"
      },
      "message": "am 2aeef2fd: am 50652c7e: am 5f54de48: Merge \"Camera: Add video recording stop sound\" into mnc-dr-dev\n\n* commit \u00272aeef2fdb34575d7981f62bd06936e6e9cee628a\u0027:\n  Camera: Add video recording stop sound\n"
    },
    {
      "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": "a578772d9697726dce439d0a00c6814bc9859f75",
      "tree": "fa6a1701f88dca0568e33bc60e204609450b5101",
      "parents": [
        "25374c0aa16b4f670cfe2498bcf9a5c7134909de",
        "f8b1280535a6e3ebcf864d434a01d6c672cadd9a"
      ],
      "author": {
        "name": "Chien-Yu Chen",
        "email": "cychen@google.com",
        "time": "Wed Oct 14 01:06:38 2015 +0000"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Wed Oct 14 01:06:38 2015 +0000"
      },
      "message": "am f8b12805: am f339beaf: am 2e1683c4: Merge \"Fix setTorchMode support for the old HAL version\"\n\n* commit \u0027f8b1280535a6e3ebcf864d434a01d6c672cadd9a\u0027:\n  Fix setTorchMode support for the old HAL version\n"
    },
    {
      "commit": "f339beaf97f4112684c01e40d5ed9f4bfe3270fa",
      "tree": "c95b9cc09efc0a0177b1f591a708a93f34bca1f2",
      "parents": [
        "1982dfdc2a9e99331d02a6591b2cbe2f65ae1103",
        "2e1683c4871faccea74f181194e193cb28016cf3"
      ],
      "author": {
        "name": "Chien-Yu Chen",
        "email": "cychen@google.com",
        "time": "Wed Oct 14 00:55:01 2015 +0000"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Wed Oct 14 00:55:01 2015 +0000"
      },
      "message": "am 2e1683c4: Merge \"Fix setTorchMode support for the old HAL version\"\n\n* commit \u00272e1683c4871faccea74f181194e193cb28016cf3\u0027:\n  Fix setTorchMode support for the old HAL version\n"
    },
    {
      "commit": "19fdbfcf8af3ca689c3c62b88059ac5d3c6907d1",
      "tree": "c83554d771408852f21c637f0f0d65e473622671",
      "parents": [
        "3cce4937ae9bb3a522bee74a47807c8cf0b462d5"
      ],
      "author": {
        "name": "Hubert Rzezniczak",
        "email": "hubert.rzezniczak@gmail.com",
        "time": "Tue Oct 13 13:17:43 2015 +0200"
      },
      "committer": {
        "name": "Hubert Rzezniczak",
        "email": "hubert.rzezniczak@gmail.com",
        "time": "Tue Oct 13 13:17:43 2015 +0200"
      },
      "message": "ALOGE does not match triggering condition.\n\nMeeting the condition\nif (sceneModeOverrides.count !\u003d\n                availableSceneModes.count * kModesPerSceneMode) {\nresults with ALOGE which describes the missmatch.\nThe description does not match the condition.\n\nSigned-off-by: Hubert Rzezniczak \u003chubert.rzezniczak@gmail.com\u003e\n"
    },
    {
      "commit": "741fd4d9070c1dbe9ff297a8a3fc6317c3808482",
      "tree": "172cac13cf08e9012cd234b151940fbbfa795399",
      "parents": [
        "9589b4683cbce551eaafde67cb2af94773a9f51d"
      ],
      "author": {
        "name": "Oleksiy Avramchenko",
        "email": "oleksiy.avramchenko@sonymobile.com",
        "time": "Mon Sep 14 11:00:33 2015 +0200"
      },
      "committer": {
        "name": "Johan Redestig",
        "email": "johan.redestig@sonymobile.com",
        "time": "Wed Oct 07 14:28:19 2015 +0200"
      },
      "message": "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\nChange-Id: Icb1ffb07f05256afd92821f0f4908cda5332c05b\n"
    },
    {
      "commit": "29d56072745c91933c416a149900e7d431dd5a84",
      "tree": "bcddb185a7bde7937a55aafb953f9e6815a3e5f9",
      "parents": [
        "be094287351c59fe06b4c8d3aa73f7f7de0522d0",
        "463e71c6766e68bc042b89c53751095053950c4c"
      ],
      "author": {
        "name": "Chien-Yu Chen",
        "email": "cychen@google.com",
        "time": "Fri Oct 02 22:12:00 2015 +0000"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Fri Oct 02 22:12:00 2015 +0000"
      },
      "message": "am 463e71c6: am fc07d1e6: am 4a8f4a3f: Camera3Device: Change HFR request thread priority to 1\n\n* commit \u0027463e71c6766e68bc042b89c53751095053950c4c\u0027:\n  Camera3Device: Change HFR request thread priority to 1\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": "921c7dffbd7f594b13688abae363d562eaefa8a0",
      "tree": "4c45476900dc76dbe195ec1d9d6cad5b988c70fb",
      "parents": [
        "2f996c9514f4255ed693c860631e4634d20de8bd",
        "27dbbd1d26d71edab353fbfc1f741a9abee3590f"
      ],
      "author": {
        "name": "Chien-Yu Chen",
        "email": "cychen@google.com",
        "time": "Thu Oct 01 01:22:28 2015 +0000"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Thu Oct 01 01:22:28 2015 +0000"
      },
      "message": "am 27dbbd1d: am d270804d: am a24a1a63: Merge \"Camera3Device: Bookkeeping reprocess shutters separately\" into mnc-dr-dev\n\n* commit \u002727dbbd1d26d71edab353fbfc1f741a9abee3590f\u0027:\n  Camera3Device: Bookkeeping reprocess shutters separately\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": "060b582b37f55b758a41b0cc26dc1ff6d112814f",
      "tree": "8c4ff6e6c03cef46f38f6fd6f7a4c837420fa45e",
      "parents": [
        "2d93abfb06455176b7f2fcde0d9fd4dfe7a0973c",
        "b171ba8ce83ebb5abc2de9a171a15dc974756d3d"
      ],
      "author": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Sun Sep 27 15:12:31 2015 +0000"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Sun Sep 27 15:12:31 2015 +0000"
      },
      "message": "am b171ba8c: am ffce26c0: am f99498ee: CameraService: Use SCHED_FIFO for request queue thread in HFR\n\n* commit \u0027b171ba8ce83ebb5abc2de9a171a15dc974756d3d\u0027:\n  CameraService: Use SCHED_FIFO for request queue thread in HFR\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": "3145ccfef7adc84a99eb88b8ac6840fd38756e31",
      "tree": "49199e2560a952e7f40188c4de9773cf1224881c",
      "parents": [
        "15609188082d0707ce369884ae8bf80dbc84bbf7",
        "686008a0b91242314abfc5c861c74249f6328d90"
      ],
      "author": {
        "name": "Yin-Chia Yeh",
        "email": "yinchiayeh@google.com",
        "time": "Tue Sep 15 01:06:35 2015 +0000"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Tue Sep 15 01:06:35 2015 +0000"
      },
      "message": "am 686008a0: am 08879050: am 3818c696: Merge \"Camera: API1 shim: select better default FPS range\" into mnc-dr-dev\n\n* commit \u0027686008a0b91242314abfc5c861c74249f6328d90\u0027:\n  Camera: API1 shim: select better default FPS range\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": "69c24d3c6e42472f3e4e155559be100dd6f7121a",
      "tree": "a94ff499e865d2bc71f73b2357f52305a22b1aed",
      "parents": [
        "c5aa679da8a249246562afe2b0df0aedd921d2a0",
        "a8f5e0c24143299e3b3d722487de7322f7761559"
      ],
      "author": {
        "name": "Pablo Ceballos",
        "email": "pceballos@google.com",
        "time": "Mon Sep 14 18:28:14 2015 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Sep 14 18:28:14 2015 +0000"
      },
      "message": "Merge changes from topic \u0027Bug 19769719\u0027\n\n* changes:\n  stagefright: Rename mBuf to mSlot\n  camera: Rename mBuf to mSlot\n"
    },
    {
      "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": "e361bc024ee7e34b7d53223aa2b209ef120ee78a",
      "tree": "8f0d1384a21e1d29e009c68b602e4d43b7af2a93",
      "parents": [
        "7e9529f7607eb29fd99ebaa61cf749a8cd55511e"
      ],
      "author": {
        "name": "Pablo Ceballos",
        "email": "pceballos@google.com",
        "time": "Fri Aug 07 15:13:49 2015 -0700"
      },
      "committer": {
        "name": "Pablo Ceballos",
        "email": "pceballos@google.com",
        "time": "Fri Aug 07 15:13:49 2015 -0700"
      },
      "message": "camera: Rename mBuf to mSlot\n\nBug: 19769719\nChange-Id: I9eef512f2a2185b7e0298113d2503b62ec2e5942\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"
    }
  ],
  "next": "ab5135b254c6f9aaac8edb816596f8823dbdb3d5"
}
