)]}'
{
  "log": [
    {
      "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": "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": "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": "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"
    },
    {
      "commit": "9884ee5920da4976a4de809567ad8fcbe8608433",
      "tree": "70869a66e5e283a5fd46cd1b8279c0add7d7a728",
      "parents": [
        "db7670ab7a884efb64f0e7a20425b6445d749822",
        "aa1639aeb42e7c403315319bf55632de93d3c8d9"
      ],
      "author": {
        "name": "Jean-Baptiste Queru",
        "email": "jbq@google.com",
        "time": "Fri Feb 24 09:20:44 2012 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Fri Feb 24 09:20:44 2012 -0800"
      },
      "message": "am 47b56c5a: Merge \"stagefright aacenc: Add const declarations to some pointers\"\n\n* commit \u002747b56c5a46287ea226c05e3c0238a91f4702491a\u0027:\n  stagefright aacenc: Add const declarations to some pointers\n"
    },
    {
      "commit": "ccdf9e6e3dc929a9ffee7ed2aab57115ef810527",
      "tree": "76031c8576797b93322bfb46e5022ab0c5cffc88",
      "parents": [
        "aa1639aeb42e7c403315319bf55632de93d3c8d9",
        "cf8b805a0c0695097211ca18237c27f45b0df85c"
      ],
      "author": {
        "name": "Jean-Baptiste Queru",
        "email": "jbq@google.com",
        "time": "Fri Feb 24 09:20:36 2012 -0800"
      },
      "committer": {
        "name": "android code review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Fri Feb 24 09:20:37 2012 -0800"
      },
      "message": "Merge \"stagefright aacenc: Avoid warnings about incompatible pointer types\""
    },
    {
      "commit": "042d1b44537eeb3ead09778f4284a35be9e9f5d3",
      "tree": "89b8397a32c029352abc28a07f3ed150d5d3fc68",
      "parents": [
        "54263bcfa6e9ad2fcb3e89617240f4ec0b3a2f99",
        "db7670ab7a884efb64f0e7a20425b6445d749822"
      ],
      "author": {
        "name": "Jean-Baptiste Queru",
        "email": "jbq@google.com",
        "time": "Fri Feb 24 09:12:17 2012 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Fri Feb 24 09:12:17 2012 -0800"
      },
      "message": "am 5c2f1220: am 901b8bb0: am aa86aa60: am 1b704610: Merge \"stagefright aacenc: Fix inline asm\"\n\n* commit \u00275c2f1220f90ae68a064195ba3c94f1319813f32c\u0027:\n  stagefright aacenc: Fix inline asm\n"
    },
    {
      "commit": "0db280176bd3277e3256252d063f3712b1905ba9",
      "tree": "745ac4d5882f1220d7a815b2a8ecdd86e1783545",
      "parents": [
        "54263bcfa6e9ad2fcb3e89617240f4ec0b3a2f99"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Fri Feb 24 08:41:46 2012 -0800"
      },
      "committer": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Fri Feb 24 09:06:58 2012 -0800"
      },
      "message": "Small fix to MediaCodec\n\nChange-Id: I6bcbfd35fdf5a2b0260b8f07a630a5b380e139a0\n"
    },
    {
      "commit": "aa1639aeb42e7c403315319bf55632de93d3c8d9",
      "tree": "65487d4fe9a8aad6fcdc3c4322fcdc7048b62e38",
      "parents": [
        "3e4d4efcaf00c8263c7bcd651e453e93b60535da",
        "9fc4dfb69df0b5a13b7a1904272eb1dcf8113d0c"
      ],
      "author": {
        "name": "Jean-Baptiste Queru",
        "email": "jbq@google.com",
        "time": "Fri Feb 24 08:53:24 2012 -0800"
      },
      "committer": {
        "name": "android code review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Fri Feb 24 08:53:25 2012 -0800"
      },
      "message": "Merge \"stagefright aacenc: Add const declarations to some pointers\""
    },
    {
      "commit": "db7670ab7a884efb64f0e7a20425b6445d749822",
      "tree": "b4009a76bf26daf8380cbebc1966cc39617ecf37",
      "parents": [
        "7ce8b8c79c866fd787f3b4628abf5028207312e6",
        "3e4d4efcaf00c8263c7bcd651e453e93b60535da"
      ],
      "author": {
        "name": "Jean-Baptiste Queru",
        "email": "jbq@google.com",
        "time": "Fri Feb 24 08:50:32 2012 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Fri Feb 24 08:50:32 2012 -0800"
      },
      "message": "am 1b704610: Merge \"stagefright aacenc: Fix inline asm\"\n\n* commit \u00271b7046108c0f381fa8b7efaebae02c1a2b3099b3\u0027:\n  stagefright aacenc: Fix inline asm\n"
    },
    {
      "commit": "3e4d4efcaf00c8263c7bcd651e453e93b60535da",
      "tree": "b689355ac28b6185f4203bd64cd762d3829e0ff1",
      "parents": [
        "6dfeab4ddf3fcb82483f29d146329aa959fc0c82",
        "9da751147af3222258093d9f41cabf0ea1391c04"
      ],
      "author": {
        "name": "Jean-Baptiste Queru",
        "email": "jbq@google.com",
        "time": "Fri Feb 24 08:38:22 2012 -0800"
      },
      "committer": {
        "name": "android code review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Fri Feb 24 08:38:23 2012 -0800"
      },
      "message": "Merge \"stagefright aacenc: Fix inline asm\""
    },
    {
      "commit": "54263bcfa6e9ad2fcb3e89617240f4ec0b3a2f99",
      "tree": "9d9c9779938fcddd57fe82291d4ac3e189dc5e93",
      "parents": [
        "afc08acfae7946ab3305feede3a96bc6441be75f",
        "7ce8b8c79c866fd787f3b4628abf5028207312e6"
      ],
      "author": {
        "name": "Jean-Baptiste Queru",
        "email": "jbq@google.com",
        "time": "Fri Feb 24 08:01:10 2012 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Fri Feb 24 08:01:10 2012 -0800"
      },
      "message": "am 0c96e869: am 41087f79: am d7ab4e0c: am bf1e85bf: Merge \"stagefright aacenc: Fix inline asm constraints\"\n\n* commit \u00270c96e8690408e3cfc12eee521a442c52f1c10b27\u0027:\n  stagefright aacenc: Fix inline asm constraints\n"
    },
    {
      "commit": "7ce8b8c79c866fd787f3b4628abf5028207312e6",
      "tree": "fa55f8db0ff1e9ec0f9974e6055aa7dda0b9ae4c",
      "parents": [
        "c58295bfa07615b81b9bf5784cb8e2dac79aded7",
        "6dfeab4ddf3fcb82483f29d146329aa959fc0c82"
      ],
      "author": {
        "name": "Jean-Baptiste Queru",
        "email": "jbq@google.com",
        "time": "Fri Feb 24 07:53:43 2012 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Fri Feb 24 07:53:43 2012 -0800"
      },
      "message": "am bf1e85bf: Merge \"stagefright aacenc: Fix inline asm constraints\"\n\n* commit \u0027bf1e85bfc8293646d57f0017afbfb0e09a1a41d7\u0027:\n  stagefright aacenc: Fix inline asm constraints\n"
    },
    {
      "commit": "6dfeab4ddf3fcb82483f29d146329aa959fc0c82",
      "tree": "6b31e1bcadc9d8ea7329aca8d702f5c4d41e3d6f",
      "parents": [
        "013b73bfc4d5fb21082ccccf45fa08c18f86aa08",
        "d2fdc7129d96391d22065866c612d532dfe411b3"
      ],
      "author": {
        "name": "Jean-Baptiste Queru",
        "email": "jbq@google.com",
        "time": "Fri Feb 24 07:39:02 2012 -0800"
      },
      "committer": {
        "name": "android code review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Fri Feb 24 07:39:03 2012 -0800"
      },
      "message": "Merge \"stagefright aacenc: Fix inline asm constraints\""
    },
    {
      "commit": "afc08acfae7946ab3305feede3a96bc6441be75f",
      "tree": "3e6a621742333be2e379a109e83593832b6cc1c0",
      "parents": [
        "04394b1c83d56e2956ba84aa9cb4b5d3b01d8ae8",
        "25eefbedf4b0ba6aea38605f4ba19c75a40810d1"
      ],
      "author": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Thu Feb 23 21:00:59 2012 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Feb 23 21:00:59 2012 -0800"
      },
      "message": "Merge \"Changed TimedTextInBandSource to TimedText3GPPSource.\""
    },
    {
      "commit": "04394b1c83d56e2956ba84aa9cb4b5d3b01d8ae8",
      "tree": "00ab13a1d3e0685d84a66284148b53463823efe7",
      "parents": [
        "e98f8c04faf27df3b1829d336299ad51dad569cf"
      ],
      "author": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Thu Feb 23 12:23:57 2012 -0800"
      },
      "committer": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Thu Feb 23 14:04:20 2012 -0800"
      },
      "message": "Fix memory leakage due to unreleased MuxOMX objects after disconnection\n\no related-to-bug: 5984232\n\nChange-Id: I20cbeff6ae865e995d02342549f1e09320543740\n"
    },
    {
      "commit": "16d3dfb5710290b334a07aadeb7d3620c7624e7c",
      "tree": "280d299b0efbbf8818cc5ee46e424507c3f41e28",
      "parents": [
        "7fd1703162a6ff694b03f6fd0a8c9f3525f6d9a4",
        "2d8bedd05437b6fccdbc6bf70f673ffd86744d59"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Thu Feb 23 09:13:45 2012 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Feb 23 09:13:45 2012 -0800"
      },
      "message": "Merge \"Add new APIs AMessage::(set|find)Buffer to make it safer to pass\""
    },
    {
      "commit": "7fd1703162a6ff694b03f6fd0a8c9f3525f6d9a4",
      "tree": "272ac90d4df3ebe73d0763a6782adf7a4917f185",
      "parents": [
        "79af02c6a813b5d31fba3e7b72686a02f0ae7e0f",
        "43b1d8ad30bcd61c8cc62fce52fdc6d8381e5732"
      ],
      "author": {
        "name": "Steve Block",
        "email": "steveblock@google.com",
        "time": "Thu Feb 23 04:29:30 2012 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Feb 23 04:29:30 2012 -0800"
      },
      "message": "Merge \"Drop support for Android HTTP stack\""
    },
    {
      "commit": "25eefbedf4b0ba6aea38605f4ba19c75a40810d1",
      "tree": "6d85adf5f9b2ad8f5d3b29a15e72279fa0fcd16c",
      "parents": [
        "3b81acab52b7140c1b8b20be2d67be3e221637e7"
      ],
      "author": {
        "name": "Insun Kang",
        "email": "insun@google.com",
        "time": "Thu Feb 23 14:03:23 2012 +0900"
      },
      "committer": {
        "name": "Insun Kang",
        "email": "insun@google.com",
        "time": "Thu Feb 23 15:13:24 2012 +0900"
      },
      "message": "Changed TimedTextInBandSource to TimedText3GPPSource.\n\nChange-Id: I820adffbf9b4012f25ab45e9624ae2c35fc5af94\n"
    },
    {
      "commit": "2d8bedd05437b6fccdbc6bf70f673ffd86744d59",
      "tree": "1a11658a7379249eb4f6bd73b356baa4a661f41e",
      "parents": [
        "79af02c6a813b5d31fba3e7b72686a02f0ae7e0f"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Tue Feb 21 14:38:23 2012 -0800"
      },
      "committer": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Wed Feb 22 16:20:59 2012 -0800"
      },
      "message": "Add new APIs AMessage::(set|find)Buffer to make it safer to pass\n\nABuffer objects through messages.\n\nChange-Id: I9f8b4e4c4767d0d70a0105e0c0813b754379b49d\n"
    },
    {
      "commit": "79af02c6a813b5d31fba3e7b72686a02f0ae7e0f",
      "tree": "662f61b610a5b0ee180d4b7940e1e1860b098eab",
      "parents": [
        "d6fd85a157ce2054b2304e6d171fa87ae09c363d",
        "5778822d86b0337407514b9372562b86edfa91cd"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Wed Feb 22 15:13:44 2012 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Feb 22 15:13:44 2012 -0800"
      },
      "message": "Merge \"Implementation of a java media codec interface and associated tools.\""
    },
    {
      "commit": "5778822d86b0337407514b9372562b86edfa91cd",
      "tree": "b8faf8188dfb8865bd88b4dfc778a7d9ab89bb73",
      "parents": [
        "c33305c5dd4cc06e71eb0c66a7150aa6ab647c99"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Tue Feb 21 11:47:18 2012 -0800"
      },
      "committer": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Wed Feb 22 15:06:06 2012 -0800"
      },
      "message": "Implementation of a java media codec interface and associated tools.\n\nChange-Id: I13e54062d4de584355c5d82bb027a68aeaf2923b\n"
    },
    {
      "commit": "42539cb5d02f0cbaedba2de6ad6be42a0d7a9a9a",
      "tree": "ac1862977f9452a394f6bc82ac11c212b7f17734",
      "parents": [
        "2e77ad2a9f7afb57b6f9127dd7c229e774baa9c8",
        "f063b49e95c28d63a58215ebda892a5fee4204cc"
      ],
      "author": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Wed Feb 22 13:14:50 2012 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Feb 22 13:14:50 2012 -0800"
      },
      "message": "Merge \"Fix build warning\""
    },
    {
      "commit": "f063b49e95c28d63a58215ebda892a5fee4204cc",
      "tree": "9909300bea158357aa45f1fb64f7b83c15208636",
      "parents": [
        "c33305c5dd4cc06e71eb0c66a7150aa6ab647c99"
      ],
      "author": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Fri Feb 17 16:24:10 2012 -0800"
      },
      "committer": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Wed Feb 22 11:46:53 2012 -0800"
      },
      "message": "Fix build warning\n\nwarning: pointer of type \u0027void *\u0027 used in arithmetic\nwarning: enumeral and non-enumeral type in conditional expression\n\nChange-Id: I7b8d626a636145ef648e3b5d0e77068216dd012e\n"
    },
    {
      "commit": "2e77ad2a9f7afb57b6f9127dd7c229e774baa9c8",
      "tree": "070aac75ae2aab56beef610f91eeecd90f3ce599",
      "parents": [
        "c33305c5dd4cc06e71eb0c66a7150aa6ab647c99"
      ],
      "author": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Tue Feb 21 17:16:25 2012 -0800"
      },
      "committer": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Wed Feb 22 10:20:46 2012 -0800"
      },
      "message": "Allow to record time lapse videos without using setProfile()\n\no also added a check on whether capture rate was set before starting time lapse video recording.\n\no related-to-bug: 6045507\n\nChange-Id: I8e1fdc8e8931e2684ab3822dc6260db44658e87d\n"
    },
    {
      "commit": "43b1d8ad30bcd61c8cc62fce52fdc6d8381e5732",
      "tree": "35cd178d25795958207b0d59a4a7d676d95f89df",
      "parents": [
        "c33305c5dd4cc06e71eb0c66a7150aa6ab647c99"
      ],
      "author": {
        "name": "Steve Block",
        "email": "steveblock@google.com",
        "time": "Thu Feb 16 17:49:31 2012 +0000"
      },
      "committer": {
        "name": "Steve Block",
        "email": "steveblock@google.com",
        "time": "Wed Feb 22 17:21:43 2012 +0000"
      },
      "message": "Drop support for Android HTTP stack\n\nAll future releases will use the Chromium HTTP stack and maintaining two HTTP\n    stacks adds maintenance overhead. The Chromium HTTP stack requires V8, but we\n    now use V8 in all build targets (b/5495373), so we can safely drop the Android\n    HTTP stack.\n\nLoadListener, HttpAuthHandlerImpl, Network, SslErrorHandlerImpl, WebViewWorker\n- Android-stack specific, removed\nStreamLoader, FrameLoader\n- Require LoadListener, removed\nCacheLoader, ContentLoader, DataLoader, FileLoader\n- Extend StreamLoader, removed\n\nBrowserFrame\n- Removed methods that create LoadListener\n- BrowserFrame.startLoadingResource() is called from native\nCallbackProxy, WebView\n- Removed calls to Network methods\nCacheManager, CookieManager, CookieSyncManager, WebViewCore, WebResourceResponse\n- Removed other Android-stack specific code\nJniUtlil\n- Removed useChromiumHttpStack()\nWebViewDatabase\n- Removed all code to create cookies and cache databases for Android HTTP stack\n\nSee corresponding WebKit change https://android-git.corp.google.com/g/166327.\n\nBug: 5495616\nChange-Id: If491675516f6eb187077af4220214bb6e6a8d045\n"
    },
    {
      "commit": "c33305c5dd4cc06e71eb0c66a7150aa6ab647c99",
      "tree": "2c25b614a0145b4bbc35b835e89542489fbf6cf1",
      "parents": [
        "b9c769aa8ec26e25a7a61e14a9d521c2adf5b68d",
        "b575ddce78d266fa218006f90306158dda5c8f56"
      ],
      "author": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Tue Feb 21 11:10:35 2012 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Feb 21 11:10:35 2012 -0800"
      },
      "message": "Merge \"Limit the amount of audio record data in each buffer\""
    },
    {
      "commit": "b9c769aa8ec26e25a7a61e14a9d521c2adf5b68d",
      "tree": "aad79235c527eee70bd2bf5acbe6003ca108ec70",
      "parents": [
        "3b81acab52b7140c1b8b20be2d67be3e221637e7"
      ],
      "author": {
        "name": "Steve Block",
        "email": "steveblock@google.com",
        "time": "Fri Feb 17 17:45:42 2012 +0000"
      },
      "committer": {
        "name": "Steve Block",
        "email": "steveblock@google.com",
        "time": "Tue Feb 21 14:19:26 2012 +0000"
      },
      "message": "Update stagefright makefile after dropping support for JSC\n\nBug: 5495373\nChange-Id: Ibb81196edd3a6eaa4999cf0e30a78368afb66360\n"
    },
    {
      "commit": "761defc341c5ce9019a42919c441f035f665ec0d",
      "tree": "23b76ab41456c90e80559ffbb7d8e31a38104dc4",
      "parents": [
        "ef7740be67a4d7b6b033ebed59c3d4a9c74a2c18"
      ],
      "author": {
        "name": "John Grossman",
        "email": "johngro@google.com",
        "time": "Thu Feb 09 15:09:05 2012 -0800"
      },
      "committer": {
        "name": "John Grossman",
        "email": "johngro@google.com",
        "time": "Thu Feb 16 13:45:12 2012 -0800"
      },
      "message": "Upintegreate AAH TX and RX players from ICS_AAH\n\nUpintegrate the android at home TX and RX players developed in the\nICS_AAH branch.\n\nChange-Id: I8247d3702e30d8b0e215b31a92675d8ab28dccbb\nSigned-off-by: John Grossman \u003cjohngro@google.com\u003e\n"
    },
    {
      "commit": "af7d8189f91c45ab919a6c9ac386b268c8d91168",
      "tree": "92619572cd0a03705a5b564ef5749fdd8066d86f",
      "parents": [
        "4ff14bae91075eb274eb1c2975982358946e7e63"
      ],
      "author": {
        "name": "John Grossman",
        "email": "johngro@google.com",
        "time": "Wed Jan 11 12:23:42 2012 -0800"
      },
      "committer": {
        "name": "John Grossman",
        "email": "johngro@google.com",
        "time": "Thu Feb 16 13:45:11 2012 -0800"
      },
      "message": "Enhance Visualizer behavior in the case of mediaserver death.\n\nBring the Visualizer class into line with the SDK documentation by\nreturning ERROR_DEAD_OBJECT instead of ERROR_INVALID_OPERATION when\nthe Visualizer loses its binder connection to the mediaserver because\nof a mediaserver restart.\n\nAlso add a new callback interface to allow clients to be\nasynchronously notified in the case of server death.  Right now, the\ninterface definition and the registration method are flagged as hidden\npending API council review/approval.\n\nSee http://b/issue?id\u003d5717519 for details.\n\nChange-Id: Ic15856f27ed5a950a583ac11ca81f79bd7e9b1a0\nSigned-off-by: John Grossman \u003cjohngro@google.com\u003e\n"
    },
    {
      "commit": "4ff14bae91075eb274eb1c2975982358946e7e63",
      "tree": "e9e54fddb9832d30b69c2a11c9ed2884397f2f95",
      "parents": [
        "951bd8d1ad9581a414e171ad8605a9515d0ad667"
      ],
      "author": {
        "name": "John Grossman",
        "email": "johngro@google.com",
        "time": "Wed Feb 08 16:37:41 2012 -0800"
      },
      "committer": {
        "name": "John Grossman",
        "email": "johngro@google.com",
        "time": "Thu Feb 16 13:45:11 2012 -0800"
      },
      "message": "Upintegrate Audio Flinger changes from ICS_AAH\n\nBring in changes to audio flinger made to support timed audio tracks\nand HW master volume control.\n\nChange-Id: Ide52d48809bdbed13acf35fd59b24637e35064ae\nSigned-off-by: John Grossman \u003cjohngro@google.com\u003e\n"
    },
    {
      "commit": "951bd8d1ad9581a414e171ad8605a9515d0ad667",
      "tree": "ff6c38d23fc61f39cbaa33b29a1bec5dd03c9d40",
      "parents": [
        "6dad4378f2a78d967defc8912ecf47f6ed117584"
      ],
      "author": {
        "name": "Mike J. Chen",
        "email": "mjchen@google.com",
        "time": "Mon Aug 15 11:59:47 2011 -0700"
      },
      "committer": {
        "name": "John Grossman",
        "email": "johngro@google.com",
        "time": "Thu Feb 16 13:45:10 2012 -0800"
      },
      "message": "Upintegrate the common_time service from ics-aah.\n\nMove the common_time service developed in the ics-aah branch back into\nmaster.\n\nThe common_time service is a small service build to synchronize an\narbitrary timeline amongst peers on a local sub-net.  While running\nand configured, the service will elect a master from the set of\navailable devices within the subnet, define a relationship between the\ncommon_time timeline the local time timeline (provided by the local\ntime HAL), and then attempt to maintain synchronization between common\nand local time by controlling the frequency of the local time clock\nvia the HAL, or by disciplining local time in the digital domain if\nthe local time HAL implementation does not support HW slewing.\n\nOn its own, the native common time service will do nothing until it is\nconfigured.  The CommonTimeManagementService (running out of the\nsystem server process) is responsible for implementing policy\nregarding configuration and operation of the common_time service and\nwill be added in a subsequent CL.\n\nChange-Id: I71292f9b9b1797665865689c4572c9d3a0552f64\nSigned-off-by: John Grossman \u003cjohngro@google.com\u003e\n"
    },
    {
      "commit": "b575ddce78d266fa218006f90306158dda5c8f56",
      "tree": "b60d95b1f2b8cd5130e8ec6e1aef4f617d6076ca",
      "parents": [
        "7a8b0ed6419e57dd8b41d3806893d63d3df91aab"
      ],
      "author": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Tue Feb 14 14:58:20 2012 -0800"
      },
      "committer": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Wed Feb 15 12:54:17 2012 -0800"
      },
      "message": "Limit the amount of audio record data in each buffer\n\no The size of each input buffer should be less than or equal to kMaxBufferSize\no related-to-bug: 5977032\n\nChange-Id: I04343169aac3df56694aad4ba7967ec45337ad7e\n"
    },
    {
      "commit": "d9b9b8d09e7471b0ffa21cfa9f944ef4ad300a71",
      "tree": "e2b8666cc7ca81254ce264129ddd70c076a63ed1",
      "parents": [
        "ed15977476a3d53103866e6d527fa3fb65d4166c",
        "99e53b86eebb605b70dd7591b89bf61a9414ed0e"
      ],
      "author": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Tue Feb 14 09:42:32 2012 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Feb 14 09:42:32 2012 -0800"
      },
      "message": "Merge \"Update comments\""
    },
    {
      "commit": "99e53b86eebb605b70dd7591b89bf61a9414ed0e",
      "tree": "8939550ada02fe21121550a83952ebf7638c0dac",
      "parents": [
        "6dbc1359f778575d09d6da722b060a6d72c2e7c5"
      ],
      "author": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Thu Jan 19 08:59:58 2012 -0800"
      },
      "committer": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Tue Feb 14 09:17:59 2012 -0800"
      },
      "message": "Update comments\n\nWe no longer put the filename at start of file.\n\nChange-Id: Ic435b159a23105681e3d4a6cb1ac097bc853302e\n"
    },
    {
      "commit": "ed15977476a3d53103866e6d527fa3fb65d4166c",
      "tree": "8c42c9c2f1ecb0ee10359e806a68927e4d0697e9",
      "parents": [
        "8d6a2449a91f5116d7243ab039393195ebd663fe",
        "38f5d71e72f3b76c5b519614d27f051d53cd2712"
      ],
      "author": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Tue Feb 14 09:09:03 2012 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Feb 14 09:09:03 2012 -0800"
      },
      "message": "Merge \"Remove dead code AudioTrack::getLoop\""
    },
    {
      "commit": "6dbc1359f778575d09d6da722b060a6d72c2e7c5",
      "tree": "721c46e8b89595b51a80ee71c71542895edc1308",
      "parents": [
        "7a8b0ed6419e57dd8b41d3806893d63d3df91aab"
      ],
      "author": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Thu Feb 02 10:56:47 2012 -0800"
      },
      "committer": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Tue Feb 14 07:30:48 2012 -0800"
      },
      "message": "AudioRecord and AudioTrack client tid\n\nInform AudioFlinger of the tid of the callback thread.\n\nChange-Id: I670df92dd06749b057238b48ed1094b13aab720b\n"
    },
    {
      "commit": "7a8b0ed6419e57dd8b41d3806893d63d3df91aab",
      "tree": "da2076d221f7eb3e26db190d51173c04a91e0788",
      "parents": [
        "1f5ce8b0941c9c6baadd40d151634145f6d5a35c"
      ],
      "author": {
        "name": "Jean-Michel Trivi",
        "email": "jmtrivi@google.com",
        "time": "Thu Feb 02 09:06:31 2012 -0800"
      },
      "committer": {
        "name": "Jean-Michel Trivi",
        "email": "jmtrivi@google.com",
        "time": "Mon Feb 13 12:39:54 2012 -0800"
      },
      "message": "Playback rate on MediaPlayer\n\nAdd support for modifying the playback rate of a MediaPlayer\n by altering the sample rate of its AudioTrack.\nThe playback rate is expressed in permille, where 1000 is the\n playback at normal speed.\n\nChange-Id: I981d060ab32f7bae7a767e82c60c88ae635dceed\n"
    },
    {
      "commit": "1f5ce8b0941c9c6baadd40d151634145f6d5a35c",
      "tree": "a1e57ab3d0decb8e4748f89e8f7caeab4c5caf80",
      "parents": [
        "44deb053252a3bd2f57a007ab9560f4924f62394",
        "94fef38613962c983c46ab0b97c58f5373412d2d"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Mon Feb 13 12:27:27 2012 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Feb 13 12:27:27 2012 -0800"
      },
      "message": "Merge \"Fix audio preprocessing library wrapper\""
    },
    {
      "commit": "860936d780d98a5968f40e66ca6ae800c67adbc3",
      "tree": "e385efb4808bbed472210480944eaa989c4ad9ea",
      "parents": [
        "2b213bc220768d2b984239511cd4554a96bc0079",
        "7c5b72c1ea1a7a8ec40c1364e5e32043799c811f"
      ],
      "author": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Fri Feb 10 17:57:16 2012 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Feb 10 17:57:16 2012 -0800"
      },
      "message": "Merge \"Change the signature of method addTextSource() in AwesomePlayer\""
    },
    {
      "commit": "9f1d4448050a4df7118c90c0c0d3e6f9c4b82f3b",
      "tree": "c63307d3e5438e9a33848b2e697ba6fabd7044e7",
      "parents": [
        "9d1f02d74fd395ec4de6861147da289423f0ab6f",
        "f1d5aa162c02a16b7195a43a9bcea4d592600ac4"
      ],
      "author": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Fri Feb 10 14:17:06 2012 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Feb 10 14:17:06 2012 -0800"
      },
      "message": "Merge \"Move away from MediaDebug and use ADebug instead\""
    },
    {
      "commit": "9d1f02d74fd395ec4de6861147da289423f0ab6f",
      "tree": "127f5a23da9e17614da1c5f7d84002f3c80c9016",
      "parents": [
        "0ba18ec1b343a8de70924f87630dd1f329b00fe6"
      ],
      "author": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Wed Feb 08 17:47:58 2012 -0800"
      },
      "committer": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Fri Feb 10 13:48:44 2012 -0800"
      },
      "message": "Follow raw pointer and sp\u003c\u003e conventions\n\nUnconditional delete for raw pointers.\nUse \"if (sp !\u003d 0)\" not \"if (sp.get() !\u003d 0)\" or \"if (sp !\u003d NULL)\".\nUse \"if (raw !\u003d NULL)\" not \"if (raw)\".\n\nChange-Id: I531a8da7c37149261ed2f34b862ec4896a4b785b\n"
    },
    {
      "commit": "0ba18ec1b343a8de70924f87630dd1f329b00fe6",
      "tree": "13000f3913f814761effcd771b93a66a5f46341a",
      "parents": [
        "12018d80add66f5558675614d73fa6549150806e",
        "90bebef5669a9385c706b042d146a31dca2e5d9b"
      ],
      "author": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Fri Feb 10 13:36:24 2012 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Feb 10 13:36:24 2012 -0800"
      },
      "message": "Merge \"No newline or space at end of ALOG format string\""
    },
    {
      "commit": "f1d5aa162c02a16b7195a43a9bcea4d592600ac4",
      "tree": "dc270a6e1a4ee6695e309eeb29c4d9ed7f3a20a2",
      "parents": [
        "43089daaf82bd2b8e5f9a29b80af5abaae4657b3"
      ],
      "author": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Mon Feb 06 23:46:37 2012 -0800"
      },
      "committer": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Fri Feb 10 11:43:09 2012 -0800"
      },
      "message": "Move away from MediaDebug and use ADebug instead\n\nChange-Id: I963a3b6f79a7292891973cbeeaf3378b38629f08\n"
    },
    {
      "commit": "7c5b72c1ea1a7a8ec40c1364e5e32043799c811f",
      "tree": "fa5ec98db2048b78c35b828843a78e9cf4e6f8a2",
      "parents": [
        "43089daaf82bd2b8e5f9a29b80af5abaae4657b3"
      ],
      "author": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Thu Feb 09 17:32:57 2012 -0800"
      },
      "committer": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Thu Feb 09 17:32:57 2012 -0800"
      },
      "message": "Change the signature of method addTextSource() in AwesomePlayer\n\no avoid a unnecessary copy constructor call\n\nChange-Id: Ib598bbe42d42a835549e2d29502c6f196f859874\n"
    },
    {
      "commit": "43089daaf82bd2b8e5f9a29b80af5abaae4657b3",
      "tree": "f02db6abff1cd9d35151468dee35fc0b741e80d3",
      "parents": [
        "5ec58d925520e6913fba3fc54413881af751c610"
      ],
      "author": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Thu Feb 09 11:53:57 2012 -0800"
      },
      "committer": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Thu Feb 09 15:02:08 2012 -0800"
      },
      "message": "Finish up B frame support in MPEG4Writer\n\no optimize to reduce the size of the size of the ctts box\no change the type for the time offset field in ctts table entry from int32_t to uint32_t according to the mp4 file spec\no also moved away from MediaDebug and used ADebug instead.\n\no related-to-bug: 4232183\n\nChange-Id: I19364303728da64359c63169eec7487508c1d0f8\n"
    },
    {
      "commit": "5ec58d925520e6913fba3fc54413881af751c610",
      "tree": "d833f4cf3772a3f3b8a68d2cc1060ed58840b82f",
      "parents": [
        "7ae4a2c130ec2cb5dec69d095b810698acc543b3"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Thu Feb 09 09:55:45 2012 -0800"
      },
      "committer": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Thu Feb 09 14:32:08 2012 -0800"
      },
      "message": "Experiment with seeking to closest frame instead of closest syncframe\n\nAlso supports SEEK_CLOSEST mode in the Matroska/Webm extractor.\n\nChange-Id: I257771648dfe41392a4cf8932f625489dcb9f234\n"
    },
    {
      "commit": "90bebef5669a9385c706b042d146a31dca2e5d9b",
      "tree": "a60c6383825eb3ed02493036605391d015732190",
      "parents": [
        "98ec94c5854daccc3474758524e7f4adfe535ce0"
      ],
      "author": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Fri Jan 27 15:24:38 2012 -0800"
      },
      "committer": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Wed Feb 08 17:21:49 2012 -0800"
      },
      "message": "No newline or space at end of ALOG format string\n\nChange-Id: I0bef580cbc818cb7c87aea23919d26f1446cec32\n"
    },
    {
      "commit": "38f5d71e72f3b76c5b519614d27f051d53cd2712",
      "tree": "a27ac85c22bc55b10bdeeaa3bddaae473325caaf",
      "parents": [
        "98ec94c5854daccc3474758524e7f4adfe535ce0"
      ],
      "author": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Wed Feb 08 14:12:12 2012 -0800"
      },
      "committer": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Wed Feb 08 14:12:12 2012 -0800"
      },
      "message": "Remove dead code AudioTrack::getLoop\n\nChange-Id: I868329c52f31bc20125f068500d8f892b4ec9796\n"
    },
    {
      "commit": "7ae4a2c130ec2cb5dec69d095b810698acc543b3",
      "tree": "40ab500ed6b99d4662be5abee1a8fe98f2d58902",
      "parents": [
        "98ec94c5854daccc3474758524e7f4adfe535ce0",
        "000e18370baae60ffd9f25b509501dd8c26deabf"
      ],
      "author": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Wed Feb 08 10:42:35 2012 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Feb 08 10:42:35 2012 -0800"
      },
      "message": "Merge \"Enable B frame support in MPEG4Writer\""
    },
    {
      "commit": "72ef00de10fa95bfcb948ed88ab9b7a177ed0b48",
      "tree": "beeaffd33a57a6cc5fa48f2fa905fc680c4746d1",
      "parents": [
        "dbfafaffe2e97eaf8d74ec6b6c468418a1ad2443"
      ],
      "author": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Tue Jan 17 11:09:42 2012 -0800"
      },
      "committer": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Wed Feb 08 10:06:32 2012 -0800"
      },
      "message": "Use audio_io_handle_t consistently instead of int\n\nOther:\n - add a comment to nextUniqueId\n - made ThreadBase::mId const, since it is only assigned in constructor.\n\nChange-Id: I4e8b7bec4e45badcde6274d574b8a9aabd046837\n"
    },
    {
      "commit": "5e92a7861196ddae14638d4b7a63fc4892b7ef59",
      "tree": "6772b944a26acb22381a2eb38871b46cff9d856a",
      "parents": [
        "0a20fa9c41c96e31fa20e071074a4b6e7f6c41c3"
      ],
      "author": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Mon Jan 30 07:40:52 2012 -0800"
      },
      "committer": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Wed Feb 08 09:21:39 2012 -0800"
      },
      "message": "Effect UUID inputs passed by pointer are const\n\nChange-Id: I1f5c338bcb7368e3dd8cd5f804b2e6d9fbe087f8\n"
    },
    {
      "commit": "4f9b0c54011eb8fd2ccfb393c2dcd51cd07800e0",
      "tree": "318b28bb04ce0b4ce39f75f6a8dbac27cee1455c",
      "parents": [
        "86feafe15b3f9609e1e9f64184688c2b6f2e4834",
        "0e265cf36d201a7ccc0238b5c60b50f43d1dc450"
      ],
      "author": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Wed Feb 08 08:34:33 2012 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Feb 08 08:34:33 2012 -0800"
      },
      "message": "Merge \"Remove dead mutex in AudioTrack/AudioRecord thread\""
    },
    {
      "commit": "f22147e5d2982e0c461f7ce8058c2d596d518bd4",
      "tree": "a0358efa5118e6a644c735b44c2378161ae0a8c6",
      "parents": [
        "1579d7948117e3e6541b0cfda02cc5234a3280ea",
        "a5224f319e2ba4b51ddb4287705ccf8d4b8ecc51"
      ],
      "author": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Wed Feb 08 07:42:40 2012 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Feb 08 07:42:40 2012 -0800"
      },
      "message": "Merge \"AudioTrack declare more methods const\""
    },
    {
      "commit": "e98bbd36d67243fe987b09904956550a68af1cc7",
      "tree": "3ad396f50bb4ad8e1bbf9fa939c4978851ec998b",
      "parents": [
        "dfa75555098a385ac8f4d29a73b32d66501f133d",
        "f587ba5b991c7cd91e4df093d0d796bd419e5d67"
      ],
      "author": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Wed Feb 08 07:39:27 2012 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Feb 08 07:39:27 2012 -0800"
      },
      "message": "Merge \"Declare more IAudioFlinger methods const\""
    },
    {
      "commit": "000e18370baae60ffd9f25b509501dd8c26deabf",
      "tree": "e447e9ceb46428f5f961534c38cef023e7206b3d",
      "parents": [
        "60c2b4ece6528d6d3f4e9e2c7e45772b65c4b87d"
      ],
      "author": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Mon Feb 06 23:46:37 2012 -0800"
      },
      "committer": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Tue Feb 07 18:32:29 2012 -0800"
      },
      "message": "Enable B frame support in MPEG4Writer\n\nThis patch allows us to automatically detect whether ctts box is needed in MPEG4Writer.\nMPEG4Writer uses ctts version 0 (non-negative offset value) store the composition time\noffset on a needed basis.\n\nCurrently, the size of the ctts box is not optimized. Optimization will be addressed\nin a subsequent patch.\n\no also changed the private method retrieveDecodingTime(bool) in OMXCodec\n  to getDecodingTime()\n\no related-to-bug: 4232183\n\nChange-Id: Ic6dc7b25ecd258c2506ca4b9c25156e922456e51\n"
    },
    {
      "commit": "f83463148fbe344989ee1da07d15b94c38a61582",
      "tree": "9c1f35749defb3acf0217182e4155ba351def261",
      "parents": [
        "60c2b4ece6528d6d3f4e9e2c7e45772b65c4b87d",
        "132e88ee86e4f11d1b649c336cd2d6eb5980c3fc"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Tue Feb 07 10:43:08 2012 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Feb 07 10:43:08 2012 -0800"
      },
      "message": "Merge \"MatroskaExtractor: to support MPEG4 and MP3 codec.\""
    },
    {
      "commit": "94fef38613962c983c46ab0b97c58f5373412d2d",
      "tree": "20240a26a14b49d0863eb80da2645eb62265abb8",
      "parents": [
        "f9289a4ca88d8f72cb0d6b3ca16fbc44ef4a2aeb"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Mon Feb 06 14:28:54 2012 -0800"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Mon Feb 06 14:51:57 2012 -0800"
      },
      "message": "Fix audio preprocessing library wrapper\n\nFixed bug in EFFECT_CMD_GET_CONFIG command handler in\nwebRTC audio processing library wrapper.\n\nChange-Id: I1d2cefa00930e549607af8dc2cf27555da8d313f\n"
    },
    {
      "commit": "60c2b4ece6528d6d3f4e9e2c7e45772b65c4b87d",
      "tree": "3df99c3e31172c3ffcb9361a46b68890891f5a0b",
      "parents": [
        "f9289a4ca88d8f72cb0d6b3ca16fbc44ef4a2aeb"
      ],
      "author": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Sat Feb 04 06:19:50 2012 -0800"
      },
      "committer": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Mon Feb 06 12:17:44 2012 -0800"
      },
      "message": "Don\u0027t call virtual function in destructor of SurfaceMediaSource\n\nChange-Id: I3cbc2b1222335b61c814b5cdcfaefa495148b0ec\n"
    },
    {
      "commit": "f9289a4ca88d8f72cb0d6b3ca16fbc44ef4a2aeb",
      "tree": "72b693683dfd6405f6f8f70cdfde38b4b563c4c6",
      "parents": [
        "f3623993b78669a624d9b3a703b361ed6c035ad9",
        "b44c9d2bdc0d5b9cb03254022a58e017b516e9e6"
      ],
      "author": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Sat Feb 04 05:54:53 2012 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Sat Feb 04 05:54:54 2012 -0800"
      },
      "message": "Merge \"Don\u0027t call virtual functions in the destructor for audio and camera source classes\""
    },
    {
      "commit": "a5224f319e2ba4b51ddb4287705ccf8d4b8ecc51",
      "tree": "eb36f63045d044c840072ad95398d49b743cd6bd",
      "parents": [
        "787bae0578fbaab6219ebf23494866b224d01438"
      ],
      "author": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Wed Jan 04 12:41:44 2012 -0800"
      },
      "committer": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Fri Feb 03 15:48:25 2012 -0800"
      },
      "message": "AudioTrack declare more methods const\n\nChange-Id: I4999e984460893961d0d8092cff17f3cf07d7214\n"
    },
    {
      "commit": "f587ba5b991c7cd91e4df093d0d796bd419e5d67",
      "tree": "0fe274cdfa6dcae81617725b5ea376c86245b104",
      "parents": [
        "787bae0578fbaab6219ebf23494866b224d01438"
      ],
      "author": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Thu Jan 26 16:25:10 2012 -0800"
      },
      "committer": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Fri Feb 03 15:40:56 2012 -0800"
      },
      "message": "Declare more IAudioFlinger methods const\n\nThis is just documentation, as C++ method const-ness doesn\u0027t mean anything\nfor a binder API.  Instead, here const means \"no side effects\".\n\nChange-Id: Iaa9cd2fe477db10ae9a40cac4f79f0faa9b4e5e6\n"
    },
    {
      "commit": "f3623993b78669a624d9b3a703b361ed6c035ad9",
      "tree": "a32c965376cfb2dfbb826a357907f3780a86711f",
      "parents": [
        "aad5bdff98ac5bc9be4288b5acf445465750711e",
        "8bcc65c753085fe3328592cceda0cf0e8f8b0a45"
      ],
      "author": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Fri Feb 03 15:37:40 2012 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Feb 03 15:37:40 2012 -0800"
      },
      "message": "Merge \"Don\u0027t call virtual functions in destructors for the writer classes\""
    },
    {
      "commit": "aad5bdff98ac5bc9be4288b5acf445465750711e",
      "tree": "100f6bd4818912764f1e82820ac0a14d38a2c96f",
      "parents": [
        "787bae0578fbaab6219ebf23494866b224d01438",
        "c71f6e2392bf55cc85ee7c1a376441e9b9aae4c8"
      ],
      "author": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Fri Feb 03 11:29:59 2012 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Feb 03 11:29:59 2012 -0800"
      },
      "message": "Merge \"Keep AACEncoder around for a bit longer to have more time fix issues related to video editor engine\""
    },
    {
      "commit": "c71f6e2392bf55cc85ee7c1a376441e9b9aae4c8",
      "tree": "276014eca0b627f7500e404940c3a08ce49e0e73",
      "parents": [
        "d45ee9d9d61af0791c7c3c51f8d4fe6794ef02a5"
      ],
      "author": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Fri Feb 03 11:03:56 2012 -0800"
      },
      "committer": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Fri Feb 03 11:20:03 2012 -0800"
      },
      "message": "Keep AACEncoder around for a bit longer to have more time fix issues related to video editor engine\n\no this should be reverted after the problem is fixed.\no related-to-bug: 5947347\n\nChange-Id: Iaec4b59d2c99c975e83f0588a813e9a4bfcb7ee2\n"
    },
    {
      "commit": "787bae0578fbaab6219ebf23494866b224d01438",
      "tree": "935422276579d6f7c3b4e835e1a79bc9082a2b26",
      "parents": [
        "ff3c83e04ae459c4252b86dd4440b4e37ee92c16",
        "de9719b3ec71472e6bf75117152176af51d1a515"
      ],
      "author": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Fri Feb 03 08:31:01 2012 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Feb 03 08:31:01 2012 -0800"
      },
      "message": "Merge \"Use audio_in_acoustics_t consistently\""
    },
    {
      "commit": "ff3c83e04ae459c4252b86dd4440b4e37ee92c16",
      "tree": "8de4de832991dd2086313b6168f8523d002f6251",
      "parents": [
        "a0d68338a88c2ddb4502f95017b546d603ef1ec7",
        "3d2f877c1cb4e4ae4ddde7f57f4353de9341f11b"
      ],
      "author": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Fri Feb 03 08:00:52 2012 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Feb 03 08:00:52 2012 -0800"
      },
      "message": "Merge \"Use ToneGenerator::tone_type consistently\""
    },
    {
      "commit": "a0d68338a88c2ddb4502f95017b546d603ef1ec7",
      "tree": "f052125f4720fde00179d41d4ee04e02934052e4",
      "parents": [
        "87f155d6655b2d3b27e69281a29e85c6407e4d26"
      ],
      "author": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Fri Jan 27 16:47:15 2012 -0800"
      },
      "committer": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Fri Feb 03 07:57:01 2012 -0800"
      },
      "message": "Use NULL not 0 for raw pointers\n\nUse if (p !\u003d NULL) instead of if (ptr)\n\nChange-Id: Iaec3413a59ccbf233c98fcd918cc7d70ac5da9fa\n"
    },
    {
      "commit": "62da7fbd60bee2dd57f503126266e9f04311d400",
      "tree": "22c9118701f42b77ed573001779390437d96872c",
      "parents": [
        "d45ee9d9d61af0791c7c3c51f8d4fe6794ef02a5",
        "83d86538c4c479a9225c75ab27938e8f05abb9c8"
      ],
      "author": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Fri Feb 03 07:18:06 2012 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Feb 03 07:18:06 2012 -0800"
      },
      "message": "Merge \"Make AudioTrack control block volume field private\""
    },
    {
      "commit": "b44c9d2bdc0d5b9cb03254022a58e017b516e9e6",
      "tree": "06a30f5984b5fd11da06bbc6bc7d8294f21d1ac2",
      "parents": [
        "2af955b7437ac5345d75a5e528ebbb749667af7e"
      ],
      "author": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Thu Feb 02 18:04:02 2012 -0800"
      },
      "committer": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Thu Feb 02 18:11:53 2012 -0800"
      },
      "message": "Don\u0027t call virtual functions in the destructor for audio and camera source classes\n\nChange-Id: Ia74ffc1c0cbd7971697f5e3c476e340ec5c7727a\n"
    },
    {
      "commit": "8bcc65c753085fe3328592cceda0cf0e8f8b0a45",
      "tree": "f7f9cff24dbf50e02f135b65bc1041e534c39d9c",
      "parents": [
        "2af955b7437ac5345d75a5e528ebbb749667af7e"
      ],
      "author": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Thu Feb 02 15:07:52 2012 -0800"
      },
      "committer": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Thu Feb 02 15:13:56 2012 -0800"
      },
      "message": "Don\u0027t call virtual functions in destructors for the writer classes\n\nHave not found any concrete bugs related to these calls yet, but we should avoid\ncalling virtual functions in destructors, regardless.\n\nChange-Id: I2d47b79d3fb2d29f418619bee83aa147d232a5d4\n"
    },
    {
      "commit": "914b33354be650a5213dd545ace49c6e81828043",
      "tree": "1a42885010a5da3815df7aee2389ecfee9fe6753",
      "parents": [
        "1fb41b40037b4cad585cbd4e08c58b66c61afed7",
        "928170837b9dec2b90f7a01b85182a8b00b45972"
      ],
      "author": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Thu Feb 02 13:30:49 2012 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Feb 02 13:30:51 2012 -0800"
      },
      "message": "Merge \"Removed a loop for buffer lookup\""
    },
    {
      "commit": "457d4c01ec0e922771ef57158431f48e4d267905",
      "tree": "b0218b14a0b83343e151f2e5e3ec637210547abc",
      "parents": [
        "e336de43a7cf186fe9d5070f5badfad6e302d9e3",
        "211eeaf17e5565b68447d29799dbf158a33cf4cf"
      ],
      "author": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Thu Feb 02 13:26:12 2012 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Feb 02 13:26:12 2012 -0800"
      },
      "message": "Merge \"More audio_stream_type_t\""
    },
    {
      "commit": "0e265cf36d201a7ccc0238b5c60b50f43d1dc450",
      "tree": "395a2c8f3685c1d1140f3ad12d2dff884d7db6ad",
      "parents": [
        "bf6954598193147cac980b8b5d7ad5215f1dec16"
      ],
      "author": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Thu Feb 02 10:52:34 2012 -0800"
      },
      "committer": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Thu Feb 02 11:23:30 2012 -0800"
      },
      "message": "Remove dead mutex in AudioTrack/AudioRecord thread\n\nThe client callback threads had mutexes called AudioTrackThread::mLock\nand ClientRecordThread::mLock.  These mutexes were only used by start()\nand stop(), and were unused by the thread itself.  But start() and\nstop() already have their own protection provided by AudioTrack::mLock\nand AudioRecord::mLock.  So the thread mutexes can be removed.\n\nChange-Id: I098406d381645d77fba06a15511e179a327848ef\n"
    },
    {
      "commit": "928170837b9dec2b90f7a01b85182a8b00b45972",
      "tree": "9b12a61e0043eb9673ca3d2968135e5dcb65d103",
      "parents": [
        "bb62819aa34b0e89090ccc50e5915e25bc137583"
      ],
      "author": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Wed Feb 01 19:28:54 2012 -0800"
      },
      "committer": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Thu Feb 02 10:24:25 2012 -0800"
      },
      "message": "Removed a loop for buffer lookup\n\no used the nInputPortIndex and nOutputPortIndex from header instead\n  of assuming that the # of ports \u003d\u003d 2\n\nChange-Id: I4b615912b088b4e2bac9c00e89986e811a5c58bb\n"
    },
    {
      "commit": "e336de43a7cf186fe9d5070f5badfad6e302d9e3",
      "tree": "231b23aa55532cd05bef6e0ce9648471e0285a69",
      "parents": [
        "bf6954598193147cac980b8b5d7ad5215f1dec16",
        "5387696d25bc710f8cd0e6d08079e2aa8d6c1417"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Thu Feb 02 09:39:28 2012 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Feb 02 09:39:28 2012 -0800"
      },
      "message": "Merge \"modifications for new webrtc modules\""
    },
    {
      "commit": "bf6954598193147cac980b8b5d7ad5215f1dec16",
      "tree": "ce13d6787dda7611c607ff6c8215c6a35a96c159",
      "parents": [
        "83f70f4472e9b0cacc5d372eddfcef4b02662d10",
        "4e260ab948787c2a814543077832847deae890fd"
      ],
      "author": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Wed Feb 01 18:53:50 2012 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Feb 01 18:53:50 2012 -0800"
      },
      "message": "Merge \"Remove the restriction that the width must be a multiple of 4 or 2 for thumbnail generation\""
    },
    {
      "commit": "4e260ab948787c2a814543077832847deae890fd",
      "tree": "fe76a9e4ebc7cf4e6ae681b57594a417dbdc656f",
      "parents": [
        "2af955b7437ac5345d75a5e528ebbb749667af7e"
      ],
      "author": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Wed Feb 01 13:33:33 2012 -0800"
      },
      "committer": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Wed Feb 01 13:37:36 2012 -0800"
      },
      "message": "Remove the restriction that the width must be a multiple of 4 or 2 for thumbnail generation\n\no simply applying the change in commit a161af9d1e2baa3f23e32634ef7dd9b4bbce9a6c to other formats\no related-to-bug: 5947196\n\nChange-Id: I95de10263b8ad9ec941f1d6b907fca6aeff0a90f\n"
    },
    {
      "commit": "83f70f4472e9b0cacc5d372eddfcef4b02662d10",
      "tree": "a6756b7f6de5233c37b9a244a129c79fd13464a1",
      "parents": [
        "252353088a5ebf8508fbc01439ff417805ef1417"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Wed Feb 01 11:47:54 2012 -0800"
      },
      "committer": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Wed Feb 01 12:16:40 2012 -0800"
      },
      "message": "The AMR WB software encoder is now an OMX component.\n\nChange-Id: Iebfb2696783a0163369ba4e8ef72e19ee76ad893\n"
    },
    {
      "commit": "5387696d25bc710f8cd0e6d08079e2aa8d6c1417",
      "tree": "32b5c99149c72f0a7ef23dc17d0ddbb4d810eef4",
      "parents": [
        "bb62819aa34b0e89090ccc50e5915e25bc137583"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Tue Jan 31 12:35:20 2012 -0800"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Wed Feb 01 10:59:17 2012 -0800"
      },
      "message": "modifications for new webrtc modules\n\nAdapt include files path in makefile and source to new\ndirectory structure in webrtc library.\n\nAlso changed the default AGC parameters to less extreme settings.\n\nChange-Id: Ia6a41c816dc44645f8f867937b722eede88c06ea\n"
    },
    {
      "commit": "252353088a5ebf8508fbc01439ff417805ef1417",
      "tree": "6abbd71af66f1d24791e5151aa41649f9b649b44",
      "parents": [
        "2af955b7437ac5345d75a5e528ebbb749667af7e"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Tue Jan 31 14:34:59 2012 -0800"
      },
      "committer": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Wed Feb 01 10:39:26 2012 -0800"
      },
      "message": "The software AMR NB encoder is now an OMX component.\n\nChange-Id: I890eab052a7c36409b8b694c964884e28dd8d8fc\n"
    },
    {
      "commit": "2af955b7437ac5345d75a5e528ebbb749667af7e",
      "tree": "a179f97b8985e4b7e485b3aa42d725a8de5f7673",
      "parents": [
        "10a5a34b0a8ba44343d0c7e0d3f261af49b5cf4c",
        "8a0f85fec2e28a97ba8fdda89c2a9b957098c114"
      ],
      "author": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Tue Jan 31 17:36:37 2012 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Jan 31 17:36:37 2012 -0800"
      },
      "message": "Merge \"add tests module tag to omx_tests\""
    },
    {
      "commit": "8a0f85fec2e28a97ba8fdda89c2a9b957098c114",
      "tree": "c677dab5c2a22ef25758dd412ea3e8c556663e65",
      "parents": [
        "bb62819aa34b0e89090ccc50e5915e25bc137583"
      ],
      "author": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Tue Jan 31 12:24:17 2012 -0800"
      },
      "committer": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Tue Jan 31 12:27:10 2012 -0800"
      },
      "message": "add tests module tag to omx_tests\n\nChange-Id: I5dcb5187f09a7ae980ac5857b7ade81001d459f8\n"
    },
    {
      "commit": "10a5a34b0a8ba44343d0c7e0d3f261af49b5cf4c",
      "tree": "92e700a77e45cca2a63ca4b78275a2207854b914",
      "parents": [
        "d459b485c61bd3e7fd81c5cd3af8ada27fc3e8d3",
        "6655174826330afe66ef766258181ae8c11f3f6c"
      ],
      "author": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Tue Jan 31 12:06:43 2012 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Jan 31 12:06:43 2012 -0800"
      },
      "message": "Merge \"First step of refactoring \u0027timedtext\u0027 code.\""
    },
    {
      "commit": "d459b485c61bd3e7fd81c5cd3af8ada27fc3e8d3",
      "tree": "394810d0fda09babebb89e1eff80ec54509c5a14",
      "parents": [
        "bb62819aa34b0e89090ccc50e5915e25bc137583"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Tue Jan 31 11:16:24 2012 -0800"
      },
      "committer": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Tue Jan 31 11:16:24 2012 -0800"
      },
      "message": "Slighly improve the API to discover if the OMX stack is running in the local\n\nprocess.\n\nChange-Id: Idd3c2f0d4a9542af01a3fdfd3b0bfab90e083505\n"
    },
    {
      "commit": "6655174826330afe66ef766258181ae8c11f3f6c",
      "tree": "5a2e4d563aede4d242cbe2b48e07e00ea6221cde",
      "parents": [
        "e59542680aa0e83cacbc471fbd3945b0509a849c"
      ],
      "author": {
        "name": "Insun Kang",
        "email": "insun@google.com",
        "time": "Wed Jan 11 22:03:12 2012 +0900"
      },
      "committer": {
        "name": "Insun Kang",
        "email": "insun@google.com",
        "time": "Tue Jan 31 14:44:32 2012 +0900"
      },
      "message": "First step of refactoring \u0027timedtext\u0027 code.\n\nGoal\n1. Removed dependency of TimedTextPlayer on AwsomePlayer.\n2. Generalized TimedTextParser to TimedTextSource and its subclasses.\n\nSummary\n1. Introduced TimedTextDriver, TimedTextPlayer (new implementation),\nTimedTextSource (and its subclasses).\n2. Removed TimedTextParser.\n\nRemaining TODOs\n1. Revise VideoVidew, Gallery3D app, AwesomePlayer to check if\n\u0027pause\u0027 and \u0027resume\u0027 works well.\n2. Consider revising MediaPlayer APIs such as setParameter() -\u003e\naddTextSource(). Need more thoughts.\n\nChange-Id: Ie0c4f15b9690102de755cef6940f8c31ccf78e27\n"
    }
  ],
  "next": "530f752a8191ccc6bde82fb2012aa3cd032257c0"
}
