)]}'
{
  "log": [
    {
      "commit": "a47f3165f53c8e8fb8907a94de7417e2c3047eeb",
      "tree": "d6f691af946f8754b8534347c9b0b3ec535e776e",
      "parents": [
        "659004c2949620d8adb29e1d950a2dd1c75ba9a9"
      ],
      "author": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Wed Nov 07 10:13:08 2012 -0800"
      },
      "committer": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Thu Nov 08 11:22:38 2012 -0800"
      },
      "message": "Simplify AudioTrack::restoreTrack_l()\n\nRemove CBLK_RESTORING and CBLK_RESTORED from control block flags,\nfor AudioTrack only.  They are still used by AudioRecord.\n\nThis is part of a series to clean up the control block.\n\nChange-Id: Iae4798f5b527c492bdaf789987ff3a1dadd0cb37\n"
    },
    {
      "commit": "659004c2949620d8adb29e1d950a2dd1c75ba9a9",
      "tree": "0619d1c2fa1515119ddd92648724e89a1073e76a",
      "parents": [
        "755e8e1dcf36f282b727ff22d87d3c2fac70d30a",
        "b1c0993b215c5c3eebd1c6bafc22bba23d57a70b"
      ],
      "author": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Thu Nov 08 10:35:06 2012 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Nov 08 10:35:07 2012 -0800"
      },
      "message": "Merge \"Add all-channel AudioTrack::setVolume() API\""
    },
    {
      "commit": "755e8e1dcf36f282b727ff22d87d3c2fac70d30a",
      "tree": "e0c8468a87427f51deba8d018931afb4394b3f1d",
      "parents": [
        "864585df53eb97c31e77b3ad7c0d89e4f9b42588",
        "d5ed6e88a9bea1879e41d7defaf1edea7c09f554"
      ],
      "author": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Thu Nov 08 10:04:06 2012 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Nov 08 10:04:07 2012 -0800"
      },
      "message": "Merge \"Fix call to restoreTrack_l() without lock held\""
    },
    {
      "commit": "d5ed6e88a9bea1879e41d7defaf1edea7c09f554",
      "tree": "99a34f51474700f4873e3f817b6b9f2c47001fc3",
      "parents": [
        "8fa3ad0e4c77f7868348ad2a4cacc34c34e7c39e"
      ],
      "author": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Fri Nov 02 13:05:14 2012 -0700"
      },
      "committer": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Wed Nov 07 16:11:56 2012 -0800"
      },
      "message": "Fix call to restoreTrack_l() without lock held\n\nAlso document lock order\n\nChange-Id: I2c1f273a0a51fa79ee3dd766de8d23083e270051\n"
    },
    {
      "commit": "864585df53eb97c31e77b3ad7c0d89e4f9b42588",
      "tree": "529492712326aa5aa997aa2d2f66a65baf4356b1",
      "parents": [
        "8fa3ad0e4c77f7868348ad2a4cacc34c34e7c39e"
      ],
      "author": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Tue Nov 06 16:15:41 2012 -0800"
      },
      "committer": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Wed Nov 07 08:32:40 2012 -0800"
      },
      "message": "Remove CBLK_DIRECTION from control block flags\n\nThis is part of a series to clean up the control block.\n\nChange-Id: I0265fece3247356b585d4d48fbda6f37aea8a851\n"
    },
    {
      "commit": "8fa3ad0e4c77f7868348ad2a4cacc34c34e7c39e",
      "tree": "b2ca5d7c9f8ff86f0e69359251a873478115c503",
      "parents": [
        "9d91e2a52b74380dae2662c8c00477c013b83c2c",
        "e0b07179a48ee50fda931d2aa1b3c751d167e4d7"
      ],
      "author": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Wed Nov 07 08:29:30 2012 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Nov 07 08:29:31 2012 -0800"
      },
      "message": "Merge \"Remove CBLK_FAST from control block flags\""
    },
    {
      "commit": "9d91e2a52b74380dae2662c8c00477c013b83c2c",
      "tree": "4efa95627996831eb5dd6a92701ca79fdf262688",
      "parents": [
        "1f315f2550a06debd7e43fb508b2e1a8cd7a9046",
        "05d499958e4030938ed77a924ebdd9899f36752e"
      ],
      "author": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Wed Nov 07 08:09:22 2012 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Nov 07 08:09:23 2012 -0800"
      },
      "message": "Merge \"Remove unused fields in AudioTrack::Buffer\""
    },
    {
      "commit": "1f315f2550a06debd7e43fb508b2e1a8cd7a9046",
      "tree": "0e7d1b07b675ae06b4a1d69de33d953d5be7d6c5",
      "parents": [
        "879256758603bac0e4718ab88db145f19f70027b",
        "26ba972eafde73a26271ecf027a1d5988ce50eb8"
      ],
      "author": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Wed Nov 07 08:03:13 2012 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Nov 07 08:03:14 2012 -0800"
      },
      "message": "Merge \"Removed unused fields in AudioRecord::Buffer\""
    },
    {
      "commit": "e0b07179a48ee50fda931d2aa1b3c751d167e4d7",
      "tree": "d495cc851dba53652011108297d100e64a4c4acd",
      "parents": [
        "48c6b2628f8a6037309c7957b07129d850187aa3"
      ],
      "author": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Tue Nov 06 15:03:34 2012 -0800"
      },
      "committer": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Tue Nov 06 17:25:22 2012 -0800"
      },
      "message": "Remove CBLK_FAST from control block flags\n\nThis is part of a series to clean up the control block.\n\nChange-Id: Ic881a3560d9547cb63fcc0cefec87aa3da480e0d\n"
    },
    {
      "commit": "879256758603bac0e4718ab88db145f19f70027b",
      "tree": "bbea838ea01a2f8155b89b71191be8a3877920c9",
      "parents": [
        "48c6b2628f8a6037309c7957b07129d850187aa3",
        "3f71761cab8a08e4ae9e4cf8cb8f1b82643825b2"
      ],
      "author": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Tue Nov 06 15:39:59 2012 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Nov 06 15:39:59 2012 -0800"
      },
      "message": "Merge changes I5d62a6c2,Iebf76958,I8068f0f7\n\n* changes:\n  improve resample test\n  change how we store the FIR coefficients\n  improve SINC resampler performance\n"
    },
    {
      "commit": "05d499958e4030938ed77a924ebdd9899f36752e",
      "tree": "c1eb564773575a2905de4b99f2a352e315611a5e",
      "parents": [
        "48c6b2628f8a6037309c7957b07129d850187aa3"
      ],
      "author": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Tue Nov 06 14:25:20 2012 -0800"
      },
      "committer": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Tue Nov 06 14:37:04 2012 -0800"
      },
      "message": "Remove unused fields in AudioTrack::Buffer\n\nChange-Id: Iab75f6e2348d8b6d1f3cec95aeb3fcd5135dfb50\n"
    },
    {
      "commit": "26ba972eafde73a26271ecf027a1d5988ce50eb8",
      "tree": "855c95819711ccf8e641bf77d428ea9d81955415",
      "parents": [
        "48c6b2628f8a6037309c7957b07129d850187aa3"
      ],
      "author": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Thu Jun 21 16:24:32 2012 -0700"
      },
      "committer": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Tue Nov 06 14:27:51 2012 -0800"
      },
      "message": "Removed unused fields in AudioRecord::Buffer\n\nChange-Id: I89fc6d8f695b48516d956b0a9a4a43d408f369f9\n"
    },
    {
      "commit": "48c6b2628f8a6037309c7957b07129d850187aa3",
      "tree": "5f7da68ffa30a22cc567a71af0d0fbf2c3ffb4c3",
      "parents": [
        "e6fb323655801999ae9f5c3c51cb2f1cedc8b131",
        "33cf49b168a88a88167c46b01787a57b49cd875f"
      ],
      "author": {
        "name": "The Android Open Source Project",
        "email": "initial-contribution@android.com",
        "time": "Tue Nov 06 12:29:13 2012 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Tue Nov 06 12:29:13 2012 -0800"
      },
      "message": "am 33cf49b1: (-s ours) am 78b012f5: Reconcile with jb-mr1-factory-release jb-mr1-release - do not merge\n\n* commit \u002733cf49b168a88a88167c46b01787a57b49cd875f\u0027:\n"
    },
    {
      "commit": "33cf49b168a88a88167c46b01787a57b49cd875f",
      "tree": "9cb42c78836745884fb27d823740fd26972db1f3",
      "parents": [
        "3b31d805517c0bde8a0ebed219cbd4b8409c71c2",
        "78b012f5bc05706d1ce412811ccfaa9385dae0ab"
      ],
      "author": {
        "name": "The Android Open Source Project",
        "email": "initial-contribution@android.com",
        "time": "Tue Nov 06 12:24:38 2012 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Tue Nov 06 12:24:38 2012 -0800"
      },
      "message": "am 78b012f5: Reconcile with jb-mr1-factory-release jb-mr1-release - do not merge\n\n* commit \u002778b012f5bc05706d1ce412811ccfaa9385dae0ab\u0027:\n"
    },
    {
      "commit": "78b012f5bc05706d1ce412811ccfaa9385dae0ab",
      "tree": "48362f445e0d1ad7c0e2fa3b7c3d1cdeb2fcfee7",
      "parents": [
        "1c6833afd6cfdbc6c696ed0719ceedc37ec0b534",
        "1b59ac59bb1c1f28bd40b09cd0995db873e25692",
        "f5037ad1ebb04e99622af5e99aeac0c1b44090b7"
      ],
      "author": {
        "name": "The Android Open Source Project",
        "email": "initial-contribution@android.com",
        "time": "Tue Nov 06 12:16:54 2012 -0800"
      },
      "committer": {
        "name": "The Android Open Source Project",
        "email": "initial-contribution@android.com",
        "time": "Tue Nov 06 12:16:54 2012 -0800"
      },
      "message": "Reconcile with jb-mr1-factory-release jb-mr1-release - do not merge\n\nChange-Id: Idf4c25115d89397ba668fc290344b2e7c1ea1993\n"
    },
    {
      "commit": "e6fb323655801999ae9f5c3c51cb2f1cedc8b131",
      "tree": "5f7da68ffa30a22cc567a71af0d0fbf2c3ffb4c3",
      "parents": [
        "c762a9b97c2bd7b701c635e9f204e6d6e0d3e218",
        "d2c38fc4d5dc742d7441444316849510dd2b7363"
      ],
      "author": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Tue Nov 06 11:34:30 2012 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Nov 06 11:34:30 2012 -0800"
      },
      "message": "Merge \"Cache mCblk in local variable cblk\""
    },
    {
      "commit": "c762a9b97c2bd7b701c635e9f204e6d6e0d3e218",
      "tree": "77e14c6e7face199083ce8c1a2a309c1e6fdd9f1",
      "parents": [
        "cce9dfb4b17ef5a42c5805aeeae28d3390e4655f",
        "3b31d805517c0bde8a0ebed219cbd4b8409c71c2"
      ],
      "author": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Tue Nov 06 11:08:29 2012 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Tue Nov 06 11:08:29 2012 -0800"
      },
      "message": "am 3b31d805: am 1c6833af: Ignore SIGPIPE during write() to broken pipe\n\n* commit \u00273b31d805517c0bde8a0ebed219cbd4b8409c71c2\u0027:\n  Ignore SIGPIPE during write() to broken pipe\n"
    },
    {
      "commit": "3b31d805517c0bde8a0ebed219cbd4b8409c71c2",
      "tree": "9cb42c78836745884fb27d823740fd26972db1f3",
      "parents": [
        "8b6ce0a269ba67995766980f5b83937302143e64",
        "1c6833afd6cfdbc6c696ed0719ceedc37ec0b534"
      ],
      "author": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Tue Nov 06 11:06:20 2012 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Tue Nov 06 11:06:20 2012 -0800"
      },
      "message": "am 1c6833af: Ignore SIGPIPE during write() to broken pipe\n\n* commit \u00271c6833afd6cfdbc6c696ed0719ceedc37ec0b534\u0027:\n  Ignore SIGPIPE during write() to broken pipe\n"
    },
    {
      "commit": "d2c38fc4d5dc742d7441444316849510dd2b7363",
      "tree": "5f7da68ffa30a22cc567a71af0d0fbf2c3ffb4c3",
      "parents": [
        "cce9dfb4b17ef5a42c5805aeeae28d3390e4655f"
      ],
      "author": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Thu Nov 01 14:58:02 2012 -0700"
      },
      "committer": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Tue Nov 06 10:33:38 2012 -0800"
      },
      "message": "Cache mCblk in local variable cblk\n\nUse \"iMem\" for sp\u003cIMemory\u003e\n\nChange-Id: I2f1fbbc517fbd77cfc92f6c3b1f253c26bae93b0\n"
    },
    {
      "commit": "cce9dfb4b17ef5a42c5805aeeae28d3390e4655f",
      "tree": "77e14c6e7face199083ce8c1a2a309c1e6fdd9f1",
      "parents": [
        "287fedb1b1430f138c1f583869b10294773945be",
        "c28c03b0b819d705522929852ecdb5a8bb50b13b"
      ],
      "author": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Tue Nov 06 10:27:58 2012 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Nov 06 10:27:59 2012 -0800"
      },
      "message": "Merge \"AudioRecord comments\""
    },
    {
      "commit": "1c6833afd6cfdbc6c696ed0719ceedc37ec0b534",
      "tree": "48362f445e0d1ad7c0e2fa3b7c3d1cdeb2fcfee7",
      "parents": [
        "96076964863ee6887f0bed9d0f11f424b48ab9b9"
      ],
      "author": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Wed Oct 17 12:16:50 2012 -0700"
      },
      "committer": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Tue Nov 06 09:28:55 2012 -0800"
      },
      "message": "Ignore SIGPIPE during write() to broken pipe\n\nThis happens occasionally when taking a bugreport.\n\nBug: 6447319\nChange-Id: Ia6531a4a3658461f8fd3f7106e7996da7cc5933a\n"
    },
    {
      "commit": "287fedb1b1430f138c1f583869b10294773945be",
      "tree": "2acc7ea1469d0d70d322cd547b4859efd103be10",
      "parents": [
        "8e825a57202ce6cb2ddac67683ee5885334ce75d"
      ],
      "author": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Mon Nov 05 13:39:09 2012 -0800"
      },
      "committer": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Mon Nov 05 16:41:14 2012 -0800"
      },
      "message": "Merge duplicate code in TrackBase::TrackBase()\n\nChange-Id: Id8a7db4d94888796a9dcbed4cac99941705cd174\n"
    },
    {
      "commit": "8e825a57202ce6cb2ddac67683ee5885334ce75d",
      "tree": "967d141640b7c6cbb737cd6c1ec6a6335fec9310",
      "parents": [
        "7eb54958353458953ad052418c1c98a1b5338b7d",
        "9c5fdd83f9b9f49be35107971feb33528d60b945"
      ],
      "author": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Mon Nov 05 16:32:24 2012 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Nov 05 16:32:24 2012 -0800"
      },
      "message": "Merge \"Simplify control block flag names\""
    },
    {
      "commit": "b1c0993b215c5c3eebd1c6bafc22bba23d57a70b",
      "tree": "7b2d2eb6d08c5460fc896e083983ef6e65b5db45",
      "parents": [
        "ad4e408b8ea397caadbfee85e1e39515e7e08104"
      ],
      "author": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Mon Feb 27 16:21:04 2012 -0800"
      },
      "committer": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Mon Nov 05 15:12:51 2012 -0800"
      },
      "message": "Add all-channel AudioTrack::setVolume() API\n\nAdd combined channel APIs setVolume to AudioTrack,\nand remove obsolete getVolume.\n\nChange-Id: I0c87bfdbff4f4292259fa33e65f67badbafd270b\n"
    },
    {
      "commit": "7eb54958353458953ad052418c1c98a1b5338b7d",
      "tree": "974d8e8a8e49b24dbcacbbb99799c703a0f91971",
      "parents": [
        "ad4e408b8ea397caadbfee85e1e39515e7e08104",
        "847d05dc8fa144dcf8f4f435d6a6ac1727f00937"
      ],
      "author": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Mon Nov 05 14:58:23 2012 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Nov 05 14:58:24 2012 -0800"
      },
      "message": "Merge \"Remove deprecated AudioTrack APIs\""
    },
    {
      "commit": "847d05dc8fa144dcf8f4f435d6a6ac1727f00937",
      "tree": "c079d882c6070ba620cad05b2b5254b4ba2ecf50",
      "parents": [
        "f27bdebd0c611f9618577f65346f44574146dc00"
      ],
      "author": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Mon Feb 27 16:05:09 2012 -0800"
      },
      "committer": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Mon Nov 05 13:49:59 2012 -0800"
      },
      "message": "Remove deprecated AudioTrack APIs\n\nChange-Id: I88be6525f3e33df529c0c3cb701d12a484809477\n"
    },
    {
      "commit": "9c5fdd83f9b9f49be35107971feb33528d60b945",
      "tree": "cd8f20f3c4355d55057cc70369be9c2d3f890838",
      "parents": [
        "ad4e408b8ea397caadbfee85e1e39515e7e08104"
      ],
      "author": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Mon Nov 05 13:38:15 2012 -0800"
      },
      "committer": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Mon Nov 05 13:43:51 2012 -0800"
      },
      "message": "Simplify control block flag names\n\nUse only one symbol per flag\n\nChange-Id: Ia3582e2134abd60c896d11337face65383e79c7c\n"
    },
    {
      "commit": "3f71761cab8a08e4ae9e4cf8cb8f1b82643825b2",
      "tree": "518347d362fa6887935498384961223b4d11de77",
      "parents": [
        "46afbec3743f1d799f185273ff897d1f8e0175dd"
      ],
      "author": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Sun Nov 04 18:49:14 2012 -0800"
      },
      "committer": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Mon Nov 05 01:05:01 2012 -0800"
      },
      "message": "improve resample test\n\n- handle stereo input\n- input file can now be ommited, in this case\n  a linear chirp will be used automatically\n- better usage information\n\nChange-Id: I5d62a6c26a9054a1c1a517a065b4df5a2cdcda22\n"
    },
    {
      "commit": "46afbec3743f1d799f185273ff897d1f8e0175dd",
      "tree": "ed6dbf983c554f78ab107d3002f6201e51356961",
      "parents": [
        "a798c97386a842d06d290797ba5dce95d031332a"
      ],
      "author": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Sun Nov 04 02:03:49 2012 -0800"
      },
      "committer": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Mon Nov 05 01:03:43 2012 -0800"
      },
      "message": "change how we store the FIR coefficients\n\nThe coefficient table is now transposed and shows\nmuch better its polyphase nature: we now have a FIR\nper line, each line corresponding to a phase.\n\nThis doesn\u0027t change at all the results produced by\nthe filter, but allows us to make slightly better\nuse of the data cache and improves performance a bit\n(although not as much as I thought it would).\n\nThe main benefit is that it is the first step\nbefore we can make much larger optimizations\n(like using NEON).\n\nChange-Id: Iebf7695825dcbd41f25861efcaefbaa3365ecb43\n"
    },
    {
      "commit": "a798c97386a842d06d290797ba5dce95d031332a",
      "tree": "1406a215180c4350ea3646f41f93217b0aec62b0",
      "parents": [
        "f27bdebd0c611f9618577f65346f44574146dc00"
      ],
      "author": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Sat Nov 03 23:37:53 2012 -0700"
      },
      "committer": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Mon Nov 05 01:03:02 2012 -0800"
      },
      "message": "improve SINC resampler performance\n\nThe improvement is about 60% by just tweaking a few\nthings to help the compiler generate better code.\nIt turns out that inlining too much stuff manually was hurting us.\n\nChange-Id: I8068f0f75051f95ac600e50ce552572dd1e8c304\n"
    },
    {
      "commit": "ad4e408b8ea397caadbfee85e1e39515e7e08104",
      "tree": "8d37664a29551f98fd4c94717173715dee65038c",
      "parents": [
        "f27bdebd0c611f9618577f65346f44574146dc00"
      ],
      "author": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Fri Oct 26 14:28:05 2012 -0700"
      },
      "committer": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Fri Nov 02 15:35:11 2012 -0700"
      },
      "message": "Turn off executable bit on ordinary files\n\nChange-Id: I0abea25b58fb1d03975bed9cca40f826fcd4c5e4\n"
    },
    {
      "commit": "f27bdebd0c611f9618577f65346f44574146dc00",
      "tree": "2fec31f5fff81ffbca3769e10df0a11e3cb6d5b3",
      "parents": [
        "9a08ebc8de71e260efb86cd1a04559b075b38ebc",
        "4ed475d3ad4231370371e14a94779c5d300eb3c5"
      ],
      "author": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Fri Nov 02 15:21:25 2012 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Nov 02 15:21:25 2012 -0700"
      },
      "message": "Merge \"new coefficients for the vhq resampler\""
    },
    {
      "commit": "9a08ebc8de71e260efb86cd1a04559b075b38ebc",
      "tree": "3974062bbee1bc0287d7f0d1ac00a1db1108e584",
      "parents": [
        "821cea93f38065592456d6644600f5ee1123fe72"
      ],
      "author": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Fri Nov 02 09:59:51 2012 -0700"
      },
      "committer": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Fri Nov 02 13:24:50 2012 -0700"
      },
      "message": "Fix spurious wakeup waiting for new IAudioTrack\n\nIf there was a spurious wakeup while waiting for another thread to create\na new IAudioTrack, we assumed that the track has been created when it\nmight not have been.\n\nChange-Id: I5f3999b4f7a06a00aabd65a746cc7222fff396ab\n"
    },
    {
      "commit": "c28c03b0b819d705522929852ecdb5a8bb50b13b",
      "tree": "38cc8d3661d3b76fae5012a59f176dedc4302161",
      "parents": [
        "821cea93f38065592456d6644600f5ee1123fe72"
      ],
      "author": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Thu Nov 01 15:41:48 2012 -0700"
      },
      "committer": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Fri Nov 02 10:56:20 2012 -0700"
      },
      "message": "AudioRecord comments\n\nChange-Id: Ibec910608948d778dc655d900255a80384e9b06f\n"
    },
    {
      "commit": "821cea93f38065592456d6644600f5ee1123fe72",
      "tree": "7dfad9c87fc42fcb090d74ae09a5408be16e2fd5",
      "parents": [
        "efced1d83add1d0f1210ac4d949cce8dd345b672",
        "b64497eb8724c4c372fffdbf3ee30543432953c5"
      ],
      "author": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Fri Nov 02 10:51:32 2012 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Nov 02 10:51:33 2012 -0700"
      },
      "message": "Merge \"Add NBAIO support for more sample rates\""
    },
    {
      "commit": "efced1d83add1d0f1210ac4d949cce8dd345b672",
      "tree": "aa8d9524743fcf1f8b39c1054bf947c27af23cc3",
      "parents": [
        "dcf26b7a6f557c9d0850e23f736d8637f9f6857c",
        "ad2f6dbe14e601ae69f3697bc17106f9fd7d59d6"
      ],
      "author": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Fri Nov 02 10:20:53 2012 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Nov 02 10:20:54 2012 -0700"
      },
      "message": "Merge \"AudioTrack comments\""
    },
    {
      "commit": "ad2f6dbe14e601ae69f3697bc17106f9fd7d59d6",
      "tree": "bfc68efc76a15bf581b9663c759097397c1732c6",
      "parents": [
        "cd91c4461d2d3da1b3cc3d8d0f61fc266dbeec0f"
      ],
      "author": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Thu Nov 01 15:45:06 2012 -0700"
      },
      "committer": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Fri Nov 02 10:18:37 2012 -0700"
      },
      "message": "AudioTrack comments\n\nChange-Id: I08988f635c5bc6f4c35e9c4188f3d6fa557bc4c2\n"
    },
    {
      "commit": "dcf26b7a6f557c9d0850e23f736d8637f9f6857c",
      "tree": "698e70cce735a6ba790c98a1ad2a4b806f30091e",
      "parents": [
        "cd91c4461d2d3da1b3cc3d8d0f61fc266dbeec0f",
        "2e136686cd60556b681480079142142ab4a7e07c"
      ],
      "author": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Fri Nov 02 10:15:33 2012 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Nov 02 10:15:34 2012 -0700"
      },
      "message": "Merge \"Remove unused default parameter for copyBuffer()\""
    },
    {
      "commit": "cd91c4461d2d3da1b3cc3d8d0f61fc266dbeec0f",
      "tree": "e695f0dfa1dafb3978144842eb29066534d0c003",
      "parents": [
        "ea4d950e9d2cfbb06fde1ccb6ddada5adb0a726e",
        "8b6ce0a269ba67995766980f5b83937302143e64"
      ],
      "author": {
        "name": "The Android Open Source Project",
        "email": "initial-contribution@android.com",
        "time": "Fri Nov 02 07:30:27 2012 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Fri Nov 02 07:30:27 2012 -0700"
      },
      "message": "am 8b6ce0a2: (-s ours) Reconcile with jb-mr1-release - do not merge\n\n* commit \u00278b6ce0a269ba67995766980f5b83937302143e64\u0027:\n"
    },
    {
      "commit": "8b6ce0a269ba67995766980f5b83937302143e64",
      "tree": "a56b108de9fb0b4ebae031234e564c9a3f3abe02",
      "parents": [
        "d37ee8fb36c972bf8d07868700a2c47358e25eb4",
        "f5037ad1ebb04e99622af5e99aeac0c1b44090b7"
      ],
      "author": {
        "name": "The Android Open Source Project",
        "email": "initial-contribution@android.com",
        "time": "Fri Nov 02 07:28:14 2012 -0700"
      },
      "committer": {
        "name": "The Android Open Source Project",
        "email": "initial-contribution@android.com",
        "time": "Fri Nov 02 07:28:14 2012 -0700"
      },
      "message": "Reconcile with jb-mr1-release - do not merge\n\nChange-Id: Icad86b92debd9605c745283aeffc3f459a3549ce\n"
    },
    {
      "commit": "4ed475d3ad4231370371e14a94779c5d300eb3c5",
      "tree": "010c4fcad2bdf08f42cde74686ea66d222893866",
      "parents": [
        "719ae96a5308273100a68d112f131c61f9b3db81"
      ],
      "author": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Thu Nov 01 21:03:46 2012 -0700"
      },
      "committer": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Thu Nov 01 21:03:46 2012 -0700"
      },
      "message": "new coefficients for the vhq resampler\n\nprevious coefficients were provided by a 3rd party and didn\u0027t have a\nway to re-generate them. we\u0027re now using the \u0027fir\u0027 utility.\n\nthe performance of the filter is virtually identical, except for\nthe down-sampling case which seems slightly better now:\n   It looks like both the previous and new coefficients are generating\nsome sort of clipping for full-scale signals in the down-sampling case\n(although the new ones seem better), the reason for that is\nunknown (see bug: 7453062)\n\nAlso updated the HQ coefficients for the down-samplers, previous ones\nwere a little bit too conservative -- the new ones push the cut-off\nfrequency up by about 1 KHz.\n\nChange-Id: I54a827b5c707c7cc41268ed01283758dce1d7647\n"
    },
    {
      "commit": "f5037ad1ebb04e99622af5e99aeac0c1b44090b7",
      "tree": "ff74d91d61bbcb4ddf8af89ea9f49f72e6d00da6",
      "parents": [
        "96076964863ee6887f0bed9d0f11f424b48ab9b9",
        "006ceacb82f62a22945c7702c4c0d78f31eb2290"
      ],
      "author": {
        "name": "The Android Automerger",
        "email": "android-build@android.com",
        "time": "Thu Nov 01 19:05:16 2012 -0700"
      },
      "committer": {
        "name": "The Android Automerger",
        "email": "android-build@android.com",
        "time": "Thu Nov 01 19:05:16 2012 -0700"
      },
      "message": "merge in jb-mr1-release history after reset to jb-mr1-dev\n"
    },
    {
      "commit": "2e136686cd60556b681480079142142ab4a7e07c",
      "tree": "698e70cce735a6ba790c98a1ad2a4b806f30091e",
      "parents": [
        "ea4d950e9d2cfbb06fde1ccb6ddada5adb0a726e"
      ],
      "author": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Thu Nov 01 18:54:43 2012 -0700"
      },
      "committer": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Thu Nov 01 18:57:02 2012 -0700"
      },
      "message": "Remove unused default parameter for copyBuffer()\n\nChange-Id: I8002986ccb926165af393ca80cece60dee011204\n"
    },
    {
      "commit": "ea4d950e9d2cfbb06fde1ccb6ddada5adb0a726e",
      "tree": "e695f0dfa1dafb3978144842eb29066534d0c003",
      "parents": [
        "85ab62c4b433df3f1a9826bed1c9bec07a86c750",
        "d37ee8fb36c972bf8d07868700a2c47358e25eb4"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Thu Nov 01 16:03:19 2012 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Thu Nov 01 16:03:19 2012 -0700"
      },
      "message": "am d37ee8fb: am 96076964: Make video encoders\\\u0027 bitrate mode (constant, variable, ...) configurable\n\n* commit \u0027d37ee8fb36c972bf8d07868700a2c47358e25eb4\u0027:\n  Make video encoders\u0027 bitrate mode (constant, variable, ...) configurable\n"
    },
    {
      "commit": "d37ee8fb36c972bf8d07868700a2c47358e25eb4",
      "tree": "a56b108de9fb0b4ebae031234e564c9a3f3abe02",
      "parents": [
        "8603c8ce359a8c69f83305aff3fe5fa26fe4ca0a",
        "96076964863ee6887f0bed9d0f11f424b48ab9b9"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Thu Nov 01 16:02:16 2012 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Thu Nov 01 16:02:16 2012 -0700"
      },
      "message": "am 96076964: Make video encoders\\\u0027 bitrate mode (constant, variable, ...) configurable\n\n* commit \u002796076964863ee6887f0bed9d0f11f424b48ab9b9\u0027:\n  Make video encoders\u0027 bitrate mode (constant, variable, ...) configurable\n"
    },
    {
      "commit": "96076964863ee6887f0bed9d0f11f424b48ab9b9",
      "tree": "ff74d91d61bbcb4ddf8af89ea9f49f72e6d00da6",
      "parents": [
        "90a92053219ae50ddf4bb54e3d54db2d309e2b8d"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Thu Nov 01 15:48:44 2012 -0700"
      },
      "committer": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Thu Nov 01 15:48:44 2012 -0700"
      },
      "message": "Make video encoders\u0027 bitrate mode (constant, variable, ...) configurable\n\nthrough the desired output format. Configure the video encoder to use\nconstant bitrate mode for WFD.\n\nChange-Id: Id7bd619598153c13448a9c5acd69d80f8a01f333\nrelated-to-bug: 7459597\n"
    },
    {
      "commit": "85ab62c4b433df3f1a9826bed1c9bec07a86c750",
      "tree": "0c5443a20824924cb7403f4cabfee84062489793",
      "parents": [
        "5fe6138bd839297a1eed16885102b3bdfc98c040"
      ],
      "author": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Thu Nov 01 11:11:38 2012 -0700"
      },
      "committer": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Thu Nov 01 12:19:25 2012 -0700"
      },
      "message": "Line length 100\n\nChange-Id: Ib28fd7b9ce951a6933f006e7f8812ba617625530\n"
    },
    {
      "commit": "5fe6138bd839297a1eed16885102b3bdfc98c040",
      "tree": "fc174c6734216926b8443f07dfaa3e7641de3441",
      "parents": [
        "3208d28bb3b77970ce4a172d741014291d36dd2f",
        "d06785bebf7e43d4a011b62a252771373ada910c"
      ],
      "author": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Thu Nov 01 11:57:08 2012 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Nov 01 11:57:08 2012 -0700"
      },
      "message": "Merge \"Save copy of mic input, disabled by default\""
    },
    {
      "commit": "d06785bebf7e43d4a011b62a252771373ada910c",
      "tree": "fc174c6734216926b8443f07dfaa3e7641de3441",
      "parents": [
        "719ae96a5308273100a68d112f131c61f9b3db81"
      ],
      "author": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Sun Sep 30 12:29:28 2012 -0700"
      },
      "committer": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Thu Nov 01 10:32:46 2012 -0700"
      },
      "message": "Save copy of mic input, disabled by default\n\nChange-Id: I4f5e95a5ddf016530d1b2747a0a5ca0962caabda\n"
    },
    {
      "commit": "b64497eb8724c4c372fffdbf3ee30543432953c5",
      "tree": "f9a5c97f77d045bcf5b4c19e4353da07d00f6fd1",
      "parents": [
        "719ae96a5308273100a68d112f131c61f9b3db81"
      ],
      "author": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Mon Oct 01 09:47:30 2012 -0700"
      },
      "committer": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Thu Nov 01 10:11:25 2012 -0700"
      },
      "message": "Add NBAIO support for more sample rates\n\nThis will be used for audio capture but it is not scalable,\nand we need a better approach in the long term.\n\nChange-Id: I8b12f6b64a3fd8e8a8c425c82574260fe8ffbed6\n"
    },
    {
      "commit": "3208d28bb3b77970ce4a172d741014291d36dd2f",
      "tree": "92ce9ae2ad949fbc05dae5ec56c6c679fd0ca18d",
      "parents": [
        "719ae96a5308273100a68d112f131c61f9b3db81",
        "8603c8ce359a8c69f83305aff3fe5fa26fe4ca0a"
      ],
      "author": {
        "name": "The Android Open Source Project",
        "email": "initial-contribution@android.com",
        "time": "Thu Nov 01 07:54:44 2012 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Thu Nov 01 07:54:44 2012 -0700"
      },
      "message": "am 8603c8ce: (-s ours) Reconcile with jb-mr1-release - do not merge\n\n* commit \u00278603c8ce359a8c69f83305aff3fe5fa26fe4ca0a\u0027:\n"
    },
    {
      "commit": "8603c8ce359a8c69f83305aff3fe5fa26fe4ca0a",
      "tree": "f4819a665ea2c6e8a3ad9727b17581e483ecc237",
      "parents": [
        "6776e7fea5aa4ab045ac3f7303e3ba5d9bbce007",
        "006ceacb82f62a22945c7702c4c0d78f31eb2290"
      ],
      "author": {
        "name": "The Android Open Source Project",
        "email": "initial-contribution@android.com",
        "time": "Thu Nov 01 07:51:57 2012 -0700"
      },
      "committer": {
        "name": "The Android Open Source Project",
        "email": "initial-contribution@android.com",
        "time": "Thu Nov 01 07:51:57 2012 -0700"
      },
      "message": "Reconcile with jb-mr1-release - do not merge\n\nChange-Id: I0fd73e8e0b948c2d01fdb9f4c6e005ee9cd2ac44\n"
    },
    {
      "commit": "006ceacb82f62a22945c7702c4c0d78f31eb2290",
      "tree": "1d624b3c800a6cd2e755c379058bb43949f91ab0",
      "parents": [
        "90a92053219ae50ddf4bb54e3d54db2d309e2b8d",
        "090e1b311aabe287eae5bc4f7816d0384f284713"
      ],
      "author": {
        "name": "The Android Automerger",
        "email": "android-build@android.com",
        "time": "Wed Oct 31 18:33:54 2012 -0700"
      },
      "committer": {
        "name": "The Android Automerger",
        "email": "android-build@android.com",
        "time": "Wed Oct 31 18:33:54 2012 -0700"
      },
      "message": "merge in jb-mr1-release history after reset to jb-mr1-dev\n"
    },
    {
      "commit": "719ae96a5308273100a68d112f131c61f9b3db81",
      "tree": "92ce9ae2ad949fbc05dae5ec56c6c679fd0ca18d",
      "parents": [
        "a2757a0ef4ccffd01864dcc643726d26838d562b",
        "6776e7fea5aa4ab045ac3f7303e3ba5d9bbce007"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Wed Oct 31 13:20:02 2012 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Wed Oct 31 13:20:02 2012 -0700"
      },
      "message": "am 6776e7fe: am 90a92053: Various tweaks to wfd\n\n* commit \u00276776e7fea5aa4ab045ac3f7303e3ba5d9bbce007\u0027:\n  Various tweaks to wfd\n"
    },
    {
      "commit": "6776e7fea5aa4ab045ac3f7303e3ba5d9bbce007",
      "tree": "f4819a665ea2c6e8a3ad9727b17581e483ecc237",
      "parents": [
        "f0e55de3b1b099c413d430d8f9d46361454c85d2",
        "90a92053219ae50ddf4bb54e3d54db2d309e2b8d"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Wed Oct 31 13:18:27 2012 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Wed Oct 31 13:18:27 2012 -0700"
      },
      "message": "am 90a92053: Various tweaks to wfd\n\n* commit \u002790a92053219ae50ddf4bb54e3d54db2d309e2b8d\u0027:\n  Various tweaks to wfd\n"
    },
    {
      "commit": "a2757a0ef4ccffd01864dcc643726d26838d562b",
      "tree": "fd835cb79ded7e5fd2fc74cf83537c9fbf15f48b",
      "parents": [
        "ee7352f160e3813a201010cf4a68972d0bac8420",
        "2188bc912a56d9bc577fcec7bf2208f49455e744"
      ],
      "author": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Wed Oct 31 11:27:23 2012 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Oct 31 11:27:24 2012 -0700"
      },
      "message": "Merge \"StateQueue comments\""
    },
    {
      "commit": "ee7352f160e3813a201010cf4a68972d0bac8420",
      "tree": "29c084c65d0e4fc4181ca9a1c80b62b60321a013",
      "parents": [
        "77536f9f8fc030379102c9e36ad21ce5b2ab234c",
        "f0e55de3b1b099c413d430d8f9d46361454c85d2"
      ],
      "author": {
        "name": "The Android Open Source Project",
        "email": "initial-contribution@android.com",
        "time": "Wed Oct 31 09:22:41 2012 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Wed Oct 31 09:22:41 2012 -0700"
      },
      "message": "am f0e55de3: (-s ours) Reconcile with jb-mr1-release - do not merge\n\n* commit \u0027f0e55de3b1b099c413d430d8f9d46361454c85d2\u0027:\n"
    },
    {
      "commit": "90a92053219ae50ddf4bb54e3d54db2d309e2b8d",
      "tree": "1d624b3c800a6cd2e755c379058bb43949f91ab0",
      "parents": [
        "2295ce2c6fcf07ffaa134440691a8cea5fe35b43"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Tue Oct 30 15:53:03 2012 -0700"
      },
      "committer": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Wed Oct 31 09:21:24 2012 -0700"
      },
      "message": "Various tweaks to wfd\n\nrelated-to-bug: 7426218\n\nSquashed commit of the following:\n\ncommit 1553f1a1c66af998674168f7f7a3be23fcb0c794\nAuthor: Andreas Huber \u003candih@google.com\u003e\nDate:   Tue Oct 30 15:51:27 2012 -0700\n\n    Add LPCM, AVC and AVC HRD descriptors as necessary.\n\n    Change-Id: Ibc836fced0fe37e8a25574c2295e886765b9ea6f\n\ncommit 4e74db61d2d31ebe239acbdec8f110f88016a4ea\nAuthor: Andreas Huber \u003candih@google.com\u003e\nDate:   Tue Oct 30 15:50:52 2012 -0700\n\n    added copyright headers to Sender.{cpp,h}\n\n    Change-Id: If615ccb8767e32bd83ed1f0f669acc39a72489f6\n\ncommit 7144bf8ae68c5cdb8faa6e219547aabbd750f04e\nAuthor: Andreas Huber \u003candih@google.com\u003e\nDate:   Tue Oct 30 15:50:25 2012 -0700\n\n    Reenable suspension of the RepeaterSource\n\n    Change-Id: I765338fcde89c65e4b69be45a5949eba6bcdcf6f\n\ncommit 812164bcfa0699821d7d8eefcc0dff96b2e2cd08\nAuthor: Andreas Huber \u003candih@google.com\u003e\nDate:   Tue Oct 30 14:03:50 2012 -0700\n\n    Add 2 stuffing bytes to the PES headers for audio tracks.\n\n    Change-Id: I8b9c634f6a565ab7fa7ecdb610f7d8557e0b139b\n\ncommit a084a741a63015d47c92d99fcd8b980fe615dc7d\nAuthor: Andreas Huber \u003candih@google.com\u003e\nDate:   Tue Oct 30 13:19:38 2012 -0700\n\n    Fix PCM audio packetization in WFD.\n\n    Change-Id: I99a435f9fe6b4397f24d6c22afae5ae2505ffc14\n\ncommit c5cb9369585f701f34bce41534940d5f9b59248f\nAuthor: Andreas Huber \u003candih@google.com\u003e\nDate:   Tue Oct 30 13:19:12 2012 -0700\n\n    Support extraction of PCM audio from transport streams.\n\n    Change-Id: I28a0516756ebcb5587325b6588df013ac871ffb9\n\ncommit b0a0512300ae037d6b39c2d04952d34b5fc12b2d\nAuthor: Andreas Huber \u003candih@google.com\u003e\nDate:   Tue Oct 30 08:54:13 2012 -0700\n\n    disable suspend of the RepeaterSource\n\n    Change-Id: Ibf42a98185b0567f817ae582a82e6580f95d3d40\n\ncommit 4330e8b7668dc92a6d882b5622c0697cf292d04c\nAuthor: Andreas Huber \u003candih@google.com\u003e\nDate:   Mon Oct 29 14:11:25 2012 -0700\n\n    Better handling of datagrams in ANetworkSession\n\n    reduce unnecessary copy overhead.\n\n    Change-Id: I2ed8c767274ba07764f03e8d4913041168e5755f\n\ncommit a44e73c322ba3f2c336f7cc4e1d63d3a74faa75d\nAuthor: Andreas Huber \u003candih@google.com\u003e\nDate:   Mon Oct 29 11:14:47 2012 -0700\n\n    Network traffic is now handled on a separate thread.\n\n    Audio and video are queued to ensure proper A/V interleaving.\n    Scheduled packet sends according to capture timestamps to reduce\n    send-jitter.\n\n    Change-Id: Ibd6357c1e663086cf87bec0a98f8e54dfdfaa0e5\n    related-to-bug: 7426218\n\nChange-Id: Ia440129d656c35814abf18df06da50b73d5bb554\n"
    },
    {
      "commit": "f0e55de3b1b099c413d430d8f9d46361454c85d2",
      "tree": "5cf5e8c05bd861751d3e6cf5a0c1f819bf6868e8",
      "parents": [
        "dd4e72b44ddb7a1591bd2f81c46d20bb0939e9eb",
        "090e1b311aabe287eae5bc4f7816d0384f284713"
      ],
      "author": {
        "name": "The Android Open Source Project",
        "email": "initial-contribution@android.com",
        "time": "Wed Oct 31 09:16:33 2012 -0700"
      },
      "committer": {
        "name": "The Android Open Source Project",
        "email": "initial-contribution@android.com",
        "time": "Wed Oct 31 09:16:33 2012 -0700"
      },
      "message": "Reconcile with jb-mr1-release - do not merge\n\nChange-Id: I7cd153e8ccfb7d572a5796ca353ec9777de789d6\n"
    },
    {
      "commit": "77536f9f8fc030379102c9e36ad21ce5b2ab234c",
      "tree": "29c084c65d0e4fc4181ca9a1c80b62b60321a013",
      "parents": [
        "b7d55a839356ad55316b5dd5b83396b69d391ce3"
      ],
      "author": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Tue Oct 30 10:55:15 2012 -0700"
      },
      "committer": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Tue Oct 30 16:22:01 2012 -0700"
      },
      "message": "Remove obsolete libmedia_native\n\nBug: 6654403\nChange-Id: Ic979a7890e2f4ef3f5409af14372eb52196e6dea\n"
    },
    {
      "commit": "b7d55a839356ad55316b5dd5b83396b69d391ce3",
      "tree": "96e02180cd3fb30531692fa83a8fc5322af380d4",
      "parents": [
        "670d4b7520bca8c6b3c59db2640698358d83aca6",
        "c41590251aa84c078c942d258e838aad814b73a5"
      ],
      "author": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Tue Oct 30 16:19:56 2012 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Oct 30 16:19:56 2012 -0700"
      },
      "message": "Merge \"Remove obsolete references to libmedia_native\""
    },
    {
      "commit": "670d4b7520bca8c6b3c59db2640698358d83aca6",
      "tree": "e09a330232bad507f8f58e20006dc5c20f294248",
      "parents": [
        "0eac0714e9fbd6e43b1fd13a38131800b2a81377",
        "1f09b4ada212d259b531228db67ca160d280275c"
      ],
      "author": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Tue Oct 30 14:54:32 2012 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Oct 30 14:54:32 2012 -0700"
      },
      "message": "Merge changes Ide218785,I86d0bb82\n\n* changes:\n  fix SINC resampler on non ARM architectures\n  fix another issue with generating FIR coefficients\n"
    },
    {
      "commit": "1f09b4ada212d259b531228db67ca160d280275c",
      "tree": "18f3249800ec4787d088436097c9df608b506cb1",
      "parents": [
        "d88a051aff15fdf5c57e1e5a4083bbd9635af3ad"
      ],
      "author": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Tue Oct 30 13:51:44 2012 -0700"
      },
      "committer": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Tue Oct 30 13:51:44 2012 -0700"
      },
      "message": "fix SINC resampler on non ARM architectures\n\nmake sure the C version of the code generates the same\noutput than the ARM assemply version.\n\nChange-Id: Ide218785c35d02598b2d7278e646b1b178148698\n"
    },
    {
      "commit": "d88a051aff15fdf5c57e1e5a4083bbd9635af3ad",
      "tree": "20bb8548ab209ab54df6e19f19e16e834a0a63f0",
      "parents": [
        "c0214ba2e267f87437bc2629dc99512054fc7a4d"
      ],
      "author": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Tue Oct 30 12:49:07 2012 -0700"
      },
      "committer": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Tue Oct 30 12:49:07 2012 -0700"
      },
      "message": "fix another issue with generating FIR coefficients\n\nthe impulse response of a low-pass is 2*f*sinc(2*pi*f*k), we were\nmissing the 2*f scale factor. This explains why we were seeing\nclipping and had to manually scale the filter down.\n\nChange-Id: I86d0bb82ecdd99681c8ba5a8112a8257bf6f0186\n"
    },
    {
      "commit": "c41590251aa84c078c942d258e838aad814b73a5",
      "tree": "1db58d721d614ebd28f52b7a1dc632d943d6506d",
      "parents": [
        "db3a20ea484514f7f23d4ef3c30fe4780ab940d2"
      ],
      "author": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Tue Oct 30 10:51:39 2012 -0700"
      },
      "committer": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Tue Oct 30 10:51:39 2012 -0700"
      },
      "message": "Remove obsolete references to libmedia_native\n\nBug: 6654403\nChange-Id: I3993d62987cf0dd85db10bf002a5cce53d4f01bd\n"
    },
    {
      "commit": "0eac0714e9fbd6e43b1fd13a38131800b2a81377",
      "tree": "7b9efe8dc4926a401c0dc64248096a54b97fe20c",
      "parents": [
        "db3a20ea484514f7f23d4ef3c30fe4780ab940d2",
        "599fabc596687efa4b71b8f3ebbb957c7cae0c72"
      ],
      "author": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Tue Oct 30 10:36:00 2012 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Oct 30 10:36:00 2012 -0700"
      },
      "message": "Merge \"Document AudioMixer hard-coded limits\""
    },
    {
      "commit": "db3a20ea484514f7f23d4ef3c30fe4780ab940d2",
      "tree": "a847bc529c6d4a5b84d099d8dfa1aa4eb8d6678e",
      "parents": [
        "5a29369f236a5d94514f6497681bf473d59959b1",
        "26dd66e8ea7a1abf28c33196fc77822f68a718af"
      ],
      "author": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Tue Oct 30 10:34:28 2012 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Oct 30 10:34:28 2012 -0700"
      },
      "message": "Merge \"Use ALOGVV instead of commented ALOGV\""
    },
    {
      "commit": "5a29369f236a5d94514f6497681bf473d59959b1",
      "tree": "ee9a449eaaaa1daa028ea9ddf6e9b35ba4563a5d",
      "parents": [
        "bf1d047d6759c624139bfe9897dc3062d2e446e2",
        "18a6d9029e18a93748d3d9c33f04c1b360aeb7ae"
      ],
      "author": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Tue Oct 30 10:33:13 2012 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Oct 30 10:33:14 2012 -0700"
      },
      "message": "Merge \"Fix typo\""
    },
    {
      "commit": "bf1d047d6759c624139bfe9897dc3062d2e446e2",
      "tree": "a8ad48e46a0b88944983c6d89548b7d25e44b297",
      "parents": [
        "eb79904784c9479ae6fb60202c47e5287c058c4a",
        "274c02ee1464d8948913ac70e64e8dbb80f82ad7"
      ],
      "author": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Tue Oct 30 10:32:47 2012 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Oct 30 10:32:48 2012 -0700"
      },
      "message": "Merge \"Clean up constructor and derivation whitespace\""
    },
    {
      "commit": "eb79904784c9479ae6fb60202c47e5287c058c4a",
      "tree": "efe86cbc8bd3256b86ea8fcffc72899face51a53",
      "parents": [
        "c0214ba2e267f87437bc2629dc99512054fc7a4d",
        "dc8a0d75bd7b1343cd65c3c7f6e0f91ca0fa6946"
      ],
      "author": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Tue Oct 30 10:30:59 2012 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Oct 30 10:31:00 2012 -0700"
      },
      "message": "Merge \"Mark volume fields private\""
    },
    {
      "commit": "c0214ba2e267f87437bc2629dc99512054fc7a4d",
      "tree": "6cfb2dd6801ec8c70561f08cca43ae835c8c8646",
      "parents": [
        "4b5517970b2050cea4d5fa99b8a20a0d1b45c29a",
        "b4b75b47c2a4248e60bbc3229d6acc4d5f872431"
      ],
      "author": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Mon Oct 29 19:11:57 2012 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Oct 29 19:11:58 2012 -0700"
      },
      "message": "Merge \"fir a typo that caused up-sampling coefficiens to be wrong\""
    },
    {
      "commit": "4b5517970b2050cea4d5fa99b8a20a0d1b45c29a",
      "tree": "245c478dfd4235544a5f61a36d5f080fddd784e9",
      "parents": [
        "24cde8216d5aba49104967e97807ce2ff114bf70",
        "9aec8c3f7f72cd36a8e3d7aafc1149f50514087a"
      ],
      "author": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Mon Oct 29 19:01:57 2012 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Oct 29 19:01:58 2012 -0700"
      },
      "message": "Merge \"test-resample: clip instead of overflowing\""
    },
    {
      "commit": "b4b75b47c2a4248e60bbc3229d6acc4d5f872431",
      "tree": "55de9b4294936b7453e36b5afa24b59770ae1a37",
      "parents": [
        "9aec8c3f7f72cd36a8e3d7aafc1149f50514087a"
      ],
      "author": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Mon Oct 29 17:13:20 2012 -0700"
      },
      "committer": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Mon Oct 29 17:13:20 2012 -0700"
      },
      "message": "fir a typo that caused up-sampling coefficiens to be wrong\n\nup-sample coefficient were generated with a cut-off frequency of 24KHz\nintead of ~20KHz, which caused more aliasing in the audible band.\n\nalso increased the attenuation to 1.3 dB on both up and down\nsampling coefficient to avoid clipping.\n\nChange-Id: Ie8aeecf1429190541b656810c6716b6aae5ece2e\n"
    },
    {
      "commit": "9aec8c3f7f72cd36a8e3d7aafc1149f50514087a",
      "tree": "6b6ab3c3b3a5ea2d14f57a29f9d6d53fc009f482",
      "parents": [
        "36a65500ec740bfd9ea403c94b7cefb82a230e20"
      ],
      "author": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Mon Oct 29 17:13:16 2012 -0700"
      },
      "committer": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Mon Oct 29 17:13:16 2012 -0700"
      },
      "message": "test-resample: clip instead of overflowing\n\nChange-Id: I550e5a59e51c11e1095ca338222b094f92b96878\n"
    },
    {
      "commit": "24cde8216d5aba49104967e97807ce2ff114bf70",
      "tree": "35c79c54242b64d0890f9ef08d9e88af68626ddc",
      "parents": [
        "83ca157a13d683eb151b543147fc5b9fd186d5df",
        "dd4e72b44ddb7a1591bd2f81c46d20bb0939e9eb"
      ],
      "author": {
        "name": "Dave Burke",
        "email": "daveburke@google.com",
        "time": "Mon Oct 29 17:13:15 2012 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Mon Oct 29 17:13:15 2012 -0700"
      },
      "message": "am dd4e72b4: am 2295ce2c: Increase bitrate now that other issues have been resolved.\n\n* commit \u0027dd4e72b44ddb7a1591bd2f81c46d20bb0939e9eb\u0027:\n  Increase bitrate now that other issues have been resolved.\n"
    },
    {
      "commit": "83ca157a13d683eb151b543147fc5b9fd186d5df",
      "tree": "e2555ae5b77365b62cfee97892a2f2f59ede9836",
      "parents": [
        "36a65500ec740bfd9ea403c94b7cefb82a230e20",
        "dd974cc4f335b30731c452885bff3c396ed54724"
      ],
      "author": {
        "name": "Dave Burke",
        "email": "daveburke@google.com",
        "time": "Mon Oct 29 17:13:14 2012 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Mon Oct 29 17:13:14 2012 -0700"
      },
      "message": "am dd974cc4: am e815552c: Disable silence suppression (causes issues with dongles).\n\n* commit \u0027dd974cc4f335b30731c452885bff3c396ed54724\u0027:\n  Disable silence suppression (causes issues with dongles).\n"
    },
    {
      "commit": "dd4e72b44ddb7a1591bd2f81c46d20bb0939e9eb",
      "tree": "5cf5e8c05bd861751d3e6cf5a0c1f819bf6868e8",
      "parents": [
        "dd974cc4f335b30731c452885bff3c396ed54724",
        "2295ce2c6fcf07ffaa134440691a8cea5fe35b43"
      ],
      "author": {
        "name": "Dave Burke",
        "email": "daveburke@google.com",
        "time": "Mon Oct 29 14:21:57 2012 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Mon Oct 29 14:21:57 2012 -0700"
      },
      "message": "am 2295ce2c: Increase bitrate now that other issues have been resolved.\n\n* commit \u00272295ce2c6fcf07ffaa134440691a8cea5fe35b43\u0027:\n  Increase bitrate now that other issues have been resolved.\n"
    },
    {
      "commit": "dd974cc4f335b30731c452885bff3c396ed54724",
      "tree": "31f3a33706a5cbd4e828f0a9a6c7f2d675d2ee7a",
      "parents": [
        "203836b7584ccb7787202578259d27d70a8a3ede",
        "e815552c9cb17be79cb3b7eb6fbdfa9ad81c861b"
      ],
      "author": {
        "name": "Dave Burke",
        "email": "daveburke@google.com",
        "time": "Mon Oct 29 14:21:56 2012 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Mon Oct 29 14:21:56 2012 -0700"
      },
      "message": "am e815552c: Disable silence suppression (causes issues with dongles).\n\n* commit \u0027e815552c9cb17be79cb3b7eb6fbdfa9ad81c861b\u0027:\n  Disable silence suppression (causes issues with dongles).\n"
    },
    {
      "commit": "090e1b311aabe287eae5bc4f7816d0384f284713",
      "tree": "d301b2e845b570eea103e7224d766e8707cd8e7d",
      "parents": [
        "2295ce2c6fcf07ffaa134440691a8cea5fe35b43",
        "c0d3ce2614121cb15f8d27d5f9f53c65932af1c3"
      ],
      "author": {
        "name": "The Android Automerger",
        "email": "android-build@android.com",
        "time": "Mon Oct 29 11:19:49 2012 -0700"
      },
      "committer": {
        "name": "The Android Automerger",
        "email": "android-build@android.com",
        "time": "Mon Oct 29 11:19:49 2012 -0700"
      },
      "message": "merge in jb-mr1-release history after reset to jb-mr1-dev\n"
    },
    {
      "commit": "2295ce2c6fcf07ffaa134440691a8cea5fe35b43",
      "tree": "d301b2e845b570eea103e7224d766e8707cd8e7d",
      "parents": [
        "e815552c9cb17be79cb3b7eb6fbdfa9ad81c861b"
      ],
      "author": {
        "name": "Dave Burke",
        "email": "daveburke@google.com",
        "time": "Fri Oct 26 23:49:43 2012 -0700"
      },
      "committer": {
        "name": "Dave Burke",
        "email": "daveburke@google.com",
        "time": "Fri Oct 26 23:49:43 2012 -0700"
      },
      "message": "Increase bitrate now that other issues have been resolved.\n\nBug: 7426218\nChange-Id: I67dfa1e4b85f326f355ad0ec5b6c699e87b45564\n"
    },
    {
      "commit": "c0d3ce2614121cb15f8d27d5f9f53c65932af1c3",
      "tree": "138972cf3a84fa3e8043fdcc5a0223394bf17480",
      "parents": [
        "e815552c9cb17be79cb3b7eb6fbdfa9ad81c861b",
        "13ae89946332e776b57fa0752000ad4f0313ab44"
      ],
      "author": {
        "name": "The Android Automerger",
        "email": "android-build@android.com",
        "time": "Fri Oct 26 18:17:33 2012 -0700"
      },
      "committer": {
        "name": "The Android Automerger",
        "email": "android-build@android.com",
        "time": "Fri Oct 26 18:17:33 2012 -0700"
      },
      "message": "merge in jb-mr1-release history after reset to jb-mr1-dev\n"
    },
    {
      "commit": "e815552c9cb17be79cb3b7eb6fbdfa9ad81c861b",
      "tree": "138972cf3a84fa3e8043fdcc5a0223394bf17480",
      "parents": [
        "b8d6efba8b87e6eeb049651cb67f9827198e658e"
      ],
      "author": {
        "name": "Dave Burke",
        "email": "daveburke@google.com",
        "time": "Fri Oct 26 16:24:43 2012 -0700"
      },
      "committer": {
        "name": "Dave Burke",
        "email": "daveburke@google.com",
        "time": "Fri Oct 26 16:24:43 2012 -0700"
      },
      "message": "Disable silence suppression (causes issues with dongles).\n\nBug: 7426218\nChange-Id: Ie1517a8017bae1f9a9b6c224cd3170dfcc5fb941\n"
    },
    {
      "commit": "26dd66e8ea7a1abf28c33196fc77822f68a718af",
      "tree": "e9eb2c141a9baadd50e4e051a216b179c2ff9de3",
      "parents": [
        "692c3e54c63aaaf7e9ef4d89761f98975bd34f33"
      ],
      "author": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Thu Oct 18 15:51:03 2012 -0700"
      },
      "committer": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Fri Oct 26 16:20:49 2012 -0700"
      },
      "message": "Use ALOGVV instead of commented ALOGV\n\nChange-Id: I17bdb5274877760c7edaa31416020d349082e593\n"
    },
    {
      "commit": "18a6d9029e18a93748d3d9c33f04c1b360aeb7ae",
      "tree": "a64555ce99d75dae8638cc1273917dd880d8ffaa",
      "parents": [
        "692c3e54c63aaaf7e9ef4d89761f98975bd34f33"
      ],
      "author": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Mon Sep 24 11:27:56 2012 -0700"
      },
      "committer": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Fri Oct 26 16:18:24 2012 -0700"
      },
      "message": "Fix typo\n\nChange-Id: I8cc2969eb329a830ee866622a8633adcb4e967cc\n"
    },
    {
      "commit": "2188bc912a56d9bc577fcec7bf2208f49455e744",
      "tree": "387f53b6882c758186b9832755b51575fa915972",
      "parents": [
        "692c3e54c63aaaf7e9ef4d89761f98975bd34f33"
      ],
      "author": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Fri Oct 26 16:10:30 2012 -0700"
      },
      "committer": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Fri Oct 26 16:10:30 2012 -0700"
      },
      "message": "StateQueue comments\n\nChange-Id: Id8c76d1e2ab5201e7ab3875f1dbcc0a126e611a4\n"
    },
    {
      "commit": "36a65500ec740bfd9ea403c94b7cefb82a230e20",
      "tree": "6424190dc325f8fd2b57b410eb4fd334aa50cc7f",
      "parents": [
        "132cf756c152f36dafd81ebc235bc7e15660593e",
        "0fc2cb59d5f77412f5922540d67fea81f4d1744b"
      ],
      "author": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Fri Oct 26 16:04:41 2012 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Oct 26 16:04:41 2012 -0700"
      },
      "message": "Merge \"a test app for the resamplers\""
    },
    {
      "commit": "132cf756c152f36dafd81ebc235bc7e15660593e",
      "tree": "f9ee7ac78891876e6357f064561d8e4220e228f4",
      "parents": [
        "401c4cf650ab8b208aedde8daf74aa2ae02dd760",
        "93d0767a8a9ee9d649eea9afac59f778e29a6a54"
      ],
      "author": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Fri Oct 26 16:04:26 2012 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Oct 26 16:04:26 2012 -0700"
      },
      "message": "Merge \"reenable the cubic resampler\""
    },
    {
      "commit": "401c4cf650ab8b208aedde8daf74aa2ae02dd760",
      "tree": "c12be798610916d4be7da9b6bb588c7d951f716b",
      "parents": [
        "05786cacb961f8616c56afc00c7b4db4f8453968",
        "443e69625d598ea578e2c838960778ce498fd773"
      ],
      "author": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Fri Oct 26 16:04:11 2012 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Oct 26 16:04:11 2012 -0700"
      },
      "message": "Merge \"improve SINC resampler coefficients\""
    },
    {
      "commit": "599fabc596687efa4b71b8f3ebbb957c7cae0c72",
      "tree": "4fa21abc3355a8ac8d4c91a6e101d76bb3c17b80",
      "parents": [
        "692c3e54c63aaaf7e9ef4d89761f98975bd34f33"
      ],
      "author": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Thu Mar 08 12:33:37 2012 -0800"
      },
      "committer": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Fri Oct 26 15:50:45 2012 -0700"
      },
      "message": "Document AudioMixer hard-coded limits\n\nChange-Id: I83ea8bed375f251260945db788bdb5f280dba12d\n"
    },
    {
      "commit": "274c02ee1464d8948913ac70e64e8dbb80f82ad7",
      "tree": "f37b82e51c88cc081e9ee142e277c1e51ee99df8",
      "parents": [
        "692c3e54c63aaaf7e9ef4d89761f98975bd34f33"
      ],
      "author": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Tue Jul 10 11:44:31 2012 -0700"
      },
      "committer": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Fri Oct 26 15:47:24 2012 -0700"
      },
      "message": "Clean up constructor and derivation whitespace\n\nChange-Id: I47d688a9c10c4c3c868accc34102fb402ebcac62\n"
    },
    {
      "commit": "dc8a0d75bd7b1343cd65c3c7f6e0f91ca0fa6946",
      "tree": "1cf2e9ee9cc9524649bccb6f634268e7dbb390c5",
      "parents": [
        "692c3e54c63aaaf7e9ef4d89761f98975bd34f33"
      ],
      "author": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Tue Mar 06 11:34:22 2012 -0800"
      },
      "committer": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Fri Oct 26 15:44:19 2012 -0700"
      },
      "message": "Mark volume fields private\n\nChange-Id: I8ffca0460195263d159aa13015c246122d8556a2\n"
    },
    {
      "commit": "05786cacb961f8616c56afc00c7b4db4f8453968",
      "tree": "690c4fc431c51bfdb4a7eefae2f84225c0355afa",
      "parents": [
        "b6cf07ba69018fd4633e1b9f99646f8482c6d76d",
        "ddf3c5025e2f6f35a4c188c19f30142c64a092c4"
      ],
      "author": {
        "name": "Igor Murashkin",
        "email": "iam@google.com",
        "time": "Fri Oct 26 15:26:03 2012 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Oct 26 15:26:04 2012 -0700"
      },
      "message": "Merge \"Camera2: Compile with warnings, fix warnings\""
    },
    {
      "commit": "ddf3c5025e2f6f35a4c188c19f30142c64a092c4",
      "tree": "742ea9ee2425ac6625433c401e0e992e1e84273b",
      "parents": [
        "655604a7c1ffadc04ec479e4f45345918f44b460"
      ],
      "author": {
        "name": "Igor Murashkin",
        "email": "iam@google.com",
        "time": "Fri Oct 12 16:56:11 2012 -0700"
      },
      "committer": {
        "name": "Igor Murashkin",
        "email": "iam@google.com",
        "time": "Fri Oct 26 15:21:32 2012 -0700"
      },
      "message": "Camera2: Compile with warnings, fix warnings\n\nChange-Id: I557350abb32b0480f5da7dcecadfbe9edbe53361\n"
    },
    {
      "commit": "0fc2cb59d5f77412f5922540d67fea81f4d1744b",
      "tree": "91a495d745f9d1a68ad74bce4b0bda7fb3461fbc",
      "parents": [
        "93d0767a8a9ee9d649eea9afac59f778e29a6a54"
      ],
      "author": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Sun Oct 21 01:01:38 2012 -0700"
      },
      "committer": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Fri Oct 26 14:58:43 2012 -0700"
      },
      "message": "a test app for the resamplers\n\nChange-Id: I66852d90d384f1d9e77b51ad1a1ebdbaf61d0607\n"
    },
    {
      "commit": "93d0767a8a9ee9d649eea9afac59f778e29a6a54",
      "tree": "a43bf4ca3b6ceab1cb78684027fb66c94b9cfeb4",
      "parents": [
        "443e69625d598ea578e2c838960778ce498fd773"
      ],
      "author": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Fri Oct 26 14:11:01 2012 -0700"
      },
      "committer": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Fri Oct 26 14:58:43 2012 -0700"
      },
      "message": "reenable the cubic resampler\n\ncubic resampler was disabled because it hadn\u0027t been qualified,\nhowever after I did some tests, it does improve significantly\nthe sound quality over the order-1 resampler, even if it is\nstill quite bad.\n\nalso HIGH_QUALITY resampler was partially disabled, it\u0027s now\nfully enabled. It\u0027s a big improvement over the cubic resampler\nin terms of aliasing noise (it\u0027s not as good in the pass-band).\n\nChange-Id: I70e3658c255896588642697be9eb594ff4ec0f8b\n"
    },
    {
      "commit": "443e69625d598ea578e2c838960778ce498fd773",
      "tree": "4d021ec94a7766aaed15c1d93f3fa7b7d9e89ba1",
      "parents": [
        "b6cf07ba69018fd4633e1b9f99646f8482c6d76d"
      ],
      "author": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Fri Oct 26 13:48:42 2012 -0700"
      },
      "committer": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Fri Oct 26 14:58:42 2012 -0700"
      },
      "message": "improve SINC resampler coefficients\n\n- we increase the interpolation precision from 4 to 7 bits\nthis doesn\u0027t increase CPU power required, it only increases the\nsize of the filter table but significantly reduces the noise\nintroduced by the quantization of the impulse response.\n\n- the parameters of the filter are set such that aliasing is\nrejected at 80 dB below 20 KHz. Because we don\u0027t use a lot of\ncoefficient (to save compute power), there are quite a bit of\nattenuation in the pass-band: starting at 9KHz for the\ndown-sampler (48 to 44.1), and starting at 13 KHz for the\nup-sampler (44.1 to 48) -- the transition band is about 15 KHz.\n\nChange-Id: I855548d2aab8a0fb0d2a2da3a364b6842d7d3838\n"
    },
    {
      "commit": "b6cf07ba69018fd4633e1b9f99646f8482c6d76d",
      "tree": "442d576cdc7e8742e0b0e14b8d3ab9a12501aae2",
      "parents": [
        "655604a7c1ffadc04ec479e4f45345918f44b460",
        "73e90268adf4c9638b8d820a802e5e9a8ebe6597"
      ],
      "author": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Fri Oct 26 14:58:24 2012 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Oct 26 14:58:24 2012 -0700"
      },
      "message": "Merge \"improve fir tool: cleanup, better default, bug fixes\""
    },
    {
      "commit": "73e90268adf4c9638b8d820a802e5e9a8ebe6597",
      "tree": "5d1a5883d850dead9e7615e40e6c29565d6b5a35",
      "parents": [
        "692c3e54c63aaaf7e9ef4d89761f98975bd34f33"
      ],
      "author": {
        "name": "Pixelflinger",
        "email": "mathias.agopian@gmail.com",
        "time": "Thu Oct 25 19:43:49 2012 -0700"
      },
      "committer": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Fri Oct 26 13:17:37 2012 -0700"
      },
      "message": "improve fir tool: cleanup, better default, bug fixes\n\n- all parameters can be changed on the command-line\n- added float output\n- added debug option\n- added an option to generate a polyphase filter coefficients\n- added an attenuation option in dBFS\n- added a lot of comments and references\n- fixed kaiser window parameter\n\nalso the default should generate a filter with 80 dB rejection\n(of the 24 KHz aliasing) above 20 KHz and a 15 KHz transition\nband around ~20 KHz (for 48 KHz sampling rate).\nIt\u0027s not very good but corresponds to the current code.\n"
    },
    {
      "commit": "655604a7c1ffadc04ec479e4f45345918f44b460",
      "tree": "35f365521cb1292429a01b80e1d61661d5341121",
      "parents": [
        "1bb85d27f09cb01b7e43e08600229258edf16e60"
      ],
      "author": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Thu Oct 25 16:05:57 2012 -0700"
      },
      "committer": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Thu Oct 25 16:05:57 2012 -0700"
      },
      "message": "Only export the symbols that need to be\n\nThe effects libraries were exporting many more symbols than needed.\nThis reduces the exported symbols to just the needed ones (basically\njust \"AELI\"), which happens to also save about 28KB.\n\nChange-Id: I115077e52e8dc845282e6f62a522908d26dd72d6\n"
    },
    {
      "commit": "13ae89946332e776b57fa0752000ad4f0313ab44",
      "tree": "3dd6470d3e23f97e570e64d5ccec21095be74440",
      "parents": [
        "b8d6efba8b87e6eeb049651cb67f9827198e658e",
        "a183a3b03aef24bd93a512975e982afabefeb9e9"
      ],
      "author": {
        "name": "The Android Automerger",
        "email": "android-build@android.com",
        "time": "Thu Oct 25 13:42:11 2012 -0700"
      },
      "committer": {
        "name": "The Android Automerger",
        "email": "android-build@android.com",
        "time": "Thu Oct 25 13:42:11 2012 -0700"
      },
      "message": "merge in jb-mr1-release history after reset to jb-mr1-dev\n"
    }
  ],
  "next": "1bb85d27f09cb01b7e43e08600229258edf16e60"
}
