)]}'
{
  "log": [
    {
      "commit": "087dd8e7232e4c009e9121ab7e8c37985522c9ad",
      "tree": "bc282d9d295339220829c2cdade7a3eca5fb898e",
      "parents": [
        "4769f0b873030bbaa6977fe18696961d1d1b26ba"
      ],
      "author": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Thu Sep 27 13:49:02 2012 -0700"
      },
      "committer": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Sun Sep 30 13:13:11 2012 -0700"
      },
      "message": "Disable audio watchdog\n\nIt\u0027s not critical, and is wasting power\n\nBug: 7241714\nChange-Id: I6ad4375f0000c92529688723dbe0ff0caa809c5d\n"
    },
    {
      "commit": "7165491b8fe140609ab987b510ad1a55715856e9",
      "tree": "f277423bb5a1fe8fda55da6e9640c45565bbd89b",
      "parents": [
        "d13df2463bd09d8c1fc5b20050d3262a4e89512d",
        "2bfc6b42b3733c12485dd51ed95191956abc3e4e"
      ],
      "author": {
        "name": "Jean-Michel Trivi",
        "email": "jmtrivi@google.com",
        "time": "Sun Sep 30 11:57:35 2012 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Sun Sep 30 11:57:36 2012 -0700"
      },
      "message": "Merge \"bug 7253033 clean up before closing an output\" into jb-mr1-dev"
    },
    {
      "commit": "2bfc6b42b3733c12485dd51ed95191956abc3e4e",
      "tree": "0b8c0eef5d695bd7428f9bd984a2038e3b3ec4b4",
      "parents": [
        "003d9f71937070791418bf7efc1f7fe1e4c6b821"
      ],
      "author": {
        "name": "Jean-Michel Trivi",
        "email": "jmtrivi@google.com",
        "time": "Fri Sep 28 14:49:39 2012 -0700"
      },
      "committer": {
        "name": "Jean-Michel Trivi",
        "email": "jmtrivi@google.com",
        "time": "Sun Sep 30 11:11:26 2012 -0700"
      },
      "message": "bug 7253033 clean up before closing an output\n\nAn output can only be closed if there is no lock contention that\n prevents ThreadBase::exit() from being blocked. If an output\n device is waiting for an operation to complete (here a write\n in the remote_submix module, because the pipe is full), signal\n the module that it\u0027s entering the \"exiting\" state.\n\nChange-Id: I8248add60da543e90c25a4c809866cdb26255651\n"
    },
    {
      "commit": "73bbd1f1c493835f191ea2b0b72439292496b40a",
      "tree": "136a98ae9ea18efb4de1dc43c6be4a5fc5422eb6",
      "parents": [
        "0517e304d0cce25653a033e3cb00172d54ba251d"
      ],
      "author": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Wed Sep 26 10:45:47 2012 -0700"
      },
      "committer": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Fri Sep 28 17:56:48 2012 -0700"
      },
      "message": "Camera2: Refactor preview/recording management to separate class.\n\nUntangle preview/recording management from main class to simplify\ncallpaths; in preparation for fixing several HAL/app interactions\nbugs.\n\nBug: 7172543\nBug: 7159577\nBug: 7107220\nChange-Id: Iab5503f66b35d88a1524111536a484c9e33fd934\n"
    },
    {
      "commit": "0517e304d0cce25653a033e3cb00172d54ba251d",
      "tree": "4f4f1433c3a02eb25e84648c8a8d9f64eee10de0",
      "parents": [
        "bbe96f0f05a1f1a1b3cfec0d124cb0d63c1ebf2a"
      ],
      "author": {
        "name": "James Painter",
        "email": "jpainter@google.com",
        "time": "Fri Sep 28 00:09:12 2012 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Sep 28 17:26:55 2012 -0700"
      },
      "message": "DO NOT MERGE: Remove experimental parameters for burst mode\n\nBug: 7248756\nChange-Id: I3aaf2da4791b2a13e1e788b2914e4c51c529a75d\n"
    },
    {
      "commit": "23f74017a2c457a25382677b6e696c4cfa06cef5",
      "tree": "f0b2451267f7738fdf76855a679df21e26768aca",
      "parents": [
        "3a0ef0dc71f3776d115f30d87f1d8867daefea88",
        "0fa1e760f7093d025c977e5813e8d3a04c863ce3"
      ],
      "author": {
        "name": "Alex Ray",
        "email": "aray@google.com",
        "time": "Fri Sep 28 13:12:28 2012 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Sep 28 13:12:29 2012 -0700"
      },
      "message": "Merge \"Camera2: Use new JPEG transport header\" into jb-mr1-dev"
    },
    {
      "commit": "24dfc952bcb609f7ba59c7fb9f7c3004ffb8c83b",
      "tree": "0e9ebc618d720f5f327fe46c9680cda49d3c4cf4",
      "parents": [
        "d0cec0cb574a3d629afb7c32883bc986d7a65535",
        "77449ada4b5ca73a948aa4fef9aafe3079a66d61"
      ],
      "author": {
        "name": "Alex Ray",
        "email": "aray@google.com",
        "time": "Fri Sep 28 10:30:38 2012 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Sep 28 10:30:39 2012 -0700"
      },
      "message": "Merge \"Camera2: Re-entering preview state on v2 Device\" into jb-mr1-dev"
    },
    {
      "commit": "0fa1e760f7093d025c977e5813e8d3a04c863ce3",
      "tree": "8c39dd61ff0eedc25d936156bd6deb3b9f5fc0a0",
      "parents": [
        "d0cec0cb574a3d629afb7c32883bc986d7a65535"
      ],
      "author": {
        "name": "Alex Ray",
        "email": "aray@google.com",
        "time": "Thu Sep 27 16:06:48 2012 -0700"
      },
      "committer": {
        "name": "Alex Ray",
        "email": "aray@google.com",
        "time": "Thu Sep 27 22:55:55 2012 -0700"
      },
      "message": "Camera2: Use new JPEG transport header\n\nCheck for new JPEG transport header at the end of the stream buffer\ninstead of at the beginning.\n\nBug: 7108816\nChange-Id: I26c52267cb406dae50c9d0ee01e6c26359ba84aa\n"
    },
    {
      "commit": "d0cec0cb574a3d629afb7c32883bc986d7a65535",
      "tree": "66346079b70603cab0e70895da35f4df9f167607",
      "parents": [
        "12d3e887c6cefcd5ae0abce528ea576950ce6b9f"
      ],
      "author": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Thu Sep 27 18:08:20 2012 -0700"
      },
      "committer": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Thu Sep 27 18:08:20 2012 -0700"
      },
      "message": "Camera2: Only _some_ FPS values in the old API are scaled.\n\nThe (deprecated) single-FPS parameter is not scaled by 1000.\n\nBug: 7230239\nChange-Id: I5664cce90f9cb01e57e39f1a1f7c8eb730501da3\n"
    },
    {
      "commit": "12d3e887c6cefcd5ae0abce528ea576950ce6b9f",
      "tree": "5501d3c5afbd78ef1ccb6f50c7f9f273262653cc",
      "parents": [
        "de799a74064a363d26f4c1bbc5a59d1b7127f49f",
        "c9d7e4da3f963dadbea19e9b520fb7a7e28e614a"
      ],
      "author": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Thu Sep 27 16:36:15 2012 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Sep 27 16:36:16 2012 -0700"
      },
      "message": "Merge \"Camera2: Fix FPS value scaling between HAL2 and API\" into jb-mr1-dev"
    },
    {
      "commit": "c9d7e4da3f963dadbea19e9b520fb7a7e28e614a",
      "tree": "c8fe2f4c3b2a213141cf2e3b6bca57300f28cd95",
      "parents": [
        "72ff5903df5f409ea83f74c363a52f0745ced8b8"
      ],
      "author": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Thu Sep 27 14:18:13 2012 -0700"
      },
      "committer": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Thu Sep 27 14:18:13 2012 -0700"
      },
      "message": "Camera2: Fix FPS value scaling between HAL2 and API\n\nAPI assumes FPS values are in fixed-point with LSB 0.001; HAL2 just\nuses ints with no fractional part.\n\nHAL should probably use floats or something similar, but for now, fix\nscaling so the two agree on FPS values.\n\nBug: 7230239\nChange-Id: Ie18a4f11fc9d17d9ae2d04781511a273213eda55\n"
    },
    {
      "commit": "77449ada4b5ca73a948aa4fef9aafe3079a66d61",
      "tree": "cc839d982498f1700355a38878ce17aef6ce0628",
      "parents": [
        "6d6a4d3f37b332284b8b976bd5bb21d29007a97e"
      ],
      "author": {
        "name": "Alex Ray",
        "email": "aray@google.com",
        "time": "Wed Sep 26 15:52:50 2012 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Sep 26 23:32:26 2012 -0700"
      },
      "message": "Camera2: Re-entering preview state on v2 Device\n\nBug: 7240891\nChange-Id: I6a01b27197b4ee89a68f06f4375d315a716b67ae\n"
    },
    {
      "commit": "76b111685010e1fea7c0a865c038aee35507fde4",
      "tree": "25a9d24b4cc23476d25cc026ff0888a3ffcf73e8",
      "parents": [
        "12bff5dd87e6b863482e6bfd9f4561078ebcf3f0"
      ],
      "author": {
        "name": "SathishKumar Mani",
        "email": "smani@codeaurora.org",
        "time": "Tue Jan 17 10:49:47 2012 -0800"
      },
      "committer": {
        "name": "Iliyan Malchev",
        "email": "malchev@google.com",
        "time": "Wed Sep 26 18:48:44 2012 -0700"
      },
      "message": "audioflinger: use resample coefficients from audio-resampler library.\n\n-Add a separate quality VERY_HIGH_QUALITY in resampler\n-Use resample coefficients audio-resampler library for\n quality VERY_HIGH_QUALITY.\n-This improves the quality of resampled output.\n\nBug: 7024293\nChange-Id: Ia44142413bed5f5963d7eab7846eec877a2415e4\nSigned-off-by: Iliyan Malchev \u003cmalchev@google.com\u003e\n"
    },
    {
      "commit": "12bff5dd87e6b863482e6bfd9f4561078ebcf3f0",
      "tree": "9b565e188d5e7d66916bda87c8f9c09b7d3e6874",
      "parents": [
        "72ff5903df5f409ea83f74c363a52f0745ced8b8"
      ],
      "author": {
        "name": "SathishKumar Mani",
        "email": "smani@codeaurora.org",
        "time": "Mon Sep 24 11:48:11 2012 -0700"
      },
      "committer": {
        "name": "Iliyan Malchev",
        "email": "malchev@google.com",
        "time": "Wed Sep 26 18:48:34 2012 -0700"
      },
      "message": "audioflinger/resampler: Add VERY_HIGH_QUALITY audio-resampler\n\nChange-Id: I34f5d36ae60010ec64222d6660d10a84da3bf566\nBug: 7024293\nSigned-off-by: Iliyan Malchev \u003cmalchev@google.com\u003e\n"
    },
    {
      "commit": "eb8a42b934f20a15f40d656e2bc90f384f1ccb10",
      "tree": "d68bc9c458628a5256e71443adafc624510b5c9b",
      "parents": [
        "44b175c31a96804d8f981c43145967473491540f"
      ],
      "author": {
        "name": "Alex Ray",
        "email": "aray@google.com",
        "time": "Tue Sep 25 12:37:14 2012 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Sep 26 11:11:43 2012 -0700"
      },
      "message": "Camera2: Fix JPEG Transport Header offset\n\nUse offset into start of buffer after transport header\n\nBug: 7108816\nChange-Id: I6f9778db313856eaeee31f6999e4e55678b09b26\n"
    },
    {
      "commit": "842c5d9553f3f8e97d04ed1bd0d37e4851240654",
      "tree": "7147d39e042bd7b4f06867168178322b811e1d65",
      "parents": [
        "cc0f1cfb69ce8b8985fc2c0984847a06a13ad22d"
      ],
      "author": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Wed Sep 26 08:34:10 2012 -0700"
      },
      "committer": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Wed Sep 26 08:55:08 2012 -0700"
      },
      "message": "Revert \"Don\u0027t wait for presentation complete if terminated\"\n\nThis reverts commit 44cda3a4e7ca3de0db9cb49145def3803b03ebb4\n\nChange-Id: I7fd29b77690dab057ac966a42fb198b2772f092c\n"
    },
    {
      "commit": "cc0f1cfb69ce8b8985fc2c0984847a06a13ad22d",
      "tree": "f3522fd1ad371d1e592c8c8cfd8d0ce1d98f80c2",
      "parents": [
        "d9aa7b4db46bea5966401f9fcfbecb3269ec55c7"
      ],
      "author": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Mon Sep 24 11:27:18 2012 -0700"
      },
      "committer": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Tue Sep 25 17:13:18 2012 -0700"
      },
      "message": "Implement android.media.AudioManager.getProperty()\n\nBug: 6635041\nChange-Id: I3386a4a6c226bc4eceaf65556119e4fb15f73224\n"
    },
    {
      "commit": "c7d9afdc7d2181aef7688638fff52859bcdabd65",
      "tree": "21cc632f36cd9a1c45570fe15aa458f77d3dccaa",
      "parents": [
        "4bb8118816874c696d9f1adab48490df1da365f7"
      ],
      "author": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Mon Sep 24 13:44:07 2012 -0700"
      },
      "committer": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Tue Sep 25 12:12:40 2012 -0700"
      },
      "message": "Camera2: Make sure to clean out reprocess streams on shutdown as well.\n\nOtherwise, streams may persist past expected lifetime.\n\nBug: 6243944\nChange-Id: I901971b78baf9d577ea3812588dec3885232e7ef\n"
    },
    {
      "commit": "4bb8118816874c696d9f1adab48490df1da365f7",
      "tree": "685c57b06d3faa9750d0e0c2aae5eedb59484a70",
      "parents": [
        "b6ba2fd0d61a4844c153e17843fbe2c841c4bf57"
      ],
      "author": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Mon Sep 24 09:46:53 2012 -0700"
      },
      "committer": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Tue Sep 25 10:35:28 2012 -0700"
      },
      "message": "Camera2: Debug and logging fixes.\n\n- Fix LOG_TAGs to work with standard logcat filtering.\n- Add ATRACE to Camera2Device\n- Shorten thread names to fit in 16 characters\n- Remove some ATRACEs to avoid flooding trace unnecessarily\n\nBug: 7220520\nChange-Id: Ief8d677b5c8bb35d94e0f21b11b86505e83169ea\n"
    },
    {
      "commit": "b6ba2fd0d61a4844c153e17843fbe2c841c4bf57",
      "tree": "4cd873f829cccccd2a1c032f17ea54aabb0f3234",
      "parents": [
        "2a865ad8d45940bc824c02a8a8558cbcb97acc88"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Mon Sep 24 15:02:17 2012 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Sep 25 09:40:00 2012 -0700"
      },
      "message": "audioflinger: improve record start and thread exit\n\nUse broadcast() instead of signal() on the\nthread wake up condition when starting record or requesting thread\nexit to make sure that if another thread is waiting for the same\ncondition (e.g binder thread calling setParameters()) the mixer\nthread will be woken up.\n\nBug 7184317.\n\nChange-Id: I3154a4509ca7af6ffae5236e522b0fab8e75ed06\n"
    },
    {
      "commit": "9a2e4fa60c843df54f35923898975fdbd04bed56",
      "tree": "3bf95fcf491310a860b61f79787c1e9615fcc15d",
      "parents": [
        "aae1de9eaba5aa3e2bce68b59aa78f918020f5a8",
        "1b65ae9b7bcb4302f80ddc1464f1aa2c7483efb8"
      ],
      "author": {
        "name": "Igor Murashkin",
        "email": "iam@google.com",
        "time": "Mon Sep 24 15:19:04 2012 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Sep 24 15:19:05 2012 -0700"
      },
      "message": "Merge \"Camera2: Emit ShutterCallback/RawCallback events after takePicture\" into jb-mr1-dev"
    },
    {
      "commit": "aae1de9eaba5aa3e2bce68b59aa78f918020f5a8",
      "tree": "dc94163f914abda0814140a704beb3a735e3ea70",
      "parents": [
        "8d452f1c61aa70c4a86c4114532f2c0983120ef8",
        "018d228ac43a8da7d5f36e45fd105c9baf2490a0"
      ],
      "author": {
        "name": "Igor Murashkin",
        "email": "iam@google.com",
        "time": "Mon Sep 24 15:18:41 2012 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Sep 24 15:18:42 2012 -0700"
      },
      "message": "Merge \"Camera2: Fix cropRegion sometimes exceeding the sensor array size\" into jb-mr1-dev"
    },
    {
      "commit": "8d452f1c61aa70c4a86c4114532f2c0983120ef8",
      "tree": "0b31d36c3dbe51b243a707b29584bf9318e3825e",
      "parents": [
        "c0c3b298cbcf47feeeaa597a7621a0dd45f5a99e",
        "80b3273cea8660fe8a5868d024d2788a1e083ffc"
      ],
      "author": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Mon Sep 24 13:51:58 2012 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Sep 24 13:51:58 2012 -0700"
      },
      "message": "Merge \"Check clock_gettime(CLOCK_MONOTONIC) for failure\" into jb-mr1-dev"
    },
    {
      "commit": "1b65ae9b7bcb4302f80ddc1464f1aa2c7483efb8",
      "tree": "18c3b326a2a4f5c962be2282ea7c48b390495bee",
      "parents": [
        "c0c3b298cbcf47feeeaa597a7621a0dd45f5a99e"
      ],
      "author": {
        "name": "Igor Murashkin",
        "email": "iam@google.com",
        "time": "Thu Sep 20 15:18:50 2012 -0700"
      },
      "committer": {
        "name": "Igor Murashkin",
        "email": "iam@google.com",
        "time": "Mon Sep 24 12:30:03 2012 -0700"
      },
      "message": "Camera2: Emit ShutterCallback/RawCallback events after takePicture\n\nBug: 7176692\nChange-Id: I50e8f9511f1770d97a42d1fa208c04b1bbcfba6b\n"
    },
    {
      "commit": "018d228ac43a8da7d5f36e45fd105c9baf2490a0",
      "tree": "33558bef13d028483033d2faae3a5607504df702",
      "parents": [
        "c0c3b298cbcf47feeeaa597a7621a0dd45f5a99e"
      ],
      "author": {
        "name": "Igor Murashkin",
        "email": "iam@google.com",
        "time": "Tue Sep 18 18:23:49 2012 -0700"
      },
      "committer": {
        "name": "Igor Murashkin",
        "email": "iam@google.com",
        "time": "Mon Sep 24 12:26:50 2012 -0700"
      },
      "message": "Camera2: Fix cropRegion sometimes exceeding the sensor array size\n\nBug: 7155264\nBug: 7120431\nChange-Id: I92a9c695b97ec40acf26dbdaa877964e41a9fd4c\n"
    },
    {
      "commit": "80b3273cea8660fe8a5868d024d2788a1e083ffc",
      "tree": "e9d4e782be64fe03b80331cf62f98ca27c16be6f",
      "parents": [
        "94a68ecf2b56bd56994d0352cbaad56e58dcf0dc"
      ],
      "author": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Mon Sep 24 11:29:00 2012 -0700"
      },
      "committer": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Mon Sep 24 11:48:20 2012 -0700"
      },
      "message": "Check clock_gettime(CLOCK_MONOTONIC) for failure\n\nBug: 7100774\nChange-Id: I15a84a19bb6d6ef1d9dac4beaa03587638196404\n"
    },
    {
      "commit": "c0c3b298cbcf47feeeaa597a7621a0dd45f5a99e",
      "tree": "65b4b91a2aea14f71b46a3b6539c8d7cb7385315",
      "parents": [
        "53787020d2706a1ab04972213b586acaf757bd57",
        "1afc26db11b71c43f63a0f72a45a803f1a7910dd"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Mon Sep 24 10:38:23 2012 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Sep 24 10:38:23 2012 -0700"
      },
      "message": "Merge \"fix end of track presentation on suspended output\" into jb-mr1-dev"
    },
    {
      "commit": "a6b4c40e70eafc5aba16163999de6d3e26667b89",
      "tree": "fdf489bb7518feaa8b693e7cdc1a6dc83c44db44",
      "parents": [
        "94a68ecf2b56bd56994d0352cbaad56e58dcf0dc"
      ],
      "author": {
        "name": "Alex Ray",
        "email": "aray@google.com",
        "time": "Fri Sep 21 00:58:03 2012 -0700"
      },
      "committer": {
        "name": "Alex Ray",
        "email": "aray@google.com",
        "time": "Mon Sep 24 05:18:14 2012 -0700"
      },
      "message": "Camera2: Truncate JPEG images\n\nCheck for JPEG size hint from HAL, use if applicable.  Otherwise\nread until end of JPEG image to find appropriate file size.\n\nBug: 7108816\nChange-Id: Idfd194133eb6c293ab08c9466f59606e62ba56b6\n"
    },
    {
      "commit": "1afc26db11b71c43f63a0f72a45a803f1a7910dd",
      "tree": "7237e91d3b5ed733ab530046b81a350e4b732113",
      "parents": [
        "94a68ecf2b56bd56994d0352cbaad56e58dcf0dc"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Sun Sep 23 15:20:50 2012 -0700"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Sun Sep 23 15:20:50 2012 -0700"
      },
      "message": "fix end of track presentation on suspended output\n\nThe code detecting the end of an audio track presentation before\nremoving it from the active track list is based on the\ncount of audio frames sent to audio HAL. When an output stream\nis suspended (e.g. A2DP when SCO is active), this count does not\nchange and a track in stopped state will never be removed from\nactive track list causing the mixer thread to never release\nthe wake lock.\n\nThe fix consists in incrementing the audio HAL frame count even\nif the output is suspended.\n\nAlso fix a problem in getRenderPosition() when the output is suspended.\n\nBug 7167534.\n\nChange-Id: I3be836cbbea29b65dc087199cac6a1cd84c0a41d\n"
    },
    {
      "commit": "df2bc29664d3bf80bed0012970608e5605acf7af",
      "tree": "c0ac024b9f8158a5163ea86dd072d8a3099de1c7",
      "parents": [
        "75dce94aca6203ada887b6c2d6a8a8130cdbfaca",
        "6b367f2a2bddfed60d63fa4da5e19ca13352a454"
      ],
      "author": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Fri Sep 21 18:34:43 2012 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Sep 21 18:34:43 2012 -0700"
      },
      "message": "Merge \"Camera2: Don\u0027t use ZSL when flash is on force fire mode.\" into jb-mr1-dev"
    },
    {
      "commit": "6b367f2a2bddfed60d63fa4da5e19ca13352a454",
      "tree": "3b4d1ad3daad12351d967a6c42bc93013bee3d6f",
      "parents": [
        "207e18540fefbaf530a4fdf506d266f34ddec84f"
      ],
      "author": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Fri Sep 21 16:30:42 2012 -0700"
      },
      "committer": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Fri Sep 21 16:30:42 2012 -0700"
      },
      "message": "Camera2: Don\u0027t use ZSL when flash is on force fire mode.\n\nBug: 7213907\nChange-Id: I120b187c1886d85f4b2b5d3a6f28a28936424e8e\n"
    },
    {
      "commit": "75dce94aca6203ada887b6c2d6a8a8130cdbfaca",
      "tree": "060d762527d5b09d43c076ae4b3280f4d0d8b9b7",
      "parents": [
        "207e18540fefbaf530a4fdf506d266f34ddec84f",
        "e7f256a4b1d2037a67ab139fc8131a6ca97bd405"
      ],
      "author": {
        "name": "Igor Murashkin",
        "email": "iam@google.com",
        "time": "Fri Sep 21 15:11:55 2012 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Sep 21 15:11:56 2012 -0700"
      },
      "message": "Merge \"Camera2: Emit FaceDetection events for all except repeating 0-face frames\" into jb-mr1-dev"
    },
    {
      "commit": "e7f256a4b1d2037a67ab139fc8131a6ca97bd405",
      "tree": "66fbcfb862f370f482c0dd65016e7f00cb52f057",
      "parents": [
        "aa05a277e317ff224229c741bb97a6351d3c17db"
      ],
      "author": {
        "name": "Igor Murashkin",
        "email": "iam@google.com",
        "time": "Thu Sep 20 16:27:54 2012 -0700"
      },
      "committer": {
        "name": "Igor Murashkin",
        "email": "iam@google.com",
        "time": "Fri Sep 21 13:22:08 2012 -0700"
      },
      "message": "Camera2: Emit FaceDetection events for all except repeating 0-face frames\n\nBug: 7205311\nChange-Id: I570209445acf3a26f2246c3fe886d56bb63bd2f8\n"
    },
    {
      "commit": "75041228626439668b64c93eb7bb866b3f63c3fd",
      "tree": "b7a9674ab131f07fb909b2b9d17454a8aa25a0b2",
      "parents": [
        "4386b7c4b0f24aa634c0e33f69565bbaa1b2e072",
        "98bb82d1bf7c94240956426812de6593801faad4"
      ],
      "author": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Thu Sep 20 15:12:56 2012 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Sep 20 15:12:57 2012 -0700"
      },
      "message": "Merge \"Camera2: Clean up startup/shutdown sequences.\" into jb-mr1-dev"
    },
    {
      "commit": "98bb82d1bf7c94240956426812de6593801faad4",
      "tree": "b941fa902105ed541c891aa7b2ae47559047a333",
      "parents": [
        "aa05a277e317ff224229c741bb97a6351d3c17db"
      ],
      "author": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Thu Sep 20 14:44:20 2012 -0700"
      },
      "committer": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Thu Sep 20 14:44:20 2012 -0700"
      },
      "message": "Camera2: Clean up startup/shutdown sequences.\n\n- Close camera device on startup errors\n\n- Make sure all threads are shut down and the device is closed before\n  returning from ICamera::disconnect.\n\nBug: 7172680\nChange-Id: I98611448ec5f2311e6604fa8ee5f9dde7bfdd988\n"
    },
    {
      "commit": "768cf093dade9085e0ad6305d9f7c16ae9ad9e26",
      "tree": "e612dae163ae054a48f678078ca82836d5515869",
      "parents": [
        "fe580e57081885dd6059e0d407a6cd96a1be7e51"
      ],
      "author": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Wed Sep 19 17:11:04 2012 -0700"
      },
      "committer": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Thu Sep 20 10:24:47 2012 -0700"
      },
      "message": "Camera2: Erase ZSL queue after each use.\n\nSince preview stops after a capture is submitted, need to clear out\nthe ZSL queue to avoid using stale buffers when the preview starts up\nagain.\n\nBug: 7189765\nChange-Id: I9ae2382d0af132208aca5ccba49b5464d18a263e\n"
    },
    {
      "commit": "fe580e57081885dd6059e0d407a6cd96a1be7e51",
      "tree": "26fe49d76f46f6992e04cb4cb05a33609b378b1d",
      "parents": [
        "da1c5c15c2483cd41035e1a492c5963ac86bbcf5"
      ],
      "author": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Wed Sep 19 17:09:15 2012 -0700"
      },
      "committer": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Thu Sep 20 09:19:16 2012 -0700"
      },
      "message": "Camera2: State must be STOPPED before JPEG callback is fired.\n\nMove handling of JPEG callback to CaptureSequencer instead of\nJpegProcessor, so that we can be sure the camera state is updated to\nSTOPPED before the JPEG callback is sent to the application layer.\n\nBug: 7172743\nChange-Id: Ie8752d946d3eb8254230c77f10e5c38a83dc5371\n"
    },
    {
      "commit": "da1c5c15c2483cd41035e1a492c5963ac86bbcf5",
      "tree": "185bf36804664cb9d75c9cb52936c987069bbf46",
      "parents": [
        "c55311869f1853c6814c9bcda8a4b60e43091c1a"
      ],
      "author": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Wed Sep 19 17:12:50 2012 -0700"
      },
      "committer": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Wed Sep 19 17:12:50 2012 -0700"
      },
      "message": "Camera2: ZSL captures should also make some noise.\n\nChange-Id: If7aff7223db41b4b7edeeb4c32e40ef3197b180b\n"
    },
    {
      "commit": "c55311869f1853c6814c9bcda8a4b60e43091c1a",
      "tree": "62ef87db299344426a86301706adb8a7b81e33bf",
      "parents": [
        "74e58c55bc5259b957a51f1bb44a5911ad1f8400"
      ],
      "author": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Wed Sep 19 16:12:18 2012 -0700"
      },
      "committer": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Wed Sep 19 16:12:18 2012 -0700"
      },
      "message": "Camera2: Increase max timeout for the precapture sequence.\n\nIncrease maximum duration of the precapture sequence (final metering +\npreflash + redeye reduction) to 2 seconds before timing out.\n\nChange-Id: Ie1de4e96d46599eb53e1def9052b211e684f1fbc\n"
    },
    {
      "commit": "74e58c55bc5259b957a51f1bb44a5911ad1f8400",
      "tree": "6d8b2be02ef95ee91f60b0f391f95a405560c2ab",
      "parents": [
        "2f93127de30bbe17707ca8923c486d4494ffda37",
        "1f266efe8ce2976b6531fab8698716354b2247f8"
      ],
      "author": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Tue Sep 18 17:58:26 2012 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Sep 18 17:58:26 2012 -0700"
      },
      "message": "Merge \"Camera2: Increase capture timeout.\" into jb-mr1-dev"
    },
    {
      "commit": "1f266efe8ce2976b6531fab8698716354b2247f8",
      "tree": "29c13da58238723dbf5fac01bffa6f589a31544a",
      "parents": [
        "b845c6b0c3066d6791973be830f0953477461a65"
      ],
      "author": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Tue Sep 18 16:01:11 2012 -0700"
      },
      "committer": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Tue Sep 18 17:57:46 2012 -0700"
      },
      "message": "Camera2: Increase capture timeout.\n\nLow-light modes may take longer to capture a picture, so increase the\ntimeouts.\n\nChange-Id: Id50b1e4fd3186da4e75b2cc1c226ced2f8d394ac\n"
    },
    {
      "commit": "2f93127de30bbe17707ca8923c486d4494ffda37",
      "tree": "a44e33754655bb4d44a467e9eb4f0322cf44b107",
      "parents": [
        "9c6ec8213d8da486a61659b9c37b7a57a2c4bb1a"
      ],
      "author": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Mon Sep 17 16:57:27 2012 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Sep 18 13:34:51 2012 -0700"
      },
      "message": "Camera2: Enable ZSL by default.\n\nBug: 6910087\nChange-Id: Ie774f28fbb943b2ac2c856872fd4cae68b40430c\n"
    },
    {
      "commit": "9c6ec8213d8da486a61659b9c37b7a57a2c4bb1a",
      "tree": "c7e6f55b471b5884fcdf4df9b25c63cf61c8f9c4",
      "parents": [
        "fe5054c9cba7471c8580fe485ec5aaf12df459e8",
        "97b38a81ac989ccba02d726011a82541f14166df"
      ],
      "author": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Tue Sep 18 13:34:31 2012 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Sep 18 13:34:32 2012 -0700"
      },
      "message": "Merge \"Camera2: ZSL: Do regular capture if AE is not satisfied.\" into jb-mr1-dev"
    },
    {
      "commit": "97b38a81ac989ccba02d726011a82541f14166df",
      "tree": "d683f7f7e7a75db4da9d3745267cdb1ed303e1f0",
      "parents": [
        "874a4618b645ab5c1faaa738a871f52492f28de3"
      ],
      "author": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Mon Sep 17 17:55:07 2012 -0700"
      },
      "committer": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Tue Sep 18 10:55:03 2012 -0700"
      },
      "message": "Camera2: ZSL: Do regular capture if AE is not satisfied.\n\n- Check the AE state of the selected ZSL buffer; if it\u0027s not reporting\n  as CONVERGED or LOCKED, fall back to normal capture sequence\n- Add more debugging for the ZSL queue.\n\nBug: 6910087\nChange-Id: I77a4287580aa9ddbd58438477c40ce829555d0ca\n"
    },
    {
      "commit": "663c2cd909cb9c0699b4d58c1db7c6252afd77ea",
      "tree": "f08901217ae2e2ad5aa918752af2b5f621f7708d",
      "parents": [
        "a9f8d040146533a9c214473fd79cbd9dff44428d"
      ],
      "author": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Mon Sep 17 18:25:29 2012 -0700"
      },
      "committer": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Mon Sep 17 18:25:29 2012 -0700"
      },
      "message": "Camera2: Don\u0027t be bothered by lack of faces.\n\nSometimes, people might want to photograph scenes with no faces. And\nnot have their log fill with errors when they do.\n\nBug: 7078231\nChange-Id: Ibe5c08d51b49a3ea14203416fe7803a58de08dda\n"
    },
    {
      "commit": "a9f8d040146533a9c214473fd79cbd9dff44428d",
      "tree": "9c5acf57dc0f278ef24e37659cd56ecd08861af1",
      "parents": [
        "d14de47262340d70fc11fe56159462b9b981067f"
      ],
      "author": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Mon Sep 17 18:07:20 2012 -0700"
      },
      "committer": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Mon Sep 17 18:07:20 2012 -0700"
      },
      "message": "Camera2: Filter out faces with 0 confidence.\n\nBug: 7078231\nChange-Id: I559f1281359835e0489456091a5409ebc8f73479\n"
    },
    {
      "commit": "d14de47262340d70fc11fe56159462b9b981067f",
      "tree": "08c50921257f3c5f016ccdaf9ce4ba011e551c5d",
      "parents": [
        "874a4618b645ab5c1faaa738a871f52492f28de3"
      ],
      "author": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Mon Sep 17 16:43:14 2012 -0700"
      },
      "committer": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Mon Sep 17 16:46:25 2012 -0700"
      },
      "message": "Camera2: Change face detect/scene mode priority.\n\nExplicit scene modes should override the implicit face priority scene\nmode from enabling face detection, to match application/API\nexpectations.\n\nChange-Id: I6f0f44fadeacfdc0594dd2fdc280e294d2d87df6\n"
    },
    {
      "commit": "efb039e07c688c21122c938b008457bd4f555898",
      "tree": "2bd9620e9e9b8be3e76e0cd2d6d67b495b6fe94a",
      "parents": [
        "b845c6b0c3066d6791973be830f0953477461a65"
      ],
      "author": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Sat Sep 15 13:27:52 2012 -0700"
      },
      "committer": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Sat Sep 15 13:27:52 2012 -0700"
      },
      "message": "Camera2: Don\u0027t play shutter sound when doing a video snapshot\n\nBug: 7171820\nChange-Id: I11ec0900aff3cdf4b57ae1bfc75f7acfecf95098\n"
    },
    {
      "commit": "b845c6b0c3066d6791973be830f0953477461a65",
      "tree": "293ddb2751ef25614f2395d722020299d1dd0ccd",
      "parents": [
        "e44e90c82d75b806e89f751a61dc7e54d0144338",
        "beb1416afd1d331b8e7e93d626f39267acce289a"
      ],
      "author": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Fri Sep 14 12:10:07 2012 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Sep 14 12:10:07 2012 -0700"
      },
      "message": "Merge \"Revert \"Revert \"Camera2: Use FORMAT_ZSL until transition to new gralloc scheme.\"\"\" into jb-mr1-dev"
    },
    {
      "commit": "beb1416afd1d331b8e7e93d626f39267acce289a",
      "tree": "bffddba5ecc9040f07ae0a465cb7a1da5a31e6a8",
      "parents": [
        "f54b1459cda7f585b4896671643b33bab8290964"
      ],
      "author": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Fri Sep 14 11:37:13 2012 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Sep 14 11:37:13 2012 -0700"
      },
      "message": "Revert \"Revert \"Camera2: Use FORMAT_ZSL until transition to new gralloc scheme.\"\"\n\nThe changes this commit depends on are now submitted.\n\nThis reverts commit f54b1459cda7f585b4896671643b33bab8290964\n\nChange-Id: If7f146ab7968d50fffd2174c2c5792bdc9d7724c\n"
    },
    {
      "commit": "e44e90c82d75b806e89f751a61dc7e54d0144338",
      "tree": "1f1776783eb72604cdffe5eb1728de132433fa67",
      "parents": [
        "dcd76da55f1f8a77dec07bb7e080ed3488f2ae83",
        "f54b1459cda7f585b4896671643b33bab8290964"
      ],
      "author": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Fri Sep 14 11:17:32 2012 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Sep 14 11:17:33 2012 -0700"
      },
      "message": "Merge \"Revert \"Camera2: Use FORMAT_ZSL until transition to new gralloc scheme.\"\" into jb-mr1-dev"
    },
    {
      "commit": "f54b1459cda7f585b4896671643b33bab8290964",
      "tree": "d206c9004c9c179d779d4c84f3328ca6818d4bee",
      "parents": [
        "8a3016613dc684a6be11fdf643f9cc5cad817e8f"
      ],
      "author": {
        "name": "Igor Murashkin",
        "email": "iam@google.com",
        "time": "Fri Sep 14 11:16:11 2012 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Sep 14 11:16:11 2012 -0700"
      },
      "message": "Revert \"Camera2: Use FORMAT_ZSL until transition to new gralloc scheme.\"\n\nThis reverts commit 8a3016613dc684a6be11fdf643f9cc5cad817e8f\n\nChange-Id: I3f1d4e9c13df838b8b6aa5696a6494140eac3e04\n"
    },
    {
      "commit": "cb66d22f2e3727ca858bb578c1d18956da1a9c2b",
      "tree": "daf3b2710f6d52e230f5b42d1ec7cc2df65d8750",
      "parents": [
        "2637cb172105939052d8a02f4eea693a90549518",
        "8a3016613dc684a6be11fdf643f9cc5cad817e8f"
      ],
      "author": {
        "name": "Igor Murashkin",
        "email": "iam@google.com",
        "time": "Fri Sep 14 11:14:29 2012 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Sep 14 11:14:29 2012 -0700"
      },
      "message": "Merge \"Camera2: Use FORMAT_ZSL until transition to new gralloc scheme.\" into jb-mr1-dev"
    },
    {
      "commit": "896adcd3ae6a1c7010e526327eff54e16179987b",
      "tree": "8c999b21698b1b7b45ac1d290ef3c64c808f380d",
      "parents": [
        "4362f5300162ed55f56cf167eccf7f2e5b89d435"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Thu Sep 13 11:18:23 2012 -0700"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Thu Sep 13 17:03:00 2012 -0700"
      },
      "message": "audioflinger: send priority request from a thread\n\nWhen creating a fast AudioTrack, a request is sent to SchedulingPolicyService\nto elevate the requesting thread priority. This generates a binder\ncall into system_server process and to a JAVA service via JNI.\nIf the thread from which the track was created is in the system_server\nprocess and does not have the \"can call java\" attribute, a crash occurs because\nthe binder optimization reuses the same thread to process the returning binder\ncall and no JNI env is present.\n\nThe fix consists in sending the priority change request from the AudioFlinger\nmixer thread, not from the binder thread.\n\nThis also reverts the workaround in commit 73431968\n\nBug 7126707.\n\nChange-Id: I3347adf71ffbb56ed8436506d4357eab693078a3\n"
    },
    {
      "commit": "8a3016613dc684a6be11fdf643f9cc5cad817e8f",
      "tree": "bffddba5ecc9040f07ae0a465cb7a1da5a31e6a8",
      "parents": [
        "66466087f464b641c8c09b195891a9713a554900"
      ],
      "author": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Thu Sep 13 16:29:45 2012 -0700"
      },
      "committer": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Thu Sep 13 16:43:35 2012 -0700"
      },
      "message": "Camera2: Use FORMAT_ZSL until transition to new gralloc scheme.\n\nUntil all HAL implementations move to the new format negotiation\nscheme, use CAMERA2_HAL_PIXEL_FORMAT_ZSL to indicate ZSL mode.\n\nBug: 6243944\nChange-Id: Idf5d9f42e203903ba906d5df156100646b27404c\n"
    },
    {
      "commit": "4362f5300162ed55f56cf167eccf7f2e5b89d435",
      "tree": "5d7fe2df5bd8f2797e0dc2bf4dd66f658cf4d972",
      "parents": [
        "66466087f464b641c8c09b195891a9713a554900"
      ],
      "author": {
        "name": "Jean-Michel Trivi",
        "email": "jmtrivi@google.com",
        "time": "Thu Sep 13 11:44:00 2012 -0700"
      },
      "committer": {
        "name": "Jean-Michel Trivi",
        "email": "jmtrivi@google.com",
        "time": "Thu Sep 13 12:02:15 2012 -0700"
      },
      "message": "Handle audio HAL returning 0 bytes in record thread\n\nEnter standby when HAL returns an error, but also consider 0 bytes\n  returned as NOT_ENOUGH_DATA.\n\nChange-Id: Ica83142310e9c176f936e0440571a6034cbc575f\n"
    },
    {
      "commit": "f4bca03d996b584030a80268f58cdb29dc7b7cde",
      "tree": "22c841ecba137d0d8928d780f661ca051111d591",
      "parents": [
        "dca352880e210e0ca0ff39de074540d3640ecfab",
        "52762410dbc9189cd92a4094a1dbd4cfe8e71cb6"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Thu Sep 13 09:37:38 2012 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Sep 13 09:37:39 2012 -0700"
      },
      "message": "Merge \"Don\u0027t deadlock on AudioRecord start when reads return 0\" into jb-mr1-dev"
    },
    {
      "commit": "52762410dbc9189cd92a4094a1dbd4cfe8e71cb6",
      "tree": "8855f9e7af9e1e3aaec7e9f3c3550bf56425e8be",
      "parents": [
        "359cf1cac2a7851a59dfe4960a1a5992ac6fdb84"
      ],
      "author": {
        "name": "Jean-Michel Trivi",
        "email": "jmtrivi@google.com",
        "time": "Wed Sep 12 18:48:33 2012 -0700"
      },
      "committer": {
        "name": "Jean-Michel Trivi",
        "email": "jmtrivi@google.com",
        "time": "Wed Sep 12 19:40:30 2012 -0700"
      },
      "message": "Don\u0027t deadlock on AudioRecord start when reads return 0\n\nWhen calling start() on an AudioRecord with a HAL that\n returns 0 on a read() operation, the start blocking\n condition was never unblocked.\nAdd a boolean to track the first read operation so the returned\n number of bytes (mBytesRead) is only evaluated after that\n first read.\n\nChange-Id: I8c735a00d48cd6a0da467ccdf75d3616b38f6afa\n"
    },
    {
      "commit": "bdde5f884eaf270ab4b806849f3122a46cd872ce",
      "tree": "beacea0f676d48325e2d9ae6cb63b44debfc9474",
      "parents": [
        "359cf1cac2a7851a59dfe4960a1a5992ac6fdb84"
      ],
      "author": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Wed Sep 12 10:42:10 2012 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Sep 12 17:57:53 2012 -0700"
      },
      "message": "Camera2: Fix ZSL bugs.\n\nThe ZSL processor was discarding buffers too often, and waiting for\nnew buffers with mutexes held.\n\nAlso adds basic fallback to regular capture in case the ZSL queue\ndoesn\u0027t contain a suitable buffer.\n\nBug: 7147043\n\nChange-Id: I5721267ef08dbc87ef9d8ec47f333db5f67e41c1\n"
    },
    {
      "commit": "d067489a23640a107e0a86f6de9b467d509deb36",
      "tree": "1d5747c516a468d2d0400668c12f3a722a403a7e",
      "parents": [
        "2552036ac67472411082d894eb6e11623799d277",
        "6e4db898bac9499a8abe7e6b6fbf729b78f6bd68"
      ],
      "author": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Tue Sep 11 18:25:27 2012 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Sep 11 18:25:28 2012 -0700"
      },
      "message": "Merge \"Camera2: Use full pixel array for ZSL stream\" into jb-mr1-dev"
    },
    {
      "commit": "2552036ac67472411082d894eb6e11623799d277",
      "tree": "abe704fb221410c7b00c5fa1a20c02556f2b5e16",
      "parents": [
        "64d6c687e75b93c0c8372ed3807e1bb68c1f09ed",
        "b075252349a4b40ddda791f2e1221ae0ce7e4cd1"
      ],
      "author": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Tue Sep 11 18:25:17 2012 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Sep 11 18:25:18 2012 -0700"
      },
      "message": "Merge \"Camera2: Configure ZSL at the right time.\" into jb-mr1-dev"
    },
    {
      "commit": "6e4db898bac9499a8abe7e6b6fbf729b78f6bd68",
      "tree": "a41151546883ccef2b79f21f2bc7a61d61cf1ac9",
      "parents": [
        "b075252349a4b40ddda791f2e1221ae0ce7e4cd1"
      ],
      "author": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Tue Sep 11 17:23:48 2012 -0700"
      },
      "committer": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Tue Sep 11 17:23:48 2012 -0700"
      },
      "message": "Camera2: Use full pixel array for ZSL stream\n\nFor efficiency, use full pixel array size for the ZSL output/input\nstreams, instead of the final picture size.\n\nBug: 7139362\nChange-Id: I98ad4f5a1ca283efe87ae60bf0cf39573e22d2f3\n"
    },
    {
      "commit": "b075252349a4b40ddda791f2e1221ae0ce7e4cd1",
      "tree": "361474f7746df1de6708d489e2adcfa83f1ebdde",
      "parents": [
        "14fe42d8d8d622f6fcdbd83df5f3932e24cd896e"
      ],
      "author": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Tue Sep 11 16:51:32 2012 -0700"
      },
      "committer": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Tue Sep 11 16:51:32 2012 -0700"
      },
      "message": "Camera2: Configure ZSL at the right time.\n\nZSL enable was too early in the camera startup sequence, resulting it\nbeing turned off most of the time.\n\nBug: 7148012\nChange-Id: Ie144dd960d018a34b0bc77c88208ca22b7112772\n"
    },
    {
      "commit": "b063cb62ab371cced17a6288ebf54e7e6ca58982",
      "tree": "afb40aea2d55a6ee26ff3e16729ad00ee0e29e16",
      "parents": [
        "831c7139c9c697fa9d537979f35dad6bf414202c",
        "c5268e825d4a513ad857b7944a9f85dc478c1dc6"
      ],
      "author": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Tue Sep 11 11:37:17 2012 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Sep 11 11:37:18 2012 -0700"
      },
      "message": "Merge \"Camera1: Fix enable shutter sound command error handling.\" into jb-mr1-dev"
    },
    {
      "commit": "c5268e825d4a513ad857b7944a9f85dc478c1dc6",
      "tree": "c754fe71b73142b822c858a5b669c43016898614",
      "parents": [
        "66765846726c02db16a0f024f2217990a90802c0"
      ],
      "author": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Tue Sep 11 11:01:18 2012 -0700"
      },
      "committer": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Tue Sep 11 11:27:46 2012 -0700"
      },
      "message": "Camera1: Fix enable shutter sound command error handling.\n\nReturn the error codes from calls to enableShutterSound to the caller,\nand don\u0027t call the HAL with the enable shutter sound command.\n\nChange-Id: Ibe4943bd1cd0fcd1832fd904f12dd2f78fec06a5\n"
    },
    {
      "commit": "498a274c188f18049053ef5424b52cc4d9314c80",
      "tree": "d38a387984f71fea51319003e7e722082d6a8d44",
      "parents": [
        "37171b9d1532a7ce26ac02b707bee2fb6f25d0f3",
        "fe3156ec6fd9fa57dde913fd8567530d095a6550"
      ],
      "author": {
        "name": "Jean-Michel Trivi",
        "email": "jmtrivi@google.com",
        "time": "Tue Sep 11 10:33:28 2012 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Sep 11 10:33:29 2012 -0700"
      },
      "message": "Merge \"Communicate audio session ID to downmixer\" into jb-mr1-dev"
    },
    {
      "commit": "fe3156ec6fd9fa57dde913fd8567530d095a6550",
      "tree": "2c4b8250d0089a7d9f396d40005f4fefd95f46f3",
      "parents": [
        "66765846726c02db16a0f024f2217990a90802c0"
      ],
      "author": {
        "name": "Jean-Michel Trivi",
        "email": "jmtrivi@google.com",
        "time": "Mon Sep 10 18:58:27 2012 -0700"
      },
      "committer": {
        "name": "Jean-Michel Trivi",
        "email": "jmtrivi@google.com",
        "time": "Mon Sep 10 18:58:27 2012 -0700"
      },
      "message": "Communicate audio session ID to downmixer\n\nThe audio downmixer effect might need the audio session Id, pass it\n from the track creation in AudioFlinger to the downmix effect\n creation in AudioMixer.\n\nChange-Id: I5e29540542ae89cf4a0cdb537b3e67f04442a20a\n"
    },
    {
      "commit": "14fe42d8d8d622f6fcdbd83df5f3932e24cd896e",
      "tree": "38b8cde14341734c11cd45fff5c0cb826f23d417",
      "parents": [
        "47512a7da600ababdfd052b574488b9e499c22f6"
      ],
      "author": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Mon Sep 10 16:07:03 2012 -0700"
      },
      "committer": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Mon Sep 10 16:07:03 2012 -0700"
      },
      "message": "Camera2: Temporarily stop pre-allocation of recording stream.\n\nWhen recordingHint is set, don\u0027t pre-allocate recording stream on\npreview start.\n\nBug: 7137947\nChange-Id: I06b5f6d7dbb21d4d0747974ba001b0c8929a0b02\n"
    },
    {
      "commit": "47512a7da600ababdfd052b574488b9e499c22f6",
      "tree": "420a5bf7b929c78628d915fc8bbfa97858d34941",
      "parents": [
        "66765846726c02db16a0f024f2217990a90802c0"
      ],
      "author": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Mon Sep 10 13:30:43 2012 -0700"
      },
      "committer": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Mon Sep 10 13:30:43 2012 -0700"
      },
      "message": "Camera2: Clean up the right streams.\n\nChange-Id: I780c3e8e255f6a185e0edf1d76f35afdc74dff48\n"
    },
    {
      "commit": "61c0cc6af2c64d280bcfc1fcca3e3589172a5817",
      "tree": "13b9c3d7cf3f5ca9c4402e21529a5b0b3bf0b554",
      "parents": [
        "4a02cc818607c0c145f91c3acb9181868a108f26"
      ],
      "author": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Fri Sep 07 14:26:29 2012 -0700"
      },
      "committer": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Mon Sep 10 10:15:21 2012 -0700"
      },
      "message": "Camera2: Use face priority scene mode when face detect is enabled.\n\nPer API specs, enabled face detection implies that metering, etc is\ndone based on faces.\n\nBug: 6243944\nChange-Id: Ie35162226d70cc0f437e92e37be138e71e45e738\n"
    },
    {
      "commit": "4a02cc818607c0c145f91c3acb9181868a108f26",
      "tree": "8a50d9cd82ba073a38bb9496f12cec4675cc625d",
      "parents": [
        "fd48021dfc3278b048ba99ecffe7f996751fb440"
      ],
      "author": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Mon Sep 10 09:53:09 2012 -0700"
      },
      "committer": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Mon Sep 10 09:53:09 2012 -0700"
      },
      "message": "Camera2: Sanity check inputs better.\n\nBug: 7132141\nChange-Id: I866a65dfe47464070a6ef4ac60be4801cb68327b\n"
    },
    {
      "commit": "6ce3d19cd35a49add6893298f70b87917fc60d52",
      "tree": "b1ae5af7b71b74f432d25d8320962513edb53c3b",
      "parents": [
        "888f63bcde37347061de1aabb1b7febb2eca0875",
        "1ab212cf5cfa5b88c801840e11e3191cd10f48e4"
      ],
      "author": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Sun Sep 09 09:52:13 2012 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Sun Sep 09 11:54:29 2012 -0700"
      },
      "message": "Merge \"Add outlier statistics for fast mixer cycle times\" into jb-mr1-dev"
    },
    {
      "commit": "10894e509f777c6bd7e408a57f5cf21ee2b36a96",
      "tree": "4d650ebd8520b372ffa95681dd59e5e8d14a82d2",
      "parents": [
        "e538206d15282afbc5b168d60b1026a5dfcd13c0"
      ],
      "author": {
        "name": "James Painter",
        "email": "jpainter@google.com",
        "time": "Fri Sep 07 16:36:50 2012 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Sep 07 16:37:50 2012 -0700"
      },
      "message": "Fix build\n\nChange-Id: Ia4bebc4ecc850b42ebd4edd1ffed07e9bc2ec300\n"
    },
    {
      "commit": "e538206d15282afbc5b168d60b1026a5dfcd13c0",
      "tree": "5126c4ce62340021498d68c43e0de7ddb11303e1",
      "parents": [
        "7ac783252ef682abddd083104ab06619d82ac52f"
      ],
      "author": {
        "name": "James Painter",
        "email": "jpainter@google.com",
        "time": "Wed Sep 05 18:02:32 2012 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Sep 07 16:28:00 2012 -0700"
      },
      "message": "Camera2: Add a burst mode skeleton.\n\nBug: 6243944\nChange-Id: I7f496ca1051571c68fdd99a6f85bf6a908a4e29a\n"
    },
    {
      "commit": "85396642425b94ec33aa26f27e109353e3516ec4",
      "tree": "cca1653ca3c4c7ba53d3aaa724369504dcb71e1e",
      "parents": [
        "1adbb8c35b721e1a29f8e2e2a5341ae0b1f067ba",
        "f1c04f952916cf70407051c9f824ab84fb2b6e09"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Fri Sep 07 14:53:06 2012 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Sep 07 14:53:07 2012 -0700"
      },
      "message": "Merge \"audioflinger: changes for new audio devices enums\" into jb-mr1-dev"
    },
    {
      "commit": "1ab212cf5cfa5b88c801840e11e3191cd10f48e4",
      "tree": "247292feb5fe019488a87ff64926643fa84e766e",
      "parents": [
        "d06ab147394b0b49679c924a51d77c91dea04d82"
      ],
      "author": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Fri Sep 07 12:58:38 2012 -0700"
      },
      "committer": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Fri Sep 07 12:58:38 2012 -0700"
      },
      "message": "Add outlier statistics for fast mixer cycle times\n\nChange-Id: I31c964caeb8b5d9ae0a426224f030cdcb01114a0\n"
    },
    {
      "commit": "1c7ff022a91e4f966c23dcf11f6859c69c08841a",
      "tree": "5c42fa9c79ae6726dbb522220c5cf6ea081970ee",
      "parents": [
        "5a4f93eaaab7518fd734fdc9f0f686d632f31a59",
        "161fac83b369f4873859a101b6a71efeb596bd4a"
      ],
      "author": {
        "name": "Alexander Ray",
        "email": "aray@google.com",
        "time": "Fri Sep 07 12:35:09 2012 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Sep 07 12:35:10 2012 -0700"
      },
      "message": "Merge \"Camera2: Increase zoom steps.\" into jb-mr1-dev"
    },
    {
      "commit": "5a4f93eaaab7518fd734fdc9f0f686d632f31a59",
      "tree": "8e12c208af257f2afede082348858fe66c70a9b0",
      "parents": [
        "cf70d3469332445dc3ffd09729da3538612b1bb2"
      ],
      "author": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Wed Aug 29 18:06:32 2012 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Sep 07 11:27:29 2012 -0700"
      },
      "message": "Camera2: Use the recordingHint parameter.\n\nUse recordingHint to create recording and still capture streams up\nfront, and to use the recording template when doing preview.\n\nBug: 6243944\n\nChange-Id: Ifeb624794849f734784b53a1a10ff2bfe8f1a357\n"
    },
    {
      "commit": "cf70d3469332445dc3ffd09729da3538612b1bb2",
      "tree": "4ac2a85cbacf109672c49bcf30a7b6fe4bf976a9",
      "parents": [
        "2d1ef1371db8b202b693f1657f56824f9af8d565"
      ],
      "author": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Wed Sep 05 19:02:43 2012 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Sep 07 11:20:03 2012 -0700"
      },
      "message": "Camera2: Delete all streams and stop all threads during shutdown.\n\nBug: 6243944\nChange-Id: If13a1f91e8a07c1ec4f91183d1a4b261ec4f6d52\n"
    },
    {
      "commit": "f1c04f952916cf70407051c9f824ab84fb2b6e09",
      "tree": "8dba2d679bf308d534c51ea5067ba6d8f4f81f25",
      "parents": [
        "261fd2119c70fda3af64453881a6346dd48eb956"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Tue Aug 28 14:26:53 2012 -0700"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Fri Sep 07 10:32:00 2012 -0700"
      },
      "message": "audioflinger: changes for new audio devices enums\n\nThe ThreadBase class now has a separate member for input\nand output devices (mInDevice, mOutDevice).\n\nOnly query get_supported_devices() from audio HAL if the function\nis exposed and if the audio policy manager did not specify the\naudio module to open.\n\nAlso fixed bug in AEC preprocessing that would reset\nto default output device when an input device was given.\n\nChange-Id: I19d4d06aeb920b068e3ef31e6e6be6345ce5d67a\n"
    },
    {
      "commit": "609acc0c96bc2aedd42246862b537e045f5184b6",
      "tree": "5b299a07edc39b1bb0e4a88a14a16c5b07ab8807",
      "parents": [
        "d06ab147394b0b49679c924a51d77c91dea04d82"
      ],
      "author": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Thu Sep 06 18:26:58 2012 -0700"
      },
      "committer": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Thu Sep 06 18:31:58 2012 -0700"
      },
      "message": "Camera2: Play shutter and recording sounds.\n\nBug: 6987540\n\nChange-Id: Icd441a757c4b68fc4988b3bfbef428adb8d1ba28\n"
    },
    {
      "commit": "161fac83b369f4873859a101b6a71efeb596bd4a",
      "tree": "4e0410a36956108aeb9941bf3b6f4eb43cd786c8",
      "parents": [
        "d06ab147394b0b49679c924a51d77c91dea04d82"
      ],
      "author": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Thu Sep 06 18:08:16 2012 -0700"
      },
      "committer": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Thu Sep 06 18:08:16 2012 -0700"
      },
      "message": "Camera2: Increase zoom steps.\n\n10 is too low for smooth zoom; increase number to improve smoothness.\n\nBug: 7120794\nChange-Id: I178cd3890ef37beeff97cadb9e92ceab6d2cad06\n"
    },
    {
      "commit": "d06ab147394b0b49679c924a51d77c91dea04d82",
      "tree": "4c033165d8a07e19112a77a750ae0ed381ff8c03",
      "parents": [
        "2e5f22e85d177b34e790f832789d03aee438a7db",
        "57b2dd1e78af53115985f18d31ec5421c9da947e"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Thu Sep 06 18:04:59 2012 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Sep 06 18:05:00 2012 -0700"
      },
      "message": "Merge \"AudioFlinger: send audio source to audio effects\" into jb-mr1-dev"
    },
    {
      "commit": "96150cfc6b9ae93b6c4b60b5c7889a7a90af5def",
      "tree": "49fa47b9f4d9d1c7e3631271f1761ce6a32de143",
      "parents": [
        "da6665cbd06ca58d3357c3002b7366d13e23f152"
      ],
      "author": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Mon Sep 03 10:03:26 2012 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Sep 06 11:42:12 2012 -0700"
      },
      "message": "Camera2: Move locked states out of AE/AWB mode\n\nBug: 6243944\n\nChange-Id: I7b609cc6c04c957d1f48c1a996263fa9c7b94000\n"
    },
    {
      "commit": "da6665cbd06ca58d3357c3002b7366d13e23f152",
      "tree": "cd21bb829ac6174620b9d1028d9822a054c0ffe3",
      "parents": [
        "49c74da132fe42dd4d2066131f8f0e2df301c1dd"
      ],
      "author": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Wed Aug 29 17:37:16 2012 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Sep 06 10:38:22 2012 -0700"
      },
      "message": "Camera2: Basic ZSL and precapture trigger support.\n\n- Add capture sequencer to control still image capture process\n- Use precapture trigger for standard capture in sequencer\n- Add infrastructure for reprocessing streams\n- Add ZSL processor to maintain ZSL queue\n- Add ZSL capture sequence to sequencer\n\nThis patch sets up ZSL mode and precapture triggers.\n\nFor now, to enable zsl mode, set the system property camera.zsl_mode\nto 1.\n\nBug: 6243944\n\nChange-Id: Icf8cb1a83a7c11a152a11007c8f3c54f8ea1c70c\n"
    },
    {
      "commit": "6638f3bd61df1e5d012bc600b7af4c1b4dd4a06b",
      "tree": "d85852960e73653060c9a1dc07a9678e4600fddd",
      "parents": [
        "0d268a3cae145afb2720c88ae38fb81550be5584"
      ],
      "author": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Wed Sep 05 16:46:36 2012 -0700"
      },
      "committer": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Wed Sep 05 16:48:18 2012 -0700"
      },
      "message": "Fix an issue where the \"mFrameCount\" field was accessed without its containing object\n\nChange-Id: I6077b61b3e718b9b44ff86ca669a59f96b0b256f\n"
    },
    {
      "commit": "57b2dd1e78af53115985f18d31ec5421c9da947e",
      "tree": "5126e9e885cbd74e57978b1d5ecfa9c29d61c510",
      "parents": [
        "092fe44abd787fcb4377d90c63f2aa7120a4d267"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Fri Aug 31 17:44:06 2012 -0700"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Fri Aug 31 18:44:28 2012 -0700"
      },
      "message": "AudioFlinger: send audio source to audio effects\n\nAdded support for EFFECT_CMD_SET_AUDIO_SOURCE audio effect\ncommand to inform preprocessings of current audio source\nselection for capture.\n\nChange-Id: Ib2418a9aa8114e8457fe828ecd43b230ed86cdd6\n"
    },
    {
      "commit": "092fe44abd787fcb4377d90c63f2aa7120a4d267",
      "tree": "802a20db19e8f4a051b6612072ba6884dec4cce0",
      "parents": [
        "6bcdca035d4e9f7b2aee2d3febd8e2df5f57ae6f"
      ],
      "author": {
        "name": "Shuzhen Wang",
        "email": "shuzhenw@quicinc.com",
        "time": "Fri Aug 31 10:24:22 2012 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Aug 31 11:27:02 2012 -0700"
      },
      "message": "Camera: set vendor_ops on camera metadata.\n\nThis makes sure that vendor specific metadata can propogate through\nthe framework.\n\nChange-Id: I3bd0ae4b889eb907caf7b305dbcb16abbbef0ea3\n"
    },
    {
      "commit": "c3ae93f21280859086ae371428ffd32f39e76d50",
      "tree": "542d16fac64eb1f6e40c32517d60c2da5078e900",
      "parents": [
        "c9936c72c128a4a9288424fb082d7e7fe4b9b91f"
      ],
      "author": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Mon Jul 30 10:59:30 2012 -0700"
      },
      "committer": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Thu Aug 30 15:31:00 2012 -0700"
      },
      "message": "Update audio comments\n\nChange-Id: Ie7504d0ddb252f7e4d4f99ed0b44cfc7b1049816\n"
    },
    {
      "commit": "7aa25591769685ae0e8349b3ca3534c724484375",
      "tree": "366da12832fc0b0033ac79a456eac6ca8acdb9f0",
      "parents": [
        "b9cba9b731195d4387ee21b7e9ba1137a3cfda68"
      ],
      "author": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Thu Aug 02 16:37:07 2012 -0700"
      },
      "committer": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Thu Aug 30 15:18:16 2012 -0700"
      },
      "message": "Remove dead code\n\nRecordThread::isValidSyncEvent() returns false, so most of\nRecordThread::setSyncEvent() is never executed.\n\nChange-Id: I0cf848beb46a367a45126d2df3073c5afa2ca59c\n"
    },
    {
      "commit": "b9cba9b731195d4387ee21b7e9ba1137a3cfda68",
      "tree": "6ee03e2fc8309bd045aed42bac69d8107ac0c2fd",
      "parents": [
        "cba53fbdaa723322f7157a4890feab776beae13e",
        "2dd4bdd715f586d4d30cf90cc6fc2bbfbce60fe0"
      ],
      "author": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Thu Aug 30 15:05:00 2012 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Aug 30 15:05:01 2012 -0700"
      },
      "message": "Merge \"Move libnbaio out of AudioFlinger\" into jb-mr1-dev"
    },
    {
      "commit": "2dd4bdd715f586d4d30cf90cc6fc2bbfbce60fe0",
      "tree": "d0f594b402b6d2a4de89386c30c3db4adab89894",
      "parents": [
        "0a24726a64ba1c50aa6ee1610de2d80602d49fe6"
      ],
      "author": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Wed Aug 29 11:10:32 2012 -0700"
      },
      "committer": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Thu Aug 30 10:53:37 2012 -0700"
      },
      "message": "Move libnbaio out of AudioFlinger\n\nlibnbaio is now a separate shared library from AudioFlinger, rather\nthan a static library used only by AudioFlinger.\n\nAudioBufferProvider interface is now also independent of AudioFlinger,\nmoved to include/media/\n\nChange-Id: I9bb62ffbc38d42a38b0af76e66da5e9ab1e0e21b\n"
    },
    {
      "commit": "f128dc51c81e6b831806e0de505e4edbb02b7e71",
      "tree": "e394875bf4bc23a5bc1d34d814d2236c1f4861a3",
      "parents": [
        "d86a6880fe86bda21a9b53b240996fc410a512a5"
      ],
      "author": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Tue Aug 28 13:38:23 2012 -0700"
      },
      "committer": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Thu Aug 30 09:50:42 2012 -0700"
      },
      "message": "Camera2: Require 2 JPEG thumbnail resolutions.\n\nInclude (0,0) as a required thumbnail resolution, to allow turning off\nthumbnails.\n\nChange-Id: I3c4efe2d6a4f576a11ce5b75a3d573812a100b80\n"
    },
    {
      "commit": "d86a6880fe86bda21a9b53b240996fc410a512a5",
      "tree": "ab4ccaba3c5ba600dd273fb2fa310ea21407ae91",
      "parents": [
        "ea0d51b5ed0b474433b02414f9133b835f972569"
      ],
      "author": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Tue Aug 28 11:34:14 2012 -0700"
      },
      "committer": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Thu Aug 30 09:50:42 2012 -0700"
      },
      "message": "Camera2: Move preview callback processing to its own thread.\n\nTo reduce delays for HAL callbacks, manage preview callbacks in their\nown thread.\n\nBug: 6243944\nChange-Id: I7bef56949ac889ffce4e031bf40291a771a46f3e\n"
    },
    {
      "commit": "ea0d51b5ed0b474433b02414f9133b835f972569",
      "tree": "66b873f5a3c2834a54a2ec16018bc6b6d2505206",
      "parents": [
        "6524b7e1e6aae7dc1fe650119ec4bcf96b5a3f6b"
      ],
      "author": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Tue Aug 28 01:25:43 2012 -0700"
      },
      "committer": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Thu Aug 30 09:50:41 2012 -0700"
      },
      "message": "Camera2: Move still capture processing to separate thread.\n\nTo avoid stalling HAL when it queues up new buffers for still capture,\nprocess still captures in a separate thread. Also move Camera2Heap to\nits own class so it can be used by the CaptureProcessor.\n\nBug: 6243944\nChange-Id: Id38e2a52367c0985812fcd4fd9af3ef90beef43f\n"
    },
    {
      "commit": "a16733eeb9c40db4793bec408f29b4204e5f23b1",
      "tree": "2d6be1f74599089be1d4d778d02c45c50eec8494",
      "parents": [
        "2e19c3c02957208371cdd491e6342ea7ddb440d9"
      ],
      "author": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Mon Aug 27 23:41:56 2012 -0700"
      },
      "committer": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Tue Aug 28 14:45:07 2012 -0700"
      },
      "message": "Camera2: Factor out FrameProcessor.\n\nMove FrameProcessor to its own file, add necessary interfaces to\nCamera2Client.\n\nBug: 6243944\nChange-Id: I8d1b8280a65d2822461ebe6b6c9de17992b34276\n"
    },
    {
      "commit": "2e19c3c02957208371cdd491e6342ea7ddb440d9",
      "tree": "ba960541c34212c11b10980f06e3afec8af35968",
      "parents": [
        "2352a815fe99a00702dd00c5d1c6cfdfadba10fd"
      ],
      "author": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Sun Aug 26 09:29:28 2012 -0700"
      },
      "committer": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Tue Aug 28 01:29:02 2012 -0700"
      },
      "message": "Camera2: Factor out Camera2Client::Parameters\n\nMove the parameter structure and the various utility methods using it\nto its own class. Rename LockedParameters to SharedParameters to match\nthe Mutex naming convention.\n\nAlso move CameraMetadata to camera2 directory for organization.\n\nNo functional changes.\n\nBug: 6243944\nChange-Id: Ie60b535936ecfda9bf23361d52604abf515c83d0\n"
    },
    {
      "commit": "f17b6cf6aa7548ca82e7fed96d71db7821103e57",
      "tree": "708a7173885143204487ce9b3b32d08df88ab34a",
      "parents": [
        "c8474b68e435cd840ba66791fb09e3da59f1d93c"
      ],
      "author": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Sat Aug 25 17:12:18 2012 -0700"
      },
      "committer": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Mon Aug 27 09:56:20 2012 -0700"
      },
      "message": "Camera2: Fix metering/focusing region coordinates, minor bugs\n\n- Use active pixel array-based coordinates instead of the normalized\n  camera API coordinates for ae/awb/af regions\n- Fix calculation of UV stride for YV12 format\n\nBug: 6243944\nChange-Id: I80cbd989858b0a3cb75c6f536c145e16e44fdb25\n"
    },
    {
      "commit": "c8474b68e435cd840ba66791fb09e3da59f1d93c",
      "tree": "7c5ee6a72015cd28d37e9f564ac0f3a625a2a609",
      "parents": [
        "cab96a4a7a2900fa991ab77ae45ba8d4be97e054"
      ],
      "author": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Fri Aug 24 16:30:44 2012 -0700"
      },
      "committer": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Mon Aug 27 09:56:08 2012 -0700"
      },
      "message": "Camera2: Move frame processing to its own thread.\n\nTo avoid blocking the HAL on possibly long-running binder calls,\nmove frame receiption and processing to its own thread.\n\nBug: 6243944\nChange-Id: I6385be4410b2f68e2331755027afc10c342187cf\n"
    },
    {
      "commit": "cab96a4a7a2900fa991ab77ae45ba8d4be97e054",
      "tree": "3622d5ac476753b4771d63dbd80a15e26f419dea",
      "parents": [
        "690921927f289da73556ea71c28981194af8ffcd"
      ],
      "author": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Fri Aug 24 11:29:22 2012 -0700"
      },
      "committer": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Mon Aug 27 09:14:50 2012 -0700"
      },
      "message": "Camera2: Use CameraMetadata wrapper class.\n\nWrap the use of the camera_metadata library inside a CameraMetadata\nclass to avoid memory leaks, improve code clarity, and increase type\nsafety.\n\nBug: 6243944\nChange-Id: I90ca592b5875e27e4c58ea1ca680582dc3c3b56a\n"
    }
  ],
  "next": "0c676cd04ff15cc7eacf6144b4aead6deaccf60c"
}
