)]}'
{
  "log": [
    {
      "commit": "eb144bbbd0b18427562b0d7db5b38e11f9484739",
      "tree": "c9ca9b64b648eef884e088f55c3693c0ddbc9c40",
      "parents": [
        "1bb59258458350af518170558120783bc2f9e61d"
      ],
      "author": {
        "name": "Andrei V. FOMITCHEV",
        "email": "andreix.fomitchev@intel.com",
        "time": "Tue Oct 09 11:33:25 2012 +0200"
      },
      "committer": {
        "name": "David Wagner",
        "email": "david.wagner@intel.com",
        "time": "Tue Jul 30 14:42:08 2013 +0200"
      },
      "message": "Fix mismatched delete/new couple\n\nIn RecordThread::readInputParameters(), mRsmpInBuffer is allocated\nwith new[] and should be freed with delete[] instead of delete.\n\nThis error has been found by valgrind.\n\nChange-Id: I2f947abb658a21a7d1e61eebb99270cb37d2d147\nSigned-off-by: Andrei V. FOMITCHEV \u003candreix.fomitchev@intel.com\u003e\nSigned-off-by: David Wagner \u003cdavid.wagner@intel.com\u003e\nSigned-off-by: Jack Ren \u003cjack.ren@intel.com\u003e\nSigned-off-by: Bruce Beare \u003cbruce.j.beare@intel.com\u003e\n"
    },
    {
      "commit": "adaa78c901a2f2509965b7acc1cde848dfc6bafe",
      "tree": "130ea2f4111654771de0807a0ffd2fda5ba92365",
      "parents": [
        "06a4604e77b5872857ef95fe712b6ce00c7aa506",
        "a2520db02bead68d4980783c41500ae96511bdf8"
      ],
      "author": {
        "name": "Zhijun He",
        "email": "zhijunhe@google.com",
        "time": "Tue Jul 09 08:00:35 2013 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Tue Jul 09 08:00:35 2013 -0700"
      },
      "message": "am a2520db0: camera2/3: set preview callback oneshot flag during still capture\n\n* commit \u0027a2520db02bead68d4980783c41500ae96511bdf8\u0027:\n  camera2/3: set preview callback oneshot flag during still capture\n"
    },
    {
      "commit": "a2520db02bead68d4980783c41500ae96511bdf8",
      "tree": "4700e3363f26d6cc69f6eccbf82db96dc39503f1",
      "parents": [
        "4a5c009bc2389304cf078c270bceb656479367d2"
      ],
      "author": {
        "name": "Zhijun He",
        "email": "zhijunhe@google.com",
        "time": "Mon Jul 08 16:12:32 2013 -0700"
      },
      "committer": {
        "name": "Zhijun He",
        "email": "zhijunhe@google.com",
        "time": "Mon Jul 08 17:22:16 2013 -0700"
      },
      "message": "camera2/3: set preview callback oneshot flag during still capture\n\nPreview callback oneshot flag need set when a still picture is being captured\nand preview callback oneshot is enabled, otherwise, the callback enabling status\ncould be lost when preview is restarted after still catpure.\n\nBug 9742091\n\nChange-Id: If9562369013e53727edfdd16f3d00d6a9392e70d\n"
    },
    {
      "commit": "06a4604e77b5872857ef95fe712b6ce00c7aa506",
      "tree": "1bd43bfc13e12c0e189ceb55e978ff0fb6db0974",
      "parents": [
        "291967728b02ad9a7d5545b0eb1ec0c4c3d664af",
        "4a5c009bc2389304cf078c270bceb656479367d2"
      ],
      "author": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Mon Jul 08 16:47:27 2013 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Mon Jul 08 16:47:27 2013 -0700"
      },
      "message": "am 4a5c009b: Camera2/3: As a fallback, unilaterally free old recording buffers\n\n* commit \u00274a5c009bc2389304cf078c270bceb656479367d2\u0027:\n  Camera2/3: As a fallback, unilaterally free old recording buffers\n"
    },
    {
      "commit": "4a5c009bc2389304cf078c270bceb656479367d2",
      "tree": "08608bdb6a061244b8cb7405a11f3bde8ff12ae7",
      "parents": [
        "eced745af7d2d27a8c45e04eb071d4fb30cd3e48"
      ],
      "author": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Wed Jul 03 16:56:11 2013 -0700"
      },
      "committer": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Mon Jul 08 13:12:10 2013 -0700"
      },
      "message": "Camera2/3: As a fallback, unilaterally free old recording buffers\n\nWhen starting a recording session, check for and clear out recording\nbuffers still owned by stagefright from a previous recording session,\nif any.  There should never be any, but in case they are due to a bug\nelsewhere in the system, clearing out the buffers makes recovery\npossible.\n\nBug: 9591080\nChange-Id: I3a2a1256860bd174381cd525948419f985c9b415\n"
    },
    {
      "commit": "ace2378c934b61fbd865b5ade9ff7d0df81dabe3",
      "tree": "b3146af4726c4a98a245e58ad1941fb7844c6418",
      "parents": [
        "f64bd473e4c500dc54923baac7261e6d2d72daa6",
        "f59a4b393f4844c5bbc8d6212364bdddea33d232"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Wed Jul 03 08:16:46 2013 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Wed Jul 03 08:16:46 2013 -0700"
      },
      "message": "am f59a4b39: fix scheduling policy service death detection\n\n* commit \u0027f59a4b393f4844c5bbc8d6212364bdddea33d232\u0027:\n  fix scheduling policy service death detection\n"
    },
    {
      "commit": "f59a4b393f4844c5bbc8d6212364bdddea33d232",
      "tree": "50a7dc8e5ac254ca4f6a40d84980713a8ac30599",
      "parents": [
        "a691ff3c03e38e148bbefed35ebb15e552a12613"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Tue Jul 02 11:15:41 2013 -0700"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Tue Jul 02 12:15:10 2013 -0700"
      },
      "message": "fix scheduling policy service death detection\n\nCheck status of transactions to scheduling policy service\nand re-acquire a binder interface in case of DEAD_OBJECT.\n\nBug: 8875559.\nChange-Id: I1e00bd44e2d4723b3ec95d5c31d9652ba08e238a\n"
    },
    {
      "commit": "364a2677c862af64f21b41dd3ab1b9e5c68b4ce0",
      "tree": "1a53c2024ddfa6da614d2b33d6293bd4a490ee91",
      "parents": [
        "bdebd4817cfe49fafedfe8f9c65930e03f9b508b",
        "a691ff3c03e38e148bbefed35ebb15e552a12613"
      ],
      "author": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Fri Jun 28 07:07:29 2013 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Fri Jun 28 07:07:29 2013 -0700"
      },
      "message": "am a691ff3c: Camera2/3: Don\\\u0027t allow recording and callbacks to coexist.\n\n* commit \u0027a691ff3c03e38e148bbefed35ebb15e552a12613\u0027:\n  Camera2/3: Don\u0027t allow recording and callbacks to coexist.\n"
    },
    {
      "commit": "a691ff3c03e38e148bbefed35ebb15e552a12613",
      "tree": "e40a419e636ccc48551c5810887e872b5ac9ee44",
      "parents": [
        "209bbbcf4190231f9dede758cbe77d109919f9f1"
      ],
      "author": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Wed Jun 26 18:23:23 2013 -0700"
      },
      "committer": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Thu Jun 27 15:00:26 2013 -0700"
      },
      "message": "Camera2/3: Don\u0027t allow recording and callbacks to coexist.\n\n- Tear down conflicting streams when necessary.\n\n- Shut down callbacks if recording starts\n\n- Do not allow callbacks to start if recording is active\n\nPer the current camera API, recording and preview callbacks cannot be\nactive simultaneously. However, the framework did not explicitly\ndisallow this, and in fact left the streams configured once they were\ncreated, even if switching between the two operational modes.\n\nIn addition, no guards existed for trying to enable both recording and\ncallbacks at the same time.\n\nBug: 9423825\n\nChange-Id: I7d6e6114c2e14fcfb5299b4c72ad557895cbf4b8\n"
    },
    {
      "commit": "d3ac2fc0c5429003f69d161e42bba7e94434ec09",
      "tree": "bdc0b4715050e2f6806d40a6b13774fb75310899",
      "parents": [
        "9c8714daaf6a402abd85557e9b652c86f0df86e4",
        "f3e21c301b8fef49eecf9c716373fcbfbaa47670"
      ],
      "author": {
        "name": "Glenn Kasten",
        "email": "gkasten@android.com",
        "time": "Thu Jun 20 15:16:00 2013 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Thu Jun 20 15:16:00 2013 -0700"
      },
      "message": "am f3e21c30: am 60f3f102: Merge \"Prevent AudioCommands being freed before read\"\n\n* commit \u0027f3e21c301b8fef49eecf9c716373fcbfbaa47670\u0027:\n  Prevent AudioCommands being freed before read\n"
    },
    {
      "commit": "f3e21c301b8fef49eecf9c716373fcbfbaa47670",
      "tree": "105922023f2126487d20b9647188e23a441e8513",
      "parents": [
        "82fc2ca6905978b4f49f2c6bf948a6872575f2cc",
        "60f3f102ba2973cc31e5c7ea00d95bbf19968e8b"
      ],
      "author": {
        "name": "Glenn Kasten",
        "email": "gkasten@android.com",
        "time": "Thu Jun 20 15:13:19 2013 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Thu Jun 20 15:13:19 2013 -0700"
      },
      "message": "am 60f3f102: Merge \"Prevent AudioCommands being freed before read\"\n\n* commit \u002760f3f102ba2973cc31e5c7ea00d95bbf19968e8b\u0027:\n  Prevent AudioCommands being freed before read\n"
    },
    {
      "commit": "5fa8c4bf81275d5e1f5ef71bc66fc22e3152eeb0",
      "tree": "e3ca90035d580a1cfe7d786b45a9d31a49da1f76",
      "parents": [
        "132bc5bd1c68aa807a20e1655f009f74433be588"
      ],
      "author": {
        "name": "Christer Fletcher",
        "email": "christer.fletcher@sonymobile.com",
        "time": "Fri Jan 18 15:27:03 2013 +0100"
      },
      "committer": {
        "name": "Henrik Baard",
        "email": "henrik.baard@sonymobile.com",
        "time": "Thu Jun 20 13:36:58 2013 +0200"
      },
      "message": "Prevent AudioCommands being freed before read\n\nWhen AudioCommandThread::threadLoop process AudioCommands it was\npossible for it to delete a command where the posting thread still\nhadn\u0027t read that status from it.\n\nIf a second command signaled the thread loop to continue after it\nhad inserted a new command while the thread loop was actually waiting\nfor the first command to report that it had read the status the\nthread loop would continue and delete the first command.\n\nChanged the wait condition when waiting for the calling thread to\nread status to use command-\u003emCond instead of mWaitWorkCV. This way\nit\u0027s guaranteed that the signal to continue comes from the correct\nthread.\n\nChange-Id: Ia69b48cb4fdfaf8b4c83b56a197fb9f2058a92d1\n"
    },
    {
      "commit": "9c8714daaf6a402abd85557e9b652c86f0df86e4",
      "tree": "8c4cbae229dba31d55e0454f0f83da6aa7ab1e6e",
      "parents": [
        "bda5d1f2a34f9b7ded0bc0441be4856e78ec066c",
        "e6478de72a8ae1d3abb3e8c20898977c45354a4f"
      ],
      "author": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Wed Jun 19 14:23:22 2013 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Wed Jun 19 14:23:22 2013 -0700"
      },
      "message": "am e6478de7: Camera2/3: Avoid shutdown race in callback processor.\n\n* commit \u0027e6478de72a8ae1d3abb3e8c20898977c45354a4f\u0027:\n  Camera2/3: Avoid shutdown race in callback processor.\n"
    },
    {
      "commit": "e6478de72a8ae1d3abb3e8c20898977c45354a4f",
      "tree": "9a4d51e3ba03c3d4de9d43598f32e9961e6d0fe0",
      "parents": [
        "241b52798809d8db3d369af05ace1f73f723f29b"
      ],
      "author": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Wed Jun 19 08:42:17 2013 -0700"
      },
      "committer": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Wed Jun 19 08:42:17 2013 -0700"
      },
      "message": "Camera2/3: Avoid shutdown race in callback processor.\n\nIt\u0027s possible, during shutdown, for callback processor\u0027s heap to be\ndestroyed when it\u0027s about to send the callback back to the user.\nProperly copy the heap reference to a local variable before unlocking\nthe mutex.\n\nBug: 9485959\nChange-Id: I301347b77145f19c7ac721b9127dc74f122acce2\n"
    },
    {
      "commit": "bda5d1f2a34f9b7ded0bc0441be4856e78ec066c",
      "tree": "a09207acb0923c865532e7eca34f1f8914ccba10",
      "parents": [
        "05e87d536ed2b7cf1d68135121b630031e5d56c2",
        "241b52798809d8db3d369af05ace1f73f723f29b"
      ],
      "author": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Mon Jun 17 16:23:56 2013 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Mon Jun 17 16:23:56 2013 -0700"
      },
      "message": "am 241b5279: Camera3: Power: Properly shut down unused thread.\n\n* commit \u0027241b52798809d8db3d369af05ace1f73f723f29b\u0027:\n  Camera3: Power: Properly shut down unused thread.\n"
    },
    {
      "commit": "241b52798809d8db3d369af05ace1f73f723f29b",
      "tree": "882168e7655983199dc6c31544965abf7628b6ce",
      "parents": [
        "26bc908b3dafb5d80f092a22c5c71116526eae06"
      ],
      "author": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Mon Jun 17 13:29:16 2013 -0700"
      },
      "committer": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Mon Jun 17 13:29:16 2013 -0700"
      },
      "message": "Camera3: Power: Properly shut down unused thread.\n\nBug: 9466221\nChange-Id: I9ed0740561b2e04954eebc1b8aec89cfab40a3a0\n"
    },
    {
      "commit": "0cc754918a3c1353164ccc5798f63b28f65db406",
      "tree": "17ae714410130417129ae3122f024bc2df2bc412",
      "parents": [
        "e4a453d4b7563d1dab674df6ce52c291e63c6ca7",
        "26bc908b3dafb5d80f092a22c5c71116526eae06"
      ],
      "author": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Fri Jun 14 08:35:48 2013 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Fri Jun 14 08:35:48 2013 -0700"
      },
      "message": "am 26bc908b: Camera2/3: Make sure to wait for idle after still capture.\n\n* commit \u002726bc908b3dafb5d80f092a22c5c71116526eae06\u0027:\n  Camera2/3: Make sure to wait for idle after still capture.\n"
    },
    {
      "commit": "e4a453d4b7563d1dab674df6ce52c291e63c6ca7",
      "tree": "b642943cde0238fae15eced34bb7447e6eb1f05e",
      "parents": [
        "767227fcac7be843b338473954420d390e354bf7",
        "214a17fd37ef85fc841d3157b1e9096e1aa1b42f"
      ],
      "author": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Fri Jun 14 08:35:48 2013 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Fri Jun 14 08:35:48 2013 -0700"
      },
      "message": "am 214a17fd: Camera3: Always close HAL device even in face of errors.\n\n* commit \u0027214a17fd37ef85fc841d3157b1e9096e1aa1b42f\u0027:\n  Camera3: Always close HAL device even in face of errors.\n"
    },
    {
      "commit": "26bc908b3dafb5d80f092a22c5c71116526eae06",
      "tree": "ebbd8e95bd3d1bb5ac73d8dcb6fbcdd2d412d653",
      "parents": [
        "214a17fd37ef85fc841d3157b1e9096e1aa1b42f"
      ],
      "author": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Thu Jun 13 18:04:28 2013 -0700"
      },
      "committer": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Thu Jun 13 18:04:28 2013 -0700"
      },
      "message": "Camera2/3: Make sure to wait for idle after still capture.\n\nWhile this wait should be immediate, it\u0027s important to guarantee\nthat preview is stopped when takePicture completes, and that the\ndevice knows itself to be idle.\n\nBug: 9413025\nChange-Id: I1c151ba920e226107ee048918187364990f444c0\n"
    },
    {
      "commit": "214a17fd37ef85fc841d3157b1e9096e1aa1b42f",
      "tree": "bb2b77358dd771303a15f320388e4d68104ebb58",
      "parents": [
        "1191454a3a960a1972b0f36e625796c6c1b2c9ca"
      ],
      "author": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Thu Jun 13 12:20:02 2013 -0700"
      },
      "committer": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Thu Jun 13 12:20:02 2013 -0700"
      },
      "message": "Camera3: Always close HAL device even in face of errors.\n\nTo improve robustness, make sure the HAL device instance is always\nclosed, even if it cannot be put into the IDLE state.\n\nBug: 9414167\nChange-Id: I8e7035ff0afe7214951f9824e561b340cb37592e\n"
    },
    {
      "commit": "ccc366a90fdd8d9df5de27820f04bc534d122c07",
      "tree": "db399628ac93166975fd8598e80ff84cd653300d",
      "parents": [
        "4541531a6e64329764ad7359775689a8f5aca165",
        "1191454a3a960a1972b0f36e625796c6c1b2c9ca"
      ],
      "author": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Thu Jun 13 10:34:07 2013 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Thu Jun 13 10:34:07 2013 -0700"
      },
      "message": "am 1191454a: Merge \"Camera3: Skipping no-ops good, not updating state machine bad.\" into jb-mr2-dev\n\n* commit \u00271191454a3a960a1972b0f36e625796c6c1b2c9ca\u0027:\n  Camera3: Skipping no-ops good, not updating state machine bad.\n"
    },
    {
      "commit": "4541531a6e64329764ad7359775689a8f5aca165",
      "tree": "eb96930d7ef4bd23c91a56aeae73681b729fa375",
      "parents": [
        "a45398078e4f798a34310a2d5213e07eefb14238",
        "c4a8d2ddfff6d91e493692251733f20ece3e713d"
      ],
      "author": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Thu Jun 13 10:34:07 2013 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Thu Jun 13 10:34:07 2013 -0700"
      },
      "message": "am c4a8d2dd: Merge \"Camera2/3: Create JPEG stream unconditionally.\" into jb-mr2-dev\n\n* commit \u0027c4a8d2ddfff6d91e493692251733f20ece3e713d\u0027:\n  Camera2/3: Create JPEG stream unconditionally.\n"
    },
    {
      "commit": "1191454a3a960a1972b0f36e625796c6c1b2c9ca",
      "tree": "b0a2c6fb33299aaa7b4e261ac1af2737cbb186a9",
      "parents": [
        "c4a8d2ddfff6d91e493692251733f20ece3e713d",
        "31fdb29c9f5569fff20756ef1240120817993660"
      ],
      "author": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Thu Jun 13 17:33:20 2013 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Jun 13 17:33:20 2013 +0000"
      },
      "message": "Merge \"Camera3: Skipping no-ops good, not updating state machine bad.\" into jb-mr2-dev"
    },
    {
      "commit": "c4a8d2ddfff6d91e493692251733f20ece3e713d",
      "tree": "a3e4c8c370e1ff5ebe1e21ee4389c93a24a7de6f",
      "parents": [
        "0662f7b6735df0a140f6512285d05f8f9a38bb98",
        "a9c64a9398ac2e6173f99e252f305808a34cab1c"
      ],
      "author": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Thu Jun 13 17:33:07 2013 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Jun 13 17:33:07 2013 +0000"
      },
      "message": "Merge \"Camera2/3: Create JPEG stream unconditionally.\" into jb-mr2-dev"
    },
    {
      "commit": "31fdb29c9f5569fff20756ef1240120817993660",
      "tree": "df780b93b503318a58823d1c19da0f1835dabadf",
      "parents": [
        "0662f7b6735df0a140f6512285d05f8f9a38bb98"
      ],
      "author": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Wed Jun 12 17:06:41 2013 -0700"
      },
      "committer": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Wed Jun 12 17:52:05 2013 -0700"
      },
      "message": "Camera3: Skipping no-ops good, not updating state machine bad.\n\nIf a HAL-level stream reconfigure is not needed, still need to\ntransition camera device to ACTIVE state in configureStreams.\nOtherwise, shutdown functions will not wait for device to drain\nproperly.\n\nBug: 9413025\nChange-Id: I0b15792097c7e5771015f2a362735d5f88b8c6ea\n"
    },
    {
      "commit": "bb35be24239f05f59715960a93cd491a4cd3b4d6",
      "tree": "6ec3a7b0ac19c076d9f201dca1b404b4c1621a7b",
      "parents": [
        "765f99f30fdc18396ce4edc9facbe6632c9b858e",
        "7be48189c0aefb82825a7689d9e1005175570779"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Wed Jun 12 08:46:03 2013 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Wed Jun 12 08:46:03 2013 -0700"
      },
      "message": "am 7be48189: Merge \"audioflinger: fix effects on direct output threads\" into jb-mr2-dev\n\n* commit \u00277be48189c0aefb82825a7689d9e1005175570779\u0027:\n  audioflinger: fix effects on direct output threads\n"
    },
    {
      "commit": "7be48189c0aefb82825a7689d9e1005175570779",
      "tree": "eaf3295eb6863ec3f2f74fdf087cf24d4cdde647",
      "parents": [
        "ea26c7772f4721657db409068d4bed194ae49c94",
        "d0107bcd44fe608b0c00a8843d19fb6356c4cb69"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Wed Jun 12 15:44:42 2013 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Jun 12 15:44:42 2013 +0000"
      },
      "message": "Merge \"audioflinger: fix effects on direct output threads\" into jb-mr2-dev"
    },
    {
      "commit": "44ade05f8d030ae3af8d05359734b18eac433935",
      "tree": "201f10ac3d980c16aadf01b6a16e383e78f4f846",
      "parents": [
        "6c72c1877fadca5068fa94f7a0249c0609e85534",
        "ea26c7772f4721657db409068d4bed194ae49c94"
      ],
      "author": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Tue Jun 11 18:21:05 2013 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Tue Jun 11 18:21:05 2013 -0700"
      },
      "message": "am ea26c777: Camera3: Skip no-op stream configurations.\n\n* commit \u0027ea26c7772f4721657db409068d4bed194ae49c94\u0027:\n  Camera3: Skip no-op stream configurations.\n"
    },
    {
      "commit": "ea26c7772f4721657db409068d4bed194ae49c94",
      "tree": "20600997090d036235aeda08a46ddcbd126efa21",
      "parents": [
        "ba696bbff88d5627beaa0be95be78ba30138983d"
      ],
      "author": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Tue Jun 11 16:04:06 2013 -0700"
      },
      "committer": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Tue Jun 11 16:06:02 2013 -0700"
      },
      "message": "Camera3: Skip no-op stream configurations.\n\nIf configuring the same set of streams more than once, don\u0027t actually\ncall into the HAL for the second and subsequent configure calls, since\nthey\u0027re no-ops.\n\nThis can speed up camera operation substantially if the\nHAL implementation does not detect no-ops on its own and does a full\nshutdown/restart on each configure call.\n\nBug: 9392513\nChange-Id: I23baf4acbae2304735899adcf8e17565fa94d31d\n"
    },
    {
      "commit": "d0107bcd44fe608b0c00a8843d19fb6356c4cb69",
      "tree": "ed820c80ced11b73b1ed88899c182b83b186429f",
      "parents": [
        "ba696bbff88d5627beaa0be95be78ba30138983d"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Tue Jun 11 14:38:48 2013 -0700"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Tue Jun 11 14:57:08 2013 -0700"
      },
      "message": "audioflinger: fix effects on direct output threads\n\nPlaybackThread::addTrack_l() uses the assumption that\neffects are attached to a track only if the track accumulation\nbuffer is different from the mixer thread output buffer.\nThis is not true for direct output threads where only one track is active\nan only one buffer is needed.\nThis assumption is an optimization to avoid checking for effect chains with\nthe same session ID each time a track is processed. The optimization\nis not key if only one track is attached to the thread which is the case for\ndirect outputs.\n\nCurrent code fails to increment the active track count in the effect chain\non direct output threads when a track is started thus making the effect\nframework clear the mix buffer and produce silence each time the mixer runs.\n\nThe fix consists in removing the optimization described above.\n\nBug: 9324989.\n\nChange-Id: Id7a6337450ed90d326299c2ce9fc02f4b9e2fa6f\n"
    },
    {
      "commit": "a9c64a9398ac2e6173f99e252f305808a34cab1c",
      "tree": "324ccc6b93f727f08febe50abe63d102ede9e6fa",
      "parents": [
        "ba696bbff88d5627beaa0be95be78ba30138983d"
      ],
      "author": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Mon Jun 10 15:12:01 2013 -0700"
      },
      "committer": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Tue Jun 11 14:44:47 2013 -0700"
      },
      "message": "Camera2/3: Create JPEG stream unconditionally.\n\nInstead of creating the JPEG output stream only at first use,\ncreate it at time of preview start. This is important for reducing\nthe first-capture latency on HAL3 devices, and for ZSL on them.\n\nBug: 9339858\nChange-Id: I4296f706cfd151c47ef315149e87d01fe554aaa4\n"
    },
    {
      "commit": "574ca4f4f15a42d6159150149f68bf3cb800d869",
      "tree": "777d5acd68cfa82a0f55ebbd7844f0897e545b1a",
      "parents": [
        "d3a5b48a1bc4f5d6ff4472f54f909abaadd5fa39",
        "ba696bbff88d5627beaa0be95be78ba30138983d"
      ],
      "author": {
        "name": "Zhijun He",
        "email": "zhijunhe@google.com",
        "time": "Fri Jun 07 09:59:47 2013 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Fri Jun 07 09:59:47 2013 -0700"
      },
      "message": "am ba696bbf: Merge \"camera2/3: Fix deadlock take picture while preview callback\" into jb-mr2-dev\n\n* commit \u0027ba696bbff88d5627beaa0be95be78ba30138983d\u0027:\n  camera2/3: Fix deadlock take picture while preview callback\n"
    },
    {
      "commit": "ba696bbff88d5627beaa0be95be78ba30138983d",
      "tree": "8e4552cf33546cc2efb758973c92b472048bd9a0",
      "parents": [
        "18b466790aa0a55ff4282ed8b5e550e58e0444b2",
        "ddb104d382e5432e0b15c1b3ee91ba0eed73d0ec"
      ],
      "author": {
        "name": "Zhijun He",
        "email": "zhijunhe@google.com",
        "time": "Fri Jun 07 16:58:12 2013 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Jun 07 16:58:12 2013 +0000"
      },
      "message": "Merge \"camera2/3: Fix deadlock take picture while preview callback\" into jb-mr2-dev"
    },
    {
      "commit": "d3a5b48a1bc4f5d6ff4472f54f909abaadd5fa39",
      "tree": "af138bfbb6e96a8d391fde23b596ca432ab3bb5e",
      "parents": [
        "1c540f7d1b04cfd74847587f127b7539c3c15864",
        "18b466790aa0a55ff4282ed8b5e550e58e0444b2"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Fri Jun 07 08:57:00 2013 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Fri Jun 07 08:57:00 2013 -0700"
      },
      "message": "am 18b46679: Merge \"AudioFlinger: do not cache audio device when 0.\" into jb-mr2-dev\n\n* commit \u002718b466790aa0a55ff4282ed8b5e550e58e0444b2\u0027:\n  AudioFlinger: do not cache audio device when 0.\n"
    },
    {
      "commit": "18b466790aa0a55ff4282ed8b5e550e58e0444b2",
      "tree": "059c3fb09c4880c1fc47bf72b61df46315c3f5db",
      "parents": [
        "b05eeaedacaff92b6e5ac89f99b0fccdf7643f09",
        "7e1139c0377b6806942fb2a043737b3b9cf0ae91"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Fri Jun 07 15:52:59 2013 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Jun 07 15:52:59 2013 +0000"
      },
      "message": "Merge \"AudioFlinger: do not cache audio device when 0.\" into jb-mr2-dev"
    },
    {
      "commit": "7e1139c0377b6806942fb2a043737b3b9cf0ae91",
      "tree": "4058659d99edb14cb95a7b7265db54eb8c6ef867",
      "parents": [
        "62a8f67f33faf19d0ff815672dd19bb71dd0d650"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Thu Jun 06 18:29:01 2013 -0700"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Thu Jun 06 18:33:08 2013 -0700"
      },
      "message": "AudioFlinger: do not cache audio device when 0.\n\nAudioFlinger should not cache the audio device\npassed to the audio HAL when it is AUDIO_DEVICE_NONE\nbut keep previous valid selection instead.\n\nBug: 9323399.\nChange-Id: I6f9480e55a21be4115453e6a5eebc5cf2536c476\n"
    },
    {
      "commit": "ddb104d382e5432e0b15c1b3ee91ba0eed73d0ec",
      "tree": "6c239f6374d54f2292de2a0156879cadac9b58f5",
      "parents": [
        "b05eeaedacaff92b6e5ac89f99b0fccdf7643f09"
      ],
      "author": {
        "name": "Zhijun He",
        "email": "zhijunhe@google.com",
        "time": "Thu Jun 06 16:52:02 2013 -0700"
      },
      "committer": {
        "name": "Zhijun He",
        "email": "zhijunhe@google.com",
        "time": "Thu Jun 06 17:32:37 2013 -0700"
      },
      "message": "camera2/3: Fix deadlock take picture while preview callback\n\nAcquiring mInputMutex before SharedParameters mutex in preview callback thread\ncauses circular locking dependency between callback thread and capture callback\nthread.\nEnforce the right lock ordering to break the dead lock.\n\nBug: 9323319\nChange-Id: Iea2e025e4d9e29debcf74297c19930075017e179\n"
    },
    {
      "commit": "e097efde4363f80d5ffc34da6ec6253fbd4e5397",
      "tree": "c458af2057025cd4d5931d47b9436699051bb853",
      "parents": [
        "1d263b89bd1c5d73389f53976e104dd6b088ab6e",
        "b05eeaedacaff92b6e5ac89f99b0fccdf7643f09"
      ],
      "author": {
        "name": "Zhijun He",
        "email": "zhijunhe@google.com",
        "time": "Thu Jun 06 14:18:06 2013 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Thu Jun 06 14:18:06 2013 -0700"
      },
      "message": "am b05eeaed: camera3: Fix crash in set error state.\n\n* commit \u0027b05eeaedacaff92b6e5ac89f99b0fccdf7643f09\u0027:\n  camera3: Fix crash in set error state.\n"
    },
    {
      "commit": "b05eeaedacaff92b6e5ac89f99b0fccdf7643f09",
      "tree": "47f3ac7e031b9c57657c40de9a57997edf4f4706",
      "parents": [
        "62a8f67f33faf19d0ff815672dd19bb71dd0d650"
      ],
      "author": {
        "name": "Zhijun He",
        "email": "zhijunhe@google.com",
        "time": "Thu Jun 06 13:51:22 2013 -0700"
      },
      "committer": {
        "name": "Zhijun He",
        "email": "zhijunhe@google.com",
        "time": "Thu Jun 06 13:51:22 2013 -0700"
      },
      "message": "camera3: Fix crash in set error state.\n\nWhen camera open fails in camera3device initialize call, setErrorStateLockedV()\ntries to access RequestThread object that is not created yet.\n\nBug: 9319518\nChange-Id: Id5c6c0150ecaecb198045d5c6eb1b2ceebf5a727\n"
    },
    {
      "commit": "1d263b89bd1c5d73389f53976e104dd6b088ab6e",
      "tree": "dd527448872a2b422ea96076699cfdda90c2bc26",
      "parents": [
        "25c8c528101360119f2aafc1871811cc1a5ad519",
        "62a8f67f33faf19d0ff815672dd19bb71dd0d650"
      ],
      "author": {
        "name": "Zhijun He",
        "email": "zhijunhe@google.com",
        "time": "Thu Jun 06 11:09:54 2013 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Thu Jun 06 11:09:54 2013 -0700"
      },
      "message": "am 62a8f67f: camera2/3: Add protection to callback processing call\n\n* commit \u002762a8f67f33faf19d0ff815672dd19bb71dd0d650\u0027:\n  camera2/3: Add protection to callback processing call\n"
    },
    {
      "commit": "62a8f67f33faf19d0ff815672dd19bb71dd0d650",
      "tree": "3a88fd9b3cc9e795e60c8c37117db55f5ad39bef",
      "parents": [
        "254446a80cb13d5beb606bfc3e60a17473869478"
      ],
      "author": {
        "name": "Zhijun He",
        "email": "zhijunhe@google.com",
        "time": "Wed Jun 05 20:00:09 2013 -0700"
      },
      "committer": {
        "name": "Zhijun He",
        "email": "zhijunhe@google.com",
        "time": "Thu Jun 06 10:42:40 2013 -0700"
      },
      "message": "camera2/3: Add protection to callback processing call\n\nCallback stream in callbackprocessor could be delleted while process or\ndiscard callback are ongoing, which leads CpuConsumer related call crash.\n\nBug 9303911\n\nChange-Id: Ib6137e512208e5603468eba166640729b744e8f9\n"
    },
    {
      "commit": "4dd110ae6d9f00e1ec036f697045f4b3326b7873",
      "tree": "70e1fb2290d3f75eea762ff25bb497819a2f97d2",
      "parents": [
        "cbbd6c8354f7323933081b217ce53461d99215c4",
        "254446a80cb13d5beb606bfc3e60a17473869478"
      ],
      "author": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Wed Jun 05 11:43:49 2013 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Wed Jun 05 11:43:49 2013 -0700"
      },
      "message": "am 254446a8: Camera2/3: Move recording frame processing to its own thread.\n\n* commit \u0027254446a80cb13d5beb606bfc3e60a17473869478\u0027:\n  Camera2/3: Move recording frame processing to its own thread.\n"
    },
    {
      "commit": "254446a80cb13d5beb606bfc3e60a17473869478",
      "tree": "104a205908ae2633db26fceef230f94238448135",
      "parents": [
        "8f908c0c211f8051f339bc85b01a6450f0dfd7d0"
      ],
      "author": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Tue Jun 04 16:34:35 2013 -0700"
      },
      "committer": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Tue Jun 04 17:23:08 2013 -0700"
      },
      "message": "Camera2/3: Move recording frame processing to its own thread.\n\nDue to new deadlock opportunities from HAL3 integration, recording\nframe processing needs to move out of the new frame handler into its\nown thread in StreamingProcessor.\n\nBug: 9282913\nChange-Id: I8d2926f2de9d0d395eef3c328c65caebbdbd2827\n"
    },
    {
      "commit": "cbbd6c8354f7323933081b217ce53461d99215c4",
      "tree": "57c09180d0ba7b904d1900b438ecd9c508fcccb3",
      "parents": [
        "e64d41332776e3c91f51c3239589695bf2cd0aeb",
        "8f908c0c211f8051f339bc85b01a6450f0dfd7d0"
      ],
      "author": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Tue Jun 04 09:19:14 2013 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Tue Jun 04 09:19:14 2013 -0700"
      },
      "message": "am 8f908c0c: Merge \"Camera2/3: Don\\\u0027t trigger AF when in INFINITY focus mode.\" into jb-mr2-dev\n\n* commit \u00278f908c0c211f8051f339bc85b01a6450f0dfd7d0\u0027:\n  Camera2/3: Don\u0027t trigger AF when in INFINITY focus mode.\n"
    },
    {
      "commit": "9454a9710b13c7d9262fe1cbd910235a3cd35f20",
      "tree": "cbd13c8a4ce67c7eb8aee70a9dc6aeaf3f0efbc1",
      "parents": [
        "b7319a7eb0a06ef4fd3a0c9157ee63e637ad7aa1"
      ],
      "author": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Mon Jun 03 16:50:53 2013 -0700"
      },
      "committer": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Mon Jun 03 16:59:16 2013 -0700"
      },
      "message": "Camera2/3: Don\u0027t trigger AF when in INFINITY focus mode.\n\nWhile the HAL should ignore it, it\u0027s faster to immediately respond\nwith success.\n\nAlso filter out cancel autofocus calls for FIXED/INFINITY focus.\n\nBug: 9263856\nChange-Id: I637ec7c8b459d654ef11cb1142b959f2674224c5\n"
    },
    {
      "commit": "9f013a46e150da01ebb267574d8095eef399cd0c",
      "tree": "2ff6050957f8eebf0d63cbd5cc904182d19f0946",
      "parents": [
        "30ca8004cf259c5dceab5cec06cab5ae9a17d89b",
        "3c89a2e9d4ee10b9e955783af2ab9e9dd137922f"
      ],
      "author": {
        "name": "Igor Murashkin",
        "email": "iam@google.com",
        "time": "Tue May 28 16:49:02 2013 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Tue May 28 16:49:02 2013 -0700"
      },
      "message": "am 3c89a2e9: Merge \"camera3: Don\\\u0027t try to disconnect stream native windows more than once\" into jb-mr2-dev\n\n* commit \u00273c89a2e9d4ee10b9e955783af2ab9e9dd137922f\u0027:\n  camera3: Don\u0027t try to disconnect stream native windows more than once\n"
    },
    {
      "commit": "3c89a2e9d4ee10b9e955783af2ab9e9dd137922f",
      "tree": "9c31595f31f2abcdc4a772694db79cada9211683",
      "parents": [
        "6f6b31da6097f1d770137ebadac5023dd8b79413",
        "e2172bed7e77ab1d922588cf727818b481400b53"
      ],
      "author": {
        "name": "Igor Murashkin",
        "email": "iam@google.com",
        "time": "Tue May 28 23:47:00 2013 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue May 28 23:47:00 2013 +0000"
      },
      "message": "Merge \"camera3: Don\u0027t try to disconnect stream native windows more than once\" into jb-mr2-dev"
    },
    {
      "commit": "e2172bed7e77ab1d922588cf727818b481400b53",
      "tree": "8a2fc11a21ed5c2b972e92fede7094d4a1d29e17",
      "parents": [
        "1f7f83b7a1f2e2d01f808913ef0b869652c08949"
      ],
      "author": {
        "name": "Igor Murashkin",
        "email": "iam@google.com",
        "time": "Tue May 28 15:31:39 2013 -0700"
      },
      "committer": {
        "name": "Igor Murashkin",
        "email": "iam@google.com",
        "time": "Tue May 28 15:31:39 2013 -0700"
      },
      "message": "camera3: Don\u0027t try to disconnect stream native windows more than once\n\nThis fixes the multiple-disconnect-from-BufferQueue bug.\n\n(In logs)\nBufferQueue: [SurfaceView] disconnect: connected to another api (cur\u003d0, req\u003d4)\n\nBug: 9114681\nChange-Id: I21ae1c5bd993701eea13648aa9994979a24eb210\n"
    },
    {
      "commit": "22a5ddb68173b75053d838a30d091920cd0a1dca",
      "tree": "779d2d32ae4371ef43ce3abc87097ca6fa75cec0",
      "parents": [
        "14e585c8e0667c13202dbefc52f9d00ffe161cf1",
        "6f6b31da6097f1d770137ebadac5023dd8b79413"
      ],
      "author": {
        "name": "Zhijun He",
        "email": "zhijunhe@google.com",
        "time": "Fri May 24 08:34:46 2013 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Fri May 24 08:34:46 2013 -0700"
      },
      "message": "am 6f6b31da: Merge \"Camera3: Fix the deadlock during recording pinch zooming\" into jb-mr2-dev\n\n* commit \u00276f6b31da6097f1d770137ebadac5023dd8b79413\u0027:\n  Camera3: Fix the deadlock during recording pinch zooming\n"
    },
    {
      "commit": "6f6b31da6097f1d770137ebadac5023dd8b79413",
      "tree": "11c5a6996814abec2a3be7312a6aa626a1610f98",
      "parents": [
        "6947f125f76dde6664779126415d11b3365225da",
        "124ccf4b5023a40c57b49981123e6c9b61408a5d"
      ],
      "author": {
        "name": "Zhijun He",
        "email": "zhijunhe@google.com",
        "time": "Fri May 24 15:32:48 2013 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri May 24 15:32:48 2013 +0000"
      },
      "message": "Merge \"Camera3: Fix the deadlock during recording pinch zooming\" into jb-mr2-dev"
    },
    {
      "commit": "14e585c8e0667c13202dbefc52f9d00ffe161cf1",
      "tree": "8701fcc8d41fceae8da02afd17b4bd6f408120d0",
      "parents": [
        "9b89c15d9d8abb9408760ffdb022df4c4367685b",
        "6947f125f76dde6664779126415d11b3365225da"
      ],
      "author": {
        "name": "Ed Heyl",
        "email": "edheyl@google.com",
        "time": "Thu May 23 22:17:51 2013 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Thu May 23 22:17:51 2013 -0700"
      },
      "message": "am 6947f125: Merge \"camera3: Disable ZSL for limited mode camera HALs\" into jb-mr2-dev\n\n* commit \u00276947f125f76dde6664779126415d11b3365225da\u0027:\n  camera3: Disable ZSL for limited mode camera HALs\n"
    },
    {
      "commit": "6947f125f76dde6664779126415d11b3365225da",
      "tree": "bebf82ab785ef323682eaf52424718d08c094130",
      "parents": [
        "ca3fb120f5697c05e3ea1a50abe913a9cc4a8d73",
        "059161b7ab0a38b276b1aa26e73ff4398a02e012"
      ],
      "author": {
        "name": "Ed Heyl",
        "email": "edheyl@google.com",
        "time": "Fri May 24 05:15:23 2013 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri May 24 05:15:23 2013 +0000"
      },
      "message": "Merge \"camera3: Disable ZSL for limited mode camera HALs\" into jb-mr2-dev"
    },
    {
      "commit": "059161b7ab0a38b276b1aa26e73ff4398a02e012",
      "tree": "7722ef858827c50684b7f044ee3a1ec1b981b893",
      "parents": [
        "efb0fd232388b1f726c59f2ec20eea2d3ea8465d"
      ],
      "author": {
        "name": "Igor Murashkin",
        "email": "iam@google.com",
        "time": "Thu May 23 16:51:44 2013 -0700"
      },
      "committer": {
        "name": "Igor Murashkin",
        "email": "iam@google.com",
        "time": "Thu May 23 17:00:48 2013 -0700"
      },
      "message": "camera3: Disable ZSL for limited mode camera HALs\n\nBug: 9111852\nChange-Id: Idad7e0d2f912341bd643d0ad1a0861fb2043aa90\n"
    },
    {
      "commit": "9b89c15d9d8abb9408760ffdb022df4c4367685b",
      "tree": "f0b1620a561469b74aaec6594e674b34c2825eb7",
      "parents": [
        "98730cd7456b32255a37d691a70f49df22975a72",
        "ca3fb120f5697c05e3ea1a50abe913a9cc4a8d73"
      ],
      "author": {
        "name": "Igor Murashkin",
        "email": "iam@google.com",
        "time": "Thu May 23 13:44:15 2013 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Thu May 23 13:44:15 2013 -0700"
      },
      "message": "am ca3fb120: Merge \"camera3: Fix zsl buffers released-while-in-use race condition\" into jb-mr2-dev\n\n* commit \u0027ca3fb120f5697c05e3ea1a50abe913a9cc4a8d73\u0027:\n  camera3: Fix zsl buffers released-while-in-use race condition\n"
    },
    {
      "commit": "ca3fb120f5697c05e3ea1a50abe913a9cc4a8d73",
      "tree": "bbfa1b2773cd5986be140ef5c67b283fd6d9e072",
      "parents": [
        "1f7f83b7a1f2e2d01f808913ef0b869652c08949",
        "efb0fd232388b1f726c59f2ec20eea2d3ea8465d"
      ],
      "author": {
        "name": "Igor Murashkin",
        "email": "iam@google.com",
        "time": "Thu May 23 20:42:32 2013 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu May 23 20:42:32 2013 +0000"
      },
      "message": "Merge \"camera3: Fix zsl buffers released-while-in-use race condition\" into jb-mr2-dev"
    },
    {
      "commit": "124ccf4b5023a40c57b49981123e6c9b61408a5d",
      "tree": "e26d6244a932977b13db3815403aec7e540af34d",
      "parents": [
        "ed49d7b57e66cc2520817b345ef9de289d688bd4"
      ],
      "author": {
        "name": "Zhijun He",
        "email": "zhijunhe@google.com",
        "time": "Wed May 22 14:01:30 2013 -0700"
      },
      "committer": {
        "name": "Zhijun He",
        "email": "zhijunhe@google.com",
        "time": "Thu May 23 13:12:12 2013 -0700"
      },
      "message": "Camera3: Fix the deadlock during recording pinch zooming\n\nWhen zooming during recording, hal callback thread and request update thread run\ninto deadlock due to lock circular dependency. This change release lock during\nqueuebuffer in callback thread to break the dependency.\n\nBug: 9091576\nChange-Id: Ia7b3f0ec17573cb32a5696dcde419ca28f42cfb8\n"
    },
    {
      "commit": "98730cd7456b32255a37d691a70f49df22975a72",
      "tree": "57e38895f19c0ecc10ce5124c937c39aa3641d2c",
      "parents": [
        "a842a2a61927be0c1f643e76c6ba072e6ae9f779",
        "1f7f83b7a1f2e2d01f808913ef0b869652c08949"
      ],
      "author": {
        "name": "Igor Murashkin",
        "email": "iam@google.com",
        "time": "Thu May 23 11:01:51 2013 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Thu May 23 11:01:51 2013 -0700"
      },
      "message": "am 1f7f83b7: Merge \"Camera3: Make sure new metadata results signal other threads waiting\" into jb-mr2-dev\n\n* commit \u00271f7f83b7a1f2e2d01f808913ef0b869652c08949\u0027:\n  Camera3: Make sure new metadata results signal other threads waiting\n"
    },
    {
      "commit": "1f7f83b7a1f2e2d01f808913ef0b869652c08949",
      "tree": "39c89181efc51c23f87445ab2ddb644f698994d8",
      "parents": [
        "ed49d7b57e66cc2520817b345ef9de289d688bd4",
        "4345d5b57a93ec6d003df84f5cce2db7cccfbd86"
      ],
      "author": {
        "name": "Igor Murashkin",
        "email": "iam@google.com",
        "time": "Thu May 23 17:57:16 2013 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu May 23 17:57:17 2013 +0000"
      },
      "message": "Merge \"Camera3: Make sure new metadata results signal other threads waiting\" into jb-mr2-dev"
    },
    {
      "commit": "efb0fd232388b1f726c59f2ec20eea2d3ea8465d",
      "tree": "032b2c21dff3f42548ac1004f76ebc440ac7339e",
      "parents": [
        "ed49d7b57e66cc2520817b345ef9de289d688bd4"
      ],
      "author": {
        "name": "Igor Murashkin",
        "email": "iam@google.com",
        "time": "Wed May 22 15:54:57 2013 -0700"
      },
      "committer": {
        "name": "Igor Murashkin",
        "email": "iam@google.com",
        "time": "Wed May 22 15:57:19 2013 -0700"
      },
      "message": "camera3: Fix zsl buffers released-while-in-use race condition\n\nBug: 9007356\nChange-Id: I0ced31020410978c549d408b2815f925e9c9ffcf\n"
    },
    {
      "commit": "b7337d56a72c9b20abf57e853953126d0aa3dd1a",
      "tree": "ccf66a82a795d51116485ce03525604ed68a69ee",
      "parents": [
        "1d60db8bfce9becee9d101eacc58e2a673221622",
        "ed49d7b57e66cc2520817b345ef9de289d688bd4"
      ],
      "author": {
        "name": "Igor Murashkin",
        "email": "iam@google.com",
        "time": "Wed May 22 12:56:26 2013 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Wed May 22 12:56:26 2013 -0700"
      },
      "message": "am ed49d7b5: Merge \"camera3: Fix recording failure when switching resolutions while preview on\" into jb-mr2-dev\n\n* commit \u0027ed49d7b57e66cc2520817b345ef9de289d688bd4\u0027:\n  camera3: Fix recording failure when switching resolutions while preview on\n"
    },
    {
      "commit": "ed49d7b57e66cc2520817b345ef9de289d688bd4",
      "tree": "a30203eb74abdce9bdae94ffdbfb7ee669b3779d",
      "parents": [
        "c2c874d88df1b4be52f5415de6606785691bba1f",
        "82db9e6126812dd2ee74e33e4c475cae2c7e48f6"
      ],
      "author": {
        "name": "Igor Murashkin",
        "email": "iam@google.com",
        "time": "Wed May 22 19:54:28 2013 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed May 22 19:54:28 2013 +0000"
      },
      "message": "Merge \"camera3: Fix recording failure when switching resolutions while preview on\" into jb-mr2-dev"
    },
    {
      "commit": "1d60db8bfce9becee9d101eacc58e2a673221622",
      "tree": "10ed5d29797641f941421c2bce9c4db6a31fb1a0",
      "parents": [
        "cf2148e863e2fed037aa0793d2822d9898289f17",
        "c2c874d88df1b4be52f5415de6606785691bba1f"
      ],
      "author": {
        "name": "Mansoor Aftab",
        "email": "maftab@codeaurora.org",
        "time": "Wed May 22 12:17:38 2013 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Wed May 22 12:17:38 2013 -0700"
      },
      "message": "am c2c874d8: Camera3: Fix Bug minTimestamp is never greater than frame timestamp\n\n* commit \u0027c2c874d88df1b4be52f5415de6606785691bba1f\u0027:\n  Camera3: Fix Bug minTimestamp is never greater than frame timestamp\n"
    },
    {
      "commit": "c2c874d88df1b4be52f5415de6606785691bba1f",
      "tree": "afaa66934b4866af50eaa6d03bf42e3c34ffea7b",
      "parents": [
        "f21daf4718bbd5662eae843f5a56e039bd34a2f4"
      ],
      "author": {
        "name": "Mansoor Aftab",
        "email": "maftab@codeaurora.org",
        "time": "Tue May 21 18:58:53 2013 -0700"
      },
      "committer": {
        "name": "Igor Murashkin",
        "email": "iam@google.com",
        "time": "Wed May 22 12:05:22 2013 -0700"
      },
      "message": "Camera3: Fix Bug minTimestamp is never greater than frame timestamp\n\nBug in logic since minTimestamp is initialized to -1, and this needs\nto be updated for the first frame atleast for logic to work correctly\nfor subsequent frames.\n\nBug: 9007356\nChange-Id: I70edc4d9f34ff67a141c027c67396dc2ca9e413a\nSigned-off-by: Igor Murashkin \u003ciam@google.com\u003e\n"
    },
    {
      "commit": "82db9e6126812dd2ee74e33e4c475cae2c7e48f6",
      "tree": "78bf55cea9028079fde7993069538d446fe8a3d2",
      "parents": [
        "f21daf4718bbd5662eae843f5a56e039bd34a2f4"
      ],
      "author": {
        "name": "Igor Murashkin",
        "email": "iam@google.com",
        "time": "Tue May 21 11:38:49 2013 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed May 22 17:30:23 2013 +0000"
      },
      "message": "camera3: Fix recording failure when switching resolutions while preview on\n\nBug: 9069574\nChange-Id: Ife2ae5467f799dbe37e66714b3a6c9a51e1fe328\n"
    },
    {
      "commit": "4345d5b57a93ec6d003df84f5cce2db7cccfbd86",
      "tree": "1d8ef044d8a57b6d26c7ba8627390b843e73589c",
      "parents": [
        "f21daf4718bbd5662eae843f5a56e039bd34a2f4"
      ],
      "author": {
        "name": "Igor Murashkin",
        "email": "iam@google.com",
        "time": "Fri May 17 14:39:53 2013 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed May 22 17:28:16 2013 +0000"
      },
      "message": "Camera3: Make sure new metadata results signal other threads waiting\n\n- Also adds a lot of logging around shuffling around metadata frames\n\nBug: 9007356\nChange-Id: I4285f4f55b4b899ea4928d43062c705619c8248a\n"
    },
    {
      "commit": "722e4892e2afeb0c7abab84be1caa243d1692e28",
      "tree": "54d8516cf9a048709c3476573966c612f3a6db10",
      "parents": [
        "d76306343048d1e16ba92e9eb8f024ad5dfe769d",
        "01831d233c84da7f9092e62f143626918a5a747e"
      ],
      "author": {
        "name": "Zhijun He",
        "email": "zhijunhe@google.com",
        "time": "Tue May 21 07:48:47 2013 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Tue May 21 07:48:47 2013 -0700"
      },
      "message": "am 01831d23: Camera2/3: Increase digital zoom steps\n\n* commit \u002701831d233c84da7f9092e62f143626918a5a747e\u0027:\n  Camera2/3: Increase digital zoom steps\n"
    },
    {
      "commit": "01831d233c84da7f9092e62f143626918a5a747e",
      "tree": "8dbe41e4411d45cd972d63951e804ed062da48d9",
      "parents": [
        "e2dfa5a4ea3459b155b4b403b7dafe2116d960d4"
      ],
      "author": {
        "name": "Zhijun He",
        "email": "zhijunhe@google.com",
        "time": "Mon May 20 11:18:39 2013 -0700"
      },
      "committer": {
        "name": "Zhijun He",
        "email": "zhijunhe@google.com",
        "time": "Mon May 20 11:18:39 2013 -0700"
      },
      "message": "Camera2/3: Increase digital zoom steps\n\nDigitial zoom number of steps was 30 and a bit rough. Change it to 100 to make\nsmooth zoom smoother.\n\nBug: 9050908\nChange-Id: I141bc0335d58cdcd6530c14cbbfe6c4ffb4c6dc6\n"
    },
    {
      "commit": "074eb387091ca464257601a2d23020e3e10a6915",
      "tree": "fbb123bc21fa69026c0d4ed4f4bb426fd3e71f0a",
      "parents": [
        "b07d3c48ea7dcb5bb41c8f5d93b23ac6c42b15dc",
        "e2dfa5a4ea3459b155b4b403b7dafe2116d960d4"
      ],
      "author": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Fri May 17 10:16:50 2013 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Fri May 17 10:16:50 2013 -0700"
      },
      "message": "am e2dfa5a4: Merge \"update to Fence::waitForever() API change\" into jb-mr2-dev\n\n* commit \u0027e2dfa5a4ea3459b155b4b403b7dafe2116d960d4\u0027:\n  update to Fence::waitForever() API change\n"
    },
    {
      "commit": "d76442421eadfa73f2f3a9e50f6caf65b0dd1ce9",
      "tree": "072daaa9f330bac83e9c7e0ca389feba3a39ecda",
      "parents": [
        "99f27cdf2c2711aa0c8b4d9ae4d12cae37ff94f6"
      ],
      "author": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Thu May 16 18:07:35 2013 -0700"
      },
      "committer": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Thu May 16 18:54:49 2013 -0700"
      },
      "message": "update to Fence::waitForever() API change\n\nBug: 8988871\nChange-Id: I24a2620d356f3bb6207ed834c79fd3e48b429695\n"
    },
    {
      "commit": "eef0aa7a674fc250a8b3e29cdb4cf605e5e30078",
      "tree": "f199d364c3acd14773ef885cd7d8caed8d4ddbc7",
      "parents": [
        "03b7bddfe1326d1e3148c240ff4a14fa84270a99",
        "0d0d868f5fbd549728e9ca4dea738f4663e076c4"
      ],
      "author": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Wed May 15 13:34:53 2013 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Wed May 15 13:34:53 2013 -0700"
      },
      "message": "am 7dd801bd: Merge \"Camera3: Fix fast flexible YUV-\u003eNV21 path.\" into jb-mr2-dev\n\n* commit \u00277dd801bd108bff3e897e9e86c5f79f1ab05709d0\u0027:\n  Camera3: Fix fast flexible YUV-\u003eNV21 path.\n"
    },
    {
      "commit": "0d0d868f5fbd549728e9ca4dea738f4663e076c4",
      "tree": "b5bf0ed00785b7afe2f6fa67408e6ec4f180e7a4",
      "parents": [
        "ceac5fb92841bdaa16f0b801aaad07914438ad50",
        "d5694a2e7e61cf7e19a0e135e63142d1967e178b"
      ],
      "author": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Wed May 15 15:58:27 2013 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed May 15 15:58:27 2013 +0000"
      },
      "message": "Merge \"Camera3: Fix fast flexible YUV-\u003eNV21 path.\" into jb-mr2-dev"
    },
    {
      "commit": "a1f70e6abb5375c6bfaf06ab92f64d9e3a2ef22f",
      "tree": "a38711a6d0c6e37e9ea8730b5120b6f5c298a705",
      "parents": [
        "e974c7df1c4a87ced27a773430690a20d208d40e",
        "8e2afd9817e53858e3f99f810c0b7abe4c4d5533"
      ],
      "author": {
        "name": "Igor Murashkin",
        "email": "iam@google.com",
        "time": "Tue May 14 18:28:02 2013 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Tue May 14 18:28:02 2013 -0700"
      },
      "message": "am 083a08ac: Camera: don\\\u0027t spam RingBufferConsumer logs in eng builds\n\n* commit \u0027083a08ac82704fdcc37334a4253ff075f703cc87\u0027:\n  Camera: don\u0027t spam RingBufferConsumer logs in eng builds\n"
    },
    {
      "commit": "d5694a2e7e61cf7e19a0e135e63142d1967e178b",
      "tree": "cbc081163fbf4538cf451606733eec290d428747",
      "parents": [
        "a2d2dc67ecdbd8c6892c3cff11d076110dee75ef"
      ],
      "author": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Tue May 14 16:05:27 2013 -0700"
      },
      "committer": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Tue May 14 17:03:33 2013 -0700"
      },
      "message": "Camera3: Fix fast flexible YUV-\u003eNV21 path.\n\nA U by any other name may smell just as sweet, but the color\u0027s pretty\nawful if you call it a V.\n\nHenceforth they never will be UV.\n\nBug: 8949720\nChange-Id: I4897e93d5a293e576bb1d7ba44d91792b869ad42\n"
    },
    {
      "commit": "8e2afd9817e53858e3f99f810c0b7abe4c4d5533",
      "tree": "079d789e68d6afb3783682bc096bf220623b24a5",
      "parents": [
        "a2d2dc67ecdbd8c6892c3cff11d076110dee75ef"
      ],
      "author": {
        "name": "Igor Murashkin",
        "email": "iam@google.com",
        "time": "Tue May 14 16:17:12 2013 -0700"
      },
      "committer": {
        "name": "Igor Murashkin",
        "email": "iam@google.com",
        "time": "Tue May 14 16:56:09 2013 -0700"
      },
      "message": "Camera: don\u0027t spam RingBufferConsumer logs in eng builds\n\nBug: 8969579\nChange-Id: Ia51d4072725754fd3b6ca028232a605885376287\n"
    },
    {
      "commit": "e974c7df1c4a87ced27a773430690a20d208d40e",
      "tree": "e54dacfb7d8a9ce76746c119bc43a50c9675cdf5",
      "parents": [
        "76d1490ad74fc8a682d9534a2e03f3e864cb1702",
        "d60867b24a8f8906aeb751de22b8f2df044b132b"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Tue May 14 15:02:33 2013 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Tue May 14 15:02:33 2013 -0700"
      },
      "message": "am effc08ed: Merge \"Replace obsolete CLOCK_MONOTONIC_HR by CLOCK_MONOTONIC\"\n\n* commit \u0027effc08ed1eb1d55ca13997ec96f72e40a0866394\u0027:\n  Replace obsolete CLOCK_MONOTONIC_HR by CLOCK_MONOTONIC\n"
    },
    {
      "commit": "8df7184c17a6f7f7fa6612b6de30af655f5eb0a7",
      "tree": "6756c75fb3167c07451c1ad975e05f4c267f2eff",
      "parents": [
        "0dbff625c3128962b48f3476ceacb3ac80a3f421"
      ],
      "author": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Fri May 10 09:29:51 2013 -0700"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Tue May 14 14:38:51 2013 -0700"
      },
      "message": "Replace obsolete CLOCK_MONOTONIC_HR by CLOCK_MONOTONIC\n\n(cherry-pick of da1a325bc0a1421f4233e62704da4fab8b0acf7b.)\n\nBug: 8895727\nChange-Id: I29d5dcf8519600fdd2910345449c66a5c1284646\n"
    },
    {
      "commit": "4a434ce11e328ab97b02ca3cc44e920bc82c198b",
      "tree": "b5962d37a5948d6b5b50becd5c4428d8cb41b8ef",
      "parents": [
        "189660fdc736b495fee20d4a83a7d8a3573e4309"
      ],
      "author": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Fri May 10 09:29:51 2013 -0700"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Tue May 14 14:38:51 2013 -0700"
      },
      "message": "Replace obsolete CLOCK_MONOTONIC_HR by CLOCK_MONOTONIC\n\n(cherry-pick of da1a325bc0a1421f4233e62704da4fab8b0acf7b.)\n\nBug: 8895727\nChange-Id: I29d5dcf8519600fdd2910345449c66a5c1284646\n"
    },
    {
      "commit": "5282713a976184e41451315f1286d8075b257d58",
      "tree": "d6d3484980644d1d66d00aba3f2113e3c70cddf6",
      "parents": [
        "8dbaa56a9de51d506977bda112f75b8af50920e9"
      ],
      "author": {
        "name": "Igor Murashkin",
        "email": "iam@google.com",
        "time": "Mon May 13 14:53:44 2013 -0700"
      },
      "committer": {
        "name": "Igor Murashkin",
        "email": "iam@google.com",
        "time": "Mon May 13 18:21:41 2013 -0700"
      },
      "message": "Camera: Pause preview when needing to delete jpeg/zsl streams\n\nBug: 8876221\nChange-Id: Idf9490a48462fa44d49c4ebe99425c3149ae6378\n"
    },
    {
      "commit": "8dbaa56a9de51d506977bda112f75b8af50920e9",
      "tree": "166bcb5643c3e3436f0ec18bb87024f545f61194",
      "parents": [
        "e743d2ece72a0a7843cb17d2e04c9faaa3570884",
        "e3a9f964d7ebb6f269e6df2ba9c24b7c8b9ccefd"
      ],
      "author": {
        "name": "Igor Murashkin",
        "email": "iam@google.com",
        "time": "Mon May 13 20:47:17 2013 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon May 13 20:47:17 2013 +0000"
      },
      "message": "Merge \"Camera3: Refactor stream code to be DRY\" into jb-mr2-dev"
    },
    {
      "commit": "5fd5b268201e2fc21aaeba4fbac11195ee430c71",
      "tree": "53225bcc7cc77645f830c63f5aff5e12d97ac353",
      "parents": [
        "6d0cf90b6b28cbb7e3e1b3ae32017aa4b44b6452",
        "fcbf94b9407b28d5a5f1a14e822e8b9ee264b7d8"
      ],
      "author": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Fri May 10 23:59:04 2013 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri May 10 23:59:04 2013 +0000"
      },
      "message": "Merge \"Camera2/3: Optimize a few YCbCr_420_888 copy paths\" into jb-mr2-dev"
    },
    {
      "commit": "6d0cf90b6b28cbb7e3e1b3ae32017aa4b44b6452",
      "tree": "15bd0dbf17612441b4a6f6d543c862fd0270e780",
      "parents": [
        "2703cf1f71f679542f21632a9c1bd88af9578d0f",
        "4ad015003cbab4ee6889b803225648c76a156193"
      ],
      "author": {
        "name": "Alex Ray",
        "email": "aray@google.com",
        "time": "Fri May 10 20:07:33 2013 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri May 10 20:07:33 2013 +0000"
      },
      "message": "Merge \"Camera2: FoV quirk crop regions\" into jb-mr2-dev"
    },
    {
      "commit": "e3a9f964d7ebb6f269e6df2ba9c24b7c8b9ccefd",
      "tree": "dbb01054361e7abf6c099c28944e25381f1e8eee",
      "parents": [
        "5a1798ad24c73212c6614cf9f11de5fa86a20148"
      ],
      "author": {
        "name": "Igor Murashkin",
        "email": "iam@google.com",
        "time": "Wed May 08 18:03:15 2013 -0700"
      },
      "committer": {
        "name": "Igor Murashkin",
        "email": "iam@google.com",
        "time": "Fri May 10 12:52:56 2013 -0700"
      },
      "message": "Camera3: Refactor stream code to be DRY\n\nBug: 8851039\nChange-Id: Iaac2926bfa25dd6e9db8b307765d4fe709b88d21\n"
    },
    {
      "commit": "2703cf1f71f679542f21632a9c1bd88af9578d0f",
      "tree": "90d5d92acd715fa59163d7232c82ba898d777708",
      "parents": [
        "9d75e9928f0fd49c4a0764ab71eb00636848c87a"
      ],
      "author": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Thu May 09 17:03:54 2013 -0700"
      },
      "committer": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Thu May 09 17:03:54 2013 -0700"
      },
      "message": "Camera3: Fix initial orientation configuration.\n\nOne call to set orientation too many.\n\nBug: 8683719\nChange-Id: I4b776fc8665eed940a1f18a6f617be4f1406e41a\n"
    },
    {
      "commit": "fcbf94b9407b28d5a5f1a14e822e8b9ee264b7d8",
      "tree": "c89992a660a3449979a88aa1b5977149d2fd1131",
      "parents": [
        "9d75e9928f0fd49c4a0764ab71eb00636848c87a"
      ],
      "author": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Thu May 09 12:10:35 2013 -0700"
      },
      "committer": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Thu May 09 12:13:07 2013 -0700"
      },
      "message": "Camera2/3: Optimize a few YCbCr_420_888 copy paths\n\nCovers cases where the HAL format and the API format have the same\nchroma layout.\n\nBug: 8734880\nChange-Id: Ia735082c260b5914fc14f12551f91917c4e53b01\n"
    },
    {
      "commit": "9d75e9928f0fd49c4a0764ab71eb00636848c87a",
      "tree": "d8c2242aaff0cfe73644d8a08cab33b91f966ee9",
      "parents": [
        "714e392037834a1d183609745e69d3cfc2d26985",
        "5a1798ad24c73212c6614cf9f11de5fa86a20148"
      ],
      "author": {
        "name": "Igor Murashkin",
        "email": "iam@google.com",
        "time": "Thu May 09 19:01:31 2013 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu May 09 19:01:31 2013 +0000"
      },
      "message": "Merge \"camera3: Manage fences properly when buffers are returned with an error\" into jb-mr2-dev"
    },
    {
      "commit": "714e392037834a1d183609745e69d3cfc2d26985",
      "tree": "0e7cb7acf03cfb1e39a55aae9197689d61bf8fc5",
      "parents": [
        "8513c5ef44428229fc43d4c0fe3f31f0ff79ed41",
        "be53a80f4e50921790aa7c5eb12b798b988232b6"
      ],
      "author": {
        "name": "Igor Murashkin",
        "email": "iam@google.com",
        "time": "Thu May 09 19:01:18 2013 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu May 09 19:01:19 2013 +0000"
      },
      "message": "Merge \"camera2: Add height to the crop region metadata property\" into jb-mr2-dev"
    },
    {
      "commit": "8513c5ef44428229fc43d4c0fe3f31f0ff79ed41",
      "tree": "bd449edbc92b666b4c7bcfb5e2fdaf9179926c60",
      "parents": [
        "a281c960b27eff06e3f4a57d1057c38dad18fff5",
        "92086e6d402dcad6e199325ef097d7707b3d1f83"
      ],
      "author": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Thu May 09 17:13:44 2013 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu May 09 17:13:45 2013 +0000"
      },
      "message": "Merge \"Camera3: Support flexible YUV for preview callbacks\" into jb-mr2-dev"
    },
    {
      "commit": "5a1798ad24c73212c6614cf9f11de5fa86a20148",
      "tree": "772f6b34cae0f53ee783e8cd7ad43fad7d805bcb",
      "parents": [
        "a281c960b27eff06e3f4a57d1057c38dad18fff5"
      ],
      "author": {
        "name": "Igor Murashkin",
        "email": "iam@google.com",
        "time": "Tue May 07 10:58:13 2013 -0700"
      },
      "committer": {
        "name": "Igor Murashkin",
        "email": "iam@google.com",
        "time": "Wed May 08 11:43:52 2013 -0700"
      },
      "message": "camera3: Manage fences properly when buffers are returned with an error\n\nBug: 8622089\nChange-Id: I4df0258d6803d460d4dd98f0a80829eb844ca30d\n"
    },
    {
      "commit": "a281c960b27eff06e3f4a57d1057c38dad18fff5",
      "tree": "5fc66618077fbc642466a73f5dd96ed3da7937c3",
      "parents": [
        "84e391686d7eced293913d1d7993721224ee0ba1",
        "f6adf0eaa9b1035540b5f68555c307983b631a6f"
      ],
      "author": {
        "name": "Igor Murashkin",
        "email": "iam@google.com",
        "time": "Tue May 07 23:42:30 2013 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue May 07 23:42:31 2013 +0000"
      },
      "message": "Merge \"Camera: Hotplug - conditionally transition to PRESENT when clients disconnect\" into jb-mr2-dev"
    },
    {
      "commit": "4ad015003cbab4ee6889b803225648c76a156193",
      "tree": "0e01e99a6dfa7c442b1005e8e81cbe065adc6993",
      "parents": [
        "84e391686d7eced293913d1d7993721224ee0ba1"
      ],
      "author": {
        "name": "Alex Ray",
        "email": "aray@google.com",
        "time": "Tue May 07 14:31:02 2013 -0700"
      },
      "committer": {
        "name": "Alex Ray",
        "email": "aray@google.com",
        "time": "Tue May 07 15:28:34 2013 -0700"
      },
      "message": "Camera2: FoV quirk crop regions\n\nBug: 8484377\nChange-Id: I5ffcc20b68dc92b502acc9898e57f12cadb92848\n"
    },
    {
      "commit": "be53a80f4e50921790aa7c5eb12b798b988232b6",
      "tree": "4b8c0a4ff9aabb08628d92dd8a6cef79cb70e61f",
      "parents": [
        "84e391686d7eced293913d1d7993721224ee0ba1"
      ],
      "author": {
        "name": "Igor Murashkin",
        "email": "iam@google.com",
        "time": "Tue May 07 13:22:15 2013 -0700"
      },
      "committer": {
        "name": "Igor Murashkin",
        "email": "iam@google.com",
        "time": "Tue May 07 13:24:43 2013 -0700"
      },
      "message": "camera2: Add height to the crop region metadata property\n\nBug: 8756080\nChange-Id: I90b9166440e92f7675255a01ddc4a980c2e52201\n"
    },
    {
      "commit": "92086e6d402dcad6e199325ef097d7707b3d1f83",
      "tree": "3198e3e35106239ac73296e9208b6cab0cf22893",
      "parents": [
        "84e391686d7eced293913d1d7993721224ee0ba1"
      ],
      "author": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Sat May 04 18:24:30 2013 -0700"
      },
      "committer": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Tue May 07 10:34:05 2013 -0700"
      },
      "message": "Camera3: Support flexible YUV for preview callbacks\n\nWhen the HAL supports it, and the client asks for YV12 or NV21,\nuse the new flexible YUV format instead.\n\nBug: 8734880\n\nChange-Id: Ib0129d9c26a6b30f3be7aa624c2439c6edba1bbd\n"
    },
    {
      "commit": "84e391686d7eced293913d1d7993721224ee0ba1",
      "tree": "8771dff60a0c7b6520c820366dfa597810ff1ad4",
      "parents": [
        "8a62761fd7dcc59284ff78f59593172bf80b1c4f"
      ],
      "author": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Mon May 06 16:06:24 2013 -0700"
      },
      "committer": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Mon May 06 16:27:25 2013 -0700"
      },
      "message": "Fix Audioflinger crash when TeeSink is enabled\n\nBug: 8834855\nChange-Id: I54665f16d79901970348a8247d9a354da2990f42\n"
    },
    {
      "commit": "41af583462d06aeac417567d08d10d21a484aa00",
      "tree": "3795c4d7919cd0c90a3350ca435258fe4e00ae6d",
      "parents": [
        "a6560120f96685d7929d535319198485d1d5ccdf",
        "073f8570d8404b6d1ea3a1bd34954c6332ba991a"
      ],
      "author": {
        "name": "Igor Murashkin",
        "email": "iam@google.com",
        "time": "Mon May 06 03:18:23 2013 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon May 06 03:18:23 2013 +0000"
      },
      "message": "Merge \"camera3: Don\u0027t eagerly finish configuring bidi streams more than once\" into jb-mr2-dev"
    },
    {
      "commit": "a6560120f96685d7929d535319198485d1d5ccdf",
      "tree": "0253af44cdc42fc828e84953531f36807ebc4f91",
      "parents": [
        "98e099aca2089decdf3486ae216c89766cc252f2",
        "f8197a6a9d9363cb52bb8a2c15c0e5a52064355e"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Fri May 03 15:39:52 2013 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri May 03 15:39:53 2013 +0000"
      },
      "message": "Merge \"Remove timing jitter during startup of audio\" into jb-mr2-dev"
    },
    {
      "commit": "f6adf0eaa9b1035540b5f68555c307983b631a6f",
      "tree": "1c5874e91c55b47fa012c0581c0d6e0abd26cdfe",
      "parents": [
        "98e099aca2089decdf3486ae216c89766cc252f2"
      ],
      "author": {
        "name": "Igor Murashkin",
        "email": "iam@google.com",
        "time": "Wed May 01 15:42:20 2013 -0700"
      },
      "committer": {
        "name": "Igor Murashkin",
        "email": "iam@google.com",
        "time": "Thu May 02 18:04:38 2013 -0700"
      },
      "message": "Camera: Hotplug - conditionally transition to PRESENT when clients disconnect\n\nFixes an issue where a client could unconditionally transition to PRESENT\nafter a client disconnects, even though the underlying HAL status was actually\nNOT_PRESENT or ENUMERATING.\n\nBug: 8780114\nChange-Id: I68adb5fc819eec3b046ddcb2507b84bedc999a0f\n"
    },
    {
      "commit": "98e099aca2089decdf3486ae216c89766cc252f2",
      "tree": "9f52bb82430e2675376c8fa2f59672fde65dd40a",
      "parents": [
        "04a840d9a0eea7d0816b6b665aa150649c46974f",
        "61675c0a7b5d88d5f525b1a1926fab6a7b2c7904"
      ],
      "author": {
        "name": "Igor Murashkin",
        "email": "iam@google.com",
        "time": "Thu May 02 23:03:48 2013 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu May 02 23:03:48 2013 +0000"
      },
      "message": "Merge \"camera3: Don\u0027t crash when taking a still capture with ZSL disabled\" into jb-mr2-dev"
    },
    {
      "commit": "073f8570d8404b6d1ea3a1bd34954c6332ba991a",
      "tree": "ed4818fb04fa590ec8450d542977690158fd7f8b",
      "parents": [
        "61675c0a7b5d88d5f525b1a1926fab6a7b2c7904"
      ],
      "author": {
        "name": "Igor Murashkin",
        "email": "iam@google.com",
        "time": "Thu May 02 14:59:28 2013 -0700"
      },
      "committer": {
        "name": "Igor Murashkin",
        "email": "iam@google.com",
        "time": "Thu May 02 14:59:28 2013 -0700"
      },
      "message": "camera3: Don\u0027t eagerly finish configuring bidi streams more than once\n\nFinishing all stream configuration immediately is good, but when a stream is\nboth input and output it attempted to finish configuring bidi streams twice.\nSince all ZSL streams are bidi, when we had a ZSL stream active preview would\nimmediately stop working.\n\nBug: 8563838\nChange-Id: Iec998f11f6405fc15f3f31bd7cd29f03a7968d14\n"
    },
    {
      "commit": "e0b121bd312dc4c238cca5d9b48192c1b4cd53c1",
      "tree": "5bf4a7ddca2f38ccb136950d35b8b1d2cff85f01",
      "parents": [
        "88346647a41a7bdcc1d3640893adc48d76f5b6c0",
        "a1220f482f5a50488777ab789abd861b5565acdc"
      ],
      "author": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Thu May 02 21:17:44 2013 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu May 02 21:17:44 2013 +0000"
      },
      "message": "Merge \"Camera2/3: Fix still image FOV reporting.\" into jb-mr2-dev"
    },
    {
      "commit": "61675c0a7b5d88d5f525b1a1926fab6a7b2c7904",
      "tree": "d184ee5c49fd92306b1d9f528c9361a45d327aa5",
      "parents": [
        "688492164e7d92618a1409b567f884bcbd9a5d02"
      ],
      "author": {
        "name": "Igor Murashkin",
        "email": "iam@google.com",
        "time": "Thu May 02 11:53:00 2013 -0700"
      },
      "committer": {
        "name": "Igor Murashkin",
        "email": "iam@google.com",
        "time": "Thu May 02 14:04:41 2013 -0700"
      },
      "message": "camera3: Don\u0027t crash when taking a still capture with ZSL disabled\n\nBug: 8790212\nChange-Id: I4bf7ac5ab856b0ea1738844182efb86137e14083\n"
    }
  ],
  "next": "a1220f482f5a50488777ab789abd861b5565acdc"
}
