)]}'
{
  "log": [
    {
      "commit": "c455fe9727d361076b7cead3efdac2d32a1a1d6d",
      "tree": "10f603fdaeb746bdb00bc43e567751109783db0a",
      "parents": [
        "8b20e9272d2f8d5160494de3212d66a399b3637f"
      ],
      "author": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Wed Feb 29 07:07:30 2012 -0800"
      },
      "committer": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Wed Feb 29 11:36:54 2012 -0800"
      },
      "message": "mSuspend comments and usage\n\nEmphasize that playbackthread::mSuspend is a counter, not a bool\n\nChange-Id: I7188e56814e1c54dbc65e560f3627f138257d644\n"
    },
    {
      "commit": "8b20e9272d2f8d5160494de3212d66a399b3637f",
      "tree": "164f0e376939841794be8124d4d9709dc2a81cd5",
      "parents": [
        "5687da3359c7939dbd982de9fa2e5f19e41ae411",
        "688a64030834ea2f52cc9765676ddf6aa34df767"
      ],
      "author": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Wed Feb 29 11:32:42 2012 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Feb 29 11:32:42 2012 -0800"
      },
      "message": "Merge \"Mark similar and different sections in threadLoop\""
    },
    {
      "commit": "688a64030834ea2f52cc9765676ddf6aa34df767",
      "tree": "dbe70440330e69300fab019f9b90585e025e5c10",
      "parents": [
        "a3873833d518e032138cf70188b6f33cd7acec3d"
      ],
      "author": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Wed Feb 29 07:57:06 2012 -0800"
      },
      "committer": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Wed Feb 29 09:38:15 2012 -0800"
      },
      "message": "Mark similar and different sections in threadLoop\n\nMost of these comments will be removed after the threadLoop merge.\n\nNote: the trivial change in assignments to mixBufferSize, and the\ncomments about \"tracks to remove\" is to make them all identical.\n\nChange-Id: I3b1a33a7f2cd12ad557a1986bb71f6171161974a\n"
    },
    {
      "commit": "5687da3359c7939dbd982de9fa2e5f19e41ae411",
      "tree": "d576294f7567041ffca6ed4443a0cb3132f55ac0",
      "parents": [
        "41acadea86b763f4cc6f7aeb292f943d4570ac90",
        "c95c2ddcdfc974f42408a377fbe2de51b94a8c94"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Wed Feb 29 09:20:24 2012 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Feb 29 09:20:25 2012 -0800"
      },
      "message": "Merge \"Separate the notion of \"stop\" from that of \"release\", i.e.\""
    },
    {
      "commit": "41acadea86b763f4cc6f7aeb292f943d4570ac90",
      "tree": "c494404370e89ef9d5fce555a91be9e75449b3f9",
      "parents": [
        "0f7affe1716dfd6687262008120ed128df1af214",
        "3254b25e8b0f674ccc2226609e01dd86a600802e"
      ],
      "author": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Tue Feb 28 18:49:34 2012 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Feb 28 18:49:34 2012 -0800"
      },
      "message": "Merge \"Moves TimedTextDriver.h into include/media/stagefright/timedtext.\""
    },
    {
      "commit": "c95c2ddcdfc974f42408a377fbe2de51b94a8c94",
      "tree": "24239ca3f0d24f790b73d92627de057f738f91d5",
      "parents": [
        "a3873833d518e032138cf70188b6f33cd7acec3d"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Tue Feb 28 15:54:51 2012 -0800"
      },
      "committer": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Tue Feb 28 15:54:51 2012 -0800"
      },
      "message": "Separate the notion of \"stop\" from that of \"release\", i.e.\n\nstop - means transition back to LOADED state and keeping the component\ninstance allocated.\n\nrelease - means we get rid of the component completely.\n\nChange-Id: I40ad01ce70821faaad43f57999249904f9144924\n"
    },
    {
      "commit": "0f7affe1716dfd6687262008120ed128df1af214",
      "tree": "7099c246ec7de1d13083f19b66f7d1da60275ea5",
      "parents": [
        "a3873833d518e032138cf70188b6f33cd7acec3d",
        "d907e9451ec3c7b2244dd5605f1a26ab23466a7a"
      ],
      "author": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Tue Feb 28 13:09:44 2012 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Feb 28 13:09:44 2012 -0800"
      },
      "message": "Merge \"Remove unnecessary header file includes for drmserver\""
    },
    {
      "commit": "a3873833d518e032138cf70188b6f33cd7acec3d",
      "tree": "2a51dc4f5028548e2217d079c595f925af7968ac",
      "parents": [
        "3e9c3a1d34960cd258f294d31135ab6bf76179d5",
        "04743e99e71c0da012508c7119f414027654ee94"
      ],
      "author": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Tue Feb 28 07:23:42 2012 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Feb 28 07:23:42 2012 -0800"
      },
      "message": "Merge \"Unlock effect chains in the middle of two if\u0027s\""
    },
    {
      "commit": "3e9c3a1d34960cd258f294d31135ab6bf76179d5",
      "tree": "c4fdfd452a5249202c38bdd5fa06acc94af31402",
      "parents": [
        "a17c820c556fddf7ddd96b82b3e9874e340ffafd",
        "a3b09254d44cd8d66ec947abe547538c4cfeaa89"
      ],
      "author": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Tue Feb 28 07:21:51 2012 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Feb 28 07:21:51 2012 -0800"
      },
      "message": "Merge \"Simplify removeNotificationClient\""
    },
    {
      "commit": "a17c820c556fddf7ddd96b82b3e9874e340ffafd",
      "tree": "410130682b9d03614ce01e3e5af6bb0a2073d25d",
      "parents": [
        "3f791be1032e6c4cc499598dd2be116db6fb33c3",
        "02fe1bf923bbe5789202dbd5810e2c04794562e6"
      ],
      "author": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Tue Feb 28 07:21:09 2012 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Feb 28 07:21:09 2012 -0800"
      },
      "message": "Merge \"AudioFlinger const methods and parameters\""
    },
    {
      "commit": "3f791be1032e6c4cc499598dd2be116db6fb33c3",
      "tree": "fc6bb2f9080becaae931ac78d8d32eb6f6585ff0",
      "parents": [
        "cfbd62616ab2b12f0fee603658f04e5827cc7f8f",
        "279612dd95acc127e41b8a7aa3277f3ffacaa849"
      ],
      "author": {
        "name": "Jean-Baptiste Queru",
        "email": "jbq@google.com",
        "time": "Tue Feb 28 07:19:40 2012 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Tue Feb 28 07:19:40 2012 -0800"
      },
      "message": "am 254cf597: am 7b6b81f8: am f016dc1b: am f881fa51: Merge \"stagefright amr: Avoid C++/C99 for loops with variable declaration\"\n\n* commit \u0027254cf5973ebe5ebdce9ef261d826e88ed2f67f58\u0027:\n  stagefright amr: Avoid C++/C99 for loops with variable declaration\n"
    },
    {
      "commit": "cfbd62616ab2b12f0fee603658f04e5827cc7f8f",
      "tree": "0f3328716fdd788e603a52cc7e8cf80550a406bf",
      "parents": [
        "fadb2c73fce479205432652530663e1e90fd546c",
        "b6b740629c9f11535086e744465bada03f26df11"
      ],
      "author": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Tue Feb 28 07:18:27 2012 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Feb 28 07:18:27 2012 -0800"
      },
      "message": "Merge \"Fix theoretical race condition in addOutputTrack\""
    },
    {
      "commit": "fadb2c73fce479205432652530663e1e90fd546c",
      "tree": "255d5dc9cdbda67837cbb3a7907ecd797f6b305f",
      "parents": [
        "77f70f7de1977d7b0a9f9c37a25e34db16feb7b4",
        "01c4ebf6b794493898114a502ed36de13137f7e5"
      ],
      "author": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Tue Feb 28 07:17:47 2012 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Feb 28 07:17:47 2012 -0800"
      },
      "message": "Merge \"AudioBufferProvider comments and cleanup\""
    },
    {
      "commit": "d907e9451ec3c7b2244dd5605f1a26ab23466a7a",
      "tree": "d54de2611c108f2ee1a240c89a90d13be95de9b9",
      "parents": [
        "843a12d146bd64642bf85a4e56c274246e3893a6"
      ],
      "author": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Mon Feb 27 22:20:28 2012 -0800"
      },
      "committer": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Mon Feb 27 22:26:48 2012 -0800"
      },
      "message": "Remove unnecessary header file includes for drmserver\n\nChange-Id: I14033861e74d20f9d4897b651c4eeee126d4d610\n"
    },
    {
      "commit": "77f70f7de1977d7b0a9f9c37a25e34db16feb7b4",
      "tree": "8e07e5ff6d0bcb97106319dbf4cce1696b828b54",
      "parents": [
        "400ef2023badece85a18accb94194ed601ba6d72"
      ],
      "author": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Mon Feb 27 17:37:26 2012 -0800"
      },
      "committer": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Mon Feb 27 17:37:26 2012 -0800"
      },
      "message": "remove dependency on unneeded headers\n\nChange-Id: I890f40c430beca055bedd95c878eb68b42f232c2\n"
    },
    {
      "commit": "279612dd95acc127e41b8a7aa3277f3ffacaa849",
      "tree": "77462d7826a622656b3c9b674b8f6bb956866487",
      "parents": [
        "021c841c460993c0db515826a17460fc36eaf744",
        "bc303ed5fd25228b8523adbfcc9c007e73bc04ea"
      ],
      "author": {
        "name": "Jean-Baptiste Queru",
        "email": "jbq@google.com",
        "time": "Mon Feb 27 16:57:06 2012 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Mon Feb 27 16:57:06 2012 -0800"
      },
      "message": "am f881fa51: Merge \"stagefright amr: Avoid C++/C99 for loops with variable declaration\"\n\n* commit \u0027f881fa517978adc7ea610a1982e0d071f1fd3425\u0027:\n  stagefright amr: Avoid C++/C99 for loops with variable declaration\n"
    },
    {
      "commit": "400ef2023badece85a18accb94194ed601ba6d72",
      "tree": "4be3c1230d2501d77d58b773eccb3c8426f240af",
      "parents": [
        "843a12d146bd64642bf85a4e56c274246e3893a6",
        "76533e94500e5d221ec4a1a5d9c97ea3d75860e4"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Mon Feb 27 16:35:30 2012 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Feb 27 16:35:30 2012 -0800"
      },
      "message": "Merge \"audio preprocessing: fix multiple enable problem\""
    },
    {
      "commit": "bc303ed5fd25228b8523adbfcc9c007e73bc04ea",
      "tree": "e05eeadc46bbc813a1783517e4fd0286bba90eb9",
      "parents": [
        "61d07fbe79533517dbd4390d90206badd8df4641",
        "f27422a71112e77af77de0da2e60d4deb94a9375"
      ],
      "author": {
        "name": "Jean-Baptiste Queru",
        "email": "jbq@google.com",
        "time": "Mon Feb 27 16:23:18 2012 -0800"
      },
      "committer": {
        "name": "android code review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Mon Feb 27 16:23:19 2012 -0800"
      },
      "message": "Merge \"stagefright amr: Avoid C++/C99 for loops with variable declaration\""
    },
    {
      "commit": "843a12d146bd64642bf85a4e56c274246e3893a6",
      "tree": "82aca30fbbcc5c40f41a75dc3205ce983c187059",
      "parents": [
        "acb364073e62acddced517f2edfe0326245b2af9",
        "8abf44d2f2bcd20a2835570efe89d89c19db426a"
      ],
      "author": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Mon Feb 27 13:23:51 2012 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Feb 27 13:23:51 2012 -0800"
      },
      "message": "Merge \"Fix tracking of hardware state for dump\""
    },
    {
      "commit": "acb364073e62acddced517f2edfe0326245b2af9",
      "tree": "4f5cf2e11dcff95cc798575a10a2479514c3f8c8",
      "parents": [
        "7b419b45b4c810c0c7ebcca5d613cd9356fa4939",
        "021c841c460993c0db515826a17460fc36eaf744"
      ],
      "author": {
        "name": "Jean-Baptiste Queru",
        "email": "jbq@google.com",
        "time": "Mon Feb 27 13:15:15 2012 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Mon Feb 27 13:15:15 2012 -0800"
      },
      "message": "am 19bb6261: am bf826923: am faf38b24: am 9e3d9575: Merge \"stagefright aacenc: Add prototypes for arm specific implementations of functions\"\n\n* commit \u002719bb62613f512b62d492fb4caf36de88fd1914dd\u0027:\n  stagefright aacenc: Add prototypes for arm specific implementations of functions\n"
    },
    {
      "commit": "7b419b45b4c810c0c7ebcca5d613cd9356fa4939",
      "tree": "a29161247ac570f809d7469749928b51bba60ff5",
      "parents": [
        "d6b15d3d101b2fb253895e611e081c82afe6d9e2",
        "1b1123d45da74ae4916e12b119a6ad5458dea5a2"
      ],
      "author": {
        "name": "Jean-Baptiste Queru",
        "email": "jbq@google.com",
        "time": "Mon Feb 27 13:15:13 2012 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Mon Feb 27 13:15:13 2012 -0800"
      },
      "message": "am 360db46e: am b7913f70: am 163777b8: am 354ac772: Merge \"stagefright amrwb: Make local const arrays static\"\n\n* commit \u0027360db46e78a1492b695d5be6e779386dc66a502e\u0027:\n  stagefright amrwb: Make local const arrays static\n"
    },
    {
      "commit": "d6b15d3d101b2fb253895e611e081c82afe6d9e2",
      "tree": "72a298620bb8959da5243a5dea2d3d15fc644f05",
      "parents": [
        "7b65e71b662ce3bd7983fbfb62e8dafade5ccc55",
        "67caa6dfef0b98235616102eb5c503f84782bbed"
      ],
      "author": {
        "name": "Jean-Baptiste Queru",
        "email": "jbq@google.com",
        "time": "Mon Feb 27 13:15:10 2012 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Mon Feb 27 13:15:10 2012 -0800"
      },
      "message": "am 5ba910d8: am 040c5b2c: am ded8e681: am 695cfe1e: Merge \"stagefright amrwb: Change a C++ style cast into a C style cast\"\n\n* commit \u00275ba910d867d029e69c4f52667c02a4c114f849df\u0027:\n  stagefright amrwb: Change a C++ style cast into a C style cast\n"
    },
    {
      "commit": "7b65e71b662ce3bd7983fbfb62e8dafade5ccc55",
      "tree": "dc4857d27e6f77f775db25830510da2830c739c7",
      "parents": [
        "d7fe790fe59089394ee01f5d56106c0f488aad0a",
        "c6531cfdf04db7f75de3fe82697149f6e28b94e1"
      ],
      "author": {
        "name": "Jean-Baptiste Queru",
        "email": "jbq@google.com",
        "time": "Mon Feb 27 13:15:06 2012 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Mon Feb 27 13:15:06 2012 -0800"
      },
      "message": "am b205a5d8: am 50ee92e9: am d91b744d: am f7f1280e: Merge changes Ib4e27ea3,I4ad55266,Ie32b32c7\n\n* commit \u0027b205a5d861c5ba31599084a42c7d92549f464dac\u0027:\n  stagefright amrnb: Remove extern from table definitions\n  stagefright amrnb: Add includes for prototype declarations of tables\n  stagefright amrnb: Add missing const qualifier to table declarations in headers\n"
    },
    {
      "commit": "d7fe790fe59089394ee01f5d56106c0f488aad0a",
      "tree": "b4a05095970cd2b0b0c19055ac7943fed8ea9e65",
      "parents": [
        "bf9fc69dd171c99794725171c38f65a3c6f6e544",
        "43a1734eba6f409f9982d2e35dde6a869dbbdc90"
      ],
      "author": {
        "name": "Jean-Baptiste Queru",
        "email": "jbq@google.com",
        "time": "Mon Feb 27 13:15:03 2012 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Mon Feb 27 13:15:03 2012 -0800"
      },
      "message": "am 18a64b74: am a887ff9a: am 4f74be57: am 1a864db7: Merge \"stagefright aacenc: Simplify the definition of __inline\"\n\n* commit \u002718a64b74aa3cb0babb5f50e5f80660f601d80123\u0027:\n  stagefright aacenc: Simplify the definition of __inline\n"
    },
    {
      "commit": "bf9fc69dd171c99794725171c38f65a3c6f6e544",
      "tree": "a977978e5e47df9e3ef3925bc6e15f3ae19b3996",
      "parents": [
        "14f94704418852fe83eabd3e0e13288951fee574",
        "30a186e062e6301d54cf3140275fff866237c5fd"
      ],
      "author": {
        "name": "Jean-Baptiste Queru",
        "email": "jbq@google.com",
        "time": "Mon Feb 27 13:14:59 2012 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Mon Feb 27 13:14:59 2012 -0800"
      },
      "message": "am 6b4d7bad: am f7210cf5: am 7346d73c: am 77576ff4: Merge \"stagefright amrwbenc: Remove a useless check\"\n\n* commit \u00276b4d7bada0b1d34f93149211cb179b71c864d5d3\u0027:\n  stagefright amrwbenc: Remove a useless check\n"
    },
    {
      "commit": "14f94704418852fe83eabd3e0e13288951fee574",
      "tree": "4003ee20ab3932cba38731afe1c91679b288b3b2",
      "parents": [
        "54fd89aec2b34f6ea14d7b93b34a4a7a69ab0278",
        "ea6293131b72a65afabef16e18874c535f061d0a"
      ],
      "author": {
        "name": "Jean-Baptiste Queru",
        "email": "jbq@google.com",
        "time": "Mon Feb 27 13:14:56 2012 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Mon Feb 27 13:14:56 2012 -0800"
      },
      "message": "am 2bf76b98: am 3e61e413: am 32901b39: am be9a7055: Merge \"stagefright aacenc: Remove a stray semicolon\"\n\n* commit \u00272bf76b983da1d1730d685f9907d5d4fa6ea46fcd\u0027:\n  stagefright aacenc: Remove a stray semicolon\n"
    },
    {
      "commit": "54fd89aec2b34f6ea14d7b93b34a4a7a69ab0278",
      "tree": "a735e459adb68332c55d6e97d1638243ca0320c6",
      "parents": [
        "f2f4a649d71aea5066d609c10cd9449df9abd453",
        "30e927947126e87f4865b626ffe17bec74ff5ffe"
      ],
      "author": {
        "name": "Jean-Baptiste Queru",
        "email": "jbq@google.com",
        "time": "Mon Feb 27 13:14:53 2012 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Mon Feb 27 13:14:53 2012 -0800"
      },
      "message": "am 484fc74b: am 4bcdeb86: am 716a0517: am fe5f5d77: Merge \"stagefright amrwb: Make a global const array static\"\n\n* commit \u0027484fc74beb79d0b8d49223cb3fce9e1ccbfd3501\u0027:\n  stagefright amrwb: Make a global const array static\n"
    },
    {
      "commit": "f2f4a649d71aea5066d609c10cd9449df9abd453",
      "tree": "700724e0704d1a0edb1a42805154a6c00e68a8fd",
      "parents": [
        "c0502b930651092683a5f47c55159b559fae7727",
        "59e82a04949ffca325508f5ebf43fdb8657e350c"
      ],
      "author": {
        "name": "Jean-Baptiste Queru",
        "email": "jbq@google.com",
        "time": "Mon Feb 27 13:14:48 2012 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Mon Feb 27 13:14:48 2012 -0800"
      },
      "message": "am eb483de5: am bf5c5e5b: am c1da1e1b: am 94ee1bf2: Merge \"stagefright amrwbenc: Change keyword ordering\"\n\n* commit \u0027eb483de58e4b41cb549149459e492e9ad1d65bd0\u0027:\n  stagefright amrwbenc: Change keyword ordering\n"
    },
    {
      "commit": "c0502b930651092683a5f47c55159b559fae7727",
      "tree": "f0ea7935c9b04cdb7c261cbe49910ef0b8031ddb",
      "parents": [
        "df712ea86e6350f7005a02ab0e1c60c28a343ed0",
        "7917b452eae7340fcab09b7b406d9d8ca28a4a87"
      ],
      "author": {
        "name": "Jean-Baptiste Queru",
        "email": "jbq@google.com",
        "time": "Mon Feb 27 13:14:45 2012 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Mon Feb 27 13:14:45 2012 -0800"
      },
      "message": "am 5b299d2f: am 18643e70: am 6bc542e0: am 5aff259c: Merge \"stagefright aacenc: Don\\\u0027t address a Word32 with a Word16 pointer\"\n\n* commit \u00275b299d2f9038452aa09a97d4f2ce57ec20bbc06a\u0027:\n  stagefright aacenc: Don\u0027t address a Word32 with a Word16 pointer\n"
    },
    {
      "commit": "021c841c460993c0db515826a17460fc36eaf744",
      "tree": "97ecb3f86bcd15f19071af6b94c7f7aade4a7fa0",
      "parents": [
        "1b1123d45da74ae4916e12b119a6ad5458dea5a2",
        "61d07fbe79533517dbd4390d90206badd8df4641"
      ],
      "author": {
        "name": "Jean-Baptiste Queru",
        "email": "jbq@google.com",
        "time": "Mon Feb 27 13:07:43 2012 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Mon Feb 27 13:07:43 2012 -0800"
      },
      "message": "am 9e3d9575: Merge \"stagefright aacenc: Add prototypes for arm specific implementations of functions\"\n\n* commit \u00279e3d957599c76ba19e23fd25b75ccc02d54efe3e\u0027:\n  stagefright aacenc: Add prototypes for arm specific implementations of functions\n"
    },
    {
      "commit": "1b1123d45da74ae4916e12b119a6ad5458dea5a2",
      "tree": "03ab3f12bb5ea3dd28cd510f357ff2a9f7333c57",
      "parents": [
        "67caa6dfef0b98235616102eb5c503f84782bbed",
        "94530642d4a742888363d90875a9b44498100658"
      ],
      "author": {
        "name": "Jean-Baptiste Queru",
        "email": "jbq@google.com",
        "time": "Mon Feb 27 13:07:40 2012 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Mon Feb 27 13:07:40 2012 -0800"
      },
      "message": "am 354ac772: Merge \"stagefright amrwb: Make local const arrays static\"\n\n* commit \u0027354ac772eca0afea25dd12d233e5cdee9677888b\u0027:\n  stagefright amrwb: Make local const arrays static\n"
    },
    {
      "commit": "67caa6dfef0b98235616102eb5c503f84782bbed",
      "tree": "8462b314f96873ccce6a0169c292ab3df8046281",
      "parents": [
        "c6531cfdf04db7f75de3fe82697149f6e28b94e1",
        "9d0e88ca1ceee29e4bc4f38fb0897c53cb79b1e9"
      ],
      "author": {
        "name": "Jean-Baptiste Queru",
        "email": "jbq@google.com",
        "time": "Mon Feb 27 13:07:36 2012 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Mon Feb 27 13:07:36 2012 -0800"
      },
      "message": "am 695cfe1e: Merge \"stagefright amrwb: Change a C++ style cast into a C style cast\"\n\n* commit \u0027695cfe1e1e189f176fdf994f72d05a0129a66394\u0027:\n  stagefright amrwb: Change a C++ style cast into a C style cast\n"
    },
    {
      "commit": "c6531cfdf04db7f75de3fe82697149f6e28b94e1",
      "tree": "016522738d7ea9e3ff254c2b4a48c6a50c8913e2",
      "parents": [
        "43a1734eba6f409f9982d2e35dde6a869dbbdc90",
        "fbaf72b701316c8050d73690ff387e62f724f216"
      ],
      "author": {
        "name": "Jean-Baptiste Queru",
        "email": "jbq@google.com",
        "time": "Mon Feb 27 13:07:33 2012 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Mon Feb 27 13:07:33 2012 -0800"
      },
      "message": "am f7f1280e: Merge changes Ib4e27ea3,I4ad55266,Ie32b32c7\n\n* commit \u0027f7f1280e0c71d64098efb42b58a922d056164b5e\u0027:\n  stagefright amrnb: Remove extern from table definitions\n  stagefright amrnb: Add includes for prototype declarations of tables\n  stagefright amrnb: Add missing const qualifier to table declarations in headers\n"
    },
    {
      "commit": "43a1734eba6f409f9982d2e35dde6a869dbbdc90",
      "tree": "3bc8e3eabbf105dd255ab478a84308d86e784a6e",
      "parents": [
        "30a186e062e6301d54cf3140275fff866237c5fd",
        "7c7674ea2d7ba099b5afd3badf4d69da55b377dd"
      ],
      "author": {
        "name": "Jean-Baptiste Queru",
        "email": "jbq@google.com",
        "time": "Mon Feb 27 13:07:30 2012 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Mon Feb 27 13:07:30 2012 -0800"
      },
      "message": "am 1a864db7: Merge \"stagefright aacenc: Simplify the definition of __inline\"\n\n* commit \u00271a864db7723a7947b72d24e6008ba48341d0feff\u0027:\n  stagefright aacenc: Simplify the definition of __inline\n"
    },
    {
      "commit": "30a186e062e6301d54cf3140275fff866237c5fd",
      "tree": "87bb4daf001dc622d0a9c99fc4a97a58c59218c9",
      "parents": [
        "ea6293131b72a65afabef16e18874c535f061d0a",
        "e98a953903240da9e5118594b6e4f454dcd2c123"
      ],
      "author": {
        "name": "Jean-Baptiste Queru",
        "email": "jbq@google.com",
        "time": "Mon Feb 27 13:07:26 2012 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Mon Feb 27 13:07:26 2012 -0800"
      },
      "message": "am 77576ff4: Merge \"stagefright amrwbenc: Remove a useless check\"\n\n* commit \u002777576ff487e227092cdaf09db163e21f1e07604a\u0027:\n  stagefright amrwbenc: Remove a useless check\n"
    },
    {
      "commit": "ea6293131b72a65afabef16e18874c535f061d0a",
      "tree": "9a104bee310b2ecc44c3bf0aad9ff19e570f876e",
      "parents": [
        "30e927947126e87f4865b626ffe17bec74ff5ffe",
        "7d8e0f1ae48058ac1613272fd66e4d8335adbb93"
      ],
      "author": {
        "name": "Jean-Baptiste Queru",
        "email": "jbq@google.com",
        "time": "Mon Feb 27 13:07:23 2012 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Mon Feb 27 13:07:23 2012 -0800"
      },
      "message": "am be9a7055: Merge \"stagefright aacenc: Remove a stray semicolon\"\n\n* commit \u0027be9a705586edafcedc9fabb94d3259f882b7cbd7\u0027:\n  stagefright aacenc: Remove a stray semicolon\n"
    },
    {
      "commit": "30e927947126e87f4865b626ffe17bec74ff5ffe",
      "tree": "2d1a31f5db634feee556cce6fb8bbf291f29aba5",
      "parents": [
        "59e82a04949ffca325508f5ebf43fdb8657e350c",
        "a4999a9f0fb1a5690d967c08c7c6216221bc028a"
      ],
      "author": {
        "name": "Jean-Baptiste Queru",
        "email": "jbq@google.com",
        "time": "Mon Feb 27 13:07:20 2012 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Mon Feb 27 13:07:20 2012 -0800"
      },
      "message": "am fe5f5d77: Merge \"stagefright amrwb: Make a global const array static\"\n\n* commit \u0027fe5f5d7728b7f8be24716fda6eb1480eb9dfb72f\u0027:\n  stagefright amrwb: Make a global const array static\n"
    },
    {
      "commit": "59e82a04949ffca325508f5ebf43fdb8657e350c",
      "tree": "e5d9a0b598da1ff1fbdf7c453fef468664981867",
      "parents": [
        "7917b452eae7340fcab09b7b406d9d8ca28a4a87",
        "d78b7149dd619c73b1160ba68a7e05ffdd50cb0c"
      ],
      "author": {
        "name": "Jean-Baptiste Queru",
        "email": "jbq@google.com",
        "time": "Mon Feb 27 13:07:16 2012 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Mon Feb 27 13:07:16 2012 -0800"
      },
      "message": "am 94ee1bf2: Merge \"stagefright amrwbenc: Change keyword ordering\"\n\n* commit \u002794ee1bf232d1f1cc97902dab1e4148eb478cd304\u0027:\n  stagefright amrwbenc: Change keyword ordering\n"
    },
    {
      "commit": "7917b452eae7340fcab09b7b406d9d8ca28a4a87",
      "tree": "dd85860d8a0026982cdbb68fff8aee6bd08aba2e",
      "parents": [
        "9a2af4508c27affc0e4a7440f8e5694ec3f0bec6",
        "5b9c33c7239c996135c0021ec9a0d9afedd81a78"
      ],
      "author": {
        "name": "Jean-Baptiste Queru",
        "email": "jbq@google.com",
        "time": "Mon Feb 27 13:07:12 2012 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Mon Feb 27 13:07:12 2012 -0800"
      },
      "message": "am 5aff259c: Merge \"stagefright aacenc: Don\\\u0027t address a Word32 with a Word16 pointer\"\n\n* commit \u00275aff259c61e54e441ed04bf77e3cc69a0374432d\u0027:\n  stagefright aacenc: Don\u0027t address a Word32 with a Word16 pointer\n"
    },
    {
      "commit": "df712ea86e6350f7005a02ab0e1c60c28a343ed0",
      "tree": "75401d5ef563d1ae76aaae4965f65bb39f92736c",
      "parents": [
        "d3393c35259588e8ad61a43d1d1aa1568e943307"
      ],
      "author": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Sat Feb 25 18:48:35 2012 -0800"
      },
      "committer": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Mon Feb 27 13:03:08 2012 -0800"
      },
      "message": "fix libgui header location\n\nChange-Id: Iec71706cdd4f29c6904993648ce873e83ef9cafe\n"
    },
    {
      "commit": "d3393c35259588e8ad61a43d1d1aa1568e943307",
      "tree": "7233201662164b0b3c6abe1e05cbfb079bf8756d",
      "parents": [
        "e628d515888baadba75442128678e747e930ed58"
      ],
      "author": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Sat Feb 25 19:52:53 2012 -0800"
      },
      "committer": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Mon Feb 27 13:03:04 2012 -0800"
      },
      "message": "libagl shouldn\u0027t export anything\n\nChange-Id: Ia823dbc56aab2a0b8a6063df4348fe6baac124c6\n"
    },
    {
      "commit": "61d07fbe79533517dbd4390d90206badd8df4641",
      "tree": "0c3c23aa0bb1971656087e5dd17bb9c54c158a56",
      "parents": [
        "94530642d4a742888363d90875a9b44498100658",
        "8a3b3707a6e320ba75f4ecd47fdc001f16c15cb8"
      ],
      "author": {
        "name": "Jean-Baptiste Queru",
        "email": "jbq@google.com",
        "time": "Mon Feb 27 12:14:40 2012 -0800"
      },
      "committer": {
        "name": "android code review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Mon Feb 27 12:14:41 2012 -0800"
      },
      "message": "Merge \"stagefright aacenc: Add prototypes for arm specific implementations of functions\""
    },
    {
      "commit": "94530642d4a742888363d90875a9b44498100658",
      "tree": "dacfc549af1745897ce721414a55ecabce0fce2b",
      "parents": [
        "9d0e88ca1ceee29e4bc4f38fb0897c53cb79b1e9",
        "46f715e1150b02b00b16620f92a84c74aba43b47"
      ],
      "author": {
        "name": "Jean-Baptiste Queru",
        "email": "jbq@google.com",
        "time": "Mon Feb 27 12:14:01 2012 -0800"
      },
      "committer": {
        "name": "android code review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Mon Feb 27 12:14:02 2012 -0800"
      },
      "message": "Merge \"stagefright amrwb: Make local const arrays static\""
    },
    {
      "commit": "9d0e88ca1ceee29e4bc4f38fb0897c53cb79b1e9",
      "tree": "108639a7637c4a4b3bd2c798c597bc36a6b96cce",
      "parents": [
        "fbaf72b701316c8050d73690ff387e62f724f216",
        "ffa34edd0fd50d558f9bc7a650d959b4d3d29123"
      ],
      "author": {
        "name": "Jean-Baptiste Queru",
        "email": "jbq@google.com",
        "time": "Mon Feb 27 12:13:26 2012 -0800"
      },
      "committer": {
        "name": "android code review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Mon Feb 27 12:13:27 2012 -0800"
      },
      "message": "Merge \"stagefright amrwb: Change a C++ style cast into a C style cast\""
    },
    {
      "commit": "f27422a71112e77af77de0da2e60d4deb94a9375",
      "tree": "635e39ea2ef5cc62ddf044dac0445ddbd2f40a9e",
      "parents": [
        "fbaf72b701316c8050d73690ff387e62f724f216"
      ],
      "author": {
        "name": "Martin Storsjo",
        "email": "martin@martin.st",
        "time": "Thu Jun 23 18:21:23 2011 +0300"
      },
      "committer": {
        "name": "Martin Storsjo",
        "email": "martin@martin.st",
        "time": "Mon Feb 27 21:35:48 2012 +0200"
      },
      "message": "stagefright amr: Avoid C++/C99 for loops with variable declaration\n\nThis makes the code compileable in C89 mode, too.\n\nChange-Id: I9b76f8bfca148d1aec6081b8db139f351d64cfed\n"
    },
    {
      "commit": "fbaf72b701316c8050d73690ff387e62f724f216",
      "tree": "a9cb312c8b8cc87b87afb26f7bbcaf3ca60ee22b",
      "parents": [
        "7c7674ea2d7ba099b5afd3badf4d69da55b377dd",
        "1ead790eadd0e09a118308caccc7ac37d36f43f3"
      ],
      "author": {
        "name": "Jean-Baptiste Queru",
        "email": "jbq@google.com",
        "time": "Mon Feb 27 11:16:22 2012 -0800"
      },
      "committer": {
        "name": "android code review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Mon Feb 27 11:16:23 2012 -0800"
      },
      "message": "Merge changes Ib4e27ea3,I4ad55266,Ie32b32c7\n\n* changes:\n  stagefright amrnb: Remove extern from table definitions\n  stagefright amrnb: Add includes for prototype declarations of tables\n  stagefright amrnb: Add missing const qualifier to table declarations in headers\n"
    },
    {
      "commit": "7c7674ea2d7ba099b5afd3badf4d69da55b377dd",
      "tree": "9a16d9c3f8ccc318f47cae74be34bbf2078dcd25",
      "parents": [
        "e98a953903240da9e5118594b6e4f454dcd2c123",
        "32bc0329ac94b181f1457c182c5bb2903f29832d"
      ],
      "author": {
        "name": "Jean-Baptiste Queru",
        "email": "jbq@google.com",
        "time": "Mon Feb 27 11:11:56 2012 -0800"
      },
      "committer": {
        "name": "android code review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Mon Feb 27 11:11:57 2012 -0800"
      },
      "message": "Merge \"stagefright aacenc: Simplify the definition of __inline\""
    },
    {
      "commit": "e98a953903240da9e5118594b6e4f454dcd2c123",
      "tree": "8d266dfc220c4dfc0030c72767c794b3bc759119",
      "parents": [
        "7d8e0f1ae48058ac1613272fd66e4d8335adbb93",
        "c4ef4bb50d1407aec63358d4c14d1007ae0c4c1d"
      ],
      "author": {
        "name": "Jean-Baptiste Queru",
        "email": "jbq@google.com",
        "time": "Mon Feb 27 11:11:17 2012 -0800"
      },
      "committer": {
        "name": "android code review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Mon Feb 27 11:11:18 2012 -0800"
      },
      "message": "Merge \"stagefright amrwbenc: Remove a useless check\""
    },
    {
      "commit": "7d8e0f1ae48058ac1613272fd66e4d8335adbb93",
      "tree": "ba352aad3da08b73bfcce2d0ecd8e31949d431ab",
      "parents": [
        "a4999a9f0fb1a5690d967c08c7c6216221bc028a",
        "338b9c9020ca6be98f30670cf307ad8553f1b4c9"
      ],
      "author": {
        "name": "Jean-Baptiste Queru",
        "email": "jbq@google.com",
        "time": "Mon Feb 27 11:09:58 2012 -0800"
      },
      "committer": {
        "name": "android code review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Mon Feb 27 11:09:59 2012 -0800"
      },
      "message": "Merge \"stagefright aacenc: Remove a stray semicolon\""
    },
    {
      "commit": "a4999a9f0fb1a5690d967c08c7c6216221bc028a",
      "tree": "42ad46287f68c246b38c496181cd3895332d1038",
      "parents": [
        "d78b7149dd619c73b1160ba68a7e05ffdd50cb0c",
        "034816f92436de28071652d88975a5fcef317acd"
      ],
      "author": {
        "name": "Jean-Baptiste Queru",
        "email": "jbq@google.com",
        "time": "Mon Feb 27 11:08:08 2012 -0800"
      },
      "committer": {
        "name": "android code review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Mon Feb 27 11:08:09 2012 -0800"
      },
      "message": "Merge \"stagefright amrwb: Make a global const array static\""
    },
    {
      "commit": "d78b7149dd619c73b1160ba68a7e05ffdd50cb0c",
      "tree": "42b77638f854318642b486fea52aef9610c0b310",
      "parents": [
        "5b9c33c7239c996135c0021ec9a0d9afedd81a78",
        "b0238c30a22778bdb4ac7c86a1eb65e50e32f2ec"
      ],
      "author": {
        "name": "Jean-Baptiste Queru",
        "email": "jbq@google.com",
        "time": "Mon Feb 27 11:06:24 2012 -0800"
      },
      "committer": {
        "name": "android code review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Mon Feb 27 11:06:25 2012 -0800"
      },
      "message": "Merge \"stagefright amrwbenc: Change keyword ordering\""
    },
    {
      "commit": "5b9c33c7239c996135c0021ec9a0d9afedd81a78",
      "tree": "05d40088490e9b7124d48b387bb30027fd558d8d",
      "parents": [
        "b86b3c8f976b70635770d93217132d4023ecf33f",
        "2f0fb8c1ec139d385feb6990111ed6dc93422eac"
      ],
      "author": {
        "name": "Jean-Baptiste Queru",
        "email": "jbq@google.com",
        "time": "Mon Feb 27 10:58:50 2012 -0800"
      },
      "committer": {
        "name": "android code review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Mon Feb 27 10:58:51 2012 -0800"
      },
      "message": "Merge \"stagefright aacenc: Don\u0027t address a Word32 with a Word16 pointer\""
    },
    {
      "commit": "e628d515888baadba75442128678e747e930ed58",
      "tree": "008e72b199be7b6fa0d86f308edb183df3851fe1",
      "parents": [
        "d3cee0b1f77baa4fb7a049eb757e9f5006890726",
        "c0b52836d07f823732f0ff98ca5ca9d7f5730cb8"
      ],
      "author": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Mon Feb 27 07:24:46 2012 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Feb 27 07:24:46 2012 -0800"
      },
      "message": "Merge \"Make threadLoop() logs identical\""
    },
    {
      "commit": "d3cee0b1f77baa4fb7a049eb757e9f5006890726",
      "tree": "6692b5674e5c0285cc28aa2d2753a0c787e0a9cb",
      "parents": [
        "1843df5b4f8f8f8394a96bcaeb5836d720ae9cf5",
        "5d4eeeaf76ebe177b43e87b2a9df5e55e39021f0"
      ],
      "author": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Mon Feb 27 07:21:00 2012 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Feb 27 07:21:00 2012 -0800"
      },
      "message": "Merge \"Move declaration of mixerStatus to inner block\""
    },
    {
      "commit": "3254b25e8b0f674ccc2226609e01dd86a600802e",
      "tree": "04d681d4fc7da42266106bdf7ad5a3634d8bf989",
      "parents": [
        "1843df5b4f8f8f8394a96bcaeb5836d720ae9cf5"
      ],
      "author": {
        "name": "Insun Kang",
        "email": "insun@google.com",
        "time": "Mon Feb 27 17:14:28 2012 +0900"
      },
      "committer": {
        "name": "Insun Kang",
        "email": "insun@google.com",
        "time": "Mon Feb 27 17:14:28 2012 +0900"
      },
      "message": "Moves TimedTextDriver.h into include/media/stagefright/timedtext.\n\nSo that other players can include TimedTextDriver.h properly.\n\nChange-Id: I15e72bf655de8555eef6244a6c853c27a0828a1d\n"
    },
    {
      "commit": "1843df5b4f8f8f8394a96bcaeb5836d720ae9cf5",
      "tree": "c2be52b9aec3d9a84fbf44059aa86f233275141f",
      "parents": [
        "37d825e72a6c606553a745da1212590a425996d3",
        "9eeafeb52fecf90882e9b44eeefcb7c3e16aa915"
      ],
      "author": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Fri Feb 24 19:08:12 2012 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Feb 24 19:08:12 2012 -0800"
      },
      "message": "Merge \"remove dependency on android_native{s_priv|buffer}.h\""
    },
    {
      "commit": "9eeafeb52fecf90882e9b44eeefcb7c3e16aa915",
      "tree": "0a09b02937d7097e042367163fbe4c9d4b5b2230",
      "parents": [
        "5ce96d97feafc6989f6141bb2633eae3d87ddf28"
      ],
      "author": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Fri Feb 24 18:25:41 2012 -0800"
      },
      "committer": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Fri Feb 24 18:26:01 2012 -0800"
      },
      "message": "remove dependency on android_native{s_priv|buffer}.h\n\nChange-Id: Ie4b95f7061c240f37c504414259f92d72c4ffc89\n"
    },
    {
      "commit": "a3b09254d44cd8d66ec947abe547538c4cfeaa89",
      "tree": "9a21a4b2b34e264d71f4a44262e5f555ce9513d6",
      "parents": [
        "37d825e72a6c606553a745da1212590a425996d3"
      ],
      "author": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Fri Jan 20 09:19:01 2012 -0800"
      },
      "committer": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Fri Feb 24 17:00:30 2012 -0800"
      },
      "message": "Simplify removeNotificationClient\n\nNo need to check for presence of item before removing\n(but we do lose the log of the previous value).\n\nChange-Id: I2838430824de5f257f2ee15db0c22b1920c67d08\n"
    },
    {
      "commit": "02fe1bf923bbe5789202dbd5810e2c04794562e6",
      "tree": "0a3c1634d0e3b36e996a9be60540bf63b226f84e",
      "parents": [
        "37d825e72a6c606553a745da1212590a425996d3"
      ],
      "author": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Fri Feb 24 15:42:17 2012 -0800"
      },
      "committer": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Fri Feb 24 16:34:43 2012 -0800"
      },
      "message": "AudioFlinger const methods and parameters\n\nChange-Id: I93ec28024005ed23aa141518092a012a4a7c44c5\n"
    },
    {
      "commit": "c0b52836d07f823732f0ff98ca5ca9d7f5730cb8",
      "tree": "458884704d091098a8b44fceab1c5d9daa0e362d",
      "parents": [
        "37d825e72a6c606553a745da1212590a425996d3"
      ],
      "author": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Fri Feb 24 11:18:09 2012 -0800"
      },
      "committer": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Fri Feb 24 16:26:07 2012 -0800"
      },
      "message": "Make threadLoop() logs identical\n\nChange the wording of the logs in the various copies of threadLoop()\nto be identical.  This will make it easier to merge them soon.\n\nChange-Id: Idfa181e437738712c784dc7f746cac79f83d2931\n"
    },
    {
      "commit": "5d4eeeaf76ebe177b43e87b2a9df5e55e39021f0",
      "tree": "f27b737f2e5dad2ac6c04ae0294f121a47210aec",
      "parents": [
        "d6fd85a157ce2054b2304e6d171fa87ae09c363d"
      ],
      "author": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Fri Feb 24 07:25:40 2012 -0800"
      },
      "committer": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Fri Feb 24 16:14:46 2012 -0800"
      },
      "message": "Move declaration of mixerStatus to inner block\n\nmixerStatus was being declared (and initialized) too early,\nwhich also resulted in a duplicate initialization.  Moved\nthe declaration into the block where it is actually used.\n\nChange-Id: Ifdcfefe362a5efe3493dd616cdb44645c6f9aed5\n"
    },
    {
      "commit": "37d825e72a6c606553a745da1212590a425996d3",
      "tree": "268310fe31b44c0eee84b1d91adfbbaff2103a76",
      "parents": [
        "5ce96d97feafc6989f6141bb2633eae3d87ddf28"
      ],
      "author": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Fri Feb 24 07:21:48 2012 -0800"
      },
      "committer": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Fri Feb 24 16:02:24 2012 -0800"
      },
      "message": "Pull out duplicated copies of silent mode check\n\nAlso fix the error handling for the property_get.\n\nThis is part of preparation for the threadLoop() merge.\n\nChange-Id: I6405190ea18146d1271575e1dfe9f279e8f36b17\n"
    },
    {
      "commit": "04743e99e71c0da012508c7119f414027654ee94",
      "tree": "01efb09ba3b56687256ad81564092c7f92d9186f",
      "parents": [
        "d6fd85a157ce2054b2304e6d171fa87ae09c363d"
      ],
      "author": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Fri Feb 24 11:20:09 2012 -0800"
      },
      "committer": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Fri Feb 24 15:55:08 2012 -0800"
      },
      "message": "Unlock effect chains in the middle of two if\u0027s\n\nAs part of the upcoming threadLoop() merge, this CL makes it clearer\nwhat are the similar and different parts before and after unlocking\neffect chains.\n\nIn each threadLoop(), the old code was:\n\n    if (sleepTime \u003d\u003d 0) {\n        // A\n        unlockEffectChains(effectChains);\n        // B\n    } else {\n        unlockEffectChains(effectChains);\n        // C\n    }\n\nThe new code is:\n\n    if (sleepTime \u003d\u003d 0) {\n        // A\n    }\n    unlockEffectChains(effectChains);\n    if (sleepTime \u003d\u003d 0) {\n        // B\n    } else {\n        // C\n    }\n\nAlso this is slightly slower by one \"if\", it has the advantage of making\nit much more obvious about what is done before and after the unlock,\nand also to see the similarities and differences among the various\ncopies of threadLoop().\n\nChange-Id: I7bf4369d2dcb072573ec43b7e52c637f0097dc00\n"
    },
    {
      "commit": "5ce96d97feafc6989f6141bb2633eae3d87ddf28",
      "tree": "4a38a92123c13a19107d0b73d8ec877f50e87011",
      "parents": [
        "7fb5e8832f582ec515550696e9dabc3a8d9de14d",
        "83efdd0fc08cd5aedf50b45741a8a87be8dc4b41"
      ],
      "author": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Fri Feb 24 14:25:15 2012 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Feb 24 14:25:15 2012 -0800"
      },
      "message": "Merge \"Pull CPU statistics code out of threadLoop()\""
    },
    {
      "commit": "b6b740629c9f11535086e744465bada03f26df11",
      "tree": "7561f2281d6fbe6b59a71470b1432e8f90e80391",
      "parents": [
        "d6fd85a157ce2054b2304e6d171fa87ae09c363d"
      ],
      "author": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Fri Feb 24 14:12:20 2012 -0800"
      },
      "committer": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Fri Feb 24 14:20:29 2012 -0800"
      },
      "message": "Fix theoretical race condition in addOutputTrack\n\nThis is not a real race, because addOutputTrack was only called in two\nplaces, and in both places there could be no other threads referencing\nthe DuplicatingThread instance.\n\nThose two places are:\n - the DuplicatingThread constructor, which is of course safe\n - openDuplicateOutput - this is safe because it\u0027s called immediately\n   after the new DuplicatingThread, and there are no sp\u003c\u003e either in the\n   constructor or here which could cause onFirstRef() to do Thread::run().\n\nBut for safety in case addOutputTrack is ever called somewhere else,\nor there are sp\u003c\u003e created earlier, it is safer to take the thread lock.\n\nChange-Id: I1502d014fa37ec5dbf4bf40d3e2884af311cd5e9\n"
    },
    {
      "commit": "7fb5e8832f582ec515550696e9dabc3a8d9de14d",
      "tree": "d0b60e9e6947984b1cd17d91a636270cf4e0e205",
      "parents": [
        "7348f1e937c249b221c7ce9edf241e898d37f190",
        "8b2a453ab6698eae4560389c6e8f6ecab2643218"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Fri Feb 24 14:03:27 2012 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Feb 24 14:03:27 2012 -0800"
      },
      "message": "Merge \"Make sure we return input/output buffers to the codec not just while\""
    },
    {
      "commit": "7348f1e937c249b221c7ce9edf241e898d37f190",
      "tree": "0496824c5904eee8c62f5a5821324e87df1e5b2c",
      "parents": [
        "8d9cbfd83350c1bb1e780460fbdae2028fe65a28",
        "bf6c85a013fb14960bac147c1ffd0a02a8d5f148"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Fri Feb 24 14:02:52 2012 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Feb 24 14:02:52 2012 -0800"
      },
      "message": "Merge \"Fix two more locations that use the old setObject(\"buffer\", ...) paradigm\""
    },
    {
      "commit": "8b2a453ab6698eae4560389c6e8f6ecab2643218",
      "tree": "fbd8a79f356bf786b74324192b3c401942c5477e",
      "parents": [
        "54263bcfa6e9ad2fcb3e89617240f4ec0b3a2f99"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Fri Feb 24 13:58:09 2012 -0800"
      },
      "committer": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Fri Feb 24 13:58:09 2012 -0800"
      },
      "message": "Make sure we return input/output buffers to the codec not just while\n\nflushing but also while stopping.\n\nChange-Id: I23534008b93654c9b9c022c0b1d204c2b546d566\n"
    },
    {
      "commit": "83efdd0fc08cd5aedf50b45741a8a87be8dc4b41",
      "tree": "7e87220c4ea29345be9fd7a6c041bf58dc9f816f",
      "parents": [
        "d6fd85a157ce2054b2304e6d171fa87ae09c363d"
      ],
      "author": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Fri Feb 24 07:21:32 2012 -0800"
      },
      "committer": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Fri Feb 24 13:56:12 2012 -0800"
      },
      "message": "Pull CPU statistics code out of threadLoop()\n\nThis is to prepare for the threadLoop() merge\n\nChange-Id: I118c7d5c6b011b5d5b95ec7d63fb03feb166a9cf\n"
    },
    {
      "commit": "bf6c85a013fb14960bac147c1ffd0a02a8d5f148",
      "tree": "49bbbf00b90fb32b8cba53946344a5ba9752fde3",
      "parents": [
        "54263bcfa6e9ad2fcb3e89617240f4ec0b3a2f99"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Fri Feb 24 13:42:47 2012 -0800"
      },
      "committer": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Fri Feb 24 13:42:47 2012 -0800"
      },
      "message": "Fix two more locations that use the old setObject(\"buffer\", ...) paradigm\n\nthat I\u0027d previously missed.\n\nChange-Id: Ifbdbfb94d1bc1cbe8c0a403fed05ce99fca8397b\n"
    },
    {
      "commit": "01c4ebf6b794493898114a502ed36de13137f7e5",
      "tree": "7f663fdad4040a40411e79d837c14e52e11a65b9",
      "parents": [
        "d6fd85a157ce2054b2304e6d171fa87ae09c363d"
      ],
      "author": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Wed Feb 22 10:47:35 2012 -0800"
      },
      "committer": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Fri Feb 24 13:42:13 2012 -0800"
      },
      "message": "AudioBufferProvider comments and cleanup\n\nAdd comments about which methods implement the AudioBufferProvider interface.\n\nSimplified the definition of kInvalidPts.  \u003cstdint.h\u003e is very hard to work\nwith, there seems to be no way to use it reliably to get INT64_MAX without\nhaving a separate source file, which is ugly because it means kInvalidPts\nis not a compile-time constant.  So I just deleted AudioBufferProvider.cpp\nand used a hard-coded constant instead.\n\nAdded a default constructor for Buffer so that the fields aren\u0027t random\n(especially .raw which is used to determine if the buffer is valid).\n\nMake the pts for getNextBuffer default to kInvalidPTS so code that\ndoesn\u0027t need a pts doesn\u0027t have to specify a value.\n\nRename the parameter to AudioMixer::setBufferProvider to make it clearer.\n\nChange-Id: I87e7290884d4ed975b019f62d1ab6ae2bc5065a5\n"
    },
    {
      "commit": "8abf44d2f2bcd20a2835570efe89d89c19db426a",
      "tree": "29fc684b04d18621913145c807c4493f5b607d86",
      "parents": [
        "d6fd85a157ce2054b2304e6d171fa87ae09c363d"
      ],
      "author": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Thu Feb 02 14:16:03 2012 -0800"
      },
      "committer": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Fri Feb 24 13:31:26 2012 -0800"
      },
      "message": "Fix tracking of hardware state for dump\n\nAt end of AudioFlinger::onFirstRef(), the hardware status was being left\nin wrong state.  It should be AUDIO_HW_IDLE but was AUDIO_HW_INIT.\n\nmHardwareStatus was being set to AUDIO_HW_OUTPUT_OPEN too early, and so\na return would leave it in the wrong state until next hardware operation.\n\nTake the hardware lock for dev-\u003eget_parameters, and update mHardwareStatus\nbefore and after.\n\nKeep hardware lock only for the duration of the dev-\u003eset_parameters.\n\nRename two constants in enum hardware_call_state to have the prefix\nAUDIO_HW so they follow the naming conventions.\n\nAdd comments.\n\nChange-Id: I6c7450b11f9b13adaeef9cec874333e478a58fc0\n"
    },
    {
      "commit": "8d9cbfd83350c1bb1e780460fbdae2028fe65a28",
      "tree": "7a19c462cdd514aa61a81b3379557a228a2adf50",
      "parents": [
        "1e07b508b4f9d5031e17cde7701ad656824816f1",
        "5cf034d92d901169ca6e36c90475f40715827fcd"
      ],
      "author": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Fri Feb 24 13:17:36 2012 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Feb 24 13:17:36 2012 -0800"
      },
      "message": "Merge \"Remove TrackBase::mFlags\""
    },
    {
      "commit": "5cf034d92d901169ca6e36c90475f40715827fcd",
      "tree": "7a6d8c982f699f2e8a8ea0cfd0088dfdada23399",
      "parents": [
        "d6fd85a157ce2054b2304e6d171fa87ae09c363d"
      ],
      "author": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Tue Feb 21 10:35:56 2012 -0800"
      },
      "committer": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Fri Feb 24 13:14:28 2012 -0800"
      },
      "message": "Remove TrackBase::mFlags\n\nThe bit-field TrackBase::mFlags was supposed to have track-specific\nflags in the upper 16 bits, and system flags in the lower 16 bits.\n\nThe upper 16 bits of mFlags were initialized in the TrackBase\nconstructor from the flags parameter of IAudioFlinger::createTrack()\nand IAudioFlinger::openRecord(), and the lower 16 bits were cleared.\n\nHowever, the upper 16 bits of mFlags were never acccessed again.\nSo really there are no track-specific flags.  I left the flags\nin the parameter list of createTrack() and openRecord() but made a\nnote that these should be removed eventually as they are dead.\n\nThis leaves only the one system flag \"step server failed\".  I replaced\nthe bit-field mFlags by bool mStepServerFailed, which is simpler and\nslightly faster.\n\nChange-Id: I6650f5487be72791b4a67d73adcd10ffa04e2aa5\n"
    },
    {
      "commit": "1ead790eadd0e09a118308caccc7ac37d36f43f3",
      "tree": "0f7847184a1c166a4ce1dfe402e0b50d0386c8f6",
      "parents": [
        "d95a8462c367a7bea1b4aee24917d3e9ed7e2a48"
      ],
      "author": {
        "name": "Martin Storsjo",
        "email": "martin@martin.st",
        "time": "Wed May 18 12:28:33 2011 +0300"
      },
      "committer": {
        "name": "Martin Storsjo",
        "email": "martin@martin.st",
        "time": "Fri Feb 24 23:07:49 2012 +0200"
      },
      "message": "stagefright amrnb: Remove extern from table definitions\n\nLocal prototype declarations are added where no suitable ones are\navailable in headers.\n\nThis fixes warnings when compiling as C - while the source\nfiles are named .cpp, they actually are compileable as pure C.\n\nThis was committed on the master branch of the opencore\nrepository in commit a0acb494ea6682ca966b5ebbd3676c89c56d63a6,\nbased on AOSP contribution 10303.\n\nChange-Id: Ib4e27ea30302c66e0233e63e5a4652f6339bc940\n"
    },
    {
      "commit": "d95a8462c367a7bea1b4aee24917d3e9ed7e2a48",
      "tree": "9081a855cf8a3b3908a3dcfcc41bce18c445571b",
      "parents": [
        "93eec2bc24e3782420d76df52586c84a03669087"
      ],
      "author": {
        "name": "Martin Storsjo",
        "email": "martin@martin.st",
        "time": "Wed May 18 12:27:51 2011 +0300"
      },
      "committer": {
        "name": "Martin Storsjo",
        "email": "martin@martin.st",
        "time": "Fri Feb 24 23:07:40 2012 +0200"
      },
      "message": "stagefright amrnb: Add includes for prototype declarations of tables\n\nThis was committed on the master branch of the opencore\nrepository in commit da3d0463c999871ee584a0d750be65be65d19b00,\nbased on AOSP contribution 10302.\n\nChange-Id: I4ad5526634efecc2d2bb3d2169184b8d4d4d7671\n"
    },
    {
      "commit": "93eec2bc24e3782420d76df52586c84a03669087",
      "tree": "85f0c3a0da7b3027c2209bcfa410fa896c7fc2d8",
      "parents": [
        "b86b3c8f976b70635770d93217132d4023ecf33f"
      ],
      "author": {
        "name": "Martin Storsjo",
        "email": "martin@martin.st",
        "time": "Wed May 18 12:26:52 2011 +0300"
      },
      "committer": {
        "name": "Martin Storsjo",
        "email": "martin@martin.st",
        "time": "Fri Feb 24 23:07:29 2012 +0200"
      },
      "message": "stagefright amrnb: Add missing const qualifier to table declarations in headers\n\nThis was committed on the master branch of the opencore\nrepository in commit 5ce7a6fdf125116ffce2e692e14eafef1c807628,\nbased on AOSP contribution 10301.\n\nChange-Id: Ie32b32c7407f449e382c0b4fd2d60a664e0daa33\n"
    },
    {
      "commit": "034816f92436de28071652d88975a5fcef317acd",
      "tree": "8283a62310429c5c8d350a672f8b9c85ac58b592",
      "parents": [
        "b86b3c8f976b70635770d93217132d4023ecf33f"
      ],
      "author": {
        "name": "Martin Storsjo",
        "email": "martin@martin.st",
        "time": "Wed May 18 12:25:42 2011 +0300"
      },
      "committer": {
        "name": "Martin Storsjo",
        "email": "martin@martin.st",
        "time": "Fri Feb 24 23:04:24 2012 +0200"
      },
      "message": "stagefright amrwb: Make a global const array static\n\nThis fixes compilation as C - while the source files are named\n.cpp, they actually are compileable as pure C. Prior to this,\nthis table produced multiple definitions of the same symbol.\n\nThis was committed on the master branch of the opencore\nrepository in commit a803bd49a631317e0d52ff060cf1799f7741a47e,\nbased on AOSP contribution 10017.\n\nChange-Id: Id76274964242b119ab61b8181e557477df1e1521\n"
    },
    {
      "commit": "46f715e1150b02b00b16620f92a84c74aba43b47",
      "tree": "1e1c3a3ca9a394ee2d5e7b5bf04151ca757f7168",
      "parents": [
        "b86b3c8f976b70635770d93217132d4023ecf33f"
      ],
      "author": {
        "name": "Martin Storsjo",
        "email": "martin@martin.st",
        "time": "Wed May 18 12:24:50 2011 +0300"
      },
      "committer": {
        "name": "Martin Storsjo",
        "email": "martin@martin.st",
        "time": "Fri Feb 24 23:03:10 2012 +0200"
      },
      "message": "stagefright amrwb: Make local const arrays static\n\nSome of these tables exist in both the amrnb and amrwb libraries,\nbut with different content.\n\nThis avoids some cases of multiple definitions of symbols, if\nlinking in both libraries statically into the same executable,\nif the libraries are built as C. (As C++, the local symbols\nget mangled so they don\u0027t conflict with the external C symbols\nin amrnb, that are unmangled.)\n\nMost of this was committed on the master branch of the opencore\nrepository in commit 0cd4b3ac412dd0a8370ce339e89cf346c6cfe395,\nbased on AOSP contribution 10016.\n\nChange-Id: I5387e699ce54a56dc43fcfa0396dee5c99280fd9\n"
    },
    {
      "commit": "ffa34edd0fd50d558f9bc7a650d959b4d3d29123",
      "tree": "692cde8d3155348e5a156089165141ec7f929f68",
      "parents": [
        "b86b3c8f976b70635770d93217132d4023ecf33f"
      ],
      "author": {
        "name": "Martin Storsjo",
        "email": "martin@martin.st",
        "time": "Wed May 18 12:24:11 2011 +0300"
      },
      "committer": {
        "name": "Martin Storsjo",
        "email": "martin@martin.st",
        "time": "Fri Feb 24 23:01:24 2012 +0200"
      },
      "message": "stagefright amrwb: Change a C++ style cast into a C style cast\n\nThis fixes compilation as C - while the source files are named\n.cpp, they actually are compileable as pure C (except for this\ncast).\n\nThis was committed on the master branch of the opencore\nrepository in commit ae27d9b2ef68c4e6fc383a8cab93d6baa235ff6b,\nbased on AOSP contribution 10014.\n\nChange-Id: I4f533313be041ad3e0a03ffc5f4207480894ddd1\n"
    },
    {
      "commit": "1e07b508b4f9d5031e17cde7701ad656824816f1",
      "tree": "2c207a9751c76817678fc215461c5df7e1a3a356",
      "parents": [
        "fc237e5453333c3e0a31da3562f26ca8639d7951",
        "9a2af4508c27affc0e4a7440f8e5694ec3f0bec6"
      ],
      "author": {
        "name": "Jean-Baptiste Queru",
        "email": "jbq@google.com",
        "time": "Fri Feb 24 11:11:10 2012 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Fri Feb 24 11:11:10 2012 -0800"
      },
      "message": "am ed7e1e83: am 47023027: am 26d9944e: am 6a300a54: Merge \"stagefright aacenc: Make the bits to write in WriteBits unsigned\"\n\n* commit \u0027ed7e1e830165678421ee7d1b3dac044214a6e635\u0027:\n  stagefright aacenc: Make the bits to write in WriteBits unsigned\n"
    },
    {
      "commit": "9a2af4508c27affc0e4a7440f8e5694ec3f0bec6",
      "tree": "242de8ffb7ae1114b29d1d7cfe0c1bc03bf3b967",
      "parents": [
        "5b823b4cca17de5249fbbd774541c69b970e8da8",
        "b86b3c8f976b70635770d93217132d4023ecf33f"
      ],
      "author": {
        "name": "Jean-Baptiste Queru",
        "email": "jbq@google.com",
        "time": "Fri Feb 24 11:02:29 2012 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Fri Feb 24 11:02:29 2012 -0800"
      },
      "message": "am 6a300a54: Merge \"stagefright aacenc: Make the bits to write in WriteBits unsigned\"\n\n* commit \u00276a300a5413898ff8b728e77c5a23290cae60e9b5\u0027:\n  stagefright aacenc: Make the bits to write in WriteBits unsigned\n"
    },
    {
      "commit": "338b9c9020ca6be98f30670cf307ad8553f1b4c9",
      "tree": "c152bdeae79c529f8fdfaf573110f02a9a9ba782",
      "parents": [
        "b86b3c8f976b70635770d93217132d4023ecf33f"
      ],
      "author": {
        "name": "Martin Storsjo",
        "email": "martin@martin.st",
        "time": "Thu Jan 12 14:28:30 2012 +0200"
      },
      "committer": {
        "name": "Martin Storsjo",
        "email": "martin@martin.st",
        "time": "Fri Feb 24 21:01:26 2012 +0200"
      },
      "message": "stagefright aacenc: Remove a stray semicolon\n\nThis avoids warnings about an empty body in an if statement.\n\nmem_free does the same null check, so the accidental extra\nsemicolon was harmless, and the whole if statement actually\nis needless. But if removing the if statements, all the\nother ones should be removed too, for consistency.\n(This could be done as a separate change).\n\nChange-Id: I1b6064dedd15ffa949043bb5396148aaed9b43f6\n"
    },
    {
      "commit": "8a3b3707a6e320ba75f4ecd47fdc001f16c15cb8",
      "tree": "78fce9566c00f447a4979e664afa1d7ec22af038",
      "parents": [
        "b86b3c8f976b70635770d93217132d4023ecf33f"
      ],
      "author": {
        "name": "Martin Storsjo",
        "email": "martin@martin.st",
        "time": "Thu Jan 12 15:10:01 2012 +0200"
      },
      "committer": {
        "name": "Martin Storsjo",
        "email": "martin@martin.st",
        "time": "Fri Feb 24 20:56:11 2012 +0200"
      },
      "message": "stagefright aacenc: Add prototypes for arm specific implementations of functions\n\nThe arm specific functions are implemented in .s files,\nwithout any function declarations in headers.\n\nThis fixes compiler warnings about implicit declarations\nof these functions.\n\nChange-Id: I1512560b6740c1879f378886e05aaad2e3a6c869\n"
    },
    {
      "commit": "b0238c30a22778bdb4ac7c86a1eb65e50e32f2ec",
      "tree": "961782216ff8e0daab764d1fc9fa60989a710f1f",
      "parents": [
        "b86b3c8f976b70635770d93217132d4023ecf33f"
      ],
      "author": {
        "name": "Martin Storsjo",
        "email": "martin@martin.st",
        "time": "Thu Jan 12 14:53:17 2012 +0200"
      },
      "committer": {
        "name": "Martin Storsjo",
        "email": "martin@martin.st",
        "time": "Fri Feb 24 20:54:26 2012 +0200"
      },
      "message": "stagefright amrwbenc: Change keyword ordering\n\nThis avoids warnings about \u0027static\u0027 not being at the beginning\nof the declarations.\n\nChange-Id: I80f91b8a0f7f61edcdca96c206fedbd74ec0d88e\n"
    },
    {
      "commit": "c4ef4bb50d1407aec63358d4c14d1007ae0c4c1d",
      "tree": "99211b1a1e9387ae5bb544666724c41435347a72",
      "parents": [
        "b86b3c8f976b70635770d93217132d4023ecf33f"
      ],
      "author": {
        "name": "Martin Storsjo",
        "email": "martin@martin.st",
        "time": "Thu Jan 12 14:52:47 2012 +0200"
      },
      "committer": {
        "name": "Martin Storsjo",
        "email": "martin@martin.st",
        "time": "Fri Feb 24 20:54:14 2012 +0200"
      },
      "message": "stagefright amrwbenc: Remove a useless check\n\nSince the Length field is unsigned, the comparison will always\nbe false. The corresponding code in the aac encoder doesn\u0027t have\nany check for Length.\n\nThis avoids a warning about comparison always being false.\n\nChange-Id: I57c28ff9d09cb9ac4effeaeb40db608ab976acc6\n"
    },
    {
      "commit": "fc237e5453333c3e0a31da3562f26ca8639d7951",
      "tree": "f1d04991814d54c191bd3fbcf365cbd4bdf7f16c",
      "parents": [
        "837b1e098a3b321bf1b19f22189d8c8bcdd509a6",
        "5b823b4cca17de5249fbbd774541c69b970e8da8"
      ],
      "author": {
        "name": "Jean-Baptiste Queru",
        "email": "jbq@google.com",
        "time": "Fri Feb 24 10:35:47 2012 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Fri Feb 24 10:35:47 2012 -0800"
      },
      "message": "am 70450553: am 14c6e272: am 2accfc11: am d6a25154: Merge \"stagefright aacenc: Fix an inline asm constraint\"\n\n* commit \u002770450553f8f1e6ec4967f86a4b811db2940e8772\u0027:\n  stagefright aacenc: Fix an inline asm constraint\n"
    },
    {
      "commit": "837b1e098a3b321bf1b19f22189d8c8bcdd509a6",
      "tree": "10fbed746f00a90b2911c3437734d7345d4e6f7d",
      "parents": [
        "dab48426d9b2becf45bef409f607045f066d6f72",
        "391906630443d7bd1d3a34e34535d93113723316"
      ],
      "author": {
        "name": "Jean-Baptiste Queru",
        "email": "jbq@google.com",
        "time": "Fri Feb 24 10:33:05 2012 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Fri Feb 24 10:33:05 2012 -0800"
      },
      "message": "am 78fc0c0b: am 428ece23: am c4aa19a5: am ea227787: Merge changes I903353c5,I822dcc74\n\n* commit \u002778fc0c0bfae913a4a44011225396ae525b335fb1\u0027:\n  stagefright amrnb: Properly negate all values\n  stagefright amrnb: Fix a bug on architectures where long is 64 bit\n"
    },
    {
      "commit": "b86b3c8f976b70635770d93217132d4023ecf33f",
      "tree": "fb5d9e009c79d61d79d538dace3926108797c76d",
      "parents": [
        "c6a8eec53535fcb074989b5966baec48628a6f94",
        "5e9afe434d8207fb0af6e191cca671ab74cfe878"
      ],
      "author": {
        "name": "Jean-Baptiste Queru",
        "email": "jbq@google.com",
        "time": "Fri Feb 24 10:28:00 2012 -0800"
      },
      "committer": {
        "name": "android code review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Fri Feb 24 10:28:01 2012 -0800"
      },
      "message": "Merge \"stagefright aacenc: Make the bits to write in WriteBits unsigned\""
    },
    {
      "commit": "5b823b4cca17de5249fbbd774541c69b970e8da8",
      "tree": "38979a1e02f6535d581021d43b5ae0ad092e16b3",
      "parents": [
        "391906630443d7bd1d3a34e34535d93113723316",
        "c6a8eec53535fcb074989b5966baec48628a6f94"
      ],
      "author": {
        "name": "Jean-Baptiste Queru",
        "email": "jbq@google.com",
        "time": "Fri Feb 24 10:26:53 2012 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Fri Feb 24 10:26:53 2012 -0800"
      },
      "message": "am d6a25154: Merge \"stagefright aacenc: Fix an inline asm constraint\"\n\n* commit \u0027d6a25154d94c48ab2ef12641c789458ab14ca94f\u0027:\n  stagefright aacenc: Fix an inline asm constraint\n"
    },
    {
      "commit": "391906630443d7bd1d3a34e34535d93113723316",
      "tree": "0905eb16e4e404e920386cdbee4e78359782a705",
      "parents": [
        "90b8ca7c29d75a265faaa9386d556d41ca5be538",
        "de8b924a7f7d104af4243b1dfaef6f4480f93eea"
      ],
      "author": {
        "name": "Jean-Baptiste Queru",
        "email": "jbq@google.com",
        "time": "Fri Feb 24 10:24:34 2012 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Fri Feb 24 10:24:34 2012 -0800"
      },
      "message": "am ea227787: Merge changes I903353c5,I822dcc74\n\n* commit \u0027ea227787253e29da2d688399b097e05708d3bf73\u0027:\n  stagefright amrnb: Properly negate all values\n  stagefright amrnb: Fix a bug on architectures where long is 64 bit\n"
    },
    {
      "commit": "c6a8eec53535fcb074989b5966baec48628a6f94",
      "tree": "f675c789bf139e5b528cf43879edd225a2164145",
      "parents": [
        "de8b924a7f7d104af4243b1dfaef6f4480f93eea",
        "721f2bb7b28891c0811a5bea31fa62644131befc"
      ],
      "author": {
        "name": "Jean-Baptiste Queru",
        "email": "jbq@google.com",
        "time": "Fri Feb 24 10:22:33 2012 -0800"
      },
      "committer": {
        "name": "android code review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Fri Feb 24 10:22:34 2012 -0800"
      },
      "message": "Merge \"stagefright aacenc: Fix an inline asm constraint\""
    },
    {
      "commit": "dab48426d9b2becf45bef409f607045f066d6f72",
      "tree": "40f768945ee6cac5d11fec9cfb535a2c3def7070",
      "parents": [
        "a118abebce9aa2bdd8fa4a7251875c5049082434",
        "0db280176bd3277e3256252d063f3712b1905ba9"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Fri Feb 24 10:16:28 2012 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Feb 24 10:16:28 2012 -0800"
      },
      "message": "Merge \"Small fix to MediaCodec\""
    },
    {
      "commit": "de8b924a7f7d104af4243b1dfaef6f4480f93eea",
      "tree": "9b84579b7355e767287ceb9fb1e0008041a83606",
      "parents": [
        "80d4b8903ed09d2cf9ac35391f04eb8619f47a1e",
        "e55147f462e04d41bff7ead6e9ea61a5b83bda4b"
      ],
      "author": {
        "name": "Jean-Baptiste Queru",
        "email": "jbq@google.com",
        "time": "Fri Feb 24 10:07:47 2012 -0800"
      },
      "committer": {
        "name": "android code review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Fri Feb 24 10:07:49 2012 -0800"
      },
      "message": "Merge changes I903353c5,I822dcc74\n\n* changes:\n  stagefright amrnb: Properly negate all values\n  stagefright amrnb: Fix a bug on architectures where long is 64 bit\n"
    },
    {
      "commit": "a118abebce9aa2bdd8fa4a7251875c5049082434",
      "tree": "8dcdff03d1247147e6a2f311551269cc8ff851e8",
      "parents": [
        "d38faa28eb767a108a7a9467c1a481957531d2af",
        "90b8ca7c29d75a265faaa9386d556d41ca5be538"
      ],
      "author": {
        "name": "Jean-Baptiste Queru",
        "email": "jbq@google.com",
        "time": "Fri Feb 24 10:03:47 2012 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Fri Feb 24 10:03:47 2012 -0800"
      },
      "message": "am 15278119: am 61022b06: am 5f83b957: am bf45bbf3: Merge \"stagefright aacenc: Zero-initialize a struct\"\n\n* commit \u00271527811984557ee0b5d6e476e84ed147e073cb45\u0027:\n  stagefright aacenc: Zero-initialize a struct\n"
    },
    {
      "commit": "90b8ca7c29d75a265faaa9386d556d41ca5be538",
      "tree": "bf1342cf15fce4b282a82ed802d561e808623a4d",
      "parents": [
        "142ce9a65b7505819e1205ad5bfa5d63843c7f43",
        "80d4b8903ed09d2cf9ac35391f04eb8619f47a1e"
      ],
      "author": {
        "name": "Jean-Baptiste Queru",
        "email": "jbq@google.com",
        "time": "Fri Feb 24 09:54:58 2012 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Fri Feb 24 09:54:58 2012 -0800"
      },
      "message": "am bf45bbf3: Merge \"stagefright aacenc: Zero-initialize a struct\"\n\n* commit \u0027bf45bbf3b4a54976b81234ffc8ac41520bc052fc\u0027:\n  stagefright aacenc: Zero-initialize a struct\n"
    },
    {
      "commit": "d38faa28eb767a108a7a9467c1a481957531d2af",
      "tree": "9d39bc688b148c31a70b3bd6c43e87999690fb63",
      "parents": [
        "b20a352b7e4eb6690e86e0dcf9d58d73640dc874",
        "142ce9a65b7505819e1205ad5bfa5d63843c7f43"
      ],
      "author": {
        "name": "Jean-Baptiste Queru",
        "email": "jbq@google.com",
        "time": "Fri Feb 24 09:52:54 2012 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Fri Feb 24 09:52:54 2012 -0800"
      },
      "message": "am 4de803c7: am 459df4ef: am e7650c32: am e5bdd24b: Merge \"stagefright aacenc: Avoid warnings about incompatible pointer types\"\n\n* commit \u00274de803c76d4afd0f542c086b555b71729b3c5796\u0027:\n  stagefright aacenc: Avoid warnings about incompatible pointer types\n"
    },
    {
      "commit": "80d4b8903ed09d2cf9ac35391f04eb8619f47a1e",
      "tree": "df8ea43f1e9dc3588cb9a20b44e8bb531ffd1634",
      "parents": [
        "ccdf9e6e3dc929a9ffee7ed2aab57115ef810527",
        "132e42c04a58e623efa6cd6ca43641cd80db0f05"
      ],
      "author": {
        "name": "Jean-Baptiste Queru",
        "email": "jbq@google.com",
        "time": "Fri Feb 24 09:47:22 2012 -0800"
      },
      "committer": {
        "name": "android code review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Fri Feb 24 09:47:23 2012 -0800"
      },
      "message": "Merge \"stagefright aacenc: Zero-initialize a struct\""
    },
    {
      "commit": "142ce9a65b7505819e1205ad5bfa5d63843c7f43",
      "tree": "88f72f0a473bdedcb2512f579149f309ccdbb80e",
      "parents": [
        "9884ee5920da4976a4de809567ad8fcbe8608433",
        "ccdf9e6e3dc929a9ffee7ed2aab57115ef810527"
      ],
      "author": {
        "name": "Jean-Baptiste Queru",
        "email": "jbq@google.com",
        "time": "Fri Feb 24 09:45:40 2012 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Fri Feb 24 09:45:40 2012 -0800"
      },
      "message": "am e5bdd24b: Merge \"stagefright aacenc: Avoid warnings about incompatible pointer types\"\n\n* commit \u0027e5bdd24b69c4033163d478d721247691e11cea36\u0027:\n  stagefright aacenc: Avoid warnings about incompatible pointer types\n"
    },
    {
      "commit": "b20a352b7e4eb6690e86e0dcf9d58d73640dc874",
      "tree": "3023e803fec8874219049f24fe869650b205ef54",
      "parents": [
        "042d1b44537eeb3ead09778f4284a35be9e9f5d3",
        "9884ee5920da4976a4de809567ad8fcbe8608433"
      ],
      "author": {
        "name": "Jean-Baptiste Queru",
        "email": "jbq@google.com",
        "time": "Fri Feb 24 09:28:09 2012 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Fri Feb 24 09:28:09 2012 -0800"
      },
      "message": "am 307f47aa: am 7e8b65df: am 7ffa4546: am 47b56c5a: Merge \"stagefright aacenc: Add const declarations to some pointers\"\n\n* commit \u0027307f47aa5def85d0c0bb4af725ff557707c5be86\u0027:\n  stagefright aacenc: Add const declarations to some pointers\n"
    }
  ],
  "next": "9884ee5920da4976a4de809567ad8fcbe8608433"
}
