)]}'
{
  "log": [
    {
      "commit": "cef3cd79489fa7897ffbacbc4e435651fb04f10d",
      "tree": "fd0d5f2763f08b01314ec7015c0a2e027e916c20",
      "parents": [
        "a77f93f76a40128ecc3d017ead6d1105f96b282a"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Thu Dec 10 01:03:50 2009 -0800"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Wed Jan 13 09:25:13 2010 -0800"
      },
      "message": "Create base class for audio policy manager.\n\nFirst implementations of audio policy manager in Eclair branch have shown that most code is common to all platforms.\nCreating AudioPolicyManagerBase base class will improve code maintainability and readability.\n\nAudio policy manager code for platforms using generic audio previously in AudioPolicyManagerGeneric is replaced by AudioPolicyManagerBase.\nAudio policy manager test code previously in AudioPolicyManagerGeneric is moved to AudioPolicyManagerBase.\n\nAlso added a wake lock for delayed commands in AudioPolicyService.\n"
    },
    {
      "commit": "aee3c6394a367abf283936cb8b8bd85ed028c050",
      "tree": "b6e95cdaa35e612745ed9505b1bdf4f1fd1fb52f",
      "parents": [
        "93aea69649c2ac163db3333563644d2593f2770c"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Mon Jan 11 15:35:19 2010 -0800"
      },
      "committer": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Tue Jan 12 09:14:15 2010 -0800"
      },
      "message": "Squashed commit of the following:\n\ncommit f81bb1dac5ef107bb0d7d5d756fb1ffa532ba2cc\nAuthor: Andreas Huber \u003candih@google.com\u003e\nDate:   Mon Jan 11 14:55:56 2010 -0800\n\n    Support for duration metadata, midi and ogg-vorbis files (in mediascanner)\n\ncommit 0b1385a0dc156ce27985a1ff757c4c142fd7ec39\nAuthor: Andreas Huber \u003candih@google.com\u003e\nDate:   Mon Jan 11 14:20:45 2010 -0800\n\n    Refactor meta data logic. Container specific metadata is now also returned by the MediaExtractor.\n\ncommit f9818dfac39c96e5fefe8c8295e60580692d5990\nAuthor: Andreas Huber \u003candih@google.com\u003e\nDate:   Fri Jan 8 14:26:09 2010 -0800\n\n    A first pass at supporting metadata through ID3 tags.\n\ncommit 476e9e253633336ab790f943e2d6c0cd8991d76a\nAuthor: Andreas Huber \u003candih@google.com\u003e\nDate:   Thu Jan 7 15:48:44 2010 -0800\n\n    Initial checkin of ID3 (V2.2 and V2.3) parser for use in stagefright.\n\nrelated-to-bug: 2295456\n"
    },
    {
      "commit": "e4a838051de5e56f44c71117073a035b804b5d04",
      "tree": "6e388540202e3386ff80a3b25da69d3e4b085701",
      "parents": [
        "660cc3461afbf0631cc8d4ab628628d68d840014"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Fri Jan 08 10:57:34 2010 -0800"
      },
      "committer": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Fri Jan 08 11:54:36 2010 -0800"
      },
      "message": "Reorganize some of the stagefright implementation related to metadata.\n"
    },
    {
      "commit": "cf4fc6263c1c24ffa91a65a75edb126143a2617e",
      "tree": "9a9ee3a1cf2d14ebd4d5b6ce08f9052e0dc57295",
      "parents": [
        "ecc1f6eca2a89b5a1d0e0e067e3f270424121546",
        "f31f365a7708c931e955670bc6213fdc8f91a87a"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Tue Dec 22 23:46:16 2009 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Tue Dec 22 23:46:16 2009 -0800"
      },
      "message": "am f31f365a: am eb5ffc23: Merge change Id8e98194 into eclair\n\nMerge commit \u0027f31f365a7708c931e955670bc6213fdc8f91a87a\u0027\n\n* commit \u0027f31f365a7708c931e955670bc6213fdc8f91a87a\u0027:\n  Fix issues 2333450 and 2333559:\n"
    },
    {
      "commit": "f31f365a7708c931e955670bc6213fdc8f91a87a",
      "tree": "4d1a72347440f4d71519e7ba47c4cd6948ebaa32",
      "parents": [
        "244cc72fdf906799e3ec4cfe5b7cda49d9f08cca",
        "eb5ffc239b6482b9c1e046f6f5872187043d852c"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Tue Dec 22 23:41:59 2009 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Tue Dec 22 23:41:59 2009 -0800"
      },
      "message": "am eb5ffc23: Merge change Id8e98194 into eclair\n\nMerge commit \u0027eb5ffc239b6482b9c1e046f6f5872187043d852c\u0027 into eclair-plus-aosp\n\n* commit \u0027eb5ffc239b6482b9c1e046f6f5872187043d852c\u0027:\n  Fix issues 2333450 and 2333559:\n"
    },
    {
      "commit": "eb14a783be073b5fd6e8c8c9bc87d2d1919f2c9e",
      "tree": "7e288ac01c4a713d13e46c872b5dd682667dbe20",
      "parents": [
        "f0cdfa9955725c99cd4df6b933e4cb732847ebd1"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Thu Dec 17 03:12:59 2009 -0800"
      },
      "committer": {
        "name": "Jean-Michel Trivi",
        "email": "jmtrivi@google.com",
        "time": "Tue Dec 22 16:20:46 2009 -0800"
      },
      "message": "Fix issues 2333450 and 2333559:\n\nAdd new config values to AudioSystem::FOR_DOCK force usage to differenciate car and desk docks.\nUse a receiver for the sticky Intent.ACTION_DOCK_EVENT in AudioService to detect the type\nof dock and select force usage accordingly.\n"
    },
    {
      "commit": "b5c6be6db25d9e9405ea4cf20bbedd46a62dc0bb",
      "tree": "345a2a58b9f210483ab60f259c682b6b7362e3d5",
      "parents": [
        "0249c83ed014cc6a36caac30e55db62c29c204e2",
        "082e51712ab9c9ce94eaee88797bbdbc80b2004d"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Thu Dec 17 10:23:46 2009 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Thu Dec 17 10:23:46 2009 -0800"
      },
      "message": "am 082e5171: Merge change I895fb7d7 into eclair-mr2\n\nMerge commit \u0027082e51712ab9c9ce94eaee88797bbdbc80b2004d\u0027 into eclair-mr2-plus-aosp\n\n* commit \u0027082e51712ab9c9ce94eaee88797bbdbc80b2004d\u0027:\n  Squashed commit of the following:\n"
    },
    {
      "commit": "2ea14e231945afb6581fa8f54015b33bc74a19e5",
      "tree": "966adffbd5960c907324a5a78dc91abf40ea8fb5",
      "parents": [
        "d980e656baa842592944c6fed371c9b37b2feea9"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Wed Dec 16 09:30:55 2009 -0800"
      },
      "committer": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Thu Dec 17 09:28:15 2009 -0800"
      },
      "message": "Squashed commit of the following:\n\ncommit 144b1c40e9cf08a584c50e1bef7ba3f287e81a4f\nAuthor: Andreas Huber \u003candih@google.com\u003e\nDate:   Wed Dec 16 09:28:23 2009 -0800\n\n    This H264 file shows a certain problem even better.\n\ncommit 3245f1f3b7471975aeeb824a756c987abd610f55\nAuthor: Andreas Huber \u003candih@google.com\u003e\nDate:   Wed Dec 16 09:20:08 2009 -0800\n\n    Using only the QA testfiles now.\n\ncommit 074817eb3816c5dd70858a3594e3b92d799d873b\nAuthor: Andreas Huber \u003candih@google.com\u003e\nDate:   Tue Dec 15 16:17:39 2009 -0800\n\n    Yay, roles are back again now that the API is in place.\n\ncommit 6d847e4932cc38301ae27cb7283b7f1553a95457\nAuthor: Andreas Huber \u003candih@google.com\u003e\nDate:   Tue Dec 15 13:01:20 2009 -0800\n\n    Added commandline option for specifying the random seed for reproducable tests.\n\ncommit 62ab37b26336eaa67e49791c41c996acb6acee3f\nAuthor: Andreas Huber \u003candih@google.com\u003e\nDate:   Mon Dec 14 10:53:27 2009 -0800\n\n    When issuing a seek it is important that only the first MediaSource::read call has the seek option.\n\ncommit e77c46644b2fb6862bafa3569f7d304252074f1e\nAuthor: Andreas Huber \u003candih@google.com\u003e\nDate:   Mon Dec 7 16:39:07 2009 -0800\n\n    Make sure the tests are actually built, sp\u003cOMXCodec\u003e becomes sp\u003cMediaSource\u003e\n\ncommit 6df56915bd55a9445b3c6f953d3cc251d81579b8\nAuthor: Andreas Huber \u003candih@google.com\u003e\nDate:   Thu Dec 3 14:25:36 2009 -0800\n\n    Temporarily disable support for querying the roles of OMX components.\n\ncommit 31bb26930df9e3658dea684cedb4b0f1a06a4a88\nAuthor: Andreas Huber \u003candih@google.com\u003e\nDate:   Tue Dec 1 13:36:52 2009 -0800\n\n    Disregard EOS events, slightly change the way the EOS flag on output buffers is handled.\n\ncommit 4c382fbc9aebee8197d5988d04378062809e7c48\nAuthor: Andreas Huber \u003candih@google.com\u003e\nDate:   Tue Dec 1 09:37:24 2009 -0800\n\n    New random seek test for the codec tests. Fixed \"sticky\" end-of-output-buffers flag behaviour in OMXCodec.\n\ncommit c762eac3e44309592b61a168d66e091cf609fa03\nAuthor: Andreas Huber \u003candih@google.com\u003e\nDate:   Tue Nov 3 14:13:43 2009 -0800\n\n    Fix a typo.\n\ncommit 50540a59b65c7d476b0193c7494cd75895e6ca6d\nAuthor: Andreas Huber \u003candih@google.com\u003e\nDate:   Tue Nov 3 09:48:35 2009 -0800\n\n    Some more fine tuning of the unit tests, make MPEG4Extractor less verbose.\n\ncommit 1157a7e52a0636706caa235abe16d2ff8a0b8140\nAuthor: Andreas Huber \u003candih@google.com\u003e\nDate:   Wed Oct 28 12:01:01 2009 -0700\n\n    Changes to the IOMX::listNodes API, this now returns the component\u0027s roles as well, unit tests now test all components in all supported roles by default.\n\ncommit 30fbf2d8c6cb927689f7ba75eb550a81e9df488a\nAuthor: Andreas Huber \u003candih@google.com\u003e\nDate:   Mon Oct 26 09:45:26 2009 -0700\n\n    Initial check-in of unit tests for OMX components.\n"
    },
    {
      "commit": "d93447910055565726836a1cdcfc3bad7c95f98c",
      "tree": "70b8e7b8635a0ba4b5dbffab5d3e21df018e236d",
      "parents": [
        "aab601168caec83cf1ca3f235d3a6b308a5dedaa",
        "d980e656baa842592944c6fed371c9b37b2feea9"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Tue Dec 15 15:38:40 2009 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Tue Dec 15 15:38:40 2009 -0800"
      },
      "message": "am d980e656: Merge change Ic7e91eee into eclair-mr2\n\nMerge commit \u0027d980e656baa842592944c6fed371c9b37b2feea9\u0027 into eclair-mr2-plus-aosp\n\n* commit \u0027d980e656baa842592944c6fed371c9b37b2feea9\u0027:\n  Add a new API to support determining the roles of an OMX component specified by name. Remove unneeded OMXSoftwareCodecsPlugin.\n"
    },
    {
      "commit": "c7e91eee2e79e3e4c8f84fd6b8a753215955d4e8",
      "tree": "ce1c99f511a8c57bd65afef34c6e745a1cf67d64",
      "parents": [
        "ae77561b8f4de45228b0d63f0d7508d428b9516a"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Tue Dec 15 15:22:08 2009 -0800"
      },
      "committer": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Tue Dec 15 15:22:08 2009 -0800"
      },
      "message": "Add a new API to support determining the roles of an OMX component specified by name. Remove unneeded OMXSoftwareCodecsPlugin.\n"
    },
    {
      "commit": "28fdcf93bd4150299d1b7eda0c9bdcf4ae75069a",
      "tree": "f78ad707beecc75770f2bc77dc11fef7232c23a2",
      "parents": [
        "f6bb01b0d81943a00a42e56f2e65549ca03c386d",
        "089455760c05289c1315268a6cb896577ceebc64"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Fri Dec 11 15:44:59 2009 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Fri Dec 11 15:44:59 2009 -0800"
      },
      "message": "am 08945576: Merge change I9ac0777e into eclair-mr2\n\nMerge commit \u0027089455760c05289c1315268a6cb896577ceebc64\u0027 into eclair-mr2-plus-aosp\n\n* commit \u0027089455760c05289c1315268a6cb896577ceebc64\u0027:\n  Initial checkin of software AMR NB encoder based on PV source code.\n"
    },
    {
      "commit": "d49b526dd2009270cb15f7fe4e70b74673950608",
      "tree": "921f1285d2ea270a799822ce910bb59e5b91e257",
      "parents": [
        "8eac1637b0f8ec7a2417eb53ebe56bb64c3b2b23"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Fri Dec 11 15:07:25 2009 -0800"
      },
      "committer": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Fri Dec 11 15:09:31 2009 -0800"
      },
      "message": "Initial checkin of software AMR NB encoder based on PV source code.\n"
    },
    {
      "commit": "1e1d44924a334637f9fb47ca8796625bd86cb66a",
      "tree": "d09c9832af259c4541eaaecd32c34f3b68150028",
      "parents": [
        "c267c90100ff09ab1ca6b09d6eae23594d699536",
        "218aa94581293876a4283f8d5908843c8f818e3a"
      ],
      "author": {
        "name": "Kenny Root",
        "email": "kroot@google.com",
        "time": "Thu Dec 10 18:10:33 2009 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Thu Dec 10 18:10:33 2009 -0800"
      },
      "message": "am 218aa945: Merge change I6478884a into eclair-mr2\n\nMerge commit \u0027218aa94581293876a4283f8d5908843c8f818e3a\u0027 into eclair-mr2-plus-aosp\n\n* commit \u0027218aa94581293876a4283f8d5908843c8f818e3a\u0027:\n  Add string resource type inspection\n"
    },
    {
      "commit": "218aa94581293876a4283f8d5908843c8f818e3a",
      "tree": "b76fdd7443fc8055786b7461701ab027a0e195d6",
      "parents": [
        "9de0dba37cdb74a21e561c5235757318f1812e3d",
        "bb79f64b89bd7be7019035a0347c681e6f39fe6b"
      ],
      "author": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Dec 10 18:05:19 2009 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Dec 10 18:05:19 2009 -0800"
      },
      "message": "Merge change I6478884a into eclair-mr2\n\n* changes:\n  Add string resource type inspection\n"
    },
    {
      "commit": "899858a39647803c0cb506d2320fdaf2e4d3b8b9",
      "tree": "afdd725eeec7ec04bd261d330e3de931500c9e34",
      "parents": [
        "b62954b66542e3e2654d97a81123c51805bceca7",
        "6608bd0d3af3f9c365b73f8b19d9ec0b7d5ee70b"
      ],
      "author": {
        "name": "Jean-Michel Trivi",
        "email": "jmtrivi@google.com",
        "time": "Thu Dec 10 16:58:35 2009 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Thu Dec 10 16:58:35 2009 -0800"
      },
      "message": "am 6608bd0d: am 86ed86d2: Merge change I0f73439a into eclair\n\nMerge commit \u00276608bd0d3af3f9c365b73f8b19d9ec0b7d5ee70b\u0027 into eclair-mr2-plus-aosp\n\n* commit \u00276608bd0d3af3f9c365b73f8b19d9ec0b7d5ee70b\u0027:\n  Partially fix bug 2111240 Detect docking / undocking event by reporting\n"
    },
    {
      "commit": "6608bd0d3af3f9c365b73f8b19d9ec0b7d5ee70b",
      "tree": "7e910c16a5c3278b3d636948446bf382fa44cb21",
      "parents": [
        "8f31c23021a3f8164eee08cf904c3f083ddfc3d2",
        "86ed86d2260932bdf2217b1d8431ac9e04d47534"
      ],
      "author": {
        "name": "Jean-Michel Trivi",
        "email": "jmtrivi@google.com",
        "time": "Thu Dec 10 16:46:13 2009 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Thu Dec 10 16:46:13 2009 -0800"
      },
      "message": "am 86ed86d2: Merge change I0f73439a into eclair\n\nMerge commit \u002786ed86d2260932bdf2217b1d8431ac9e04d47534\u0027 into eclair-mr2\n\n* commit \u002786ed86d2260932bdf2217b1d8431ac9e04d47534\u0027:\n  Partially fix bug 2111240 Detect docking / undocking event by reporting\n"
    },
    {
      "commit": "bb79f64b89bd7be7019035a0347c681e6f39fe6b",
      "tree": "d938e21a91d0d71dba49f89e36920f6654284536",
      "parents": [
        "159f0015418955501d8cf2744b0393db2e73f394"
      ],
      "author": {
        "name": "Kenny Root",
        "email": "kroot@google.com",
        "time": "Thu Dec 10 14:20:15 2009 -0800"
      },
      "committer": {
        "name": "Kenny Root",
        "email": "kroot@google.com",
        "time": "Thu Dec 10 14:22:08 2009 -0800"
      },
      "message": "Add string resource type inspection\n\nAllows \"aapt dump --values resource\" to print out whether a string in a\nResStringPool is in UTF-8 or UTF-16 encoding.\n\nChange-Id: I6478884a70a3b46fee862dece6cb33454fc34843\n"
    },
    {
      "commit": "5cd6fcd518d47d1974a10fccf3c3d5431a83307a",
      "tree": "513a7efe23cc172c9f863f1a28e96d53d7fc0461",
      "parents": [
        "d44c2f2c85c8720763837b89a8988b6e5cc248bf",
        "e6c0e99334bc2f47e5d36db253ac8f166047c03b"
      ],
      "author": {
        "name": "Kenny Root",
        "email": "kroot@google.com",
        "time": "Wed Dec 09 15:51:21 2009 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Wed Dec 09 15:51:21 2009 -0800"
      },
      "message": "am e6c0e993: Merge change I129483f8 into eclair-mr2\n\nMerge commit \u0027e6c0e99334bc2f47e5d36db253ac8f166047c03b\u0027 into eclair-mr2-plus-aosp\n\n* commit \u0027e6c0e99334bc2f47e5d36db253ac8f166047c03b\u0027:\n  Optional use of UTF-8 strings in resource bundles\n"
    },
    {
      "commit": "68a3b8b66044d0a9fa901ad306fc6db6d13f94d3",
      "tree": "dff67f3f793d42bb4da8f723afb904faa0101dff",
      "parents": [
        "9f1ea0d47f5aa18cf949593e6bfd36af9c6a55be",
        "24eca800d4b34e7d13fbcbc1ab74c9d91ff6a4e1"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Wed Dec 09 15:49:02 2009 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Wed Dec 09 15:49:02 2009 -0800"
      },
      "message": "am 24eca800: Merge change I887f355f into eclair-mr2\n\nMerge commit \u002724eca800d4b34e7d13fbcbc1ab74c9d91ff6a4e1\u0027 into eclair-mr2-plus-aosp\n\n* commit \u002724eca800d4b34e7d13fbcbc1ab74c9d91ff6a4e1\u0027:\n  Propagate background scheduling class across processes.\n"
    },
    {
      "commit": "ed3e7ab3bf15bc1eefaade7e1f641d02d04c80c2",
      "tree": "03922b440932030ff2536ef267b585b2eba66c3b",
      "parents": [
        "ea8649c61d655149d4f95e53c4c8b717e91d728d",
        "86ed86d2260932bdf2217b1d8431ac9e04d47534"
      ],
      "author": {
        "name": "Jean-Michel Trivi",
        "email": "jmtrivi@google.com",
        "time": "Wed Dec 09 11:50:36 2009 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Wed Dec 09 11:50:36 2009 -0800"
      },
      "message": "am 86ed86d2: Merge change I0f73439a into eclair\n\nMerge commit \u002786ed86d2260932bdf2217b1d8431ac9e04d47534\u0027 into eclair-plus-aosp\n\n* commit \u002786ed86d2260932bdf2217b1d8431ac9e04d47534\u0027:\n  Partially fix bug 2111240 Detect docking / undocking event by reporting\n"
    },
    {
      "commit": "e6c0e99334bc2f47e5d36db253ac8f166047c03b",
      "tree": "67a2ab651f0bb32587d2b074e45a7095630fb07d",
      "parents": [
        "1270e2e22b0b3f0705cee2b82788d8dc3fb03cdb",
        "19138468caf7050d482dc15f35a344eab11bb756"
      ],
      "author": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Dec 08 13:41:38 2009 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Dec 08 13:41:38 2009 -0800"
      },
      "message": "Merge change I129483f8 into eclair-mr2\n\n* changes:\n  Optional use of UTF-8 strings in resource bundles\n"
    },
    {
      "commit": "6154412ee8e07e9cde129cccb944dd7ed9dcef53",
      "tree": "bb568c3907b2da5ae9098457ec19ec80762b8036",
      "parents": [
        "6d42d80653f2c41f3e72a878a1d9a6f9693b89f7"
      ],
      "author": {
        "name": "Jean-Michel Trivi",
        "email": "jmtrivi@google.com",
        "time": "Mon Dec 07 18:40:56 2009 -0800"
      },
      "committer": {
        "name": "Jean-Michel Trivi",
        "email": "jmtrivi@google.com",
        "time": "Mon Dec 07 20:42:52 2009 -0800"
      },
      "message": "Partially fix bug 2111240 Detect docking / undocking event by reporting\nto the AudioPolicyManager a new forced usage AudioSystem::FOR_DOCK\nwhich can take the FORCE_NONE, FORCE_BT_DOCK or FORCE_WIRED_ACCESSORY\nvalues. This CL is complemented by an update of the APM to take into\naccount the FOR_DOCK usage.\n"
    },
    {
      "commit": "887f355f99ff83d568ef2885a4fdcaae475583df",
      "tree": "c4788aa9ac8f37c6a02fc6b3a6874b71efb0f759",
      "parents": [
        "259e3384face72ea8e30696d7bae492d37d44e8b"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Mon Dec 07 17:59:37 2009 -0800"
      },
      "committer": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Mon Dec 07 19:11:14 2009 -0800"
      },
      "message": "Propagate background scheduling class across processes.\n\nThis is a very simply implementation: upon receiving an IPC, if the handling\nthread is at a background priority (the driver will have taken care of\npropagating this from the calling thread), then stick it in to the background\nscheduling group.  Plus an API to turn this off for the process, which is\nused by the system process.\n\nThis also pulls some of the code for managing scheduling classes out of\nthe Process JNI wrappers and in to some convenience methods in thread.h.\n"
    },
    {
      "commit": "19138468caf7050d482dc15f35a344eab11bb756",
      "tree": "ea1f96c5bcab356355ab05d315abfa66a7f888c4",
      "parents": [
        "6be01bf207077ffbdcd3879250171a26ec805835"
      ],
      "author": {
        "name": "Kenny Root",
        "email": "kroot@google.com",
        "time": "Fri Dec 04 09:38:48 2009 -0800"
      },
      "committer": {
        "name": "Kenny Root",
        "email": "kroot@google.com",
        "time": "Mon Dec 07 15:14:15 2009 -0800"
      },
      "message": "Optional use of UTF-8 strings in resource bundles\n\nAllows the use of UTF-8 for packing resources instead of the\ndefault of UTF-16 for Java. When strings are extracted from the\nResStringPool, they are converted to UTF-16 and the result is\ncached for subsequent calls.\n\nWhen using aapt to package, add in the \"-8\" switch to pack the\nresources using UTF-8. This will result in the value, key, and\ntype strings as well as the compiled XML string values taking\nsignificantly less space in the final application package in\nmost scenarios.\n\nChange-Id: I129483f8b3d3b1c5869dced05cb525e494a6c83a\n"
    },
    {
      "commit": "f553a58425c66a990dbc5f4579c976a0636fc573",
      "tree": "3934713b8fb374bf07efa2bc1574f8a77e2f1f5c",
      "parents": [
        "0b1a9f7648a9e57b0eaf6766f73810de94136669",
        "5921fb51e0219ddd7cad439a73495f320c57d50e"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Mon Dec 07 10:01:06 2009 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Mon Dec 07 10:01:06 2009 -0800"
      },
      "message": "am 5921fb51: Merge change I91eb0354 into eclair-mr2\n\nMerge commit \u00275921fb51e0219ddd7cad439a73495f320c57d50e\u0027 into eclair-mr2-plus-aosp\n\n* commit \u00275921fb51e0219ddd7cad439a73495f320c57d50e\u0027:\n  Change OMXCodec::Create to return an sp\u003cMediaSource\u003e instead of an sp\u003cOMXCodec\u003e, this is more general and does not sacrifice any functionality as the remaining OMXCodec APIs are not meant to be public anyway.\n"
    },
    {
      "commit": "91eb0354043842d96bf3ef201ce68046db70df74",
      "tree": "b09f35a1f7887ef25af837d000bd041176368f3b",
      "parents": [
        "52f410e2ebba103220cffce05b895f0c38a56665"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Mon Dec 07 09:43:00 2009 -0800"
      },
      "committer": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Mon Dec 07 09:43:00 2009 -0800"
      },
      "message": "Change OMXCodec::Create to return an sp\u003cMediaSource\u003e instead of an sp\u003cOMXCodec\u003e, this is more general and does not sacrifice any functionality as the remaining OMXCodec APIs are not meant to be public anyway.\n"
    },
    {
      "commit": "5d676ad5d94c3d4f831c2084012f955fe56a8af8",
      "tree": "63aa60a7cc858c9f2bb0329d7d66eaa15129ed18",
      "parents": [
        "a26b0a401b6aadb45fa58d1d05b3112fbfda3fba",
        "52f410e2ebba103220cffce05b895f0c38a56665"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Fri Dec 04 13:41:15 2009 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Fri Dec 04 13:41:15 2009 -0800"
      },
      "message": "am 52f410e2: Merge change Ifef6435a into eclair-mr2\n\nMerge commit \u002752f410e2ebba103220cffce05b895f0c38a56665\u0027 into eclair-mr2-plus-aosp\n\n* commit \u002752f410e2ebba103220cffce05b895f0c38a56665\u0027:\n  Enable proper cleanup of OMX nodes managed through stagefright.\n"
    },
    {
      "commit": "fef6435a0692f3c9b6055903dfb7699e90e19d46",
      "tree": "fa8756a53bac8564a0b133056ed5e49d71367e8c",
      "parents": [
        "8280c2b15f6875b2d387c05df23d264864eb9cd5"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Fri Dec 04 12:52:40 2009 -0800"
      },
      "committer": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Fri Dec 04 12:52:40 2009 -0800"
      },
      "message": "Enable proper cleanup of OMX nodes managed through stagefright.\n"
    },
    {
      "commit": "9ee55cc1bc6878b243134a558d583786d9215958",
      "tree": "c9c1e43e5bcf5baa160bba6e91c8aba06969a670",
      "parents": [
        "874c508c5352936c0640317ef44b81c9b632dfd6",
        "2d6d609c9ede7ed8924001df00af9c13effab8ad"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Thu Dec 03 16:40:04 2009 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Thu Dec 03 16:40:04 2009 -0800"
      },
      "message": "am 2d6d609c: Merge change I74bf38a0 into eclair-mr2\n\nMerge commit \u00272d6d609c9ede7ed8924001df00af9c13effab8ad\u0027 into eclair-mr2-plus-aosp\n\n* commit \u00272d6d609c9ede7ed8924001df00af9c13effab8ad\u0027:\n  Squashed commit of the following:\n"
    },
    {
      "commit": "874c508c5352936c0640317ef44b81c9b632dfd6",
      "tree": "224e055763eb5abe5f20c4c48dcb3b1fded8392f",
      "parents": [
        "ca84ac88c7f6940677f9b796b21779e53965bf06",
        "bfb9fb143b67c2d0307af2bce9af3c08f362b29a"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Thu Dec 03 16:39:27 2009 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Thu Dec 03 16:39:27 2009 -0800"
      },
      "message": "am bfb9fb14: Refactor MediaScanner. Some steps on the way towards being able to build the tree without OpenCore.\n\nMerge commit \u0027bfb9fb143b67c2d0307af2bce9af3c08f362b29a\u0027 into eclair-mr2-plus-aosp\n\n* commit \u0027bfb9fb143b67c2d0307af2bce9af3c08f362b29a\u0027:\n  Refactor MediaScanner. Some steps on the way towards being able to build the tree without OpenCore.\n"
    },
    {
      "commit": "2d6d609c9ede7ed8924001df00af9c13effab8ad",
      "tree": "1839095bd156d22f04683e9d97d805e44f3d7ba3",
      "parents": [
        "bfb9fb143b67c2d0307af2bce9af3c08f362b29a",
        "b0caf946b7ae9be519c0cede935ea2ecb44f9bd0"
      ],
      "author": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Dec 03 13:27:08 2009 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Dec 03 13:27:08 2009 -0800"
      },
      "message": "Merge change I74bf38a0 into eclair-mr2\n\n* changes:\n  Squashed commit of the following:\n"
    },
    {
      "commit": "bfb9fb143b67c2d0307af2bce9af3c08f362b29a",
      "tree": "6b22297ab9749e2c86d3ae4844a7bad884027118",
      "parents": [
        "d345c6acedb22c9408553ef9f38c196984177e6b"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Thu Dec 03 11:31:19 2009 -0800"
      },
      "committer": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Thu Dec 03 13:21:54 2009 -0800"
      },
      "message": "Refactor MediaScanner. Some steps on the way towards being able to build the tree without OpenCore.\n"
    },
    {
      "commit": "b0caf946b7ae9be519c0cede935ea2ecb44f9bd0",
      "tree": "aa8315ada7a14c5f0b516c7dd7361d7accbda662",
      "parents": [
        "4eeace3db541bd6fa0034a996630768cb521f2eb"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Thu Dec 03 11:39:54 2009 -0800"
      },
      "committer": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Thu Dec 03 12:49:09 2009 -0800"
      },
      "message": "Squashed commit of the following:\n\ncommit 543e192bf2ae13f573dc4c4e53b239ed4ea00e81\nAuthor: Andreas Huber \u003candih@google.com\u003e\nDate:   Thu Dec 3 11:33:57 2009 -0800\n\n    stagefright now acts as the OMX Master, vendors supply their own plugins through libstagefrighthw. In OpenCore-enabled builds we now sit on top of PVMaster...\n\ncommit 3cbfdbd9cecadbb77b63125c62883bf1065884fe\nAuthor: Andreas Huber \u003candih@google.com\u003e\nDate:   Wed Dec 2 12:39:07 2009 -0800\n\n    More OMX infrastructure, stagefright is now taking over the OMX Master, multiplexing all contributing OMX implementations under a common interface.\n"
    },
    {
      "commit": "ae34cf92db9c54ba72fdcac33a8ba855a2215e4e",
      "tree": "5cc9bae71d0cc0ab6a9f86456ca1bc0b77589fbe",
      "parents": [
        "3414c67afaf745400735f27eb1aad7dbf5e79423",
        "781ac16283574ec07cd7b13d67b54b7b4c2c15cb"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Tue Dec 01 17:10:19 2009 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Tue Dec 01 17:10:19 2009 -0800"
      },
      "message": "am 781ac162: Merge change I8768f2cc into eclair-mr2\n\nMerge commit \u0027781ac16283574ec07cd7b13d67b54b7b4c2c15cb\u0027 into eclair-mr2-plus-aosp\n\n* commit \u0027781ac16283574ec07cd7b13d67b54b7b4c2c15cb\u0027:\n  A small sample tool to encode pcm audio data to amr, decode it again and play it. Some changes to OMXCodec to properly configure the AMR decoder(s).\n"
    },
    {
      "commit": "8768f2ccefdd7862a248995055aa04fd2d5a4dfe",
      "tree": "889d228a9857efec02281f1536b11699dfa2a6f6",
      "parents": [
        "ed90811e711065bcc82a45f4173587cd95ef6b6f"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Tue Dec 01 15:26:54 2009 -0800"
      },
      "committer": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Tue Dec 01 15:26:54 2009 -0800"
      },
      "message": "A small sample tool to encode pcm audio data to amr, decode it again and play it. Some changes to OMXCodec to properly configure the AMR decoder(s).\n"
    },
    {
      "commit": "5493df919b01952857eb3b78fad3fe2cff573935",
      "tree": "d3174c7a59eaade19930e0a03444cc66a1b4f28c",
      "parents": [
        "1866591c192a434c3edcafb808e31b8262cadeb2",
        "bbd6cb463b405fc90912dee470fe6c7b8c6b1f54"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Mon Nov 23 10:51:41 2009 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Mon Nov 23 10:51:41 2009 -0800"
      },
      "message": "am bbd6cb46: Merge change Ib1b7bce4 into eclair-mr2\n\nMerge commit \u0027bbd6cb463b405fc90912dee470fe6c7b8c6b1f54\u0027 into eclair-mr2-plus-aosp\n\n* commit \u0027bbd6cb463b405fc90912dee470fe6c7b8c6b1f54\u0027:\n  Squashed commit of the following:\n"
    },
    {
      "commit": "27366fc9540cb642ee4856957dabffe7ddf1f901",
      "tree": "b3509359b040abfe0055af4345a01520453d112c",
      "parents": [
        "40c1dbf081035f878b96dd67ef112eb49001c087"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Fri Nov 20 09:32:46 2009 -0800"
      },
      "committer": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Mon Nov 23 10:44:30 2009 -0800"
      },
      "message": "Squashed commit of the following:\n\ncommit 1efc38dc3c33fef57b759002db3965ed07a28cb0\nAuthor: Andreas Huber \u003candih@google.com\u003e\nDate:   Thu Nov 19 14:36:14 2009 -0800\n\n    Sending the SEEK-COMPLETE notification temporarily broke seeking backwards in time behaviour. This is now fixed.\n\n    Also, get rid of the semi-random delay after posting buffers to surface flinger in favour of delaying the buffer release until the next frame is displayed.\n\ncommit 51973062eb5ee63fd64b845d72bac517cc3369cf\nAuthor: Andreas Huber \u003candih@google.com\u003e\nDate:   Wed Nov 18 14:01:43 2009 -0800\n\n    Fix one more unit test, properly send seek-complete notification only after seek actually completed.\n\ncommit cb22250b34b1fcfe1bf459723a761fd003950229\nAuthor: Andreas Huber \u003candih@google.com\u003e\nDate:   Wed Nov 18 12:31:36 2009 -0800\n\n    Fix seek-while-paused in AwesomePlayer, revert to using FileSource if MmapSource fails.\n\ncommit 25eb9241138ddf7bb27ce90657116c5f8a94d880\nAuthor: Andreas Huber \u003candih@google.com\u003e\nDate:   Wed Nov 18 12:30:40 2009 -0800\n\n    Support seeking and duration in AMRExtractor, assuming all frames are the same size.\n\ncommit 44192f2ebb7ea3bbd3ba5910025692dbc6a08faa\nAuthor: Andreas Huber \u003candih@google.com\u003e\nDate:   Wed Nov 18 10:21:44 2009 -0800\n\n    MediaPlayerImpl is dead, long live AwesomePlayer.\n\ncommit c5b52d3c0674f5dc94db506afbce52401cceddac\nAuthor: Andreas Huber \u003candih@google.com\u003e\nDate:   Wed Nov 18 09:42:23 2009 -0800\n\n    New implementation of the stagefright mediaplayer.\n"
    },
    {
      "commit": "8652646105a6ace559280b579ee8935541ada6c1",
      "tree": "178a60adc376ac3402c557180008b48e85950ce3",
      "parents": [
        "acedb7d0c3452ff7347fec8f643034e938a55137",
        "949c572a16881aa40079a42bf7682637b23eb16a"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Sat Nov 21 00:26:09 2009 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Sat Nov 21 00:26:09 2009 -0800"
      },
      "message": "am 949c572a: am e7800946: Merge change I49f02be9 into eclair\n\nMerge commit \u0027949c572a16881aa40079a42bf7682637b23eb16a\u0027 into eclair-mr2-plus-aosp\n\n* commit \u0027949c572a16881aa40079a42bf7682637b23eb16a\u0027:\n  Issue 2265163: Audio still reported routed through earpiece on sholes\n"
    },
    {
      "commit": "7d4cc41ad22e07c15667d853905f1b7b4a4c1a7a",
      "tree": "0e1ebda58986211424e3e1ec2121261d8c33f18e",
      "parents": [
        "30b68bae3b487395031e03dd993596e37b80d1c5",
        "e7800946a42c0ebe8e0b3f6eba04a96a9641aaff"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Sat Nov 21 00:22:06 2009 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Sat Nov 21 00:22:06 2009 -0800"
      },
      "message": "am e7800946: Merge change I49f02be9 into eclair\n\nMerge commit \u0027e7800946a42c0ebe8e0b3f6eba04a96a9641aaff\u0027 into eclair-plus-aosp\n\n* commit \u0027e7800946a42c0ebe8e0b3f6eba04a96a9641aaff\u0027:\n  Issue 2265163: Audio still reported routed through earpiece on sholes\n"
    },
    {
      "commit": "949c572a16881aa40079a42bf7682637b23eb16a",
      "tree": "5bfc9099a3b1745168a44c2469ecc175d48932e8",
      "parents": [
        "30a4b8a180813ae9a1846fdd7219ebe5592eb06b",
        "e7800946a42c0ebe8e0b3f6eba04a96a9641aaff"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Sat Nov 21 00:21:15 2009 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Sat Nov 21 00:21:15 2009 -0800"
      },
      "message": "am e7800946: Merge change I49f02be9 into eclair\n\nMerge commit \u0027e7800946a42c0ebe8e0b3f6eba04a96a9641aaff\u0027 into eclair-mr2\n\n* commit \u0027e7800946a42c0ebe8e0b3f6eba04a96a9641aaff\u0027:\n  Issue 2265163: Audio still reported routed through earpiece on sholes\n"
    },
    {
      "commit": "e7800946a42c0ebe8e0b3f6eba04a96a9641aaff",
      "tree": "4761b4ea0b5fb01d1a90eb069a1839e6c6445ab4",
      "parents": [
        "256da9fb007ac0722a5b1854befda7e7bed2564e",
        "49f02be9d7fafb8841f75394a90f1409c6f82c1f"
      ],
      "author": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Sat Nov 21 00:18:24 2009 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Sat Nov 21 00:18:24 2009 -0800"
      },
      "message": "Merge change I49f02be9 into eclair\n\n* changes:\n  Issue 2265163: Audio still reported routed through earpiece on sholes\n"
    },
    {
      "commit": "49f02be9d7fafb8841f75394a90f1409c6f82c1f",
      "tree": "610ce96e47ae1e2c8ead39ba58e43380b6537633",
      "parents": [
        "e4260f4e7da4da32bfab2737018cf9cf75215894"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Thu Nov 19 09:00:56 2009 -0800"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Thu Nov 19 23:57:45 2009 -0800"
      },
      "message": "Issue 2265163: Audio still reported routed through earpiece on sholes\n\nThis is a second attempt to fix the audio routed to earpiece syndrom.\nThe root cause identified this time is the crash of an application having an active AudioTrack playing on the VOICE_CALL stream type.\nWhen this happens, the AudioTrack destructor is not called and the audio policy manager is not notified of the track stop.\nResults a situation where the VOICE_CALL stream is considered as always in use by audio policy manager which makes that audio is routed to earpiece.\n\nThe fix consists in moving the track start/stop/close notification to audio policiy manager from AudioTrack to AudioFlinger Track objet.\nThe net result is that in the case of a client application crash, the AudioFlinger TrackHandle object (which implements the remote side of the IAudioTrack binder interface) destructor is called which in turn destroys the Track object and we can notify the audio policy manager of the track stop and removal.\n\nThe same modification is made for AudioRecord although no bug related to record has been reported yet.\nAlso fixed a potential problem if record stop is called while the record thread is exiting.\n"
    },
    {
      "commit": "8b49e97db9c46c63192989172ea03cd8751f2551",
      "tree": "72e94de4b14b0419be9ef0079ca347b129d7685c",
      "parents": [
        "c5a605240115ad5eb8edcc7976c8083221754634",
        "f854e0770207e93ef9d1bf6d50ed18537a107ca4"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Thu Nov 19 15:01:45 2009 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Thu Nov 19 15:01:45 2009 -0800"
      },
      "message": "am f854e077: Merge change I8134d6ed into eclair\n\nMerge commit \u0027f854e0770207e93ef9d1bf6d50ed18537a107ca4\u0027 into eclair-plus-aosp\n\n* commit \u0027f854e0770207e93ef9d1bf6d50ed18537a107ca4\u0027:\n  DO NOT MERGE: Instead of inserting semi-random delays after submission to surface flinger, delay releasing buffers to the next display time to avoid flickering.\n"
    },
    {
      "commit": "d66a901e6a932e62358ee963831e663a8c655b8e",
      "tree": "0a93a1a9a8ccef2299c00fc70622b0f80b3d0b87",
      "parents": [
        "e4260f4e7da4da32bfab2737018cf9cf75215894"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Thu Nov 19 11:22:36 2009 -0800"
      },
      "committer": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Thu Nov 19 11:24:18 2009 -0800"
      },
      "message": "DO NOT MERGE: Instead of inserting semi-random delays after submission to surface flinger, delay releasing buffers to the next display time to avoid flickering.\n"
    },
    {
      "commit": "39dc51040f9b766adaa9ee487bb0568a2ed1c916",
      "tree": "4acfd242fca71ecd17a8b82e49d302e2b922327d",
      "parents": [
        "ed9880f399015782c9f635db744d25281d0deeb4",
        "2c7664989f7388c0c6cf0ec7d80ffa2704c8c2be"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Tue Nov 17 10:50:22 2009 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Tue Nov 17 10:50:22 2009 -0800"
      },
      "message": "am 2c766498: Merge change Iea6a38c6 into eclair-mr2\n\nMerge commit \u00272c7664989f7388c0c6cf0ec7d80ffa2704c8c2be\u0027 into eclair-mr2-plus-aosp\n\n* commit \u00272c7664989f7388c0c6cf0ec7d80ffa2704c8c2be\u0027:\n  Squashed commit of the following:\n"
    },
    {
      "commit": "2c7664989f7388c0c6cf0ec7d80ffa2704c8c2be",
      "tree": "eca65a517e48f75ff22ea7d60a0a42553cc5f889",
      "parents": [
        "a35f1c63a67df0832d9b3f1aed3e2376367d4398",
        "ea6a38c63b9e9aeb45aa22587c069bd3c5d83df8"
      ],
      "author": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Nov 17 10:46:41 2009 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Nov 17 10:46:41 2009 -0800"
      },
      "message": "Merge change Iea6a38c6 into eclair-mr2\n\n* changes:\n  Squashed commit of the following:\n"
    },
    {
      "commit": "775508d97f709e621f9d1540aca819224fbdcebf",
      "tree": "5d93568bb639f19009ddc2334fb03c9cf1765ded",
      "parents": [
        "50963b1aa5c2828b46a4e0acf7626b8aef83ef68",
        "744043fcbf48c32c2051f222eca552fa2df5dfcb"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Tue Nov 17 10:36:27 2009 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Tue Nov 17 10:36:27 2009 -0800"
      },
      "message": "am 744043fc: Update FileSource to also accept a file descriptor and a range.\n\nMerge commit \u0027744043fcbf48c32c2051f222eca552fa2df5dfcb\u0027 into eclair-mr2-plus-aosp\n\n* commit \u0027744043fcbf48c32c2051f222eca552fa2df5dfcb\u0027:\n  Update FileSource to also accept a file descriptor and a range.\n"
    },
    {
      "commit": "744043fcbf48c32c2051f222eca552fa2df5dfcb",
      "tree": "bc84dc8cc46fe0b7a7b9ec21228eaf040d3152bb",
      "parents": [
        "8c808187249f473702e0f4bee2147da292490963"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Mon Nov 16 15:34:01 2009 -0800"
      },
      "committer": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Tue Nov 17 10:21:03 2009 -0800"
      },
      "message": "Update FileSource to also accept a file descriptor and a range.\n"
    },
    {
      "commit": "ea6a38c63b9e9aeb45aa22587c069bd3c5d83df8",
      "tree": "a24b9b97b20d16f5343923c4245c4b19985e8717",
      "parents": [
        "a57632fee792d6078a7a61006f5a866c38addd33"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Mon Nov 16 15:43:38 2009 -0800"
      },
      "committer": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Mon Nov 16 15:43:38 2009 -0800"
      },
      "message": "Squashed commit of the following:\n\ncommit 333057b355f8c260c549553b9a0634755c838b6a\nAuthor: Andreas Huber \u003candih@google.com\u003e\nDate:   Fri Nov 13 15:35:48 2009 -0800\n\n    Some more tweaks to AVC encoding on sholes.\n\ncommit 9981d0ee52ec5b8b0182aae733d1571e3ebb8390\nAuthor: Andreas Huber \u003candih@google.com\u003e\nDate:   Thu Nov 12 16:36:57 2009 -0800\n\n    Support for avc encoding, including sholes specific tweaks to pick the right colorspace for the camera to not require transcoding.\n\ncommit 5ba0ebbbd4efca51f3ae1f60e2ca31e7d2cf136d\nAuthor: Andreas Huber \u003candih@google.com\u003e\nDate:   Wed Nov 11 09:50:03 2009 -0800\n\n    Enable actual (camera) video-only recording using h.263 or mpeg4 encoding.\n\ncommit 3fd59c3526a37fe7c696f4a978925d1831c09313\nAuthor: Andreas Huber \u003candih@google.com\u003e\nDate:   Tue Nov 10 14:57:48 2009 -0800\n\n    Allow switching between the PV recorder implementation and one supported by stagefright.\n\n    This is controlled through the property \"media.stagefright.enable-record\".\n"
    },
    {
      "commit": "70a37eac62e887d16c4964b805a612d41254ca7f",
      "tree": "9e056699d6a09f81c50d5c07e5f9aeeb369f58c4",
      "parents": [
        "c0355905414c330c7fe7fe64f82fcd90c0675d7e",
        "35ede78ede13fc2c4e7d343f50ca20372a404e06"
      ],
      "author": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Fri Nov 13 17:37:42 2009 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Fri Nov 13 17:37:42 2009 -0800"
      },
      "message": "am 35ede78e: am 91e40e78: Merge change I18e02606 into eclair\n\nMerge commit \u002735ede78ede13fc2c4e7d343f50ca20372a404e06\u0027 into eclair-mr2-plus-aosp\n\n* commit \u002735ede78ede13fc2c4e7d343f50ca20372a404e06\u0027:\n  fix some aspects of [2258746] native crash in launcher2\n"
    },
    {
      "commit": "35ede78ede13fc2c4e7d343f50ca20372a404e06",
      "tree": "2d5bfea1c668196ea7caa827e0107accc8987388",
      "parents": [
        "0a27865a015d9e0401b6b3bff9eedd06d59043b3",
        "91e40e7838d183cb2a9e750edf0a6572f21da21d"
      ],
      "author": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Fri Nov 13 17:33:52 2009 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Fri Nov 13 17:33:52 2009 -0800"
      },
      "message": "am 91e40e78: Merge change I18e02606 into eclair\n\nMerge commit \u002791e40e7838d183cb2a9e750edf0a6572f21da21d\u0027 into eclair-mr2\n\n* commit \u002791e40e7838d183cb2a9e750edf0a6572f21da21d\u0027:\n  fix some aspects of [2258746] native crash in launcher2\n"
    },
    {
      "commit": "dca4b15747903c53028f7ec2e845f1dc57d33ef9",
      "tree": "78b39cb4b64d76f7c23c0cdbdc77c4dcbab266b2",
      "parents": [
        "26431be568a2b7f5e54935c92da9f19a00615fed",
        "91e40e7838d183cb2a9e750edf0a6572f21da21d"
      ],
      "author": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Fri Nov 13 17:33:35 2009 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Fri Nov 13 17:33:35 2009 -0800"
      },
      "message": "am 91e40e78: Merge change I18e02606 into eclair\n\nMerge commit \u002791e40e7838d183cb2a9e750edf0a6572f21da21d\u0027 into eclair-plus-aosp\n\n* commit \u002791e40e7838d183cb2a9e750edf0a6572f21da21d\u0027:\n  fix some aspects of [2258746] native crash in launcher2\n"
    },
    {
      "commit": "18e026066a95e5d63c2ece8007883b46599373ca",
      "tree": "e7c8d0f1e1cc5283222d635c595da3a2ce1bfc5f",
      "parents": [
        "73f8aa678055598738dfba54c60a1674bcbf02b1"
      ],
      "author": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Fri Nov 13 15:26:29 2009 -0800"
      },
      "committer": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Fri Nov 13 15:26:29 2009 -0800"
      },
      "message": "fix some aspects of [2258746] native crash in launcher2\n\nSurface::validate() could sometimes dereference a null pointer before checking it wasn\u0027t null.\nThis will prevent the application to crash when given bad parameters or used incorrectly.\nHowever, the bug above probably has another cause.\n"
    },
    {
      "commit": "355743c70d9810fda3e59d718d055f9513fb05b7",
      "tree": "95f8413571006e79872cfbd5fdadb2070e665eaf",
      "parents": [
        "bd328d0113ae29bd351d39faedc6c4e7957db4ad",
        "609acfd2a1067f49e51925776484b070a24d8301"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Fri Nov 13 09:27:55 2009 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Fri Nov 13 09:27:55 2009 -0800"
      },
      "message": "am 609acfd2: am 1aa9f3ca: Merge change I923d7d72 into eclair\n\nMerge commit \u0027609acfd2a1067f49e51925776484b070a24d8301\u0027 into eclair-mr2-plus-aosp\n\n* commit \u0027609acfd2a1067f49e51925776484b070a24d8301\u0027:\n  Fix issue 2242614: Wired headset not recognized: bogus \"state\" in ACTION_HEADSET_PLUG broadcast.\n"
    },
    {
      "commit": "609acfd2a1067f49e51925776484b070a24d8301",
      "tree": "e4aa99e7087476b09fad41c9ef1a30828e979181",
      "parents": [
        "9b94211787b237fd59153f58dd41d738290866c4",
        "1aa9f3cac31a7c2b50fcb3c9259cead8d638ae54"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Thu Nov 12 23:10:18 2009 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Thu Nov 12 23:10:18 2009 -0800"
      },
      "message": "am 1aa9f3ca: Merge change I923d7d72 into eclair\n\nMerge commit \u00271aa9f3cac31a7c2b50fcb3c9259cead8d638ae54\u0027 into eclair-mr2\n\n* commit \u00271aa9f3cac31a7c2b50fcb3c9259cead8d638ae54\u0027:\n  Fix issue 2242614: Wired headset not recognized: bogus \"state\" in ACTION_HEADSET_PLUG broadcast.\n"
    },
    {
      "commit": "e8302a64c7fb2e12bd04ac70114682c3a1260d03",
      "tree": "deda93cfee3b09e28c7fbd2e0de76fd479c819da",
      "parents": [
        "2058977493230bec659e94756b1220b80fa7874a",
        "1aa9f3cac31a7c2b50fcb3c9259cead8d638ae54"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Thu Nov 12 22:49:51 2009 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Thu Nov 12 22:49:51 2009 -0800"
      },
      "message": "am 1aa9f3ca: Merge change I923d7d72 into eclair\n\nMerge commit \u00271aa9f3cac31a7c2b50fcb3c9259cead8d638ae54\u0027 into eclair-plus-aosp\n\n* commit \u00271aa9f3cac31a7c2b50fcb3c9259cead8d638ae54\u0027:\n  Fix issue 2242614: Wired headset not recognized: bogus \"state\" in ACTION_HEADSET_PLUG broadcast.\n"
    },
    {
      "commit": "1aa9f3cac31a7c2b50fcb3c9259cead8d638ae54",
      "tree": "e98594a27996fdf11fa7a643895e513b28c7ba7d",
      "parents": [
        "5f8f1487be78064e8d653dd2d105d8dd444d6a35",
        "923d7d721d37f6ba5148e7d79d61a4fa48e79df2"
      ],
      "author": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Nov 12 22:45:50 2009 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Nov 12 22:45:50 2009 -0800"
      },
      "message": "Merge change I923d7d72 into eclair\n\n* changes:\n  Fix issue 2242614: Wired headset not recognized: bogus \"state\" in ACTION_HEADSET_PLUG broadcast.\n"
    },
    {
      "commit": "923d7d721d37f6ba5148e7d79d61a4fa48e79df2",
      "tree": "79d0aae61449c8c048cfc494cf5a3354174749dc",
      "parents": [
        "3c58d279abed1da56b0ece74ded5854c509a42a4"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Thu Nov 12 12:09:06 2009 -0800"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Thu Nov 12 12:09:06 2009 -0800"
      },
      "message": "Fix issue 2242614: Wired headset not recognized: bogus \"state\" in ACTION_HEADSET_PLUG broadcast.\n\nThe headset state indicated by HeadsetObserver in the broadcast intent ACTION_HEADSET_PLUG was not 0 or 1 as specified in the java doc but contained a bit field indicating the type of headset connected.\n\nModified HeadsetObserver to broacast a state conforming to java doc.\nAdded an extra to intent ACTION_HEADSET_PLUG to indicate if headset has a microphone or not.\nRemoved handling of non standard headset indications from HeadsetObserver.\nRemoved platform specific devices from output devices defined in AudioSystem.\nModified AudioService to use new ACTION_HEADSET_PLUG intent extra instead of bitfield in state.\n"
    },
    {
      "commit": "bfdb1e88ef796969efc906e7648b552078c82aee",
      "tree": "5549561501a8a8b27263ae9650a8cd56f1ac75bb",
      "parents": [
        "cd90b2773e81b337436e71717cb6c8b5704af5c8",
        "d0f3228daa9ea26ec959cb79451e6f150648bce8"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Thu Nov 12 10:43:31 2009 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Thu Nov 12 10:43:31 2009 -0800"
      },
      "message": "am d0f3228d: resolved conflicts for merge of c66d53f9 to eclair-mr2\n\nMerge commit \u0027d0f3228daa9ea26ec959cb79451e6f150648bce8\u0027 into eclair-mr2-plus-aosp\n\n* commit \u0027d0f3228daa9ea26ec959cb79451e6f150648bce8\u0027:\n  Delegate the platform dependent hardware renderer implementation to a shared library provided by the vendor.\n"
    },
    {
      "commit": "d0f3228daa9ea26ec959cb79451e6f150648bce8",
      "tree": "40f970764ab4a09055eae27a3166c6a1fbf689bf",
      "parents": [
        "17d176d8570f7d76532afee43853339c60fc9850",
        "c66d53f97b1fe635f576642d5720dcd441e34cce"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Thu Nov 12 10:32:26 2009 -0800"
      },
      "committer": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Thu Nov 12 10:32:26 2009 -0800"
      },
      "message": "resolved conflicts for merge of c66d53f9 to eclair-mr2\n"
    },
    {
      "commit": "4719963c86f40a56d0b7682d9d43ebd36a6b2f56",
      "tree": "93b16eff537250164120d42c80e9f13f0fdf1c88",
      "parents": [
        "0ccf64b24b01abd230c9f10892925e2dea5a881e",
        "c66d53f97b1fe635f576642d5720dcd441e34cce"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Thu Nov 12 10:00:02 2009 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Thu Nov 12 10:00:02 2009 -0800"
      },
      "message": "am c66d53f9: Merge change I880541a8 into eclair\n\nMerge commit \u0027c66d53f97b1fe635f576642d5720dcd441e34cce\u0027 into eclair-plus-aosp\n\n* commit \u0027c66d53f97b1fe635f576642d5720dcd441e34cce\u0027:\n  Delegate the platform dependent hardware renderer implementation to a shared library provided by the vendor.\n"
    },
    {
      "commit": "c8d7c1492eece9fb382424dfe63dcd1387c43314",
      "tree": "58382df5057496afd093677e4ead5e14cf137e6a",
      "parents": [
        "3e584fc944e3d694b4233450f386bd2a930420bf"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Wed Nov 11 16:33:17 2009 -0800"
      },
      "committer": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Thu Nov 12 09:36:10 2009 -0800"
      },
      "message": "Delegate the platform dependent hardware renderer implementation to a shared library provided by the vendor.\n"
    },
    {
      "commit": "76bd517ed2f9ff9c655b2355a09a75c99dc18941",
      "tree": "11321058485ded363c955323ea7748eac555c697",
      "parents": [
        "99b5f8cf69383effbaa77a8d33556b5bcab3f9a2",
        "05eca1d46a45723a57899dabad698537b7faef82"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Thu Nov 05 13:58:55 2009 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Thu Nov 05 13:58:55 2009 -0800"
      },
      "message": "am 05eca1d4: Merge change Ie80e2381 into eclair\n\nMerge commit \u002705eca1d46a45723a57899dabad698537b7faef82\u0027 into eclair-plus-aosp\n\n* commit \u002705eca1d46a45723a57899dabad698537b7faef82\u0027:\n  DO NOT MERGE: Squashed commit of the following:\n"
    },
    {
      "commit": "dcaa220ff5f360a29ac8be0eb12a8238ecaa080f",
      "tree": "8af64f607838fa0af5c45057b518c76b552cb0a4",
      "parents": [
        "818a9cf827f282addbf7c8ee23534e08a3aaa358"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Thu Nov 05 12:04:22 2009 -0800"
      },
      "committer": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Thu Nov 05 13:06:17 2009 -0800"
      },
      "message": "DO NOT MERGE: Squashed commit of the following:\n\ncommit 08259dd3dc9026887f9bbfedaf45866eb56ea9bc\nAuthor: Andreas Huber \u003candih@google.com\u003e\nDate:   Thu Nov 5 12:02:31 2009 -0800\n\n    DO NOT MERGE: Use PV for metadata extraction even if stagefright is used for playback.\n\ncommit 991832fe4dc012e51d3d9ed8d647c7f09991858f\nAuthor: Andreas Huber \u003candih@google.com\u003e\nDate:   Thu Nov 5 11:24:11 2009 -0800\n\n    DO NOT MERGE: Do not assert if we encounter OMX_StateInvalid. All bets are off though.\n\ncommit cec45cf302d9218fe79956cbe8a462d7ca3a10bb\nAuthor: Andreas Huber \u003candih@google.com\u003e\nDate:   Mon Oct 26 16:11:54 2009 -0700\n\n    DO NOT MERGE: When freeing an OMX node, attempt to transition it from its current state all the way to \"Loaded\" in order to properly free any allocated buffers.\n\ncommit 34a1e885ef9113d68acbc26d36fcc47fdebbed84\nAuthor: Andreas Huber \u003candih@google.com\u003e\nDate:   Thu Nov 5 11:10:49 2009 -0800\n\n    DO NOT MERGE: Fix heap corruptin in OMXNodeInstance.\n\ncommit 5a47f7439a1298b330541a7e4e647a8b44487388\nAuthor: Andreas Huber \u003candih@google.com\u003e\nDate:   Thu Nov 5 11:08:19 2009 -0800\n\n    DO NOT MERGE: Fix seek-on-initial-read behaviour of OMXCodec.\n\ncommit 45bed64722501b9f411a2940aff5aff4cc4d2e98\nAuthor: Andreas Huber \u003candih@google.com\u003e\nDate:   Thu Nov 5 11:02:23 2009 -0800\n\n    DO NOT MERGE: Renaming string.h to stagefright_string.h to avoid conflicts.\n\ncommit 6738e306a50196f31a73d4fc7b7c45faff639903\nAuthor: Andreas Huber \u003candih@google.com\u003e\nDate:   Thu Oct 15 13:46:54 2009 -0700\n\n    DO NOT MERGE: Reimplement the OMX backend for stagefright.\n\n    Besides a major cleanup and refactoring, OMX is now a singleton living in the media server, it listens for death notifications of node observers/clients that allocated OMX nodes and performs/attempts cleanup.\n\n    Changed APIs to conform to the rest of the system.\n"
    },
    {
      "commit": "653d5d415c3447a4250120548bf32d1ee63fe36f",
      "tree": "98dd9b275c2965b6b724e84a2a1fc93da71541c3",
      "parents": [
        "931203d4052ad9e02cc0a49b5d6b68c44e4d4072",
        "fcae6c71794696a074cabf20beeb02fd87853e30"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Thu Nov 05 01:55:51 2009 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Thu Nov 05 01:55:51 2009 -0800"
      },
      "message": "am fcae6c71: am 67b69292: Merge change I93f500a5 into eclair\n\nMerge commit \u0027fcae6c71794696a074cabf20beeb02fd87853e30\u0027 into eclair-mr2-plus-aosp\n\n* commit \u0027fcae6c71794696a074cabf20beeb02fd87853e30\u0027:\n  Fix issue 2203561: Sholes: audio playing out of earpiece.\n"
    },
    {
      "commit": "d889f189b5982d55e64ceb96713b46b2b99b3222",
      "tree": "5fd251b78348139f14e8a5fd705db467064105b1",
      "parents": [
        "3d68d43d209080800eb06d53e50d3d8133002c78",
        "67b692920c18f99b096dce285adc6f7439fa866c"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Thu Nov 05 00:01:50 2009 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Thu Nov 05 00:01:50 2009 -0800"
      },
      "message": "am 67b69292: Merge change I93f500a5 into eclair\n\nMerge commit \u002767b692920c18f99b096dce285adc6f7439fa866c\u0027 into eclair-plus-aosp\n\n* commit \u002767b692920c18f99b096dce285adc6f7439fa866c\u0027:\n  Fix issue 2203561: Sholes: audio playing out of earpiece.\n"
    },
    {
      "commit": "fcae6c71794696a074cabf20beeb02fd87853e30",
      "tree": "681e88f22ffa0855ac5a75a049beb223d6a4d96f",
      "parents": [
        "dc0f9efd356e5f212c54f87c7a7ddde5d28046d3",
        "67b692920c18f99b096dce285adc6f7439fa866c"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Thu Nov 05 00:01:33 2009 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Thu Nov 05 00:01:33 2009 -0800"
      },
      "message": "am 67b69292: Merge change I93f500a5 into eclair\n\nMerge commit \u002767b692920c18f99b096dce285adc6f7439fa866c\u0027 into eclair-mr2\n\n* commit \u002767b692920c18f99b096dce285adc6f7439fa866c\u0027:\n  Fix issue 2203561: Sholes: audio playing out of earpiece.\n"
    },
    {
      "commit": "67b692920c18f99b096dce285adc6f7439fa866c",
      "tree": "e8461fd50578bf3f4ad828fc8ae553893603121f",
      "parents": [
        "584bce31b62cdf3efd8a9eb40442c4cc612ce1e6",
        "bda7469d9b1ec6d9c9d6da40ddf64dc39ff271a9"
      ],
      "author": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Nov 05 02:55:26 2009 -0500"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Nov 05 02:55:26 2009 -0500"
      },
      "message": "Merge change I93f500a5 into eclair\n\n* changes:\n  Fix issue 2203561: Sholes: audio playing out of earpiece.\n"
    },
    {
      "commit": "bda7469d9b1ec6d9c9d6da40ddf64dc39ff271a9",
      "tree": "b89b73e6feeadefb4ad958c0359789cf0ae5b90f",
      "parents": [
        "e1e0dc8e6eaec052ebb6b88f5b1223075ce5a356"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Wed Nov 04 08:27:26 2009 -0800"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Wed Nov 04 23:47:21 2009 -0800"
      },
      "message": "Fix issue 2203561: Sholes: audio playing out of earpiece.\n\nCreate a new IAudioTrack interface to AudioFlinger when start() fails due to a broken pipe error.\nDo the same if start fails due to the same error after time out in obtainBuffer().\nDo not indicate that the AudioTrack is started to AudioPolicyManager if IAudioTrack start fails.\nThis avoids that an AudioTrack keeps a dead IAudioTrack after a media server crash.\n\nSame modifications for AudioRecord.\n\nAdd a flag to ToneGenerator indicating that the callback thread can call Java. Without it, when the media server crashes and restarts, the AudioSystem error callback will crash in JNI if the IAudiotrack is created from AudioTrack callback thread.\n"
    },
    {
      "commit": "bd38397bc4f754c040d4abf5435c2469c3357924",
      "tree": "e1a224a6cfb0af068037491a02e562eaf371804e",
      "parents": [
        "8495359382bc7c94a776e51c596e807448796476",
        "3d2d155a87cdd3038a2e6df8741181431cb250e1"
      ],
      "author": {
        "name": "Jean-Michel Trivi",
        "email": "jmtrivi@google.com",
        "time": "Wed Nov 04 13:23:00 2009 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Wed Nov 04 13:23:00 2009 -0800"
      },
      "message": "am 3d2d155a: am 7ed0ceeb: Merge change I6869df3a into eclair\n\nMerge commit \u00273d2d155a87cdd3038a2e6df8741181431cb250e1\u0027 into eclair-mr2-plus-aosp\n\n* commit \u00273d2d155a87cdd3038a2e6df8741181431cb250e1\u0027:\n  Add new audio sources to support the A1026 recording configurations.\n"
    },
    {
      "commit": "39995fdf3104b5e7c0cf1306f1b90aea49f56cec",
      "tree": "02e43d5621b8197b7b98c5f4926268062cea280f",
      "parents": [
        "b8d8bb40a1d30795b1f71ce123024a9a26cd5848",
        "7ed0ceeba54712f76e9a4f2dd4c9197d76813488"
      ],
      "author": {
        "name": "Jean-Michel Trivi",
        "email": "jmtrivi@google.com",
        "time": "Wed Nov 04 12:05:45 2009 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Wed Nov 04 12:05:45 2009 -0800"
      },
      "message": "am 7ed0ceeb: Merge change I6869df3a into eclair\n\nMerge commit \u00277ed0ceeba54712f76e9a4f2dd4c9197d76813488\u0027 into eclair-plus-aosp\n\n* commit \u00277ed0ceeba54712f76e9a4f2dd4c9197d76813488\u0027:\n  Add new audio sources to support the A1026 recording configurations.\n"
    },
    {
      "commit": "3d2d155a87cdd3038a2e6df8741181431cb250e1",
      "tree": "1937cbac3e457fa89938037ae2fbc573ded394c9",
      "parents": [
        "ad278f2276de23197571e486ad387dacc7f346ee",
        "7ed0ceeba54712f76e9a4f2dd4c9197d76813488"
      ],
      "author": {
        "name": "Jean-Michel Trivi",
        "email": "jmtrivi@google.com",
        "time": "Wed Nov 04 12:05:34 2009 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Wed Nov 04 12:05:34 2009 -0800"
      },
      "message": "am 7ed0ceeb: Merge change I6869df3a into eclair\n\nMerge commit \u00277ed0ceeba54712f76e9a4f2dd4c9197d76813488\u0027 into eclair-mr2\n\n* commit \u00277ed0ceeba54712f76e9a4f2dd4c9197d76813488\u0027:\n  Add new audio sources to support the A1026 recording configurations.\n"
    },
    {
      "commit": "8495359382bc7c94a776e51c596e807448796476",
      "tree": "5208ba5efa55b4ef2b321e78b512611d59b65fa8",
      "parents": [
        "7146332e9999443e22296d6d0968f95b80e79af6",
        "ad278f2276de23197571e486ad387dacc7f346ee"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Wed Nov 04 10:43:01 2009 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Wed Nov 04 10:43:01 2009 -0800"
      },
      "message": "am ad278f22: Merge change I6bce6d87 into eclair-mr2\n\nMerge commit \u0027ad278f2276de23197571e486ad387dacc7f346ee\u0027 into eclair-mr2-plus-aosp\n\n* commit \u0027ad278f2276de23197571e486ad387dacc7f346ee\u0027:\n  Adds a WAVExtractor for 16-bit signed PCM audio wave files.\n"
    },
    {
      "commit": "6869df3a5db0ca0037394f0fd14aecc1d80b5b42",
      "tree": "1d2c10ca2bd9fb71002375c8f9f3d61a9dfa2506",
      "parents": [
        "b96a9d9296925fef6a1c0e5ad4d847d96bf9acb5"
      ],
      "author": {
        "name": "Jean-Michel Trivi",
        "email": "jmtrivi@google.com",
        "time": "Tue Nov 03 19:43:21 2009 -0800"
      },
      "committer": {
        "name": "Jean-Michel Trivi",
        "email": "jmtrivi@google.com",
        "time": "Tue Nov 03 19:43:21 2009 -0800"
      },
      "message": "Add new audio sources to support the A1026 recording configurations.\n"
    },
    {
      "commit": "6bce6d87b3fd98e68fb54328fb4dc8e40cd2c293",
      "tree": "d1db8e33e22af4a4906f8f2c48492f1feed338cf",
      "parents": [
        "313953dccb55987d519281990f274d4c1c0d21a5"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Tue Nov 03 16:00:58 2009 -0800"
      },
      "committer": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Tue Nov 03 16:00:58 2009 -0800"
      },
      "message": "Adds a WAVExtractor for 16-bit signed PCM audio wave files.\n"
    },
    {
      "commit": "d1d744cdf4b08c8ef969790bae305c82ae783f4e",
      "tree": "762ea10c48d0b35074c79b2074f5f916e47a2577",
      "parents": [
        "c4bbb9144d1955340d69548e7245417cbe862d3c",
        "07d38c66692b7d87415667010c0658202b5a7f39"
      ],
      "author": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Tue Nov 03 09:47:31 2009 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Tue Nov 03 09:47:31 2009 -0800"
      },
      "message": "am 07d38c66: am 8637759a: Merge change I36d0184e into eclair\n\nMerge commit \u002707d38c66692b7d87415667010c0658202b5a7f39\u0027 into eclair-mr2-plus-aosp\n\n* commit \u002707d38c66692b7d87415667010c0658202b5a7f39\u0027:\n  fix[2228133] pixelflinger ignores the \"vertical stride\" leading to artifacts when playing back video\n"
    },
    {
      "commit": "07d38c66692b7d87415667010c0658202b5a7f39",
      "tree": "e9571801445894dac9baa92d15aa153f18d65973",
      "parents": [
        "6cb76ac37f1b4a36d81db7d7e8652d82b6f1b8b5",
        "8637759a1d34a4adda292579d5f8790587659235"
      ],
      "author": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Tue Nov 03 09:34:40 2009 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Tue Nov 03 09:34:40 2009 -0800"
      },
      "message": "am 8637759a: Merge change I36d0184e into eclair\n\nMerge commit \u00278637759a1d34a4adda292579d5f8790587659235\u0027 into eclair-mr2\n\n* commit \u00278637759a1d34a4adda292579d5f8790587659235\u0027:\n  fix[2228133] pixelflinger ignores the \"vertical stride\" leading to artifacts when playing back video\n"
    },
    {
      "commit": "b87e3eb933b4bd8556cd969a222881515b47a356",
      "tree": "86f72b68c3d86d7eb814525166f51e9bed0e81a8",
      "parents": [
        "f93cf369648b80addb57d637ae952eccaf0efcb4",
        "8637759a1d34a4adda292579d5f8790587659235"
      ],
      "author": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Tue Nov 03 09:33:22 2009 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Tue Nov 03 09:33:22 2009 -0800"
      },
      "message": "am 8637759a: Merge change I36d0184e into eclair\n\nMerge commit \u00278637759a1d34a4adda292579d5f8790587659235\u0027 into eclair-plus-aosp\n\n* commit \u00278637759a1d34a4adda292579d5f8790587659235\u0027:\n  fix[2228133] pixelflinger ignores the \"vertical stride\" leading to artifacts when playing back video\n"
    },
    {
      "commit": "8637759a1d34a4adda292579d5f8790587659235",
      "tree": "5146d928142d0c3f246d9cb968db8f5302767bab",
      "parents": [
        "483d29c0ddc9f4c110a8a8788ccd978010d55aa4",
        "36d0184e089831b74de6005f01da9e7b26679bb9"
      ],
      "author": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Nov 02 21:26:54 2009 -0500"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Nov 02 21:26:54 2009 -0500"
      },
      "message": "Merge change I36d0184e into eclair\n\n* changes:\n  fix[2228133] pixelflinger ignores the \"vertical stride\" leading to artifacts when playing back video\n"
    },
    {
      "commit": "36d0184e089831b74de6005f01da9e7b26679bb9",
      "tree": "8a6cb7b2f9e5c53db29bc818a403b26add0c66fe",
      "parents": [
        "989b76aadd92538c7ab4ca00c34508b42fda8cef"
      ],
      "author": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Mon Nov 02 17:48:33 2009 -0800"
      },
      "committer": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Mon Nov 02 17:48:33 2009 -0800"
      },
      "message": "fix[2228133] pixelflinger ignores the \"vertical stride\" leading to artifacts when playing back video\n\nwe lost the concept of vertical stride when moving video playback to EGLImage.\nHere we bring it back in a somewhat hacky-way that will work only for the\nsoftgl/mdp backend.\n"
    },
    {
      "commit": "8ba42ba83b206929c4c13c0b8ef24de87a92f42c",
      "tree": "e1c4b46396275be44634ed090e0b2f867c8f48bc",
      "parents": [
        "fb1d992f4b8addad729a94cb006a732a40b62756",
        "cd767bfd1c8e3103f99207ecfa34385e76518e82"
      ],
      "author": {
        "name": "Iliyan Malchev",
        "email": "malchev@google.com",
        "time": "Mon Nov 02 15:07:04 2009 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Mon Nov 02 15:07:04 2009 -0800"
      },
      "message": "am cd767bfd: am d4649b2f: Merge change Ibaef6141 into eclair\n\nMerge commit \u0027cd767bfd1c8e3103f99207ecfa34385e76518e82\u0027 into eclair-mr2-plus-aosp\n\n* commit \u0027cd767bfd1c8e3103f99207ecfa34385e76518e82\u0027:\n  libbinder: add a NO_CACHING flag to MemoryHeapBase\n"
    },
    {
      "commit": "d7b4cbe5be903dbdd0f377fc03d2173abfa98bc8",
      "tree": "18d02a699fd19a305f54bbe1b3270ddc7ebe2cf6",
      "parents": [
        "f48d2e87b1c41369f59b1ebcdf89657bd736f330",
        "d4649b2f8ea8285a4eb3c47e87520c7835e6c672"
      ],
      "author": {
        "name": "Iliyan Malchev",
        "email": "malchev@google.com",
        "time": "Mon Nov 02 15:02:03 2009 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Mon Nov 02 15:02:03 2009 -0800"
      },
      "message": "am d4649b2f: Merge change Ibaef6141 into eclair\n\nMerge commit \u0027d4649b2f8ea8285a4eb3c47e87520c7835e6c672\u0027 into eclair-plus-aosp\n\n* commit \u0027d4649b2f8ea8285a4eb3c47e87520c7835e6c672\u0027:\n  libbinder: add a NO_CACHING flag to MemoryHeapBase\n"
    },
    {
      "commit": "cd767bfd1c8e3103f99207ecfa34385e76518e82",
      "tree": "533445ad1d5185881897b0c4261a8f56bfa7775b",
      "parents": [
        "1166ff76eb3dbb5304dc40b3056e48c2c9dc7577",
        "d4649b2f8ea8285a4eb3c47e87520c7835e6c672"
      ],
      "author": {
        "name": "Iliyan Malchev",
        "email": "malchev@google.com",
        "time": "Mon Nov 02 15:01:36 2009 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Mon Nov 02 15:01:36 2009 -0800"
      },
      "message": "am d4649b2f: Merge change Ibaef6141 into eclair\n\nMerge commit \u0027d4649b2f8ea8285a4eb3c47e87520c7835e6c672\u0027 into eclair-mr2\n\n* commit \u0027d4649b2f8ea8285a4eb3c47e87520c7835e6c672\u0027:\n  libbinder: add a NO_CACHING flag to MemoryHeapBase\n"
    },
    {
      "commit": "d4649b2f8ea8285a4eb3c47e87520c7835e6c672",
      "tree": "989351c280eca4db14de2ddc069bd03c230b0d5b",
      "parents": [
        "1d9246e8bb8de624e14c55dce57e93da18cfd7a8",
        "baef6141a3239c7dd9bad0e2cd8a9ece5eef5a7e"
      ],
      "author": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Nov 02 17:55:43 2009 -0500"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Nov 02 17:55:43 2009 -0500"
      },
      "message": "Merge change Ibaef6141 into eclair\n\n* changes:\n  libbinder: add a NO_CACHING flag to MemoryHeapBase\n"
    },
    {
      "commit": "2926bf7d9aca0097a347ce6b77fc762f309a597b",
      "tree": "1fe3ce59f1d7c9f31a526b1af7f81cf4ffa44cdf",
      "parents": [
        "a94da0e7d98cdeae65cd48d4e7cfcf8f8b9aacfb",
        "c69e7516482aae626eb550f5dd99f0f2f7a45909"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Mon Nov 02 12:51:05 2009 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Mon Nov 02 12:51:05 2009 -0800"
      },
      "message": "am c69e7516: am ee98c240: Merge change I73680cd9 into eclair\n\nMerge commit \u0027c69e7516482aae626eb550f5dd99f0f2f7a45909\u0027 into eclair-mr2-plus-aosp\n\n* commit \u0027c69e7516482aae626eb550f5dd99f0f2f7a45909\u0027:\n  Fix 2194140: [Passion] Support Audience chip.\n"
    },
    {
      "commit": "c69e7516482aae626eb550f5dd99f0f2f7a45909",
      "tree": "02e60056aa34474490320d1064a0724efa67851c",
      "parents": [
        "e94261b874b7d0704dade14540dbb9477a828163",
        "ee98c24020c1634b02cde6d333968f04a0de941f"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Mon Nov 02 12:40:34 2009 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Mon Nov 02 12:40:34 2009 -0800"
      },
      "message": "am ee98c240: Merge change I73680cd9 into eclair\n\nMerge commit \u0027ee98c24020c1634b02cde6d333968f04a0de941f\u0027 into eclair-mr2\n\n* commit \u0027ee98c24020c1634b02cde6d333968f04a0de941f\u0027:\n  Fix 2194140: [Passion] Support Audience chip.\n"
    },
    {
      "commit": "7cd4f2523f6e6c852529062ce598f2650f952dcf",
      "tree": "481c13ac526153ce58991387b4eb2b36e6d84dbf",
      "parents": [
        "b98837dc2dfa79db036343bb9c97415ab548c89f",
        "ee98c24020c1634b02cde6d333968f04a0de941f"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Mon Nov 02 12:40:28 2009 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Mon Nov 02 12:40:28 2009 -0800"
      },
      "message": "am ee98c240: Merge change I73680cd9 into eclair\n\nMerge commit \u0027ee98c24020c1634b02cde6d333968f04a0de941f\u0027 into eclair-plus-aosp\n\n* commit \u0027ee98c24020c1634b02cde6d333968f04a0de941f\u0027:\n  Fix 2194140: [Passion] Support Audience chip.\n"
    },
    {
      "commit": "ee98c24020c1634b02cde6d333968f04a0de941f",
      "tree": "c5335abd97474e43b86c4b7fb78e7ddc8a6969b6",
      "parents": [
        "989b76aadd92538c7ab4ca00c34508b42fda8cef",
        "f22a0975c442f1f216f16db3ddb27015d72c6532"
      ],
      "author": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Nov 02 15:34:28 2009 -0500"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Nov 02 15:34:28 2009 -0500"
      },
      "message": "Merge change I73680cd9 into eclair\n\n* changes:\n  Fix 2194140: [Passion] Support Audience chip.\n"
    },
    {
      "commit": "50bb2643a5cb28c4e013eceb15c23288c85e0350",
      "tree": "f4f32b14186e51bd1d5b5009a27c3d910d59218e",
      "parents": [
        "80164966d087388ac0192caf7270158dea22444e",
        "d62b063fd4ac0ae1419348ac62c55527cb398fd9"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Mon Nov 02 11:04:56 2009 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Mon Nov 02 11:04:56 2009 -0800"
      },
      "message": "am d62b063f: am b6a6791f: Merge change I60413727 into eclair\n\nMerge commit \u0027d62b063fd4ac0ae1419348ac62c55527cb398fd9\u0027 into eclair-mr2-plus-aosp\n\n* commit \u0027d62b063fd4ac0ae1419348ac62c55527cb398fd9\u0027:\n  Fix issue #2226370: Resource versions match with equality\n"
    },
    {
      "commit": "efb752570e6c318eb1dbd8795408959cf4c5ab9f",
      "tree": "39da8906a002f1c2a88cab6442d3b09a795157c7",
      "parents": [
        "4b5d8e5ddac4f380e2333afecae7b917b7583e65",
        "b6a6791f381691d4a58fe6972eb9f0b65308ac1f"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Mon Nov 02 10:52:30 2009 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Mon Nov 02 10:52:30 2009 -0800"
      },
      "message": "am b6a6791f: Merge change I60413727 into eclair\n\nMerge commit \u0027b6a6791f381691d4a58fe6972eb9f0b65308ac1f\u0027 into eclair-plus-aosp\n\n* commit \u0027b6a6791f381691d4a58fe6972eb9f0b65308ac1f\u0027:\n  Fix issue #2226370: Resource versions match with equality\n"
    },
    {
      "commit": "d62b063fd4ac0ae1419348ac62c55527cb398fd9",
      "tree": "be6455a28904a8c00fd01a32e8fb3b40874bd49b",
      "parents": [
        "a86861a8684809bf3e3b877a20852483bc889742",
        "b6a6791f381691d4a58fe6972eb9f0b65308ac1f"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Mon Nov 02 10:52:22 2009 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Mon Nov 02 10:52:22 2009 -0800"
      },
      "message": "am b6a6791f: Merge change I60413727 into eclair\n\nMerge commit \u0027b6a6791f381691d4a58fe6972eb9f0b65308ac1f\u0027 into eclair-mr2\n\n* commit \u0027b6a6791f381691d4a58fe6972eb9f0b65308ac1f\u0027:\n  Fix issue #2226370: Resource versions match with equality\n"
    },
    {
      "commit": "f22a0975c442f1f216f16db3ddb27015d72c6532",
      "tree": "d335d2d1232687c9e96253ceb4ba0a3e13f13ab8",
      "parents": [
        "31f62008db4b2c3bfd24379b76570fd9bd1de2b3"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Mon Nov 02 05:31:33 2009 -0800"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Mon Nov 02 10:38:22 2009 -0800"
      },
      "message": "Fix 2194140: [Passion] Support Audience chip.\n\nAdded new input device DEVICE_IN_BACK_MIC.\nAdded new audio source AUDIO_SOURCE_CAMCORDER.\n"
    },
    {
      "commit": "553399518f39cd9f31f2bb6f502866c3c9d6d1a5",
      "tree": "0142f759466336e32bccab5ba2fe7c7341ef5318",
      "parents": [
        "824838d74eb0316f6987a1d98d2d9e9fa8d4e15b"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Sun Nov 01 21:16:59 2009 -0800"
      },
      "committer": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Sun Nov 01 21:16:59 2009 -0800"
      },
      "message": "Fix issue #2226370: Resource versions match with equality\n\nAlso fixed turned-around increment of version number for resources. :(\n\nChange-Id: I604137272da984bcd69cee4f174e6b7f2c786e46\n"
    },
    {
      "commit": "baef6141a3239c7dd9bad0e2cd8a9ece5eef5a7e",
      "tree": "50df32f2a31006f4ea4572cffdf390012541027b",
      "parents": [
        "05cb5610fdfb7b69cf90a9230853e59b4ae5e219"
      ],
      "author": {
        "name": "Iliyan Malchev",
        "email": "malchev@google.com",
        "time": "Thu Oct 29 22:55:00 2009 -0700"
      },
      "committer": {
        "name": "Iliyan Malchev",
        "email": "malchev@google.com",
        "time": "Fri Oct 30 18:35:47 2009 -0700"
      },
      "message": "libbinder: add a NO_CACHING flag to MemoryHeapBase\n\nThe NO_CACHING flag translates to opening a memory region with O_SYNC.\n\nSigned-off-by: Iliyan Malchev \u003cmalchev@google.com\u003e\n"
    },
    {
      "commit": "874762f760270694be4fe5d65e6ed65bc79bb846",
      "tree": "f158d1cf704910b0db823a03d14b8a4862c1815d",
      "parents": [
        "faa7c8151851f0717d673071c5a6321384a6b7af",
        "16d8f10ebf75e809cc14d866fded7749363b9d8f"
      ],
      "author": {
        "name": "Wu-cheng Li",
        "email": "wuchengli@google.com",
        "time": "Thu Oct 29 19:55:41 2009 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Thu Oct 29 19:55:41 2009 -0700"
      },
      "message": "am 16d8f10e: am 4cb04c46: Use image rect information to display zoomed picture.\n\nMerge commit \u002716d8f10ebf75e809cc14d866fded7749363b9d8f\u0027 into eclair-mr2-plus-aosp\n\n* commit \u002716d8f10ebf75e809cc14d866fded7749363b9d8f\u0027:\n  Use image rect information to display zoomed picture.\n"
    },
    {
      "commit": "16d8f10ebf75e809cc14d866fded7749363b9d8f",
      "tree": "250d3c87bbd9509501cf386bd03b6f92fbd8135e",
      "parents": [
        "5cecf74138ea56842463ec384ff04610c1247920",
        "4cb04c4654e9718a73b378e7b9962dee454efa8d"
      ],
      "author": {
        "name": "Wu-cheng Li",
        "email": "wuchengli@google.com",
        "time": "Thu Oct 29 19:26:04 2009 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Thu Oct 29 19:26:04 2009 -0700"
      },
      "message": "am 4cb04c46: Use image rect information to display zoomed picture.\n\nMerge commit \u00274cb04c4654e9718a73b378e7b9962dee454efa8d\u0027 into eclair-mr2\n\n* commit \u00274cb04c4654e9718a73b378e7b9962dee454efa8d\u0027:\n  Use image rect information to display zoomed picture.\n"
    },
    {
      "commit": "5647eebc3aeef6e644b8c7587a36206d8f0d6314",
      "tree": "625e585b362639d2e020f9d319c3387bffd95550",
      "parents": [
        "cad9a4b0468eb9611cc9b7d7b380d8af3fff8588",
        "9dba1f928021450f101013e03deacc9a0506772e"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Thu Oct 29 14:00:16 2009 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Thu Oct 29 14:00:16 2009 -0700"
      },
      "message": "am 9dba1f92: Merge change Ib482ce88 into eclair-mr2\n\nMerge commit \u00279dba1f928021450f101013e03deacc9a0506772e\u0027 into eclair-mr2-plus-aosp\n\n* commit \u00279dba1f928021450f101013e03deacc9a0506772e\u0027:\n  Revive support for video encoding in OMXCodec.\n"
    },
    {
      "commit": "9dba1f928021450f101013e03deacc9a0506772e",
      "tree": "e7d8d656f4a546662ccade6f6569c6516b65be97",
      "parents": [
        "66e06205030cfc72f9aeeac57acfd6cbff0c1b8a",
        "b482ce8837a2d85a2a907d7ea89deaa6610a8333"
      ],
      "author": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Oct 29 16:20:43 2009 -0400"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Oct 29 16:20:43 2009 -0400"
      },
      "message": "Merge change Ib482ce88 into eclair-mr2\n\n* changes:\n  Revive support for video encoding in OMXCodec.\n"
    },
    {
      "commit": "b482ce8837a2d85a2a907d7ea89deaa6610a8333",
      "tree": "d290027d3cfb697d0d2abfcccafd5d7337cd5e76",
      "parents": [
        "10d32a338d5400786e784a0d6f51b53acea76b44"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Thu Oct 29 12:02:48 2009 -0700"
      },
      "committer": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Thu Oct 29 12:02:48 2009 -0700"
      },
      "message": "Revive support for video encoding in OMXCodec.\n"
    },
    {
      "commit": "64d3f44c7bf5a6e80be419df5850ef60fec216b5",
      "tree": "c3085258ac4641e0551082014aab99d458788019",
      "parents": [
        "0200ec3eb4c9c11cc8f9e3db5a1a51f5db840524",
        "893cb4da1034870a8814394a1c3bdac10ca6cadf"
      ],
      "author": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Thu Oct 29 01:46:16 2009 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Thu Oct 29 01:46:16 2009 -0700"
      },
      "message": "am 893cb4da: am 73e17015: Merge change I8d2de438 into eclair\n\nMerge commit \u0027893cb4da1034870a8814394a1c3bdac10ca6cadf\u0027 into eclair-mr2-plus-aosp\n\n* commit \u0027893cb4da1034870a8814394a1c3bdac10ca6cadf\u0027:\n  fix [2143798] Need to figure out how to do video\n"
    }
  ],
  "next": "893cb4da1034870a8814394a1c3bdac10ca6cadf"
}
