)]}'
{
  "log": [
    {
      "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": "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": "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": "c75872920cd2de02d04bdc132ad5cf6d78c0578f",
      "tree": "7a00f9de9aad3f6305a663b94d63960ec7dc6dd0",
      "parents": [
        "7a1e1bdde7a28d9573367d6f95b736fd793ace0c",
        "ecd0a4f0b5bdd51bc35097b402202d6349f016ba"
      ],
      "author": {
        "name": "Chia-chi Yeh",
        "email": "chiachi@android.com",
        "time": "Tue Nov 30 16:23:40 2010 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Tue Nov 30 16:23:40 2010 -0800"
      },
      "message": "am 4f93f08d: am 683a7ff9: Merge \"Visualizer: Fix the conversion from 8-bit sample to 16-bit sample.\" into gingerbread\n\n* commit \u00274f93f08d8c8b8067ff2176d9ec15c76c0e4cc0c2\u0027:\n  Visualizer: Fix the conversion from 8-bit sample to 16-bit sample.\n"
    },
    {
      "commit": "ecd0a4f0b5bdd51bc35097b402202d6349f016ba",
      "tree": "4db64af200c0be90a7938d47df543e49ac70bb04",
      "parents": [
        "e81e8153c85fa0b0aebae686f6ba51ed2c3a2d11",
        "879e9cb6b4e8b09a5c7d4942ce36125193deadde"
      ],
      "author": {
        "name": "Chia-chi Yeh",
        "email": "chiachi@android.com",
        "time": "Tue Nov 30 11:45:54 2010 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Tue Nov 30 11:45:54 2010 -0800"
      },
      "message": "am 683a7ff9: Merge \"Visualizer: Fix the conversion from 8-bit sample to 16-bit sample.\" into gingerbread\n\n* commit \u0027683a7ff922409d2aa6c944bc4e08de32029e80e5\u0027:\n  Visualizer: Fix the conversion from 8-bit sample to 16-bit sample.\n"
    },
    {
      "commit": "879e9cb6b4e8b09a5c7d4942ce36125193deadde",
      "tree": "5d62a0440aee987552a01ced8d3ad7d549749c0f",
      "parents": [
        "c2c8868e59bde7f48998e1d89a0d77217bc64767",
        "6b6a736ec71c692c165952fe653a7766075e94bb"
      ],
      "author": {
        "name": "Chia-chi Yeh",
        "email": "chiachi@android.com",
        "time": "Mon Nov 29 22:56:56 2010 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Nov 29 22:56:56 2010 -0800"
      },
      "message": "Merge \"Visualizer: Fix the conversion from 8-bit sample to 16-bit sample.\" into gingerbread"
    },
    {
      "commit": "e2b1028852120bcfded33b8f06f66b780437fe92",
      "tree": "a524b579935df0a8773e780299e31b590d1bdb44",
      "parents": [
        "31d7235c79667f88002d9ad87207099ed438a197"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Tue Nov 23 11:41:34 2010 -0800"
      },
      "committer": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Tue Nov 23 14:46:13 2010 -0800"
      },
      "message": "Support streaming data across binder boundaries.\n\nChange-Id: Ifbac61406dcb81343765f99ccba08bd90f9274cc\n"
    },
    {
      "commit": "f5aafb209d01ba2ab6cb55d1a12cfc653e2b4be0",
      "tree": "75b6429a6bb8b78943b770cad6924a7aaa94dc32",
      "parents": [
        "b9ff444a7eaf7ffd43970c0477110c6808bd4a7c"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Thu Nov 18 08:40:16 2010 -0800"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Fri Nov 19 15:49:42 2010 -0800"
      },
      "message": "Fix issue 3157123.\n\nUse a Mutex wherever atomic operations were used in AudioTrack,\nAudioRecord, AudioFlinger and AudioEffect classes.\n\nChange-Id: I6f55b2cabdcd93d64ef19446735b8f33720f8dbc\n"
    },
    {
      "commit": "a1680bce73ea1b051cc92e0df651a53944b104ee",
      "tree": "1b3b976f6ceb09362f4fb94bd9f7755fa7569d0b",
      "parents": [
        "e1b8cf1cafb75ce1339b67eb1764e224a257c579"
      ],
      "author": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Thu Nov 18 12:23:58 2010 -0800"
      },
      "committer": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Thu Nov 18 12:25:52 2010 -0800"
      },
      "message": "Fix an issue wherre error notification will not be sent after mediaplayer reset\n\nbug - 3198642\n\nChange-Id: Ieab13e12af9fdd0ad0873c522885e1350e7cd24c\n"
    },
    {
      "commit": "0a5ca668c6f7d45706e9aec4a1dfec0aacc6d233",
      "tree": "d9a1933cf2af87ad563e9220818c8d752b3a0379",
      "parents": [
        "6f9f029f7fc625bb2a1b448ad30a80a6a6a73b20"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Tue Nov 16 13:05:53 2010 -0800"
      },
      "committer": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Tue Nov 16 13:05:53 2010 -0800"
      },
      "message": "Remove all traces of legacy renderer support in stagefright.\n\nChange-Id: I17b8e0dbf53fca37c96830c41131b4bc0c24ca6d\n"
    },
    {
      "commit": "56ecd20263d7f63476f756fc5d8b043b325c7bfb",
      "tree": "601ad5cd05a0cd81c1fb44bcb1914966f4401812",
      "parents": [
        "54f5501a61bfc13930f9f8d08cbd71a69924d4cc"
      ],
      "author": {
        "name": "Jean-Michel Trivi",
        "email": "jmtrivi@google.com",
        "time": "Tue Nov 09 14:06:52 2010 -0800"
      },
      "committer": {
        "name": "Jean-Michel Trivi",
        "email": "jmtrivi@google.com",
        "time": "Fri Nov 12 14:35:52 2010 -0800"
      },
      "message": "Add support for audio recording source in generic audio policy mgr.\n\nUpdate the platform-independent audio policy manager to pass the\n nature of the audio recording source to the audio policy client\n interface through the AudioPolicyClientInterface::setParameters()\n method.\n\nChange-Id: I6b4fd0f8a3acea0d7d30bbad98edd1977dc012bf\n"
    },
    {
      "commit": "3baff73198ce852fa60080bd32703028298b4d65",
      "tree": "91c41492bf470b1a3facc7da5b3dad6d97ffbd6c",
      "parents": [
        "4974d5eaf838d893c418b85bd47f6f114d9b5aaa",
        "85d9b4225d024bb0d602b48bd6d5219cbebd7b8e"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Mon Nov 08 11:50:14 2010 -0800"
      },
      "committer": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Mon Nov 08 11:56:08 2010 -0800"
      },
      "message": "resolved conflicts for merge of 31dc911a to gingerbread-plus-aosp\n\nChange-Id: I2f51b2120b3c552566d91a7dc498a5e8b130205f\n"
    },
    {
      "commit": "85d9b4225d024bb0d602b48bd6d5219cbebd7b8e",
      "tree": "4d9ebf6a8b1ecfe51c312d7f2cfa7b2eda6fe5cf",
      "parents": [
        "aca1fe35480ae76dd6bae167ade40adc955e2d0d"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Thu Nov 04 11:50:27 2010 -0700"
      },
      "committer": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Fri Nov 05 17:03:17 2010 -0700"
      },
      "message": "Support post-decode video rotation.\n\nChange-Id: Ia371316e73a57e44610de86adce3eaa560afbf84\n"
    },
    {
      "commit": "6b6a736ec71c692c165952fe653a7766075e94bb",
      "tree": "2000c38c45f45551faa3a78de14f7f7f387b0f80",
      "parents": [
        "64c3bdea8cba454d4404baded584ea0f0611b3ee"
      ],
      "author": {
        "name": "Chia-chi Yeh",
        "email": "chiachi@android.com",
        "time": "Mon Nov 01 10:56:45 2010 +0800"
      },
      "committer": {
        "name": "Chia-chi Yeh",
        "email": "chiachi@android.com",
        "time": "Mon Nov 01 10:56:45 2010 +0800"
      },
      "message": "Visualizer: Fix the conversion from 8-bit sample to 16-bit sample.\n\nChange-Id: Ie6d77b0f61a37333e05cdcdb6ef29d6f6c345a9d\n"
    },
    {
      "commit": "05ea6434ed399395e2dbe9f68abb44f04b274cb0",
      "tree": "96fc95609b002fdf18ae1dff241d3c3a549f1673",
      "parents": [
        "c8ca26ed63edcf2731c4773b8ce3141930cc7245"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Fri Oct 29 12:00:20 2010 -0700"
      },
      "committer": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Fri Oct 29 13:20:06 2010 -0700"
      },
      "message": "Squashed commit of the following:\n\ncommit 0d5694ba2d399dd0869532a4d6256448185a1be0\nAuthor: Andreas Huber \u003candih@google.com\u003e\nDate:   Fri Oct 29 11:59:23 2010 -0700\n\n    suspend() and resume() methods on VideoView are back but don\u0027t do anything.\n\n    They need to be back because they were public before.\n\n    Change-Id: Iddfd1021ffcf341f26e8d55ba761fd33701e2425\n\ncommit 16192891ed7d349ee97e47d1729d20a2d0d247b8\nAuthor: Andreas Huber \u003candih@google.com\u003e\nDate:   Fri Oct 29 11:47:05 2010 -0700\n\n    Revert \"New API on VideoView widget to suspend/resume a session. Do not release the MediaPlayer client for video suspending/resuming.\"\n\n    This reverts commit 2e1818a4d16c3309660f27286c77d8d1eee95a25.\n\n    Conflicts:\n\n    \tapi/current.xml\n\n    Change-Id: I68dd1d05871044faf3f832d0838aa40bc7f890e5\n\ncommit 8f934dc1a3ae4e60f0790fcf97671e063fa20fad\nAuthor: Andreas Huber \u003candih@google.com\u003e\nDate:   Fri Oct 29 11:44:16 2010 -0700\n\n    Revert \"Release mediaplayer if the current state is not suspending. Fix for bug 2480093.\"\n\n    This reverts commit efb882cf75eef39ecaf9f8920ed302a019fa629f.\n\ncommit f2ed03550887986f39d36b5dabcd9e919949c7cf\nAuthor: Andreas Huber \u003candih@google.com\u003e\nDate:   Fri Oct 29 11:44:08 2010 -0700\n\n    Revert \"Release MediaPlayer if suspend() returns false.\"\n\n    This reverts commit 047212fd4ea360675e94d3ce83c7f5544f65b268.\n\ncommit 441ecce678bd24e9660a72c8627b5bd94433ff8b\nAuthor: Andreas Huber \u003candih@google.com\u003e\nDate:   Fri Oct 29 11:40:46 2010 -0700\n\n    manually.\n\n    Change-Id: I4fdd43c9f7c8b3eedddb31a196da4984e1c58e87\n\nChange-Id: I60d4b10e7a9e4ed8d9a796f1711618f557eb6e89\n"
    },
    {
      "commit": "e870772a78ffe08b1c14a791e368f1499f1be0f3",
      "tree": "a443d9a157f12b32e524ae2953219d56dd3a770f",
      "parents": [
        "f83dd80384f70da1f6d36d60e831439ff7739ad7"
      ],
      "author": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Wed Oct 20 17:38:41 2010 -0700"
      },
      "committer": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Thu Oct 21 14:06:17 2010 -0700"
      },
      "message": "OMX extension to support storing meta data in video input buffers during recording\n\nbug - 3042125\n\nChange-Id: I7543809fa4ff61d48da35eec6c2bd5eaa7e8cead\n"
    },
    {
      "commit": "8ac0cb9dc8a46f9b2badabc91cb5f7871e2215a9",
      "tree": "5ba561315eff765e4a434ae56c55c3648defe5ec",
      "parents": [
        "3e00cc070090fa3eab16792da90aa33823cd6db1",
        "06fa2bcce5dd80b406a23f980d8c9fac1524ebfd"
      ],
      "author": {
        "name": "Jean-Baptiste Queru",
        "email": "jbq@google.com",
        "time": "Mon Oct 18 08:33:38 2010 -0700"
      },
      "committer": {
        "name": "Jean-Baptiste Queru",
        "email": "jbq@google.com",
        "time": "Mon Oct 18 08:33:38 2010 -0700"
      },
      "message": "Merge fb474872 from gingerbread-plus-aosp\n\nChange-Id: I1bbb845a86a7b7df44ea175df3af22e5f47c44e3\n"
    },
    {
      "commit": "06fa2bcce5dd80b406a23f980d8c9fac1524ebfd",
      "tree": "340fd639cd8c487e65c47e4d44ee66974d8a9b85",
      "parents": [
        "30550ba7a19372daa7424710ca1367bb7299e459",
        "56cfa2376ae87cba730ea7ce4a9e0ca4f0d07627"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Fri Oct 15 18:25:14 2010 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Fri Oct 15 18:25:14 2010 -0700"
      },
      "message": "am b04f356d: Merge \"Include the framework copy of the OpenMAX headers instead of referencing external/opencore.\" into gingerbread\n\nMerge commit \u0027b04f356d86eec74217fca8e3b85d801c4fcaa678\u0027 into gingerbread-plus-aosp\n\n* commit \u0027b04f356d86eec74217fca8e3b85d801c4fcaa678\u0027:\n  Include the framework copy of the OpenMAX headers instead of referencing external/opencore.\n"
    },
    {
      "commit": "56cfa2376ae87cba730ea7ce4a9e0ca4f0d07627",
      "tree": "c5909cd90e35e198a801abf6cff6d924a73b8011",
      "parents": [
        "b10d28f233bb881cc12260c320892e5feb198e9a"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Fri Oct 15 13:31:29 2010 -0700"
      },
      "committer": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Fri Oct 15 13:31:29 2010 -0700"
      },
      "message": "Include the framework copy of the OpenMAX headers instead of referencing external/opencore.\n\nChange-Id: I762f59acf5e1f770e4d7c2d89af362bfffebefa6\nrelated-to-bug: 3101573\n"
    },
    {
      "commit": "3e8742fa4a5f0f8b185274763f6ec4e6c3a89344",
      "tree": "e7fe850b1e78f29434d2f0226830b3d763ebc5f7",
      "parents": [
        "6fed68ded4ab2c042b7ca14409a24aee916313d5",
        "8cde59da2dd8540466aff5e94e9a6e5f74df1f10"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Fri Oct 15 08:33:23 2010 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Fri Oct 15 08:33:23 2010 -0700"
      },
      "message": "am 27c7fb1a: am 90d59d18: Merge \"Metadata.cpp and Metadata.java had drifted out of sync. This change remedies that.\" into gingerbread\n\nMerge commit \u002727c7fb1a861776b4fdc2632697e4e25eee83617f\u0027\n\n* commit \u002727c7fb1a861776b4fdc2632697e4e25eee83617f\u0027:\n  Metadata.cpp and Metadata.java had drifted out of sync. This change remedies that.\n"
    },
    {
      "commit": "f9f083e2853740c97588f4db82c24645ae5880e4",
      "tree": "5d045dddcf9e85e4826286c28662050b9d4a935d",
      "parents": [
        "d6119356f45c9c57cac812357d969ecc3001087e",
        "e4edd632d48720b44f7878273f46d192d5703150"
      ],
      "author": {
        "name": "Kenny Root",
        "email": "kroot@google.com",
        "time": "Thu Oct 14 23:58:41 2010 -0700"
      },
      "committer": {
        "name": "Kenny Root",
        "email": "kroot@google.com",
        "time": "Thu Oct 14 23:58:41 2010 -0700"
      },
      "message": "resolved conflicts for merge of a127c07c to master\n\nChange-Id: Ifdfc6681cba00f36456eaf7a97f34a75b9d0c086\n"
    },
    {
      "commit": "8cde59da2dd8540466aff5e94e9a6e5f74df1f10",
      "tree": "633d6ce67a785ba813c1f9c79917ec6c40e56fee",
      "parents": [
        "0b5181ddfdde400f9cac6db239cf97ced3b67e22",
        "2959a5a5b4d151e14da3abe0289c15693409eb84"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Wed Oct 13 15:50:27 2010 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Wed Oct 13 15:50:27 2010 -0700"
      },
      "message": "am 90d59d18: Merge \"Metadata.cpp and Metadata.java had drifted out of sync. This change remedies that.\" into gingerbread\n\nMerge commit \u002790d59d180bd963f00161e6bfaabfda432960cab6\u0027 into gingerbread-plus-aosp\n\n* commit \u002790d59d180bd963f00161e6bfaabfda432960cab6\u0027:\n  Metadata.cpp and Metadata.java had drifted out of sync. This change remedies that.\n"
    },
    {
      "commit": "2959a5a5b4d151e14da3abe0289c15693409eb84",
      "tree": "bcdb8b57d72e5d1f8ca30cf79aafde419c610cc9",
      "parents": [
        "a82c3c631a9c0bb721e35d03714715ffe3b0b0c3"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Wed Oct 13 15:12:08 2010 -0700"
      },
      "committer": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Wed Oct 13 15:12:08 2010 -0700"
      },
      "message": "Metadata.cpp and Metadata.java had drifted out of sync. This change remedies that.\n\nChange-Id: I48175666857ab0fb1519777bdb6f7f0b6b5cc599\nrelated-to-bug: 3073955\n"
    },
    {
      "commit": "e4edd632d48720b44f7878273f46d192d5703150",
      "tree": "4dc92f8f6371da457d7c20e59194e73cf66d3659",
      "parents": [
        "43024e1f4953d9b8891b7b72f10e76f11812e772",
        "5cb77e080ced5362b5f047e107327b3cb6ece6c9"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Wed Oct 13 09:19:28 2010 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Wed Oct 13 09:19:28 2010 -0700"
      },
      "message": "am 312644cd: Merge \"Support for writing to MPEG2 transport stream files.\" into gingerbread\n\nMerge commit \u0027312644cdbb39522fe9cac028b15b907ce0e8e0f7\u0027 into gingerbread-plus-aosp\n\n* commit \u0027312644cdbb39522fe9cac028b15b907ce0e8e0f7\u0027:\n  Support for writing to MPEG2 transport stream files.\n"
    },
    {
      "commit": "59b7dc39ea8332d3418a599e51447d7edb612ac4",
      "tree": "30d77dd5cca3f58b3902df86e7df1dab42abc0f2",
      "parents": [
        "2bc940b4f961e588459c83862b2c6bea314a4027"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Tue Oct 12 14:17:45 2010 -0700"
      },
      "committer": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Tue Oct 12 16:05:23 2010 -0700"
      },
      "message": "Support for writing to MPEG2 transport stream files.\n\nChange-Id: If3b7a807bc224a4b1cb2236537c3ebdc5aee0d97\n"
    },
    {
      "commit": "2eeadf9ded4b5770a713496e9887d668889987bc",
      "tree": "94815ad41dce013a8d793d9e70d21f330573bd2b",
      "parents": [
        "0714c8262054cb6a532025feb082b21b502a128b",
        "74684081846ee6e68325fa5aba5c45b7447fd368"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Sun Oct 10 16:06:04 2010 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Sun Oct 10 16:06:04 2010 -0700"
      },
      "message": "am 4f21e517: am b37fcbfd: Merge \"Added getter for session Id to AudioSink\" into gingerbread\n\nMerge commit \u00274f21e517d09b9d793d20d64547df330fba705b3c\u0027\n\n* commit \u00274f21e517d09b9d793d20d64547df330fba705b3c\u0027:\n  Added getter for session Id to AudioSink\n"
    },
    {
      "commit": "74684081846ee6e68325fa5aba5c45b7447fd368",
      "tree": "4f2710d354acd31694fd8bbbaa07fade7f254cc6",
      "parents": [
        "4b43c1f169ab29b2d4dd058573668f7f4ffb8ca1",
        "bea16187c176837d35e7294f1f14ac195c5d5cad"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Fri Oct 08 08:30:03 2010 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Fri Oct 08 08:30:03 2010 -0700"
      },
      "message": "am b37fcbfd: Merge \"Added getter for session Id to AudioSink\" into gingerbread\n\nMerge commit \u0027b37fcbfd7f9d65b90b43e0242903030c5a6517b5\u0027 into gingerbread-plus-aosp\n\n* commit \u0027b37fcbfd7f9d65b90b43e0242903030c5a6517b5\u0027:\n  Added getter for session Id to AudioSink\n"
    },
    {
      "commit": "8c563ed9ca8a863a66965330b5d14bb4b4ab59d4",
      "tree": "b2d2e571aa8618456b27e1cb67a717ca80340e3e",
      "parents": [
        "2a4d22d79e927f2245537921e10fc5fda1c47a29"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Thu Oct 07 18:23:03 2010 -0700"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Thu Oct 07 18:23:03 2010 -0700"
      },
      "message": "Added getter for session Id to AudioSink\n\nAdded a method to expose the audio session id at AudioSink interface\nso that the AudioPlayer in stagefright can retrieve it.\n\nAlso:\n- Fixed audio effect send level not being initialized in mediaplayer.\n- Fixed compilation error when LOGV is enabled in mediaplayer JNI\n\nChange-Id: I4bb55454fd63d646e0e677692d737c4843fb05fb\n"
    },
    {
      "commit": "9ad6e8bd9fab860e639f6ce95479e4b2a9b03ff5",
      "tree": "73867627d0857a5bbbfbafeeacd2146d33ae585b",
      "parents": [
        "02d615bcb70a1bfe26dd5e3d719d621ee5c4ed87",
        "b3788b6d0f5a003d3d3e621ad605e2f3f4cb11e8"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Thu Sep 30 19:47:21 2010 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Thu Sep 30 19:47:21 2010 -0700"
      },
      "message": "am de12c3cf: am 220ab887: Merge \"Issue 3032913: improve AudioTrack recovery time\" into gingerbread\n\nMerge commit \u0027de12c3cf56e3f27b2efc60eeae8b5e422747f2b9\u0027\n\n* commit \u0027de12c3cf56e3f27b2efc60eeae8b5e422747f2b9\u0027:\n  Issue 3032913: improve AudioTrack recovery time\n"
    },
    {
      "commit": "b3788b6d0f5a003d3d3e621ad605e2f3f4cb11e8",
      "tree": "9a482922a4ad3cbceb79b2646a505e2f03fe5d7c",
      "parents": [
        "1720ba0dd73f807cd9b6d90ffbfa581e18b6de08",
        "44d9848d6656777a18019223e0d35f2fcc67719a"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Thu Sep 30 17:47:07 2010 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Thu Sep 30 17:47:07 2010 -0700"
      },
      "message": "am 220ab887: Merge \"Issue 3032913: improve AudioTrack recovery time\" into gingerbread\n\nMerge commit \u0027220ab8877b234e6807b7f6d9028ba55d23220301\u0027 into gingerbread-plus-aosp\n\n* commit \u0027220ab8877b234e6807b7f6d9028ba55d23220301\u0027:\n  Issue 3032913: improve AudioTrack recovery time\n"
    },
    {
      "commit": "44d9848d6656777a18019223e0d35f2fcc67719a",
      "tree": "fe71003d3400dcbdfe078f8d8fad1b1fde960b2c",
      "parents": [
        "922855214d0e8ae4159794d7f751f780b3243552"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Thu Sep 30 16:12:31 2010 -0700"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Thu Sep 30 17:21:23 2010 -0700"
      },
      "message": "Issue 3032913: improve AudioTrack recovery time\n\nThis issue showed that when an AudioTrack underruns during a too long period\nof time and is therefore disabled by audioflinger mixer, it takes an additional\ndelay of up to 3 seconds to recover.\nThis fix adds a simple mechanism to recover immediately when the client application\nis ready to write data again in the AudioTrack buffer\n\nAlso throttle warnings on record overflows\n\nChange-Id: I8b2c71578dd134b9e60a15ee4d91b70f3799cb3d\n"
    },
    {
      "commit": "c425ffbfdca80c663b16a875228c15a1147a75f4",
      "tree": "98e05d9e0bcf0b7089cf60092dcfb5c7f21e9fa8",
      "parents": [
        "9b4e14edf6c20bcb5830b692121042cccffedfe6",
        "da4b9bdd4682fb3a20964908cb18d02c943b7f35"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Mon Sep 27 08:48:40 2010 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Mon Sep 27 08:48:40 2010 -0700"
      },
      "message": "am 1b37df95: am 9627847d: Merge \"Fix error in AudioEffect command status reporting.\" into gingerbread\n\nMerge commit \u00271b37df95ec9d03aaa5f4055c6cd86db42f9c9727\u0027\n\n* commit \u00271b37df95ec9d03aaa5f4055c6cd86db42f9c9727\u0027:\n  Fix error in AudioEffect command status reporting.\n"
    },
    {
      "commit": "da4b9bdd4682fb3a20964908cb18d02c943b7f35",
      "tree": "4061ce1b067a277da67a141a5d2e9cb98e68041c",
      "parents": [
        "2207a10949a7f3fe7ebf5a52974c45221d8acc46",
        "0fa449cc475580d995e9d56756c3da5507d2b6f6"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Mon Sep 27 08:45:07 2010 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Mon Sep 27 08:45:07 2010 -0700"
      },
      "message": "am 9627847d: Merge \"Fix error in AudioEffect command status reporting.\" into gingerbread\n\nMerge commit \u00279627847d588cd969f60dcc79d165209184a90069\u0027 into gingerbread-plus-aosp\n\n* commit \u00279627847d588cd969f60dcc79d165209184a90069\u0027:\n  Fix error in AudioEffect command status reporting.\n"
    },
    {
      "commit": "0fa449cc475580d995e9d56756c3da5507d2b6f6",
      "tree": "1e344eefa5847ad1e8ea3fc508e0d63ba5334c13",
      "parents": [
        "76e2c7be04aeff55f3e6a473ff1cd6d9ec2d620c"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Fri Sep 24 11:52:04 2010 -0700"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Fri Sep 24 15:24:54 2010 -0700"
      },
      "message": "Fix error in AudioEffect command status reporting.\n\nAudioEffect::command() should not interpret the status\nreturned in pReplyData unless the command is ENABLE or\nDISABLE.\n\nAlso fixed:\n- bug in Visualizer::getWAveForm() status reporting.\n- wrong initialization value for capture buffer in visualizer engine.\n\nChange-Id: I60fb0011f9dba96ee74661dec1e8ef441edcaf35\n"
    },
    {
      "commit": "d44b51d9fcb0b5d891d2abece83a551e71ebb73b",
      "tree": "231b23f58a891c0c1db02e1982d9a21a6e302eda",
      "parents": [
        "979d233237271c2acc0c3902508e208fce16a1c9",
        "6901625dcb847871e23f04b9a282dc5d313a1d57"
      ],
      "author": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Fri Sep 17 23:25:37 2010 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Fri Sep 17 23:25:37 2010 -0700"
      },
      "message": "am 5c9f3579: am f30fae63: Merge \"Add a check to track a problem the monkey script has been triggering.\" into gingerbread\n\nMerge commit \u00275c9f35799422d818f34f814c76c2acd8c939a40c\u0027\n\n* commit \u00275c9f35799422d818f34f814c76c2acd8c939a40c\u0027:\n  Add a check to track a problem the monkey script has been triggering.\n"
    },
    {
      "commit": "6901625dcb847871e23f04b9a282dc5d313a1d57",
      "tree": "f38ba0c376ffef125ceb126c8223b5ba20153986",
      "parents": [
        "ab1b9612fc5ad9d98ff76b3eb18d9f48a295f13e",
        "1c1503cf47c0a37a30e7acac2c5d29140fc61a5f"
      ],
      "author": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Fri Sep 17 15:42:21 2010 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Fri Sep 17 15:42:21 2010 -0700"
      },
      "message": "am f30fae63: Merge \"Add a check to track a problem the monkey script has been triggering.\" into gingerbread\n\nMerge commit \u0027f30fae63389a2216faf55636b95a08f35b5c3620\u0027 into gingerbread-plus-aosp\n\n* commit \u0027f30fae63389a2216faf55636b95a08f35b5c3620\u0027:\n  Add a check to track a problem the monkey script has been triggering.\n"
    },
    {
      "commit": "1c1503cf47c0a37a30e7acac2c5d29140fc61a5f",
      "tree": "8ebe9e796b7773e7707155b70a51025e30b109d6",
      "parents": [
        "00998fbb52dfa78ac3a4b3706d64fc612926bfbc"
      ],
      "author": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Fri Sep 17 15:04:01 2010 -0700"
      },
      "committer": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Fri Sep 17 15:04:01 2010 -0700"
      },
      "message": "Add a check to track a problem the monkey script has been triggering.\n\nChange-Id: If3896946d993cbab2442e17740f18efd7e753a3b\n"
    },
    {
      "commit": "d5672bc7162fa49abf9bb5844195887e911aa7ce",
      "tree": "ba0f7753e3c77780ed1783c999512d0952384505",
      "parents": [
        "59d9e31c503e5c2f49448362a0d3a8f1150fb6c2"
      ],
      "author": {
        "name": "Nipun Kwatra",
        "email": "nkwatra@google.com",
        "time": "Thu Sep 16 22:25:23 2010 -0700"
      },
      "committer": {
        "name": "Nipun Kwatra",
        "email": "nkwatra@google.com",
        "time": "Fri Sep 17 13:19:13 2010 -0700"
      },
      "message": "Adding default profiles for specific levels.\n\nThe low and high profiles should each match one of the\nspecific profiles. So we need to add the specific profiles\ncorresponding to the low/high profiles. This makes the\ndefault profile compliant to documentation + cts.\n\nAlso fixed javadoc to account time lapse profiles.\n\nChange-Id: I34e7307d00ce261c69dc10ead2900025c7f6d428\n"
    },
    {
      "commit": "c59ad085c9737e8d56328732be6864de302acae9",
      "tree": "b16037bb38c65f41fa3b9e69d1860ecb68103b97",
      "parents": [
        "5441abc147d97f722d35fe71e7fbf41ce48a4944"
      ],
      "author": {
        "name": "Mike Lockwood",
        "email": "lockwood@android.com",
        "time": "Fri Sep 10 14:47:36 2010 -0400"
      },
      "committer": {
        "name": "Mike Lockwood",
        "email": "lockwood@android.com",
        "time": "Sun Sep 12 23:21:44 2010 -0400"
      },
      "message": "Media scanner support for tracking files of arbitrary type.\n\nThe native media scanner no longer filters files based on file extension.\nAudio, video, image and playlist files are handled as before, but non-media\nfiles are now inserted into the \"files\" table, which was originally added\nto support MTP.\n\nChange-Id: I9053218fb6d2671a3bb181405c34442b94678afc\nSigned-off-by: Mike Lockwood \u003clockwood@android.com\u003e\n"
    },
    {
      "commit": "9783ed8f85af3d7c72030098acfed7e1d6638349",
      "tree": "71456f82bd54f185c4a5d36febe650dc27878527",
      "parents": [
        "cc24f76ca5e8c987920d819c399c3eca11432f17"
      ],
      "author": {
        "name": "Nipun Kwatra",
        "email": "nkwatra@google.com",
        "time": "Fri Sep 10 15:45:57 2010 -0700"
      },
      "committer": {
        "name": "Nipun Kwatra",
        "email": "nkwatra@google.com",
        "time": "Fri Sep 10 18:01:46 2010 -0700"
      },
      "message": "Exposing specific profile levels + hasProfile().\n\n- Exposing the specific resolution profile levels\n  QUALITY_{QCIF,CIF,480P,720P,1080P} and the new time lapse profiles\n  QUALITY_TIME_LAPSE_{LOW,HIGH,QCIF,CIF,480P,720P,1080P}\n- Unhiding the hasProfile() function used to test if a given profile exists.\n\nChange-Id: I5d8b9e1ba61718f304235e76d85244e428e68643\n"
    },
    {
      "commit": "1a02fabca518806222212bdc708b36a37a7c3925",
      "tree": "8ea619369c8c1da888189f9cb02c4e47114891ea",
      "parents": [
        "a0d472f114bb6a74005aaf61e91e3569ae061630",
        "8bb5603cc735315c8691dc9b7a81b4ad4d6e253e"
      ],
      "author": {
        "name": "Nipun Kwatra",
        "email": "nkwatra@google.com",
        "time": "Fri Sep 10 15:04:17 2010 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Sep 10 15:04:17 2010 -0700"
      },
      "message": "Merge \"Adding hasProfile.\""
    },
    {
      "commit": "a0d472f114bb6a74005aaf61e91e3569ae061630",
      "tree": "49bd6d663b2a375dbd8ca2b280af9a5a902717da",
      "parents": [
        "275c732cd79a40617773636086b287901f8d4485",
        "c0a84782589eececdfa7e723e8aa0e572d0d79f5"
      ],
      "author": {
        "name": "Nipun Kwatra",
        "email": "nkwatra@google.com",
        "time": "Fri Sep 10 14:26:45 2010 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Sep 10 14:26:45 2010 -0700"
      },
      "message": "Merge \"Added specific resolution and time lapse profiles.\""
    },
    {
      "commit": "8bb5603cc735315c8691dc9b7a81b4ad4d6e253e",
      "tree": "e1b026cd15a4bf8cba990adee7c12969a4e55bd6",
      "parents": [
        "c0a84782589eececdfa7e723e8aa0e572d0d79f5"
      ],
      "author": {
        "name": "Nipun Kwatra",
        "email": "nkwatra@google.com",
        "time": "Thu Sep 09 16:25:08 2010 -0700"
      },
      "committer": {
        "name": "Nipun Kwatra",
        "email": "nkwatra@google.com",
        "time": "Fri Sep 10 14:22:11 2010 -0700"
      },
      "message": "Adding hasProfile.\n\n- Added hasProfile to CamcorderProfile and JNI.\n- Added hasCamcorderProfile to MediaProfiles.\n- using android.hardware.Camera.CAMERA_ID_DEFAULT for default camera\n  in get().\n\nChange-Id: Ib57bb49ae79492d7cbc0ec6c7b6efcbf74f80013\n"
    },
    {
      "commit": "c0a84782589eececdfa7e723e8aa0e572d0d79f5",
      "tree": "e1d1fa10c5696915e536bc603f7071d648f08e42",
      "parents": [
        "155e833a7a5fc3e193691324cf9326da1bc3289a"
      ],
      "author": {
        "name": "Nipun Kwatra",
        "email": "nkwatra@google.com",
        "time": "Mon Sep 06 15:59:02 2010 -0700"
      },
      "committer": {
        "name": "Nipun Kwatra",
        "email": "nkwatra@google.com",
        "time": "Fri Sep 10 14:22:08 2010 -0700"
      },
      "message": "Added specific resolution and time lapse profiles.\n\n- Added enums QUALITY_{QCIF,480P,720P,1080P}\n  QUALITY_TIME_LAPSE_{LOW,HIGH,QCIF,480P,720P,1080P} in CamcorderProfile\n  and corresponding ones in MediaProfiles.\n- Added functions createDefaultCamcorderTimeLapseLowProfile,\n  createDefaultCamcorderTimeLapseHighProfile to set default values.\n- Moved javadoc for constants to the get() function.\n\nChange-Id: Ib8b3f8d29395dff77a397d1e6b44cfaf8c481d4d\n"
    },
    {
      "commit": "83750eaf5a3f38c243a9e7eb81d4b2421e3a0d88",
      "tree": "3e986eeeff4dd2f5d7cb9ddb3c90a714be495f2e",
      "parents": [
        "9f2d258645826c999a93a4206df157fec2e3b0f2"
      ],
      "author": {
        "name": "Jamie Gennis",
        "email": "jgennis@google.com",
        "time": "Mon Aug 30 16:48:38 2010 -0700"
      },
      "committer": {
        "name": "Jamie Gennis",
        "email": "jgennis@google.com",
        "time": "Fri Sep 03 14:32:42 2010 -0700"
      },
      "message": "Add the new Stagefright ANativeWindow OMX codec API.\n\nThis change defines the two OMX_SetParameter calls that enable OMX codecs to\ninteract with ANativeWindows.  It also adds the plumbing to the IOMX, OMX, and\nOMXNodeInstance classes to use these new APIs.\n\nThis is try 2 for this change, after reverting the first one because it broke\nthe build.\n\nChange-Id: I94249b72bdb5d5719360f03d7935fcca4ece5028\n"
    },
    {
      "commit": "9f2d258645826c999a93a4206df157fec2e3b0f2",
      "tree": "02958abbfd19bf49e1235955bd20431cdd3b878e",
      "parents": [
        "9dd4931cca8e4a2fcbcabf4eb7078648e1c029cd"
      ],
      "author": {
        "name": "Jamie Gennis",
        "email": "jgennis@google.com",
        "time": "Wed Sep 01 14:32:35 2010 -0700"
      },
      "committer": {
        "name": "Jamie Gennis",
        "email": "jgennis@google.com",
        "time": "Wed Sep 01 14:32:35 2010 -0700"
      },
      "message": "Revert \"Merge \"Add the new Stagefright ANativeWindow OMX codec API.\"\"\n\nThis reverts commit 8a643b411e1802977f742709113ce01b06a18e12, reversing\nchanges made to 73ea9beaf8eb3d0027e78cbc0ac5e626c3f8deb4.\n"
    },
    {
      "commit": "9dd4931cca8e4a2fcbcabf4eb7078648e1c029cd",
      "tree": "df6ceb231b59e5ae6bc522863e0701d6f1b1d8e3",
      "parents": [
        "56f2c6e529bc62d55fc8baa7d1b52326307474d4",
        "559dc605bfe2deb73ad718e0d5c5dc55e27c45df"
      ],
      "author": {
        "name": "Jamie Gennis",
        "email": "jgennis@google.com",
        "time": "Wed Sep 01 14:00:33 2010 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Sep 01 14:00:33 2010 -0700"
      },
      "message": "Merge \"Add the new Stagefright ANativeWindow OMX codec API.\""
    },
    {
      "commit": "559dc605bfe2deb73ad718e0d5c5dc55e27c45df",
      "tree": "c98ca8836231a2cb5332e67f866f38ab9c811f4e",
      "parents": [
        "53bfd693c45278bf71cb5e184ffd3e95d52e04d8"
      ],
      "author": {
        "name": "Jamie Gennis",
        "email": "jgennis@google.com",
        "time": "Mon Aug 30 16:48:38 2010 -0700"
      },
      "committer": {
        "name": "Jamie Gennis",
        "email": "jgennis@google.com",
        "time": "Wed Sep 01 13:07:08 2010 -0700"
      },
      "message": "Add the new Stagefright ANativeWindow OMX codec API.\n\nThis change defines the two OMX_SetParameter calls that enable OMX codecs to\ninteract with ANativeWindows.  It also adds the plumbing to the IOMX, OMX, and\nOMXNodeInstance classes to use these new APIs.\n\nChange-Id: Ibfbf893dc3513db0b3d3221bec5708c77287cddc\n"
    },
    {
      "commit": "5d6aca5d86e86af3f8f597be573d4563d69ceb85",
      "tree": "88eb64d7aa763ab24c7eda54b0817740781d4bea",
      "parents": [
        "9c075bca0b75093ca0514a3c8f74d73c8e9e83fd"
      ],
      "author": {
        "name": "Nipun Kwatra",
        "email": "nkwatra@google.com",
        "time": "Thu Aug 26 17:20:53 2010 -0700"
      },
      "committer": {
        "name": "Nipun Kwatra",
        "email": "nkwatra@google.com",
        "time": "Tue Aug 31 10:38:49 2010 -0700"
      },
      "message": "Added setAuxiliaryOutputFile to MediaRecorder and JNI\n\nadded setAuxiliaryOutputFile to allow setting of an auxiliary output file.\nAlso added the JNI support.\n\nChange-Id: I8c3335192bd6f7fcbfdfc8552cfd0848f2ad2a5d\n"
    },
    {
      "commit": "6865ddb29fc7e7a14104d73c65b71074502bb6c7",
      "tree": "01097ef8ec82e9cc7fb409d33232b0d9bda568e9",
      "parents": [
        "d0e5b406dd0f86b01b3f550fbb894a7492454da2",
        "eebcf36cf2db2563af8ef479e01747321aa959e8"
      ],
      "author": {
        "name": "Chia-chi Yeh",
        "email": "chiachi@android.com",
        "time": "Tue Aug 31 10:10:20 2010 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Tue Aug 31 10:10:20 2010 -0700"
      },
      "message": "am 1577e629: am 12006013: fixedfft: Only includes cpu-features.h when __arm__ is defined.\n\nMerge commit \u00271577e629866b2700e31c9467478e05ebffcc69a1\u0027\n\n* commit \u00271577e629866b2700e31c9467478e05ebffcc69a1\u0027:\n  fixedfft: Only includes cpu-features.h when __arm__ is defined.\n"
    },
    {
      "commit": "eebcf36cf2db2563af8ef479e01747321aa959e8",
      "tree": "dd2134fbd52e09dfce2874cc59505d97fdac150a",
      "parents": [
        "d81ef83a493a27887b795fdf9ece391155779914",
        "5edae619a6ad7337a3d14b53f7665ff17ec3ee84"
      ],
      "author": {
        "name": "Chia-chi Yeh",
        "email": "chiachi@android.com",
        "time": "Mon Aug 30 22:06:39 2010 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Mon Aug 30 22:06:39 2010 -0700"
      },
      "message": "am 12006013: fixedfft: Only includes cpu-features.h when __arm__ is defined.\n\nMerge commit \u002712006013cc2cd0a076855ed068f5f782b24631c3\u0027 into gingerbread-plus-aosp\n\n* commit \u002712006013cc2cd0a076855ed068f5f782b24631c3\u0027:\n  fixedfft: Only includes cpu-features.h when __arm__ is defined.\n"
    },
    {
      "commit": "5edae619a6ad7337a3d14b53f7665ff17ec3ee84",
      "tree": "8b798b2d81f41ef82b9c1eb701b0243b48e8e822",
      "parents": [
        "5d5f5dfcc16756fe80a7c46cff0949fce9d54fe9"
      ],
      "author": {
        "name": "Chia-chi Yeh",
        "email": "chiachi@android.com",
        "time": "Tue Aug 31 12:56:01 2010 +0800"
      },
      "committer": {
        "name": "Chia-chi Yeh",
        "email": "chiachi@android.com",
        "time": "Tue Aug 31 12:56:01 2010 +0800"
      },
      "message": "fixedfft: Only includes cpu-features.h when __arm__ is defined.\n\nChange-Id: Ifb6c03b38eff3c94a507ceb5043fcc48b364c25c\n"
    },
    {
      "commit": "e7c0899a7b7549ea342af67e7ab525f81672cfa5",
      "tree": "cad1c4a45254d4261f17c2ca71faea19b14b4fd9",
      "parents": [
        "17c53d433cd83d6b7d77e80635d6d58e2f6f5b2e",
        "dd8b35d2f7911bb1e12010f143c5b8c1b621f2ed"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Wed Aug 25 10:41:55 2010 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Wed Aug 25 10:41:55 2010 -0700"
      },
      "message": "am 74ede9e4: am 67b50606: Merge \"Fix the simulator build.\" into gingerbread\n\nMerge commit \u002774ede9e4fd3f5ab3c139abd95a22abf9f33c2d64\u0027\n\n* commit \u002774ede9e4fd3f5ab3c139abd95a22abf9f33c2d64\u0027:\n  Fix the simulator build.\n"
    },
    {
      "commit": "dd8b35d2f7911bb1e12010f143c5b8c1b621f2ed",
      "tree": "e77993106962eabf522259f9a23a0a421b1a5118",
      "parents": [
        "b00a1e3f7e415c72b6ff6d2073b5b78c0d39e0ee",
        "625981ec8417528cbea67c86dcbe32a9e79a79be"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Wed Aug 25 10:39:21 2010 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Wed Aug 25 10:39:21 2010 -0700"
      },
      "message": "am 67b50606: Merge \"Fix the simulator build.\" into gingerbread\n\nMerge commit \u002767b506065e9fe3c56e3d1b47eedfa01170d574f9\u0027 into gingerbread-plus-aosp\n\n* commit \u002767b506065e9fe3c56e3d1b47eedfa01170d574f9\u0027:\n  Fix the simulator build.\n"
    },
    {
      "commit": "625981ec8417528cbea67c86dcbe32a9e79a79be",
      "tree": "1e76d0c94d1a34ebdfe57a6c2921b5a42c28481b",
      "parents": [
        "fce49325d807c278229a594c1cc866e21da0e155"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Wed Aug 25 10:00:53 2010 -0700"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Wed Aug 25 10:00:53 2010 -0700"
      },
      "message": "Fix the simulator build.\n\nFixes the sim build broken by commit 58d3bd08107f44cba79938dd8430e69c0fda4202.\n\nChange-Id: I5a63623363d558783dc5254fdd322080cc2f3525\n"
    },
    {
      "commit": "ef6c8c0324be75dfac3d6a4025ec3b3a7ca23826",
      "tree": "d4eeed32146739c6ca3e03c723a146e13368d0d5",
      "parents": [
        "515c0a56b6fbcca18a08f0daac7be278dede46d0",
        "7be0434ce8d4139e9ca4b1f374153de0c75ac049"
      ],
      "author": {
        "name": "Chia-chi Yeh",
        "email": "chiachi@android.com",
        "time": "Tue Aug 24 11:19:28 2010 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Tue Aug 24 11:19:28 2010 -0700"
      },
      "message": "am a102871c: am b80e610b: Merge \"Visualizer: replace the FFT implementation with a faster one.\" into gingerbread\n\nMerge commit \u0027a102871c7cbb74ebddc53231a871145de61351b0\u0027\n\n* commit \u0027a102871c7cbb74ebddc53231a871145de61351b0\u0027:\n  Visualizer: replace the FFT implementation with a faster one.\n"
    },
    {
      "commit": "4b79168835965cf0fc41ebe2a367e22b4cb20d08",
      "tree": "d70a673d243fdc72171ecbcf51094554f947987a",
      "parents": [
        "82252a9a732c7325166c36589c1dfa9f2cb8ac04"
      ],
      "author": {
        "name": "Jamie Gennis",
        "email": "jgennis@google.com",
        "time": "Tue Aug 10 16:37:53 2010 -0700"
      },
      "committer": {
        "name": "Jamie Gennis",
        "email": "jgennis@google.com",
        "time": "Mon Aug 23 14:31:30 2010 -0700"
      },
      "message": "Change the framework to use the new camera preview path.\n\nThis change makes the camera HAL interface take an ANativeWindow interface from\nwhich all the camera preview buffers will be allocated.  The framework code\nrunning in application processes now passes a Surface object rather than an\nISurface to the camera server via Binder when setting the preview surface.  The\ncamera server then forwards that Surface object (which implements the\nANativeWindow interface) to the camera HAL, which uses it to communicate with\nSurfaceFlinger to allocate the camera preview buffers.\n\nChange-Id: Ie438f721559cd7de5e4f848a26d96360dda07b5f\n"
    },
    {
      "commit": "5daeb129a2c2ba3d14ccd94af283b5f561c783ea",
      "tree": "c3e0f59fefcdb20b92e9a2fc5da59a7cf4b1464f",
      "parents": [
        "a0ced19fa96f26a25de708588a34ebfd452f250e"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Mon Aug 16 08:49:37 2010 -0700"
      },
      "committer": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Mon Aug 23 12:30:24 2010 -0700"
      },
      "message": "Squashed commit of the following:\n\ncommit 35cc68814a9537c31fde146e171e7b0bbdfe211e\nAuthor: Andreas Huber \u003candih@google.com\u003e\nDate:   Mon Aug 16 08:48:42 2010 -0700\n\n    Only enable support for yuv to yuv conversion on passion, where it\u0027s available, use the slower yuv-\u003ergb565 path everywhere else.\n\ncommit d8ac5a8814103e60d11d2acf61997fc31a1dc58d\nAuthor: Andreas Huber \u003candih@google.com\u003e\nDate:   Fri Aug 13 13:56:44 2010 -0700\n\n    The software renderer takes over all rendering, converting from yuv to yuv if possible and rgb565 otherwise.\n\ncommit 684972074b74318bdcb826ed9b5b0864d2d2e273\nAuthor: Andreas Huber \u003candih@google.com\u003e\nDate:   Fri Aug 13 09:34:35 2010 -0700\n\n    A first shot at supporting the new rendering APIs.\n\nChange-Id: Iea9b32856da46950501f1a700f616b5feac710fd\n"
    },
    {
      "commit": "7be0434ce8d4139e9ca4b1f374153de0c75ac049",
      "tree": "c9d9ff1108ae6f6f6197140add461abbe6d47df7",
      "parents": [
        "36d8ab8fdf183a2a025e93ba78aaed92c55d6586",
        "482482401095d5fc98f89b4a3ce43d41c00fffd7"
      ],
      "author": {
        "name": "Chia-chi Yeh",
        "email": "chiachi@android.com",
        "time": "Sun Aug 22 18:38:29 2010 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Sun Aug 22 18:38:29 2010 -0700"
      },
      "message": "am b80e610b: Merge \"Visualizer: replace the FFT implementation with a faster one.\" into gingerbread\n\nMerge commit \u0027b80e610b070c2cec98a228a8aec450dc24a5f90a\u0027 into gingerbread-plus-aosp\n\n* commit \u0027b80e610b070c2cec98a228a8aec450dc24a5f90a\u0027:\n  Visualizer: replace the FFT implementation with a faster one.\n"
    },
    {
      "commit": "dbd2b7e4ebfe7a586b1db4459cf6aa032a7f8719",
      "tree": "bc9a06e98f9142ff531a62892b0685f75040f685",
      "parents": [
        "e259531ce59ab1f31de5a23124b22536f6a5a767"
      ],
      "author": {
        "name": "Chia-chi Yeh",
        "email": "chiachi@android.com",
        "time": "Thu Aug 19 15:34:10 2010 +0800"
      },
      "committer": {
        "name": "Chia-chi Yeh",
        "email": "chiachi@android.com",
        "time": "Thu Aug 19 16:05:32 2010 +0800"
      },
      "message": "Visualizer: replace the FFT implementation with a faster one.\n\nThis implementation uses fixed points instead of floating points. It\nis slightly inaccurate compared to the old one but still perfect for\nvisualization purpose. It runs 40% faster on passion, 5 times faster\non sholes, and of course 14 times faster on sapphire.\n\nChange-Id: I1e868417bcffda091becf106a7b941d02813faec\n"
    },
    {
      "commit": "4a3935898893f955403021fe41cf2bfa3a32dde2",
      "tree": "c5d7fc3e8a6d2962fcc977f1daea834f23b24588",
      "parents": [
        "e246a940426d418b99cf62c547c7a2093811f2fb",
        "f1a97e53a58f47afa17a9b0d3a5cc9abf7e5ed19"
      ],
      "author": {
        "name": "Jean-Baptiste Queru",
        "email": "jbq@google.com",
        "time": "Tue Aug 17 15:24:11 2010 -0700"
      },
      "committer": {
        "name": "Jean-Baptiste Queru",
        "email": "jbq@google.com",
        "time": "Tue Aug 17 15:24:11 2010 -0700"
      },
      "message": "resolved conflicts for merge of 0b7bd95d to gingerbread-plus-aosp\n\nChange-Id: I55c1689c7d0737c943efec28d8164d6a5360621c\n"
    },
    {
      "commit": "f1a97e53a58f47afa17a9b0d3a5cc9abf7e5ed19",
      "tree": "3df09313917fb6d83fd44dc02260db9793efa755",
      "parents": [
        "01cff464978aa0f749f42650180b45ea56cb17de"
      ],
      "author": {
        "name": "Rene Bolldorf",
        "email": "xsecute@googlemail.com",
        "time": "Tue Aug 17 23:32:58 2010 +0200"
      },
      "committer": {
        "name": "Rene Bolldorf",
        "email": "xsecute@googlemail.com",
        "time": "Tue Aug 17 23:45:14 2010 +0200"
      },
      "message": "Fix compilation errors in libmedia, libstagefright.\n(invalid conversion from \u0027const char*\u0027 to \u0027char*\u0027)\n\nChange-Id: Idef85606b7cff629b2778ed8134c79c892af54c2\n"
    },
    {
      "commit": "2dac90da3ea5120b52844a6ee38c300301de5756",
      "tree": "e1f63e3ee3b057b935a9be9ebb4aaf985688821a",
      "parents": [
        "047be32ec88dd04a9aca23fa59773fe2eaccb8f8",
        "debd76c4a934c98a88850f0a50a30d3f01394eb7"
      ],
      "author": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Thu Aug 12 09:32:18 2010 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Thu Aug 12 09:32:18 2010 -0700"
      },
      "message": "am 0386d04b: am 581581fe: Merge \"Fix all fd leaks in authoring engine\" into gingerbread\n\nMerge commit \u00270386d04b19619b03b6bce830010e11d31d3f8a5c\u0027\n\n* commit \u00270386d04b19619b03b6bce830010e11d31d3f8a5c\u0027:\n  Fix all fd leaks in authoring engine\n"
    },
    {
      "commit": "25d83125cee222993673d3ba261ae1186bcad8c2",
      "tree": "ff9cb1abe9343695635b261a2c24906baba9794f",
      "parents": [
        "eaf0e0786c4c21d6c63d8f1f4515cb2a5311493b"
      ],
      "author": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Wed Aug 11 17:12:39 2010 -0700"
      },
      "committer": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Wed Aug 11 17:18:30 2010 -0700"
      },
      "message": "Fix all fd leaks in authoring engine\n\nChange-Id: I17798543f9dd41cc8bef6f6086e66932f9f97be8\n"
    },
    {
      "commit": "bc417c0531332635df9525df4683274a08fb987f",
      "tree": "31bd0fa84c97515e46abddc36f2884fc2fd3a338",
      "parents": [
        "2bb8c0e7c4e4093f4161ff5e98cef51c87193859",
        "bcc4fdd9de1b0f6b645c663f98bda838bd41242d"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Mon Aug 09 20:00:11 2010 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Mon Aug 09 20:00:11 2010 -0700"
      },
      "message": "am 1ece7d68: am 2a6b80bc: Fixed several audio effects problems.\n\nMerge commit \u00271ece7d6873027068a3e7b055597045e9387b217c\u0027\n\n* commit \u00271ece7d6873027068a3e7b055597045e9387b217c\u0027:\n  Fixed several audio effects problems.\n"
    },
    {
      "commit": "8569f0d3bf4c6787707e348a7cf73b9c4199cb32",
      "tree": "6e2ce2c28fe5fba3b8cafd9375244bc6f658632d",
      "parents": [
        "8bf59e735760af0b6a85747fd90bf8cf1e5388d7"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Thu Jul 29 23:43:43 2010 -0700"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Mon Aug 09 05:48:20 2010 -0700"
      },
      "message": "Fixed several audio effects problems.\n\n- Fixed constant inversions in AudioEffect.java\n- Do not return error when enabling an already enabled effect\n- Update cached effect state in native AudioEffect class when effect is enabled/disabled by command() method\n- Remove click when restarting effect during disable sequence\n- Fixed problem in master mute management when volume control is delegated to effect.\n\nChange-Id: I6df4ce9fcc54fdc7345df858f639d20d802d6712\n"
    },
    {
      "commit": "982a93173bc84f005172152d823cbb59dfcbeb12",
      "tree": "2ef94049c4daadc6b4da5a3d6c93c04d99d08d05",
      "parents": [
        "aa68b49a53a874a1813e65752663f19d18149e2c",
        "347d3c1dabd7ae9c998a024c685de2001e0ff369"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Thu Aug 05 11:46:04 2010 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Thu Aug 05 11:46:04 2010 -0700"
      },
      "message": "am 1f513d88: am c17f35dd: Merge \"Support for Gtalk video, includes AMR/H.263 assembler and packetization support, extensions to MediaRecorder to stream via RTP over a pair of UDP sockets as well as various fixes to the RTP implementation.\" into gingerbread\n\nMerge commit \u00271f513d8821670a33d6361ea521b6756163a3f9bf\u0027\n\n* commit \u00271f513d8821670a33d6361ea521b6756163a3f9bf\u0027:\n  Support for Gtalk video, includes AMR/H.263 assembler and packetization support, extensions to MediaRecorder to stream via RTP over a pair of UDP sockets as well as various fixes to the RTP implementation.\n"
    },
    {
      "commit": "aa68b49a53a874a1813e65752663f19d18149e2c",
      "tree": "b906d41ef13bdcb8ca79b6aee5d7458fcc273e33",
      "parents": [
        "154898f4e6e3f898eacfd699a45f611b0c1b7c9a",
        "b9ad87ca9a18e28436e8634e95d9715b32b07faf"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Thu Aug 05 11:43:45 2010 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Thu Aug 05 11:43:45 2010 -0700"
      },
      "message": "am eec3fca6: am 7629e8dd: Merge \"Fix issue 2876124.\" into gingerbread\n\nMerge commit \u0027eec3fca6277296f354ee2b1af0f4b3dceddb3067\u0027\n\n* commit \u0027eec3fca6277296f354ee2b1af0f4b3dceddb3067\u0027:\n  Fix issue 2876124.\n"
    },
    {
      "commit": "39ddf8e0f18766f7ba1e3246b774aa6ebd93eea8",
      "tree": "87f5d0d68c1779f113843e939c41440ff6b00389",
      "parents": [
        "610959a52fe22a88e50d158f5f5f492fee4f1921"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Wed Aug 04 10:14:30 2010 -0700"
      },
      "committer": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Wed Aug 04 11:49:24 2010 -0700"
      },
      "message": "Support for Gtalk video, includes AMR/H.263 assembler and packetization support, extensions to MediaRecorder to stream via RTP over a pair of UDP sockets as well as various fixes to the RTP implementation.\n\nChange-Id: I95b8dd487061add9bade15749e563b01cd99d9a6\n"
    },
    {
      "commit": "3b26844e60f8487388e7e62709faf0dada86e7e1",
      "tree": "2a6ed3d8b121bfb1dd5bd443ae46e268dfbfd438",
      "parents": [
        "a5740924c0a71871f2697139effd43b137750597"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Tue Aug 03 07:49:49 2010 -0700"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Wed Aug 04 05:38:56 2010 -0700"
      },
      "message": "Fix issue 2876124.\n\nAllow calls to MediaPlayer::notify() in idle state to signal errors from JNI.\n\nChange-Id: I1515fe69766f0a926b76e15c4971317da2acd6a0\n"
    },
    {
      "commit": "9da2070b6d6d20550de7da61478c325f0928d020",
      "tree": "f1548891fab33ca03923f70cf25a2ffeab50be82",
      "parents": [
        "3be9523784cc4038f601e510faee595117cdacb3",
        "efe6039f71e9bac2138003b3287e94a7ab7e5c55"
      ],
      "author": {
        "name": "Jean-Baptiste Queru",
        "email": "jbq@google.com",
        "time": "Fri Jul 30 12:08:31 2010 -0700"
      },
      "committer": {
        "name": "Jean-Baptiste Queru",
        "email": "jbq@google.com",
        "time": "Fri Jul 30 12:08:31 2010 -0700"
      },
      "message": "resolved conflicts for merge of 27eecb70 to gingerbread\n\nChange-Id: If064f2f4950fc1a4ff38e6927fe2120af76b26f1\n"
    },
    {
      "commit": "bc286dce1af6670824fba4167e0750b631168d72",
      "tree": "f6d30ddc5cee2a6562bb510d7bacf20806b9f9bb",
      "parents": [
        "c4e47d1e81c4e4403663cb911e98dbf3ada9942c",
        "0319aaecb03aa83924ab4e3d9c9bc657c2e8bc06"
      ],
      "author": {
        "name": "Jean-Baptiste Queru",
        "email": "jbq@google.com",
        "time": "Thu Jul 29 17:54:42 2010 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Thu Jul 29 17:54:42 2010 -0700"
      },
      "message": "am 0c51c98f: am 4506c62a: fix inaccurate copyrights\n\nMerge commit \u00270c51c98fd9edf0bdc8f2c567470fc332b5ae3adf\u0027\n\n* commit \u00270c51c98fd9edf0bdc8f2c567470fc332b5ae3adf\u0027:\n  fix inaccurate copyrights\n"
    },
    {
      "commit": "0319aaecb03aa83924ab4e3d9c9bc657c2e8bc06",
      "tree": "7c3ae3eecc16c50c794aff141a89b14942117364",
      "parents": [
        "0895d83cb62d269468e64a00e9e89fa7697f2f84",
        "01cff464978aa0f749f42650180b45ea56cb17de"
      ],
      "author": {
        "name": "Jean-Baptiste Queru",
        "email": "jbq@google.com",
        "time": "Thu Jul 29 17:52:09 2010 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Thu Jul 29 17:52:09 2010 -0700"
      },
      "message": "am 4506c62a: fix inaccurate copyrights\n\nMerge commit \u00274506c62abd5767d6d42a97e8e87793a1b3bcb625\u0027 into gingerbread-plus-aosp\n\n* commit \u00274506c62abd5767d6d42a97e8e87793a1b3bcb625\u0027:\n  fix inaccurate copyrights\n"
    },
    {
      "commit": "68335fdd6e9c1d622384612605d6952503cb7fd0",
      "tree": "94e9982f93be7339bde4d8b9336f9968f5509efd",
      "parents": [
        "e32283b15bbd60179424bdc740a4e4932da4c61e"
      ],
      "author": {
        "name": "Jean-Baptiste Queru",
        "email": "jbq@google.com",
        "time": "Thu Jul 29 17:35:37 2010 -0700"
      },
      "committer": {
        "name": "Jean-Baptiste Queru",
        "email": "jbq@google.com",
        "time": "Thu Jul 29 17:41:35 2010 -0700"
      },
      "message": "fix inaccurate copyrights\n\nChange-Id: I33b0f68f2da34ca4728211d83159cf32a127f6dd\n"
    },
    {
      "commit": "01cff464978aa0f749f42650180b45ea56cb17de",
      "tree": "a31c8e61281d0bbcbec93d0ab05368f73ab85994",
      "parents": [
        "ccaa41429d2afc47f0fb828a0146a1b1936188fe"
      ],
      "author": {
        "name": "Jean-Baptiste Queru",
        "email": "jbq@google.com",
        "time": "Thu Jul 29 17:35:37 2010 -0700"
      },
      "committer": {
        "name": "Jean-Baptiste Queru",
        "email": "jbq@google.com",
        "time": "Thu Jul 29 17:35:37 2010 -0700"
      },
      "message": "fix inaccurate copyrights\n\nChange-Id: I33b0f68f2da34ca4728211d83159cf32a127f6dd\n"
    },
    {
      "commit": "ed0de3c123aaa86147993721d4794648a65aab75",
      "tree": "c60dc3ffbc36f10adfe01d864e22f1d5b87443d4",
      "parents": [
        "da90dff17b6ce79d0a7d8ab2dbe2aa69cd1c11aa",
        "e99819aa8cc397d02255b59b91c6e6850afee3a7"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Wed Jul 28 07:53:24 2010 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Wed Jul 28 07:53:24 2010 -0700"
      },
      "message": "am 6fa88882: am 62d83a0c: Merge \"Audio effects: modified command() parameter types.\" into gingerbread\n\nMerge commit \u00276fa8888254deb4961dc64c6ac03dc103c9cd8bcf\u0027\n\n* commit \u00276fa8888254deb4961dc64c6ac03dc103c9cd8bcf\u0027:\n  Audio effects: modified command() parameter types.\n"
    },
    {
      "commit": "25f4395b932fa9859a6e91ba77c5d20d009da64a",
      "tree": "01098a211d6c782708b840c28ebd396a6eb72a7b",
      "parents": [
        "23e1de74359f4bb1763aef0adfebe073122b032c"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Wed Jul 28 05:40:18 2010 -0700"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Wed Jul 28 05:49:21 2010 -0700"
      },
      "message": "Audio effects: modified command() parameter types.\n\nThe type of the cmd, cmdSize and *pReplySize parameters of the effect control interface command()\nfunction have been modified from int to uint32_t. This is more consistent with their role.\n\nChange-Id: I84d289fc262d6753747910f06f485597dfee6591\n"
    },
    {
      "commit": "71ff94cb52874e42dede3c6bc4b86757b72cf0b1",
      "tree": "dc47a5d309669d92854762df8fdc948668228ebf",
      "parents": [
        "932e0a11d74d5e236ccef9ee314442385c3d4e9d",
        "552f4053c194770a5c9b37825f222031548dc5a8"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Wed Jul 21 09:52:17 2010 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Wed Jul 21 09:52:17 2010 -0700"
      },
      "message": "am 34161132: am 7070b365: Added support for auxiliary audio effects to AudioTrack and MediaPlayer.\n\nMerge commit \u002734161132030254bac7dd64c9713832e2f961a061\u0027\n\n* commit \u002734161132030254bac7dd64c9713832e2f961a061\u0027:\n  Added support for auxiliary audio effects to AudioTrack and MediaPlayer.\n"
    },
    {
      "commit": "2beeb50b1bba9e92f6cacfeca37fe9fa9d36ead1",
      "tree": "ce966d62f6fbb94178763ec53760f6961ffffd58",
      "parents": [
        "3108231d90e8aa324923fd8864ca2477948c5d25"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Fri Jul 16 07:43:46 2010 -0700"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Wed Jul 21 06:28:01 2010 -0700"
      },
      "message": "Added support for auxiliary audio effects to AudioTrack and MediaPlayer.\n\nAdded methods to AudioTrack and MediaPlayer java classes to enable use of\nauxiliary audio effects. The effect can be attached and detached by specifying its\nID and the send level controlled.\n\nChange-Id: Ie74ff54a453096a742688476f612ce355543b6f3\n"
    },
    {
      "commit": "8184a5734690b30f4de0f6b6c16daf1e089f67df",
      "tree": "e3fbbdace9d5b0193130827d77558ad9db51a536",
      "parents": [
        "7a42770f47225483a885b168d05e81b6a81189c0",
        "45239b5fa6bf75d76bd5e603b443bd68502345f5"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Tue Jul 20 13:37:19 2010 -0700"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Tue Jul 20 13:37:19 2010 -0700"
      },
      "message": "resolved conflicts for merge of dd206093 to master\n\nChange-Id: I21dd2321a4839d034d49092baccbf40986f17dae\n"
    },
    {
      "commit": "de070137f11d346fba77605bd76a44c040a618fc",
      "tree": "ba741240b391a66899514061ccda38254e539013",
      "parents": [
        "f997cabca292d70d078ae828e21c28e6df62995f"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Tue Jul 13 04:45:46 2010 -0700"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Tue Jul 20 10:31:57 2010 -0700"
      },
      "message": "Audio policy manager changes for audio effects\n\nAdded methods for audio effects management by audio policy manager.\n- control of total CPU load and memory used by effect engines\n- selection of output stream for global effects\n- added audio session id in parameter list for startOutput() and stopOutput().\nthis is not used in default audio policy manager implementation.\n\nModifications of audio effect framework in AudioFlinger to allow moving and reconfiguring\neffect engines from one output mixer thread to another when audio tracks in the same session\nare moved or when requested by audio policy manager.\nAlso fixed mutex deadlock problem with effect chains locks.\n\nChange-Id: Ida43484b06e9b890d6b9e53c13958d042720ebdb\n"
    },
    {
      "commit": "4e2ffa400b82559cab2c5717c8dcdff393d334a9",
      "tree": "87f5e496695e2d9a2f411916b7e4b6b66317067e",
      "parents": [
        "8065e2056073808716db32136d7acfd50eeab924"
      ],
      "author": {
        "name": "Mike Lockwood",
        "email": "lockwood@android.com",
        "time": "Thu Jul 15 14:58:25 2010 -0400"
      },
      "committer": {
        "name": "Mike Lockwood",
        "email": "lockwood@android.com",
        "time": "Thu Jul 15 15:02:52 2010 -0400"
      },
      "message": "Fixes for simulator build on lucid\n\nstrchr and strrchr now return const char* instead of char*\n\nChange-Id: I5ca831b8951af7e6306eb9d9d6f78ed2ec13d649\nSigned-off-by: Mike Lockwood \u003clockwood@android.com\u003e\n"
    },
    {
      "commit": "66e6c1c85c33194b1a6fc5077bd78b53a5fe9d03",
      "tree": "158c3288b8488031ef0803bd01c6cc998bd31fb6",
      "parents": [
        "31e179a6f1c154f5b8c80c0fb9451703c6839c9c",
        "b2761bde67a46a0375e6b606f3ece1af83834e43"
      ],
      "author": {
        "name": "Jean-Michel Trivi",
        "email": "jmtrivi@google.com",
        "time": "Fri Jul 09 12:34:03 2010 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Fri Jul 09 12:34:03 2010 -0700"
      },
      "message": "am bd3f8b71: am e7b790f1: Merge \"Fix swap of sessionId and output in audio effect API.\" into gingerbread\n\nMerge commit \u0027bd3f8b711643a172703537e34a0fa7c21c5b953f\u0027\n\n* commit \u0027bd3f8b711643a172703537e34a0fa7c21c5b953f\u0027:\n  Fix swap of sessionId and output in audio effect API.\n"
    },
    {
      "commit": "42a050ff9636b79e4b91297cc41028ffd62240d5",
      "tree": "b21b32fc96b50f197579ee43ec8bee95d1c0bcf4",
      "parents": [
        "6c5c25fae5aa68a52c6fa75649dd559a9ca98932"
      ],
      "author": {
        "name": "Jean-Michel Trivi",
        "email": "jmtrivi@google.com",
        "time": "Fri Jul 09 12:11:49 2010 -0700"
      },
      "committer": {
        "name": "Jean-Michel Trivi",
        "email": "jmtrivi@google.com",
        "time": "Fri Jul 09 12:11:49 2010 -0700"
      },
      "message": "Fix swap of sessionId and output in audio effect API.\n\nChange-Id: Idc93415efef92087507401e50cfb235a6f1f7ed7\n"
    },
    {
      "commit": "6506bd2be256cdebc69324714c5b26c767981046",
      "tree": "68a4a39aafbe9aaa9d05d30735651c9a0087d10e",
      "parents": [
        "bf21177ccede8f01c0da0bd53392a289a5a84462",
        "14eb28444b40d76d490a184a27acbc0de95534b3"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Wed Jul 07 20:55:40 2010 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Wed Jul 07 20:55:40 2010 -0700"
      },
      "message": "am b91881fd: am dacabf97: Merge \"Added Visualizer effect.\" into gingerbread\n\nMerge commit \u0027b91881fdd1608cc922f105ec552b5505da1fecb9\u0027\n\n* commit \u0027b91881fdd1608cc922f105ec552b5505da1fecb9\u0027:\n  Added Visualizer effect.\n"
    },
    {
      "commit": "6c5c25fae5aa68a52c6fa75649dd559a9ca98932",
      "tree": "825ab3a8deb612c3eb8daae783670d1273c64521",
      "parents": [
        "8cafde196d36ab207f35fed89b9c1b9d468abb58",
        "da7581b7b61b84f15e8d671c86fd117c322b009e"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Wed Jul 07 16:23:30 2010 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Jul 07 16:23:30 2010 -0700"
      },
      "message": "Merge \"Added Visualizer effect.\" into gingerbread"
    },
    {
      "commit": "da7581b7b61b84f15e8d671c86fd117c322b009e",
      "tree": "61fb39ca1eaa0a5b8a71d70683f32d238a8e74e7",
      "parents": [
        "215381ea729086b8359b7f59bdc2bd7cf55a0c45"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Fri Jul 02 08:12:41 2010 -0700"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Wed Jul 07 11:00:28 2010 -0700"
      },
      "message": "Added Visualizer effect.\n\nThe visualizer enables application to retrieve part of the currently playing audio for visualization purpose.\nIt is not an audio recording interface and only returns partial and low quality audio content as a waveform or\na frequency representation (FFT).\n\nRemoved temporary hack made in MediaPlayer for animated wall papers based on audio visualization (snoop() method.\n\nThis commit also includes a change in AudioEffect class:\n - the enable()/disable() methods have been replaced bya more standard setEnabled() method.\n - some fixes in javadoc\n\nChange-Id: Id092a1340e9e38dae68646ade7be054e3a36980e\n"
    },
    {
      "commit": "c143929b9f40112bb75eefbeafd6a56515868c9d",
      "tree": "29c294c04c659a673978b771b42535bdf762c74f",
      "parents": [
        "cff0ef94eccba9ce2f72380a238793f1702474b7",
        "b0c62ef4ca6f30f3332e014f4fa7dc6c273c3e4d"
      ],
      "author": {
        "name": "Chih-Chung Chang",
        "email": "chihchung@google.com",
        "time": "Thu Jul 01 11:55:27 2010 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Thu Jul 01 11:55:27 2010 -0700"
      },
      "message": "am bda93c4c: am 09b90057: Add multiple camera support for in MediaProfiles.\n\nMerge commit \u0027bda93c4cb94b47c86251d22df16e46a514c191ef\u0027\n\n* commit \u0027bda93c4cb94b47c86251d22df16e46a514c191ef\u0027:\n  Add multiple camera support for in MediaProfiles.\n"
    },
    {
      "commit": "3eaa4e92dbebb5b27cb89f329f31fac6fb6fe1f0",
      "tree": "add045741d098b9832bda550cfd9474a758b3db5",
      "parents": [
        "1c8ed2e906576fd8d7fa03f577bdec518cbe13d7"
      ],
      "author": {
        "name": "Chih-Chung Chang",
        "email": "chihchung@google.com",
        "time": "Tue Jun 22 20:50:55 2010 +0800"
      },
      "committer": {
        "name": "Chih-Chung Chang",
        "email": "chihchung@google.com",
        "time": "Thu Jul 01 10:57:15 2010 +0800"
      },
      "message": "Add multiple camera support for in MediaProfiles.\n\nChange-Id: Ie89568a0f5f5fd08ede77e33f9a559215d6bed9a\n"
    },
    {
      "commit": "1c645f22ab7e56a04659c09ffa2ca2de20650ddc",
      "tree": "39b3ce1f41b80775e7fcdf27652d95a74d089b95",
      "parents": [
        "1eff1b9a7fcf7044cd076c7d66f05bd1154999b7",
        "5ca9632960ef25374ca2df4c90213c19e5db18b0"
      ],
      "author": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Mon Jun 28 16:28:11 2010 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Mon Jun 28 16:28:11 2010 -0700"
      },
      "message": "am c2c59f69: am 2a76b316: Merge \"Separate MediaRecorderClient with MediaPlayerClient\" into gingerbread\n\nMerge commit \u0027c2c59f690deafe34c7701b01b612fd777cee8d4b\u0027\n\n* commit \u0027c2c59f690deafe34c7701b01b612fd777cee8d4b\u0027:\n  Separate MediaRecorderClient with MediaPlayerClient\n"
    },
    {
      "commit": "37047fceba836f341d0108beed0991b0f8dfc543",
      "tree": "6b60725c1d6af1ca91a46961bbecff9b996d07c2",
      "parents": [
        "93d6b102a13afa23bfa80d74c399d93d542e6ad6"
      ],
      "author": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Fri Jun 25 17:06:47 2010 -0700"
      },
      "committer": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Mon Jun 28 15:32:26 2010 -0700"
      },
      "message": "Separate MediaRecorderClient with MediaPlayerClient\n\n- An alternative would be to define a common base class that\n  both MediaRecorderClient and MediaPlayerClient can derive.\n  But since the common code, onTransact() and notify() uses\n  some Binder code, having a common base class may not gain\n  us too much in terms of code reuse.\n\nChange-Id: Ibc06720278ad173fceacff3d267b7060856c6316\n"
    },
    {
      "commit": "a93b488457b8d7dd17a1d80c82a9accafcdd8bad",
      "tree": "8e258fd14ef2938d71a12b795409800f847d051c",
      "parents": [
        "fd6440c0aca0659ce2c5220ecded707dfd4db1bc",
        "0070c924a2050b6683d6d170602201cc5f83a1a6"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Fri Jun 25 14:22:39 2010 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Fri Jun 25 14:22:39 2010 -0700"
      },
      "message": "am cdf1357b: am 8e103da1: Merge \"Various fixes and improvements in audio effects implementation\" into gingerbread\n\nMerge commit \u0027cdf1357b6e0152280dcd611b5f096db4887d8126\u0027\n\n* commit \u0027cdf1357b6e0152280dcd611b5f096db4887d8126\u0027:\n  Various fixes and improvements in audio effects implementation\n"
    },
    {
      "commit": "ffe9c25ce85e1af55d58ec025adc6367d70db7e8",
      "tree": "664f0a33a690b4d020417a9ecc81b32f696d0f0e",
      "parents": [
        "2439a8d6d99864ba0c2d94f428e6c9ee258cdd45"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Wed Jun 23 17:38:20 2010 -0700"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Fri Jun 25 11:59:35 2010 -0700"
      },
      "message": "Various fixes and improvements in audio effects implementation\n\nEffect API:\n- Use different definitions for audio device, channels, formats... in AudioSystem and EffectApi:\n  Removed media/AudioCommon.h file created for initial version of EffectApi\n- Indicate audio session and output ID to effect library when calling EffectCreate(). Session ID can be useful to optimize\nthe implementation of effect chains in the same audio session. Output ID can be used for effects implemented in audio hardware.\n- Renamed EffectQueryNext() function to EffectQueryEffect() and changed operating mode:\n  now an index is passed for the queried effect instead of implicitly querying the next one.\n- Added CPU load and memory usage indication in effects descriptor\n- Added flags and commands to indicate changes in audio mode (ring tone, in call...) to effect engine\n- Added flag to indicate hardware accelerated effect implementation.\n- Renamed EffectFactoryApi.h to EffectsFactoryApi.h for consistency with EffectsFactory.c/h\n\nEffect libraries:\n- Reflected changes in Effect API\n- Several fixes in reverb implementation\n- Added build option TEST_EFFECT_LIBRARIES in makefile to prepare integration of actual effect library.\n- Replaced pointer by integer identifier for library handle returned by effects factory\n\nAudio effect framework:\n- Added support for audio session -1 in preparation of output stage effects configuration.\n- Reflected changes in Effect API\n- Removed volume ramp up/down when effect is inserted/removed: this has to be taken care of by effect engines.\n- Added some overflow verification on indexes used for deferred parameter updates via shared memory\n- Added hardcoded CPU and memory limit check when creating a new effect instance\n\nChange-Id: I43fee5182ee201384ea3479af6d0acb95092901d\n"
    },
    {
      "commit": "ed914577e770697e23884886787e333588eb4c61",
      "tree": "7c342abf7d3e559394f3870ca5dd300a4b703659",
      "parents": [
        "c08d805c8d7ba0da56988382f7e9b70b98468636",
        "d255a4e04d06796441ae234e8f3a8277578b3446"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Wed Jun 23 13:23:24 2010 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Wed Jun 23 13:23:24 2010 -0700"
      },
      "message": "am 03e90f7e: am 58e9402b: Merge \"Properly assign LOG_TAGs in OMXMaster.cpp and MediaScanner.cpp\" into gingerbread\n\nMerge commit \u002703e90f7eeb032c981fc2952aa33f6ba1fae20d97\u0027\n\n* commit \u002703e90f7eeb032c981fc2952aa33f6ba1fae20d97\u0027:\n  Properly assign LOG_TAGs in OMXMaster.cpp and MediaScanner.cpp\n"
    },
    {
      "commit": "1a97e853e8f9fa3f4f47304d0e2e9118887e6051",
      "tree": "095ab2ff065d18c11dd4b578ce464e5ab29c3489",
      "parents": [
        "4ae22516962e6d6727fc3e9ce646441708ed60a9",
        "dadd0d1e7d5fbb88fd3420438c590a0bb4c18af5"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Wed Jun 23 12:41:23 2010 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Wed Jun 23 12:41:23 2010 -0700"
      },
      "message": "am 845f5414: am 2c2ce8e5: Merge \"Added support for audio sessions in MediaPlayer and AudioTrack.\" into gingerbread\n\nMerge commit \u0027845f541454d1fa9f328c0b0bf79acf2fba363177\u0027\n\n* commit \u0027845f541454d1fa9f328c0b0bf79acf2fba363177\u0027:\n  Added support for audio sessions in MediaPlayer and AudioTrack.\n"
    },
    {
      "commit": "4ae22516962e6d6727fc3e9ce646441708ed60a9",
      "tree": "7736f3e29c9e42603d36c5dc15c977d38ec797c9",
      "parents": [
        "735e25176efebe9cb54e5d426ae3ba02bf9ccd45",
        "41b2d090b23889c56bf0a889a8c9c2fb934015e8"
      ],
      "author": {
        "name": "Chia-chi Yeh",
        "email": "chiachi@android.com",
        "time": "Wed Jun 23 12:40:34 2010 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Wed Jun 23 12:40:34 2010 -0700"
      },
      "message": "am da9269af: am 3238302b: Merge \"media: add AudioRecord::getMinFrameCount().\" into gingerbread\n\nMerge commit \u0027da9269af5e94e25c142c519429aa77eb40f68e58\u0027\n\n* commit \u0027da9269af5e94e25c142c519429aa77eb40f68e58\u0027:\n  media: add AudioRecord::getMinFrameCount().\n"
    },
    {
      "commit": "1629399bb578fc176613ccaf134d1be6e3047638",
      "tree": "7542a324f41776cc25f3d9e166ddb73dbb340b37",
      "parents": [
        "dadd0d1e7d5fbb88fd3420438c590a0bb4c18af5"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Wed Jun 23 11:31:17 2010 -0700"
      },
      "committer": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Wed Jun 23 11:33:43 2010 -0700"
      },
      "message": "Properly assign LOG_TAGs in OMXMaster.cpp and MediaScanner.cpp\n\nChange-Id: I863651619f84b2b66e9a926ce1fef8ce6a53a42d\nrelated-to-bug: 2639116\n"
    },
    {
      "commit": "dadd0d1e7d5fbb88fd3420438c590a0bb4c18af5",
      "tree": "44ad049a0b4cc00150f502e296dfb82d257f6913",
      "parents": [
        "41b2d090b23889c56bf0a889a8c9c2fb934015e8",
        "a514bdb58b5de4986679f72b7204b4764f7a2778"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Tue Jun 22 18:29:57 2010 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Jun 22 18:29:57 2010 -0700"
      },
      "message": "Merge \"Added support for audio sessions in MediaPlayer and AudioTrack.\" into gingerbread"
    },
    {
      "commit": "a514bdb58b5de4986679f72b7204b4764f7a2778",
      "tree": "84b1ebf0c2b500bfb4995e373f8fee5b63b6c9fd",
      "parents": [
        "58ae9c530247668f8af36e30d228c716c226b3d4"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Mon Jun 21 09:27:30 2010 -0700"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Tue Jun 22 17:14:04 2010 -0700"
      },
      "message": "Added support for audio sessions in MediaPlayer and AudioTrack.\n\nAudio sessions are used to associate audio effects to particular instances (or groups) of MediaPlayers or AudioTracks.\n\nChange-Id: Ib94eec43241cfcb416590f435ddce7ab39a07640\n"
    },
    {
      "commit": "15304d601cbf83be6519ca53e1a26b97d50d0192",
      "tree": "41885f15dd2e97b841b10e094e8de84ac190c754",
      "parents": [
        "c7fa90a661dd9f6107af6a1d9e6dcaa1cb9a34e3"
      ],
      "author": {
        "name": "Chia-chi Yeh",
        "email": "chiachi@android.com",
        "time": "Tue Jun 22 08:01:13 2010 +0800"
      },
      "committer": {
        "name": "Chia-chi Yeh",
        "email": "chiachi@android.com",
        "time": "Wed Jun 23 08:01:04 2010 +0800"
      },
      "message": "media: add AudioRecord::getMinFrameCount().\n\nChange-Id: I952071ab10aa49aa96b727d157b68470d69fff3d\n"
    }
  ],
  "next": "9e6f25df13d5242d83fda224f8cc0b2bf22a727c"
}
