)]}'
{
  "log": [
    {
      "commit": "cdaaf320a1db27a7045fafa4d849c20daa97c146",
      "tree": "7ab550df2905d6784ade5029038f05603e0063e5",
      "parents": [
        "4acdadbd8195f4fb21ff4cb72f09f088097ddf3b"
      ],
      "author": {
        "name": "Mathias Agopian",
        "email": "pixelflinger@google.com",
        "time": "Mon Apr 05 16:21:53 2010 -0700"
      },
      "committer": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Tue Apr 20 13:36:29 2010 -0700"
      },
      "message": "add support for up to 16 buffers per surface\n\nalso increase the dirtyregion size from 1 to 6 rectangles.\nOverall we now need 27KiB process instead of 4KiB\n\nChange-Id: Iebda5565015158f49d9ca8dbcf55e6ad04855be3\n"
    },
    {
      "commit": "4acdadbd8195f4fb21ff4cb72f09f088097ddf3b",
      "tree": "21b0618032478f7f9e2faa9734a5ebc642a8c55c",
      "parents": [
        "cbe4b2cb591b5e7a6a25ee4ef85aaa61c537fef0",
        "27fde958c8e8e6a998ec7a28d32b0aad97662dee"
      ],
      "author": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Wed Apr 14 12:11:12 2010 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Wed Apr 14 12:11:12 2010 -0700"
      },
      "message": "am 6852b198: am d3d445b1: Merge \"Use PV_PLAYER to handle RTSP streaming\" into froyo\n\nMerge commit \u00276852b198fbedd9378ed79ca6528a4d6f33b0b677\u0027 into kraken\n\n* commit \u00276852b198fbedd9378ed79ca6528a4d6f33b0b677\u0027:\n  Use PV_PLAYER to handle RTSP streaming\n"
    },
    {
      "commit": "cbe4b2cb591b5e7a6a25ee4ef85aaa61c537fef0",
      "tree": "40445880058f40b9919f93b4edb4e26df2f02610",
      "parents": [
        "53fbf1d2eebd09e14a8995f51c47788670dbab1e"
      ],
      "author": {
        "name": "Jean-Baptiste Queru",
        "email": "jbq@google.com",
        "time": "Wed Apr 14 10:40:28 2010 -0700"
      },
      "committer": {
        "name": "Jean-Baptiste Queru",
        "email": "jbq@google.com",
        "time": "Wed Apr 14 10:40:28 2010 -0700"
      },
      "message": "fix unintentional drift\n\nChange-Id: I0bbf3d3f95296a41d71558d8de1ed2ed021f21cf\n"
    },
    {
      "commit": "27fde958c8e8e6a998ec7a28d32b0aad97662dee",
      "tree": "8e54465cfbb6b009d840a3d82aeaf3e11e125561",
      "parents": [
        "b9dbba9285fb406bc6eb87779c8bfc405269b6f2"
      ],
      "author": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Tue Apr 13 21:33:26 2010 -0700"
      },
      "committer": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Wed Apr 14 08:57:14 2010 -0700"
      },
      "message": "Use PV_PLAYER to handle RTSP streaming\n\nbug - 2594865\n\nChange-Id: Ice5b89b1d53bbc4da033892fe545bdf51ac7267f\n"
    },
    {
      "commit": "53fbf1d2eebd09e14a8995f51c47788670dbab1e",
      "tree": "850d6c2fbfee87c4a3677563695a5d4336be48ea",
      "parents": [
        "73c30c5236858b72b74727bc627628672553add9",
        "b1c9bd26a3b916d2f6ca7cda1edab92f48da16c8"
      ],
      "author": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Tue Apr 13 16:23:05 2010 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Tue Apr 13 16:23:05 2010 -0700"
      },
      "message": "am c33f583b: am 4f3257cf: am dd684af8: Merge \"Snif more 3GPP file types according to http://www.ftyps.com/3gpp.html\" into froyo\n"
    },
    {
      "commit": "73c30c5236858b72b74727bc627628672553add9",
      "tree": "5b0fe928f22b9f0e62202feb077bee368745e1f1",
      "parents": [
        "2f6ec4c07a830d9c22d4883e77592cf61d37baca",
        "07dd5a5a9cf8ea7c48473874b34d0dc6c5a6c231"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Tue Apr 13 16:05:49 2010 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Tue Apr 13 16:05:49 2010 -0700"
      },
      "message": "am d760afc3: am 30e9c2d4: am db281311: Merge \"Better diagnostics in the stagefright commandline tool, support for playing sine-tones using a filename of \"sine:[samplingrate]\", i.e. sine:44100. Support for playing audio through to the speakers by using \"-o\" in addition\n"
    },
    {
      "commit": "2f6ec4c07a830d9c22d4883e77592cf61d37baca",
      "tree": "0ef5ea62690b030cbd0c0deb6d9712bb11312984",
      "parents": [
        "d84201fcae22b71cfa9f4bca5ef4a4344d04fad5",
        "ea623087e93c6e27ce6284946f94c1d4aff7f91b"
      ],
      "author": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Tue Apr 13 16:05:42 2010 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Tue Apr 13 16:05:42 2010 -0700"
      },
      "message": "am ebaa935e: am 9bb8e65a: am c15f48d7: Merge \"Don\\\u0027t set encoder component role while we query decoders\" into froyo\n"
    },
    {
      "commit": "d84201fcae22b71cfa9f4bca5ef4a4344d04fad5",
      "tree": "9a17e9eb128ecc971e6666ad88448f1303f0eeff",
      "parents": [
        "351ab17847a4697d99d7db2e55d01822d1c0bf25",
        "3fed817bd114f7824d458ca62621417aa71cec84"
      ],
      "author": {
        "name": "Gloria Wang",
        "email": "gwang@google.com",
        "time": "Tue Apr 13 16:05:13 2010 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Tue Apr 13 16:05:13 2010 -0700"
      },
      "message": "am 465934d1: am d4c072d3: am b19da8e1: Fix for 2581725. Keep the last frame after resume(), and delete it in the next suspend() or reuse it if no new frame is available.\n"
    },
    {
      "commit": "b1c9bd26a3b916d2f6ca7cda1edab92f48da16c8",
      "tree": "40445880058f40b9919f93b4edb4e26df2f02610",
      "parents": [
        "07dd5a5a9cf8ea7c48473874b34d0dc6c5a6c231",
        "b9dbba9285fb406bc6eb87779c8bfc405269b6f2"
      ],
      "author": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Tue Apr 13 15:42:01 2010 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Tue Apr 13 15:42:01 2010 -0700"
      },
      "message": "am 4f3257cf: am dd684af8: Merge \"Snif more 3GPP file types according to http://www.ftyps.com/3gpp.html\" into froyo\n\nMerge commit \u00274f3257cf4667aa28908c401634db849fd2e516af\u0027 into kraken\n\n* commit \u00274f3257cf4667aa28908c401634db849fd2e516af\u0027:\n  Snif more 3GPP file types according to http://www.ftyps.com/3gpp.html\n"
    },
    {
      "commit": "b9dbba9285fb406bc6eb87779c8bfc405269b6f2",
      "tree": "9809cdf15e3aba93dfd541115d03683bbed4b389",
      "parents": [
        "25801bfe64dff414991fca2f62f16a61ba554357"
      ],
      "author": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Tue Apr 13 15:06:41 2010 -0700"
      },
      "committer": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Tue Apr 13 15:09:26 2010 -0700"
      },
      "message": "Snif more 3GPP file types according to http://www.ftyps.com/3gpp.html\n\nbug - 2575956\n\nChange-Id: Iaa79e74d3b0585397a7e833ec45472710fc52fa6\n"
    },
    {
      "commit": "07dd5a5a9cf8ea7c48473874b34d0dc6c5a6c231",
      "tree": "5297c0671092e9911ad730fa69837c7968d7ddbe",
      "parents": [
        "ea623087e93c6e27ce6284946f94c1d4aff7f91b",
        "25801bfe64dff414991fca2f62f16a61ba554357"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Tue Apr 13 12:23:28 2010 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Tue Apr 13 12:23:28 2010 -0700"
      },
      "message": "am 30e9c2d4: am db281311: Merge \"Better diagnostics in the stagefright commandline tool, support for playing sine-tones using a filename of \"sine:[samplingrate]\", i.e. sine:44100. Support for playing audio through to the speakers by using \"-o\" in addition to \"-a\".\" in\n\nMerge commit \u002730e9c2d4db145e02b5312ce29606b03dd78349d3\u0027 into kraken\n\n* commit \u002730e9c2d4db145e02b5312ce29606b03dd78349d3\u0027:\n  Better diagnostics in the stagefright commandline tool, support for playing sine-tones using a filename of \"sine:[samplingrate]\", i.e. sine:44100. Support for playing audio through to the speakers by using \"-o\" in addition to \"-a\".\n"
    },
    {
      "commit": "ea623087e93c6e27ce6284946f94c1d4aff7f91b",
      "tree": "5e75e44dbab170b621f766d3688154586f1bf438",
      "parents": [
        "3fed817bd114f7824d458ca62621417aa71cec84",
        "a13da584aa7da751a7e6ebf00fc1c4e2382af611"
      ],
      "author": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Tue Apr 13 12:20:38 2010 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Tue Apr 13 12:20:38 2010 -0700"
      },
      "message": "am 9bb8e65a: am c15f48d7: Merge \"Don\\\u0027t set encoder component role while we query decoders\" into froyo\n\nMerge commit \u00279bb8e65a7d7dc57fdd7383d64d53414b1aa5cbbc\u0027 into kraken\n\n* commit \u00279bb8e65a7d7dc57fdd7383d64d53414b1aa5cbbc\u0027:\n  Don\u0027t set encoder component role while we query decoders\n"
    },
    {
      "commit": "25801bfe64dff414991fca2f62f16a61ba554357",
      "tree": "88d5200d08e578fa6baf9949a6f6a15b71ec3016",
      "parents": [
        "a13da584aa7da751a7e6ebf00fc1c4e2382af611",
        "a98420e863c374d1f15309467f2a1fc58d979d3b"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Tue Apr 13 12:16:08 2010 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Apr 13 12:16:08 2010 -0700"
      },
      "message": "Merge \"Better diagnostics in the stagefright commandline tool, support for playing sine-tones using a filename of \"sine:[samplingrate]\", i.e. sine:44100. Support for playing audio through to the speakers by using \"-o\" in addition to \"-a\".\" into froyo"
    },
    {
      "commit": "a13da584aa7da751a7e6ebf00fc1c4e2382af611",
      "tree": "3a1f963265cf06506f703222d38690f5bbcbe9f4",
      "parents": [
        "5c117390591da780e1f53c1c9c91c1efdacbc674",
        "5e3cf6cf36feb3b73b8f8c0a8134c46f5bc85094"
      ],
      "author": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Tue Apr 13 12:11:57 2010 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Apr 13 12:11:57 2010 -0700"
      },
      "message": "Merge \"Don\u0027t set encoder component role while we query decoders\" into froyo"
    },
    {
      "commit": "a98420e863c374d1f15309467f2a1fc58d979d3b",
      "tree": "0d441bd1258015fbef734718fe6c8271cd36f060",
      "parents": [
        "81f82c32459029bf0744e28c73f95a7f18cab5ac"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Tue Apr 13 09:58:39 2010 -0700"
      },
      "committer": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Tue Apr 13 12:04:05 2010 -0700"
      },
      "message": "Better diagnostics in the stagefright commandline tool, support for playing sine-tones using a filename of \"sine:[samplingrate]\", i.e. sine:44100. Support for playing audio through to the speakers by using \"-o\" in addition to \"-a\".\n\nrelated-to-bug: 2553359\nChange-Id: Ic49eb89feb62474d9513bc21571e0e8fe3a15e0b\n"
    },
    {
      "commit": "3fed817bd114f7824d458ca62621417aa71cec84",
      "tree": "cc4e1b05a1e26c34af8070ed67780b8653e048f7",
      "parents": [
        "c16ea2dbe0cb5ed4189e5ba5451f92bed62a4f4b",
        "5c117390591da780e1f53c1c9c91c1efdacbc674"
      ],
      "author": {
        "name": "Gloria Wang",
        "email": "gwang@google.com",
        "time": "Tue Apr 13 11:53:52 2010 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Tue Apr 13 11:53:52 2010 -0700"
      },
      "message": "am d4c072d3: am b19da8e1: Fix for 2581725. Keep the last frame after resume(), and delete it in the next suspend() or reuse it if no new frame is available.\n\nMerge commit \u0027d4c072d3f584db2cf9214c9d813c15d9e646c527\u0027 into kraken\n\n* commit \u0027d4c072d3f584db2cf9214c9d813c15d9e646c527\u0027:\n  Fix for 2581725. Keep the last frame after resume(), and delete it\n"
    },
    {
      "commit": "5e3cf6cf36feb3b73b8f8c0a8134c46f5bc85094",
      "tree": "fc2e608447661cf14a0c9b57dea8194327006165",
      "parents": [
        "b547d09ecc3da8ee300099da8ca7e2826bb6849a"
      ],
      "author": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Tue Apr 13 10:56:59 2010 -0700"
      },
      "committer": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Tue Apr 13 10:58:41 2010 -0700"
      },
      "message": "Don\u0027t set encoder component role while we query decoders\n\nbug - 2558515\n\nChange-Id: I29683507d234d963994c782c07508034ea807739\n"
    },
    {
      "commit": "351ab17847a4697d99d7db2e55d01822d1c0bf25",
      "tree": "60b583b9009ba93fcb65d1607f647d7d83bf773b",
      "parents": [
        "b851fc7071d87d7ac24599826d672e22d88f8fa2",
        "c16ea2dbe0cb5ed4189e5ba5451f92bed62a4f4b"
      ],
      "author": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Tue Apr 13 10:33:07 2010 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Tue Apr 13 10:33:07 2010 -0700"
      },
      "message": "am 445a9785: Merge \"don\\\u0027t hardcode \"mSurface\" throughout our source code\" into kraken\n"
    },
    {
      "commit": "5c117390591da780e1f53c1c9c91c1efdacbc674",
      "tree": "a5941c728bcc8479b6c22b802786cf78367da7d4",
      "parents": [
        "81f82c32459029bf0744e28c73f95a7f18cab5ac"
      ],
      "author": {
        "name": "Gloria Wang",
        "email": "gwang@google.com",
        "time": "Mon Apr 12 17:13:06 2010 -0700"
      },
      "committer": {
        "name": "Gloria Wang",
        "email": "gwang@google.com",
        "time": "Tue Apr 13 09:46:40 2010 -0700"
      },
      "message": "Fix for 2581725. Keep the last frame after resume(), and delete it\nin the next suspend() or reuse it if no new frame is available.\n\nChange-Id: I84286030eaae9061077d6ccb485b7dd53ef05341\n"
    },
    {
      "commit": "c16ea2dbe0cb5ed4189e5ba5451f92bed62a4f4b",
      "tree": "1cd7c7b81cc2e893f22a5311614d0a231a0cb64f",
      "parents": [
        "88b1b1c7331023828108daa57fcea858c7706566",
        "2e5299988b5f5f9165a76938a66d37e46dd48d6b"
      ],
      "author": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Mon Apr 12 18:59:49 2010 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Apr 12 18:59:49 2010 -0700"
      },
      "message": "Merge \"don\u0027t hardcode \"mSurface\" throughout our source code\" into kraken"
    },
    {
      "commit": "b851fc7071d87d7ac24599826d672e22d88f8fa2",
      "tree": "230932ccd4aea4086c54e98a7b99884a84973046",
      "parents": [
        "8e5d52bb00dc34608f2cd123a8387e6b15eb8126",
        "88b1b1c7331023828108daa57fcea858c7706566"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Mon Apr 12 17:25:48 2010 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Mon Apr 12 17:25:48 2010 -0700"
      },
      "message": "am 7853c898: am 248ea4a9: am 5baa5e19: Merge \"Distinguish QCELP audio from mpeg4 audio, ignore QCELP audio tracks since we don\\\u0027t have a decoder for it, ignore potentially malformed metadata for AMR NB and WB tracks.\" into froyo\n"
    },
    {
      "commit": "88b1b1c7331023828108daa57fcea858c7706566",
      "tree": "c57c2e166119865da722644b6ab26410889bc96a",
      "parents": [
        "47acf12ffef0a5db470406b7db788adcc6240786",
        "81f82c32459029bf0744e28c73f95a7f18cab5ac"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Mon Apr 12 17:21:33 2010 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Mon Apr 12 17:21:33 2010 -0700"
      },
      "message": "am 248ea4a9: am 5baa5e19: Merge \"Distinguish QCELP audio from mpeg4 audio, ignore QCELP audio tracks since we don\\\u0027t have a decoder for it, ignore potentially malformed metadata for AMR NB and WB tracks.\" into froyo\n\nMerge commit \u0027248ea4a9f773210a7b7dbd7892e6b865a0f7add3\u0027 into kraken\n\n* commit \u0027248ea4a9f773210a7b7dbd7892e6b865a0f7add3\u0027:\n  Distinguish QCELP audio from mpeg4 audio, ignore QCELP audio tracks since we don\u0027t have a decoder for it, ignore potentially malformed metadata for AMR NB and WB tracks.\n"
    },
    {
      "commit": "2e5299988b5f5f9165a76938a66d37e46dd48d6b",
      "tree": "d7212db7df16d22aaf7d5f1ce43f5706ff58ec30",
      "parents": [
        "47acf12ffef0a5db470406b7db788adcc6240786"
      ],
      "author": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Mon Apr 12 16:22:15 2010 -0700"
      },
      "committer": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Mon Apr 12 16:29:36 2010 -0700"
      },
      "message": "don\u0027t hardcode \"mSurface\" throughout our source code\n\nthis is used in a few places to get access to the android.view.Surface\nnative surface. use a macro instead. Also rename the field to mNativeSurface.\n\nChange-Id: I1c6dea14abd6b8b1392c7f97b304115999355094\n"
    },
    {
      "commit": "81f82c32459029bf0744e28c73f95a7f18cab5ac",
      "tree": "7bc1f309ecd5f3d7ce4f3377837ccd3cb7728bbf",
      "parents": [
        "874b55f51c4c062c65aee043ec0f26044b504556"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Mon Apr 12 16:05:57 2010 -0700"
      },
      "committer": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Mon Apr 12 16:05:57 2010 -0700"
      },
      "message": "Distinguish QCELP audio from mpeg4 audio, ignore QCELP audio tracks since we don\u0027t have a decoder for it, ignore potentially malformed metadata for AMR NB and WB tracks.\n\nChange-Id: Ic9a9198413431db4ea40bb63b9de91aa8a7183af\nrelated-to-bug: 2587341\n"
    },
    {
      "commit": "8e5d52bb00dc34608f2cd123a8387e6b15eb8126",
      "tree": "824ced1f823d9a5f1c71b339c5df5c60b79c9bfc",
      "parents": [
        "13b9d1eff282c8f2c4cbd07b119d47da553b6be6",
        "47acf12ffef0a5db470406b7db788adcc6240786"
      ],
      "author": {
        "name": "Jean-Baptiste Queru",
        "email": "jbq@google.com",
        "time": "Mon Apr 12 15:32:13 2010 -0700"
      },
      "committer": {
        "name": "Jean-Baptiste Queru",
        "email": "jbq@google.com",
        "time": "Mon Apr 12 15:32:13 2010 -0700"
      },
      "message": "manual merge\n\nChange-Id: I9cdacbf1e445e7f6cf06ad03df541a744c242774\n"
    },
    {
      "commit": "13b9d1eff282c8f2c4cbd07b119d47da553b6be6",
      "tree": "40598c743c92f51f67bef9381bd0ffaa23e47fbe",
      "parents": [
        "58cd8ed8c0104bd6ccf7dd657a5e7fd0ff6c8fdd",
        "a5e4677f76b2e6596c2fd6351788ecf82ae9c448"
      ],
      "author": {
        "name": "android-build SharedAccount",
        "email": "android-build@google.com",
        "time": "Mon Apr 12 14:47:38 2010 -0700"
      },
      "committer": {
        "name": "android-build SharedAccount",
        "email": "android-build@google.com",
        "time": "Mon Apr 12 14:47:38 2010 -0700"
      },
      "message": "Merge commit \u002736c87ca65281bbbeeed1b25da52468fe52491a7d\u0027 into kraken-plus-aosp\n"
    },
    {
      "commit": "58cd8ed8c0104bd6ccf7dd657a5e7fd0ff6c8fdd",
      "tree": "40598c743c92f51f67bef9381bd0ffaa23e47fbe",
      "parents": [
        "6328e73c94b8396a233212a18a773cd2f107ec97",
        "77d6e73eff657277359fd18104d677019d51164e"
      ],
      "author": {
        "name": "android-build SharedAccount",
        "email": "android-build@google.com",
        "time": "Mon Apr 12 14:46:11 2010 -0700"
      },
      "committer": {
        "name": "android-build SharedAccount",
        "email": "android-build@google.com",
        "time": "Mon Apr 12 14:46:11 2010 -0700"
      },
      "message": "Merge commit \u0027e8985420bb0fb95ad6dadd6de84f9940ecbd5ab7\u0027 into kraken-plus-aosp\n"
    },
    {
      "commit": "47acf12ffef0a5db470406b7db788adcc6240786",
      "tree": "f56c60601bb29b32126b26bf536725f7ced61590",
      "parents": [
        "a3387afbc6dc5db0fd534ab5e3200f46b5a36acd",
        "874b55f51c4c062c65aee043ec0f26044b504556"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Mon Apr 12 14:23:31 2010 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Mon Apr 12 14:23:31 2010 -0700"
      },
      "message": "am 98c5bd55: am 6dbf80d0: Merge \"Fix a race condition in TimedEventQueue, an event may be cancelled while we\\\u0027re waiting for its scheduled time to come in which case we\\\u0027d be removing it from the queue twice.\" into froyo\n\nMerge commit \u002798c5bd5556f32a237d3483fb7298284869e32a40\u0027 into kraken\n\n* commit \u002798c5bd5556f32a237d3483fb7298284869e32a40\u0027:\n  Fix a race condition in TimedEventQueue, an event may be cancelled while we\u0027re waiting for its scheduled time to come in which case we\u0027d be removing it from the queue twice.\n"
    },
    {
      "commit": "874b55f51c4c062c65aee043ec0f26044b504556",
      "tree": "86d4c6cd8ec51091ae4998e326dd20392e983163",
      "parents": [
        "b547d09ecc3da8ee300099da8ca7e2826bb6849a"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Mon Apr 12 13:10:20 2010 -0700"
      },
      "committer": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Mon Apr 12 13:15:48 2010 -0700"
      },
      "message": "Fix a race condition in TimedEventQueue, an event may be cancelled while we\u0027re waiting for its scheduled time to come in which case we\u0027d be removing it from the queue twice.\n\nChange-Id: I4e42e318fd5373d1f352f54027d4bf823126266d\nrelated-to-bug: 2585276\n"
    },
    {
      "commit": "a3387afbc6dc5db0fd534ab5e3200f46b5a36acd",
      "tree": "b1aec05ba013b64ef4617a35a941898b3398fde7",
      "parents": [
        "23748a675245149d652b5ede781b4df90fca5d21",
        "b547d09ecc3da8ee300099da8ca7e2826bb6849a"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Mon Apr 12 11:07:54 2010 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Mon Apr 12 11:07:54 2010 -0700"
      },
      "message": "am f0a49f68: am 1d7a8b44: Merge \"Fix a case where the aac hardware decoder is in a transition state and refused a fillbuffer request.\" into froyo\n\nMerge commit \u0027f0a49f68f0edc98fefbe14e3ddcf0d6853519293\u0027 into kraken\n\n* commit \u0027f0a49f68f0edc98fefbe14e3ddcf0d6853519293\u0027:\n  Fix a case where the aac hardware decoder is in a transition state and refused a fillbuffer request.\n"
    },
    {
      "commit": "23748a675245149d652b5ede781b4df90fca5d21",
      "tree": "4c6332d4f123745e5c4c3281067ea99c1b32921d",
      "parents": [
        "a418a932aa9c800c527451ea93ec9a3a06fb7515",
        "548e31844937b37518fbb62ff69e9ff1f794183b"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Mon Apr 12 11:05:22 2010 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Apr 12 11:05:22 2010 -0700"
      },
      "message": "Merge \"I accidentally broken passion encoding while working around problems with the sholes encoder.\" into kraken"
    },
    {
      "commit": "a418a932aa9c800c527451ea93ec9a3a06fb7515",
      "tree": "df936b82732ab9743b535c48db1d713863dc78dc",
      "parents": [
        "88951e54c25b0cc58f78b48ffefa451cf87a8942",
        "ebe87f32e442c9a8fb2931632311d6c5a126eddb"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Mon Apr 12 11:05:09 2010 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Apr 12 11:05:09 2010 -0700"
      },
      "message": "Merge \"Remove unnecessary lock from AMRWriter.\" into kraken"
    },
    {
      "commit": "88951e54c25b0cc58f78b48ffefa451cf87a8942",
      "tree": "739a75873269c29ddd67e982119c9782ad697582",
      "parents": [
        "d5d0dbeadc2b5d172a9e6007c063b8d1366696e0",
        "03b268eac37ca2589bfff0bf58daf79d29cc14f4"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Mon Apr 12 11:04:57 2010 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Apr 12 11:04:57 2010 -0700"
      },
      "message": "Merge \"Various fixes to enable recording on passion and nexus1.\" into kraken"
    },
    {
      "commit": "d5d0dbeadc2b5d172a9e6007c063b8d1366696e0",
      "tree": "aa70c16588e8adcd0c7d69c7cd9da201a775b409",
      "parents": [
        "a5e4677f76b2e6596c2fd6351788ecf82ae9c448",
        "fe774a9c3ffe12979e182563b0e922ffc0ad20ef"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Mon Apr 12 11:04:46 2010 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Apr 12 11:04:46 2010 -0700"
      },
      "message": "Merge \"Remove legacy NO_OPENCORE code bypass from MediaPlayerService.\" into kraken"
    },
    {
      "commit": "b547d09ecc3da8ee300099da8ca7e2826bb6849a",
      "tree": "3124d2e26bc31d41b140089239e71771acb3f123",
      "parents": [
        "f018aa38b808f2e5c6e6b2dc0b29406caa793c65",
        "7110385b31c7bc65c8a923a09689ebb0c4a1e07a"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Mon Apr 12 11:02:27 2010 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Apr 12 11:02:27 2010 -0700"
      },
      "message": "Merge \"Fix a case where the aac hardware decoder is in a transition state and refused a fillbuffer request.\" into froyo"
    },
    {
      "commit": "7110385b31c7bc65c8a923a09689ebb0c4a1e07a",
      "tree": "a2c54b90b8a29c72c1e2128cb9390ee22510d944",
      "parents": [
        "465d5a7f3517f11aaa819c8ae982e113ad5ec479"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Mon Apr 12 10:20:12 2010 -0700"
      },
      "committer": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Mon Apr 12 10:20:12 2010 -0700"
      },
      "message": "Fix a case where the aac hardware decoder is in a transition state and refused a fillbuffer request.\n\nChange-Id: I4cabd18709c29db0a2763a01cc86525ba0b0aeb7\nrelated-to-bug: 2575976\n"
    },
    {
      "commit": "a5e4677f76b2e6596c2fd6351788ecf82ae9c448",
      "tree": "ca1bd0b1a35deb1fcd8525dd29179d2da67467cb",
      "parents": [
        "77d6e73eff657277359fd18104d677019d51164e",
        "f018aa38b808f2e5c6e6b2dc0b29406caa793c65"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Mon Apr 12 10:16:11 2010 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Mon Apr 12 10:16:11 2010 -0700"
      },
      "message": "am 10d40772: am cdded187: Merge \"Ignore corrupt aac audio frames and substitute silence.\" into froyo\n\nMerge commit \u002710d4077240fe17b3a0c0e16a6e3f9d5e66419ba0\u0027 into kraken\n\n* commit \u002710d4077240fe17b3a0c0e16a6e3f9d5e66419ba0\u0027:\n  Ignore corrupt aac audio frames and substitute silence.\n"
    },
    {
      "commit": "77d6e73eff657277359fd18104d677019d51164e",
      "tree": "648f6b20fd697dcdc7ae70dc80dae952ae6f1c7b",
      "parents": [
        "e592430666bf1060c78e7b9308ca5be50b3e9457",
        "0a0583f9a6dd7fb0b72b7e072da4d55f8597c7ed"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Mon Apr 12 10:16:08 2010 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Mon Apr 12 10:16:08 2010 -0700"
      },
      "message": "am b1e7bee2: am 040301ca: Start sending out buffering updates earlier (after preparation has completed) instead of only after playback has started.\n\nMerge commit \u0027b1e7bee2f3537bf5c49d1de796a97d2c2a48ebd4\u0027 into kraken\n\n* commit \u0027b1e7bee2f3537bf5c49d1de796a97d2c2a48ebd4\u0027:\n  Start sending out buffering updates earlier (after preparation has completed) instead of only after playback has started.\n"
    },
    {
      "commit": "f018aa38b808f2e5c6e6b2dc0b29406caa793c65",
      "tree": "ca1bd0b1a35deb1fcd8525dd29179d2da67467cb",
      "parents": [
        "0a0583f9a6dd7fb0b72b7e072da4d55f8597c7ed",
        "9dcda21086608a52a579ac8254991fdde686823a"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Mon Apr 12 10:11:32 2010 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Apr 12 10:11:32 2010 -0700"
      },
      "message": "Merge \"Ignore corrupt aac audio frames and substitute silence.\" into froyo"
    },
    {
      "commit": "9dcda21086608a52a579ac8254991fdde686823a",
      "tree": "28fb9d2311ffbdd3d51a5ed4d0f1f47b97268196",
      "parents": [
        "465d5a7f3517f11aaa819c8ae982e113ad5ec479"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Mon Apr 12 09:57:05 2010 -0700"
      },
      "committer": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Mon Apr 12 09:57:05 2010 -0700"
      },
      "message": "Ignore corrupt aac audio frames and substitute silence.\n\nChange-Id: I544f98a5c00d912061db7921fc4518435209b168\nrelated-to-bug: 2575976\n"
    },
    {
      "commit": "0a0583f9a6dd7fb0b72b7e072da4d55f8597c7ed",
      "tree": "648f6b20fd697dcdc7ae70dc80dae952ae6f1c7b",
      "parents": [
        "465d5a7f3517f11aaa819c8ae982e113ad5ec479"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Mon Apr 12 09:41:12 2010 -0700"
      },
      "committer": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Mon Apr 12 09:41:12 2010 -0700"
      },
      "message": "Start sending out buffering updates earlier (after preparation has completed) instead of only after playback has started.\n\nChange-Id: Ieaa90cc9b54bd56963aa5f4daced2ba243801acf\nrelated-to-bug: 2585913\n"
    },
    {
      "commit": "6328e73c94b8396a233212a18a773cd2f107ec97",
      "tree": "40598c743c92f51f67bef9381bd0ffaa23e47fbe",
      "parents": [
        "7e1db0ced769084169250e5a608cef0c7ea86671",
        "e592430666bf1060c78e7b9308ca5be50b3e9457"
      ],
      "author": {
        "name": "Wu-cheng Li",
        "email": "wuchengli@google.com",
        "time": "Sat Apr 10 11:55:00 2010 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Sat Apr 10 11:55:00 2010 -0700"
      },
      "message": "am 926d9a89: am 08caa704: am c58b4232: Add SCENE_MODE_BARCODE and FOCUS_MODE_EDOF.\n"
    },
    {
      "commit": "e592430666bf1060c78e7b9308ca5be50b3e9457",
      "tree": "40598c743c92f51f67bef9381bd0ffaa23e47fbe",
      "parents": [
        "6e4f79aa417cf7ef9dcf3f4a36ee671886f7f40e",
        "465d5a7f3517f11aaa819c8ae982e113ad5ec479"
      ],
      "author": {
        "name": "Wu-cheng Li",
        "email": "wuchengli@google.com",
        "time": "Sat Apr 10 11:48:24 2010 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Sat Apr 10 11:48:24 2010 -0700"
      },
      "message": "am 08caa704: am c58b4232: Add SCENE_MODE_BARCODE and FOCUS_MODE_EDOF.\n\nMerge commit \u002708caa704ae6c1dd8434186fa2dc22b1d7f8a5f9c\u0027 into kraken\n\n* commit \u002708caa704ae6c1dd8434186fa2dc22b1d7f8a5f9c\u0027:\n  Add SCENE_MODE_BARCODE and FOCUS_MODE_EDOF.\n"
    },
    {
      "commit": "465d5a7f3517f11aaa819c8ae982e113ad5ec479",
      "tree": "40598c743c92f51f67bef9381bd0ffaa23e47fbe",
      "parents": [
        "32f8c1cf4ab2abdd902535fc44a6549ba6f0ff33"
      ],
      "author": {
        "name": "Wu-cheng Li",
        "email": "wuchengli@google.com",
        "time": "Mon Mar 29 17:21:28 2010 +0800"
      },
      "committer": {
        "name": "Wu-cheng Li",
        "email": "wuchengli@google.com",
        "time": "Sat Apr 10 09:33:15 2010 +0800"
      },
      "message": "Add SCENE_MODE_BARCODE and FOCUS_MODE_EDOF.\n\nbug:2544367\nChange-Id: If122a7745e080f9e4bffb15dc4930d71f0421867\n"
    },
    {
      "commit": "548e31844937b37518fbb62ff69e9ff1f794183b",
      "tree": "b798d4fe9e04678fb79db04ec4b22e731821f013",
      "parents": [
        "ebe87f32e442c9a8fb2931632311d6c5a126eddb"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Fri Apr 09 14:25:46 2010 -0700"
      },
      "committer": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Fri Apr 09 14:25:46 2010 -0700"
      },
      "message": "I accidentally broken passion encoding while working around problems with the sholes encoder.\n\nChange-Id: Id91b837ed17083cb21efb08e1c1ab9cc3ff3fa8f\n"
    },
    {
      "commit": "ebe87f32e442c9a8fb2931632311d6c5a126eddb",
      "tree": "ef19cacaa3d207b78061e41803593d56de3bdf94",
      "parents": [
        "03b268eac37ca2589bfff0bf58daf79d29cc14f4"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Tue Mar 23 14:33:02 2010 -0700"
      },
      "committer": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Fri Apr 09 13:49:39 2010 -0700"
      },
      "message": "Remove unnecessary lock from AMRWriter.\n\nChange-Id: Ia02966d936dd8cbb31e92051578a3fa816885710\n"
    },
    {
      "commit": "03b268eac37ca2589bfff0bf58daf79d29cc14f4",
      "tree": "dfb5d0de728a4faa531efc77e66093b48e4ac4f9",
      "parents": [
        "fe774a9c3ffe12979e182563b0e922ffc0ad20ef"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Fri Mar 19 11:43:15 2010 -0700"
      },
      "committer": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Fri Apr 09 13:47:58 2010 -0700"
      },
      "message": "Various fixes to enable recording on passion and nexus1.\n\nChange-Id: I75a461c9882e2449082ad754ee7b231c1ceec039\n"
    },
    {
      "commit": "fe774a9c3ffe12979e182563b0e922ffc0ad20ef",
      "tree": "2d345e603f5e4803a9003496712098ef457b0cb0",
      "parents": [
        "6e4f79aa417cf7ef9dcf3f4a36ee671886f7f40e"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Mon Apr 05 13:25:12 2010 -0700"
      },
      "committer": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Fri Apr 09 13:44:28 2010 -0700"
      },
      "message": "Remove legacy NO_OPENCORE code bypass from MediaPlayerService.\n\nChange-Id: I72db73c91673e0d7f1090e3b033ae915337dc16e\n"
    },
    {
      "commit": "7e1db0ced769084169250e5a608cef0c7ea86671",
      "tree": "971adb7851bd659e0bc87a8b41e3c3b73adf231d",
      "parents": [
        "b9befd704de27e4e520b0bd845c9a298c33489bb",
        "6e4f79aa417cf7ef9dcf3f4a36ee671886f7f40e"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Fri Apr 09 07:15:09 2010 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Fri Apr 09 07:15:09 2010 -0700"
      },
      "message": "am b39c3aa7: am 91ce0826: am 4be2461f: Merge \"Support for ID3 V2.4 tags.\" into froyo\n"
    },
    {
      "commit": "6e4f79aa417cf7ef9dcf3f4a36ee671886f7f40e",
      "tree": "971adb7851bd659e0bc87a8b41e3c3b73adf231d",
      "parents": [
        "0bb74a4aec7ec0f6d7561e250112348520af7258",
        "32f8c1cf4ab2abdd902535fc44a6549ba6f0ff33"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Fri Apr 09 07:09:49 2010 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Fri Apr 09 07:09:49 2010 -0700"
      },
      "message": "am 91ce0826: am 4be2461f: Merge \"Support for ID3 V2.4 tags.\" into froyo\n\nMerge commit \u002791ce08269600a5b46c84d9480212bf17e1107c2f\u0027 into kraken\n\n* commit \u002791ce08269600a5b46c84d9480212bf17e1107c2f\u0027:\n  Support for ID3 V2.4 tags.\n"
    },
    {
      "commit": "32f8c1cf4ab2abdd902535fc44a6549ba6f0ff33",
      "tree": "971adb7851bd659e0bc87a8b41e3c3b73adf231d",
      "parents": [
        "1ab1e4ec459ab549f79a98693a67f241861450be",
        "bebd11b5a406bc4243cb7bd55f6849841bf911a7"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Fri Apr 09 07:01:58 2010 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Apr 09 07:01:58 2010 -0700"
      },
      "message": "Merge \"Support for ID3 V2.4 tags.\" into froyo"
    },
    {
      "commit": "bebd11b5a406bc4243cb7bd55f6849841bf911a7",
      "tree": "e7062dbb95ab0403d0fa96b31c13044976e1dea3",
      "parents": [
        "dac4ee72bac87388a1495e098f39d73168c8078f"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Thu Apr 08 14:01:33 2010 -0700"
      },
      "committer": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Thu Apr 08 14:09:54 2010 -0700"
      },
      "message": "Support for ID3 V2.4 tags.\n\nChange-Id: I74ee02451bdfd7e50f0d5ff6fa5da5147b683e4c\nrelated-to-bug: 2581869\n"
    },
    {
      "commit": "b9befd704de27e4e520b0bd845c9a298c33489bb",
      "tree": "c3ceed64835a67ae60549ed3ad3608d85926d469",
      "parents": [
        "6bf4f5b404782b94c171a366e5a727c6414dedf0",
        "0bb74a4aec7ec0f6d7561e250112348520af7258"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Thu Apr 08 12:53:23 2010 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Thu Apr 08 12:53:23 2010 -0700"
      },
      "message": "am 3eade67b: am b52e9f74: am eb12e45f: Merge \"Refactor connection/redirection code, support redirects on reconnection.\" into froyo\n"
    },
    {
      "commit": "0bb74a4aec7ec0f6d7561e250112348520af7258",
      "tree": "c3ceed64835a67ae60549ed3ad3608d85926d469",
      "parents": [
        "cb58914852afcc3505746055cfa7594c7bde87dc",
        "1ab1e4ec459ab549f79a98693a67f241861450be"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Thu Apr 08 12:49:41 2010 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Thu Apr 08 12:49:41 2010 -0700"
      },
      "message": "am b52e9f74: am eb12e45f: Merge \"Refactor connection/redirection code, support redirects on reconnection.\" into froyo\n\nMerge commit \u0027b52e9f748cefaad01fc66a73ddfa707f2446895c\u0027 into kraken\n\n* commit \u0027b52e9f748cefaad01fc66a73ddfa707f2446895c\u0027:\n  Refactor connection/redirection code, support redirects on reconnection.\n"
    },
    {
      "commit": "1ab1e4ec459ab549f79a98693a67f241861450be",
      "tree": "c3ceed64835a67ae60549ed3ad3608d85926d469",
      "parents": [
        "d8c76856c6d52dcd11a90124dafef0af99956e15"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Thu Apr 08 09:17:01 2010 -0700"
      },
      "committer": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Thu Apr 08 10:09:35 2010 -0700"
      },
      "message": "Refactor connection/redirection code, support redirects on reconnection.\n\nChange-Id: Id2517568000e028b01553c06a4893813a6883168\nrelated-to-bug: 2580785\n"
    },
    {
      "commit": "6bf4f5b404782b94c171a366e5a727c6414dedf0",
      "tree": "f9ef2f8539358e4d08e4d3a0edc79be3612ed8cb",
      "parents": [
        "348b3e283d6bafba674b73c9b8ad09af9ad01a6b",
        "cb58914852afcc3505746055cfa7594c7bde87dc"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Thu Apr 08 08:43:30 2010 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Thu Apr 08 08:43:30 2010 -0700"
      },
      "message": "am c63c6e97: am d06c435c: am c6c8a1e9: Merge \"Increase the size of the pages used in CachingDataSource (total amount of memory used remains the same) to compensate for reduced locality of audio/video data requests. Also fixes a mistaken trailing \"\\r\\n\" in the range he\n"
    },
    {
      "commit": "cb58914852afcc3505746055cfa7594c7bde87dc",
      "tree": "f9ef2f8539358e4d08e4d3a0edc79be3612ed8cb",
      "parents": [
        "572cc37714f9833df77727f7a0401d294682a66d",
        "d8c76856c6d52dcd11a90124dafef0af99956e15"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Thu Apr 08 08:35:53 2010 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Thu Apr 08 08:35:53 2010 -0700"
      },
      "message": "am d06c435c: am c6c8a1e9: Merge \"Increase the size of the pages used in CachingDataSource (total amount of memory used remains the same) to compensate for reduced locality of audio/video data requests. Also fixes a mistaken trailing \"\\r\\n\" in the range header and bett\n\nMerge commit \u0027d06c435c3f520ef2012fdd331dac76b1621a72e6\u0027 into kraken\n\n* commit \u0027d06c435c3f520ef2012fdd331dac76b1621a72e6\u0027:\n  Increase the size of the pages used in CachingDataSource (total amount of memory used remains the same) to compensate for reduced locality of audio/video data requests. Also fixes a mistaken trailing \"\\r\\n\" in the range header and better error handling on http connection.\n"
    },
    {
      "commit": "d8c76856c6d52dcd11a90124dafef0af99956e15",
      "tree": "f9ef2f8539358e4d08e4d3a0edc79be3612ed8cb",
      "parents": [
        "dac4ee72bac87388a1495e098f39d73168c8078f"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Thu Apr 08 07:51:20 2010 -0700"
      },
      "committer": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Thu Apr 08 07:51:20 2010 -0700"
      },
      "message": "Increase the size of the pages used in CachingDataSource (total amount of memory used remains the same) to compensate for reduced locality of audio/video data requests. Also fixes a mistaken trailing \"\\r\\n\" in the range header and better error handling on http connection.\n\nChange-Id: Ic9a6ef204362bc9afdc61e081c76bc62e5ef92ad\nrelated-to-bug: 2580785\n"
    },
    {
      "commit": "348b3e283d6bafba674b73c9b8ad09af9ad01a6b",
      "tree": "59902b5757b00e061e66235144e7a5e4773ee427",
      "parents": [
        "89bc5f85c140a2868a0cb407ab95d18a6824a0c9",
        "572cc37714f9833df77727f7a0401d294682a66d"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Wed Apr 07 11:10:09 2010 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Wed Apr 07 11:10:09 2010 -0700"
      },
      "message": "am 1e6edab6: am 01f78928: am 567b57b6: Merge \"Report the requested seek time while seek is in progress.\" into froyo\n"
    },
    {
      "commit": "572cc37714f9833df77727f7a0401d294682a66d",
      "tree": "59902b5757b00e061e66235144e7a5e4773ee427",
      "parents": [
        "59eb79522c3da0de0304e17646737df8d883a3c7",
        "dac4ee72bac87388a1495e098f39d73168c8078f"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Wed Apr 07 11:05:56 2010 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Wed Apr 07 11:05:56 2010 -0700"
      },
      "message": "am 01f78928: am 567b57b6: Merge \"Report the requested seek time while seek is in progress.\" into froyo\n\nMerge commit \u002701f78928228cd097bc6816ae03909a2b01d5c1d5\u0027 into kraken\n\n* commit \u002701f78928228cd097bc6816ae03909a2b01d5c1d5\u0027:\n  Report the requested seek time while seek is in progress.\n"
    },
    {
      "commit": "dac4ee72bac87388a1495e098f39d73168c8078f",
      "tree": "59902b5757b00e061e66235144e7a5e4773ee427",
      "parents": [
        "80eb61776f136c316f45ce4187a8bafedf9b3e88"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Wed Apr 07 10:24:35 2010 -0700"
      },
      "committer": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Wed Apr 07 10:35:18 2010 -0700"
      },
      "message": "Report the requested seek time while seek is in progress.\n\nChange-Id: I862bfb801701f9ce54dede51c492e4eb37591894\nrelated-to-bug: 2576102\n"
    },
    {
      "commit": "89bc5f85c140a2868a0cb407ab95d18a6824a0c9",
      "tree": "93ebc50e44b40bbc6991793ee7641f519c1c4a87",
      "parents": [
        "1825fe9a51b5e95a519ea656404efd1d80f52b2e",
        "59eb79522c3da0de0304e17646737df8d883a3c7"
      ],
      "author": {
        "name": "Jean-Baptiste Queru",
        "email": "jbq@google.com",
        "time": "Tue Apr 06 16:36:09 2010 -0700"
      },
      "committer": {
        "name": "Jean-Baptiste Queru",
        "email": "jbq@google.com",
        "time": "Tue Apr 06 16:36:09 2010 -0700"
      },
      "message": "merge from kraken\n\nChange-Id: I63b85281bbd21d42a3e703f799c6941cd81614d0\n"
    },
    {
      "commit": "59eb79522c3da0de0304e17646737df8d883a3c7",
      "tree": "93ebc50e44b40bbc6991793ee7641f519c1c4a87",
      "parents": [
        "80eb61776f136c316f45ce4187a8bafedf9b3e88",
        "fcfe48e7cf461bf4a6314802c0f31f292d87ab95"
      ],
      "author": {
        "name": "Jean-Baptiste Queru",
        "email": "jbq@google.com",
        "time": "Tue Apr 06 15:44:22 2010 -0700"
      },
      "committer": {
        "name": "Jean-Baptiste Queru",
        "email": "jbq@google.com",
        "time": "Tue Apr 06 15:44:22 2010 -0700"
      },
      "message": "Merge policy from frameworks/policies/base\n\nChange-Id: I3ad6925b8a9f0ee14e4180e798519c23b6bf6662\n"
    },
    {
      "commit": "1825fe9a51b5e95a519ea656404efd1d80f52b2e",
      "tree": "93ebc50e44b40bbc6991793ee7641f519c1c4a87",
      "parents": [
        "80eb61776f136c316f45ce4187a8bafedf9b3e88",
        "fcfe48e7cf461bf4a6314802c0f31f292d87ab95"
      ],
      "author": {
        "name": "Jean-Baptiste Queru",
        "email": "jbq@google.com",
        "time": "Tue Apr 06 15:44:11 2010 -0700"
      },
      "committer": {
        "name": "Jean-Baptiste Queru",
        "email": "jbq@google.com",
        "time": "Tue Apr 06 15:44:11 2010 -0700"
      },
      "message": "Merge policy from frameworks/policies/base\n\nChange-Id: I55bd6b5078290aa7cdeaae8d8b4141d744ccf152\n"
    },
    {
      "commit": "80eb61776f136c316f45ce4187a8bafedf9b3e88",
      "tree": "93ebc50e44b40bbc6991793ee7641f519c1c4a87",
      "parents": [
        "b514a24eac5d9f5a3a9cdb3b7319918c39198769"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Tue Apr 06 14:36:23 2010 -0700"
      },
      "committer": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Tue Apr 06 14:36:23 2010 -0700"
      },
      "message": "Partial revert of previous change to improve hardware AAC decoder performance, increasing the input buffer size so dramatically accidentally broke streaming performance.\n\nChange-Id: I14e9fbc1fdff61bcf89218d83cb1d2e3d6eb8438\nrelated-to-bug: 2574491\n"
    },
    {
      "commit": "b514a24eac5d9f5a3a9cdb3b7319918c39198769",
      "tree": "0b451724c6d90b68341baf990ec42a934336c51a",
      "parents": [
        "fcdfad530df30d0e7fe21a7a463a3fe369ed325a",
        "7f498b90a4300ef9badf14d202b0a67c26e20931"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Fri Apr 02 14:03:46 2010 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Apr 02 14:03:46 2010 -0700"
      },
      "message": "Merge \"Coalesce multiple encoded AAC frames into a single input buffer on this particular OMX codec to increase throughput significantly.\" into froyo"
    },
    {
      "commit": "7f498b90a4300ef9badf14d202b0a67c26e20931",
      "tree": "d8a6e393474ba981bf4a577585c9cfcfcddec250",
      "parents": [
        "a17a1347ffe281fc70633ba8dc98f6cf49ac06ff"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Fri Apr 02 12:49:54 2010 -0700"
      },
      "committer": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Fri Apr 02 12:55:31 2010 -0700"
      },
      "message": "Coalesce multiple encoded AAC frames into a single input buffer on this particular OMX codec to increase throughput significantly.\n\nChange-Id: I90c7db6656a53339c5d454336548c4f00d0d9064\nrelated-to-bug: 2548426\n"
    },
    {
      "commit": "fcdfad530df30d0e7fe21a7a463a3fe369ed325a",
      "tree": "96e8e9e521950ce234dbe2011deecc6c0e0483ed",
      "parents": [
        "a17a1347ffe281fc70633ba8dc98f6cf49ac06ff",
        "983b449a27b5fa91eca82ede5204b4341899be62"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Fri Apr 02 11:18:32 2010 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Apr 02 11:18:32 2010 -0700"
      },
      "message": "Merge \"Support another kind of iso mpeg4 file.\" into froyo"
    },
    {
      "commit": "a17a1347ffe281fc70633ba8dc98f6cf49ac06ff",
      "tree": "bbecb38baa1d87f4319624522d34ece1a3df96ec",
      "parents": [
        "71662fe8f5cc0dda0837596e9d44200d302697e8"
      ],
      "author": {
        "name": "Dave Sparks",
        "email": "davidsparks@android.com",
        "time": "Thu Apr 01 18:00:58 2010 -0700"
      },
      "committer": {
        "name": "Dave Sparks",
        "email": "davidsparks@android.com",
        "time": "Thu Apr 01 18:08:22 2010 -0700"
      },
      "message": "Use local lock for most MediaMetadataRetriever methods. Bug 2560834.\n\nMediaMetadataRetriever uses a single static lock for all operations.\nThis effectively serializes all metadata retrieval operations in a\nsingle process. This patch uses the object level lock for all normal\noperations and only uses the static lock to serialize calls to\nrelease.\n\nChange-Id: I81c9f234c2f0007a26d18e1398c709b41a4dbbd7\n"
    },
    {
      "commit": "983b449a27b5fa91eca82ede5204b4341899be62",
      "tree": "2674d81118782c6c7f85e7637ef5cbd462dd90bc",
      "parents": [
        "13ecb8d4e47fc5a8af8487a133d7c91b9ce55326"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Thu Apr 01 11:42:50 2010 -0700"
      },
      "committer": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Thu Apr 01 11:42:50 2010 -0700"
      },
      "message": "Support another kind of iso mpeg4 file.\n\nChange-Id: I052aa1c971c577e50679b6a9263acd32895906c7\nrelated-to-bug: 2558114\n"
    },
    {
      "commit": "71662fe8f5cc0dda0837596e9d44200d302697e8",
      "tree": "0a1696e808f1fb549c6107fdd770a1d1cb05793a",
      "parents": [
        "ab4412a1992ce7ec0965cdbf616d64d821b67183",
        "0b42f253d15a190e230df43a4b45a3c483e5869a"
      ],
      "author": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Thu Apr 01 10:33:45 2010 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Apr 01 10:33:45 2010 -0700"
      },
      "message": "Merge \"Public API changes for CameraProfile and CamcorderProfile classes\" into froyo"
    },
    {
      "commit": "ab4412a1992ce7ec0965cdbf616d64d821b67183",
      "tree": "7c7845127c0cff77911680f20909ebe2fc2c7712",
      "parents": [
        "13ecb8d4e47fc5a8af8487a133d7c91b9ce55326"
      ],
      "author": {
        "name": "Dave Sparks",
        "email": "davidsparks@android.com",
        "time": "Wed Mar 31 17:44:00 2010 -0700"
      },
      "committer": {
        "name": "Dave Sparks",
        "email": "davidsparks@android.com",
        "time": "Thu Apr 01 09:16:05 2010 -0700"
      },
      "message": "Update AMR codec.\n\nChange-Id: I8ecd2712863f6962b762f26898002912d1c77afb\n"
    },
    {
      "commit": "0b42f253d15a190e230df43a4b45a3c483e5869a",
      "tree": "f735864f9a75914604e3a2e9856d22e53d030c23",
      "parents": [
        "13ecb8d4e47fc5a8af8487a133d7c91b9ce55326"
      ],
      "author": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Wed Mar 31 13:56:29 2010 -0700"
      },
      "committer": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Thu Apr 01 00:12:20 2010 -0700"
      },
      "message": "Public API changes for CameraProfile and CamcorderProfile classes\n\n1. CamcorderProfile: “@see” links are broken; Remove m prefix from fields; remove “final”\n2. CamcorderProfile.Quality: use an int rather than an enum\n3. Add API on MediaRecorder to pass in a CamcorderProfile\n4. CameraProfile.getImageEncodingQualityLevels @hide or make it consistent with CamcorderProfile\n5. Remove a convenient method and instead let the (mms) app do that task\n\nbug - 2553862\n\nChange-Id: I759215c7892f772aeddf3651d17038489c6fbc50\n"
    },
    {
      "commit": "13ecb8d4e47fc5a8af8487a133d7c91b9ce55326",
      "tree": "83cfe96d175ceb77d60d81bec327f703d20e9944",
      "parents": [
        "a7313de4a402043fa5039558f05731189f354be6",
        "ba0707dc52b3ad2bec2244e1e6c39f31e06d467a"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Wed Mar 31 11:33:19 2010 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Mar 31 11:33:19 2010 -0700"
      },
      "message": "Merge \"Skip any number of leading ID3v2 tags (instead of just the first), also simplify/fix the find-consecutive-mp3-frames functionality.\" into froyo"
    },
    {
      "commit": "ba0707dc52b3ad2bec2244e1e6c39f31e06d467a",
      "tree": "214895bc4b1726a8e88a132c17d60ad2a2afc269",
      "parents": [
        "08f00853886c0d26e087c23da3e24df5d36d3674"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Wed Mar 31 11:08:23 2010 -0700"
      },
      "committer": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Wed Mar 31 11:08:23 2010 -0700"
      },
      "message": "Skip any number of leading ID3v2 tags (instead of just the first), also simplify/fix the find-consecutive-mp3-frames functionality.\n\nChange-Id: I30b93b21de9bd5509b617cca21f46331562c30ac\nrelated-to-bug: 2553445\n"
    },
    {
      "commit": "a7313de4a402043fa5039558f05731189f354be6",
      "tree": "b5ac874f6e40181d72b2ed784f0a25aa2cafcfd0",
      "parents": [
        "2d832a1292d57a1904190b6b95cb1d03e746e00a",
        "1321fdd94d354431b930735e9f38f32ecd189a2d"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Wed Mar 31 09:48:22 2010 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Mar 31 09:48:22 2010 -0700"
      },
      "message": "Merge \"Properly send a MEDIA_SEEK_COMPLETE notification for a seek request while paused (legacy behaviour).\" into froyo"
    },
    {
      "commit": "1321fdd94d354431b930735e9f38f32ecd189a2d",
      "tree": "e1fe11cc77be0853ba8fe29368d4a4705ba8cd7d",
      "parents": [
        "08f00853886c0d26e087c23da3e24df5d36d3674"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Wed Mar 31 09:40:15 2010 -0700"
      },
      "committer": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Wed Mar 31 09:40:15 2010 -0700"
      },
      "message": "Properly send a MEDIA_SEEK_COMPLETE notification for a seek request while paused (legacy behaviour).\n\nChange-Id: I64da5eb97c75b269b4668b3628ed0f05f2e36e51\nrelated-to-bug: 2557482\n"
    },
    {
      "commit": "2d832a1292d57a1904190b6b95cb1d03e746e00a",
      "tree": "02fcbd37c22e648e82c27334207a4840370d4f03",
      "parents": [
        "08f00853886c0d26e087c23da3e24df5d36d3674",
        "47f729a0543376773070aaeafc12e13eed03f7be"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Tue Mar 30 15:40:38 2010 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Mar 30 15:40:38 2010 -0700"
      },
      "message": "Merge \"Properly fill in the component name for the software decoders.\" into froyo"
    },
    {
      "commit": "47f729a0543376773070aaeafc12e13eed03f7be",
      "tree": "c77d1da47ecd6675634467db307e9ece4134ac18",
      "parents": [
        "65997f022fa3f557ba864ecc99a1aa33df54c2db"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Tue Mar 30 13:50:38 2010 -0700"
      },
      "committer": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Tue Mar 30 13:50:38 2010 -0700"
      },
      "message": "Properly fill in the component name for the software decoders.\n\nChange-Id: I92071481f7ed94922b10856c981e507a9eec4c0c\nrelated-to-bug: 2557787\n"
    },
    {
      "commit": "08f00853886c0d26e087c23da3e24df5d36d3674",
      "tree": "506869c86ae5b9b41449f76eeb61a206fa39d442",
      "parents": [
        "65997f022fa3f557ba864ecc99a1aa33df54c2db"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Tue Mar 30 13:14:19 2010 -0700"
      },
      "committer": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Tue Mar 30 13:21:12 2010 -0700"
      },
      "message": "Timeout on socket recv calls after 5secs, retry connection also if server unexpectedly closed the connection on its end and we know that there should\u0027ve been more data available.\n\nChange-Id: I749859dae28356080fe72ba035719754e7339c7f\nrelated-to-bug: 2492187\n"
    },
    {
      "commit": "65997f022fa3f557ba864ecc99a1aa33df54c2db",
      "tree": "d229e48b1d0084b2f0f0bb48d91ad34638b0274f",
      "parents": [
        "fb8391bfe3f21d08add3b65ba08d4d097c2bfdb6"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Mon Mar 29 15:13:40 2010 -0700"
      },
      "committer": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Mon Mar 29 15:13:40 2010 -0700"
      },
      "message": "Limit the total amount of ID3 metadata to something (un-)reasonable: 3MB.\n\nChange-Id: I3f9bbcdd4f563bac27c4ccae58e4179656c264b6\nrelated-to-bug: 1903971\n"
    },
    {
      "commit": "fb8391bfe3f21d08add3b65ba08d4d097c2bfdb6",
      "tree": "ea5403cc0b3fa9cff61a302f87b10718db3341e5",
      "parents": [
        "8cc76ae259ad81d5a40277bbf5532696ebae8da8",
        "03f4e14ec612d53b5e2b987555b24afcbbe319d1"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Mon Mar 29 12:58:03 2010 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Mar 29 12:58:03 2010 -0700"
      },
      "message": "Merge \"Fix a bug where the TimedEventQueue mistakenly accesses a bogus event if the only event in the queue has been cancelled while we\u0027re waiting for its scheduled time. Avoids potential int64_t overflow when converting from us to ns.\" into froyo"
    },
    {
      "commit": "03f4e14ec612d53b5e2b987555b24afcbbe319d1",
      "tree": "4d488945c8b209576af68e8375552939c455c38e",
      "parents": [
        "f8ed70a20f8b006539af98c8ad45be9561665f82"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Mon Mar 29 11:52:08 2010 -0700"
      },
      "committer": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Mon Mar 29 12:01:25 2010 -0700"
      },
      "message": "Fix a bug where the TimedEventQueue mistakenly accesses a bogus event if the only event in the queue has been cancelled while we\u0027re waiting for its scheduled time. Avoids potential int64_t overflow when converting from us to ns.\n\nChange-Id: I50e8976ce8d0ecc47ee0eb497296930877ce306a\nrelated-to-bug: 2549465\n"
    },
    {
      "commit": "8cc76ae259ad81d5a40277bbf5532696ebae8da8",
      "tree": "8922e24a90a8b537ce679662287f01aa583f80bd",
      "parents": [
        "2415ecb5bb4e1459024f6d6c8ae2d6e3dc4fbdc7"
      ],
      "author": {
        "name": "Wu-cheng Li",
        "email": "wuchengli@google.com",
        "time": "Mon Mar 29 16:21:12 2010 +0800"
      },
      "committer": {
        "name": "Wu-cheng Li",
        "email": "wuchengli@google.com",
        "time": "Mon Mar 29 16:21:12 2010 +0800"
      },
      "message": "Add some comments for zoom methods.\n\nAlso change RuntimeException to IllegalArgumentException.\nbug:2458926\n\nChange-Id: I87af31f5f3f10244131a1117bd1725c2d292b587\n"
    },
    {
      "commit": "2415ecb5bb4e1459024f6d6c8ae2d6e3dc4fbdc7",
      "tree": "e0bacf40cb48727365e2bf822656df4c814c5bb1",
      "parents": [
        "f8ed70a20f8b006539af98c8ad45be9561665f82"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Fri Mar 26 10:17:17 2010 -0700"
      },
      "committer": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Fri Mar 26 10:17:17 2010 -0700"
      },
      "message": "Finer-grained locking in AwesomePlayer, position and duration are now protected by a separate mutex that\u0027s only held for brief moments of time.\n\nChange-Id: I989baf5a0ea8923985c560c2ec274abda0780242\nrelated-to-bug: 2546577\n"
    },
    {
      "commit": "f8ed70a20f8b006539af98c8ad45be9561665f82",
      "tree": "ef571dd56440871460b68360524a354c640bff3f",
      "parents": [
        "246c817c7e4514a34f996a2f38d501b52f617b7e"
      ],
      "author": {
        "name": "Chih-Chung Chang",
        "email": "chihchung@google.com",
        "time": "Wed Mar 24 16:38:02 2010 -0700"
      },
      "committer": {
        "name": "Chih-Chung Chang",
        "email": "chihchung@google.com",
        "time": "Wed Mar 24 16:45:23 2010 -0700"
      },
      "message": "Call unlinkToDeath() when we disconnect the Camera,\nso we don\u0027t hold the (weak) reference to it, which caused\n(small) memory leaks.\n\nChange-Id: If7d58a354fd38c8bc380946bf227b52988ac5118\n"
    },
    {
      "commit": "246c817c7e4514a34f996a2f38d501b52f617b7e",
      "tree": "fe1be8f12f8ee9de02e8a017ced6f7b8f22471e4",
      "parents": [
        "e966fb05c7e67a7f5dce65024de60aac83eb6f81",
        "08a88e195d2b3697f2f967e9216491e8c5bd3c9e"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Wed Mar 24 13:53:28 2010 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Mar 24 13:53:28 2010 -0700"
      },
      "message": "Merge \"QueryCodecs now returns the names of the software codecs (non-OpenMax) as well.\""
    },
    {
      "commit": "08a88e195d2b3697f2f967e9216491e8c5bd3c9e",
      "tree": "6151fda512084e1b13ecbfec4fcacce457963eaa",
      "parents": [
        "9584a0726582b6b7603032870c62b4fccd5ce076"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Wed Mar 24 13:49:20 2010 -0700"
      },
      "committer": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Wed Mar 24 13:49:20 2010 -0700"
      },
      "message": "QueryCodecs now returns the names of the software codecs (non-OpenMax) as well.\n\nChange-Id: Ic4cd61f4dd722fb0dda544ffaa5615e87e3a4d40\nrelated-to-bug: 2541647\n"
    },
    {
      "commit": "e966fb05c7e67a7f5dce65024de60aac83eb6f81",
      "tree": "eb2d5a310a97150bf131d427c5c30ff4097fcc9d",
      "parents": [
        "9584a0726582b6b7603032870c62b4fccd5ce076"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Wed Mar 24 09:24:40 2010 -0700"
      },
      "committer": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Wed Mar 24 09:42:21 2010 -0700"
      },
      "message": "Enable early termination of the prefetcher\u0027s preparation phase.\n\nChange-Id: I929ac9b0fd0b6ebd98c1bc56be18ac8f8378d48c\nrelated-to-bug: 2537407\n"
    },
    {
      "commit": "9584a0726582b6b7603032870c62b4fccd5ce076",
      "tree": "a46482ea12f9c94c7821ab975221f249fdfd6df9",
      "parents": [
        "54b1a0550411c2fd2084d82d28934d505c37349a"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Tue Mar 23 15:30:57 2010 -0700"
      },
      "committer": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Tue Mar 23 15:30:57 2010 -0700"
      },
      "message": "Clear the local prefetcher strong reference before signalling that prepare() was cancelled early in order to avoid a race condition that occasionally triggered an assertion from the main thread.\n\nChange-Id: I0db198fe5fd0fbe9a6c90a8e5924a2df05432c4c\nrelated-to-bug: 2538486\n"
    },
    {
      "commit": "54b1a0550411c2fd2084d82d28934d505c37349a",
      "tree": "f7f3959667145710bfac8c7645405ae0079addb4",
      "parents": [
        "589843b5969aa64a8f9a57fc8176c80b0ddce3c6"
      ],
      "author": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Fri Mar 19 16:14:13 2010 -0700"
      },
      "committer": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Fri Mar 19 16:16:43 2010 -0700"
      },
      "message": "libutils Condition are now PRIVATE by default\n\nCondition must be initialized with SHARED for the old behavior, where\nthey can be used accross processes.\n\nUpdated the two places android that require SHARED conditions.\n\nPRIVATE conditions (and mutexes) use more efficient syscalls.\n\nChange-Id: I9a281a4b88206e92ac559c66554e886b9c62db3a\n"
    },
    {
      "commit": "589843b5969aa64a8f9a57fc8176c80b0ddce3c6",
      "tree": "03e2cb5c088d66da639beecb44ac58445916b816",
      "parents": [
        "1c6cebadf4579d997fdce946a1d00317c3e4c567",
        "5d4f85d1e902a477ec7c8e3327693feee97e1c31"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Thu Mar 18 14:08:56 2010 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Mar 18 14:08:56 2010 -0700"
      },
      "message": "Merge \"Report a runtime error rather than asserting if the amr software decoder reads more data than it was given(!)\""
    },
    {
      "commit": "5d4f85d1e902a477ec7c8e3327693feee97e1c31",
      "tree": "431af57d7740cf7209a18cd39352d9365898c735",
      "parents": [
        "a89e12dfa46fe42b6309e945585310a89a5a1600"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Thu Mar 18 14:03:47 2010 -0700"
      },
      "committer": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Thu Mar 18 14:03:47 2010 -0700"
      },
      "message": "Report a runtime error rather than asserting if the amr software decoder reads more data than it was given(!)\n\nChange-Id: I0a7ad65051a6663a583ea82da5fc75227dcdbbfa\n"
    },
    {
      "commit": "1c6cebadf4579d997fdce946a1d00317c3e4c567",
      "tree": "920ee0a7dbf91ee8ff4eaa3802336830faa738a8",
      "parents": [
        "a89e12dfa46fe42b6309e945585310a89a5a1600"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Thu Mar 18 13:37:39 2010 -0700"
      },
      "committer": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Thu Mar 18 13:37:39 2010 -0700"
      },
      "message": "Tweak the omx tests to always do a seek-beyond-EOS on the first iteration, followed by a linear read on the second iteration.\n\nChange-Id: I16fc9e42ee9f8e4cb120ab41364cae6dd4544634\nrelated-to-bug: 2338792\n"
    },
    {
      "commit": "a89e12dfa46fe42b6309e945585310a89a5a1600",
      "tree": "ceafdf77d54ced4b57c90f3499cc97e0c2b432f9",
      "parents": [
        "2fd5624994d3dda4a4b1c2c485ec3e8f8b53cd6e"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Thu Mar 18 10:51:09 2010 -0700"
      },
      "committer": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Thu Mar 18 10:51:09 2010 -0700"
      },
      "message": "Either the software mp3 decoder\u0027s CRC computation is wrong (and PV never enabled it before) or there are files in the wild with wrong CRCs that nonetheless decode correctly, either way, opt out of CRC verification.\n\nChange-Id: I1d9bd78f4efb53faa82c67110cf61f78122e40f8\nrelated-to-bug: 2511393\n"
    },
    {
      "commit": "2fd5624994d3dda4a4b1c2c485ec3e8f8b53cd6e",
      "tree": "dd7197cc11e62b40ddcc89b28ae976d52801f7e8",
      "parents": [
        "601b38d3c53653270c16292489e8c28945582dae",
        "0887d170c7dc57411855382e326dd471824c9c02"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Thu Mar 18 09:01:01 2010 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Mar 18 09:01:01 2010 -0700"
      },
      "message": "Merge \"While streaming media data, upon a socket-read error, try reconnecting to the server and attempt to re-read for at most 3 times.\""
    },
    {
      "commit": "0887d170c7dc57411855382e326dd471824c9c02",
      "tree": "e8b9c0ca0e7fad71bba8f6e947c5368fbc412d3e",
      "parents": [
        "72d747da6672c68bc82e05912bf57d4e2bac2c3c"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Wed Mar 17 16:38:30 2010 -0700"
      },
      "committer": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Wed Mar 17 16:38:30 2010 -0700"
      },
      "message": "While streaming media data, upon a socket-read error, try reconnecting to the server and attempt to re-read for at most 3 times.\n\nChange-Id: I7534905e07a6456d18b26d5d60fa8915f25ae99e\nrelated-to-bug: 2492187\n"
    },
    {
      "commit": "601b38d3c53653270c16292489e8c28945582dae",
      "tree": "d5690ed93cb710f0cc150f24228fa480bd145491",
      "parents": [
        "d3f93c572e55dc902d01f8eeda1d107a8b9128e2",
        "c9915aed58b3846251406b337ba2e1813d71f07e"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Wed Mar 17 12:53:22 2010 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Mar 17 12:53:22 2010 -0700"
      },
      "message": "Merge \"Instead of asserting that nothing bad happened during (software-)AAC decoding, return a runtime error if appropriate.\""
    },
    {
      "commit": "c9915aed58b3846251406b337ba2e1813d71f07e",
      "tree": "6daeeee76a53d10741c70fc2321d1697bb28772a",
      "parents": [
        "72d747da6672c68bc82e05912bf57d4e2bac2c3c"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Wed Mar 17 11:29:35 2010 -0700"
      },
      "committer": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Wed Mar 17 11:29:35 2010 -0700"
      },
      "message": "Instead of asserting that nothing bad happened during (software-)AAC decoding, return a runtime error if appropriate.\n\nChange-Id: I175492aba8fd6cc1320d047bd2608750d7b193f9\nrelated-to-bug: 2492187\n"
    },
    {
      "commit": "d3f93c572e55dc902d01f8eeda1d107a8b9128e2",
      "tree": "d18704a2f9806b9ce36ed67bbb7119efd7b871a4",
      "parents": [
        "72d747da6672c68bc82e05912bf57d4e2bac2c3c",
        "be55a2d66f03e80524a346500ffa9fd046410b28"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Wed Mar 17 09:16:27 2010 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Mar 17 09:16:27 2010 -0700"
      },
      "message": "Merge \"Fix issue 2416481: Support Voice Dialer over BT SCO.\""
    }
  ],
  "next": "be55a2d66f03e80524a346500ffa9fd046410b28"
}
