)]}'
{
  "log": [
    {
      "commit": "40cdc56efa47580d89a93750cefecb8ccbaf9a72",
      "tree": "ffa29768c5a9207340027ca44cbacdc3e3b40750",
      "parents": [
        "2f53a63142801e174e6ebf79cfbcd9055d8c538b"
      ],
      "author": {
        "name": "Wu-cheng Li",
        "email": "wuchengli@google.com",
        "time": "Tue Aug 02 13:20:36 2011 +0800"
      },
      "committer": {
        "name": "Wu-cheng Li",
        "email": "wuchengli@google.com",
        "time": "Tue Aug 02 14:27:58 2011 +0800"
      },
      "message": "Add camera recording hint parameter.\n\nThe API is still hidden.\n\nbug:4266229\nChange-Id: I5e4c24e9e2808582aecb55ac4f1d5be3ed7e36a2\n"
    },
    {
      "commit": "2f53a63142801e174e6ebf79cfbcd9055d8c538b",
      "tree": "769b701ae120c1359e056cbea4c413528f9f12b0",
      "parents": [
        "a971214f96f9373cf603b09ff74c55efe569e4fb",
        "c3da3434cb57f47284ea06bb9065eaa2fe033efb"
      ],
      "author": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Mon Aug 01 16:36:02 2011 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Aug 01 16:36:02 2011 -0700"
      },
      "message": "Merge \"connect/disconnect is now called from our EGL wrapper\""
    },
    {
      "commit": "a971214f96f9373cf603b09ff74c55efe569e4fb",
      "tree": "9c1a7722cbd18fae97726ab2543df6c24063fd7f",
      "parents": [
        "9ea5908d386e0ac482b025bc3235d9eb71d77e06",
        "1de2393648b9fe43977ef88b72489fec05d629a9"
      ],
      "author": {
        "name": "Jean-Baptiste Queru",
        "email": "jbq@google.com",
        "time": "Mon Aug 01 14:12:43 2011 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Mon Aug 01 14:12:43 2011 -0700"
      },
      "message": "am 8fb7bd4d: am 5bb3129c: (-s ours) am a2616220: am 5e57c2cf: Merge \"Stagefright: Return error if codec takes too long to return a buffer.\"\n\n* commit \u00278fb7bd4d02cd4ad2111699778e64464d979f03bb\u0027:\n  Stagefright: Return error if codec takes too long to return a buffer.\n"
    },
    {
      "commit": "1de2393648b9fe43977ef88b72489fec05d629a9",
      "tree": "8136f77079960d466a895235d601d97d258a4f06",
      "parents": [
        "b2ac59b3a1748eef58c228a7e808d40bd1741dcf",
        "93a1e245c94f14b6fb68361f76e46285431dab26"
      ],
      "author": {
        "name": "Jean-Baptiste Queru",
        "email": "jbq@google.com",
        "time": "Mon Aug 01 14:10:39 2011 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Mon Aug 01 14:10:39 2011 -0700"
      },
      "message": "am 5bb3129c: (-s ours) am a2616220: am 5e57c2cf: Merge \"Stagefright: Return error if codec takes too long to return a buffer.\"\n\n* commit \u00275bb3129c7eabce34d7c1469826e1795d4b225bb3\u0027:\n  Stagefright: Return error if codec takes too long to return a buffer.\n"
    },
    {
      "commit": "c3da3434cb57f47284ea06bb9065eaa2fe033efb",
      "tree": "4d42795a629910980240489569777d70282921ed",
      "parents": [
        "b7c5f8fa2ee707f010b60ff7bea07c2bf1e17e2d"
      ],
      "author": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Fri Jul 29 17:55:48 2011 -0700"
      },
      "committer": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Mon Aug 01 14:06:20 2011 -0700"
      },
      "message": "connect/disconnect is now called from our EGL wrapper\n\nthe original connect/disconnect hooks are deprecated\nand replace by api_connect/api_disconnect. the original\nhooks are no no-ops.\napi_connect/api_disconnect is now only called from the\nandroid framework.\n\nBug: 5057915\nChange-Id: I8ca64cd1acd6cabf915bf54689ec2e5f6dfa495a\n"
    },
    {
      "commit": "93a1e245c94f14b6fb68361f76e46285431dab26",
      "tree": "65b004e4db4538035e91fde8a15f214200f7dd55",
      "parents": [
        "e82c319beb2275ad0832cf77252943e16df04b1a",
        "972c502722d52cced15a0e4b5cb303ccf3f890ed"
      ],
      "author": {
        "name": "Jean-Baptiste Queru",
        "email": "jbq@google.com",
        "time": "Mon Aug 01 13:43:07 2011 -0700"
      },
      "committer": {
        "name": "Android Code Review",
        "email": "code-review@android.com",
        "time": "Mon Aug 01 13:43:07 2011 -0700"
      },
      "message": "Merge \"Stagefright: Return error if codec takes too long to return a buffer.\""
    },
    {
      "commit": "9ea5908d386e0ac482b025bc3235d9eb71d77e06",
      "tree": "9c1a7722cbd18fae97726ab2543df6c24063fd7f",
      "parents": [
        "20f725ebcef13ded1b4b85c61c8a4b37cd030656",
        "7f048fdd69753e0ba95d3ef1484b30bcf39164c0"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Mon Aug 01 13:26:11 2011 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Aug 01 13:26:11 2011 -0700"
      },
      "message": "Merge \"Fix NALU extraction of unit starts with a 0x00 nalType\""
    },
    {
      "commit": "7f048fdd69753e0ba95d3ef1484b30bcf39164c0",
      "tree": "5888127cf6b43f7d9d9814212e652db1176d47c3",
      "parents": [
        "b7c5f8fa2ee707f010b60ff7bea07c2bf1e17e2d"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Mon Aug 01 13:22:26 2011 -0700"
      },
      "committer": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Mon Aug 01 13:22:26 2011 -0700"
      },
      "message": "Fix NALU extraction of unit starts with a 0x00 nalType\n\nby not backing up beyond the start of the nal unit.\n\nChange-Id: I5fba9913202de416e634e5f39181be62b72b2469\nrelated-to-bug: 4770290\n"
    },
    {
      "commit": "20f725ebcef13ded1b4b85c61c8a4b37cd030656",
      "tree": "e2d4ace2a91a1116e92fff5d884668be69469a2b",
      "parents": [
        "b7c5f8fa2ee707f010b60ff7bea07c2bf1e17e2d"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Fri Jul 22 09:36:24 2011 -0700"
      },
      "committer": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Mon Aug 01 10:06:25 2011 -0700"
      },
      "message": "Start playing live streaming HLS content from the first segment.\n\nAlso properly signal a \"hard\" discontinuity, i.e. a possible format change\nwhen a discontinuity is signalled explicitly as part of the playlist.\n\nChange-Id: Ic347d3d11d39b0411c3726a7c723bcf13092b8bc\nrelated-to-bug: 5103155, 5103013\n"
    },
    {
      "commit": "b7c5f8fa2ee707f010b60ff7bea07c2bf1e17e2d",
      "tree": "6d10a145b78fdeeb80cf31811845738cee097728",
      "parents": [
        "0065ef783eca9b5e0abb230c422e05ac73d2eff7",
        "e6cf962d41cb05b57e55ef80f75a24c62671dcfe"
      ],
      "author": {
        "name": "Kristian Monsen",
        "email": "kristianm@google.com",
        "time": "Fri Jul 29 03:37:49 2011 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Jul 29 03:37:49 2011 -0700"
      },
      "message": "Merge \"Part of fix for bug 5065047 build libchromium as a shared lib\""
    },
    {
      "commit": "0065ef783eca9b5e0abb230c422e05ac73d2eff7",
      "tree": "ca4e2535387f1175b6b9bbeb8e44b30161b5f9a4",
      "parents": [
        "6dbe883644940badc684957cfc381bfd115f205e",
        "ff09ef8f18eed29bce50c7817df2fd52d2b50cf6"
      ],
      "author": {
        "name": "Wu-cheng Li",
        "email": "wuchengli@google.com",
        "time": "Thu Jul 28 17:23:35 2011 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Jul 28 17:23:35 2011 -0700"
      },
      "message": "Merge \"Add frame metadata parameter to camera data_callback.\""
    },
    {
      "commit": "ff09ef8f18eed29bce50c7817df2fd52d2b50cf6",
      "tree": "f02ccfe423ba130129a964b7e59e66ca2cae3469",
      "parents": [
        "a3924af33a8005a0aeb20b97fd06e0c523b0d1af"
      ],
      "author": {
        "name": "Wu-cheng Li",
        "email": "wuchengli@google.com",
        "time": "Thu Jul 28 05:30:59 2011 +0800"
      },
      "committer": {
        "name": "Wu-cheng Li",
        "email": "wuchengli@google.com",
        "time": "Fri Jul 29 07:14:38 2011 +0800"
      },
      "message": "Add frame metadata parameter to camera data_callback.\n\nbug:4460717\nChange-Id: Ib47d7d7df20af8155a719f3dabefe030893bfebc\n"
    },
    {
      "commit": "6dbe883644940badc684957cfc381bfd115f205e",
      "tree": "54dcc4237e87c8782c697cd338a6bbbed78e2758",
      "parents": [
        "a3924af33a8005a0aeb20b97fd06e0c523b0d1af"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Thu Jul 28 13:59:02 2011 -0700"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Thu Jul 28 13:59:02 2011 -0700"
      },
      "message": "Fix issue 5090721: audio record broken\n\nCommit 6dbdc40 introduced a deadlock when exiting the\nAudioFlinger RecordThread.\n\nChange-Id: I1f63e54c5aeff05da4e4d028b53f734c62c78677\n"
    },
    {
      "commit": "a3924af33a8005a0aeb20b97fd06e0c523b0d1af",
      "tree": "aab3bf764b1658e708689e77c0387e325f5653a2",
      "parents": [
        "673aebfc7e6e8d38ad29a66d68c71ea8e9121eb1",
        "cd25fed09742235fac10953b9d4b77268c695063"
      ],
      "author": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Wed Jul 27 14:45:28 2011 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Jul 27 14:45:28 2011 -0700"
      },
      "message": "Merge \"Bug 4599730 Get audio channel count on MediaPlayer\""
    },
    {
      "commit": "cd25fed09742235fac10953b9d4b77268c695063",
      "tree": "4495bebf5ca8342877e52b5b7db78a24e47db78e",
      "parents": [
        "7fc25dd82dec8474139315b8e905f103c13406f5"
      ],
      "author": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Mon Jul 25 09:26:22 2011 -0700"
      },
      "committer": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Wed Jul 27 10:21:09 2011 -0700"
      },
      "message": "Bug 4599730 Get audio channel count on MediaPlayer\n\nRelated changes:\n - Fix bug in get/setParameter* to recycle Parcels when done with them.\n\nChange-Id: Iaff05e91bbd99a14fccb79d816dd873359b6ae65\n"
    },
    {
      "commit": "673aebfc7e6e8d38ad29a66d68c71ea8e9121eb1",
      "tree": "a8511c0871c6b059d1853eb95054c5797ba11d6e",
      "parents": [
        "85fb61eb8b39d4d3fcebc796c3f7ade1d58567aa"
      ],
      "author": {
        "name": "Iliyan Malchev",
        "email": "malchev@google.com",
        "time": "Wed Jul 27 00:58:25 2011 -0700"
      },
      "committer": {
        "name": "Iliyan Malchev",
        "email": "malchev@google.com",
        "time": "Wed Jul 27 10:03:43 2011 -0700"
      },
      "message": "libstagefright: add destroyOMXPlugin and use C linkage for symbols\n\nAdd a destroyOMXPlugin() to complemenet createOMXPlugin().  Since the latter is\nan opaque call into a library, it is not safe to assume that the object thus\nreturned may be destroyed by calling delete.  This patch will call\ndestroyOMXPlugin() in libstagefrighthw.so, if the symbol is defined there.\nOtherwise, it will default to a delete as before.\n\nAlso, prefer C linkage for the symbol names.  Using mangled C++ symbols is not\nvery safe and makes it hard to grep for those symbols through the code.  We\nattempt to locate createOMXPlugin as a C symbol then try it as a mangled C++\none.  We only use C linkage for destroyOMXPlugin since this symbol is new.\n\nChange-Id: Ied23c910486856a0f18056df049c871234797c5c\nSigned-off-by: Iliyan Malchev \u003cmalchev@google.com\u003e\n"
    },
    {
      "commit": "85fb61eb8b39d4d3fcebc796c3f7ade1d58567aa",
      "tree": "062e10a3423f078c6ee4956c00cee5a1d2c39c37",
      "parents": [
        "a7280a59259018d997896c043fd2db95f631f12e"
      ],
      "author": {
        "name": "Iliyan Malchev",
        "email": "malchev@google.com",
        "time": "Tue Jul 26 15:56:44 2011 -0700"
      },
      "committer": {
        "name": "Iliyan Malchev",
        "email": "malchev@google.com",
        "time": "Wed Jul 27 10:03:43 2011 -0700"
      },
      "message": "libcameraservice: call put_parameters on camera HAL\n\nChange-Id: I492d1034ade50f9e157141debaa9783a90a04a91\nSigned-off-by: Iliyan Malchev \u003cmalchev@google.com\u003e\n"
    },
    {
      "commit": "a7280a59259018d997896c043fd2db95f631f12e",
      "tree": "516378da6bd410e4fd2fe8cc4927be61b450b684",
      "parents": [
        "99b25ba8da5fdb7a524b53c5db290f7a64f1259c",
        "ec437d8d3db79459d7b19e1734e6fe309bd621e8"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Wed Jul 27 09:48:47 2011 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Jul 27 09:48:47 2011 -0700"
      },
      "message": "Merge \"AudioFlinger: fix crash when deleting pre process.\""
    },
    {
      "commit": "99b25ba8da5fdb7a524b53c5db290f7a64f1259c",
      "tree": "b9fdd68537ad28643a3081c93601b3dc289c0b74",
      "parents": [
        "dcd955bd86756be551cfd0a07e53caa55ab1a7fe",
        "feb0db689c17dced50afaee54c659f1676e2d505"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Wed Jul 27 09:02:47 2011 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Jul 27 09:02:47 2011 -0700"
      },
      "message": "Merge \"Fix issue 4604090: notification sound interrupted.\""
    },
    {
      "commit": "dcd955bd86756be551cfd0a07e53caa55ab1a7fe",
      "tree": "4ebc5858e5329f33285737270a946d8fc7730621",
      "parents": [
        "f0de042dc6df6d3a1f3db3a95a1c7964109c6541",
        "d1a243e41caffa8fd346907eed4625c9c47c1a86"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Wed Jul 27 08:56:08 2011 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Jul 27 08:56:08 2011 -0700"
      },
      "message": "Merge \"AudioRecord: Fix getInput()\""
    },
    {
      "commit": "f0de042dc6df6d3a1f3db3a95a1c7964109c6541",
      "tree": "61049731a0592b11ac130341a52972414e16d32f",
      "parents": [
        "7fc25dd82dec8474139315b8e905f103c13406f5",
        "deaba1c70b8ebdd1fffb40665a40e0593bd9cf3e"
      ],
      "author": {
        "name": "Kristian Monsen",
        "email": "kristianm@google.com",
        "time": "Wed Jul 27 05:33:33 2011 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Jul 27 05:33:33 2011 -0700"
      },
      "message": "Merge \"Fix for bug 5049763 HLS: Cookies set in main playlist request aren\u0027t being passed to subsequent HTTP requests\""
    },
    {
      "commit": "ec437d8d3db79459d7b19e1734e6fe309bd621e8",
      "tree": "e04cdae7f24f8a9827435b591b5f0f5cc8d2ae4b",
      "parents": [
        "288b66b60c9b3af3d84408885d0a4030c45eea9a"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Tue Jul 26 20:54:46 2011 -0700"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Tue Jul 26 20:54:46 2011 -0700"
      },
      "message": "AudioFlinger: fix crash when deleting pre process.\n\nIf a pre processing effect is detroyed while enabled and capture is active,\nthere was a possibility that the effect engine is released by the framework\nwhile still processed by the audio HAL.\n\nThe fix consists in not releasing the engine in EffectModule::removeHandle()\nbut just flag the effect as being detroyed to avoid further calls to functions\non the engine effect interface.\nThe effect interface is then removed from the audio HAL safely in\nEffectChain::removeEffect_l() while holding the EffectChain mutex.\n\nChange-Id: I71fab30d9145062af8644f545a1f1d4d3e7e7f02\n"
    },
    {
      "commit": "d1a243e41caffa8fd346907eed4625c9c47c1a86",
      "tree": "a70db88e26c80b621e5e2cb326a5945ccbb5f3cc",
      "parents": [
        "288b66b60c9b3af3d84408885d0a4030c45eea9a"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Tue Jul 26 20:32:28 2011 -0700"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Tue Jul 26 20:32:28 2011 -0700"
      },
      "message": "AudioRecord: Fix getInput()\n\nAudioRecord::getInput() was issuing a query to get a new input stream from\naudio policy service instead of returning the cached input stream in AudioRecord.\n\nChange-Id: Ice324b7c60bc0898149023797bcb56a72091b9d3\n"
    },
    {
      "commit": "7fc25dd82dec8474139315b8e905f103c13406f5",
      "tree": "9c03327dbcab2d396e481deca4098924571c6f4c",
      "parents": [
        "288b66b60c9b3af3d84408885d0a4030c45eea9a"
      ],
      "author": {
        "name": "Wu-cheng Li",
        "email": "wuchengli@google.com",
        "time": "Fri Jul 22 02:37:11 2011 +0800"
      },
      "committer": {
        "name": "Wu-cheng Li",
        "email": "wuchengli@google.com",
        "time": "Wed Jul 27 05:25:35 2011 +0800"
      },
      "message": "Add camera face detection API.\n\nAPI are still hidden.\n\nbug:4460717\nChange-Id: I1a515061f141a89bd61c875257712789fb15d2d4\n"
    },
    {
      "commit": "feb0db689c17dced50afaee54c659f1676e2d505",
      "tree": "a949f6cb66c3c5886cd0682fcb3781b0fd5db0a8",
      "parents": [
        "288b66b60c9b3af3d84408885d0a4030c45eea9a"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Fri Jul 22 09:04:31 2011 -0700"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Mon Jul 25 18:41:12 2011 -0700"
      },
      "message": "Fix issue 4604090: notification sound interrupted.\n\nThe problem is that the audio HAL fails to acquire the wake lock when playing the notification.\nThis is because of a change that removed the mediaserver process form the system group for honeycomb.\n\nThe fix consists in requesting the wake lock from PowerManagerService when AudioFlinger mixer\nwakes up.\n\nA consequence of this change is that audio HALs or pcm drivers do not have to hold wake locks\nanymore as in the past.\n\nChange-Id: I4fb3cc84816c9c408ab7fec75886baf801e1ecb5\n"
    },
    {
      "commit": "288b66b60c9b3af3d84408885d0a4030c45eea9a",
      "tree": "80ed9ae3d7e43e7f57a12fe6a7571dc262ca4323",
      "parents": [
        "b283ac1ac6758aba907bfe56713d279e8aafd38b",
        "8f00151cbe693d52f3e233757c57fab3b6396d21"
      ],
      "author": {
        "name": "Gloria Wang",
        "email": "gwang@google.com",
        "time": "Mon Jul 25 16:36:20 2011 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Jul 25 16:36:20 2011 -0700"
      },
      "message": "Merge \"Fix for bug 4371230. - Generate unique ID for each DrmManagerClient in native side - Fix the bug where multiple clients could use the same ID - Return the correct unique ID back to Java - Add a flag in the unique ID to separate native client and Java client\""
    },
    {
      "commit": "8f00151cbe693d52f3e233757c57fab3b6396d21",
      "tree": "e23cc93514f43af27aa3e2d7bcfce1b88d614a2b",
      "parents": [
        "60c93010e8f96a179574ec66c00ec47a675319e3"
      ],
      "author": {
        "name": "Gloria Wang",
        "email": "gwang@google.com",
        "time": "Thu Jul 21 15:10:22 2011 -0700"
      },
      "committer": {
        "name": "Gloria Wang",
        "email": "gwang@google.com",
        "time": "Mon Jul 25 16:09:58 2011 -0700"
      },
      "message": "Fix for bug 4371230.\n- Generate unique ID for each DrmManagerClient in native side\n- Fix the bug where multiple clients could use the same ID\n- Return the correct unique ID back to Java\n- Add a flag in the unique ID to separate native client and Java client\n\nChange-Id: Ia4574b6b0a526f2335a65380975dc62f9a6e7f9b\n"
    },
    {
      "commit": "b283ac1ac6758aba907bfe56713d279e8aafd38b",
      "tree": "457d913edc5336c480f46f7484c24536e5a9af4f",
      "parents": [
        "6e6e8a6cc9ab99ab299929fa0246e6ced64f8ce3",
        "a361483bb5dbd3bbf132c5b99b2df7d197c3fc50"
      ],
      "author": {
        "name": "Pannag Sanketi",
        "email": "psanketi@google.com",
        "time": "Mon Jul 25 15:00:16 2011 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Jul 25 15:00:16 2011 -0700"
      },
      "message": "Merge \"Adding Metadata mode to SurfaceMediaSource\""
    },
    {
      "commit": "6e6e8a6cc9ab99ab299929fa0246e6ced64f8ce3",
      "tree": "86c78dd408d72d6debb226c614b320ff0a65bf05",
      "parents": [
        "a4635b0cde4a4b7bf0f9aed6aaade60d88eb2fe6",
        "57dae99c9fcd6becd2b5ed0c53f277ba4d7dbcfc"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Mon Jul 25 14:43:05 2011 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Jul 25 14:43:05 2011 -0700"
      },
      "message": "Merge \"Added APIs for audio preprocessing\""
    },
    {
      "commit": "57dae99c9fcd6becd2b5ed0c53f277ba4d7dbcfc",
      "tree": "be3ce6819f6a374f914e2c0ec5a837abfe54da5f",
      "parents": [
        "6d240dc8c5e0bc1ba43a2f5e2f4fc3b5f4ae88db"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Sun Jul 24 13:36:09 2011 -0700"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Mon Jul 25 14:39:00 2011 -0700"
      },
      "message": "Added APIs for audio preprocessing\n\nAdded APIs to control pre processes applied on captured audio.\nThose APIs are still hidden until reviewed by API council.\n\nThree types of standard pre processes are supported:\n- Automatic Gain Control (AGC) by AutomaticGainControl class\n- Acoustic Echo Cancellation (AEC) by AcousticEchoCanceler class\n- Noise Suppression (NS) by NoiseSuppressor class\n\nA method is added to AudioEffect class to query audio pre processings\napplied by default by the platform on a given AudioRecord session ID.\n\nChange-Id: I0b9fceeb8c704dd06319c3b52b85c96fe871d51d\n"
    },
    {
      "commit": "a4635b0cde4a4b7bf0f9aed6aaade60d88eb2fe6",
      "tree": "582ec67587782f7f996bb9e874bf46e57469ac6b",
      "parents": [
        "6d240dc8c5e0bc1ba43a2f5e2f4fc3b5f4ae88db",
        "3cecf640c4daf2df616b278bd9986018c8182908"
      ],
      "author": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Mon Jul 25 14:21:14 2011 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Jul 25 14:21:14 2011 -0700"
      },
      "message": "Merge \"Do not support still image capture mode for timelapse video recording\""
    },
    {
      "commit": "6d240dc8c5e0bc1ba43a2f5e2f4fc3b5f4ae88db",
      "tree": "fa084e4f5ff5e4bd926dac21ccf1e1ced44a5c35",
      "parents": [
        "be1cc822304d3a29c106ad5b6f330aed3e8c5658",
        "1d2bff0e588afe183a1baaae731519b4e957bbdb"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Mon Jul 25 12:20:23 2011 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Jul 25 12:20:23 2011 -0700"
      },
      "message": "Merge \"AudioFlinger: add dump of audio pre processing.\""
    },
    {
      "commit": "e6cf962d41cb05b57e55ef80f75a24c62671dcfe",
      "tree": "22bd11e507a2d3795632c1005b332f12cefc25ff",
      "parents": [
        "be1cc822304d3a29c106ad5b6f330aed3e8c5658"
      ],
      "author": {
        "name": "Kristian Monsen",
        "email": "kristianm@google.com",
        "time": "Fri Jul 22 14:19:36 2011 +0100"
      },
      "committer": {
        "name": "Kristian Monsen",
        "email": "kristianm@google.com",
        "time": "Mon Jul 25 11:22:58 2011 +0100"
      },
      "message": "Part of fix for bug 5065047 build libchromium as a shared lib\n\nBuilding chromium as a shared lib, updating other libs that\nuse it.\n\nChange-Id: Ia20749bb7fbec51b94adb314116503f62f41b782\n"
    },
    {
      "commit": "1d2bff0e588afe183a1baaae731519b4e957bbdb",
      "tree": "a1b9fd05b9b51546c52e76539bce2cccbad05cdb",
      "parents": [
        "77882a8deb5167235ae591e49c9dcff9abb373c1"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Sun Jul 24 17:49:51 2011 -0700"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Sun Jul 24 17:49:51 2011 -0700"
      },
      "message": "AudioFlinger: add dump of audio pre processing.\n\nDump of media.audio_flinger service was only listing effects on output threads.\nMoved the dump of effect chains from PlaybackThread to ThreadBase class so that\npre processings on RecordThread are also listed.\n\nChange-Id: If8bc74023c12b9c2371f1b300743b156ceca7b87\n"
    },
    {
      "commit": "be1cc822304d3a29c106ad5b6f330aed3e8c5658",
      "tree": "cca08baf5327fd30c0f257738d2871484fa39f87",
      "parents": [
        "726e4527b7a750e688fec4c1e7c5f7b9a33d1623",
        "a57a9a491272aa884494b2ec7854960827a73742"
      ],
      "author": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Sun Jul 24 14:40:08 2011 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Sun Jul 24 14:40:08 2011 -0700"
      },
      "message": "Merge \"Do not wait forever for output buffers in OMXCodec.cpp and error out in case time out happens\""
    },
    {
      "commit": "726e4527b7a750e688fec4c1e7c5f7b9a33d1623",
      "tree": "06c12073a7c0919361b092d1f9a5537982077d4c",
      "parents": [
        "348a3aca420da133b2283ee12216e8e0f939e88d",
        "d35924d9928f29dcee6f5666b5bbd084640c7b34"
      ],
      "author": {
        "name": "Jean-Michel Trivi",
        "email": "jmtrivi@google.com",
        "time": "Sun Jul 24 12:59:35 2011 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Sun Jul 24 12:59:35 2011 -0700"
      },
      "message": "Merge \"QueryCodecs() signature change\""
    },
    {
      "commit": "348a3aca420da133b2283ee12216e8e0f939e88d",
      "tree": "b4828c3c51fb149eea640871d555e74c47f2fb8e",
      "parents": [
        "77882a8deb5167235ae591e49c9dcff9abb373c1",
        "0b3f21761eae9b7d230ddd9b4be76ef02d4cec15"
      ],
      "author": {
        "name": "Gloria Wang",
        "email": "gwang@google.com",
        "time": "Sun Jul 24 12:07:20 2011 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Sun Jul 24 12:07:20 2011 -0700"
      },
      "message": "Merge \"Do not change the number of bytes while converting 8-bit samples to 16-bit, because this number will be used later to calculate mCurrentPos. Fix for bug 5063703.\""
    },
    {
      "commit": "3cecf640c4daf2df616b278bd9986018c8182908",
      "tree": "0a9a7306e8a13af5a7149471569ca73827449aee",
      "parents": [
        "77882a8deb5167235ae591e49c9dcff9abb373c1"
      ],
      "author": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Wed Jun 29 16:56:52 2011 -0700"
      },
      "committer": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Sun Jul 24 10:33:54 2011 -0700"
      },
      "message": "Do not support still image capture mode for timelapse video recording\n\nrelated-to-bug: 4973779\n\nChange-Id: Ica665217ab10247b2242acc4e93d4fe9f83e3f45\n"
    },
    {
      "commit": "a361483bb5dbd3bbf132c5b99b2df7d197c3fc50",
      "tree": "412284fb2abbc8afd9255cd01d218cb63fe60e4c",
      "parents": [
        "b33f3407bab0970a7f9241680723a1140b177c50"
      ],
      "author": {
        "name": "Pannag Sanketi",
        "email": "psanketi@google.com",
        "time": "Thu Jul 14 14:37:47 2011 -0700"
      },
      "committer": {
        "name": "Pannag Sanketi",
        "email": "psanketi@google.com",
        "time": "Fri Jul 22 19:33:55 2011 -0700"
      },
      "message": "Adding Metadata mode to SurfaceMediaSource\n\nSurfaceMediaSource operates in metadata mode only, i.e. just the\nmetadata is stored in videobuffers. SurfaceMediaSource passes the Gralloc\nbuffer handle along with a 4 byte \u0027type\u0027 (indicating that the metadata\nis of type GrallocSource) to the encoder as opposed to the\nGrallocBuffer itself.\n\nRelated to bug id: 4529323\n\nChange-Id: I83aebc0dd10f317658cdf70be5802dfc35a1e72d\n"
    },
    {
      "commit": "77882a8deb5167235ae591e49c9dcff9abb373c1",
      "tree": "92f1198bc7488f47b2160d10e772c3823ed7fb40",
      "parents": [
        "29a142c7237821b6dc7bd1e8b56bb1efdc56767b",
        "b33f3407bab0970a7f9241680723a1140b177c50"
      ],
      "author": {
        "name": "Pannag Sanketi",
        "email": "psanketi@google.com",
        "time": "Fri Jul 22 16:42:41 2011 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Jul 22 16:42:41 2011 -0700"
      },
      "message": "Merge \"Connect MediaRecorder Native to SurfaceMediaSource\""
    },
    {
      "commit": "d35924d9928f29dcee6f5666b5bbd084640c7b34",
      "tree": "a9aee28b7cb355ec52034e1212794e896a18767f",
      "parents": [
        "7dff060f29858d6db2464845bb9097ac5960bbe6"
      ],
      "author": {
        "name": "Jean-Michel Trivi",
        "email": "jmtrivi@google.com",
        "time": "Fri Jul 22 09:52:39 2011 -0700"
      },
      "committer": {
        "name": "Jean-Michel Trivi",
        "email": "jmtrivi@google.com",
        "time": "Fri Jul 22 14:51:51 2011 -0700"
      },
      "message": "QueryCodecs() signature change\n\nRestore QueryCodecs() signature exactly as used by third-party libs.\nAdd an alternative function to select HW only codecs.\n\nChange-Id: Ibb2cb4dd36fc0c6599eb93aa5751c216397e3b6f\n"
    },
    {
      "commit": "0b3f21761eae9b7d230ddd9b4be76ef02d4cec15",
      "tree": "cd768728447d3f07c519f8854a0d82d7b5b833b6",
      "parents": [
        "60c93010e8f96a179574ec66c00ec47a675319e3"
      ],
      "author": {
        "name": "Gloria Wang",
        "email": "gwang@google.com",
        "time": "Fri Jul 22 14:42:28 2011 -0700"
      },
      "committer": {
        "name": "Gloria Wang",
        "email": "gwang@google.com",
        "time": "Fri Jul 22 14:42:28 2011 -0700"
      },
      "message": "Do not change the number of bytes while converting 8-bit samples to 16-bit,\nbecause this number will be used later to calculate mCurrentPos.\nFix for bug 5063703.\n\nChange-Id: I75a78ef694482aa426d82a6c5f3d2ce570a9c19e\n"
    },
    {
      "commit": "29a142c7237821b6dc7bd1e8b56bb1efdc56767b",
      "tree": "93907731b48b396bbacad20b8be96aa67c0f83b8",
      "parents": [
        "85eafc680a0bf5e0253cf611ac525769fc9bef3e"
      ],
      "author": {
        "name": "Jamie Gennis",
        "email": "jgennis@google.com",
        "time": "Tue Jul 19 12:08:33 2011 -0700"
      },
      "committer": {
        "name": "Jamie Gennis",
        "email": "jgennis@google.com",
        "time": "Fri Jul 22 14:20:41 2011 -0700"
      },
      "message": "SurfaceTexture: add the abandon method.\n\nThis change adds the \u0027abandon\u0027 method to the SurfaceTexture C++ class.\nThis method may be used to put the SurfaceTexture in an abandoned state,\ncausing all ISurfaceTexture methods to fail.\n\nChange-Id: Ibd261f7b73f44e2bec36a8508bf92113cfb7cf95\n"
    },
    {
      "commit": "b33f3407bab0970a7f9241680723a1140b177c50",
      "tree": "8c49b51867769176b088f5ee2dbecd69c188464f",
      "parents": [
        "fe388eedca9f46ed3fee9579258acecd93e88641"
      ],
      "author": {
        "name": "Pannag Sanketi",
        "email": "psanketi@google.com",
        "time": "Fri Jul 01 17:39:39 2011 -0700"
      },
      "committer": {
        "name": "Pannag Sanketi",
        "email": "psanketi@google.com",
        "time": "Fri Jul 22 14:17:25 2011 -0700"
      },
      "message": "Connect MediaRecorder Native to SurfaceMediaSource\n\nMaking a connection from MediaRecorder Native layer to the\nSurfaceMediaSource for the purpose of encoding GL Frames. This will be\ncalled from the java side inside the Mobile Filter Framework.\n\nThe mediarecorder native layer (client), when set the videosource to\noption VIDEO_SOURCE_FRAMES, asks the StageFrightRecorder on the mediaserver\nside to create a SurfaceMediaSource object and pass it back as a\nsp\u003cISurfaceTexture\u003e object. Using that, the client side will dequeue and\nqueue buffers. Connecting the GL Frames to the obtained\nsp\u003cISurfaceTexture\u003e is not part of this CL.\n\nRelated to bug id: 4529323\n\nChange-Id: I651bec718dd5b935779e7d7a050b841c2d0b0fcd\n"
    },
    {
      "commit": "85eafc680a0bf5e0253cf611ac525769fc9bef3e",
      "tree": "c5e69ab10dd15be3b464db81b8f4e9382d8ea8e8",
      "parents": [
        "fe388eedca9f46ed3fee9579258acecd93e88641"
      ],
      "author": {
        "name": "Jamie Gennis",
        "email": "jgennis@google.com",
        "time": "Fri Jul 22 14:00:37 2011 -0700"
      },
      "committer": {
        "name": "Jamie Gennis",
        "email": "jgennis@google.com",
        "time": "Fri Jul 22 14:02:09 2011 -0700"
      },
      "message": "SurfaceMediaSource: remove getAllocator method\n\nThis change removes the getAllocator method from SurfaceMediaSource\nbecause that method is no longer a part of the ISurfaceTexture\ninterface.\n\nChange-Id: I0e2f0bc3bc1c8cd3c1b4b14246f07b9b4e3066c3\n"
    },
    {
      "commit": "fe388eedca9f46ed3fee9579258acecd93e88641",
      "tree": "cf42a7744c9f75c78ab382a210a9217204e3d4d0",
      "parents": [
        "10b7197cf9016093bdff20b6f7768543fd1c5720",
        "1a2fafbaa36390a06cc9a066fcbe147c8c47ea77"
      ],
      "author": {
        "name": "Pannag Sanketi",
        "email": "psanketi@google.com",
        "time": "Fri Jul 22 11:49:36 2011 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Jul 22 11:49:36 2011 -0700"
      },
      "message": "Merge \"Renaming SurfaceEncoder to SurfaceMediaSource\""
    },
    {
      "commit": "10b7197cf9016093bdff20b6f7768543fd1c5720",
      "tree": "1e2a7d50f8b2dc8638ab5c5852e0c19d1e20b472",
      "parents": [
        "10681df94d517bb7186fff927f345fa2e01de8e1",
        "3399b7267185646c69b04352211fca4fad9d7547"
      ],
      "author": {
        "name": "Pannag Sanketi",
        "email": "psanketi@google.com",
        "time": "Fri Jul 22 11:49:21 2011 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Jul 22 11:49:21 2011 -0700"
      },
      "message": "Merge \"Adding SurfaceEncoder for encoding FilterFrames\""
    },
    {
      "commit": "10681df94d517bb7186fff927f345fa2e01de8e1",
      "tree": "07ae472671a82629a2bdf35d554e2faab7d479e0",
      "parents": [
        "47a55f57090847e6e6683ab25291506f8a66f759",
        "edc15ad8fcde12dc4f642d80d077239b1532eeca"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Fri Jul 22 11:04:07 2011 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Jul 22 11:04:07 2011 -0700"
      },
      "message": "Merge \"Fix issue 4988574: 8 bit PCM audio playback broken.\""
    },
    {
      "commit": "47a55f57090847e6e6683ab25291506f8a66f759",
      "tree": "ce4661749fc54cda2de186a9ca09698b271934a7",
      "parents": [
        "5bc965b1ff21c64e5f30130957bfe96300e15ed3",
        "0683eba6b35c396c21f10e926709f2f8fc05f090"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Fri Jul 22 10:25:24 2011 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Jul 22 10:25:24 2011 -0700"
      },
      "message": "Merge \"Retry datasource fetches a few times before giving up (NuCachedSource2).\""
    },
    {
      "commit": "5bc965b1ff21c64e5f30130957bfe96300e15ed3",
      "tree": "73244b707825d0c65147da60e3b5e0a306975008",
      "parents": [
        "59d49c0b3b56b24c5b6d98cdfdcd75c537322f2e",
        "fada58a21be01913a8e3f25c898d26d2fc8ba630"
      ],
      "author": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Fri Jul 22 10:09:22 2011 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Jul 22 10:09:22 2011 -0700"
      },
      "message": "Merge \"Log setVideoSurface() and setVideoSurfaceTexture() failures.\""
    },
    {
      "commit": "0683eba6b35c396c21f10e926709f2f8fc05f090",
      "tree": "2cb1f37218e73941c6f7bb575bb972696e362ef4",
      "parents": [
        "59d49c0b3b56b24c5b6d98cdfdcd75c537322f2e"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Mon Jul 18 13:47:55 2011 -0700"
      },
      "committer": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Fri Jul 22 08:17:41 2011 -0700"
      },
      "message": "Retry datasource fetches a few times before giving up (NuCachedSource2).\n\nChange-Id: I147fc18ef55bc89d2e2fee69b7869c45abbfdd6b\nrelated-to-bug: 3405354\n"
    },
    {
      "commit": "deaba1c70b8ebdd1fffb40665a40e0593bd9cf3e",
      "tree": "9ea17f04569e5e80212c455d3b1098db5df1753d",
      "parents": [
        "3a1f8a404b38aaa82d57c77cb83e48665e66e553"
      ],
      "author": {
        "name": "Kristian Monsen",
        "email": "kristianm@google.com",
        "time": "Fri Jul 22 14:11:31 2011 +0100"
      },
      "committer": {
        "name": "Kristian Monsen",
        "email": "kristianm@google.com",
        "time": "Fri Jul 22 14:11:31 2011 +0100"
      },
      "message": "Fix for bug 5049763 HLS: Cookies set in main playlist request aren\u0027t being passed to subsequent HTTP requests\n\nCookies should be store between requests in memory with this.\n\nTell me if you want to store the cookies on disk as well.\n\nChange-Id: I9afe5796a3d395afcf54d669c86cf7da432f8d9a\n"
    },
    {
      "commit": "edc15ad8fcde12dc4f642d80d077239b1532eeca",
      "tree": "8ca296accb3baf0a2956d6587c611c65914ab331",
      "parents": [
        "a1d92359056176b6f6646efc918e0587e3de2b6f"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Thu Jul 21 19:35:01 2011 -0700"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Thu Jul 21 21:00:46 2011 -0700"
      },
      "message": "Fix issue 4988574: 8 bit PCM audio playback broken.\n\nFixed regression in audio track control block frame size\ncalculation introduced by commit c310dcb.\n\nChange-Id: Ia731b946ae4e43316b98d80229e3b08a696e47d6\n"
    },
    {
      "commit": "fada58a21be01913a8e3f25c898d26d2fc8ba630",
      "tree": "8a7fb66ffcc81c28e8d7aa4f7ec586fdfc42ba97",
      "parents": [
        "8ebe5be6b0b3caa7d9d6277a1216ed786bd1e66a"
      ],
      "author": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Thu Jul 21 17:32:55 2011 -0700"
      },
      "committer": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Thu Jul 21 17:38:18 2011 -0700"
      },
      "message": "Log setVideoSurface() and setVideoSurfaceTexture() failures.\n\nChange-Id: Iaea34e74a0cf569fc85b926949253dea6baa6142\nrelated-to-bug: 5063370\n"
    },
    {
      "commit": "1a2fafbaa36390a06cc9a066fcbe147c8c47ea77",
      "tree": "abbaad7cc458df1a1adf0e63d47ce0e9b4de63fa",
      "parents": [
        "3399b7267185646c69b04352211fca4fad9d7547"
      ],
      "author": {
        "name": "Pannag Sanketi",
        "email": "psanketi@google.com",
        "time": "Thu Jun 30 15:30:03 2011 -0700"
      },
      "committer": {
        "name": "Pannag Sanketi",
        "email": "psanketi@google.com",
        "time": "Thu Jul 21 17:12:50 2011 -0700"
      },
      "message": "Renaming SurfaceEncoder to SurfaceMediaSource\n\nRelated to bug id: 4529323\n\nChange-Id: Id820d45a536bd2c65e0a59def564eb5b3ea4a71c\n"
    },
    {
      "commit": "3399b7267185646c69b04352211fca4fad9d7547",
      "tree": "eb0509a8f964517d9d75b6c534bdf84955a61393",
      "parents": [
        "59d49c0b3b56b24c5b6d98cdfdcd75c537322f2e"
      ],
      "author": {
        "name": "Pannag Sanketi",
        "email": "psanketi@google.com",
        "time": "Fri Jun 10 18:30:30 2011 -0700"
      },
      "committer": {
        "name": "Pannag Sanketi",
        "email": "psanketi@google.com",
        "time": "Thu Jul 21 17:12:50 2011 -0700"
      },
      "message": "Adding SurfaceEncoder for encoding FilterFrames\n\nAdding SurfaceEncoder which can be used to encode\ncustom frame data. In a sense, it is reverse\nof what SurfaceTexture does.\n\nSurfaceEncoder takes in frames from a native window and\npasses them to an encoder, thus acting like a MediaSource.\nIt uses GRAlloc buffers underneath for passing data.\nThe client side sets the geometry, format in the beginning,\nwhich cannot be changed while the recording is going on.\n\nCurrently, there is no common pixel format that both\nGRAlloc and HAL understand.\nAlso, the encoder cannot encode using the data from the GRAlloc\nbuffers.\n\nThe SurfaceEncoder_test examines mainly the buffer passage\nsince true encoding cannot be done at this point.\nSimpleDummyRecorder \u0027reads\u0027 the frames in the same thread\nas the start(), whereas DummyRecorder \u0027reads\u0027 in a separate\nthread much like the MPEG4Writer. The test with DummyRecorder\nis much closer to the real encoding implementation.\n\nRelated to bug id: 4529323\n\nChange-Id: I58ec19a150f8fe4d6195196dc44f55002b46c7c8\n"
    },
    {
      "commit": "59d49c0b3b56b24c5b6d98cdfdcd75c537322f2e",
      "tree": "db0e1d5a346345060677f1cb3cf659ed1ae3011a",
      "parents": [
        "a1d92359056176b6f6646efc918e0587e3de2b6f"
      ],
      "author": {
        "name": "Pannag Sanketi",
        "email": "psanketi@google.com",
        "time": "Tue Jul 19 17:14:53 2011 -0700"
      },
      "committer": {
        "name": "Pannag Sanketi",
        "email": "psanketi@google.com",
        "time": "Thu Jul 21 17:12:49 2011 -0700"
      },
      "message": "Adding AndoirdOpaque Colorformat to OMX\n\nAdding an enum to indicate an android opaque OMX\ncolorformat. This will inform the encoder that\nthe actual colorformat will be relayed by the\nFrames read from the GRAlloc Buffers\n\nRelated to bug id: 4529323\n\nChange-Id: Iddc5bd1ce8ca2b2506a57aadf5fc91ff0c7b78ef\n"
    },
    {
      "commit": "a1d92359056176b6f6646efc918e0587e3de2b6f",
      "tree": "cafa074b61ede4038193aa40392257665e64259f",
      "parents": [
        "3a1f8a404b38aaa82d57c77cb83e48665e66e553",
        "cabd5f867ec69c0dfe8333cba46323cb58917402"
      ],
      "author": {
        "name": "Hong Teng",
        "email": "hongteng@google.com",
        "time": "Thu Jul 21 11:13:43 2011 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Jul 21 11:13:43 2011 -0700"
      },
      "message": "Merge \"fix for issue  4142219 Don\u0027t hard code platform-specific limitations-jni/java part\""
    },
    {
      "commit": "3a1f8a404b38aaa82d57c77cb83e48665e66e553",
      "tree": "9e514035df9287a884ea0e8fdb8e1f00d3786052",
      "parents": [
        "0cd7889d37cc60300dceaa975dab041fd35e34fd",
        "7188e55f54a43c55fd6b96454720c447f1dc454e"
      ],
      "author": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Wed Jul 20 18:03:47 2011 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Jul 20 18:03:47 2011 -0700"
      },
      "message": "Merge \"Untangle MediaScanner error handling. Bug: 5056917\""
    },
    {
      "commit": "0cd7889d37cc60300dceaa975dab041fd35e34fd",
      "tree": "0ba39dc6cb61ae91775f6f9c8b6bc2bf3561b018",
      "parents": [
        "afa9771b5abe7646077a8353f8bf710506803f7a",
        "7c7f10bd4fda9a084e5e7f0eb3a040dfcbf01745"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Wed Jul 20 17:45:37 2011 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Jul 20 17:45:37 2011 -0700"
      },
      "message": "Merge \"Audio framework: support for audio pre processing\""
    },
    {
      "commit": "7188e55f54a43c55fd6b96454720c447f1dc454e",
      "tree": "ce77a06ad12fc66ce180fdbf882c011393d472d9",
      "parents": [
        "50d42da58a88dcdb082cff079766af71c0871470"
      ],
      "author": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Wed Jul 20 16:38:43 2011 -0700"
      },
      "committer": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Wed Jul 20 17:33:13 2011 -0700"
      },
      "message": "Untangle MediaScanner error handling.\nBug: 5056917\n\nChange-Id: I1a7a73579e3ba4e9709459329fc1901a28b0f4b1\n"
    },
    {
      "commit": "cabd5f867ec69c0dfe8333cba46323cb58917402",
      "tree": "d6501c73c3f5eef40c5232b6f2bef7afeadb7dea",
      "parents": [
        "7dff060f29858d6db2464845bb9097ac5960bbe6"
      ],
      "author": {
        "name": "Hong Teng",
        "email": "hongteng@google.com",
        "time": "Wed Jul 06 18:33:09 2011 -0700"
      },
      "committer": {
        "name": "Hong Teng",
        "email": "hongteng@google.com",
        "time": "Wed Jul 20 16:51:39 2011 -0700"
      },
      "message": "fix for issue  4142219\nDon\u0027t hard code platform-specific limitations-jni/java part\n\nChange-Id: Icde261b1caf29a8cf552884c97f3c9d0b41741a3\n"
    },
    {
      "commit": "afa9771b5abe7646077a8353f8bf710506803f7a",
      "tree": "bbdbb53ee14ffa12b4431a240dd7361089bd4013",
      "parents": [
        "60c93010e8f96a179574ec66c00ec47a675319e3",
        "3bd3020c00ec8264ac1fe3870800f326487f9221"
      ],
      "author": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Wed Jul 20 16:08:32 2011 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Jul 20 16:08:32 2011 -0700"
      },
      "message": "Merge \"Let the media recording framework release the Camera object when it is the owner\""
    },
    {
      "commit": "3bd3020c00ec8264ac1fe3870800f326487f9221",
      "tree": "38d02556b8aef8369e7fb8ad0dd5c78d1c24c2dd",
      "parents": [
        "8ebe5be6b0b3caa7d9d6277a1216ed786bd1e66a"
      ],
      "author": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Tue Jul 19 20:24:22 2011 -0700"
      },
      "committer": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Wed Jul 20 15:15:31 2011 -0700"
      },
      "message": "Let the media recording framework release the Camera object when it is the owner\n\nrelated-to-bug: 5050535,5036813,5051707\n\nChange-Id: I88e10f65f087931e7f95ab26a018d59f7361103e\n"
    },
    {
      "commit": "60c93010e8f96a179574ec66c00ec47a675319e3",
      "tree": "17be9d6aa7a12b4f98ae0ff7dd22c33b15cd4c38",
      "parents": [
        "7dff060f29858d6db2464845bb9097ac5960bbe6",
        "bea47bc22b2939b324b47fd0d70e6c7e6fbc82d2"
      ],
      "author": {
        "name": "Jamie Gennis",
        "email": "jgennis@google.com",
        "time": "Wed Jul 20 10:47:04 2011 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Jul 20 10:47:04 2011 -0700"
      },
      "message": "Merge \"MediaPlayer: add a disconnect from ANativeWindow\""
    },
    {
      "commit": "7dff060f29858d6db2464845bb9097ac5960bbe6",
      "tree": "e0e9b1c40f8034676cfaaa2e0b6429a2d22f3212",
      "parents": [
        "50d42da58a88dcdb082cff079766af71c0871470",
        "f3dadf2204119eb7ef263535d53d36cd14b9bf47"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Wed Jul 20 08:05:06 2011 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Jul 20 08:05:06 2011 -0700"
      },
      "message": "Merge \"Content found in the wild violated the MPEG4 systems specs\""
    },
    {
      "commit": "f3dadf2204119eb7ef263535d53d36cd14b9bf47",
      "tree": "ac62cd43b0f076043472cb9ae3b91ac7e065e6cd",
      "parents": [
        "8ebe5be6b0b3caa7d9d6277a1216ed786bd1e66a"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Tue Jul 19 16:05:50 2011 -0700"
      },
      "committer": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Tue Jul 19 16:05:50 2011 -0700"
      },
      "message": "Content found in the wild violated the MPEG4 systems specs\n\nbut other players apparently worked around it as well, so we do to.\n\nChange-Id: I8269d2344b010d1d704028c8a9c05bddab53828d\nrelated-to-bug: 5049979\n"
    },
    {
      "commit": "50d42da58a88dcdb082cff079766af71c0871470",
      "tree": "cd2562c2e056af9ee363cff533ec804d544ea623",
      "parents": [
        "2cd60e3069e93c11676019c8405d3941cd2ac5b7",
        "d6a46a6bda23667e06ee5ccca3781e407c7d1204"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Tue Jul 19 15:33:25 2011 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Jul 19 15:33:25 2011 -0700"
      },
      "message": "Merge \"More HLS fixes\""
    },
    {
      "commit": "d6a46a6bda23667e06ee5ccca3781e407c7d1204",
      "tree": "87b9586bceaf9a11880ff9ee1d3150c85c5ed5ea",
      "parents": [
        "8ebe5be6b0b3caa7d9d6277a1216ed786bd1e66a"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Tue Jul 19 15:04:53 2011 -0700"
      },
      "committer": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Tue Jul 19 15:04:53 2011 -0700"
      },
      "message": "More HLS fixes\n\nproperly expand URLs where the \"new\" URL is an absolute path.\nproperly include any extra headers even when fetching the key files.\n\nChange-Id: I7cd8879015ea8e3d3e2334f4e7e16b8c1a5d48e9\n"
    },
    {
      "commit": "bea47bc22b2939b324b47fd0d70e6c7e6fbc82d2",
      "tree": "2a6573e5c6699955c538e055b7dc4039011c7034",
      "parents": [
        "9bc7af17974f448291a44912566ec7472a0d798b"
      ],
      "author": {
        "name": "Jamie Gennis",
        "email": "jgennis@google.com",
        "time": "Tue Jul 19 14:50:43 2011 -0700"
      },
      "committer": {
        "name": "Jamie Gennis",
        "email": "jgennis@google.com",
        "time": "Tue Jul 19 14:50:43 2011 -0700"
      },
      "message": "MediaPlayer: add a disconnect from ANativeWindow\n\nThis change makes MediaPlayer::disconnect disconnect from the\nANativeWindow once the player has been disconnected.\n\nChange-Id: I6744559030d1edc520cf77402d1f5ce841742340\n"
    },
    {
      "commit": "2cd60e3069e93c11676019c8405d3941cd2ac5b7",
      "tree": "e32f72c949478de5c93885b2518dde05e6540162",
      "parents": [
        "9bc7af17974f448291a44912566ec7472a0d798b",
        "7574da5a501fc9289fee49fdaf1fdb9d47dae2b6"
      ],
      "author": {
        "name": "Wu-cheng Li",
        "email": "wuchengli@google.com",
        "time": "Tue Jul 19 14:47:20 2011 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Jul 19 14:47:20 2011 -0700"
      },
      "message": "Merge \"Disconnect the native window in CameraService::Client::disconnect.\""
    },
    {
      "commit": "7574da5a501fc9289fee49fdaf1fdb9d47dae2b6",
      "tree": "091907efea3f17c12e2cb199679ba138991e8641",
      "parents": [
        "8ebe5be6b0b3caa7d9d6277a1216ed786bd1e66a"
      ],
      "author": {
        "name": "Wu-cheng Li",
        "email": "wuchengli@google.com",
        "time": "Wed Jul 20 05:35:02 2011 +0800"
      },
      "committer": {
        "name": "Wu-cheng Li",
        "email": "wuchengli@google.com",
        "time": "Wed Jul 20 05:35:02 2011 +0800"
      },
      "message": "Disconnect the native window in CameraService::Client::disconnect.\n\nbug:5048372\nChange-Id: I6886907a672ddf5580b988ca5bc13e3dc26d4385\n"
    },
    {
      "commit": "9bc7af17974f448291a44912566ec7472a0d798b",
      "tree": "9df5ca7ddd582ba6d76478bb48982734ace645ad",
      "parents": [
        "2e460c5b7f48aaabff33698ba6b11b04906eefa8"
      ],
      "author": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Mon Jul 18 16:15:08 2011 -0700"
      },
      "committer": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Tue Jul 19 13:05:12 2011 -0700"
      },
      "message": "use SurfaceTexture new scaling mode in SF\n\nSF now obeys SurfaceTexture\u0027s scaling mode instead\nof inferring it from the buffer\u0027s size\n\nChange-Id: I4d50e9851abedd7e64bfcfc8af9eefb9fb668529\n"
    },
    {
      "commit": "2e460c5b7f48aaabff33698ba6b11b04906eefa8",
      "tree": "4999170acae685fbb2885f4b485da95121add79c",
      "parents": [
        "8ebe5be6b0b3caa7d9d6277a1216ed786bd1e66a"
      ],
      "author": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Mon Jul 18 15:56:20 2011 -0700"
      },
      "committer": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Tue Jul 19 09:42:42 2011 -0700"
      },
      "message": "Remove PV AVC decoder\n\nChange-Id: Icf056c852f95b5d6a07473728ddbf5b641990381\n"
    },
    {
      "commit": "8ebe5be6b0b3caa7d9d6277a1216ed786bd1e66a",
      "tree": "19ec47d33d6848a88a9e3f9451f07c4efc5d5bd4",
      "parents": [
        "d36635c4d90e8b891c7197a92370796635b7684c",
        "b2ac59b3a1748eef58c228a7e808d40bd1741dcf"
      ],
      "author": {
        "name": "Conley Owens",
        "email": "cco3@android.com",
        "time": "Mon Jul 18 16:57:04 2011 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Mon Jul 18 16:57:04 2011 -0700"
      },
      "message": "am e5143d6c: am a4aef41a: am a74774fd: am 4d8f6a38: Merge \"stagefright aacenc: Mark codeWord as UWord16\"\n\n* commit \u0027e5143d6c09f0e9a960661a2b0a5916c33fcafc4d\u0027:\n  stagefright aacenc: Mark codeWord as UWord16\n"
    },
    {
      "commit": "b2ac59b3a1748eef58c228a7e808d40bd1741dcf",
      "tree": "8136f77079960d466a895235d601d97d258a4f06",
      "parents": [
        "0ab6faaca562abcb1d116824198388f5a3c8c73d",
        "e82c319beb2275ad0832cf77252943e16df04b1a"
      ],
      "author": {
        "name": "Conley Owens",
        "email": "cco3@android.com",
        "time": "Mon Jul 18 16:55:33 2011 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Mon Jul 18 16:55:33 2011 -0700"
      },
      "message": "am a4aef41a: am a74774fd: am 4d8f6a38: Merge \"stagefright aacenc: Mark codeWord as UWord16\"\n\n* commit \u0027a4aef41a74a69b0296b88361ffb33d0470a26362\u0027:\n  stagefright aacenc: Mark codeWord as UWord16\n"
    },
    {
      "commit": "e82c319beb2275ad0832cf77252943e16df04b1a",
      "tree": "883e55246aee2ad0ad312023a8e6b8b68b4e0587",
      "parents": [
        "6f1dd23b28752fdf47795c6575c537943711b1c1",
        "d94bb8b524e09f978b6a16699b968628ff279208"
      ],
      "author": {
        "name": "Conley Owens",
        "email": "cco3@android.com",
        "time": "Mon Jul 18 16:52:26 2011 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Mon Jul 18 16:52:26 2011 -0700"
      },
      "message": "am 4d8f6a38: Merge \"stagefright aacenc: Mark codeWord as UWord16\"\n\n* commit \u00274d8f6a38e7268e29e189cb4173f42c7aa5b320a3\u0027:\n  stagefright aacenc: Mark codeWord as UWord16\n"
    },
    {
      "commit": "d94bb8b524e09f978b6a16699b968628ff279208",
      "tree": "e26b3b60a6baadc8faa85c27002f0db0eadab7fe",
      "parents": [
        "a77079f09897f27e97b073d3835fb4b62949a159",
        "99bc0510f9152fa88508a1ba1d2d158961fcefe0"
      ],
      "author": {
        "name": "Conley Owens",
        "email": "cco3@android.com",
        "time": "Mon Jul 18 16:49:43 2011 -0700"
      },
      "committer": {
        "name": "Android Code Review",
        "email": "code-review@android.com",
        "time": "Mon Jul 18 16:49:43 2011 -0700"
      },
      "message": "Merge \"stagefright aacenc: Mark codeWord as UWord16\""
    },
    {
      "commit": "d36635c4d90e8b891c7197a92370796635b7684c",
      "tree": "56b11858e0bfa1cac5f98f0fd9437c0d2703c04d",
      "parents": [
        "8ebcf0222143b2b59d24946ef260894f367e096c",
        "0ab6faaca562abcb1d116824198388f5a3c8c73d"
      ],
      "author": {
        "name": "Deckard Autoverifier",
        "email": "deckard@android.com",
        "time": "Mon Jul 18 15:46:26 2011 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Mon Jul 18 15:46:26 2011 -0700"
      },
      "message": "am 3ab6ccda: am 2acddc54: am 89bac182: am 88409911: Merge \"stagefright: Include stdlib.h for malloc/free\"\n\n* commit \u00273ab6ccda447c605c35c8854a2ec8c49c2a0653a6\u0027:\n  stagefright: Include stdlib.h for malloc/free\n"
    },
    {
      "commit": "8ebcf0222143b2b59d24946ef260894f367e096c",
      "tree": "62809f612d4f436c91ffe742d3ba72fd53b6c123",
      "parents": [
        "7b9bcbb0975049c05c3b4a4048802807433ace42",
        "9f8f2f857b5791b10f5da9b5cc04d3d8f7988c29"
      ],
      "author": {
        "name": "Deckard Autoverifier",
        "email": "deckard@android.com",
        "time": "Mon Jul 18 15:46:21 2011 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Mon Jul 18 15:46:21 2011 -0700"
      },
      "message": "am b32af642: am 31140598: am 16db83c2: am eb07c531: Merge \"stagefright amrwbenc: Remove a duplicate, unused file\"\n\n* commit \u0027b32af642454f3113cb1539821eb3b0dbf4174974\u0027:\n  stagefright amrwbenc: Remove a duplicate, unused file\n"
    },
    {
      "commit": "7b9bcbb0975049c05c3b4a4048802807433ace42",
      "tree": "bf24958fbeab05b70fb7a7de5af42282c6c5f0e7",
      "parents": [
        "bb29abfe798e0a3329380481834e5839db141902",
        "54b0ae0dc7ba9be652285250f4976d8db89c30ee"
      ],
      "author": {
        "name": "Deckard Autoverifier",
        "email": "deckard@android.com",
        "time": "Mon Jul 18 15:46:18 2011 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Mon Jul 18 15:46:18 2011 -0700"
      },
      "message": "am d4dee1a5: am 29fd8cdb: am 80ef1745: am c06c3603: Merge \"stagefright aacenc: Make the mem_malloc function 64-bit safe\"\n\n* commit \u0027d4dee1a57fdcd1bd1e7c621163e89039cf88d9f9\u0027:\n  stagefright aacenc: Make the mem_malloc function 64-bit safe\n"
    },
    {
      "commit": "bb29abfe798e0a3329380481834e5839db141902",
      "tree": "0907a6c277de382747bb7e4aacf8f8bd7ce4dd84",
      "parents": [
        "630e65cc858d7592446c5f9174e713e29d58588b",
        "c57d9ff30a5bff931f8ffa8d3fa390628268a8a8"
      ],
      "author": {
        "name": "Deckard Autoverifier",
        "email": "deckard@android.com",
        "time": "Mon Jul 18 15:46:14 2011 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Mon Jul 18 15:46:14 2011 -0700"
      },
      "message": "am b7f0d825: am 691257b1: am 68e37dac: am 55f115a3: Merge \"stagefright: Only use __int64 on MSVC, not on all win32 compilers\"\n\n* commit \u0027b7f0d825c56dced10bb7df7cfc624ef9ebffe21c\u0027:\n  stagefright: Only use __int64 on MSVC, not on all win32 compilers\n"
    },
    {
      "commit": "0ab6faaca562abcb1d116824198388f5a3c8c73d",
      "tree": "771d0d65e2a197c41cd756d3e657b3dedd58f2ae",
      "parents": [
        "9f8f2f857b5791b10f5da9b5cc04d3d8f7988c29",
        "6f1dd23b28752fdf47795c6575c537943711b1c1"
      ],
      "author": {
        "name": "Deckard Autoverifier",
        "email": "deckard@android.com",
        "time": "Mon Jul 18 15:44:03 2011 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Mon Jul 18 15:44:03 2011 -0700"
      },
      "message": "am 2acddc54: am 89bac182: am 88409911: Merge \"stagefright: Include stdlib.h for malloc/free\"\n\n* commit \u00272acddc54e1e7a9f41b4b5acc2e8984c46539425a\u0027:\n  stagefright: Include stdlib.h for malloc/free\n"
    },
    {
      "commit": "9f8f2f857b5791b10f5da9b5cc04d3d8f7988c29",
      "tree": "8adea39c01fd62be721d6680ec0f77d4e2deaae0",
      "parents": [
        "54b0ae0dc7ba9be652285250f4976d8db89c30ee",
        "4a028164ee8ce74a7872ce4bcce196b70d9eb4e2"
      ],
      "author": {
        "name": "Deckard Autoverifier",
        "email": "deckard@android.com",
        "time": "Mon Jul 18 15:44:01 2011 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Mon Jul 18 15:44:01 2011 -0700"
      },
      "message": "am 31140598: am 16db83c2: am eb07c531: Merge \"stagefright amrwbenc: Remove a duplicate, unused file\"\n\n* commit \u002731140598866c668047fc6dede7944e146aa21a0a\u0027:\n  stagefright amrwbenc: Remove a duplicate, unused file\n"
    },
    {
      "commit": "54b0ae0dc7ba9be652285250f4976d8db89c30ee",
      "tree": "2a28aa8e05831c6e1cb1a19e672926b9e683c1cd",
      "parents": [
        "c57d9ff30a5bff931f8ffa8d3fa390628268a8a8",
        "3bfc65a3ca36b2f1cec52b83e4f75147b41c27e0"
      ],
      "author": {
        "name": "Deckard Autoverifier",
        "email": "deckard@android.com",
        "time": "Mon Jul 18 15:43:58 2011 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Mon Jul 18 15:43:58 2011 -0700"
      },
      "message": "am 29fd8cdb: am 80ef1745: am c06c3603: Merge \"stagefright aacenc: Make the mem_malloc function 64-bit safe\"\n\n* commit \u002729fd8cdbe554ca65c57dd9eea59dc57e3392acc3\u0027:\n  stagefright aacenc: Make the mem_malloc function 64-bit safe\n"
    },
    {
      "commit": "c57d9ff30a5bff931f8ffa8d3fa390628268a8a8",
      "tree": "22f75446cab9a07c419cfc987f880b66b368dc89",
      "parents": [
        "bd8299bd5471902596cc2a27dc9404bda92edfe6",
        "af7e9726a19d106494e96078dedfda7baaeb59cd"
      ],
      "author": {
        "name": "Deckard Autoverifier",
        "email": "deckard@android.com",
        "time": "Mon Jul 18 15:43:54 2011 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Mon Jul 18 15:43:54 2011 -0700"
      },
      "message": "am 691257b1: am 68e37dac: am 55f115a3: Merge \"stagefright: Only use __int64 on MSVC, not on all win32 compilers\"\n\n* commit \u0027691257b1812ffd8172b01c17b9ba23a48eb76594\u0027:\n  stagefright: Only use __int64 on MSVC, not on all win32 compilers\n"
    },
    {
      "commit": "6f1dd23b28752fdf47795c6575c537943711b1c1",
      "tree": "93875203ca253310783cf450acd6d9aa1ab445f5",
      "parents": [
        "4a028164ee8ce74a7872ce4bcce196b70d9eb4e2",
        "a77079f09897f27e97b073d3835fb4b62949a159"
      ],
      "author": {
        "name": "Deckard Autoverifier",
        "email": "deckard@android.com",
        "time": "Mon Jul 18 15:38:30 2011 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Mon Jul 18 15:38:30 2011 -0700"
      },
      "message": "am 88409911: Merge \"stagefright: Include stdlib.h for malloc/free\"\n\n* commit \u002788409911aebed6c3663e51d51fca67f527c0c2fb\u0027:\n  stagefright: Include stdlib.h for malloc/free\n"
    },
    {
      "commit": "4a028164ee8ce74a7872ce4bcce196b70d9eb4e2",
      "tree": "85eb07c9a5cd2d93e75fd6a6f598116af0621a1c",
      "parents": [
        "3bfc65a3ca36b2f1cec52b83e4f75147b41c27e0",
        "24123b996366a20bedab4dffbc69c8e439fe04d3"
      ],
      "author": {
        "name": "Deckard Autoverifier",
        "email": "deckard@android.com",
        "time": "Mon Jul 18 15:38:27 2011 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Mon Jul 18 15:38:27 2011 -0700"
      },
      "message": "am eb07c531: Merge \"stagefright amrwbenc: Remove a duplicate, unused file\"\n\n* commit \u0027eb07c531498f4dc881ad2b4d1a32cacab25950ff\u0027:\n  stagefright amrwbenc: Remove a duplicate, unused file\n"
    },
    {
      "commit": "3bfc65a3ca36b2f1cec52b83e4f75147b41c27e0",
      "tree": "951926865a1aaa2517df9f1c81e6b1d528d34a60",
      "parents": [
        "af7e9726a19d106494e96078dedfda7baaeb59cd",
        "e625479f58d7d9234c8ae7cb0c0a604bf43a9115"
      ],
      "author": {
        "name": "Deckard Autoverifier",
        "email": "deckard@android.com",
        "time": "Mon Jul 18 15:38:25 2011 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Mon Jul 18 15:38:25 2011 -0700"
      },
      "message": "am c06c3603: Merge \"stagefright aacenc: Make the mem_malloc function 64-bit safe\"\n\n* commit \u0027c06c3603e09a85136eb97d1d8ba1a49fcebae93b\u0027:\n  stagefright aacenc: Make the mem_malloc function 64-bit safe\n"
    },
    {
      "commit": "af7e9726a19d106494e96078dedfda7baaeb59cd",
      "tree": "45d20cf52a575b74695d3801a43e03b59efbc486",
      "parents": [
        "3259fc9acfc740a30b3a52bf70fe6e402d2d1010",
        "aacb82162005eec4c06cba90389eded2c189a448"
      ],
      "author": {
        "name": "Deckard Autoverifier",
        "email": "deckard@android.com",
        "time": "Mon Jul 18 15:38:22 2011 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Mon Jul 18 15:38:22 2011 -0700"
      },
      "message": "am 55f115a3: Merge \"stagefright: Only use __int64 on MSVC, not on all win32 compilers\"\n\n* commit \u002755f115a3214343c826acf27fcbc4bf2927049083\u0027:\n  stagefright: Only use __int64 on MSVC, not on all win32 compilers\n"
    },
    {
      "commit": "a77079f09897f27e97b073d3835fb4b62949a159",
      "tree": "b2c9be225f9c8008ccb26505b6eb111311fbd7ed",
      "parents": [
        "24123b996366a20bedab4dffbc69c8e439fe04d3",
        "ea1b2a40def72caa03a40460bf04911b0d9b4d46"
      ],
      "author": {
        "name": "Deckard Autoverifier",
        "email": "deckard@android.com",
        "time": "Mon Jul 18 15:23:41 2011 -0700"
      },
      "committer": {
        "name": "Android Code Review",
        "email": "code-review@android.com",
        "time": "Mon Jul 18 15:23:41 2011 -0700"
      },
      "message": "Merge \"stagefright: Include stdlib.h for malloc/free\""
    },
    {
      "commit": "24123b996366a20bedab4dffbc69c8e439fe04d3",
      "tree": "b2ad3d8799f95897763d147cc556849b4b4edb3d",
      "parents": [
        "e625479f58d7d9234c8ae7cb0c0a604bf43a9115",
        "17e5dcbf4b22a7dc1ae1a72d14cf5f8d747f1123"
      ],
      "author": {
        "name": "Deckard Autoverifier",
        "email": "deckard@android.com",
        "time": "Mon Jul 18 15:23:31 2011 -0700"
      },
      "committer": {
        "name": "Android Code Review",
        "email": "code-review@android.com",
        "time": "Mon Jul 18 15:23:31 2011 -0700"
      },
      "message": "Merge \"stagefright amrwbenc: Remove a duplicate, unused file\""
    },
    {
      "commit": "e625479f58d7d9234c8ae7cb0c0a604bf43a9115",
      "tree": "9567ca47b00cd30220e37ddb4f95b7ef754ed33e",
      "parents": [
        "aacb82162005eec4c06cba90389eded2c189a448",
        "267dbd822ff060843ce409c0f1b50f6d5468ea31"
      ],
      "author": {
        "name": "Deckard Autoverifier",
        "email": "deckard@android.com",
        "time": "Mon Jul 18 15:23:20 2011 -0700"
      },
      "committer": {
        "name": "Android Code Review",
        "email": "code-review@android.com",
        "time": "Mon Jul 18 15:23:20 2011 -0700"
      },
      "message": "Merge \"stagefright aacenc: Make the mem_malloc function 64-bit safe\""
    },
    {
      "commit": "aacb82162005eec4c06cba90389eded2c189a448",
      "tree": "675862db7b1b9e1ae2ce3718b82ccc189ab081a8",
      "parents": [
        "ac04df0bbb3a1b9627cbc0eb298a596c665a3e7c",
        "2a4592119fe1d303fff2f268fffe7a84f38f8027"
      ],
      "author": {
        "name": "Deckard Autoverifier",
        "email": "deckard@android.com",
        "time": "Mon Jul 18 15:23:09 2011 -0700"
      },
      "committer": {
        "name": "Android Code Review",
        "email": "code-review@android.com",
        "time": "Mon Jul 18 15:23:09 2011 -0700"
      },
      "message": "Merge \"stagefright: Only use __int64 on MSVC, not on all win32 compilers\""
    },
    {
      "commit": "630e65cc858d7592446c5f9174e713e29d58588b",
      "tree": "980f69c76a8501ef9294d57365d4b9c28fb513dc",
      "parents": [
        "4a621e6d3438876eb1d9001719c688a2329ee675",
        "0ed3ec00d0242c9dc77532fe0cf0082645b6662c"
      ],
      "author": {
        "name": "Jamie Gennis",
        "email": "jgennis@google.com",
        "time": "Mon Jul 18 15:19:20 2011 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Jul 18 15:19:20 2011 -0700"
      },
      "message": "Merge \"CameraService: (dis)connect from preview windows\""
    },
    {
      "commit": "4a621e6d3438876eb1d9001719c688a2329ee675",
      "tree": "10398f8db30ff9b7debc46edfb713037318669a6",
      "parents": [
        "5f05b87b673093064e64bb5ac532555f881f0ddc",
        "61c7ef5bde2c7ed94a078396aa65da67b47e5402"
      ],
      "author": {
        "name": "Jamie Gennis",
        "email": "jgennis@google.com",
        "time": "Mon Jul 18 15:18:43 2011 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Jul 18 15:18:43 2011 -0700"
      },
      "message": "Merge \"MediaPlayer: add ANativeWindow (dis)connect calls\""
    },
    {
      "commit": "5f05b87b673093064e64bb5ac532555f881f0ddc",
      "tree": "31666bc44c0df4ae95bf212299c571eb3be1ed09",
      "parents": [
        "db4d3717b4677b3239546a248dc0a7d82db4ba50",
        "bd8299bd5471902596cc2a27dc9404bda92edfe6"
      ],
      "author": {
        "name": "Conley Owens",
        "email": "cco3@android.com",
        "time": "Mon Jul 18 12:55:22 2011 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Mon Jul 18 12:55:22 2011 -0700"
      },
      "message": "am f139965e: (-s ours) am 45ddd425: am 3edba93f: am 98fcc404: Merge \"stagefright aacenc/amrwbenc: Remove trailing whitespace\"\n\n* commit \u0027f139965e4acc8eadb57f1d18d34ea3a89ab622d0\u0027:\n  stagefright aacenc/amrwbenc: Remove trailing whitespace\n"
    },
    {
      "commit": "bd8299bd5471902596cc2a27dc9404bda92edfe6",
      "tree": "eeebac43c081c7d3430b167567e09fde6facc95a",
      "parents": [
        "da494b94120bad138a2cc4eb7dac0557546ae519",
        "3259fc9acfc740a30b3a52bf70fe6e402d2d1010"
      ],
      "author": {
        "name": "Conley Owens",
        "email": "cco3@android.com",
        "time": "Mon Jul 18 12:47:50 2011 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Mon Jul 18 12:47:50 2011 -0700"
      },
      "message": "am 45ddd425: am 3edba93f: am 98fcc404: Merge \"stagefright aacenc/amrwbenc: Remove trailing whitespace\"\n\n* commit \u002745ddd42544167494cee7213ecddcb6f8057c86c0\u0027:\n  stagefright aacenc/amrwbenc: Remove trailing whitespace\n"
    },
    {
      "commit": "3259fc9acfc740a30b3a52bf70fe6e402d2d1010",
      "tree": "5daf8e7477dfb47dc0d15811c905113f8e7054c7",
      "parents": [
        "dab863f7585a2b2c2e10119afd7c4bab1e920afd",
        "ac04df0bbb3a1b9627cbc0eb298a596c665a3e7c"
      ],
      "author": {
        "name": "Conley Owens",
        "email": "cco3@android.com",
        "time": "Mon Jul 18 12:42:42 2011 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Mon Jul 18 12:42:42 2011 -0700"
      },
      "message": "am 98fcc404: Merge \"stagefright aacenc/amrwbenc: Remove trailing whitespace\"\n\n* commit \u002798fcc4041d35831c7a65a6e2f0e61021e0fb37e2\u0027:\n  stagefright aacenc/amrwbenc: Remove trailing whitespace\n"
    },
    {
      "commit": "ac04df0bbb3a1b9627cbc0eb298a596c665a3e7c",
      "tree": "8cb320f5defa5899819155e5b168ebd66ec31ccf",
      "parents": [
        "2c32a92c84445d312b0dee4c82f84c036f2ca651",
        "f3664ae9369a861ffbc2354e8e93e48983802062"
      ],
      "author": {
        "name": "Conley Owens",
        "email": "cco3@android.com",
        "time": "Mon Jul 18 12:37:16 2011 -0700"
      },
      "committer": {
        "name": "Android Code Review",
        "email": "code-review@android.com",
        "time": "Mon Jul 18 12:37:16 2011 -0700"
      },
      "message": "Merge \"stagefright aacenc/amrwbenc: Remove trailing whitespace\""
    }
  ],
  "next": "db4d3717b4677b3239546a248dc0a7d82db4ba50"
}
