)]}'
{
  "log": [
    {
      "commit": "6bf9ae20b3bd2dbb8f2e89ee167a6785222301cf",
      "tree": "4075a75b4c805011df36d78b015edf6180d649df",
      "parents": [
        "d656a4be3c3b6bc249b06599c2b02c2863d2c47f"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Fri Aug 30 15:12:37 2013 -0700"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Fri Aug 30 15:12:37 2013 -0700"
      },
      "message": "audioflinger: offloaded tracks flush/pause order\n\nMake sure that a flush received after a pause is forwarded\nto the HAL after the pause.\n\nChange-Id: Ib3221f70c59f8b3dbbac20b23104f6b779b75be0\n"
    },
    {
      "commit": "d656a4be3c3b6bc249b06599c2b02c2863d2c47f",
      "tree": "fb7417309c1b4a1fdbaec7b9705ac1eb114c02a3",
      "parents": [
        "9404fa6ac9f76f8f8d898e35f4fa03906a553e0a",
        "4fb55c15da1a563ab925914a0f493a3dc80495a3"
      ],
      "author": {
        "name": "Igor Murashkin",
        "email": "iam@google.com",
        "time": "Fri Aug 30 18:32:13 2013 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Aug 30 18:32:14 2013 +0000"
      },
      "message": "Merge \"camera: Fix deadlock when sending callbacks during disconnect\" into klp-dev"
    },
    {
      "commit": "9404fa6ac9f76f8f8d898e35f4fa03906a553e0a",
      "tree": "894849a5e717ccdfeb7da2b9d4b247f10f95a7b4",
      "parents": [
        "96be8bb7c2ce0fc6d3c62f3467e752ddf87c7f44",
        "9da36a6c8df70a5c8179ac78fab33cfbb5078cb2"
      ],
      "author": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Fri Aug 30 17:56:11 2013 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Aug 30 17:56:11 2013 +0000"
      },
      "message": "Merge \"Fix decoder EOS handling\" into klp-dev"
    },
    {
      "commit": "9da36a6c8df70a5c8179ac78fab33cfbb5078cb2",
      "tree": "4dee529f6e7d9471db9971cb6d4d326959fbf6d7",
      "parents": [
        "e07f53720bcf543bcfe90c228a49c2a85a3fdb4c"
      ],
      "author": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Thu Aug 29 09:31:26 2013 -0700"
      },
      "committer": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Fri Aug 30 08:33:43 2013 -0700"
      },
      "message": "Fix decoder EOS handling\n\nConceptually it should be the same whether EOS is signalled on the last\nbuffer holding data, or an empty buffer that follows. Make it so that\nthis actually behaves the same for mp3, AAC and Vorbis.\n\nb/8747869\n\nChange-Id: Idece8ef45689a3ffaf70fb45d19862d7b93b2f92\n"
    },
    {
      "commit": "96be8bb7c2ce0fc6d3c62f3467e752ddf87c7f44",
      "tree": "96e2c5ea90f2b9d4bad649f327339b848d4950da",
      "parents": [
        "51ec03c203b902edbea538b9b5ef862dea749099",
        "26fe6c7c56477ef227205c68f17df07ca3501d65"
      ],
      "author": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Fri Aug 30 01:48:14 2013 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Aug 30 01:48:14 2013 +0000"
      },
      "message": "Merge \"Camera3: Be busy as soon as work arrives.\" into klp-dev"
    },
    {
      "commit": "4fb55c15da1a563ab925914a0f493a3dc80495a3",
      "tree": "bd33050f671a5cdaa6fdb121b115fb84f7e5d8e8",
      "parents": [
        "ed474f370947856e72795c641672fcad90442fcf"
      ],
      "author": {
        "name": "Igor Murashkin",
        "email": "iam@google.com",
        "time": "Thu Aug 29 17:43:01 2013 -0700"
      },
      "committer": {
        "name": "Igor Murashkin",
        "email": "iam@google.com",
        "time": "Thu Aug 29 17:55:08 2013 -0700"
      },
      "message": "camera: Fix deadlock when sending callbacks during disconnect\n\nBug: 10552448\nChange-Id: Ie93ba744ae6705aa657f980ae8e08ec624feeb39\n"
    },
    {
      "commit": "51ec03c203b902edbea538b9b5ef862dea749099",
      "tree": "c10977663da0fc7e360d45d4ef62d281e6fef66e",
      "parents": [
        "9841f636ffaf645375983f13c99bf071ba5ffb37",
        "bd096fd9d8e5fc0e62f98807f4818a06f70d0812"
      ],
      "author": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Fri Aug 30 00:05:03 2013 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Aug 30 00:05:03 2013 +0000"
      },
      "message": "Merge \"Implement Track::getTimestamp()\" into klp-dev"
    },
    {
      "commit": "9841f636ffaf645375983f13c99bf071ba5ffb37",
      "tree": "3d4b5f42c0f5a0fcd1ea330db46b1946ba48864d",
      "parents": [
        "56b592240073b1ab116c6e23a9c4c34ef5ad80d8",
        "573d80a8f463f648a515fc0975bf83951b272993"
      ],
      "author": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Fri Aug 30 00:04:50 2013 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Aug 30 00:04:50 2013 +0000"
      },
      "message": "Merge \"Add AudioFlinger::PlaybackThread::Track::getTimestamp()\" into klp-dev"
    },
    {
      "commit": "56b592240073b1ab116c6e23a9c4c34ef5ad80d8",
      "tree": "99d167994fa92857f39b459da1b52e0695d13a68",
      "parents": [
        "865f6f248bf10189272020ebfdbf4827433caf0f",
        "53cec22821072719ee02c856e9ac2dda2496c570"
      ],
      "author": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Fri Aug 30 00:04:37 2013 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Aug 30 00:04:37 2013 +0000"
      },
      "message": "Merge \"Add IAudioTrack::getTimestamp()\" into klp-dev"
    },
    {
      "commit": "865f6f248bf10189272020ebfdbf4827433caf0f",
      "tree": "02c8e8e58c3b3e549c718bda3bd344f332682ce9",
      "parents": [
        "e3b8b6e3e3a78ec6f9978f56c4573e193866ef53",
        "ce70374bf105f8a6160bf5dd70affea012b2a464"
      ],
      "author": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Thu Aug 29 23:47:34 2013 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Aug 29 23:47:34 2013 +0000"
      },
      "message": "Merge \"New AudioTrack C++ API for audio timestamps\" into klp-dev"
    },
    {
      "commit": "e3b8b6e3e3a78ec6f9978f56c4573e193866ef53",
      "tree": "dbd365074ec987f806b993d4a7295468fbe05091",
      "parents": [
        "ed474f370947856e72795c641672fcad90442fcf",
        "50d9a8f7de5f79fa8a36489a53846d6653997e38"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Thu Aug 29 23:29:35 2013 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Aug 29 23:29:35 2013 +0000"
      },
      "message": "Merge \"AudioPlayer: timestamp fixes for compress offload\" into klp-dev"
    },
    {
      "commit": "ed474f370947856e72795c641672fcad90442fcf",
      "tree": "773946a284750c7391d3869f2e01db050d87f9ba",
      "parents": [
        "e81da7e0f5914b30ed7cc65a22751fd78cb828a7",
        "42a6f422c09ca6a960673e0e805ddf71a9b51bef"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Thu Aug 29 22:17:58 2013 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Aug 29 22:17:58 2013 +0000"
      },
      "message": "Merge \"AudioTrack: fix write retries for compressed audio\" into klp-dev"
    },
    {
      "commit": "e81da7e0f5914b30ed7cc65a22751fd78cb828a7",
      "tree": "60dd3a98df3de2ba6924362136487f020796b91b",
      "parents": [
        "b897e64767e87828642282d76bd6001175b0d405",
        "2c041c1c927fdbf60f53f1a1960e5155a79007b7"
      ],
      "author": {
        "name": "Andy McFadden",
        "email": "fadden@android.com",
        "time": "Thu Aug 29 21:41:16 2013 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Aug 29 21:41:17 2013 +0000"
      },
      "message": "Merge \"Add time limit to screenrecord\" into klp-dev"
    },
    {
      "commit": "b897e64767e87828642282d76bd6001175b0d405",
      "tree": "2df601f3312b13da78afe9770852c7be6304f094",
      "parents": [
        "bdd467edb8550ab006c89a59b556759386e99898",
        "48326940f48390e79476e5ce7c2a18b8201cdafc"
      ],
      "author": {
        "name": "Andy McFadden",
        "email": "fadden@android.com",
        "time": "Thu Aug 29 21:41:07 2013 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Aug 29 21:41:07 2013 +0000"
      },
      "message": "Merge \"Notify the media scanner\" into klp-dev"
    },
    {
      "commit": "42a6f422c09ca6a960673e0e805ddf71a9b51bef",
      "tree": "7c38dd1f569bd9546f5cef3c5f58ff6ca35cbeff",
      "parents": [
        "bdd467edb8550ab006c89a59b556759386e99898"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Thu Aug 29 14:35:05 2013 -0700"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Thu Aug 29 14:35:05 2013 -0700"
      },
      "message": "AudioTrack: fix write retries for compressed audio\n\nWhen the amount of frames that can be written to the buffer\nis less than requested, AudioTrack::processAudioBuffer() estimates\nthe time needed to free the missing amount of frames and asks the\ncallback thread to sleep.\nThis behavior is not possible for compressed audio and should not\nbe enabled for offloaded tracks.\n\nChange-Id: I5b657283cfba06254c9ac0ea9b447467cce7eb61\n"
    },
    {
      "commit": "50d9a8f7de5f79fa8a36489a53846d6653997e38",
      "tree": "5b2ec42495ddade662b90e89df9066950c0ef004",
      "parents": [
        "bdd467edb8550ab006c89a59b556759386e99898"
      ],
      "author": {
        "name": "Haynes Mathew George",
        "email": "hgeorge@codeaurora.org",
        "time": "Mon Aug 05 11:00:37 2013 -0700"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Thu Aug 29 14:24:57 2013 -0700"
      },
      "message": "AudioPlayer: timestamp fixes for compress offload\n\nUse realtime queried from AudioTrack as the only time for compress\noffload playback.\n\nChange-Id: I314447637715c4864690c94173260165369146cb\n"
    },
    {
      "commit": "26fe6c7c56477ef227205c68f17df07ca3501d65",
      "tree": "562a44a207970f573342636a345b43e101c3d1cf",
      "parents": [
        "c063c1756cbffdc273fe50b208426f59439f1298"
      ],
      "author": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Thu Aug 29 12:46:18 2013 -0700"
      },
      "committer": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Thu Aug 29 12:51:00 2013 -0700"
      },
      "message": "Camera3: Be busy as soon as work arrives.\n\nRequestThread\u0027s internal busy flag (mPaused) was not being immediately\nset when new work was submitted to it. This allowed for a race\ncondition where a capture() followed by an immediate\nwaitUntilDrained() would immediately return from the wait.\n\nSet the mPaused flag to false immediately in capture() and\nsetStreamingRequest() to avoid this, instead of waiting until the end\nof the next RequestThread iteration.\n\nBug: 10531739\nChange-Id: I54a79fe5361d527ec717f41ad805e9b319a48cd8\n"
    },
    {
      "commit": "bdd467edb8550ab006c89a59b556759386e99898",
      "tree": "4313d6eb8a90c5838e97b12d72b6280deaafc82d",
      "parents": [
        "45e4eb050d2cd7f2d7433bf1262bd39e3144584e",
        "22f03209ceed3bcdf8c6558fcf02dc7699dde259"
      ],
      "author": {
        "name": "Chong Zhang",
        "email": "chz@google.com",
        "time": "Thu Aug 29 18:58:07 2013 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Aug 29 18:58:07 2013 +0000"
      },
      "message": "Merge \"Set PREPARING flag after setDataSource_l()\" into klp-dev"
    },
    {
      "commit": "45e4eb050d2cd7f2d7433bf1262bd39e3144584e",
      "tree": "0a11bccd1dc3713eb54e148a372eb31d292feadf",
      "parents": [
        "c063c1756cbffdc273fe50b208426f59439f1298",
        "ee7e77d55d510725a314d8ed36dc730c21af6173"
      ],
      "author": {
        "name": "Jeff Tinker",
        "email": "jtinker@google.com",
        "time": "Thu Aug 29 18:18:06 2013 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Aug 29 18:18:07 2013 +0000"
      },
      "message": "Merge \"fix MediaDrm.isCryptoSchemeSupported(uuid)\" into klp-dev"
    },
    {
      "commit": "bd096fd9d8e5fc0e62f98807f4818a06f70d0812",
      "tree": "8ff27bce9f34e4bdd0f8e233494a24efef475a7d",
      "parents": [
        "573d80a8f463f648a515fc0975bf83951b272993"
      ],
      "author": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Fri Aug 23 13:53:56 2013 -0700"
      },
      "committer": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Thu Aug 29 09:59:31 2013 -0700"
      },
      "message": "Implement Track::getTimestamp()\n\nusing a new timestamp latch in PlaybackThread, and\nAudioTrackServerProxy::framesReleased() which returns mServer.\n\nChange-Id: I1ebfba968c773faaab95648c272fd3ebd74718d6\n"
    },
    {
      "commit": "573d80a8f463f648a515fc0975bf83951b272993",
      "tree": "c50d730bd7bd113a0f86c091730f9b861354f395",
      "parents": [
        "53cec22821072719ee02c856e9ac2dda2496c570"
      ],
      "author": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Mon Aug 26 09:36:23 2013 -0700"
      },
      "committer": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Thu Aug 29 09:24:28 2013 -0700"
      },
      "message": "Add AudioFlinger::PlaybackThread::Track::getTimestamp()\n\nwith a dummy implementation initially,\nand use it in AudioFlinger::TrackHandle::getTimestamp()\n\nChange-Id: I2da88fc52a135a7f0d9fd9538986e919dc8ccd3b\n"
    },
    {
      "commit": "53cec22821072719ee02c856e9ac2dda2496c570",
      "tree": "1ac72eaf3ba6059680f8c3d7e39ae58a9e03adc8",
      "parents": [
        "ce70374bf105f8a6160bf5dd70affea012b2a464"
      ],
      "author": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Thu Aug 29 09:01:02 2013 -0700"
      },
      "committer": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Thu Aug 29 09:19:07 2013 -0700"
      },
      "message": "Add IAudioTrack::getTimestamp()\n\nwith dummy implementation in AudioFlinger::TrackHandle, and\nimplement AudioTrack::getTimestamp() using IAudioTrack.\n\nAlso document invariant that mAudioTrack and control block are always\nnon-0 after successful initialization.\n\nChange-Id: I9861d1454cff7decf795d5d5898ac7999a9f3b7e\n"
    },
    {
      "commit": "ce70374bf105f8a6160bf5dd70affea012b2a464",
      "tree": "60d2673b83bff3622e7e299974104e572656b5a6",
      "parents": [
        "e07f53720bcf543bcfe90c228a49c2a85a3fdb4c"
      ],
      "author": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Fri Jul 19 16:33:58 2013 -0700"
      },
      "committer": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Wed Aug 28 17:24:58 2013 -0700"
      },
      "message": "New AudioTrack C++ API for audio timestamps\n\nThis new API is intended to replace latency(), especially for A/V sync.\nThe application will receive periodic timestamp notifications.  The period\nis unspecified, but will likely be more frequent after a pause or stop,\nset position, underrun, display on/off change, route change, or when audio\nframework notices drift.  It will be up to the higher level application\n(e.g.  Stagefright) to reconstruct a clock that updates more frequently.\n\nThe current latency() method doesn\u0027t indicate when latency changes\ndue to screen on/off state, route changes, etc.\n\nIncludes squahsed change-Id: I2082f8752040be0c234b1a6f1be2e269abf2ce7c\n Dummy implementation of AudioTrack:getTimestamp()\n Rename AudioTrack::Timestamp to AudioTimestamp.\n Renaming and pulling up to a higher level allows more modules to use it.\n\nChange-Id: Ibf7f6a207c3f8d8697f25ede2cd5200697fadb86\n(cherry picked from commit dd69eb893867634fd169c03204a6ad7c74b351e7)\n"
    },
    {
      "commit": "22f03209ceed3bcdf8c6558fcf02dc7699dde259",
      "tree": "f243318b3e3129e584845a5ef1ba88e2bcae0d2f",
      "parents": [
        "c063c1756cbffdc273fe50b208426f59439f1298"
      ],
      "author": {
        "name": "Chong Zhang",
        "email": "chz@google.com",
        "time": "Wed Aug 28 16:48:35 2013 -0700"
      },
      "committer": {
        "name": "Chong Zhang",
        "email": "chz@google.com",
        "time": "Wed Aug 28 16:56:40 2013 -0700"
      },
      "message": "Set PREPARING flag after setDataSource_l()\n\nOtherwise the reset_l() inside setDataSource_l() will get stuck\nwaiting for the PREPARING to be cleared.\n\nBug: 10426788\nChange-Id: I7ccdf7abcea71cf150544c7cd3f4781e3a946b97\n"
    },
    {
      "commit": "ee7e77d55d510725a314d8ed36dc730c21af6173",
      "tree": "02b7cfa93dd77e7927b67cc6d85d865e3e6bd0c3",
      "parents": [
        "8271f1a2225a34a0748624786392213a746c56d7"
      ],
      "author": {
        "name": "Jeff Tinker",
        "email": "jtinker@google.com",
        "time": "Wed Aug 28 16:40:41 2013 -0700"
      },
      "committer": {
        "name": "Jeff Tinker",
        "email": "jtinker@google.com",
        "time": "Wed Aug 28 16:40:41 2013 -0700"
      },
      "message": "fix MediaDrm.isCryptoSchemeSupported(uuid)\n\n1. Don\u0027t expect plugins to support an empty mimeType in isContentTypeSupported\n2. Move the cts test mock drm plugin to the cts tree so it is always used\n\nb/10528466\n\nChange-Id: I6023f6165b1e9d294986f7e5cd0896e056e376f1\n"
    },
    {
      "commit": "2c041c1c927fdbf60f53f1a1960e5155a79007b7",
      "tree": "709d54263002988da46682537475a8d5389f963f",
      "parents": [
        "48326940f48390e79476e5ce7c2a18b8201cdafc"
      ],
      "author": {
        "name": "Andy McFadden",
        "email": "fadden@android.com",
        "time": "Wed Aug 28 15:22:11 2013 -0700"
      },
      "committer": {
        "name": "Andy McFadden",
        "email": "fadden@android.com",
        "time": "Wed Aug 28 15:22:11 2013 -0700"
      },
      "message": "Add time limit to screenrecord\n\nRecordings are now limited to 3 minutes.  The time can be set lower\nwith the --time-limit option.\n\nBug 10529645\n\nChange-Id: I6ac19b9da8d616d38262414c2e821d56efcec55d\n"
    },
    {
      "commit": "c063c1756cbffdc273fe50b208426f59439f1298",
      "tree": "35b3f6a9a577de77310deeed23ac6e05a15033c1",
      "parents": [
        "e07f53720bcf543bcfe90c228a49c2a85a3fdb4c",
        "ec9a032c2e104ab1e3b5bf73e69dab1408ced0ad"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Wed Aug 28 17:43:16 2013 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Aug 28 17:43:17 2013 +0000"
      },
      "message": "Merge \"AudioTrack: fix unwanted underrun when restarting\" into klp-dev"
    },
    {
      "commit": "ec9a032c2e104ab1e3b5bf73e69dab1408ced0ad",
      "tree": "de4b71e9f43dc9a3a46aec43bc08f910ad5b8127",
      "parents": [
        "3bd3690fb0a423f9d0ba635e8db1c148ac9e93fc"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Wed Aug 28 10:23:01 2013 -0700"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Wed Aug 28 10:30:08 2013 -0700"
      },
      "message": "AudioTrack: fix unwanted underrun when restarting\n\nWhen restarting an AudioTrack from stopped state, it is necessary\nto force refresh of mRemainingFrames by processAudioBuffer() as\nthe last write before stop() could be partial. No doing so will lead\ninto unnecessary sleep before filling the non contiguous part\nof the buffer returned by obtainBuffer() when processAudioBuffer()\nis executed for the first time after start().\n\nChange-Id: Id703f8dc092a6f07c905eee194054b4a978f979d\n"
    },
    {
      "commit": "48326940f48390e79476e5ce7c2a18b8201cdafc",
      "tree": "56ba061a0ef635c2242dca1f5972246edc9a736b",
      "parents": [
        "e07f53720bcf543bcfe90c228a49c2a85a3fdb4c"
      ],
      "author": {
        "name": "Andy McFadden",
        "email": "fadden@android.com",
        "time": "Fri Aug 23 13:49:38 2013 -0700"
      },
      "committer": {
        "name": "Andy McFadden",
        "email": "fadden@android.com",
        "time": "Wed Aug 28 07:38:28 2013 -0700"
      },
      "message": "Notify the media scanner\n\nUse an \"am broadcast\" command to notify the media scanner that\na new video file is available.\n\nBug 10096103\n\nChange-Id: I8261d81d96832969ebb9031a9766c1b1f2a569ed\n"
    },
    {
      "commit": "e07f53720bcf543bcfe90c228a49c2a85a3fdb4c",
      "tree": "388f8ab6a1b539a7bd8b903479864f1c1a3afeb0",
      "parents": [
        "8271f1a2225a34a0748624786392213a746c56d7",
        "abaa51d3ca31f0eda99e1d271e6dc64c877dbf58"
      ],
      "author": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Tue Aug 27 16:49:13 2013 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Aug 27 16:49:13 2013 +0000"
      },
      "message": "Merge \"Camera2: Add flush support\" into klp-dev"
    },
    {
      "commit": "8271f1a2225a34a0748624786392213a746c56d7",
      "tree": "a96adf21a3d37f00e2001121fd56eeceac1882f6",
      "parents": [
        "3bd3690fb0a423f9d0ba635e8db1c148ac9e93fc",
        "88aef23d00a509693a955b6a207c0fb023fbc92d"
      ],
      "author": {
        "name": "Igor Murashkin",
        "email": "iam@google.com",
        "time": "Mon Aug 26 20:22:37 2013 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Aug 26 20:22:37 2013 +0000"
      },
      "message": "Merge \"camera2: Get rid of annoying \"Reading a NULL string....\" error message\" into klp-dev"
    },
    {
      "commit": "3bd3690fb0a423f9d0ba635e8db1c148ac9e93fc",
      "tree": "4f0325468fd7977d00223a9efa4c4c566125878a",
      "parents": [
        "33142e1e318c0c766a385d88d2434f62f9e2dfe7",
        "5ff7836da0220b3097f36c8a5e82111816ebca62"
      ],
      "author": {
        "name": "Jeff Tinker",
        "email": "jtinker@google.com",
        "time": "Mon Aug 26 16:09:03 2013 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Aug 26 16:09:03 2013 +0000"
      },
      "message": "Merge \"Enhancement for OnInfo callback on DRM Framework\" into klp-dev"
    },
    {
      "commit": "5ff7836da0220b3097f36c8a5e82111816ebca62",
      "tree": "4612e1308d3dd9961db0fae6d3372203d5937f61",
      "parents": [
        "62c1a46eec047eb5fbc4b90432ec1ce65b76fb75"
      ],
      "author": {
        "name": "Takeshi Aimi",
        "email": "takeshi.aimi@sonymobile.com",
        "time": "Wed Jul 11 17:09:21 2012 +0900"
      },
      "committer": {
        "name": "Jeff Tinker",
        "email": "jtinker@google.com",
        "time": "Fri Aug 23 18:01:07 2013 -0700"
      },
      "message": "Enhancement for OnInfo callback on DRM Framework\n\nIn DRM framework, plugins can transmit DrmInfoEvent to Java layer.\nAlthough DrmInfoEvent has several entries, current implementation\ncan only convey integer and String. This change enables plugins\nuto propagate a hashmap to Java layer. The hashmap can have\none or more Strings and one byte array as value.\n\nChanges are made by Sony Corporation.\n\nbug: 10459159\n\nChange-Id: Ic19265d4ad3db4eda66a3c27e1e08873a8f2a4d7\n(cherry picked from commit 4f782bf0cb69929ebf03de239e2c9bf8e82adf5e)\n"
    },
    {
      "commit": "88aef23d00a509693a955b6a207c0fb023fbc92d",
      "tree": "9f184b520c7e87a64771c7c1a3e572435f0c2132",
      "parents": [
        "33142e1e318c0c766a385d88d2434f62f9e2dfe7"
      ],
      "author": {
        "name": "Igor Murashkin",
        "email": "iam@google.com",
        "time": "Fri Aug 23 17:47:06 2013 -0700"
      },
      "committer": {
        "name": "Igor Murashkin",
        "email": "iam@google.com",
        "time": "Fri Aug 23 17:47:06 2013 -0700"
      },
      "message": "camera2: Get rid of annoying \"Reading a NULL string....\" error message\n\nBug: 10461464\nChange-Id: Ie99f025db0e0e12c703f2d391e218b49330ee4dd\n"
    },
    {
      "commit": "33142e1e318c0c766a385d88d2434f62f9e2dfe7",
      "tree": "7834e6bcc639ce13eafd275f7ceb6770fec9b865",
      "parents": [
        "2484040e0f413989e4edbe26ba3bf71122382af6",
        "87ecf19404586672008e98babc225e094292ceb5"
      ],
      "author": {
        "name": "Chong Zhang",
        "email": "chz@google.com",
        "time": "Fri Aug 23 23:18:18 2013 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Aug 23 23:18:18 2013 +0000"
      },
      "message": "Merge \"wifi-display: pass session info to wifi display settings\" into klp-dev"
    },
    {
      "commit": "abaa51d3ca31f0eda99e1d271e6dc64c877dbf58",
      "tree": "52f4cc1078708f7c0099fded06dcb01daf6ca6bb",
      "parents": [
        "62c1a46eec047eb5fbc4b90432ec1ce65b76fb75"
      ],
      "author": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Wed Aug 14 11:37:00 2013 -0700"
      },
      "committer": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Fri Aug 23 14:08:27 2013 -0700"
      },
      "message": "Camera2: Add flush support\n\n- On HAL2 devices, fall back to wait until idle\n- On HAL3 devices, call HAL flush method\n\nBug: 9758581\nChange-Id: Ie1c570a15f6590a1ee6c271e3b989c48079b468a\n"
    },
    {
      "commit": "2484040e0f413989e4edbe26ba3bf71122382af6",
      "tree": "0a17a226282f38322b9761650a9536088096c657",
      "parents": [
        "62c1a46eec047eb5fbc4b90432ec1ce65b76fb75",
        "dcb89b3b505522efde173c105a851c412f947178"
      ],
      "author": {
        "name": "Chong Zhang",
        "email": "chz@google.com",
        "time": "Fri Aug 23 19:13:28 2013 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Aug 23 19:13:28 2013 +0000"
      },
      "message": "Merge \"MediaPlayer: add listener for raw track data\" into klp-dev"
    },
    {
      "commit": "62c1a46eec047eb5fbc4b90432ec1ce65b76fb75",
      "tree": "dce59b6f085880d667534b7190df11d1c52b6343",
      "parents": [
        "4b820b0e1fa069714b123fc35784541d0f94d267",
        "9cf69e0fc110f17c28e988ed0f9bf91abfaf710d"
      ],
      "author": {
        "name": "Jeff Tinker",
        "email": "jtinker@google.com",
        "time": "Thu Aug 22 23:08:10 2013 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Aug 22 23:08:10 2013 +0000"
      },
      "message": "Merge \"Add ability to test supported content types to MediaDrm\" into klp-dev"
    },
    {
      "commit": "9cf69e0fc110f17c28e988ed0f9bf91abfaf710d",
      "tree": "c5cb3fb67b26c852f8c7bea7e4eeb87952830842",
      "parents": [
        "75c16dde986e16ac5fd4d34b06b0cc6a90679866"
      ],
      "author": {
        "name": "Jeff Tinker",
        "email": "jtinker@google.com",
        "time": "Wed Aug 21 11:59:23 2013 -0700"
      },
      "committer": {
        "name": "Jeff Tinker",
        "email": "jtinker@google.com",
        "time": "Thu Aug 22 09:27:35 2013 -0700"
      },
      "message": "Add ability to test supported content types to MediaDrm\n\nbug: 10244066\nChange-Id: I317f05b146db962c271893f6208890a5a6c396f1\n"
    },
    {
      "commit": "4b820b0e1fa069714b123fc35784541d0f94d267",
      "tree": "3418113d8ce7eca26303d6dce7d147e07003a0e9",
      "parents": [
        "1ce7c34e67c2cf58dd88c31f36f4bd62e375f7f0"
      ],
      "author": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Wed Aug 21 14:39:05 2013 -0700"
      },
      "committer": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Wed Aug 21 14:56:46 2013 -0700"
      },
      "message": "Camera1: Rename setPreviewTexture to ...Target for clarity\n\nBug: 10312644\nChange-Id: I19976188f0359bfd177209fb40145defdae9c740\n"
    },
    {
      "commit": "1ce7c34e67c2cf58dd88c31f36f4bd62e375f7f0",
      "tree": "4febd2dd2325c391977d64c9d78a8ee955277e80",
      "parents": [
        "99ad37a47628b1ea1f8981bf974de38a49c653a0"
      ],
      "author": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Wed Aug 21 13:57:21 2013 -0700"
      },
      "committer": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Wed Aug 21 14:35:48 2013 -0700"
      },
      "message": "Camera1: Set preview to be asynchronous, and remove dead code\n\n- Use the controlledByApp flag to make sure application-bound\n  preview buffer queue is asynchronous as before\n- Remove setPreviewDisplay in service, since it is no longer in\n  the binder interface\n- Rename setPreviewTexture to setPreviewTarget, to make it clear it\u0027s\n  the only game in town now. Rename only on the binder level and service\n  for now.\n\nBug: 10312644\nChange-Id: Icd33a462022f9729a63dc65c69b755cb7969857e\n"
    },
    {
      "commit": "87ecf19404586672008e98babc225e094292ceb5",
      "tree": "6351a002b70f93befda9a8b27317138d4cff4b87",
      "parents": [
        "99ad37a47628b1ea1f8981bf974de38a49c653a0"
      ],
      "author": {
        "name": "Chong Zhang",
        "email": "chz@google.com",
        "time": "Thu Jun 06 12:42:59 2013 -0700"
      },
      "committer": {
        "name": "Chong Zhang",
        "email": "chz@google.com",
        "time": "Wed Aug 21 11:03:28 2013 -0700"
      },
      "message": "wifi-display: pass session info to wifi display settings\n\nBug: 9371882\n\nChange-Id: I9e4b8c2154b03ce8ff3e14c465a5224bb6e8db9a\n"
    },
    {
      "commit": "99ad37a47628b1ea1f8981bf974de38a49c653a0",
      "tree": "46f706a02fafc56c599a203d3f3bcdaf53835215",
      "parents": [
        "c8b226f4f5a0740f473d4d14e050a34a329517e7",
        "46291616486979986cba3ab83e894728ef53063f"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Tue Aug 20 01:10:47 2013 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Aug 20 01:10:47 2013 +0000"
      },
      "message": "Merge \"AudioSystem: new audioflinger restart detection\" into klp-dev"
    },
    {
      "commit": "46291616486979986cba3ab83e894728ef53063f",
      "tree": "6e725226e68719d0c3c445dc5530bf0392204095",
      "parents": [
        "cf2a123e7ad39700c6e5318006f9acccf69511fa"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Thu Jul 18 14:38:44 2013 -0700"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Mon Aug 19 17:45:42 2013 -0700"
      },
      "message": "AudioSystem: new audioflinger restart detection\n\nAdd a specific method to AudioSystem for AudioService to poll\nfor AudioFlinger service restart instead of relying on current\ncallback mechanism which is flaky.\n\nBug: 9693068.\nChange-Id: Ie88bc9d25033503bc5cd2fa9d8c754d0f8045b8f\n"
    },
    {
      "commit": "c8b226f4f5a0740f473d4d14e050a34a329517e7",
      "tree": "d34721dfd133e8a79a4ff32ee8e8d2d83ef24031",
      "parents": [
        "cf2a123e7ad39700c6e5318006f9acccf69511fa",
        "893a5642871114fca3b2a00c6ff8e5699ce3e3ed"
      ],
      "author": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Mon Aug 19 23:56:41 2013 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Aug 19 23:56:41 2013 +0000"
      },
      "message": "Merge \"Enforce permission for recording from remote submix.\" into klp-dev"
    },
    {
      "commit": "cf2a123e7ad39700c6e5318006f9acccf69511fa",
      "tree": "b987e932abf97aae86ad60069927e1606404cea9",
      "parents": [
        "7fb865653293e665f48b31e791ca124e98c7d257",
        "29d060155e2c3e838fcadf303fcf2d1ecfb78710"
      ],
      "author": {
        "name": "Jeff Tinker",
        "email": "jtinker@google.com",
        "time": "Mon Aug 19 14:48:11 2013 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Mon Aug 19 14:48:11 2013 -0700"
      },
      "message": "am 29d06015: am 6e3ee310: am 31d49615: am 27b876d4: am 9bc40a2c: am 98603acb: am 36337f8f: am 7d72965f: am 60476336: Remove obsolete drm manager code\n\n* commit \u002729d060155e2c3e838fcadf303fcf2d1ecfb78710\u0027:\n  Remove obsolete drm manager code\n"
    },
    {
      "commit": "29d060155e2c3e838fcadf303fcf2d1ecfb78710",
      "tree": "9f9ef3a5988ed9f0db4a09cb3a117c35f7cd2126",
      "parents": [
        "bcd86896e486e303d285e13477e0623b2a920e78",
        "6e3ee310d90e30c928c9e29a4a07de4bcbf2855e"
      ],
      "author": {
        "name": "Jeff Tinker",
        "email": "jtinker@google.com",
        "time": "Mon Aug 19 14:45:56 2013 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Mon Aug 19 14:45:56 2013 -0700"
      },
      "message": "am 6e3ee310: am 31d49615: am 27b876d4: am 9bc40a2c: am 98603acb: am 36337f8f: am 7d72965f: am 60476336: Remove obsolete drm manager code\n\n* commit \u00276e3ee310d90e30c928c9e29a4a07de4bcbf2855e\u0027:\n  Remove obsolete drm manager code\n"
    },
    {
      "commit": "6e3ee310d90e30c928c9e29a4a07de4bcbf2855e",
      "tree": "ea742a9faaba650da020a11f332ffc36f8e1217b",
      "parents": [
        "46910bdc57c35ac36bd4adcbb76f4f3a590e3f21",
        "31d49615007372621ac3fba55e9e3aab48c873f9"
      ],
      "author": {
        "name": "Jeff Tinker",
        "email": "jtinker@google.com",
        "time": "Mon Aug 19 14:39:15 2013 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Mon Aug 19 14:39:15 2013 -0700"
      },
      "message": "am 31d49615: am 27b876d4: am 9bc40a2c: am 98603acb: am 36337f8f: am 7d72965f: am 60476336: Remove obsolete drm manager code\n\n* commit \u002731d49615007372621ac3fba55e9e3aab48c873f9\u0027:\n  Remove obsolete drm manager code\n"
    },
    {
      "commit": "31d49615007372621ac3fba55e9e3aab48c873f9",
      "tree": "1eb70417348d3f54456f992ddc50dd951b0b834a",
      "parents": [
        "72c324efd5a0f632d8f2b57b9f587a540d809b82",
        "27b876d4cf78b262854b9f2aec26467f9323d3ad"
      ],
      "author": {
        "name": "Jeff Tinker",
        "email": "jtinker@google.com",
        "time": "Mon Aug 19 14:36:05 2013 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Mon Aug 19 14:36:05 2013 -0700"
      },
      "message": "am 27b876d4: am 9bc40a2c: am 98603acb: am 36337f8f: am 7d72965f: am 60476336: Remove obsolete drm manager code\n\n* commit \u002727b876d4cf78b262854b9f2aec26467f9323d3ad\u0027:\n  Remove obsolete drm manager code\n"
    },
    {
      "commit": "27b876d4cf78b262854b9f2aec26467f9323d3ad",
      "tree": "5123ceb89dec155c95d0af3d08450a1db83879f4",
      "parents": [
        "0fe40641db3759088edc1bc7f0182556d77bede6",
        "9bc40a2cfdd307074ef5c23ad444fc8a782bab84"
      ],
      "author": {
        "name": "Jeff Tinker",
        "email": "jtinker@google.com",
        "time": "Mon Aug 19 14:32:42 2013 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Mon Aug 19 14:32:42 2013 -0700"
      },
      "message": "am 9bc40a2c: am 98603acb: am 36337f8f: am 7d72965f: am 60476336: Remove obsolete drm manager code\n\n* commit \u00279bc40a2cfdd307074ef5c23ad444fc8a782bab84\u0027:\n  Remove obsolete drm manager code\n"
    },
    {
      "commit": "9bc40a2cfdd307074ef5c23ad444fc8a782bab84",
      "tree": "abdeb096f5fcbdc484c5cdf846ec725f42ea0cb5",
      "parents": [
        "72c7cf9d13f5a51a71dccc6d94317727bd0feec3",
        "98603acbce87c3a451c8e4c26625048363c3f7f7"
      ],
      "author": {
        "name": "Jeff Tinker",
        "email": "jtinker@google.com",
        "time": "Mon Aug 19 14:31:11 2013 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Mon Aug 19 14:31:11 2013 -0700"
      },
      "message": "am 98603acb: am 36337f8f: am 7d72965f: am 60476336: Remove obsolete drm manager code\n\n* commit \u002798603acbce87c3a451c8e4c26625048363c3f7f7\u0027:\n  Remove obsolete drm manager code\n"
    },
    {
      "commit": "98603acbce87c3a451c8e4c26625048363c3f7f7",
      "tree": "abdeb096f5fcbdc484c5cdf846ec725f42ea0cb5",
      "parents": [
        "a1b1e2de67ed5ed3dfa8c8e9554bb0f0ab18a71c",
        "36337f8f1c4d7384cb1528205582148c85c69f4d"
      ],
      "author": {
        "name": "Jeff Tinker",
        "email": "jtinker@google.com",
        "time": "Mon Aug 19 14:27:45 2013 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Mon Aug 19 14:27:45 2013 -0700"
      },
      "message": "am 36337f8f: am 7d72965f: am 60476336: Remove obsolete drm manager code\n\n* commit \u002736337f8f1c4d7384cb1528205582148c85c69f4d\u0027:\n  Remove obsolete drm manager code\n"
    },
    {
      "commit": "36337f8f1c4d7384cb1528205582148c85c69f4d",
      "tree": "f15224d638d6477ce05b9323d0d812702a476a26",
      "parents": [
        "56f387a4a8f319f3e6080b5e5963a4b177053cbe",
        "7d72965ff6a4bf9f91213fbdafcd12cfad8334e5"
      ],
      "author": {
        "name": "Jeff Tinker",
        "email": "jtinker@google.com",
        "time": "Mon Aug 19 14:24:50 2013 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Mon Aug 19 14:24:50 2013 -0700"
      },
      "message": "am 7d72965f: am 60476336: Remove obsolete drm manager code\n\n* commit \u00277d72965ff6a4bf9f91213fbdafcd12cfad8334e5\u0027:\n  Remove obsolete drm manager code\n"
    },
    {
      "commit": "7d72965ff6a4bf9f91213fbdafcd12cfad8334e5",
      "tree": "0d4639e25175f272da4033280f7b4ea1cc5165fe",
      "parents": [
        "a923dd4e6c14f5cba2fc5f6f152619ec6bc70c5d",
        "6047633622328711cc6b23667c8d6381bae179bf"
      ],
      "author": {
        "name": "Jeff Tinker",
        "email": "jtinker@google.com",
        "time": "Mon Aug 19 14:21:48 2013 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Mon Aug 19 14:21:48 2013 -0700"
      },
      "message": "am 60476336: Remove obsolete drm manager code\n\n* commit \u00276047633622328711cc6b23667c8d6381bae179bf\u0027:\n  Remove obsolete drm manager code\n"
    },
    {
      "commit": "dcb89b3b505522efde173c105a851c412f947178",
      "tree": "eb89386fb07021a6527b35ea3d8ecf80584c73b7",
      "parents": [
        "1cb4e1661e4144cb188c2c79b89804fcb902fd19"
      ],
      "author": {
        "name": "Chong Zhang",
        "email": "chz@google.com",
        "time": "Tue Aug 06 09:44:47 2013 -0700"
      },
      "committer": {
        "name": "Chong Zhang",
        "email": "chz@google.com",
        "time": "Mon Aug 19 10:53:52 2013 -0700"
      },
      "message": "MediaPlayer: add listener for raw track data\n\nBug: 10326117\n\nChange-Id: I2c0bdf8adc67b11f8dc633423bee66897548f181\n"
    },
    {
      "commit": "893a5642871114fca3b2a00c6ff8e5699ce3e3ed",
      "tree": "d34721dfd133e8a79a4ff32ee8e8d2d83ef24031",
      "parents": [
        "7fb865653293e665f48b31e791ca124e98c7d257"
      ],
      "author": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Fri Aug 16 20:19:26 2013 -0700"
      },
      "committer": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Fri Aug 16 20:21:07 2013 -0700"
      },
      "message": "Enforce permission for recording from remote submix.\n\nBug: 10265163\nChange-Id: I2395036bac6e10baeaf6ea4bc3093bd9dd98742d\n"
    },
    {
      "commit": "7fb865653293e665f48b31e791ca124e98c7d257",
      "tree": "b987e932abf97aae86ad60069927e1606404cea9",
      "parents": [
        "e9f3a3141c2eaafa3a5a3417d1e5682a909c5b31"
      ],
      "author": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Thu Aug 15 18:06:37 2013 -0700"
      },
      "committer": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Fri Aug 16 20:21:07 2013 -0700"
      },
      "message": "Remove call to enable/disable remote submix from test program.\n\nThe submix will be controlled automatically from now on based on\nwhether there is an active audio recorder.\n\nBug: 10265163\nChange-Id: Iea8164182daa037066f60974b54597d20db4903b\n"
    },
    {
      "commit": "e9f3a3141c2eaafa3a5a3417d1e5682a909c5b31",
      "tree": "bc27152b22072be2e18ab9c01bf86c852d0b902e",
      "parents": [
        "1cb4e1661e4144cb188c2c79b89804fcb902fd19",
        "0f61d8f14aa368c9cd7076528e8096e10ed100a0"
      ],
      "author": {
        "name": "Ruben Brunk",
        "email": "rubenbrunk@google.com",
        "time": "Sat Aug 17 00:29:13 2013 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Sat Aug 17 00:29:13 2013 +0000"
      },
      "message": "Merge \"Refactor CameraService to handle errors properly.\" into klp-dev"
    },
    {
      "commit": "0f61d8f14aa368c9cd7076528e8096e10ed100a0",
      "tree": "ed95cb70d56dd3a732f4e1909c96e7889b23ce94",
      "parents": [
        "75c16dde986e16ac5fd4d34b06b0cc6a90679866"
      ],
      "author": {
        "name": "Ruben Brunk",
        "email": "rubenbrunk@google.com",
        "time": "Thu Aug 08 13:07:18 2013 -0700"
      },
      "committer": {
        "name": "Ruben Brunk",
        "email": "rubenbrunk@google.com",
        "time": "Fri Aug 16 14:42:28 2013 -0700"
      },
      "message": "Refactor CameraService to handle errors properly.\n\nBug: 10361136\n\n-Connect calls now return status_t error flags.\n\nChange-Id: Idca453b111e5df31327f6c99ebe853bb2e332b95\n"
    },
    {
      "commit": "1cb4e1661e4144cb188c2c79b89804fcb902fd19",
      "tree": "05514005c18fb0e5c85ff566b26526519cd8fb1a",
      "parents": [
        "75c16dde986e16ac5fd4d34b06b0cc6a90679866",
        "cbaffcffee6418d678806e63097c19fe26d48fe0"
      ],
      "author": {
        "name": "Lajos Molnar",
        "email": "lajos@google.com",
        "time": "Fri Aug 16 19:32:29 2013 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Aug 16 19:32:29 2013 +0000"
      },
      "message": "Merge \"Add MEDIA_STARTED/PAUSED/STOPPED events to media players\" into klp-dev"
    },
    {
      "commit": "6047633622328711cc6b23667c8d6381bae179bf",
      "tree": "39d1be5a435d43627c1f0b174d01cb1152c61f11",
      "parents": [
        "65e8d62a5b243518795cdafa498df4a49baf6940"
      ],
      "author": {
        "name": "Jeff Tinker",
        "email": "jtinker@google.com",
        "time": "Mon Jul 22 15:54:42 2013 -0700"
      },
      "committer": {
        "name": "Jeff Tinker",
        "email": "jtinker@google.com",
        "time": "Fri Aug 16 19:17:14 2013 +0000"
      },
      "message": "Remove obsolete drm manager code\n\nbug: 9545965\nChange-Id: Ia6e09efa826b1349d027045e782980daeb7d7596\n(cherry picked from commit f355f18aa2cc1706761e373fe19298a9ccc9c75a)"
    },
    {
      "commit": "cbaffcffee6418d678806e63097c19fe26d48fe0",
      "tree": "21af7d5eab33df7c6487290014f29a83b525734c",
      "parents": [
        "b8689b31813f55cbc1bf8e9ca0d46a9ee113e38a"
      ],
      "author": {
        "name": "Lajos Molnar",
        "email": "lajos@google.com",
        "time": "Wed Aug 14 18:30:38 2013 -0700"
      },
      "committer": {
        "name": "Lajos Molnar",
        "email": "lajos@google.com",
        "time": "Thu Aug 15 16:04:58 2013 -0700"
      },
      "message": "Add MEDIA_STARTED/PAUSED/STOPPED events to media players\n\nThis is needed for the MediaTimeProvider java interface, so it does not\ncontinually poll for current media time.\n\nNote: NuPlayer and AwesomePlayer do not correctly handle stop (pause\ninstead), so for those we will signal PAUSED.\n\nSigned-off-by: Lajos Molnar \u003clajos@google.com\u003e\nChange-Id: I3c61e1bda475f131323f475c18a42e3ec66c9ae1\nBug: 10326117\n"
    },
    {
      "commit": "75c16dde986e16ac5fd4d34b06b0cc6a90679866",
      "tree": "82d64dc5359021224e07e0e63fb74e4d1f3deb16",
      "parents": [
        "c85a986af84962515c10499faab3dc8f9a0948d4",
        "0167414e261f88a96b5e4bf6cb592e6ca11e5a95"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Thu Aug 15 16:12:08 2013 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Aug 15 16:12:08 2013 +0000"
      },
      "message": "Merge \"You can now opt-in to having the video decoder push blank buffers to the\" into klp-dev"
    },
    {
      "commit": "c85a986af84962515c10499faab3dc8f9a0948d4",
      "tree": "27bb5d32fb461e3f5f27889451017a3b6bd7fb48",
      "parents": [
        "c13a958fba83dae63a8cf23b76b36a8fc8580aef"
      ],
      "author": {
        "name": "Ying Wang",
        "email": "wangying@google.com",
        "time": "Wed Aug 14 20:39:49 2013 -0700"
      },
      "committer": {
        "name": "Ying Wang",
        "email": "wangying@google.com",
        "time": "Wed Aug 14 20:39:49 2013 -0700"
      },
      "message": "Fix build.\n\nChange-Id: If87636a654c8cfb2449e246df213fb24b08b4ad3\n"
    },
    {
      "commit": "c13a958fba83dae63a8cf23b76b36a8fc8580aef",
      "tree": "4c135c92d93d3d6885c3f766da18fbaa63ebf82c",
      "parents": [
        "99a2297e4f9746cd5efc3aa3731d17052f32e058",
        "88c3c4acb13a93209b3572fecd585099defec184"
      ],
      "author": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Thu Aug 15 00:09:17 2013 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Aug 15 00:09:18 2013 +0000"
      },
      "message": "Merge \"fix build. optional tests broke\" into klp-dev"
    },
    {
      "commit": "88c3c4acb13a93209b3572fecd585099defec184",
      "tree": "be3e3a3b31afdc4ec0de6b0b9d7478fb5e01d079",
      "parents": [
        "cd06d357ed4fcde991aa55dc97317d97cb287332"
      ],
      "author": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Wed Aug 14 17:08:40 2013 -0700"
      },
      "committer": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Wed Aug 14 17:08:40 2013 -0700"
      },
      "message": "fix build. optional tests broke\n\nChange-Id: Ifb38fb2a7bd9c3d6305726f8e6d661be05cdcf7e\n"
    },
    {
      "commit": "99a2297e4f9746cd5efc3aa3731d17052f32e058",
      "tree": "6299db378045ebb22e929cc3fe2a7284f67133b0",
      "parents": [
        "69b5e38ca1af5696da1c00627d2e64f7db00d2e1",
        "a2081368e2068a86f2db9b0dd562d9e18f69ea37"
      ],
      "author": {
        "name": "Andy McFadden",
        "email": "fadden@android.com",
        "time": "Wed Aug 14 23:25:59 2013 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Aug 14 23:26:05 2013 +0000"
      },
      "message": "Merge \"Another error check\" into klp-dev"
    },
    {
      "commit": "69b5e38ca1af5696da1c00627d2e64f7db00d2e1",
      "tree": "29a03f149aea8c87d6207a528a60da2751b9f0fd",
      "parents": [
        "7f76a81b18ade3158ae27015637074ce08e837b2",
        "2533c83b4ed8e1ca5b259d59373f941c8f0e9635"
      ],
      "author": {
        "name": "Andy McFadden",
        "email": "fadden@android.com",
        "time": "Wed Aug 14 23:23:15 2013 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Aug 14 23:23:16 2013 +0000"
      },
      "message": "Merge \"Use destroyDisplay()\" into klp-dev"
    },
    {
      "commit": "a2081368e2068a86f2db9b0dd562d9e18f69ea37",
      "tree": "a70ef62bb490a67229e29dacf94ff5ff82e897b9",
      "parents": [
        "2533c83b4ed8e1ca5b259d59373f941c8f0e9635"
      ],
      "author": {
        "name": "Andy McFadden",
        "email": "fadden@android.com",
        "time": "Wed Aug 14 15:08:29 2013 -0700"
      },
      "committer": {
        "name": "Andy McFadden",
        "email": "fadden@android.com",
        "time": "Wed Aug 14 15:08:29 2013 -0700"
      },
      "message": "Another error check\n\nChange-Id: I01ed5c0c7dcb520732d2856859bced31df5fbbb5\n"
    },
    {
      "commit": "2533c83b4ed8e1ca5b259d59373f941c8f0e9635",
      "tree": "bfad6cb63427aca3993b6d70b0c53aee18160ebc",
      "parents": [
        "fe9611bd65a8d968d6512f6a83078ac064ec8e6e"
      ],
      "author": {
        "name": "Andy McFadden",
        "email": "fadden@android.com",
        "time": "Wed Aug 14 11:23:06 2013 -0700"
      },
      "committer": {
        "name": "Andy McFadden",
        "email": "fadden@android.com",
        "time": "Wed Aug 14 11:23:06 2013 -0700"
      },
      "message": "Use destroyDisplay()\n\nUse the new SurfaceComposerClient::destroyDisplay call to shut the\nvirtual display down.\n\nChange-Id: I0225a44594abf427d386456622b23b01fdd1690f\n"
    },
    {
      "commit": "0167414e261f88a96b5e4bf6cb592e6ca11e5a95",
      "tree": "1510cccda507a05fa1b410b4a6a8d4828a1740cc",
      "parents": [
        "cd06d357ed4fcde991aa55dc97317d97cb287332"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Wed Aug 14 10:28:14 2013 -0700"
      },
      "committer": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Wed Aug 14 10:28:14 2013 -0700"
      },
      "message": "You can now opt-in to having the video decoder push blank buffers to the\n\nsurface on the transition from executing-\u003eidle by specifying the key\n\"push-blank-buffers-on-shutdown\" with a value of 1 in the call to configure.\n\nChange-Id: I1155fccf89f18e717728c985e590651597595515\n"
    },
    {
      "commit": "7f76a81b18ade3158ae27015637074ce08e837b2",
      "tree": "b2927c2cc99053ba118553a0242cf41b664fb5be",
      "parents": [
        "cd06d357ed4fcde991aa55dc97317d97cb287332",
        "2ee14000a38683220fb250d9e7300e1d71ccdaa0"
      ],
      "author": {
        "name": "Lajos Molnar",
        "email": "lajos@google.com",
        "time": "Wed Aug 14 01:27:14 2013 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Aug 14 01:27:16 2013 +0000"
      },
      "message": "Merge \"Check adaptive playback support via CodecCapabilities\" into klp-dev"
    },
    {
      "commit": "2ee14000a38683220fb250d9e7300e1d71ccdaa0",
      "tree": "2f59a1eb7737e5e426bb7be177f853a6f333146d",
      "parents": [
        "b8689b31813f55cbc1bf8e9ca0d46a9ee113e38a"
      ],
      "author": {
        "name": "Lajos Molnar",
        "email": "lajos@google.com",
        "time": "Tue Aug 06 15:02:22 2013 -0700"
      },
      "committer": {
        "name": "Lajos Molnar",
        "email": "lajos@google.com",
        "time": "Tue Aug 13 13:42:52 2013 -0700"
      },
      "message": "Check adaptive playback support via CodecCapabilities\n\nAdded flags field to CodecCapabilities, so that applications\ncan query whether codecs support various features.  For now\nadded one video-decoder feature:\n\nkFlagSupportsAdaptivePlayback\n\nMedia playback applications can query it to see if a codec\nsupports seamless resolution changes, such as by supporting\ndynamic output buffers.\n\nSigned-off-by: Lajos Molnar \u003clajos@google.com\u003e\nChange-Id: I09da46e8ab6b8645fa2749e33128e49eda2e865b\nRelated-to-bug: 7093648\n"
    },
    {
      "commit": "cd06d357ed4fcde991aa55dc97317d97cb287332",
      "tree": "b6bc5dab4fa6096bcd314749878760c279033e3f",
      "parents": [
        "1e0b080825a169c6ac655f11a798ff177575608c",
        "a61285dcf1da8a2cf40c499ee3a7b9fc4d74ac58"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Tue Aug 13 17:13:24 2013 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Aug 13 17:13:24 2013 +0000"
      },
      "message": "Merge \"Optionally repeat the previously submitted frame to the encoder\" into klp-dev"
    },
    {
      "commit": "a61285dcf1da8a2cf40c499ee3a7b9fc4d74ac58",
      "tree": "a360123ee73434ee45608b03a02d8fb6ff431c3b",
      "parents": [
        "1b832c3d8f2b1b24f9bc7025afd2b4a8b4e6c6f9"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Wed Jul 31 13:50:42 2013 -0700"
      },
      "committer": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Tue Aug 13 10:11:46 2013 -0700"
      },
      "message": "Optionally repeat the previously submitted frame to the encoder\n\nif no new frame has been delivered by surface flinger within the timeout\ninterval.\n\nChange-Id: I282f1b726dfe5646b178d7858d6f5d4f5a264fde\n"
    },
    {
      "commit": "1e0b080825a169c6ac655f11a798ff177575608c",
      "tree": "741d74d02ffc8e0cabdac3447e532547f384504b",
      "parents": [
        "46052913f307b1561f1661bb776fa29c0775758c",
        "3cb3f576475c04058c265bb2dfa366cc98b2434c"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Tue Aug 13 17:03:29 2013 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Aug 13 17:03:30 2013 +0000"
      },
      "message": "Merge \"Restore stagefright command line tool.\" into klp-dev"
    },
    {
      "commit": "46052913f307b1561f1661bb776fa29c0775758c",
      "tree": "198b0f96f080c9110688e19bd65d51182ed99b1e",
      "parents": [
        "fe9611bd65a8d968d6512f6a83078ac064ec8e6e"
      ],
      "author": {
        "name": "Andy McFadden",
        "email": "fadden@android.com",
        "time": "Tue Aug 13 09:56:19 2013 -0700"
      },
      "committer": {
        "name": "Andy McFadden",
        "email": "fadden@android.com",
        "time": "Tue Aug 13 09:56:19 2013 -0700"
      },
      "message": "Better error message\n\nAttempt to create the output file before handing it to MediaMuxer,\nwhich doesn\u0027t report file-open failures in a useful way.\n\nChange-Id: Ie24ff577dd50e185b4eb72575684d23a46f38d3d\n"
    },
    {
      "commit": "3cb3f576475c04058c265bb2dfa366cc98b2434c",
      "tree": "6c803e1e1db1227f685ad7d25cecefdea66264ac",
      "parents": [
        "1b832c3d8f2b1b24f9bc7025afd2b4a8b4e6c6f9"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Tue Aug 13 08:55:47 2013 -0700"
      },
      "committer": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Tue Aug 13 08:55:47 2013 -0700"
      },
      "message": "Restore stagefright command line tool.\n\nChange-Id: Ia17f48522f601d6a057ef3e1e8cd01f80a5c9951\n"
    },
    {
      "commit": "fe9611bd65a8d968d6512f6a83078ac064ec8e6e",
      "tree": "4e4a1653930bab697eefd2ba0831dcfa41e64617",
      "parents": [
        "b8689b31813f55cbc1bf8e9ca0d46a9ee113e38a",
        "ac0bbe16f3eba46b3d8057b66c2aff9101fc6f7d"
      ],
      "author": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Mon Aug 12 23:59:55 2013 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Aug 12 23:59:55 2013 +0000"
      },
      "message": "Merge \"Fix potential leak of audio input handle.\" into klp-dev"
    },
    {
      "commit": "b8689b31813f55cbc1bf8e9ca0d46a9ee113e38a",
      "tree": "fa21eb375d9409d5d08a3db4cb7df46c102bd43b",
      "parents": [
        "1b832c3d8f2b1b24f9bc7025afd2b4a8b4e6c6f9"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Mon Aug 12 10:08:23 2013 -0700"
      },
      "committer": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Mon Aug 12 10:09:27 2013 -0700"
      },
      "message": "Support for \"request-sync\" parameter in ACodec\n\nAlso returns errors to caller instead of asserting...\n\nChange-Id: Id3018655a2b3da4289167fba16af907350a511ae\n"
    },
    {
      "commit": "ac0bbe16f3eba46b3d8057b66c2aff9101fc6f7d",
      "tree": "14008bb60b6b0ac3eb77b8e39504400d2b446e43",
      "parents": [
        "1b832c3d8f2b1b24f9bc7025afd2b4a8b4e6c6f9"
      ],
      "author": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Fri Aug 09 18:32:30 2013 -0700"
      },
      "committer": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Fri Aug 09 19:57:53 2013 -0700"
      },
      "message": "Fix potential leak of audio input handle.\n\nThe audio input handle is ultimately owned by the audio recorder\nobject but it could be dropped on the floor if an error occurred\nbefore that object was fully initialized.\n\nRearranged some of the argument validation and merged getInput_l\nwith openRecord_l to simplify the code and prevent such a leak\nfrom occurring.\n\nBug: 10265163\nChange-Id: I124dce344b1d11c2dd66ca5e2c9aec0c52c230e2\n"
    },
    {
      "commit": "1b832c3d8f2b1b24f9bc7025afd2b4a8b4e6c6f9",
      "tree": "59129feacd309c8ce496d47f29e2468821e63579",
      "parents": [
        "9bdc9c4ee0b44ca407cdca4499df9b3134bc5884",
        "4a0efb77198c69df711ab369ac482a42dbdfab07"
      ],
      "author": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Thu Aug 08 23:39:34 2013 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Aug 08 23:39:35 2013 +0000"
      },
      "message": "Merge \"Fix regression for AudioRecord streaming callback mode\" into klp-dev"
    },
    {
      "commit": "9bdc9c4ee0b44ca407cdca4499df9b3134bc5884",
      "tree": "88945b688848d6ee0553f6327523d9c3fe284488",
      "parents": [
        "f31abb4ee82050030b3e5a0793bb2b8e30f40d31",
        "bcd86896e486e303d285e13477e0623b2a920e78"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Thu Aug 08 16:21:42 2013 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Thu Aug 08 16:21:42 2013 -0700"
      },
      "message": "am bcd86896: am d0f5664a: Merge \"Handle undefined NAL type for h264 streaming\"\n\n* commit \u0027bcd86896e486e303d285e13477e0623b2a920e78\u0027:\n  Handle undefined NAL type for h264 streaming\n"
    },
    {
      "commit": "4a0efb77198c69df711ab369ac482a42dbdfab07",
      "tree": "fd5d862458cc562d12feb525c8b94a81bcfbdb85",
      "parents": [
        "f31abb4ee82050030b3e5a0793bb2b8e30f40d31"
      ],
      "author": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Thu Aug 08 15:20:53 2013 -0700"
      },
      "committer": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Thu Aug 08 16:15:09 2013 -0700"
      },
      "message": "Fix regression for AudioRecord streaming callback mode\n\nThe notification period (frequency of client wakeups) was broken in\nstreaming callback mode.  Fast tracks were OK, but non-fast tracks with\nnormal latency weren\u0027t getting woken up at all.\n\nBug: 10222943\nChange-Id: Ife9a2f57fa73c6eb921f1c5ba62de0bfcc20557b\n"
    },
    {
      "commit": "bcd86896e486e303d285e13477e0623b2a920e78",
      "tree": "39039a3156e7e44297c5c6159138c5890ae5a756",
      "parents": [
        "6d4d879037a495f9a4276a6996d1845594ce9090",
        "d0f5664abb5a8d94ae13f63a5f3491b47383ee2f"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Thu Aug 08 08:56:37 2013 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Thu Aug 08 08:56:37 2013 -0700"
      },
      "message": "am d0f5664a: Merge \"Handle undefined NAL type for h264 streaming\"\n\n* commit \u0027d0f5664abb5a8d94ae13f63a5f3491b47383ee2f\u0027:\n  Handle undefined NAL type for h264 streaming\n"
    },
    {
      "commit": "d0f5664abb5a8d94ae13f63a5f3491b47383ee2f",
      "tree": "cfd1f8e07656fe523b22ef3d7a31d38e42bbf422",
      "parents": [
        "b687ff9f2e02790e8a8e3964cb73e87546cd72dd",
        "a355bb4f5ce39a77d05f62263d4be888e903c4cd"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Thu Aug 08 15:52:47 2013 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Thu Aug 08 15:52:48 2013 +0000"
      },
      "message": "Merge \"Handle undefined NAL type for h264 streaming\""
    },
    {
      "commit": "f31abb4ee82050030b3e5a0793bb2b8e30f40d31",
      "tree": "bc17b9e9d4a4dc1108c032cad4a714471180478c",
      "parents": [
        "2f583c0ac819a7bbd1228d7b8c3857c7e6a98a91",
        "02de89293b74ab1e9a77ce2367c5c499ab038968"
      ],
      "author": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Wed Aug 07 17:19:36 2013 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Aug 07 17:19:37 2013 +0000"
      },
      "message": "Merge \"Cleanup comments for the new control block implementation\""
    },
    {
      "commit": "2f583c0ac819a7bbd1228d7b8c3857c7e6a98a91",
      "tree": "a142b620d9f27575b983685dbb28f131d8ab43ee",
      "parents": [
        "89a70f71cef61d10437b3901e8efc1f082a857c5",
        "362552a53523c46679e8b3cbb83b39d7ae769ff7"
      ],
      "author": {
        "name": "Jeff Tinker",
        "email": "jtinker@google.com",
        "time": "Wed Aug 07 01:44:37 2013 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Aug 07 01:44:38 2013 +0000"
      },
      "message": "Merge \"Adds a drm resource busy error, removes some deprecated errors\""
    },
    {
      "commit": "89a70f71cef61d10437b3901e8efc1f082a857c5",
      "tree": "a973a3c580ab5de75ffc390a7eb52293028fb9c6",
      "parents": [
        "e1e476669a5ee25f2a3c2fe30170e0f9a89f30a4",
        "d0715867861c216e88a4a7523b6da8a3cb128724"
      ],
      "author": {
        "name": "Lajos Molnar",
        "email": "lajos@google.com",
        "time": "Tue Aug 06 23:55:31 2013 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Aug 06 23:55:31 2013 +0000"
      },
      "message": "Merge \"IOMX: add updateGraphicBufferInMeta method for metadata mode\""
    },
    {
      "commit": "e1e476669a5ee25f2a3c2fe30170e0f9a89f30a4",
      "tree": "0a5046a178e98c0d4057d816559b508243543a68",
      "parents": [
        "9e65879ebc633334bb061e8164c46602ad983c50",
        "93c721273208bea4a5d705dce215437a7633fb5a"
      ],
      "author": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Tue Aug 06 23:06:09 2013 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Aug 06 23:06:09 2013 +0000"
      },
      "message": "Merge \"fix build\""
    },
    {
      "commit": "93c721273208bea4a5d705dce215437a7633fb5a",
      "tree": "0a5046a178e98c0d4057d816559b508243543a68",
      "parents": [
        "deeef54487a34034dc0cfaab20b20d557224c07c"
      ],
      "author": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Tue Aug 06 16:05:27 2013 -0700"
      },
      "committer": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Tue Aug 06 16:05:27 2013 -0700"
      },
      "message": "fix build\n\nChange-Id: I859bd75eb796b0cb8da30ad947776d3e38f3873f\n"
    },
    {
      "commit": "9e65879ebc633334bb061e8164c46602ad983c50",
      "tree": "0a5046a178e98c0d4057d816559b508243543a68",
      "parents": [
        "deeef54487a34034dc0cfaab20b20d557224c07c"
      ],
      "author": {
        "name": "Ying Wang",
        "email": "wangying@google.com",
        "time": "Tue Aug 06 15:54:17 2013 -0700"
      },
      "committer": {
        "name": "Ying Wang",
        "email": "wangying@google.com",
        "time": "Tue Aug 06 15:54:17 2013 -0700"
      },
      "message": "Fix build. last attempt.\n\nChange-Id: Ib955134f90b78cfc0d31272021ad5907a41df708\n"
    },
    {
      "commit": "d0715867861c216e88a4a7523b6da8a3cb128724",
      "tree": "9b474094654a2dccb440fd9ca4a87f8afbdb9278",
      "parents": [
        "b08ab81bab9e8cd2e3a7fff02725a387070fd078"
      ],
      "author": {
        "name": "Lajos Molnar",
        "email": "lajos@google.com",
        "time": "Mon Jul 22 12:57:43 2013 -0700"
      },
      "committer": {
        "name": "Lajos Molnar",
        "email": "lajos@google.com",
        "time": "Tue Aug 06 13:19:26 2013 -0700"
      },
      "message": "IOMX: add updateGraphicBufferInMeta method for metadata mode\n\nThis is used to set the handle in the metadata buffer that is\nvalid in the mediaserver process, as well as to keep a reference\nfor the graphic buffers in BufferMeta.\n\nChange-Id: I46bb68d8bed894f357eeeb25368360d11b276634\nSigned-off-by: Lajos Molnar \u003clajos@google.com\u003e\n"
    },
    {
      "commit": "deeef54487a34034dc0cfaab20b20d557224c07c",
      "tree": "cc0aa13d8349df8a57e82374cfd2df9095cf2cbe",
      "parents": [
        "230c5bde2779c618b26edc73443280b2d9371c70"
      ],
      "author": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Fri Aug 02 01:50:59 2013 -0700"
      },
      "committer": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Tue Aug 06 20:05:40 2013 +0000"
      },
      "message": "separte producer and consumer interfaces\n\nBug: 9265647\nChange-Id: Iefabc11e4bd2e2e8ffd31160476c450affe6629c\n"
    },
    {
      "commit": "230c5bde2779c618b26edc73443280b2d9371c70",
      "tree": "313a1848799a279e3a56859f0d474a459a981d5a",
      "parents": [
        "33f3177c08d238285b296d137e527ec99e34228f",
        "7cd9cf70e36ad4b8eb12e24f9adbbe6fd69edebd"
      ],
      "author": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Tue Aug 06 17:32:40 2013 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Aug 06 17:32:41 2013 +0000"
      },
      "message": "Merge \"AudioRecord notification frames\""
    },
    {
      "commit": "33f3177c08d238285b296d137e527ec99e34228f",
      "tree": "92377e0ceaa8690090254769fe12db61db35d249",
      "parents": [
        "b85187332e740be337ce2e3e0d8d21c5c8651bf8",
        "3151427b6b0adf99929433715bab6f1e505100c1"
      ],
      "author": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Tue Aug 06 16:49:16 2013 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Aug 06 16:49:16 2013 +0000"
      },
      "message": "Merge \"AudioRecord::openRecord_l use flags\""
    },
    {
      "commit": "b85187332e740be337ce2e3e0d8d21c5c8651bf8",
      "tree": "ede35fbf668c6e0ffc68881a69efd23d8dabd921",
      "parents": [
        "743649fa70392b668377fb507d251b346c7b2769",
        "b13820ffafcb6bcdd33b6272676535afb4dff479"
      ],
      "author": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Tue Aug 06 16:15:35 2013 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Aug 06 16:15:35 2013 +0000"
      },
      "message": "Merge \"Reject unprepared MediaPlayers\""
    },
    {
      "commit": "743649fa70392b668377fb507d251b346c7b2769",
      "tree": "3d23d5355c7ea676aaeee2465447dc72f093c346",
      "parents": [
        "5279e3e1187e4da0fed4349d29ea548f52e95f95",
        "73493688f4190f790ee15d9ca54831cd64f4e195"
      ],
      "author": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Tue Aug 06 16:14:01 2013 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Aug 06 16:14:01 2013 +0000"
      },
      "message": "Merge \"AudioRecord::openRecord_l now take flags\""
    },
    {
      "commit": "5279e3e1187e4da0fed4349d29ea548f52e95f95",
      "tree": "1c908f1fd12712e5163fb2dc5ec00a32d2250637",
      "parents": [
        "75180715a8f85dd7ddf3da710fba8eb7709f8999",
        "90e58b1fefc8caf70b34301a92bc86179580b6fc"
      ],
      "author": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Tue Aug 06 14:22:28 2013 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Aug 06 14:22:28 2013 +0000"
      },
      "message": "Merge \"RecordThread::createRecordTrack_l use flags for fast tracks\""
    },
    {
      "commit": "75180715a8f85dd7ddf3da710fba8eb7709f8999",
      "tree": "953a1b6a986c46a2297ba403597a3d11e8de7ca0",
      "parents": [
        "3aa03e40668dd90390d9f1702f8c576e15b366c3",
        "ddb0ccf3fb6fe8da8c71a6deb30561b821f3c0a2"
      ],
      "author": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Mon Aug 05 23:13:13 2013 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Aug 05 23:13:13 2013 +0000"
      },
      "message": "Merge \"RecordTrack::createRecordTrack_l flags are in/out\""
    }
  ],
  "next": "3aa03e40668dd90390d9f1702f8c576e15b366c3"
}
