)]}'
{
  "log": [
    {
      "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\""
    },
    {
      "commit": "abdd2ba259a5dc863a821c9d1187d83f2e2395ac",
      "tree": "615411ff769da9b3693f9684c967e7f25da06a18",
      "parents": [
        "d69c7f654cc772b03717999c1b24402d5c40e69f"
      ],
      "author": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Fri Dec 10 13:09:05 2010 -0800"
      },
      "committer": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Fri Dec 10 13:09:05 2010 -0800"
      },
      "message": "Fixed a failure from timelapse video recording because of accidental use of metadata buffers\n\nbug - 3274317\n\nChange-Id: I2c0e9fcd30c9141ce5a85e9d72cbd0baf561458b\n"
    },
    {
      "commit": "b3fd981d5f8bbf629dd8a07b06b4b656b70cb944",
      "tree": "1d725343a79410a5fc5f849439df2017e1b465c5",
      "parents": [
        "d69c7f654cc772b03717999c1b24402d5c40e69f"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Fri Dec 10 11:46:12 2010 -0800"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Fri Dec 10 11:46:12 2010 -0800"
      },
      "message": "Fix audio mode log.\n\nSince the new audio mode IN_COMMUNICATION was added, the audio mode log\nwas broken.\n\nChange-Id: I4fdafc3b98a1b0ceb55058a9e47fed99b3dbe6ad\n"
    },
    {
      "commit": "d69c7f654cc772b03717999c1b24402d5c40e69f",
      "tree": "c8d8c3b66854867bd5ba08ef03c9ede0481065c4",
      "parents": [
        "986ef2ad4c96952711d87af481f3afb40aa10775"
      ],
      "author": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Thu Dec 09 11:24:22 2010 -0800"
      },
      "committer": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Fri Dec 10 07:34:08 2010 -0800"
      },
      "message": "Release a recording frame only if mCamera exists and is not cleared.\nand also call mCamera-\u003estopRecording() only after CameraSource releases all the\noutstanding video frames sent from CameraSource to its clients (such as video encoder).\n\nChange-Id: I7eeed4e2f388e77c28668d52c24b5330d3d9ebde\n"
    },
    {
      "commit": "986ef2ad4c96952711d87af481f3afb40aa10775",
      "tree": "d685585e64bfe6a46d7deabd1190fea460ebef3a",
      "parents": [
        "b41ad26dba96d70f53fff46d10eb589c2b3eb6f8"
      ],
      "author": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Thu Dec 09 11:08:14 2010 -0800"
      },
      "committer": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Fri Dec 10 07:19:13 2010 -0800"
      },
      "message": "We requires camera hal\u0027s implementation should not track the ref count of any outstanding video frames and ignore\nreleaseRecordingFrame() call after it receives disableMsgType(CAMERA_MSG_VIDEO_FRAME).\n\nChange-Id: I2ecb9b3b11dab6bf868ccf8effda1b8df5bcde3c\n"
    },
    {
      "commit": "b41ad26dba96d70f53fff46d10eb589c2b3eb6f8",
      "tree": "d195bff7c5a65e1fd721a34f01a62a93cfb8d6b0",
      "parents": [
        "f7454622eaac287d20ab43013d7015fe42b894f8",
        "ba29002c7aee13c068049037cd14bba6a244da6b"
      ],
      "author": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Thu Dec 09 20:27:59 2010 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Dec 09 20:27:59 2010 -0800"
      },
      "message": "Merge \"First step towards renabling Timelapse video recording\""
    },
    {
      "commit": "f7454622eaac287d20ab43013d7015fe42b894f8",
      "tree": "1bbc63dbaf849ed5226194e933f2de3c9bdb22e0",
      "parents": [
        "424c6cbfa75da5f4f889ab6517dfee4dd024ba2d"
      ],
      "author": {
        "name": "Mike Lockwood",
        "email": "lockwood@android.com",
        "time": "Thu Dec 09 18:34:18 2010 -0800"
      },
      "committer": {
        "name": "Mike Lockwood",
        "email": "lockwood@android.com",
        "time": "Thu Dec 09 18:34:18 2010 -0800"
      },
      "message": "MTP host: Handle receiving a response packet instead of data packet.\n\nThis will happen if the device needs to report an error rather than returning the data.\n\nChange-Id: I477512b3676c2f0518a85a4135832ed4475fbc2d\nSigned-off-by: Mike Lockwood \u003clockwood@android.com\u003e\n"
    },
    {
      "commit": "ba29002c7aee13c068049037cd14bba6a244da6b",
      "tree": "ae5e61b21c24dbc6fa7fc592c17cbedbc70ed14f",
      "parents": [
        "151827eba283d97771aaa4494e5a1a6573dafcfb"
      ],
      "author": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Thu Dec 09 15:04:33 2010 -0800"
      },
      "committer": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Thu Dec 09 15:37:04 2010 -0800"
      },
      "message": "First step towards renabling Timelapse video recording\n\nChange-Id: I93836b066fb69d5152d3774546a9935057a1f12f\n"
    },
    {
      "commit": "424c6cbfa75da5f4f889ab6517dfee4dd024ba2d",
      "tree": "acd065d3edcb3a1e8f6a70909f598505d276f044",
      "parents": [
        "151827eba283d97771aaa4494e5a1a6573dafcfb"
      ],
      "author": {
        "name": "James Wylder",
        "email": "james.wylder@motorola.com",
        "time": "Thu Nov 11 16:09:45 2010 -0600"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Thu Dec 09 12:00:58 2010 -0800"
      },
      "message": "libstagefright: Compile MP3 \u0026 AAC decoders in 32bit ARM Mode\n\nSpeeds up the decoding leaving more time for cpuidle (lp2),\nthus lowering overall current drain.\n\nChange-Id: Ia4e0636b1813810072fe0a4f94f6921adf2eab31\nSigned-off-by: James Wylder \u003cjames.wylder@motorola.com\u003e\n"
    },
    {
      "commit": "151827eba283d97771aaa4494e5a1a6573dafcfb",
      "tree": "270b92aba8b804de38df6e2cdc3cc98e6484cd87",
      "parents": [
        "234ec865db84542cab33b7a5f1ca6e6dcc40c5fa",
        "e6c315a714dbc75cd2b92bcdcf42caa6dca07d8b"
      ],
      "author": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Wed Dec 08 17:18:26 2010 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Dec 08 17:18:26 2010 -0800"
      },
      "message": "Merge \"resolved conflicts for merge of c402def7 to master\""
    },
    {
      "commit": "234ec865db84542cab33b7a5f1ca6e6dcc40c5fa",
      "tree": "270b92aba8b804de38df6e2cdc3cc98e6484cd87",
      "parents": [
        "c96e481795f4d6b02e7c1eb6d2d5adb076c88cef",
        "181a379b43c1e85389e8bb60825d9b608502717a"
      ],
      "author": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Wed Dec 08 17:15:54 2010 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Dec 08 17:15:54 2010 -0800"
      },
      "message": "Merge changes Id4222c9b,I3c1a9172\n\n* changes:\n  More clean-up. Get rid off the \"blur\" effect in SurfaceFlinger\n  fix [3259708] Graphic Buffer Mapper does not support YV12\n"
    },
    {
      "commit": "c96e481795f4d6b02e7c1eb6d2d5adb076c88cef",
      "tree": "4ddbbfdf696c938d940b4bd69657975baadf9a32",
      "parents": [
        "03dfce9672b36c1a334959a602f909b8410bec50",
        "fd34626771a63d3a835863e1b4bf71dcb26e28d8"
      ],
      "author": {
        "name": "Mike Lockwood",
        "email": "lockwood@android.com",
        "time": "Wed Dec 08 17:15:22 2010 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Dec 08 17:15:22 2010 -0800"
      },
      "message": "Merge \"MTP: Improve argument checking in SendObjectInfo\""
    },
    {
      "commit": "e6c315a714dbc75cd2b92bcdcf42caa6dca07d8b",
      "tree": "9c1ae20251cb7251d619b42ddbfe6124866e4324",
      "parents": [
        "03dfce9672b36c1a334959a602f909b8410bec50",
        "7d44e4da3bc3d56c6a9aed1f27f51cfd5b54108f"
      ],
      "author": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Wed Dec 08 17:14:14 2010 -0800"
      },
      "committer": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Wed Dec 08 17:14:14 2010 -0800"
      },
      "message": "resolved conflicts for merge of c402def7 to master\n\nChange-Id: I328e7c41ad410f07322f6d3a32251e495710c090\n"
    },
    {
      "commit": "181a379b43c1e85389e8bb60825d9b608502717a",
      "tree": "ca11523e4668750b8d37c1f3c4aaa3cb3fd10416",
      "parents": [
        "03dfce9672b36c1a334959a602f909b8410bec50"
      ],
      "author": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Wed Dec 08 16:40:01 2010 -0800"
      },
      "committer": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Wed Dec 08 16:48:28 2010 -0800"
      },
      "message": "fix [3259708] Graphic Buffer Mapper does not support YV12\n\nremove a bunch of a code that was there only to support broken gralloc implementations\n\nChange-Id: I3c1a9172224cbcc283601abfbbd695a20815451f\n"
    },
    {
      "commit": "7d44e4da3bc3d56c6a9aed1f27f51cfd5b54108f",
      "tree": "ae0c16de30dc7f65b849159024b38cae93718950",
      "parents": [
        "df1f37adddb03227b63e2bb45887cbcf2bb56313",
        "e8079d0f6afcb138a0e5882ccbaf93647ea77c5b"
      ],
      "author": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Wed Dec 08 16:20:16 2010 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Wed Dec 08 16:20:16 2010 -0800"
      },
      "message": "am 1f5b133a: Merge \"When INFO_FORMAT_CHANGED event comes in before the renderer was initialized, go back to read from source again\" into gingerbread\n\n* commit \u00271f5b133ae29090f1807be392874f6b7a5d92c6d4\u0027:\n  When INFO_FORMAT_CHANGED event comes in before the renderer was initialized, go back to read from source again\n"
    },
    {
      "commit": "03dfce9672b36c1a334959a602f909b8410bec50",
      "tree": "9c1ae20251cb7251d619b42ddbfe6124866e4324",
      "parents": [
        "cb0cb25002f1b5fe0d02c997bac487b5b6c5c682"
      ],
      "author": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Tue Dec 07 19:38:17 2010 -0800"
      },
      "committer": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Wed Dec 08 16:13:59 2010 -0800"
      },
      "message": "remove support for PUSH_BUFFER surfaces and overlays\n\nthe same functionality is now supported through\nthe h/w composer HAL, and YUV support in the GPU.\n\nChange-Id: I8146605449954b8e8fd7f78810b7d873c2d8f5bf\n"
    },
    {
      "commit": "fd34626771a63d3a835863e1b4bf71dcb26e28d8",
      "tree": "7b6ae8f839589577830cd73f42449b32ca88a5a7",
      "parents": [
        "e52fda6714a209fa2117d970919324b56573f90f"
      ],
      "author": {
        "name": "Mike Lockwood",
        "email": "lockwood@android.com",
        "time": "Wed Dec 08 16:08:01 2010 -0800"
      },
      "committer": {
        "name": "Mike Lockwood",
        "email": "lockwood@android.com",
        "time": "Wed Dec 08 16:09:37 2010 -0800"
      },
      "message": "MTP: Improve argument checking in SendObjectInfo\n\nIn particular, make sure the parent is a folder and make sure file\ndoes not already exist.\n\nChange-Id: Ifa870faba3285f03a92025d9e82f93fed78a761c\nSigned-off-by: Mike Lockwood \u003clockwood@android.com\u003e\n"
    },
    {
      "commit": "e8079d0f6afcb138a0e5882ccbaf93647ea77c5b",
      "tree": "d088895683a8145734d7d02040bf8a2399b060ad",
      "parents": [
        "b3e40847bebc9acd035a1d693885fd14d58beaf2"
      ],
      "author": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Wed Dec 08 15:28:42 2010 -0800"
      },
      "committer": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Wed Dec 08 15:37:14 2010 -0800"
      },
      "message": "When INFO_FORMAT_CHANGED event comes in before the renderer was initialized, go back to read from source again\n\nbug - 3264094\n\nChange-Id: I291a9b09b335d0eb4acf91f992e59fc44bc57d01\n"
    },
    {
      "commit": "cb0cb25002f1b5fe0d02c997bac487b5b6c5c682",
      "tree": "1b0af69fdbc3ee2a99019d215bf998c75d02735f",
      "parents": [
        "a829968ac3ba900dd22d2122253f67099d9d6f9f"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Wed Dec 08 14:50:10 2010 -0800"
      },
      "committer": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Wed Dec 08 14:50:10 2010 -0800"
      },
      "message": "Fix thumbnail extraction for extractors that don\u0027t have a preference.\n\nChange-Id: Id305a44416b08a667aae86c2109aa4dff9f17342\n"
    },
    {
      "commit": "a829968ac3ba900dd22d2122253f67099d9d6f9f",
      "tree": "c00d07705893f69a1c60137b39948d99e59f7634",
      "parents": [
        "e52fda6714a209fa2117d970919324b56573f90f",
        "92bf2f96c53d24adc1ace362439e82ca2cf6b856"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Wed Dec 08 09:09:25 2010 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Dec 08 09:09:25 2010 -0800"
      },
      "message": "Merge \"Better buffer status management and verification in OMXCodec.\""
    },
    {
      "commit": "92bf2f96c53d24adc1ace362439e82ca2cf6b856",
      "tree": "c22cfabbb5925258dcb6e48dd0d7e83e23fc4be4",
      "parents": [
        "97f2c9d530c9663deeb840f332dee205a7a11cdd"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Tue Dec 07 14:25:54 2010 -0800"
      },
      "committer": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Wed Dec 08 09:07:28 2010 -0800"
      },
      "message": "Better buffer status management and verification in OMXCodec.\n\nChange-Id: I90410f2ac0d8ff86076a239dc6e281b1bc4d8643\n"
    },
    {
      "commit": "e52fda6714a209fa2117d970919324b56573f90f",
      "tree": "3be01e786c2dd5b8345ae2133166c2a73f2d7a3e",
      "parents": [
        "faac5c1a0aac9b09c4edf3d3ca3ea266787fd0c5",
        "99e393a39a31bfbdeb435462939519e2d0279433"
      ],
      "author": {
        "name": "Mike Lockwood",
        "email": "lockwood@android.com",
        "time": "Tue Dec 07 18:56:58 2010 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Dec 07 18:56:58 2010 -0800"
      },
      "message": "Merge \"MTP: Support format argument in host GetObjectPropDesc command\""
    },
    {
      "commit": "99e393a39a31bfbdeb435462939519e2d0279433",
      "tree": "b4fbe06804f106403ca1dad9eaf421d434566ce6",
      "parents": [
        "5da864845e024833c4c7f641acd7c88187a6bc1e"
      ],
      "author": {
        "name": "Mike Lockwood",
        "email": "lockwood@android.com",
        "time": "Tue Dec 07 18:53:04 2010 -0800"
      },
      "committer": {
        "name": "Mike Lockwood",
        "email": "lockwood@android.com",
        "time": "Tue Dec 07 18:53:04 2010 -0800"
      },
      "message": "MTP: Support format argument in host GetObjectPropDesc command\n\nChange-Id: Ic14313c0f95bea1d1d475cc6a001b256fccb91c8\nSigned-off-by: Mike Lockwood \u003clockwood@android.com\u003e\n"
    },
    {
      "commit": "faac5c1a0aac9b09c4edf3d3ca3ea266787fd0c5",
      "tree": "139a904456d22c49b5231a6f545f5b66912fb21c",
      "parents": [
        "14609818a401ee874482042131f7a3cbd77395b2",
        "5da864845e024833c4c7f641acd7c88187a6bc1e"
      ],
      "author": {
        "name": "Mike Lockwood",
        "email": "lockwood@android.com",
        "time": "Tue Dec 07 17:21:01 2010 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Dec 07 17:21:01 2010 -0800"
      },
      "message": "Merge \"MTP: Read property code before calling isDeviceProperty in MtpProperty::read()\""
    },
    {
      "commit": "5da864845e024833c4c7f641acd7c88187a6bc1e",
      "tree": "eb218fce452ad5d83d1a56d3cf807bffb99affeb",
      "parents": [
        "0c7c7c76a96a82ec728a2d5c091941c4057ffb25"
      ],
      "author": {
        "name": "Mike Lockwood",
        "email": "lockwood@android.com",
        "time": "Tue Dec 07 13:51:54 2010 -0800"
      },
      "committer": {
        "name": "Mike Lockwood",
        "email": "lockwood@android.com",
        "time": "Tue Dec 07 17:16:20 2010 -0800"
      },
      "message": "MTP: Read property code before calling isDeviceProperty in MtpProperty::read()\n\nChange-Id: I0b1493f3af5d9caac08327f9ffba91ee255d3d55\nSigned-off-by: Mike Lockwood \u003clockwood@android.com\u003e\n"
    },
    {
      "commit": "14609818a401ee874482042131f7a3cbd77395b2",
      "tree": "e526353a8c03d9cf71766b816185a087cb99fbd6",
      "parents": [
        "79d8c23752e3004b62e513b2057a389346cdc335",
        "0c7c7c76a96a82ec728a2d5c091941c4057ffb25"
      ],
      "author": {
        "name": "Mike Lockwood",
        "email": "lockwood@android.com",
        "time": "Tue Dec 07 17:15:02 2010 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Dec 07 17:15:02 2010 -0800"
      },
      "message": "Merge \"MTP: Improve MtpProperty logging support\""
    },
    {
      "commit": "0c7c7c76a96a82ec728a2d5c091941c4057ffb25",
      "tree": "19fc13f9b1d585ee08afe816939c27e5373cb091",
      "parents": [
        "98693f674125484de8873d969c209276a6dd604b"
      ],
      "author": {
        "name": "Mike Lockwood",
        "email": "lockwood@android.com",
        "time": "Tue Dec 07 11:24:28 2010 -0800"
      },
      "committer": {
        "name": "Mike Lockwood",
        "email": "lockwood@android.com",
        "time": "Tue Dec 07 17:13:12 2010 -0800"
      },
      "message": "MTP: Improve MtpProperty logging support\n\nChange-Id: I46800b99763edcc5e994d912941f9f5e9b1c94d2\nSigned-off-by: Mike Lockwood \u003clockwood@android.com\u003e\n"
    },
    {
      "commit": "79d8c23752e3004b62e513b2057a389346cdc335",
      "tree": "01a7b79ee08b509391541e516e96f4d2e4da51a4",
      "parents": [
        "043b601774c0f302b73ed713772cd1bd62f43fe4",
        "98693f674125484de8873d969c209276a6dd604b"
      ],
      "author": {
        "name": "Mike Lockwood",
        "email": "lockwood@android.com",
        "time": "Tue Dec 07 17:11:07 2010 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Dec 07 17:11:07 2010 -0800"
      },
      "message": "Merge \"MTP: Host support for GetObjectPropsSupported and GetObjectPropDesc\""
    },
    {
      "commit": "043b601774c0f302b73ed713772cd1bd62f43fe4",
      "tree": "df9773c3cf0b9b5b404bc6d213ff2d9498ad7f47",
      "parents": [
        "baf00537ab2a022c11a8e3bdc5518e39846d0d20",
        "2e09e289b7e136481e9215bb61ed47cee5d9919b"
      ],
      "author": {
        "name": "Mike Lockwood",
        "email": "lockwood@android.com",
        "time": "Tue Dec 07 17:10:43 2010 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Dec 07 17:10:43 2010 -0800"
      },
      "message": "Merge \"MTP: Use correct return type for getSupportedObjectProperties\""
    },
    {
      "commit": "baf00537ab2a022c11a8e3bdc5518e39846d0d20",
      "tree": "51b0ad3abc371b354a57c643a43fde772211520d",
      "parents": [
        "d767742343f03f9a2f9bd0a3f84061d40433d84d",
        "ddc4497c17b23d4a9828f977d5ac11ee36059da9"
      ],
      "author": {
        "name": "Mike Lockwood",
        "email": "lockwood@android.com",
        "time": "Tue Dec 07 17:10:25 2010 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Dec 07 17:10:25 2010 -0800"
      },
      "message": "Merge \"Revert \"MTP: Remove static library build for linux host.\"\""
    },
    {
      "commit": "d767742343f03f9a2f9bd0a3f84061d40433d84d",
      "tree": "8915c3c505ab0c995e0e5d4fa98673c64550db3c",
      "parents": [
        "97f2c9d530c9663deeb840f332dee205a7a11cdd",
        "6baa5de62a91b151af7a19036706b3d45143a32e"
      ],
      "author": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Tue Dec 07 11:08:53 2010 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Dec 07 11:08:53 2010 -0800"
      },
      "message": "Merge \"Don\u0027t drop video frames but to release them.\""
    },
    {
      "commit": "98693f674125484de8873d969c209276a6dd604b",
      "tree": "58c69be45cd71ca9729f1a2388da9a8f18d3ae25",
      "parents": [
        "2e09e289b7e136481e9215bb61ed47cee5d9919b"
      ],
      "author": {
        "name": "Mike Lockwood",
        "email": "lockwood@android.com",
        "time": "Tue Dec 07 10:58:56 2010 -0800"
      },
      "committer": {
        "name": "Mike Lockwood",
        "email": "lockwood@android.com",
        "time": "Tue Dec 07 10:58:56 2010 -0800"
      },
      "message": "MTP: Host support for GetObjectPropsSupported and GetObjectPropDesc\n\nChange-Id: I6fd23587597fc68227dfb61118b097eda3e3e1d5\nSigned-off-by: Mike Lockwood \u003clockwood@android.com\u003e\n"
    },
    {
      "commit": "2e09e289b7e136481e9215bb61ed47cee5d9919b",
      "tree": "d0b7c4c456984d0fd2bf1be2d1427e314db0135f",
      "parents": [
        "ddc4497c17b23d4a9828f977d5ac11ee36059da9"
      ],
      "author": {
        "name": "Mike Lockwood",
        "email": "lockwood@android.com",
        "time": "Tue Dec 07 10:51:20 2010 -0800"
      },
      "committer": {
        "name": "Mike Lockwood",
        "email": "lockwood@android.com",
        "time": "Tue Dec 07 10:51:20 2010 -0800"
      },
      "message": "MTP: Use correct return type for getSupportedObjectProperties\n\nChange-Id: I6d5bd63fecaa3384dfa1b97dbc0d89ea5668981f\nSigned-off-by: Mike Lockwood \u003clockwood@android.com\u003e\n"
    },
    {
      "commit": "ddc4497c17b23d4a9828f977d5ac11ee36059da9",
      "tree": "68b0e760b66b3f6c93eb67bd927b56ef41997dc7",
      "parents": [
        "5a68e17d07369a16b16a16dcdc539c293b8c2810"
      ],
      "author": {
        "name": "Mike Lockwood",
        "email": "lockwood@android.com",
        "time": "Tue Dec 07 10:43:41 2010 -0800"
      },
      "committer": {
        "name": "Mike Lockwood",
        "email": "lockwood@android.com",
        "time": "Tue Dec 07 10:45:22 2010 -0800"
      },
      "message": "Revert \"MTP: Remove static library build for linux host.\"\n\nThis reverts commit d46c683f0e13ad9341ba83453835f6658ae5ad15.\n\nChange-Id: I7e56760c92bad1d66d4a1f2415328a4d2138de84\n"
    },
    {
      "commit": "97f2c9d530c9663deeb840f332dee205a7a11cdd",
      "tree": "8fc04e6081e94ad6cc1c4dbc27bbd84150a59d2e",
      "parents": [
        "5a68e17d07369a16b16a16dcdc539c293b8c2810",
        "14acc736e336cbd6026df781d4f411e908831815"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Tue Dec 07 10:12:47 2010 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Dec 07 10:12:47 2010 -0800"
      },
      "message": "Merge \"API Support for both synchronous and queued commands, optionally associated metadata.\""
    },
    {
      "commit": "6baa5de62a91b151af7a19036706b3d45143a32e",
      "tree": "615273d172f64e3e0a3c36a0e2de1a27a67b21d1",
      "parents": [
        "5a68e17d07369a16b16a16dcdc539c293b8c2810"
      ],
      "author": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Mon Dec 06 19:45:24 2010 -0800"
      },
      "committer": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Mon Dec 06 19:53:01 2010 -0800"
      },
      "message": "Don\u0027t drop video frames but to release them.\n\nbug - 3259009\n\nChange-Id: Ib7634f10a7fe7b7ce7014b79b07957d194bae1a7\n"
    },
    {
      "commit": "5a68e17d07369a16b16a16dcdc539c293b8c2810",
      "tree": "2275a46f50040c3ee7aa838de928f756aa01476d",
      "parents": [
        "a3748084e110b2d7c689a3b38b274e6a95756c5d",
        "df1f37adddb03227b63e2bb45887cbcf2bb56313"
      ],
      "author": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Mon Dec 06 16:45:08 2010 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Mon Dec 06 16:45:08 2010 -0800"
      },
      "message": "am 23b791cd: am d57fbe88: Fixed a race condition where some recording frames may not be released\n\n* commit \u002723b791cd0f725d188b84dabfd9eeab4e3775b869\u0027:\n  Fixed a race condition where some recording frames may not be released\n"
    },
    {
      "commit": "df1f37adddb03227b63e2bb45887cbcf2bb56313",
      "tree": "1825dd69ac78c821254eee01abf5b77a2d09d0a2",
      "parents": [
        "5c2ccf1a4ff8465c076689b6c2d74f2cd4498df2",
        "b3e40847bebc9acd035a1d693885fd14d58beaf2"
      ],
      "author": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Mon Dec 06 15:36:04 2010 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Mon Dec 06 15:36:04 2010 -0800"
      },
      "message": "am d57fbe88: Fixed a race condition where some recording frames may not be released\n\n* commit \u0027d57fbe887fabd027e644caeaa2139c863143a786\u0027:\n  Fixed a race condition where some recording frames may not be released\n"
    },
    {
      "commit": "b3e40847bebc9acd035a1d693885fd14d58beaf2",
      "tree": "4fb4f086e8b4317060ee1c92b44113c67f92e565",
      "parents": [
        "d28b0e7057ea1b85d70f6aa25415655eb67ca126"
      ],
      "author": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Mon Dec 06 15:02:28 2010 -0800"
      },
      "committer": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Mon Dec 06 15:05:06 2010 -0800"
      },
      "message": "Fixed a race condition where some recording frames may not be released\n\nbug - 3258924\n\nChange-Id: I4f30d04a713676f5da40e6a7dd861510cc041f9b\n"
    },
    {
      "commit": "a3748084e110b2d7c689a3b38b274e6a95756c5d",
      "tree": "2275a46f50040c3ee7aa838de928f756aa01476d",
      "parents": [
        "a44153c1a57202fb538659eb50706e60454d6273",
        "ea7b485595f8cec6a66668b5c54c8f297d843f77"
      ],
      "author": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Mon Dec 06 14:18:18 2010 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Dec 06 14:18:18 2010 -0800"
      },
      "message": "Merge \"Remove check if the target video resolution is not supported by CameraSource and clean up Camera is CameraSource could not created.\""
    },
    {
      "commit": "14acc736e336cbd6026df781d4f411e908831815",
      "tree": "ed12a1452bb0e9a7bc9d9a3b4deb00458e90c852",
      "parents": [
        "a44153c1a57202fb538659eb50706e60454d6273"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Mon Dec 06 10:36:06 2010 -0800"
      },
      "committer": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Mon Dec 06 12:45:50 2010 -0800"
      },
      "message": "API Support for both synchronous and queued commands, optionally associated metadata.\n\nChange-Id: Idb90d64cb638942210c5822b3cba2f05b087d601\n"
    },
    {
      "commit": "a44153c1a57202fb538659eb50706e60454d6273",
      "tree": "4ba43d350d44fb4bd052ce3c562c4a2ad6658270",
      "parents": [
        "16afe2fb439cab6125bb46a07a8078d4ce1c1ea5"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Fri Dec 03 16:12:25 2010 -0800"
      },
      "committer": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Mon Dec 06 08:28:36 2010 -0800"
      },
      "message": "Squashed commit of the following:\n\ncommit 9254c845d7c82976fd4b8be406ce4b17eeb0e119\nAuthor: Andreas Huber \u003candih@google.com\u003e\nDate:   Fri Dec 3 15:26:12 2010 -0800\n\n    Remove obsolete code from the cached data source.\n\n    Change-Id: I794b986ac8977cbc834dff189221a636ba564e36\n\ncommit 2ee33711064c58c53ba65ed9e63dd4b01ec2380e\nAuthor: Andreas Huber \u003candih@google.com\u003e\nDate:   Fri Dec 3 15:23:13 2010 -0800\n\n    LiveSource is dead, long live LiveSession.\n\n    Change-Id: Ibcd0731ecf9c94f0b3e5db3d53d012d9da2a1c66\n\ncommit 9eabb2c3cd8571ab859bdeae0aa7f655c414d8fa\nAuthor: Andreas Huber \u003candih@google.com\u003e\nDate:   Fri Dec 3 12:49:31 2010 -0800\n\n    Respect explicitly signalled discontinuities.\n\n    Change-Id: I3c0c16a2de7a99742d25db7d1b2ff0258de52271\n\ncommit 7f7f7b6b906b6ece6e4d43af7fd5f494e805c5e5\nAuthor: Andreas Huber \u003candih@google.com\u003e\nDate:   Fri Dec 3 11:45:57 2010 -0800\n\n    Better protection against syncword emulation in AAC ADTS content.\n\n    Change-Id: I867e80a4556dd46d24ab3e781177c248a5221719\n\ncommit fe765766582efcc350aed01135ea603576adccf6\nAuthor: Andreas Huber \u003candih@google.com\u003e\nDate:   Fri Dec 3 09:15:59 2010 -0800\n\n    New implementation of http live driving code.\n\n    Change-Id: I31ddf3d6a0d5929b121be704a2b9c3d6775f7737\n\nChange-Id: Id8d1829c8fcb173756965013f848c1d426ef1048\n"
    },
    {
      "commit": "ea7b485595f8cec6a66668b5c54c8f297d843f77",
      "tree": "05551d3bd3db0b0b971a4dfc5d345ea6e2381267",
      "parents": [
        "16afe2fb439cab6125bb46a07a8078d4ce1c1ea5"
      ],
      "author": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Sun Dec 05 14:25:34 2010 -0800"
      },
      "committer": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Sun Dec 05 16:08:30 2010 -0800"
      },
      "message": "Remove check if the target video resolution is not supported by CameraSource\nand clean up Camera is CameraSource could not created.\n\nbug - 3254411\n\nChange-Id: I43497c450e7007de5ce027e2912b1421119e8887\n"
    },
    {
      "commit": "16afe2fb439cab6125bb46a07a8078d4ce1c1ea5",
      "tree": "146e5ad9abfa370d35b2a8912a4887356764b1e2",
      "parents": [
        "1cc73922339a110d7ffc47e8842f958492dd85bf"
      ],
      "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": "Fri Dec 03 15:32:47 2010 -0800"
      },
      "message": "Prepare for publishing MediaMetadataRetriever as public API\n\nstep one:\no replaced captureFrame with getFrameAtTime\no removed getMode\n\nbug - 2433195\n\nChange-Id: I38a8cecef29014692f0b08b8818326e3ebb40a12\n"
    },
    {
      "commit": "1cc73922339a110d7ffc47e8842f958492dd85bf",
      "tree": "ebca916029b5e609bd1528d1b004c15fe8661fda",
      "parents": [
        "3bac12183aa69cc83e1d19b49d4b06a75318d694"
      ],
      "author": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Thu Dec 02 14:48:23 2010 -0800"
      },
      "committer": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Thu Dec 02 14:50:07 2010 -0800"
      },
      "message": "If camera source uses the metadata, we must use HW encoder\n Software video encoders are not able to deal with non-YUV metadata in the video buffer sent from camera\n\nbug - 3242213\n\nChange-Id: I97361ed88b2a687190e5129459011afff7f32c2d\n"
    },
    {
      "commit": "3bac12183aa69cc83e1d19b49d4b06a75318d694",
      "tree": "acb9c0a8d6f4db93d47474c668f347a1d605287d",
      "parents": [
        "f6882a9c8144dc0fd07f3434bb870e5251f51275",
        "decd96988e495133e4a1728f612d4c9fdb4d218e"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Thu Dec 02 14:04:55 2010 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Dec 02 14:04:55 2010 -0800"
      },
      "message": "Merge \"Squashed commit of the following:\""
    },
    {
      "commit": "decd96988e495133e4a1728f612d4c9fdb4d218e",
      "tree": "1fece451dee4cf28d4bde296218c74e918e7ff9e",
      "parents": [
        "14072e56ef34f6ea4b517d69c13b61ad5ec67337"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Thu Dec 02 13:27:47 2010 -0800"
      },
      "committer": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Thu Dec 02 13:27:47 2010 -0800"
      },
      "message": "Squashed commit of the following:\n\ncommit de99ae4a523ff5ec40b47071f22fdde1a4b2a0bf\nAuthor: Andreas Huber \u003candih@google.com\u003e\nDate:   Thu Dec 2 13:18:40 2010 -0800\n\n    Scan for sync words to find H.264 frame/AAC frame boundaries if PES packets do not start with them.\n\n    Change-Id: If2861982ecb3006fac806105dbfcd1d43c2a4205\n\ncommit be23791ff0d037aa7073589cdc8bfc362e1c281d\nAuthor: Andreas Huber \u003candih@google.com\u003e\nDate:   Thu Dec 2 13:12:39 2010 -0800\n\n    Properly expand relative key URLs and strip surrounding quotes in the M3UParser.\n\n    Change-Id: I013a6d83a64f095d090e5c7730298bdac7d03ab4\n\ncommit 0f1d8f65effe0cc42a265dd91d8b91dce6534325\nAuthor: Andreas Huber \u003candih@google.com\u003e\nDate:   Thu Dec 2 13:11:27 2010 -0800\n\n    Ugly hack that assumes that any http url containing \"m3u8\" refers to an httplive stream.\n\n    Change-Id: I05d7bbc5dab0f9822558122b5b9dc2a109ed8518\n\ncommit 255f0d5cdb1072ecd66b47ee614bf574f1388e5a\nAuthor: Andreas Huber \u003candih@google.com\u003e\nDate:   Thu Dec 2 13:10:56 2010 -0800\n\n    Add one more mimetype \"application/x-mpegurl\" to identify httplive playlists.\n\n    Change-Id: I63fd3b8c2539c9ee23c077df533157af78b10863\n\nChange-Id: I135687383009dbe32d690c9ba8dea60159adc616\n"
    },
    {
      "commit": "f6882a9c8144dc0fd07f3434bb870e5251f51275",
      "tree": "ce9c8a5f9de3fdc168a2fc70e85af81e130c9dde",
      "parents": [
        "14072e56ef34f6ea4b517d69c13b61ad5ec67337",
        "5c2ccf1a4ff8465c076689b6c2d74f2cd4498df2"
      ],
      "author": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Thu Dec 02 10:24:24 2010 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Thu Dec 02 10:24:24 2010 -0800"
      },
      "message": "am 80639875: am d4c5478a: Merge \"Be conservative in estimating the file size limit.\" into gingerbread\n\n* commit \u0027806398755fdc63438b607856574e5b885ad98e6b\u0027:\n  Be conservative in estimating the file size limit.\n"
    },
    {
      "commit": "5c2ccf1a4ff8465c076689b6c2d74f2cd4498df2",
      "tree": "20d8c331751e715721ae9562d7302924d94cf0eb",
      "parents": [
        "aecdb70affacb10cde3e7fc22f30fc9fbf631fce",
        "d28b0e7057ea1b85d70f6aa25415655eb67ca126"
      ],
      "author": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Thu Dec 02 10:21:06 2010 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Thu Dec 02 10:21:06 2010 -0800"
      },
      "message": "am d4c5478a: Merge \"Be conservative in estimating the file size limit.\" into gingerbread\n\n* commit \u0027d4c5478a8664f64ff66db9ae25250afac78b7a74\u0027:\n  Be conservative in estimating the file size limit.\n"
    },
    {
      "commit": "d28b0e7057ea1b85d70f6aa25415655eb67ca126",
      "tree": "75c2fc9fccfa83931f7ca5015922aef4de0a59d3",
      "parents": [
        "ed7c671a57f89d389c9d6cd67e0698f160f69916",
        "acd234bba9f048971d66890009eeff9a8db94be3"
      ],
      "author": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Thu Dec 02 10:13:36 2010 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Dec 02 10:13:36 2010 -0800"
      },
      "message": "Merge \"Be conservative in estimating the file size limit.\" into gingerbread"
    },
    {
      "commit": "14072e56ef34f6ea4b517d69c13b61ad5ec67337",
      "tree": "2dee6e562eb0cc55a9be497b94e2e0b7be849622",
      "parents": [
        "40ce1f262cc4edbc8b7c470830325466263acaec",
        "aecdb70affacb10cde3e7fc22f30fc9fbf631fce"
      ],
      "author": {
        "name": "Jean-Baptiste Queru",
        "email": "jbq@google.com",
        "time": "Thu Dec 02 08:03:21 2010 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Thu Dec 02 08:03:21 2010 -0800"
      },
      "message": "am 5561ecff: am 077bc4ac: Merge from open-source master\n\n* commit \u00275561ecff7bdcb8a8f377d442ca64ee87ee1356b8\u0027:\n  Fix HTTP redirect missing statuscode 303 and 307\n"
    },
    {
      "commit": "aecdb70affacb10cde3e7fc22f30fc9fbf631fce",
      "tree": "7a1bbc18334951108769ed119eccd5fbcda9e0e5",
      "parents": [
        "9f9886c113a661b2e1784999a5876f7e47754bf4",
        "7f7371ad2df83fe6a085089446575d0bcd24d59a"
      ],
      "author": {
        "name": "Jean-Baptiste Queru",
        "email": "jbq@google.com",
        "time": "Thu Dec 02 07:59:49 2010 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Thu Dec 02 07:59:49 2010 -0800"
      },
      "message": "am 077bc4ac: Merge from open-source master\n\n* commit \u0027077bc4ac019ad33abd613448e11d3ad501218991\u0027:\n  Fix HTTP redirect missing statuscode 303 and 307\n"
    }
  ],
  "next": "7f7371ad2df83fe6a085089446575d0bcd24d59a"
}
