)]}'
{
  "log": [
    {
      "commit": "287c34497550ff3f27a5fa3aa15c0049081056d3",
      "tree": "97f8e7a520a1ccae5a4e97e71a50a2a131db0ce1",
      "parents": [
        "5895b78183840f3d56a6e50af26a4b9f778a5b14",
        "b656f3592332cebfad8944e8692003cf3688d586"
      ],
      "author": {
        "name": "Mike Lockwood",
        "email": "lockwood@android.com",
        "time": "Tue Jan 25 15:48:06 2011 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Tue Jan 25 15:48:06 2011 -0800"
      },
      "message": "am f10d9404: Merge \"StagefrightMediaScanner: Close metadata retriever after we are done scanning\" into honeycomb\n\n* commit \u0027f10d940413000732f1cd35bcb113c41019c7e3b7\u0027:\n  StagefrightMediaScanner: Close metadata retriever after we are done scanning\n"
    },
    {
      "commit": "b656f3592332cebfad8944e8692003cf3688d586",
      "tree": "aaea72bcd5f1283c6a1b7aba0e08a8644ec2160c",
      "parents": [
        "eaae38445a340c4857c1c5569475879a728e63b7",
        "0a095d09464ba18e288a3f529410af0f1257ac2a"
      ],
      "author": {
        "name": "Mike Lockwood",
        "email": "lockwood@android.com",
        "time": "Tue Jan 25 15:46:25 2011 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Jan 25 15:46:25 2011 -0800"
      },
      "message": "Merge \"StagefrightMediaScanner: Close metadata retriever after we are done scanning\" into honeycomb"
    },
    {
      "commit": "5895b78183840f3d56a6e50af26a4b9f778a5b14",
      "tree": "31e2137478b262747aa71e84bfa8b632f96135ad",
      "parents": [
        "47fac46eeb5f522fc964bcaadf27512e29d691fb",
        "eaae38445a340c4857c1c5569475879a728e63b7"
      ],
      "author": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Tue Jan 25 15:33:27 2011 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Tue Jan 25 15:33:27 2011 -0800"
      },
      "message": "am 3115dad3: Merge \"Report errors to applications if AudioRecord-\u003estart() fails\" into honeycomb\n\n* commit \u00273115dad3fc8493ff510b9f6a46b18d951bf5c162\u0027:\n  Report errors to applications if AudioRecord-\u003estart() fails\n"
    },
    {
      "commit": "eaae38445a340c4857c1c5569475879a728e63b7",
      "tree": "17e8fcf56c9c8d215cd5ba0149f21d63d4576843",
      "parents": [
        "4feffd1a8d95cf3843c06a37160580d30d421d8e"
      ],
      "author": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Tue Jan 25 12:37:43 2011 -0800"
      },
      "committer": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Tue Jan 25 15:30:34 2011 -0800"
      },
      "message": "Report errors to applications if AudioRecord-\u003estart() fails\n\nbug - 3385198\n\nChange-Id: I86ac8071eb28a538b333e102192193d1b9eda5eb\n"
    },
    {
      "commit": "0a095d09464ba18e288a3f529410af0f1257ac2a",
      "tree": "1c3810dbf07e83724c4d11cb012dd664669a8623",
      "parents": [
        "4feffd1a8d95cf3843c06a37160580d30d421d8e"
      ],
      "author": {
        "name": "Mike Lockwood",
        "email": "lockwood@android.com",
        "time": "Tue Jan 25 15:20:04 2011 -0800"
      },
      "committer": {
        "name": "Mike Lockwood",
        "email": "lockwood@android.com",
        "time": "Tue Jan 25 15:20:04 2011 -0800"
      },
      "message": "StagefrightMediaScanner: Close metadata retriever after we are done scanning\n\nThis prevents the mediaserver from leaking a file descriptor after\nthe media scanner runs\n\nBUG: 3373546\n\nChange-Id: I82a8bae82306de3da56a5c7da5b03ecf106a4efc\nSigned-off-by: Mike Lockwood \u003clockwood@android.com\u003e\n"
    },
    {
      "commit": "47fac46eeb5f522fc964bcaadf27512e29d691fb",
      "tree": "e8f31b4ad920d3d73cdd2982caffbbf08f1a56c7",
      "parents": [
        "9099343896ff1a1f2444cba372aaab4a0dbb4818",
        "958c063ed2b9e255e4b4ffc5c7d5f9939da95c36"
      ],
      "author": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Tue Jan 25 10:58:56 2011 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Tue Jan 25 10:58:56 2011 -0800"
      },
      "message": "am 4b440268: am c929677e: Merge \"Increase the number of useful bits in the spectrum.\" into gingerbread\n\n* commit \u00274b44026879723d924ddc306ea1e330a9e87c3a1c\u0027:\n  Increase the number of useful bits in the spectrum.\n"
    },
    {
      "commit": "958c063ed2b9e255e4b4ffc5c7d5f9939da95c36",
      "tree": "394bae7c9db45fd43e2eefe52318f6c53fc12ce3",
      "parents": [
        "05adea42e17b0af3b90e51945f800aa26a2d0240",
        "47f44fb9b85ac555e5b84b2f5ca8536a85659c3e"
      ],
      "author": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Tue Jan 25 10:11:09 2011 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Tue Jan 25 10:11:09 2011 -0800"
      },
      "message": "am c929677e: Merge \"Increase the number of useful bits in the spectrum.\" into gingerbread\n\n* commit \u0027c929677e017759047d94599faa1b80ebe278fefb\u0027:\n  Increase the number of useful bits in the spectrum.\n"
    },
    {
      "commit": "47f44fb9b85ac555e5b84b2f5ca8536a85659c3e",
      "tree": "50dca0f43441e80b655b67f6d44d7f481165b2a9",
      "parents": [
        "05b22175a0d186d964694a5162892b6b3476c562",
        "209821c7b7ead3ac58743d0a6d21dd05a2e77708"
      ],
      "author": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Tue Jan 25 10:06:16 2011 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Jan 25 10:06:16 2011 -0800"
      },
      "message": "Merge \"Increase the number of useful bits in the spectrum.\" into gingerbread"
    },
    {
      "commit": "05adea42e17b0af3b90e51945f800aa26a2d0240",
      "tree": "a2fbe66947c9da426e10e544625b4e8c67c3233d",
      "parents": [
        "2b61341c6308b99254b504a7fa9d890200796369",
        "05b22175a0d186d964694a5162892b6b3476c562"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Mon Jan 24 16:30:12 2011 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Mon Jan 24 16:30:12 2011 -0800"
      },
      "message": "am efebdf4b: DO NOT MERGE: Support non-multiple-of-16 dimensions in MPEG4/H.263 software decoder\n\n* commit \u0027efebdf4bd4da35bc50c7d81450c8473697f6654a\u0027:\n  DO NOT MERGE: Support non-multiple-of-16 dimensions in MPEG4/H.263 software decoder\n"
    },
    {
      "commit": "05b22175a0d186d964694a5162892b6b3476c562",
      "tree": "1417f736200d0c6678d30109f47fc651220cff1d",
      "parents": [
        "b517e006b51c95db9c44bf5f104f562d431ae597"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Mon Jan 24 13:36:30 2011 -0800"
      },
      "committer": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Mon Jan 24 15:59:14 2011 -0800"
      },
      "message": "DO NOT MERGE: Support non-multiple-of-16 dimensions in MPEG4/H.263 software decoder\n\nChange-Id: I6c27c00a6e13cb3635e61089c0db0989f5810c37\nrelated-to-bug: 3384367\n"
    },
    {
      "commit": "4feffd1a8d95cf3843c06a37160580d30d421d8e",
      "tree": "96dcc816650047f9bd54ed5c4dd57b2564997db4",
      "parents": [
        "30ae68bccd8de6f0ab2acd22a6d661ace514343e",
        "b9ff4b4f631239a6a37fe6588e025cb387150c0e"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Mon Jan 24 13:57:11 2011 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Jan 24 13:57:11 2011 -0800"
      },
      "message": "Merge \"Support non-multiple-of-16 dimensions in MPEG4/H.263 software decoder\" into honeycomb"
    },
    {
      "commit": "b9ff4b4f631239a6a37fe6588e025cb387150c0e",
      "tree": "aa07166839a4dde2a400155c816e3fdeb2a13d0a",
      "parents": [
        "e20e15bcfd0317f63ecf76e6b8e9fbd9196fde0b"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Mon Jan 24 13:36:30 2011 -0800"
      },
      "committer": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Mon Jan 24 13:36:30 2011 -0800"
      },
      "message": "Support non-multiple-of-16 dimensions in MPEG4/H.263 software decoder\n\nChange-Id: Ia22ebce66d9c35de4b04c3eedc9495847796901d\nrelated-to-bug: 3384367\n"
    },
    {
      "commit": "30ae68bccd8de6f0ab2acd22a6d661ace514343e",
      "tree": "695613eb6de864f47baa0826e68419acc8fce720",
      "parents": [
        "e20e15bcfd0317f63ecf76e6b8e9fbd9196fde0b"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Mon Jan 24 12:46:12 2011 -0800"
      },
      "committer": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Mon Jan 24 12:46:12 2011 -0800"
      },
      "message": "The .mkv parser lib leaves some tracks NULL if it doesn\u0027t support them.\n\nBut it still counts them as valid tracks...\n\nChange-Id: I77e8fd24cce91a586e8e418759db55b6eba449c0\nrelated-to-bug: 3377186\n"
    },
    {
      "commit": "e20e15bcfd0317f63ecf76e6b8e9fbd9196fde0b",
      "tree": "8bdbe3540933accbce090f008fcd91188185b68f",
      "parents": [
        "5aae7c2895dcf1716ea66c440b7e569e84dcd5b5"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Mon Jan 24 10:30:05 2011 -0800"
      },
      "committer": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Mon Jan 24 10:31:52 2011 -0800"
      },
      "message": "Make AwesomePlayer\u0027s reset process more verbose to track down ANRs (again)\n\nChange-Id: I0d66994cc4295fd5ceeaaf151ce913ed0dd995f9\nrelated-to-bug: 3362836\n"
    },
    {
      "commit": "209821c7b7ead3ac58743d0a6d21dd05a2e77708",
      "tree": "e9cc0ea746bad9d05425f459ad245f882ceab36c",
      "parents": [
        "b517e006b51c95db9c44bf5f104f562d431ae597"
      ],
      "author": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Tue Jan 18 16:44:28 2011 -0800"
      },
      "committer": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Mon Jan 24 08:47:55 2011 -0800"
      },
      "message": "Increase the number of useful bits in the spectrum.\n\nChange-Id: I3efc2ac8db689285566df35cb6f594aab41141db\n"
    },
    {
      "commit": "5aae7c2895dcf1716ea66c440b7e569e84dcd5b5",
      "tree": "4ff42f07706024d7dac37b47a3d933c06a4a9b9a",
      "parents": [
        "8aded52c4d6962da5357d4bfc0bca4be3aa331ef",
        "59d6ae5e339547fea8a350c1d855b52d5ac4f62c"
      ],
      "author": {
        "name": "Mike Lockwood",
        "email": "lockwood@android.com",
        "time": "Sat Jan 22 14:35:39 2011 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Sat Jan 22 14:35:39 2011 -0800"
      },
      "message": "Merge \"Remove MTP related log spam\" into honeycomb"
    },
    {
      "commit": "59d6ae5e339547fea8a350c1d855b52d5ac4f62c",
      "tree": "7fe582634b7de85fc686be802f7dfe39be1a6d32",
      "parents": [
        "b408222bd9479c291874b607acae1425d6154fe7"
      ],
      "author": {
        "name": "Mike Lockwood",
        "email": "lockwood@android.com",
        "time": "Fri Jan 21 21:00:54 2011 -0800"
      },
      "committer": {
        "name": "Mike Lockwood",
        "email": "lockwood@android.com",
        "time": "Fri Jan 21 21:00:54 2011 -0800"
      },
      "message": "Remove MTP related log spam\n\nChange-Id: I9de1792cbeec07fa5ab42ff9a10813f0c3d30fc1\nSigned-off-by: Mike Lockwood \u003clockwood@android.com\u003e\n"
    },
    {
      "commit": "8aded52c4d6962da5357d4bfc0bca4be3aa331ef",
      "tree": "c262a3454ed8d461d2aee932b2e0be43fef73e5d",
      "parents": [
        "7fac331b39ca49ce49a67e425dcc031a3cb9e97f"
      ],
      "author": {
        "name": "Carl Shapiro",
        "email": "cshapiro@google.com",
        "time": "Fri Jan 21 14:50:32 2011 -0800"
      },
      "committer": {
        "name": "Carl Shapiro",
        "email": "cshapiro@google.com",
        "time": "Fri Jan 21 14:52:51 2011 -0800"
      },
      "message": "Revert \"Make AwesomePlayer\u0027s reset process more verbose to track down ANRs.\"\n\nThis reverts commit 90c656574175bd54ed8d258f406f158177e5e91c.\n\nBug: 3378444\nChange-Id: Id845bc0bc213f18c73fec12e6a2084cb2075c2d9\n"
    },
    {
      "commit": "7fac331b39ca49ce49a67e425dcc031a3cb9e97f",
      "tree": "f38b5f0a2b0180deed38d27b9b91c26908785d6d",
      "parents": [
        "bc7f5b2e56107cfeaeeab13cf8979379e3c2f139"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Fri Jan 21 14:32:31 2011 -0800"
      },
      "committer": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Fri Jan 21 14:32:31 2011 -0800"
      },
      "message": "Properly rotate video that\u0027s marked as such and decoded to a surface.\n\nChange-Id: I1e9144db3447e58c99aac3f47702ad471678789c\nrelated-to-bug: 3378148\n"
    },
    {
      "commit": "bc7f5b2e56107cfeaeeab13cf8979379e3c2f139",
      "tree": "dffbfa1a0c661a0bd986d3ef8d80287cb0bcc513",
      "parents": [
        "b408222bd9479c291874b607acae1425d6154fe7"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Fri Jan 21 10:15:23 2011 -0800"
      },
      "committer": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Fri Jan 21 10:34:40 2011 -0800"
      },
      "message": "Some tweaks to HTTP live / nuplayer behaviour\n\n- play audio-only streams again\n- workaround for malformed streams that switch PIDs across bandwidths\n- attempt to pick a different bandwidth stream if the previously chosen one appears\n  to be malformed/unsupported.\n\nChange-Id: I426d0a40dc725aa242f619d4c9d048b69aca55c9\nrelated-to-bug: 2368598\n"
    },
    {
      "commit": "b23ef145ac2a62068a6a8848f1f5d8a74f9c2b34",
      "tree": "21366520a5f7082e22a9663aff5e1987aa36a6af",
      "parents": [
        "ea59c3e26a903af458cb1cadaeed869a99bf5680",
        "6e3edc2dffb0d424b02ac57b55114b0d13163f56"
      ],
      "author": {
        "name": "Dave Sparks",
        "email": "davidsparks@android.com",
        "time": "Thu Jan 20 17:41:30 2011 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Thu Jan 20 17:41:30 2011 -0800"
      },
      "message": "am 65d39eeb: Merge \"DO NOT MERGE: Prefill the cache before trying to instantiate the media extractor.\" into gingerbread\n\n* commit \u002765d39eeb9b032e5507a01daa25afff62b29bffe4\u0027:\n  DO NOT MERGE: Prefill the cache before trying to instantiate the media extractor.\n"
    },
    {
      "commit": "b408222bd9479c291874b607acae1425d6154fe7",
      "tree": "3d9ed699c5082bbf6449e623290ca59ce3b7a64d",
      "parents": [
        "adde7faabd165ebf69eaf64f62eb6792032a350a"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Thu Jan 20 15:23:04 2011 -0800"
      },
      "committer": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Thu Jan 20 15:23:04 2011 -0800"
      },
      "message": "Implement missing pause/resume support for NuPlayer.\n\nChange-Id: Ia3f1ce521dd4b70e134ef03aa7c9db8e8d39a134\nrelated-to-bug: 2368598\n"
    },
    {
      "commit": "737be0d7937e5ab61f0ddb8db1f3835f171300f1",
      "tree": "f93f621fbd413757bf1a6489995a40ca0e0d866f",
      "parents": [
        "91a685f1eaa32cadb461755fb235239b308953c9",
        "7bd460110b27a979384dda351788eac95d8467f5"
      ],
      "author": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Thu Jan 20 09:27:01 2011 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Jan 20 09:27:01 2011 -0800"
      },
      "message": "Merge \"Eliminate recording sound by starting the video track before audio track.\" into honeycomb"
    },
    {
      "commit": "7bd460110b27a979384dda351788eac95d8467f5",
      "tree": "cd228aa4d17773047de7bcc1976892bcb979a229",
      "parents": [
        "886c09ee81eb7b8878e487c7f801ea8ddb27c17c"
      ],
      "author": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Wed Jan 19 20:42:19 2011 -0800"
      },
      "committer": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Thu Jan 20 06:58:16 2011 -0800"
      },
      "message": "Eliminate recording sound by starting the video track before audio track.\n\nDue to the variable delays in the system, the recording sound can still be heard\nif the audio track is started early. This happens even after we suppress a relative\nlong period of initial audio for a recording session. By starting the video track\nbefore the audio track, we effectively play the recording sound earlier.\n\nbug - 3371141\n\nChange-Id: I2cccf77eae953d96827fc080c618b1d962445c26\n"
    },
    {
      "commit": "6e3edc2dffb0d424b02ac57b55114b0d13163f56",
      "tree": "06e553aeaa4efe814f992cfe3674763e3b25f400",
      "parents": [
        "f4c056aeacad2dac60a83ccd7928bfeaa9d6ddf6"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Wed Jan 19 15:07:19 2011 -0800"
      },
      "committer": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Wed Jan 19 15:44:23 2011 -0800"
      },
      "message": "DO NOT MERGE: Prefill the cache before trying to instantiate the media extractor.\n\nThe latter is an operation that otherwise could block on the datasource\nfor a significant amount of time. During that time we\u0027d be unable to\nabort the preparation phase without this prefill.\n\nChange-Id: I3bc889b264f599bfd5c2bbdf48b88ccb55d86172\nrelated-to-bug: 3362836\n"
    },
    {
      "commit": "1c705e94c291897d23d236a7d118a68eace74406",
      "tree": "3b7604c65dba8ecd02ea946b1665a51e8d4fa4c8",
      "parents": [
        "886c09ee81eb7b8878e487c7f801ea8ddb27c17c",
        "ac05c317cd818701535c5d72ce90da98c4bae75b"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Wed Jan 19 15:12:41 2011 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Jan 19 15:12:41 2011 -0800"
      },
      "message": "Merge \"Prefill the cache before trying to instantiate the media extractor.\" into honeycomb"
    },
    {
      "commit": "ac05c317cd818701535c5d72ce90da98c4bae75b",
      "tree": "7bc60e7bca5d17cad542d96782ad828a0df0c258",
      "parents": [
        "88b7ad413c4b6d08697069b18488641d6ce31fd3"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Wed Jan 19 15:07:19 2011 -0800"
      },
      "committer": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Wed Jan 19 15:07:19 2011 -0800"
      },
      "message": "Prefill the cache before trying to instantiate the media extractor.\n\nThe latter is an operation that otherwise could block on the datasource\nfor a significant amount of time. During that time we\u0027d be unable to\nabort the preparation phase without this prefill.\n\nChange-Id: Ia42496d88a11314386ea8797d665bf4e94871e30\nrelated-to-bug: 3362836\n"
    },
    {
      "commit": "886c09ee81eb7b8878e487c7f801ea8ddb27c17c",
      "tree": "395f9c04fc4728c74c700d4ac87113a434156521",
      "parents": [
        "88b7ad413c4b6d08697069b18488641d6ce31fd3",
        "65b3d76025c71d755b0fb3b6ead90255f25417ed"
      ],
      "author": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Wed Jan 19 13:57:06 2011 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Jan 19 13:57:06 2011 -0800"
      },
      "message": "Merge \"Logging the duration range from different media tracks for recording\" into honeycomb"
    },
    {
      "commit": "65b3d76025c71d755b0fb3b6ead90255f25417ed",
      "tree": "718d9853ea27847b77c0cf5c739ed6aba1b9d13b",
      "parents": [
        "88b348910a607ae399bcd693dd42a231d98da2c9"
      ],
      "author": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Wed Jan 19 11:50:19 2011 -0800"
      },
      "committer": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Wed Jan 19 11:54:59 2011 -0800"
      },
      "message": "Logging the duration range from different media tracks for recording\n\nChange-Id: I8c3edcf97ce35301f8645e4a1e232d9bfc2c0349\n"
    },
    {
      "commit": "88b7ad413c4b6d08697069b18488641d6ce31fd3",
      "tree": "36d49e5cf69bbf5b513bcffd2f94ff4c40f35578",
      "parents": [
        "88b348910a607ae399bcd693dd42a231d98da2c9"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Wed Jan 19 11:30:43 2011 -0800"
      },
      "committer": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Wed Jan 19 11:30:43 2011 -0800"
      },
      "message": "Always revert to the previous bandwidth if the required sequence number cannot be found\n\nChange-Id: I098dba37f4a70fc703c9ce65346907c3e10f27f6\n"
    },
    {
      "commit": "88b348910a607ae399bcd693dd42a231d98da2c9",
      "tree": "25c690dee1142a36924392b7899e447f663129f7",
      "parents": [
        "662cb2487ed513ff3ac26b104b5715c01d78419c"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Wed Jan 19 11:24:39 2011 -0800"
      },
      "committer": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Wed Jan 19 11:24:39 2011 -0800"
      },
      "message": "Return a runtime error if decryption fails instead of asserting.\n\nChange-Id: Ibab7f2cae3ff7a2e19bc3f31005d5059775a664a\n"
    },
    {
      "commit": "662cb2487ed513ff3ac26b104b5715c01d78419c",
      "tree": "d4036f117ab08f04bccc46313fde7e5bbf98454a",
      "parents": [
        "113a95462d2018c62b9e6bc86e7f643ff46f29cf",
        "b391290130f263441334ee4525a5832f0bea2ef0"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Wed Jan 19 10:38:16 2011 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Jan 19 10:38:16 2011 -0800"
      },
      "message": "Merge \"Make parameter blocks read/writable even for SET_PARAMETER/SET_CONFIG requests.\" into honeycomb"
    },
    {
      "commit": "b391290130f263441334ee4525a5832f0bea2ef0",
      "tree": "09faabdbb6c75ef535bc134eb6dad53267f66380",
      "parents": [
        "7509d7725207bfc28f7757c18518e21110c0736d"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Wed Jan 19 10:34:52 2011 -0800"
      },
      "committer": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Wed Jan 19 10:34:52 2011 -0800"
      },
      "message": "Make parameter blocks read/writable even for SET_PARAMETER/SET_CONFIG requests.\n\nRefactor the logic a little.\n\nChange-Id: Idd7a26678d846c96b0b11f096305e7467381bda3\n"
    },
    {
      "commit": "113a95462d2018c62b9e6bc86e7f643ff46f29cf",
      "tree": "136c2efa65fdbbb1d4057e9aaf9ec6dbc66e4ae9",
      "parents": [
        "e75ceba6e3f009118c5debbbe2de268beb350c9a"
      ],
      "author": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Wed Jan 19 00:13:55 2011 -0800"
      },
      "committer": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Wed Jan 19 10:20:59 2011 -0800"
      },
      "message": "Expose average video frame rate via MPEG4Extractor\n\nbug - 3362483\n\nChange-Id: Ifcbb75c1e8b80cb06c4b8fe7f5ff99bc6f18af69\n"
    },
    {
      "commit": "e75ceba6e3f009118c5debbbe2de268beb350c9a",
      "tree": "060dc1df2f38a7d1c031af49db48ea58ea4b258f",
      "parents": [
        "7509d7725207bfc28f7757c18518e21110c0736d",
        "b45c01c2b8588ff431b511151666a55a39f0a6ae"
      ],
      "author": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Wed Jan 19 10:05:05 2011 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Jan 19 10:05:05 2011 -0800"
      },
      "message": "Merge \"Fix the presentation video resolution when it is different from the actual image resolution of the video.\" into honeycomb"
    },
    {
      "commit": "018761c5cc4aefd0495eaa4666f2372a59a7980a",
      "tree": "e0e4a58c37774fe7034bc4f73122156989c713cd",
      "parents": [
        "2b4883641e324c50a2ee24c5bd15170c7d31e57d"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Wed Jan 19 09:20:58 2011 -0800"
      },
      "committer": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Wed Jan 19 09:20:58 2011 -0800"
      },
      "message": "Turn another assertion into a runtime error. Damn you surfaces.\n\nChange-Id: Ib62957180949293a6fb84bb5a40af058798337ab\nrelated-to-bug: 3335220\n"
    },
    {
      "commit": "b45c01c2b8588ff431b511151666a55a39f0a6ae",
      "tree": "94a766af98d29e9b6d745e42a5f625106267a2e1",
      "parents": [
        "2b4883641e324c50a2ee24c5bd15170c7d31e57d"
      ],
      "author": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Sun Jan 16 11:30:13 2011 -0800"
      },
      "committer": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Wed Jan 19 08:33:07 2011 -0800"
      },
      "message": "Fix the presentation video resolution when it is different from the actual image resolution of the video.\n\nbug - 3352413\n\nChange-Id: I8f08f3896e9fb90f09119dccdb88b82af60f79f2\n"
    },
    {
      "commit": "ea59c3e26a903af458cb1cadaeed869a99bf5680",
      "tree": "62ed0207ff0ddeeec2c5cc0b67cca97c36bbb1e2",
      "parents": [
        "cf3592c5bf1c66ba510934fff5eb57ee0b3fd761",
        "f4c056aeacad2dac60a83ccd7928bfeaa9d6ddf6"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Wed Jan 19 08:23:47 2011 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Wed Jan 19 08:23:47 2011 -0800"
      },
      "message": "am e9a00235: Merge \"DO NOT MERGE: Apparently our native TCP sockets do not return an error from blocking \"connect\"\" into gingerbread\n\n* commit \u0027e9a00235c102d198a702bc665b2ea5b5e8c4bc07\u0027:\n  DO NOT MERGE: Apparently our native TCP sockets do not return an error from blocking \"connect\"\n"
    },
    {
      "commit": "2b4883641e324c50a2ee24c5bd15170c7d31e57d",
      "tree": "affc60536acc73b632055dbb1a76c55ac6b17557",
      "parents": [
        "de16890e98cdd241398ed155cd47daf061584a77"
      ],
      "author": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Tue Jan 18 21:12:31 2011 -0800"
      },
      "committer": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Tue Jan 18 21:33:58 2011 -0800"
      },
      "message": "Use metadata in video buffers for timelapse video recording by default to eliminate memcpy\n\nbug - 3361771\n\nChange-Id: Ib37ffe4be8edc8708baa76b3507b6f11372536d9\n"
    },
    {
      "commit": "f4c056aeacad2dac60a83ccd7928bfeaa9d6ddf6",
      "tree": "33c73abc7fb95445121cc4595a863ed45000b29e",
      "parents": [
        "95304d5488ba465f19cc788f1c7394218c2ea2d1"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Tue Jan 18 15:26:40 2011 -0800"
      },
      "committer": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Tue Jan 18 15:52:31 2011 -0800"
      },
      "message": "DO NOT MERGE: Apparently our native TCP sockets do not return an error from blocking \"connect\"\n\nif the network interface is shutdown while connecting.\n\nChange-Id: I168c6026de24812efa9b7e607a9eb83efded8c1f\nrelated-to-bug: 3362836\n"
    },
    {
      "commit": "de16890e98cdd241398ed155cd47daf061584a77",
      "tree": "8273f7629019c9a38090c485b550d20b1b8969e2",
      "parents": [
        "31389148f4ab7587e150f4043b7379eaefe2af2b",
        "368ef16787c3fe2334dadc767e7418b610c83cbd"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Tue Jan 18 15:35:35 2011 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Jan 18 15:35:35 2011 -0800"
      },
      "message": "Merge \"Apparently our native TCP sockets do not return an error from blocking \"connect\"\" into honeycomb"
    },
    {
      "commit": "368ef16787c3fe2334dadc767e7418b610c83cbd",
      "tree": "2eae79e5a3366c0f9cbaca2ff2771f4f3ed47f23",
      "parents": [
        "bf6489f8b4c03dda70bf7a549702b98da497e348"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Tue Jan 18 15:26:40 2011 -0800"
      },
      "committer": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Tue Jan 18 15:26:40 2011 -0800"
      },
      "message": "Apparently our native TCP sockets do not return an error from blocking \"connect\"\n\nif the network interface is shutdown while connecting.\n\nChange-Id: I1bd7e43475edf20f35e15dd4eae547126289f5f0\nrelated-to-bug: 3362836\n"
    },
    {
      "commit": "31389148f4ab7587e150f4043b7379eaefe2af2b",
      "tree": "28d20f9c37755cbf14af6cc2d20e7a17fc213efc",
      "parents": [
        "bf6489f8b4c03dda70bf7a549702b98da497e348"
      ],
      "author": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Tue Jan 18 14:26:55 2011 -0800"
      },
      "committer": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Tue Jan 18 14:28:37 2011 -0800"
      },
      "message": "Fix the sluggish preview during timelapse video recording because software encoder is used.\n\nbug - 3361771\n\nChange-Id: Ic5344e9eabe7f1b82910b65b4260e4ad8dc51c32\n"
    },
    {
      "commit": "bf6489f8b4c03dda70bf7a549702b98da497e348",
      "tree": "605ed35b22591607ec15680a63d6cce4002cfa6d",
      "parents": [
        "126983a5afae1a554a8bb26711bb01edb1ddf5b1",
        "21a6f9ffee8b3c014abfe165b8f7fd2224f49e1f"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Tue Jan 18 11:52:02 2011 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Jan 18 11:52:02 2011 -0800"
      },
      "message": "Merge \"Implement parsing of vbv buffering info in RTSP.\" into honeycomb"
    },
    {
      "commit": "126983a5afae1a554a8bb26711bb01edb1ddf5b1",
      "tree": "186a713ca97792b9e0763362c93ca52f30d95ac9",
      "parents": [
        "aa95240d9096f97aa2e2022fae8764a4386c8951",
        "1bd233ce7e1aa7730bc18d46ffd57791391738cd"
      ],
      "author": {
        "name": "Bryan Mawhinney",
        "email": "bryanmawhinney@google.com",
        "time": "Tue Jan 18 11:30:30 2011 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Jan 18 11:30:30 2011 -0800"
      },
      "message": "Merge \"Don\u0027t report 100% buffered when the stream ends prematurely.\" into honeycomb"
    },
    {
      "commit": "21a6f9ffee8b3c014abfe165b8f7fd2224f49e1f",
      "tree": "140750d63bf8e4e50e67bdcdd737e0af18ee79e0",
      "parents": [
        "ccb3506ed1845121b94f4e27244e61a46eb19815"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Tue Jan 18 11:19:13 2011 -0800"
      },
      "committer": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Tue Jan 18 11:19:13 2011 -0800"
      },
      "message": "Implement parsing of vbv buffering info in RTSP.\n\nChange-Id: I7d871cafda2c4c65670a40ad9ab4f24317f8568a\nrelated-to-bug: 3351915\n"
    },
    {
      "commit": "1bd233ce7e1aa7730bc18d46ffd57791391738cd",
      "tree": "f260f0d8821d1f36fbfcf9f678fb80f62ec099b9",
      "parents": [
        "ccb3506ed1845121b94f4e27244e61a46eb19815"
      ],
      "author": {
        "name": "Bryan Mawhinney",
        "email": "bryanmawhinney@google.com",
        "time": "Tue Jan 18 19:12:21 2011 +0000"
      },
      "committer": {
        "name": "Bryan Mawhinney",
        "email": "bryanmawhinney@google.com",
        "time": "Tue Jan 18 19:12:21 2011 +0000"
      },
      "message": "Don\u0027t report 100% buffered when the stream ends prematurely.\n\nChange-Id: Ia4e80d02f28104427a3309e3d5b155faa5702757\n"
    },
    {
      "commit": "aa95240d9096f97aa2e2022fae8764a4386c8951",
      "tree": "ee23a4189c0152e2d5528887d5861566ef5ada6f",
      "parents": [
        "ccb3506ed1845121b94f4e27244e61a46eb19815"
      ],
      "author": {
        "name": "Mike Lockwood",
        "email": "lockwood@android.com",
        "time": "Tue Jan 18 11:06:19 2011 -0800"
      },
      "committer": {
        "name": "Mike Lockwood",
        "email": "lockwood@android.com",
        "time": "Tue Jan 18 11:07:11 2011 -0800"
      },
      "message": "MTP: Fix problems with modification dates for folders and non-media files\n\nAlso removed an unnecessary parameter to MtpDatabase.endSendobject()\n\nBUG: 3352142\n\nChange-Id: I6fd812dcba4814956bc8bc1cbd6bd5c868197790\nSigned-off-by: Mike Lockwood \u003clockwood@android.com\u003e\n"
    },
    {
      "commit": "ccb3506ed1845121b94f4e27244e61a46eb19815",
      "tree": "28dbe58d3112cb15c9b87d94897d2aa73b1042e3",
      "parents": [
        "6ee94582e3ce7bdd9625345e7564e3176a51a2f3"
      ],
      "author": {
        "name": "Dharmaray Kundargi",
        "email": "dharmaray@google.com",
        "time": "Sun Jan 16 16:43:20 2011 -0800"
      },
      "committer": {
        "name": "Dharmaray Kundargi",
        "email": "dharmaray@google.com",
        "time": "Sun Jan 16 16:43:20 2011 -0800"
      },
      "message": "integrate videoeditor preview player.\n\nChange-Id: I83084f494605c8e6f4d198afa8c36f9e29579667\n"
    },
    {
      "commit": "cf3592c5bf1c66ba510934fff5eb57ee0b3fd761",
      "tree": "db789ee0027babcee8f5a9a4b090546275365b8f",
      "parents": [
        "3ed11317ce695a413d337c60fde222f30306f092",
        "95304d5488ba465f19cc788f1c7394218c2ea2d1"
      ],
      "author": {
        "name": "Jean-Baptiste Queru",
        "email": "jbq@google.com",
        "time": "Fri Jan 14 18:33:51 2011 -0800"
      },
      "committer": {
        "name": "Jean-Baptiste Queru",
        "email": "jbq@google.com",
        "time": "Fri Jan 14 18:33:51 2011 -0800"
      },
      "message": "merge 83fdc69e from gingerbread - do not merge\n\nChange-Id: Ib1e9e12244a44f75a93d66142e71915de6386680\n"
    },
    {
      "commit": "6ee94582e3ce7bdd9625345e7564e3176a51a2f3",
      "tree": "bf2c802a855fcddb53ff057e0889e11a363ee846",
      "parents": [
        "42dd1d5f186252a7f09f8fb1a46ea82e3877b2d3"
      ],
      "author": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Fri Jan 14 15:15:12 2011 -0800"
      },
      "committer": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Fri Jan 14 15:15:12 2011 -0800"
      },
      "message": "Fixed thrashing in the cached buffer during 720p YT video streaming\n\nbug - 3340194\n\nChange-Id: Ic59bb18ab1731d7dd7cae7cc8aeb393900bce7f6\n"
    },
    {
      "commit": "42dd1d5f186252a7f09f8fb1a46ea82e3877b2d3",
      "tree": "8169be6605d7f2cd2bc5d3e5a21b1c0ef146e176",
      "parents": [
        "3e9eeb3b411f56d9935f9240056107816da24653"
      ],
      "author": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Wed Jan 12 20:45:16 2011 -0800"
      },
      "committer": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Wed Jan 12 20:45:16 2011 -0800"
      },
      "message": "Add audio encoding parameters check\n\nbug - 3345296\n\nChange-Id: If3f33955f5473b0c5ad9c9b85f8b5cb21ddd7e65\n"
    },
    {
      "commit": "95304d5488ba465f19cc788f1c7394218c2ea2d1",
      "tree": "5f5269238a292e0e747cbfa2a01e6a2fb24615b8",
      "parents": [
        "e49051406baa71cb63d5754d33908ce3df201af1"
      ],
      "author": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Thu Dec 02 17:42:08 2010 -0800"
      },
      "committer": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Wed Jan 12 17:12:46 2011 -0800"
      },
      "message": "Squash commits of the following patches, cherry-picked from other branch - do not merge.\n\no Prepare for publishing MediaMetadataRetriever as public API\n  step one:\n  o replaced captureFrame with getFrameAtTime\n  o removed getMode\n\no Replace MediaMetadataRetriever.captureFrame() with MediaMetadataRetriever.getFrameAtTime()\n  as part of the preparation for publishing MediaMetadataRetriever as public Java API\n\no Remove captureFrame from MediaMetadataRetriever.java class\n  It has been replaced by getFrameAtTime() method\n\no Replace extractAlbumArt() with getEmbeddedPicture() in MediaMetadataRetriever.java\n\no Publish MediaMetadataRetriever.java as public API\n  o Removed setMode() methods and related mode constants\n  o Removed some of the unused the metadata keys\n  o Updated the javadoc\n  o part of a multi-project change.\n\nbug - 3309041\n\nChange-Id: I2efb6e8b8d52897186b016cb4efda6862f5584c4\n"
    },
    {
      "commit": "3e9eeb3b411f56d9935f9240056107816da24653",
      "tree": "cfaad6e7a887102b85359705a8f0d3267bb6fb71",
      "parents": [
        "7f7d52ac18dfc3c6d8f6267dad29306613e9bd0e",
        "934ca8cb1bcffcf1781a576ca625d2f901e5f0a9"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Wed Jan 12 14:33:51 2011 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Jan 12 14:33:51 2011 -0800"
      },
      "message": "Merge \"Fail to parse duration instead of asserting, if the server response cannot be parsed.\" into honeycomb"
    },
    {
      "commit": "7f7d52ac18dfc3c6d8f6267dad29306613e9bd0e",
      "tree": "5e17f415d44cdba3c8b37a42c487e28e26593a64",
      "parents": [
        "67988a9ba5a081d14dbd8a663516e1d484d829df"
      ],
      "author": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Thu Jan 06 12:20:35 2011 -0800"
      },
      "committer": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Wed Jan 12 14:14:11 2011 -0800"
      },
      "message": "Publish MediaMetadataRetriever.java as public API\n\no Removed setMode() methods and related mode constants\no Removed some of the unused the metadata keys\no Updated the javadoc\n\no part of a multi-project change.\n\nbug - 2433195\n\nChange-Id: I5ed167f1fd6a53cb143b7dc385b149431d434438\n"
    },
    {
      "commit": "67988a9ba5a081d14dbd8a663516e1d484d829df",
      "tree": "87174f60c8ae8886df65970ab81aa92445ef3f34",
      "parents": [
        "4dafe5b814c923538a0f275b62220ec9cc94a9b5",
        "7cc497733b7602b99b783decfa8c002bc27e25aa"
      ],
      "author": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Wed Jan 12 11:54:32 2011 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Jan 12 11:54:32 2011 -0800"
      },
      "message": "Merge \"Speed up MP3Extractor using cached reads\" into honeycomb"
    },
    {
      "commit": "72b228f6b18763a95023fd8ba44eb7354cfd7f74",
      "tree": "d17c7c9cf584a6fdcc3d7318e52cc0baa8937e23",
      "parents": [
        "4c0104e004f30d7e48381ef8d728b2e93931611f",
        "e49051406baa71cb63d5754d33908ce3df201af1"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Wed Jan 12 10:35:18 2011 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Wed Jan 12 10:35:18 2011 -0800"
      },
      "message": "am 7c615360: Fail to parse duration instead of asserting, if the server response cannot be parsed.\n\n* commit \u00277c6153606cc963191362494c8cb5669749e84326\u0027:\n  Fail to parse duration instead of asserting, if the server response cannot be parsed.\n"
    },
    {
      "commit": "934ca8cb1bcffcf1781a576ca625d2f901e5f0a9",
      "tree": "946f9b81777549201bfff4446fcfcdb005cf3d44",
      "parents": [
        "c4c3a2d4123f7dfe8c6ed0c26fb14aeb7b8d8f61"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Wed Jan 12 09:57:23 2011 -0800"
      },
      "committer": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Wed Jan 12 10:31:04 2011 -0800"
      },
      "message": "Fail to parse duration instead of asserting, if the server response cannot be parsed.\n\nChange-Id: I42324468edca5ccce29486059091da8e64f36326\nrelated-to-bug: 3338518\n"
    },
    {
      "commit": "e49051406baa71cb63d5754d33908ce3df201af1",
      "tree": "18fde73551a4c51a3c6d9c9edecfecc816507c0e",
      "parents": [
        "9a0cf4fb7d18e186e06341bde915de234992d969"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Wed Jan 12 09:57:23 2011 -0800"
      },
      "committer": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Wed Jan 12 09:57:23 2011 -0800"
      },
      "message": "Fail to parse duration instead of asserting, if the server response cannot be parsed.\n\nChange-Id: I95c61ed83800db82e99c0023b942fb8ae05ed3cf\nrelated-to-bug: 3338518\n"
    },
    {
      "commit": "7cc497733b7602b99b783decfa8c002bc27e25aa",
      "tree": "3004d896aebf64aaeb2c48348021366e020e9cba",
      "parents": [
        "c4c3a2d4123f7dfe8c6ed0c26fb14aeb7b8d8f61"
      ],
      "author": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Tue Jan 11 18:59:32 2011 -0800"
      },
      "committer": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Wed Jan 12 09:49:15 2011 -0800"
      },
      "message": "Speed up MP3Extractor using cached reads\n\nChange-Id: I53a5ed76bc2f76f0c184f3800b5448f677117ae3\n"
    },
    {
      "commit": "4dafe5b814c923538a0f275b62220ec9cc94a9b5",
      "tree": "4a6fa7ec2a746f4fd94b85833beeaa5e4e9c0c05",
      "parents": [
        "c4c3a2d4123f7dfe8c6ed0c26fb14aeb7b8d8f61"
      ],
      "author": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Wed Jan 12 09:22:07 2011 -0800"
      },
      "committer": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Wed Jan 12 09:22:07 2011 -0800"
      },
      "message": "Fix race in buffer ref counting.\n\nChange-Id: Id47c30469c3e3ec293ed2ef574a191275b5044d6\n"
    },
    {
      "commit": "4c0104e004f30d7e48381ef8d728b2e93931611f",
      "tree": "99d6c0e2d582ecb8a85a7bd33142535f1cf02595",
      "parents": [
        "960737e761895d5850beabab809d03b3621d0ec3",
        "9a0cf4fb7d18e186e06341bde915de234992d969"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Tue Jan 11 16:22:33 2011 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Tue Jan 11 16:22:33 2011 -0800"
      },
      "message": "am 7e2f9cc8: DO NOT MERGE: Fix Matroska issues\n\n* commit \u00277e2f9cc81da788006790365ff11f06551fc1bc26\u0027:\n  DO NOT MERGE: Fix Matroska issues\n"
    },
    {
      "commit": "9a0cf4fb7d18e186e06341bde915de234992d969",
      "tree": "b476b0c1e1e5d7abc7ae61e653cebda64d81681d",
      "parents": [
        "0d85990f20106513b6da5a446702aa62ab61397f"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Tue Jan 11 16:01:33 2011 -0800"
      },
      "committer": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Tue Jan 11 16:02:31 2011 -0800"
      },
      "message": "DO NOT MERGE: Fix Matroska issues\n\nrelated-to-bug: 3331623\n\nSquashed commit of the following:\n\ncommit 8484811f3784564ce962ec1b6311bac532d73ffc\nAuthor: Andreas Huber \u003candih@google.com\u003e\nDate:   Tue Jan 11 11:56:06 2011 -0800\n\n    Properly parse Matroska lacing flags and extract all frames contained in a block.\n\n    related-to-bug: 3331623\n\ncommit 38f1f39381a01659577461b3d35bd22db45ba317\nAuthor: Andreas Huber \u003candih@google.com\u003e\nDate:   Mon Nov 15 15:10:34 2010 -0800\n\n    Proper support for variable NALsize lengths of AVC content in .mkv files.\n\n    related-to-bug: 3197442\n\nChange-Id: I4b404f3c3d0a2a2fa336b9edff75eb25ffc66a2f\n"
    },
    {
      "commit": "960737e761895d5850beabab809d03b3621d0ec3",
      "tree": "f3296d85930b340675dc2c41bcb80ac29af16e03",
      "parents": [
        "7b8a803497450bb90b9c4f5ba3426bf984fad274",
        "0d85990f20106513b6da5a446702aa62ab61397f"
      ],
      "author": {
        "name": "repo sync",
        "email": "andih@google.com",
        "time": "Tue Jan 11 15:26:51 2011 -0800"
      },
      "committer": {
        "name": "repo sync",
        "email": "andih@google.com",
        "time": "Tue Jan 11 15:26:51 2011 -0800"
      },
      "message": "resolved conflicts for merge of e7fbfb6b to gingerbread-plus-aosp\n\nChange-Id: Icef97302fb99e3dd346ec6ee04aa9e8eea7bff26\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": "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": "0d85990f20106513b6da5a446702aa62ab61397f",
      "tree": "82de1cf909430710c421b3ce311087e7699cd3b8",
      "parents": [
        "32c8335c6b6eb87a88e9193db1a5aab29175d043"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Tue Jan 11 09:51:34 2011 -0800"
      },
      "committer": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Tue Jan 11 09:53:30 2011 -0800"
      },
      "message": "DO NOT MERGE: Fix parsing of ntp\u003d PLAY response.\n\nrelated-to-bug: 3340186\n\nSquashed commit of the following:\n\ncommit b61c36b7228aec9f5360883b1e1c1e0530488974\nAuthor: Andreas Huber \u003candih@google.com\u003e\nDate:   Wed Oct 27 13:59:59 2010 -0700\n\n    Better support for MP4A-LATM RTP disassembly. This used to fail if mNumSubFrames \u003e 1 and the sub frames did not align with RTP packet boundaries.\n\ncommit b10f322c07e5bebcaf032e8624cb4a5d733dfc15\nAuthor: Andreas Huber \u003candih@google.com\u003e\nDate:   Mon Oct 25 09:40:52 2010 -0700\n\n    We don\u0027t have access to the md5 implementation on the simulator, let\u0027s disable digest authentication in rtsp for simulator targets.\n\ncommit 0aa83cf9e4637adf9501708fcdf7d0d6d4dc4fe1\nAuthor: Andreas Huber \u003candih@google.com\u003e\nDate:   Wed Oct 20 15:00:34 2010 -0700\n\n    Support for BASIC and DIGEST authentication schemes in RTSP. Support for malformed packet descriptions that end lines in LF only, instead of CRLF.\n\n    related-to-bug: 3084183\n\nChange-Id: I6e512cb73cc8d5624a83f7154aa5699f7fef7534\n"
    },
    {
      "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": "7b8a803497450bb90b9c4f5ba3426bf984fad274",
      "tree": "74e28c69edf407830c632b5a1dd2e8fc7344b416",
      "parents": [
        "9cfc9eff42a0700029c39e89c38b52488845ad63",
        "32c8335c6b6eb87a88e9193db1a5aab29175d043"
      ],
      "author": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Mon Jan 10 12:09:09 2011 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Mon Jan 10 12:09:09 2011 -0800"
      },
      "message": "am 13d1cb56: Merge \"Avoid deadlock in OMX::freeNode by making sure OMXCodecObserver does not hold the last reference of OMXCodec object - do not merge\" into gingerbread\n\n* commit \u002713d1cb56dfdfc89888de6a0389b0fe6cf7e36c27\u0027:\n  Avoid deadlock in OMX::freeNode by making sure OMXCodecObserver does not hold the last reference of OMXCodec object - do not merge\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": "32c8335c6b6eb87a88e9193db1a5aab29175d043",
      "tree": "a7ee67ba1dd4051a2440eeee2f1347dc133d8389",
      "parents": [
        "288fb7e5bd7060cbe9b737500975754c9312e2db"
      ],
      "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 10:27:02 2011 -0800"
      },
      "message": "Avoid deadlock in OMX::freeNode by making sure OMXCodecObserver does not hold the last reference of OMXCodec object - do not merge\n\ncherry-picked from: I4c79b66a900c527e3ae6a833f76d5da1b75c5a89\n\nbug - 3336424\n\nChange-Id: I2d8ecb79a5422342988c195c012c9e6327ac457a\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": "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": "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": "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": "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": "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": "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": "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": "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"
    }
  ],
  "next": "8afe66571ba14c7f923966d7270287e6f950ef38"
}
