)]}'
{
  "log": [
    {
      "commit": "bdcc8dc002f9b936fe6cd0a8ae4f8a6cdf523c40",
      "tree": "7524a7777c6a5c1b80d19f9a3405e1098272b334",
      "parents": [
        "575bb4d0fe5da758c695a046bb318caa0cae3e1f",
        "c4c3a2d4123f7dfe8c6ed0c26fb14aeb7b8d8f61"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Tue Jan 11 15:22:46 2011 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Tue Jan 11 15:22:46 2011 -0800"
      },
      "message": "am 0827e697: Merge \"Increase cache size and low-watermark threshold, also\" into honeycomb\n\n* commit \u00270827e697a9965195ca12ba593332c555702aa94a\u0027:\n  Increase cache size and low-watermark threshold, also\n"
    },
    {
      "commit": "575bb4d0fe5da758c695a046bb318caa0cae3e1f",
      "tree": "09f591f99fd5fcd8191799dbd2f9b90cf84c57a0",
      "parents": [
        "ac2652c25f5d2a38709131f7731651bc5819fed5",
        "fd52174eaacf661e9e7b1ff0001a9587f1b90b87"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Tue Jan 11 15:22:42 2011 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Tue Jan 11 15:22:42 2011 -0800"
      },
      "message": "am 7f92be88: Merge \"Properly parse Matroska lacing flags and extract all frames contained in a block.\" into honeycomb\n\n* commit \u00277f92be88e0d89a693bed4d620a83aea1a989c68e\u0027:\n  Properly parse Matroska lacing flags and extract all frames contained in a block.\n"
    },
    {
      "commit": "c4c3a2d4123f7dfe8c6ed0c26fb14aeb7b8d8f61",
      "tree": "6d4de35e173f9e2497dbc1b8b449ebc0e1b9e54d",
      "parents": [
        "fd52174eaacf661e9e7b1ff0001a9587f1b90b87",
        "145e68fc778275963189b02a1adcbe27cce4d769"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Tue Jan 11 15:20:39 2011 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Jan 11 15:20:39 2011 -0800"
      },
      "message": "Merge \"Increase cache size and low-watermark threshold, also\" into honeycomb"
    },
    {
      "commit": "fd52174eaacf661e9e7b1ff0001a9587f1b90b87",
      "tree": "2b9d911b20fd123fd563971fe4a44d63f270fb07",
      "parents": [
        "8eb04084b96d59802615f0e0570359c35ca3df61",
        "50c8bea8fba2fcafb14696399028bdbc094dc995"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Tue Jan 11 15:16:04 2011 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Jan 11 15:16:04 2011 -0800"
      },
      "message": "Merge \"Properly parse Matroska lacing flags and extract all frames contained in a block.\" into honeycomb"
    },
    {
      "commit": "145e68fc778275963189b02a1adcbe27cce4d769",
      "tree": "91addc4557024a25d8ba64efc79b821be5ca1877",
      "parents": [
        "0ecfbd1cf37dbfb44d19c27351f5769309ac028d"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Tue Jan 11 15:05:28 2011 -0800"
      },
      "committer": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Tue Jan 11 15:05:28 2011 -0800"
      },
      "message": "Increase cache size and low-watermark threshold, also\n\nMediaPlayer now sends out MEDIA_INFO,MEDIA_INFO_VIDEO_TRACK_LAGGING messages\nto the JAVA client informing it how much (if at all) the video lags behind\naudio (arg2 is the media delay in ms).\n\nChange-Id: I6933f573d8597a35112e4b5ee0fcb826a7f6ddd1\nrelated-to-bug: 3335220\n"
    },
    {
      "commit": "ac2652c25f5d2a38709131f7731651bc5819fed5",
      "tree": "d8c86badbc1e53832fe2e3cf41f7970843c3f471",
      "parents": [
        "b03f5627d4e0d80ea7b185e0af1d8a5d19461325",
        "9cfc9eff42a0700029c39e89c38b52488845ad63"
      ],
      "author": {
        "name": "Gloria Wang",
        "email": "gwang@google.com",
        "time": "Tue Jan 11 14:55:56 2011 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Tue Jan 11 14:55:56 2011 -0800"
      },
      "message": "am 9e0bb6d5: am 0544d059: Merge \"DRM Framework bug fixes.\"\n\n* commit \u00279e0bb6d5eef5dfe2da60c50f3aaa39512307d11d\u0027:\n  DRM Framework bug fixes.\n"
    },
    {
      "commit": "b03f5627d4e0d80ea7b185e0af1d8a5d19461325",
      "tree": "1a9363b2e35928f3d126e20c54d8ba76a2cad37a",
      "parents": [
        "8eb04084b96d59802615f0e0570359c35ca3df61",
        "e28b1e565705ffb85b05c8e226e1ab5010cb3821"
      ],
      "author": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Tue Jan 11 13:53:11 2011 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Tue Jan 11 13:53:11 2011 -0800"
      },
      "message": "am d1da80a4: am ba77a3f9: Add support for the \"compilation\" tag in mp3, mp4 and ogg, and also add support for two common ways of specifying album artist in ogg files. b/3311831\n\n* commit \u0027d1da80a4b3d50c1be120b0e873363da711428a81\u0027:\n  Add support for the \"compilation\" tag in mp3, mp4 and ogg, and also add support for two common ways of specifying album artist in ogg files. b/3311831\n"
    },
    {
      "commit": "50c8bea8fba2fcafb14696399028bdbc094dc995",
      "tree": "2c80abf4d69357ba8f4ae3652b90f717f2a626fd",
      "parents": [
        "0ecfbd1cf37dbfb44d19c27351f5769309ac028d"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Tue Jan 11 11:56:06 2011 -0800"
      },
      "committer": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Tue Jan 11 13:05:36 2011 -0800"
      },
      "message": "Properly parse Matroska lacing flags and extract all frames contained in a block.\n\nChange-Id: I1aca46b2e28b9cad88bf4a296f675e81e66ee095\nrelated-to-bug: 3331623\n"
    },
    {
      "commit": "8eb04084b96d59802615f0e0570359c35ca3df61",
      "tree": "1a9363b2e35928f3d126e20c54d8ba76a2cad37a",
      "parents": [
        "b0fb6bf746f1d611033c55a4a1ab5a4b0e212a95",
        "c29dd6f4ccd7ea7e41921d48d03d26e159aeaae4"
      ],
      "author": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Tue Jan 11 11:23:47 2011 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Jan 11 11:23:47 2011 -0800"
      },
      "message": "Merge \"Fix uninitialized rect structure for retrieving rect cropping information from decoder\" into honeycomb"
    },
    {
      "commit": "b0fb6bf746f1d611033c55a4a1ab5a4b0e212a95",
      "tree": "8e66813414547645fdffd9eaae53f81f5fd2e400",
      "parents": [
        "0ecfbd1cf37dbfb44d19c27351f5769309ac028d"
      ],
      "author": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Mon Jan 10 20:42:21 2011 -0800"
      },
      "committer": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Mon Jan 10 20:43:33 2011 -0800"
      },
      "message": "Don\u0027t release the video recording frame after recording is stopped in CameraSourceTimeLapse.cpp\n\nbug - 3334999\n\nChange-Id: I1c83080713696221048da9b1a9f8c2ee48849ade\n"
    },
    {
      "commit": "0ecfbd1cf37dbfb44d19c27351f5769309ac028d",
      "tree": "11b98dba45992626a17714e04272cdb3fd0fe930",
      "parents": [
        "32ad210e4e4bcbdf912a01c9d2ff105cb3c5056f"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Mon Jan 10 11:57:30 2011 -0800"
      },
      "committer": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Mon Jan 10 11:57:30 2011 -0800"
      },
      "message": "Return a runtime error instead of asserting if the M4vH263Decoder fails in start()\n\nChange-Id: Ie704a72685f749613fa0ed5fa6f461abc0406371\nrelated-to-bug: 3328200\n"
    },
    {
      "commit": "32ad210e4e4bcbdf912a01c9d2ff105cb3c5056f",
      "tree": "57bc9bcd78d3844035a923a70b516e4dc2872a24",
      "parents": [
        "14c858e80dfe2030c9f343dc0c6e2048e030731b",
        "31e2508c75018145a8238925ff1a08cbde4e799a"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Mon Jan 10 11:26:38 2011 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Jan 10 11:26:38 2011 -0800"
      },
      "message": "Merge \"NuPlayer now properly sends MEDIA_SET_VIDEOSIZE notifications.\" into honeycomb"
    },
    {
      "commit": "31e2508c75018145a8238925ff1a08cbde4e799a",
      "tree": "072e86ff81cc378452262d8ff899301ae8abf696",
      "parents": [
        "eb0d0c48ebfcee5e8141ae25fe42a9eac6aae230"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Mon Jan 10 10:38:31 2011 -0800"
      },
      "committer": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Mon Jan 10 10:38:31 2011 -0800"
      },
      "message": "NuPlayer now properly sends MEDIA_SET_VIDEOSIZE notifications.\n\nChange-Id: I99b4223ad6ecfd8839a3c0e737fef3165565d76d\nrelated-to-bug: 3336496\n"
    },
    {
      "commit": "14c858e80dfe2030c9f343dc0c6e2048e030731b",
      "tree": "f78e159783fddbf670cf2a2d1d582653adb7709c",
      "parents": [
        "eb0d0c48ebfcee5e8141ae25fe42a9eac6aae230"
      ],
      "author": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Mon Jan 10 08:55:02 2011 -0800"
      },
      "committer": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Mon Jan 10 08:57:50 2011 -0800"
      },
      "message": "Avoid deadlock in OMX::freeNode by making sure OMXCodecObserver does not hold the last reference of OMXCodec object\n\nbug - 3336424\n\nChange-Id: I4c79b66a900c527e3ae6a833f76d5da1b75c5a89\n"
    },
    {
      "commit": "eb0d0c48ebfcee5e8141ae25fe42a9eac6aae230",
      "tree": "3475e7f5e88c9ec50a000e86c43f5cf20c4c0379",
      "parents": [
        "aee6c07b3572bf2510cd9e7d29c454fcfedde31d"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Sun Jan 09 15:33:01 2011 -0800"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Sun Jan 09 16:05:30 2011 -0800"
      },
      "message": "Fix issue 3317627.\n\nThe fix consists in selecting the digital audio device (SPDIF/HDMI)\nwhen available if the routing strategy is STRATEGY_PHONE.\n\nChange-Id: Ie500ae92f5c01f2511988543852ba559c6e5994b\n"
    },
    {
      "commit": "aee6c07b3572bf2510cd9e7d29c454fcfedde31d",
      "tree": "7a337a7a6f343226d2f0b337ee7340cf1a50bb4b",
      "parents": [
        "11f8109ad8646d3acd9a0987613229cde59d52c1"
      ],
      "author": {
        "name": "pmehendale",
        "email": "pmehendale@nvidia.com",
        "time": "Thu Jan 06 14:43:49 2011 -0800"
      },
      "committer": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Fri Jan 07 16:14:40 2011 -0800"
      },
      "message": "Awesomeplayer : Frame dropping logic change\n\nChanged late frame drop policy, now we are dropping only 1 in 8,\nlate (\u003e 40ms) frames. Dropping every late frame result in lot of noticible\npauses, usually with peaky bitrate activity these pauses become more prominant.\nDropping few frames is still required to allow overall playback chain,\nto regain the performance.\nExperimentally decided to drop Max one late frame in 8.\n\nChange-Id: If20848d619a76aaf8179b1e5c3155610e3bc85fd\n"
    },
    {
      "commit": "9cfc9eff42a0700029c39e89c38b52488845ad63",
      "tree": "e838338c56e10b5de2f718c9c9b7e7130ae902a5",
      "parents": [
        "e28b1e565705ffb85b05c8e226e1ab5010cb3821",
        "c2322f7ac756e78de9491c17dc3c0dd14456c599"
      ],
      "author": {
        "name": "Gloria Wang",
        "email": "gwang@google.com",
        "time": "Fri Jan 07 15:34:08 2011 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Fri Jan 07 15:34:08 2011 -0800"
      },
      "message": "am 0544d059: Merge \"DRM Framework bug fixes.\"\n\n* commit \u00270544d05990c0f43a143e98e71f7fc60277872806\u0027:\n  DRM Framework bug fixes.\n"
    },
    {
      "commit": "c29dd6f4ccd7ea7e41921d48d03d26e159aeaae4",
      "tree": "fabd347a70dc4c11a24ad3c5216920ab4f667c2d",
      "parents": [
        "11f8109ad8646d3acd9a0987613229cde59d52c1"
      ],
      "author": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Fri Jan 07 14:56:34 2011 -0800"
      },
      "committer": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Fri Jan 07 14:57:34 2011 -0800"
      },
      "message": "Fix uninitialized rect structure for retrieving rect cropping information from decoder\n\no This patch is from NV.\n\nbug - 3333254\n\nChange-Id: I02bc26af464ea0bc9ad9f2e111474e8398c67220\n"
    },
    {
      "commit": "11f8109ad8646d3acd9a0987613229cde59d52c1",
      "tree": "71db4bd4e70e89995712b0fa45ac4f5e7a2ad0da",
      "parents": [
        "20ad3a341a96e7746015ccb7369fa567897e11f6"
      ],
      "author": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Thu Jan 06 11:12:17 2011 -0800"
      },
      "committer": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Fri Jan 07 12:42:07 2011 -0800"
      },
      "message": "Add support for the \"compilation\" tag in mp3, mp4 and ogg, and also add\nsupport for two common ways of specifying album artist in ogg files.\nb/3311831\n\n(cherry-picked from GB because of weird automerger failure)\n\nChange-Id: Ibf12a3d6bc8bbc2ac5ea815de6b33414b8f53f0f\n"
    },
    {
      "commit": "c2322f7ac756e78de9491c17dc3c0dd14456c599",
      "tree": "07e0dad46bb5d1a926db251d06ae812fc7beb204",
      "parents": [
        "7f7371ad2df83fe6a085089446575d0bcd24d59a",
        "c618b5af98dec06d49374a61a5a94016f9fec2d3"
      ],
      "author": {
        "name": "Gloria Wang",
        "email": "gwang@google.com",
        "time": "Fri Jan 07 11:10:49 2011 -0800"
      },
      "committer": {
        "name": "Android Code Review",
        "email": "code-review@android.com",
        "time": "Fri Jan 07 11:10:49 2011 -0800"
      },
      "message": "Merge \"DRM Framework bug fixes.\""
    },
    {
      "commit": "e28b1e565705ffb85b05c8e226e1ab5010cb3821",
      "tree": "ac2b9fc614c8509a83742260841358f0b5e043e5",
      "parents": [
        "e6bf51ea9c5a4c1294e9a6c26d8a9b86534fee1f",
        "288fb7e5bd7060cbe9b737500975754c9312e2db"
      ],
      "author": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Thu Jan 06 20:29:11 2011 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Thu Jan 06 20:29:11 2011 -0800"
      },
      "message": "am ba77a3f9: Add support for the \"compilation\" tag in mp3, mp4 and ogg, and also add support for two common ways of specifying album artist in ogg files. b/3311831\n\n* commit \u0027ba77a3f9cb1d68b2ed4813aaae856444578e3a75\u0027:\n  Add support for the \"compilation\" tag in mp3, mp4 and ogg, and also add support for two common ways of specifying album artist in ogg files. b/3311831\n"
    },
    {
      "commit": "20ad3a341a96e7746015ccb7369fa567897e11f6",
      "tree": "9e97280c3437b3c9f5a63247e625f1a965db4516",
      "parents": [
        "aea5aff45a1af14e249ac311f0a128a621a7d13e"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Thu Jan 06 17:32:00 2011 -0800"
      },
      "committer": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Thu Jan 06 17:32:00 2011 -0800"
      },
      "message": "Fix typo.\n\nChange-Id: I2d7796425ea746432964ce48959b6c227d31df11\n"
    },
    {
      "commit": "aea5aff45a1af14e249ac311f0a128a621a7d13e",
      "tree": "2db633500809c43dd58e07a0245660e4fd1354a9",
      "parents": [
        "9a3c0d65bfa55df779ebe285d5d26e257ca37c22"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Thu Jan 06 16:32:05 2011 -0800"
      },
      "committer": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Thu Jan 06 16:32:05 2011 -0800"
      },
      "message": "If the stream for the new bandwidth doesn\u0027t have the segment we\u0027re looking for...\n\ngo back to the previous bandwidth\u0027 stream.\n\nChange-Id: I3477cb6932102883509a7cbe9fb2b3bb02dac8c6\n"
    },
    {
      "commit": "288fb7e5bd7060cbe9b737500975754c9312e2db",
      "tree": "666d36f72e5d8517fd39db346d941286529c3a69",
      "parents": [
        "91dcf1510491c4128f506a0d28e64de5ecbf459d"
      ],
      "author": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Thu Jan 06 11:12:17 2011 -0800"
      },
      "committer": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Thu Jan 06 15:05:06 2011 -0800"
      },
      "message": "Add support for the \"compilation\" tag in mp3, mp4 and ogg, and also add\nsupport for two common ways of specifying album artist in ogg files.\nb/3311831\n\nChange-Id: Iba1152013b7577168af71f947d7249560419fa05\n"
    },
    {
      "commit": "9a3c0d65bfa55df779ebe285d5d26e257ca37c22",
      "tree": "91dba23862d7ec1b2a95656131665b1a8c9587b7",
      "parents": [
        "93aa950be52dc89f370c423f7b90c52093f9a3fa",
        "4b197e1ffe46eb73ebdb80efc984bfde336b8e92"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Thu Jan 06 14:30:27 2011 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Jan 06 14:30:27 2011 -0800"
      },
      "message": "Merge \"Use NuPlayer for HTTP live streaming playback by default.\" into honeycomb"
    },
    {
      "commit": "4b197e1ffe46eb73ebdb80efc984bfde336b8e92",
      "tree": "94ac02ccd99d70c7baf085dcad5ced7cd00ad3a8",
      "parents": [
        "b1787e3b95e96cc002377d41518cc183f64b58c4"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Thu Jan 06 14:14:56 2011 -0800"
      },
      "committer": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Thu Jan 06 14:14:56 2011 -0800"
      },
      "message": "Use NuPlayer for HTTP live streaming playback by default.\n\nReversed the property logic, set media.httplive.disable-nuplayer to true to revert\n\nChange-Id: I1057940667aaab56bb75c9ea15c2cdcab736f3c6\n"
    },
    {
      "commit": "93aa950be52dc89f370c423f7b90c52093f9a3fa",
      "tree": "68d4364105cbc57f783bdc7711da55cd27e71a7f",
      "parents": [
        "b1787e3b95e96cc002377d41518cc183f64b58c4",
        "bfa33aae4f54c0020a0568b16a3acb7b30b6ca3d"
      ],
      "author": {
        "name": "Jamie Gennis",
        "email": "jgennis@google.com",
        "time": "Thu Jan 06 13:36:47 2011 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Jan 06 13:36:47 2011 -0800"
      },
      "message": "Merge \"Add camera service support for SurfaceTexture.\" into honeycomb"
    },
    {
      "commit": "bfa33aae4f54c0020a0568b16a3acb7b30b6ca3d",
      "tree": "3dae4190516dcddec996a2b7c51b5f192c3ed4ca",
      "parents": [
        "5de2001a5c3f854b63dbcea284e02f930881ca75"
      ],
      "author": {
        "name": "Jamie Gennis",
        "email": "jgennis@google.com",
        "time": "Mon Dec 20 11:51:31 2010 -0800"
      },
      "committer": {
        "name": "Jamie Gennis",
        "email": "jgennis@google.com",
        "time": "Thu Jan 06 13:31:53 2011 -0800"
      },
      "message": "Add camera service support for SurfaceTexture.\n\nThis change enables the use of a SurfaceTexture in place of a Surface as\nthe destination of camera preview frames.\n\nChange-Id: Ic70d404c8fe261e9d5da6f1de93d6babb5b191cb\n"
    },
    {
      "commit": "b1787e3b95e96cc002377d41518cc183f64b58c4",
      "tree": "f6c8ed1d45603def7a587c5935c92a8629800585",
      "parents": [
        "4d785ae6b940c62610612baf9d24f1ee607a2714"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Thu Jan 06 11:26:54 2011 -0800"
      },
      "committer": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Thu Jan 06 12:42:33 2011 -0800"
      },
      "message": "Colorconverter may not support some src/dst bitmap configurations.\n\nLet it return an appropriate error code instead of asserting.\n\nChange-Id: I7fe0dfa169e1cbdecb04c5fcbe8501e73362d05e\nrelated-to-bug: 3328212\n"
    },
    {
      "commit": "4d785ae6b940c62610612baf9d24f1ee607a2714",
      "tree": "fd67e8f64cec9ac87696e9430fd280cd7d0acbda",
      "parents": [
        "5de2001a5c3f854b63dbcea284e02f930881ca75"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Thu Jan 06 10:26:36 2011 -0800"
      },
      "committer": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Thu Jan 06 12:42:13 2011 -0800"
      },
      "message": "If we failed to initialize the codec after transitioning to IDLE state, don\u0027t assert\n\nduring shutdown.\n\nChange-Id: I40ac44260fb136c15d6dcb9f5ad62211640c66ec\nrelated-to-bug: 3328222\n"
    },
    {
      "commit": "5de2001a5c3f854b63dbcea284e02f930881ca75",
      "tree": "3c9f5153ca12cd18771495544910d66e1719a838",
      "parents": [
        "42d0b79a787814d42e4c6f9dfe14f13cc0f6a758"
      ],
      "author": {
        "name": "Mike Lockwood",
        "email": "lockwood@android.com",
        "time": "Thu Jan 06 09:39:28 2011 -0500"
      },
      "committer": {
        "name": "Mike Lockwood",
        "email": "lockwood@android.com",
        "time": "Thu Jan 06 11:47:56 2011 -0500"
      },
      "message": "Remove support for obsolete PTP content provider\n\nThis will be replaced by a new PTP host API in an upcoming commit.\n\nChange-Id: Ib914194e332b5c090cb8e34ed35bd691bc9f85d1\nSigned-off-by: Mike Lockwood \u003clockwood@android.com\u003e\n"
    },
    {
      "commit": "42d0b79a787814d42e4c6f9dfe14f13cc0f6a758",
      "tree": "9cb2c20fb8bf7d6b53c093c8e3dceb5dc0374523",
      "parents": [
        "d1108d74e13a74dc72e49513e0393e924f3d112c"
      ],
      "author": {
        "name": "Mike Lockwood",
        "email": "lockwood@android.com",
        "time": "Tue Jan 04 14:48:57 2011 -0500"
      },
      "committer": {
        "name": "Mike Lockwood",
        "email": "lockwood@android.com",
        "time": "Thu Jan 06 11:46:55 2011 -0500"
      },
      "message": "MTP: changes to use new usb_request support in libusbhost\n\nChange-Id: Ic091eab166a66efcde0395dcebbbc513f2322fca\nSigned-off-by: Mike Lockwood \u003clockwood@android.com\u003e\n"
    },
    {
      "commit": "d1108d74e13a74dc72e49513e0393e924f3d112c",
      "tree": "87110cb63a08e326eca1edf5d7413a6d10bf2071",
      "parents": [
        "bade4951bd8b2c9148df9018c44903b9d48d1f7b",
        "e6bf51ea9c5a4c1294e9a6c26d8a9b86534fee1f"
      ],
      "author": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Wed Jan 05 17:57:55 2011 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Wed Jan 05 17:57:55 2011 -0800"
      },
      "message": "am a8ce7736: am 35e8dcb9: Merge \"Suppress the recording sound in the recorded video\" into gingerbread\n\n* commit \u0027a8ce773607c26dd4336f57856afce507fb98a279\u0027:\n  Suppress the recording sound in the recorded video\n"
    },
    {
      "commit": "e6bf51ea9c5a4c1294e9a6c26d8a9b86534fee1f",
      "tree": "bf0df997f25fa4c5d85af140b7dfbaad0ad2eb3c",
      "parents": [
        "74de24045c00d641e79483b459d7d00d3d5bffe3",
        "91dcf1510491c4128f506a0d28e64de5ecbf459d"
      ],
      "author": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Wed Jan 05 17:55:27 2011 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Wed Jan 05 17:55:27 2011 -0800"
      },
      "message": "am 35e8dcb9: Merge \"Suppress the recording sound in the recorded video\" into gingerbread\n\n* commit \u002735e8dcb9df8c3d77ede120e3f1aaf842b2928639\u0027:\n  Suppress the recording sound in the recorded video\n"
    },
    {
      "commit": "bade4951bd8b2c9148df9018c44903b9d48d1f7b",
      "tree": "de8c3e7698685e1b2d3f119feb9fef14e4a33513",
      "parents": [
        "149d3b0565c9b7e56af344d0e5c2f121236fa119",
        "22fc52f6f72f39e33c3970d0291de3569118aa5c"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Wed Jan 05 16:34:06 2011 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Jan 05 16:34:06 2011 -0800"
      },
      "message": "Merge \"Some more fixes regarding HTTP live in NuPlayer.\""
    },
    {
      "commit": "22fc52f6f72f39e33c3970d0291de3569118aa5c",
      "tree": "3f446d7a2aa1e0e701b0ce33a10175547eb29bdf",
      "parents": [
        "43c3e6ce02215ca99d506458f596cb1211639f29"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Wed Jan 05 16:24:27 2011 -0800"
      },
      "committer": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Wed Jan 05 16:24:27 2011 -0800"
      },
      "message": "Some more fixes regarding HTTP live in NuPlayer.\n\nChange-Id: I9e29615fa8ee6c7bd4189373a75c20caef3fd2b1\n"
    },
    {
      "commit": "149d3b0565c9b7e56af344d0e5c2f121236fa119",
      "tree": "f306a5678c773f6441951ef871dc1f0c8534594f",
      "parents": [
        "eb8cab7bb77aac80a5a2e6fe0171e20116e80ef0",
        "43c3e6ce02215ca99d506458f596cb1211639f29"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Wed Jan 05 14:50:00 2011 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Jan 05 14:50:00 2011 -0800"
      },
      "message": "Merge \"Seek/Duration support for completed http live streams in NuPlayer.\""
    },
    {
      "commit": "43c3e6ce02215ca99d506458f596cb1211639f29",
      "tree": "52a143f0a92abc9f5050f5c9f44e2e4c087848f3",
      "parents": [
        "627baacc748c5e2ed68bdb256aea4d70fcfe9ce4"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Wed Jan 05 12:17:08 2011 -0800"
      },
      "committer": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Wed Jan 05 14:48:31 2011 -0800"
      },
      "message": "Seek/Duration support for completed http live streams in NuPlayer.\n\nChange-Id: I55bbe75d87140c07b1927d14ad24130fce803463\nrelated-to-bug: 3321475\n"
    },
    {
      "commit": "eb8cab7bb77aac80a5a2e6fe0171e20116e80ef0",
      "tree": "7b553cb524797eb5ccb8216d01c19a478bd483c8",
      "parents": [
        "019e96a6c6228c2565d8bc172f6278b31384aca5",
        "e6615671a51c85f409c071f15babb76198f1ce92"
      ],
      "author": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Wed Jan 05 12:53:13 2011 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Jan 05 12:53:13 2011 -0800"
      },
      "message": "Merge \"Fixed a typo in the enum for unknown camera error message\""
    },
    {
      "commit": "019e96a6c6228c2565d8bc172f6278b31384aca5",
      "tree": "d849a9df7eefab1a0e960e8e0fab86b943361e94",
      "parents": [
        "627baacc748c5e2ed68bdb256aea4d70fcfe9ce4",
        "28934a90e168291f6c77c56e8a05f272e5151bbd"
      ],
      "author": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Wed Jan 05 10:27:55 2011 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Jan 05 10:27:55 2011 -0800"
      },
      "message": "Merge \"Use video output if necessary for timelapse video recording\""
    },
    {
      "commit": "627baacc748c5e2ed68bdb256aea4d70fcfe9ce4",
      "tree": "75e721e7eeead2df74880a9019d178f33f003477",
      "parents": [
        "c213b812514d16dd401cd308b9203b70bfbb3d5f"
      ],
      "author": {
        "name": "Wu-cheng Li",
        "email": "wuchengli@google.com",
        "time": "Tue Jan 04 20:00:55 2011 +0800"
      },
      "committer": {
        "name": "Wu-cheng Li",
        "email": "wuchengli@google.com",
        "time": "Wed Jan 05 13:14:30 2011 +0800"
      },
      "message": "Camera::create should fail when it fails to connect the camera.\n\nbug:3197565\n\nChange-Id: I3439a25c06b00615e8257e6b3db85df081643643\n"
    },
    {
      "commit": "e6615671a51c85f409c071f15babb76198f1ce92",
      "tree": "2e4452bca742d7d9bf6a09b75005293cf39ea258",
      "parents": [
        "c213b812514d16dd401cd308b9203b70bfbb3d5f"
      ],
      "author": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Tue Jan 04 18:32:16 2011 -0800"
      },
      "committer": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Tue Jan 04 18:46:34 2011 -0800"
      },
      "message": "Fixed a typo in the enum for unknown camera error message\n\nChange-Id: Id9f8432e2ba8e1474ee020438d6456f1f450398a\n"
    },
    {
      "commit": "91dcf1510491c4128f506a0d28e64de5ecbf459d",
      "tree": "0886108cbd43dd72295de19b99d6fa204e797242",
      "parents": [
        "0f01764099d7a65b8921725df3340140f9fc4cd5"
      ],
      "author": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Tue Jan 04 17:34:44 2011 -0800"
      },
      "committer": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Tue Jan 04 17:34:44 2011 -0800"
      },
      "message": "Suppress the recording sound in the recorded video\n\nbug - 3309194\n\nChange-Id: Ib8fb248943bc22f963d67537bfdbc6056c5a159b\n"
    },
    {
      "commit": "28934a90e168291f6c77c56e8a05f272e5151bbd",
      "tree": "da8b10f020741f7dc28161496cbe7e0d59e19622",
      "parents": [
        "c2f95fba3ab2a4e512fd1152a12e64691f2ea73d"
      ],
      "author": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Tue Jan 04 16:09:07 2011 -0800"
      },
      "committer": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Tue Jan 04 16:09:07 2011 -0800"
      },
      "message": "Use video output if necessary for timelapse video recording\n\nChange-Id: I88d0cc824f0fbf8b2f392fbc23c69b5bfefda1b8\n"
    },
    {
      "commit": "c213b812514d16dd401cd308b9203b70bfbb3d5f",
      "tree": "ede1233a9f703e7a207b70ab694ebf0ae69a51e6",
      "parents": [
        "c2f95fba3ab2a4e512fd1152a12e64691f2ea73d",
        "1aef211b4e5dc952081727bfd2318b2cb5ca4506"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Tue Jan 04 14:47:18 2011 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Jan 04 14:47:18 2011 -0800"
      },
      "message": "Merge \"Properly shutdown the decoders on a reset() in NuPlayer\u0027s implementation.\""
    },
    {
      "commit": "1aef211b4e5dc952081727bfd2318b2cb5ca4506",
      "tree": "1644390b5e1f5cb8ddd228a28e69b5a18c747e0b",
      "parents": [
        "65a170e3ac593a29abd0c76e9aa531fabad7f56d"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Tue Jan 04 14:01:29 2011 -0800"
      },
      "committer": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Tue Jan 04 14:07:58 2011 -0800"
      },
      "message": "Properly shutdown the decoders on a reset() in NuPlayer\u0027s implementation.\n\nrelated-to-bug: 3321470\nChange-Id: Ida6d2171c5a3a407188d4633602b764f8fe7086a\n"
    },
    {
      "commit": "c2f95fba3ab2a4e512fd1152a12e64691f2ea73d",
      "tree": "e6e67c73b3c937e592efae4aab771af392fa8c78",
      "parents": [
        "65a170e3ac593a29abd0c76e9aa531fabad7f56d",
        "6e5cf568f4a5dee4be6ec991e1a96497303fb019"
      ],
      "author": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Tue Jan 04 13:12:47 2011 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Jan 04 13:12:47 2011 -0800"
      },
      "message": "Merge \"Remove captureFrame from MediaMetadataRetriever.java class It has been replaced by getFrameAtTime() method\""
    },
    {
      "commit": "6e5cf568f4a5dee4be6ec991e1a96497303fb019",
      "tree": "d1f290b7ee2458f2dd2f29b7ffed8a8f4b08d298",
      "parents": [
        "8afe66571ba14c7f923966d7270287e6f950ef38"
      ],
      "author": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Tue Jan 04 12:13:44 2011 -0800"
      },
      "committer": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Tue Jan 04 12:13:44 2011 -0800"
      },
      "message": "Remove captureFrame from MediaMetadataRetriever.java class\nIt has been replaced by getFrameAtTime() method\n\nChange-Id: I9ed762e10e61dbc188e2a740e489a3e2ef9a6bb2\n"
    },
    {
      "commit": "65a170e3ac593a29abd0c76e9aa531fabad7f56d",
      "tree": "423b71cff653f7ae48e98147238b90d8704b6baf",
      "parents": [
        "8afe66571ba14c7f923966d7270287e6f950ef38"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Tue Jan 04 10:19:13 2011 -0800"
      },
      "committer": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Tue Jan 04 10:19:13 2011 -0800"
      },
      "message": "Make AwesomePlayer\u0027s reset process more verbose to track down ANRs.\n\nChange-Id: I8c9fa872263796ba61b3e8de6bc05d50f57833f5\nrelated-to-bug: 3302399\n"
    },
    {
      "commit": "8afe66571ba14c7f923966d7270287e6f950ef38",
      "tree": "65af7d6c3bbb31141742b84d646081d4901ad3bf",
      "parents": [
        "d1b056a099b29e81d65582a8612210967fb71f93"
      ],
      "author": {
        "name": "Ying Wang",
        "email": "wangying@google.com",
        "time": "Wed Dec 29 13:34:20 2010 -0800"
      },
      "committer": {
        "name": "Ying Wang",
        "email": "wangying@google.com",
        "time": "Wed Dec 29 13:34:20 2010 -0800"
      },
      "message": "Fix build.\n\nDue to a bug (fixed by \t59163bf2f15e28712be6598144ae0fdb94dac52b),\nlibstagefright_yuv.so was actually not prelinked.\n\nChange-Id: Idbc9b968708d0fc31a087d2e4f24398072d915e2\n"
    },
    {
      "commit": "d1b056a099b29e81d65582a8612210967fb71f93",
      "tree": "b7eef96f1321d55342e5b234040eb857ec4720ce",
      "parents": [
        "5bc087c573c70c84c6a39946457590b42d392a33"
      ],
      "author": {
        "name": "Mike Lockwood",
        "email": "lockwood@android.com",
        "time": "Wed Dec 29 08:32:32 2010 -0500"
      },
      "committer": {
        "name": "Mike Lockwood",
        "email": "lockwood@android.com",
        "time": "Wed Dec 29 09:12:15 2010 -0500"
      },
      "message": "Change libusbhost and libmtp from static to shared libraries\n\nChange-Id: Iccc67db32400cdeb88aa33261c9e0cf73db992ca\nSigned-off-by: Mike Lockwood \u003clockwood@android.com\u003e\n"
    },
    {
      "commit": "5bc087c573c70c84c6a39946457590b42d392a33",
      "tree": "a9326bfa5027a152a5a21dd9de86d228c7d92330",
      "parents": [
        "53df1a460bcfdd129ca2bc416dee2009e35c042e"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Thu Dec 23 10:27:40 2010 -0800"
      },
      "committer": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Thu Dec 23 10:27:40 2010 -0800"
      },
      "message": "Squashed commit of the following:\n\ncommit eaeaa2672d4e0a82891493b2bde8bdd0c0e79a1b\nAuthor: Andreas Huber \u003candih@google.com\u003e\nDate:   Thu Dec 23 10:26:48 2010 -0800\n\n    Remove lowest bandwidth stream if using the legacy player.\n\n    Change-Id: I2f885e26344996de9152f8fda9fd6bdef89bf953\n\ncommit 7d652972615b2750fd8f1c21b9fab0e136df2b82\nAuthor: Andreas Huber \u003candih@google.com\u003e\nDate:   Thu Dec 23 10:14:36 2010 -0800\n\n    Don\u0027t clear the packet source\u0027s format for legacy discontinuities.\n\n    Change-Id: I9bd5a21b9bd28043ad38bd0658ccc8eda3c1079a\n\ncommit 2b18a45aac17cbfe1aa089d0f6510957d438dd64\nAuthor: Andreas Huber \u003candih@google.com\u003e\nDate:   Thu Dec 23 10:13:55 2010 -0800\n\n    Use NuPlayer for HTTP live streaming based on runtime property.\n\n    adb shell setprop media.httplive.enable-nuplayer true\n\n    Change-Id: I22738df3403985dc8e6992b1ab5da5747309f773\n\ncommit 50d899fb7b9ea52c3994b0a58e993998d926aeed\nAuthor: Andreas Huber \u003candih@google.com\u003e\nDate:   Wed Dec 22 16:25:22 2010 -0800\n\n    Make ACodec a lot less verbose.\n\n    Change-Id: I94c7e499b61032321ffaf999f5ad2c913cde6a48\n\ncommit b19e1740cb4d02990a56844654b5d019987c6405\nAuthor: Andreas Huber \u003candih@google.com\u003e\nDate:   Wed Dec 22 16:22:22 2010 -0800\n\n    Wait until we have fresh codec-specific-data before instantiating the decoders\n\n    after a discontinuity involving a format change.\n\n    Change-Id: I7bcf9b5ae3319f08bf8978a117e8ee5220902e37\n\ncommit 06428c006906c9099e430aface3b439ff1d36ecc\nAuthor: Andreas Huber \u003candih@google.com\u003e\nDate:   Wed Dec 22 15:20:38 2010 -0800\n\n    Disable random seeks in the streaming tool for now.\n\n    Change-Id: Ie86fde422dcfc4b2c7a01be51a193fda9c88cd71\n\ncommit e19db68f3bea8a61c191f60f6940f30e3a0d5f1b\nAuthor: Andreas Huber \u003candih@google.com\u003e\nDate:   Wed Dec 22 15:20:27 2010 -0800\n\n    Tweak HTTP live parameters.\n\n    Change-Id: If4b71e12485facc523a8a43d8213d0feb190daab\n\ncommit 1e9942791538c2256b579d96c6c04264b0d8b087\nAuthor: Andreas Huber \u003candih@google.com\u003e\nDate:   Wed Dec 22 14:48:23 2010 -0800\n\n    Enable http live streaming through NuPlayer for http URLs containing the string m3u8\n\n    Change-Id: I1691fe12ae8f1507fe3673313959cd50bc324624\n\ncommit 4c33f96a6e499ee0efe0e70b687094430cb7c1c0\nAuthor: Andreas Huber \u003candih@google.com\u003e\nDate:   Wed Dec 22 14:40:27 2010 -0800\n\n    Support for HTTP live streaming in NuPlayer.\n\n    Change-Id: Iacba1c3ebaeb8d3b972185deaf4cff18c8009c54\n\ncommit ddf705ce553708bc5b13d89a878484cf839bd674\nAuthor: Andreas Huber \u003candih@google.com\u003e\nDate:   Wed Dec 22 13:42:47 2010 -0800\n\n    StreamingSource now a subclass of abstract NuPlayer::Source\n\n    Change-Id: Ia6c7c639628910b9d1f37decc55da48b07a70de3\n\ncommit 9e04a8406b1882a8e3fdeb7b4d52db5ae70b970a\nAuthor: Andreas Huber \u003candih@google.com\u003e\nDate:   Wed Dec 22 13:33:52 2010 -0800\n\n    Refactor media data sourcing to NuPlayer::Source.\n\n    Change-Id: I1db9fb08c4e527bf7b19c29978cf342c2b0a0bc9\n\nChange-Id: I9610a097481dda58f22142eacda3ac2dba0b63f9\n"
    },
    {
      "commit": "53df1a460bcfdd129ca2bc416dee2009e35c042e",
      "tree": "ab7d4a70f4a09211ba62f4725c7eb735ccf10587",
      "parents": [
        "df42f949c8bd05b81d94633767514fff88f52062"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Wed Dec 22 10:03:04 2010 -0800"
      },
      "committer": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Wed Dec 22 10:03:04 2010 -0800"
      },
      "message": "Distinguish discontinuities w/ a format change from those without.\n\nShutdown decoders as needed in anticipation of a format change, otherwise just flush.\n\nChange-Id: Ieb04f8aa8658569b091409c4903075fd496e5abb\n"
    },
    {
      "commit": "df42f949c8bd05b81d94633767514fff88f52062",
      "tree": "51d4f1b0574c3df747d756db787cb64685392250",
      "parents": [
        "27a932a79b99fd2d869125e4c08b230fb6108860"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Tue Dec 21 14:36:19 2010 -0800"
      },
      "committer": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Tue Dec 21 14:36:19 2010 -0800"
      },
      "message": "Better handling of forming absolute https URLs, runtime error on https:// access.\n\nChange-Id: I7f6275520b0bd070e645024dd151a8541b8787b2\n"
    },
    {
      "commit": "27a932a79b99fd2d869125e4c08b230fb6108860",
      "tree": "50437e52078fefd90a9a8adea6ac5c0930ff9e9e",
      "parents": [
        "41152efd144ccf70c380d5c9a32105c02a039f43",
        "3831a066bcf1019864a94d2bc7b4c9241efc5c22"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Tue Dec 21 10:47:34 2010 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Dec 21 10:47:34 2010 -0800"
      },
      "message": "Merge \"Squashed commit of the following:\""
    },
    {
      "commit": "3831a066bcf1019864a94d2bc7b4c9241efc5c22",
      "tree": "13addfa6d2406f60574c3393a153f133d13690b9",
      "parents": [
        "54c02a58e5ad4b7b2668f63caa9d189e958f5544"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Tue Dec 21 10:22:33 2010 -0800"
      },
      "committer": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Tue Dec 21 10:22:33 2010 -0800"
      },
      "message": "Squashed commit of the following:\n\ncommit 63be8ceb8b2354fb997a277c0092abae015ecf10\nAuthor: Andreas Huber \u003candih@google.com\u003e\nDate:   Fri Dec 17 13:45:34 2010 -0800\n\n    Enable handling of discontinuities that involve potential format changes.\n\n    Change-Id: I21848a113db8764abb54bdcf302b0923253eaf4d\n\ncommit d18a7f80ec09af382026809263dcbbfa9e7a9ec8\nAuthor: Andreas Huber \u003candih@google.com\u003e\nDate:   Fri Dec 17 13:45:01 2010 -0800\n\n    Signal whether or not a format change occured as part of the discontinuity.\n\n    Change-Id: I06e64f542f4369549c9cebbb892dc612346ae43d\n\ncommit c400adbd5fdbd65cfef7aed9ec65bcaace4bb69b\nAuthor: Andreas Huber \u003candih@google.com\u003e\nDate:   Fri Dec 17 13:44:46 2010 -0800\n\n    A little more instrumentation of ACodec\n\n    Change-Id: I07f4aeccbbd15cdd9f80f48c3f92ee984ef6d92b\n\ncommit 1d802ee01f47b3cdc5b89502cec7fbb595e197a3\nAuthor: Andreas Huber \u003candih@google.com\u003e\nDate:   Fri Dec 17 13:43:58 2010 -0800\n\n    Only sync audio/video queues if both types of media are actually present.\n\n    Change-Id: Ic88edf9bb1ebd4034c08747cce9877a4e28e0d35\n\ncommit e402da39d9a4d8b75653a78f728e20a3ef0fb497\nAuthor: Andreas Huber \u003candih@google.com\u003e\nDate:   Fri Dec 17 13:42:24 2010 -0800\n\n    Disable the random seek for now.\n\n    Change-Id: Iddd597b546e2f229e88214f9bdd6452bb188105e\n\nChange-Id: I27c4d9ba916080be94ce6117dbb095e9022ed62b\n"
    },
    {
      "commit": "41152efd144ccf70c380d5c9a32105c02a039f43",
      "tree": "dbf46042bb86d5974e9987afc6fff9eb52948651",
      "parents": [
        "54c02a58e5ad4b7b2668f63caa9d189e958f5544"
      ],
      "author": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Mon Dec 20 21:29:12 2010 -0800"
      },
      "committer": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Tue Dec 21 10:17:53 2010 -0800"
      },
      "message": "Add more debugging code to track down hang during video recording\n\nbug - 3276561\n\nChange-Id: I1e02590b23031f29bcbfc4a1064f039ed80cb862\n"
    },
    {
      "commit": "54c02a58e5ad4b7b2668f63caa9d189e958f5544",
      "tree": "0933f0a5ef6f40b62b182839efe373815aa69d37",
      "parents": [
        "a4d153424bf33646a86a7e968064dabb8e073c52",
        "2d1e5d35be5e6d4b55ac8b39fbfcbeb60fcdd084"
      ],
      "author": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Mon Dec 20 12:00:52 2010 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Dec 20 12:00:52 2010 -0800"
      },
      "message": "Merge \"Backward-compatibility max file size support, ignoring 0 or negative file size limit\""
    },
    {
      "commit": "2d1e5d35be5e6d4b55ac8b39fbfcbeb60fcdd084",
      "tree": "dae53dfc5388babdcc78fbe02936094803b8dbd8",
      "parents": [
        "95289e216a300ddfadf2beec9c8f2c0af3d7e784"
      ],
      "author": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Mon Dec 20 11:39:38 2010 -0800"
      },
      "committer": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Mon Dec 20 11:59:17 2010 -0800"
      },
      "message": "Backward-compatibility max file size support, ignoring 0 or negative file size limit\n\nbug - 3281011\n\nChange-Id: I2d3ae4565602e2374ca794c5e8d0837ad33cf0e8\n"
    },
    {
      "commit": "a4d153424bf33646a86a7e968064dabb8e073c52",
      "tree": "0109a3b890ff3fedf136894b88c1b17852472bb2",
      "parents": [
        "95289e216a300ddfadf2beec9c8f2c0af3d7e784",
        "60693ddde0e435def1617848f545c78cec452766"
      ],
      "author": {
        "name": "Jamie Gennis",
        "email": "jgennis@google.com",
        "time": "Mon Dec 20 10:22:48 2010 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Dec 20 10:22:48 2010 -0800"
      },
      "message": "Merge \"Change a Stagefright assert to an error check.\""
    },
    {
      "commit": "60693ddde0e435def1617848f545c78cec452766",
      "tree": "f85f5a3cf18c2bdb1fd69c21d9014dcbb3ef178e",
      "parents": [
        "e071b055cee301d71335519601474c62b10af411"
      ],
      "author": {
        "name": "Jamie Gennis",
        "email": "jgennis@google.com",
        "time": "Fri Dec 17 15:07:02 2010 -0800"
      },
      "committer": {
        "name": "Jamie Gennis",
        "email": "jgennis@google.com",
        "time": "Fri Dec 17 18:26:28 2010 -0800"
      },
      "message": "Change a Stagefright assert to an error check.\n\nDuring OMX codec initialization it is possible that buffer allocation\nfails.  This changes Stagefright to set an error state and abort\ninitialization rather than crashing with an assert failure when that\nhappens.\n\nChange-Id: I2fc2fadfe75657cdbf649cc8cafd2e4c251a5f8b\nBug: 3282700\n"
    },
    {
      "commit": "95289e216a300ddfadf2beec9c8f2c0af3d7e784",
      "tree": "efc13c1758aa941d089bdafb42b62e4c04682b1c",
      "parents": [
        "357b7a806e530902ab60ceab877ea608a7e3e053",
        "626c85f3a9ec8e34a1e4af31eddf118d75ee6416"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Fri Dec 17 11:48:02 2010 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Dec 17 11:48:02 2010 -0800"
      },
      "message": "Merge \"Fix issue 3217707.\""
    },
    {
      "commit": "357b7a806e530902ab60ceab877ea608a7e3e053",
      "tree": "4dc989e7741a1edea30bff9345de10507973b5c7",
      "parents": [
        "b5e8536e41bbbbfe336e1d9614c73278e51590eb",
        "3e9f9f1596d4225ddd9288b4f7b24a15221374dc"
      ],
      "author": {
        "name": "Mike Lockwood",
        "email": "lockwood@android.com",
        "time": "Fri Dec 17 11:22:12 2010 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Dec 17 11:22:12 2010 -0800"
      },
      "message": "Merge \"MediaScanner: Add support for scanning empty directories\""
    },
    {
      "commit": "626c85f3a9ec8e34a1e4af31eddf118d75ee6416",
      "tree": "6430f67b042ec913493476605a4a67d5cde5855c",
      "parents": [
        "b5e8536e41bbbbfe336e1d9614c73278e51590eb"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Fri Dec 17 10:27:02 2010 -0800"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Fri Dec 17 10:27:02 2010 -0800"
      },
      "message": "Fix issue 3217707.\n\nThe problem is that when the A2DP headset is disconnected, there is a transition\nperiod during which the A2DP sink pumps data at a very high pace.\nThis makes that:\n1 the audio flinger mixer thread spins and starves binder threads thus delaying\nthe completion of the A2DP output stream shutdown\n2 we read the audio http audio stream faster than normal and we reach the end of stream\nfor audio while video is still playing if the streamed file is small enough.\n\nThe fix consists in detecting abnormal short write intervals and sleep to restore\na normal write pace.\n\nChange-Id: Iab127882494ab0e26266371dc0ce5c2ff6fa476e\n"
    },
    {
      "commit": "b5e8536e41bbbbfe336e1d9614c73278e51590eb",
      "tree": "5e24d334e4990f31c43ef505faa982d1dcae04f3",
      "parents": [
        "6e6b1cae2bac1b78205cefab8e4e9e9538982965",
        "74de24045c00d641e79483b459d7d00d3d5bffe3"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Thu Dec 16 16:10:24 2010 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Thu Dec 16 16:10:24 2010 -0800"
      },
      "message": "am a1608902: am 5a756fb0: Merge \"Fix issue 2712130: Sholes: problem when playing audio while recording over bluetooth SCO.\" into gingerbread\n\n* commit \u0027a1608902f95dc8ff31a52c1f1c384829a803a701\u0027:\n  Fix issue 2712130: Sholes: problem when playing audio while recording over bluetooth SCO.\n"
    },
    {
      "commit": "74de24045c00d641e79483b459d7d00d3d5bffe3",
      "tree": "f827b14ba8b9bc8314e938b8d35aae7ee46e4664",
      "parents": [
        "7d44e4da3bc3d56c6a9aed1f27f51cfd5b54108f",
        "0f01764099d7a65b8921725df3340140f9fc4cd5"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Thu Dec 16 16:05:16 2010 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Thu Dec 16 16:05:16 2010 -0800"
      },
      "message": "am 5a756fb0: Merge \"Fix issue 2712130: Sholes: problem when playing audio while recording over bluetooth SCO.\" into gingerbread\n\n* commit \u00275a756fb0f1f3f8cd7612284c889dfc69875577a8\u0027:\n  Fix issue 2712130: Sholes: problem when playing audio while recording over bluetooth SCO.\n"
    },
    {
      "commit": "3e9f9f1596d4225ddd9288b4f7b24a15221374dc",
      "tree": "1c88af9da88152b3d499d6a0a92f1a0349bddff9",
      "parents": [
        "5a7f242cfc0bd3b5208c21c27c0f5f348e98a0dc"
      ],
      "author": {
        "name": "Mike Lockwood",
        "email": "lockwood@android.com",
        "time": "Thu Dec 16 12:54:24 2010 -0800"
      },
      "committer": {
        "name": "Mike Lockwood",
        "email": "lockwood@android.com",
        "time": "Thu Dec 16 15:35:36 2010 -0800"
      },
      "message": "MediaScanner: Add support for scanning empty directories\n\nCurrently the media scanner does not create database entries for directories\nunless they contain a file that is scanned.\nFixing this so we provide a consistent view of the world to MTP.\n\nChange-Id: Ia776acfeae23192183e7192d63cdc34d830ea889\nSigned-off-by: Mike Lockwood \u003clockwood@android.com\u003e\n"
    },
    {
      "commit": "6e6b1cae2bac1b78205cefab8e4e9e9538982965",
      "tree": "5e24d334e4990f31c43ef505faa982d1dcae04f3",
      "parents": [
        "5a7f242cfc0bd3b5208c21c27c0f5f348e98a0dc"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Thu Dec 16 11:31:13 2010 -0800"
      },
      "committer": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Thu Dec 16 11:31:13 2010 -0800"
      },
      "message": "Instead of asserting, gracefully abort and signal and error.\n\nChange-Id: I170a602ed80e6c85a94e46deadfc02aaf92bfebb\n"
    },
    {
      "commit": "5a7f242cfc0bd3b5208c21c27c0f5f348e98a0dc",
      "tree": "833c872f88ef10f4ff8df23eff3de39a7e5bba54",
      "parents": [
        "49bcbaed50918071ec9508acdb6c1ea398e64751",
        "ac13b81c590386b3a42e381b31d7614ca53b79c5"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Thu Dec 16 10:51:15 2010 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Dec 16 10:51:15 2010 -0800"
      },
      "message": "Merge \"The HTTP/1.1 Host request header must include port if it\u0027s not the default (80).\""
    },
    {
      "commit": "ac13b81c590386b3a42e381b31d7614ca53b79c5",
      "tree": "4af5936b15961a4d658ff9c106b8a4fb5f614838",
      "parents": [
        "e071b055cee301d71335519601474c62b10af411"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Thu Dec 16 10:45:24 2010 -0800"
      },
      "committer": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Thu Dec 16 10:45:24 2010 -0800"
      },
      "message": "The HTTP/1.1 Host request header must include port if it\u0027s not the default (80).\n\nChange-Id: Idcc1429fbeecef99dad435208c9a1bd481132e2b\n"
    },
    {
      "commit": "49bcbaed50918071ec9508acdb6c1ea398e64751",
      "tree": "ca3b03c482c4ec3ebdf6a6de15a4f7611a1412b0",
      "parents": [
        "f4a0e014f53c131dbb9ae86921b8064993c09e61",
        "0b456a6a33de8cb7c641724579382a31a1beaa2c"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Thu Dec 16 10:41:16 2010 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Dec 16 10:41:16 2010 -0800"
      },
      "message": "Merge \"Fix speakerphone routing to analog dock\""
    },
    {
      "commit": "f4a0e014f53c131dbb9ae86921b8064993c09e61",
      "tree": "e8bf2161ecb5caa262f6d04216b4ebeca2db10f0",
      "parents": [
        "d0c5158d5244418880bb85122e9fd0e378892c2a",
        "85704836f33a199d7e442a23db82abbd5620d35d"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Thu Dec 16 10:26:48 2010 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Dec 16 10:26:48 2010 -0800"
      },
      "message": "Merge \"Remove now obsolete implementation of streaming from AwesomePlayer.\""
    },
    {
      "commit": "d0c5158d5244418880bb85122e9fd0e378892c2a",
      "tree": "9c60c309328dc54f68ac4e39db999924bffbffa3",
      "parents": [
        "a6256238d9015c42129fe43791968768fe501efa",
        "2c2814b900a61fa07ddfff860b143fbbe9c740e9"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Thu Dec 16 10:26:37 2010 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Dec 16 10:26:37 2010 -0800"
      },
      "message": "Merge \"Properly announce decoder output format changes, make sure AMessage::dup does.\""
    },
    {
      "commit": "85704836f33a199d7e442a23db82abbd5620d35d",
      "tree": "ecbf0956142d760517d1ec901cbafb00af61c3ff",
      "parents": [
        "e071b055cee301d71335519601474c62b10af411"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Thu Dec 16 10:16:36 2010 -0800"
      },
      "committer": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Thu Dec 16 10:16:36 2010 -0800"
      },
      "message": "Remove now obsolete implementation of streaming from AwesomePlayer.\n\nChange-Id: If62bedbf74c8e987d6651604d7bebc9da381e86a\n"
    },
    {
      "commit": "2c2814b900a61fa07ddfff860b143fbbe9c740e9",
      "tree": "6e87ef2fc13807b7553fb922c149c9e9810c92fd",
      "parents": [
        "e071b055cee301d71335519601474c62b10af411"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Wed Dec 15 17:18:20 2010 -0800"
      },
      "committer": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Thu Dec 16 10:08:26 2010 -0800"
      },
      "message": "Properly announce decoder output format changes, make sure AMessage::dup does.\n\nChange-Id: Ia77f6b6d5e5c5055583740dfe876b8a3c22be9b6\n"
    },
    {
      "commit": "0b456a6a33de8cb7c641724579382a31a1beaa2c",
      "tree": "b111bee6a8d1c3eb9f2ccf52161d50748cafe96f",
      "parents": [
        "10f0d3f2fcd721e0d5639106f83668b0360bc173"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Thu Dec 16 09:44:42 2010 -0800"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Thu Dec 16 09:44:42 2010 -0800"
      },
      "message": "Fix speakerphone routing to analog dock\n\nThe audio routing policy when speakerphone is on and a dock with built-in\nspeakers is connected should be to output audio to teh dock speakers\n\nAlso removed route to SCO car kit if forced usage is not SCO as the SCO\nsocket might not be established.\n\nChange-Id: I1aa2954092e28de935304b90f7a7a64d661934c7\n"
    },
    {
      "commit": "0f01764099d7a65b8921725df3340140f9fc4cd5",
      "tree": "4804d04ee3b4e790731dcb6d90b3433d4945ac29",
      "parents": [
        "e8079d0f6afcb138a0e5882ccbaf93647ea77c5b"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Wed Dec 15 19:09:42 2010 -0800"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Wed Dec 15 19:09:42 2010 -0800"
      },
      "message": "Fix issue 2712130: Sholes: problem when playing audio while recording over bluetooth SCO.\n\nThe problem is that when an input stream is opened for record over bluetooth SCO, the kernel\nmono audio device should be opened in RW mode to allow further use of this same device by an output stream\nalso routed to bluetooth SCO.\nThis does not happen because of a bug in AudioSystem::isBluetoothScoDevice() that does not return true\nwhen the device is DEVICE_IN_BLUETOOTH_SCO_HEADSET (input device for blurtooth SCO).\n\nChange-Id: Ic78bf324b4a68e65721d763dc7682ce7a8f14f75\n"
    },
    {
      "commit": "a6256238d9015c42129fe43791968768fe501efa",
      "tree": "13b3966652c09d1434ba044231ac38a3aa23b1f4",
      "parents": [
        "e071b055cee301d71335519601474c62b10af411"
      ],
      "author": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Wed Dec 15 17:32:45 2010 -0800"
      },
      "committer": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Wed Dec 15 17:40:08 2010 -0800"
      },
      "message": "Give the standard not compliant video sample a chance if its size in the mp4 header is invalid\n\nChange-Id: Ib573ededb9c73285822fa238120faa484402bcf7\n"
    },
    {
      "commit": "e071b055cee301d71335519601474c62b10af411",
      "tree": "53842b260dfa027fbcbb14b1fb0b7f21e1d682d9",
      "parents": [
        "c08bb264768f773cd6d10b8736ccfc4745645135"
      ],
      "author": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Wed Dec 15 15:49:46 2010 -0800"
      },
      "committer": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Wed Dec 15 15:49:46 2010 -0800"
      },
      "message": "Opted to recognize \"h263\" or \"H263\" boxes in an mp4 file\n\nbug - 3278240\n\nChange-Id: Ifd1b1f3e5dd55dbf2c33bbad9dd51998c25bfc15\n"
    },
    {
      "commit": "c08bb264768f773cd6d10b8736ccfc4745645135",
      "tree": "93d40e2f45019257113b36f228eff0b1bb6541ef",
      "parents": [
        "f933441648ef6a71dee783d733aac17b9508b452",
        "3a1775247e26f274ef249442ef038ddf7217b68c"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Wed Dec 15 15:37:30 2010 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Dec 15 15:37:30 2010 -0800"
      },
      "message": "Merge \"Properly order the data written out to the transport stream by timestamp.\""
    },
    {
      "commit": "f933441648ef6a71dee783d733aac17b9508b452",
      "tree": "240f8068edb362cbea579659a963bbb029a2bac0",
      "parents": [
        "60c5b57edd3c8f4bdf6b38cf5b8a193ba770bb72"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Wed Dec 15 15:17:42 2010 -0800"
      },
      "committer": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Wed Dec 15 15:18:26 2010 -0800"
      },
      "message": "Initial support for a true streaming player for mpeg2 transport streams.\n\nChange-Id: I153eec439d260a5524b21270e16d36940ec3161a\n"
    },
    {
      "commit": "3a1775247e26f274ef249442ef038ddf7217b68c",
      "tree": "4a45fc560f2cec8334baa863deb0abc63a2f6561",
      "parents": [
        "00502849dcc54086ad9fabbd90ef3d0e41ae78f5"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Fri Dec 10 15:08:23 2010 -0800"
      },
      "committer": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Wed Dec 15 14:56:43 2010 -0800"
      },
      "message": "Properly order the data written out to the transport stream by timestamp.\n\nThis ensures data locality across tracks.\n\nChange-Id: I823b9407e3603473422177ec02dff4860ffc5b4f\n"
    },
    {
      "commit": "60c5b57edd3c8f4bdf6b38cf5b8a193ba770bb72",
      "tree": "8bbc0d6a664733e9881acd515d727b8338506a6a",
      "parents": [
        "10f0d3f2fcd721e0d5639106f83668b0360bc173",
        "a093f92042cf65060d1474c0fe116c12f8981717"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Wed Dec 15 14:55:29 2010 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Dec 15 14:55:29 2010 -0800"
      },
      "message": "Merge \"Proper recovery of timestamp information in the transport stream parser.\""
    },
    {
      "commit": "a093f92042cf65060d1474c0fe116c12f8981717",
      "tree": "7ac40ccae38fc76002355c8a7a70c96d049e6259",
      "parents": [
        "00502849dcc54086ad9fabbd90ef3d0e41ae78f5"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Wed Dec 15 14:07:50 2010 -0800"
      },
      "committer": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Wed Dec 15 14:07:50 2010 -0800"
      },
      "message": "Proper recovery of timestamp information in the transport stream parser.\n\nChange-Id: I647c73688c95529f54f0bb6af17d109dfe2bb11d\n"
    },
    {
      "commit": "10f0d3f2fcd721e0d5639106f83668b0360bc173",
      "tree": "fc1ae0f02c6fa7847d045f409cf69d132a4d4124",
      "parents": [
        "00502849dcc54086ad9fabbd90ef3d0e41ae78f5",
        "f3a8d32fd475ec68d966fa6f12a4c975ba80b659"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Wed Dec 15 11:48:46 2010 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Dec 15 11:48:46 2010 -0800"
      },
      "message": "Merge \"Change audio routing policy for HDMI\""
    },
    {
      "commit": "f3a8d32fd475ec68d966fa6f12a4c975ba80b659",
      "tree": "b64cef369c553e79b0ce9f4b74485aed40fd9e53",
      "parents": [
        "d27f1e6959cdcdadfa471b9824686d784ca55def"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Tue Dec 14 16:31:33 2010 -0800"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Wed Dec 15 11:01:48 2010 -0800"
      },
      "message": "Change audio routing policy for HDMI\n\nHDMI device should have a higher priority than analog dock audio but a lower priority\nthan wired headsets.\nAlso modified AudioService so that HDMI is mapped to DEVICE_OUT_AUX_DIGITAL device and not\nDEVICE_OUT_DGTL_DOCK_HEADSET as before to enable discrimination between SPDIF going to\ndigital dock and SPIDF going to HDMI.\n\nChange-Id: I887d0c73479784dd2edaf41ce1a7d8d0bdcbb4bd\n"
    },
    {
      "commit": "00502849dcc54086ad9fabbd90ef3d0e41ae78f5",
      "tree": "f41167f435fd3f660a8b25c1d16228329b8bd939",
      "parents": [
        "d27f1e6959cdcdadfa471b9824686d784ca55def",
        "41dabbcd9ab62d7ecea1570cc76c39ac485de2ce"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Wed Dec 15 09:17:21 2010 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Dec 15 09:17:21 2010 -0800"
      },
      "message": "Merge \"Emit better (correct) timestamps that respect AAC upsampling.\""
    },
    {
      "commit": "41dabbcd9ab62d7ecea1570cc76c39ac485de2ce",
      "tree": "9cdb7779de37846c8be6943e5a1a2577be035e8e",
      "parents": [
        "123e95a584556a64a2e0f9e242f48b9a080750a5"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Tue Dec 14 16:05:16 2010 -0800"
      },
      "committer": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Tue Dec 14 16:05:16 2010 -0800"
      },
      "message": "Emit better (correct) timestamps that respect AAC upsampling.\n\nChange-Id: I6587416c9caa0e263aa8ec6c6d89a42e28f6ff19\n"
    },
    {
      "commit": "d27f1e6959cdcdadfa471b9824686d784ca55def",
      "tree": "0e9301196a76a95efce618b147eac6c1bc47079e",
      "parents": [
        "123e95a584556a64a2e0f9e242f48b9a080750a5",
        "36fb2077764093a0a19ed65770078b9987bd82b1"
      ],
      "author": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Tue Dec 14 12:28:31 2010 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Dec 14 12:28:31 2010 -0800"
      },
      "message": "Merge \"Fix an issue where a fixed number of bits per sample is used for seek position calculation.\""
    },
    {
      "commit": "123e95a584556a64a2e0f9e242f48b9a080750a5",
      "tree": "684ea21a6d4cf973801660be37fbab3bfe99f0cd",
      "parents": [
        "93b47835ef496da664f98949ba3bb6c4583559a6",
        "763b772bb6bca6a4aaef85cec840fd7061630d61"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Tue Dec 14 10:11:28 2010 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Dec 14 10:11:28 2010 -0800"
      },
      "message": "Merge \"Properly signal the condition if we run out of input data.\""
    },
    {
      "commit": "93b47835ef496da664f98949ba3bb6c4583559a6",
      "tree": "074df0c4b6a5db44700dbe5d6ddc02a90b1e54ff",
      "parents": [
        "feafefb1ed8d86100161f521fc7a44b819bd9529",
        "428d96d5f882d01acb0abb7e1ceb51d4ccc48efa"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Tue Dec 14 10:11:11 2010 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Dec 14 10:11:11 2010 -0800"
      },
      "message": "Merge \"Support malformed ID3 V2.4 tags written by early versions of iTunes.\""
    },
    {
      "commit": "763b772bb6bca6a4aaef85cec840fd7061630d61",
      "tree": "798829c8738eb09dda532840c3abe0e4efb204bd",
      "parents": [
        "985f838934510983d8a887461e98dca60a6e858f"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Tue Dec 14 09:50:46 2010 -0800"
      },
      "committer": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Tue Dec 14 09:54:37 2010 -0800"
      },
      "message": "Properly signal the condition if we run out of input data.\n\nChange-Id: I7a5ada8c25c1d32ca603b3b2c75e1808e140c367\n"
    },
    {
      "commit": "428d96d5f882d01acb0abb7e1ceb51d4ccc48efa",
      "tree": "a1be1118038ea4bcaa3aaa634412f778acbcf755",
      "parents": [
        "985f838934510983d8a887461e98dca60a6e858f"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Tue Dec 14 09:49:29 2010 -0800"
      },
      "committer": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Tue Dec 14 09:51:11 2010 -0800"
      },
      "message": "Support malformed ID3 V2.4 tags written by early versions of iTunes.\n\nChange-Id: I90c2a9bbf216e2ae9a37accdaa2214233f5e54ea\nrelated-to-bug: 3275576\n"
    },
    {
      "commit": "feafefb1ed8d86100161f521fc7a44b819bd9529",
      "tree": "446c650807f50449522c7c615f95b9b265ba6d07",
      "parents": [
        "985f838934510983d8a887461e98dca60a6e858f"
      ],
      "author": {
        "name": "Mike Lockwood",
        "email": "lockwood@android.com",
        "time": "Mon Dec 13 21:50:09 2010 -0800"
      },
      "committer": {
        "name": "Mike Lockwood",
        "email": "lockwood@android.com",
        "time": "Mon Dec 13 21:50:09 2010 -0800"
      },
      "message": "MTP: check for replacing existing files via the database instead of the file system\n\nChange-Id: I283dab48f24d2836e48fab8e49764a9cdf13de55\nSigned-off-by: Mike Lockwood \u003clockwood@android.com\u003e\n"
    },
    {
      "commit": "36fb2077764093a0a19ed65770078b9987bd82b1",
      "tree": "a290816a42828539ae6aa4cfeb86d74b568936f2",
      "parents": [
        "985f838934510983d8a887461e98dca60a6e858f"
      ],
      "author": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Mon Dec 13 15:24:48 2010 -0800"
      },
      "committer": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Mon Dec 13 15:26:20 2010 -0800"
      },
      "message": "Fix an issue where a fixed number of bits per sample is used for seek position calculation.\n\nThe patch was from NV.\n\nbug - 3278233\n\nChange-Id: I9bc22b6b0ee6bfa5d4617a8c497f67eb577efca4\n"
    },
    {
      "commit": "985f838934510983d8a887461e98dca60a6e858f",
      "tree": "7b1add1b2adda17b1987fbd635a10fd7c8959cee",
      "parents": [
        "a37fe6bf720683250d7fece6ed35a447694dda1f"
      ],
      "author": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Tue Dec 07 14:37:27 2010 -0800"
      },
      "committer": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Mon Dec 13 10:34:17 2010 -0800"
      },
      "message": "Yield the omx threads so that file writer threads have a chance to retrieve the output buffers once they become ready\n\nbug - 3252228\n\nChange-Id: Iab7cf1c9a87cce7b814c63b42b21fcd6a7314b36\n"
    },
    {
      "commit": "a37fe6bf720683250d7fece6ed35a447694dda1f",
      "tree": "68b9c1709a3c60801d44d33436eb0a782d7ba629",
      "parents": [
        "20c3be0e0394e1340c036685eb1edb8f6ef5a2ac",
        "79e23b41fad961008bfde6e26b3c6f86878ca69d"
      ],
      "author": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Mon Dec 13 10:33:33 2010 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Dec 13 10:33:33 2010 -0800"
      },
      "message": "Merge \"Revert \"Allows the authoring engine to skip frame.\"\""
    },
    {
      "commit": "20c3be0e0394e1340c036685eb1edb8f6ef5a2ac",
      "tree": "8f3ae6045924fe4692042cb0cd61feb195a8ddb3",
      "parents": [
        "8d45a37ff076814db39471f15d309567605b3416"
      ],
      "author": {
        "name": "Mike Lockwood",
        "email": "lockwood@android.com",
        "time": "Sun Dec 12 12:17:43 2010 -0800"
      },
      "committer": {
        "name": "Mike Lockwood",
        "email": "lockwood@android.com",
        "time": "Sun Dec 12 12:17:43 2010 -0800"
      },
      "message": "MTP: Add support for reserve storage setting to avoid low storage situations.\n\nSet resource config_mtpReserveSpaceMegabytes to number of megabytes to reserve.\nIf MTP has dedicated storage this value should be zero, but if MTP is\nsharing storage with the rest of the system, set this to a positive value\nto ensure that MTP activity does not result in the storage being\ntoo close to full.\n\nBUG: 3250924\n\nChange-Id: I881c87240da268bad1ea1b99ad03673ab85ffdbf\nSigned-off-by: Mike Lockwood \u003clockwood@android.com\u003e\n"
    },
    {
      "commit": "79e23b41fad961008bfde6e26b3c6f86878ca69d",
      "tree": "590d806e7ff9da6341c5185a4d7291d1de428e43",
      "parents": [
        "8d45a37ff076814db39471f15d309567605b3416"
      ],
      "author": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Sat Dec 11 10:43:41 2010 -0800"
      },
      "committer": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Sat Dec 11 10:57:03 2010 -0800"
      },
      "message": "Revert \"Allows the authoring engine to skip frame.\"\n\no Skipping frames could lead to a lot of issues such as I frames is lost etc.\n  It is not being used anyway.\n\nThis reverts commit 53d4e0d58e2d5c18f6e026c705af833b9bdd7aba.\n\nConflicts:\n\n\tmedia/libstagefright/AudioSource.cpp\n\tmedia/libstagefright/CameraSource.cpp\n\nChange-Id: I3abba1647de48db25bdc369066eb2a7ae4dedec2\n"
    },
    {
      "commit": "8d45a37ff076814db39471f15d309567605b3416",
      "tree": "ff0e6a3508b20e8a7a5f53b09e29bf571ed0d3cf",
      "parents": [
        "b3fd981d5f8bbf629dd8a07b06b4b656b70cb944",
        "abdd2ba259a5dc863a821c9d1187d83f2e2395ac"
      ],
      "author": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Fri Dec 10 17:34:52 2010 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Dec 10 17:34:52 2010 -0800"
      },
      "message": "Merge \"Fixed a failure from timelapse video recording because of accidental use of metadata buffers\""
    }
  ],
  "next": "abdd2ba259a5dc863a821c9d1187d83f2e2395ac"
}
