)]}'
{
  "log": [
    {
      "commit": "e564c201c290c24f94e1478fea3fca2e7422980d",
      "tree": "26bb7c65cb76414d2268e689f5b9d201217e777b",
      "parents": [
        "a7b723715bab4ddf6db364c825135a9bc003c7c0",
        "eb31ad3a2318683ea95ededaf36930a2fb186d33"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Mon Jan 25 18:55:19 2016 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Mon Jan 25 18:55:19 2016 +0000"
      },
      "message": "Merge \"Add multi-mic support for the noise suppression pre-processing effect\" am: 511555dd26\nam: eb31ad3a23\n\n* commit \u0027eb31ad3a2318683ea95ededaf36930a2fb186d33\u0027:\n  Add multi-mic support for the noise suppression pre-processing effect\n"
    },
    {
      "commit": "eb31ad3a2318683ea95ededaf36930a2fb186d33",
      "tree": "4a2f18640c46d24cbe776ed29e87d50d24742402",
      "parents": [
        "8e6c9a800c1ed618963d6d03e824905c69e742ff",
        "511555dd26e8bcb5a7c9a7b49e0fe4f83a67328f"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Mon Jan 25 18:52:40 2016 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Mon Jan 25 18:52:40 2016 +0000"
      },
      "message": "Merge \"Add multi-mic support for the noise suppression pre-processing effect\"\nam: 511555dd26\n\n* commit \u0027511555dd26e8bcb5a7c9a7b49e0fe4f83a67328f\u0027:\n  Add multi-mic support for the noise suppression pre-processing effect\n"
    },
    {
      "commit": "511555dd26e8bcb5a7c9a7b49e0fe4f83a67328f",
      "tree": "85129394a62529f8d7821a454e3c5fae986e6269",
      "parents": [
        "47dabd38252860dd70b83380fc3df0f84a7ede49",
        "766bf734984a0d5765980f8bd154d111de08ec19"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Mon Jan 25 18:47:02 2016 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Mon Jan 25 18:47:02 2016 +0000"
      },
      "message": "Merge \"Add multi-mic support for the noise suppression pre-processing effect\""
    },
    {
      "commit": "766bf734984a0d5765980f8bd154d111de08ec19",
      "tree": "5e52ff86bcea83a71fa9809f528f8524db622af6",
      "parents": [
        "b135d0e6fb57a810882a1488cb0ff670d0e25219"
      ],
      "author": {
        "name": "Alex Luebs",
        "email": "aluebs@google.com",
        "time": "Mon Dec 14 21:32:13 2015 -0800"
      },
      "committer": {
        "name": "Alex Luebs",
        "email": "aluebs@google.com",
        "time": "Fri Jan 22 15:27:21 2016 -0800"
      },
      "message": "Add multi-mic support for the noise suppression pre-processing effect\n\nChange-Id: I7cf8d5657a25206e0a07e7e343635f7cf23e6f89\n"
    },
    {
      "commit": "70d20f98299e5ce8dbdf01ed6123a47fe7bc45b1",
      "tree": "f6e80de6bdbfc152d1d72cb4bbba8f909fb82490",
      "parents": [
        "81becaec18695331e853477e0ba6c51c989d365e",
        "b1f8616332371eebff84485b99545373592fb81e"
      ],
      "author": {
        "name": "Chih-hung Hsieh",
        "email": "chh@google.com",
        "time": "Wed Jan 20 18:08:55 2016 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Wed Jan 20 18:08:55 2016 +0000"
      },
      "message": "Merge \"Update to new WebRTC version\" am: 47dabd3825\nam: b1f8616332\n\n* commit \u0027b1f8616332371eebff84485b99545373592fb81e\u0027:\n  Update to new WebRTC version\n"
    },
    {
      "commit": "b1f8616332371eebff84485b99545373592fb81e",
      "tree": "8586780a7e84a0b90aa2c8147a39156237ea2948",
      "parents": [
        "813ac23bee5b3519c2b7f410a2b24b3a94075b22",
        "47dabd38252860dd70b83380fc3df0f84a7ede49"
      ],
      "author": {
        "name": "Chih-hung Hsieh",
        "email": "chh@google.com",
        "time": "Wed Jan 20 17:50:53 2016 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Wed Jan 20 17:50:53 2016 +0000"
      },
      "message": "Merge \"Update to new WebRTC version\"\nam: 47dabd3825\n\n* commit \u002747dabd38252860dd70b83380fc3df0f84a7ede49\u0027:\n  Update to new WebRTC version\n"
    },
    {
      "commit": "3f11ef01574219f323a7f9ee4216d610733df50f",
      "tree": "96005e9df55673502afd04e87a3cc5d7c25d193b",
      "parents": [
        "a68b10a49b4aba786bdee692e48783acdb25ff60"
      ],
      "author": {
        "name": "Alex Luebs",
        "email": "aluebs@google.com",
        "time": "Fri Jan 15 15:51:58 2016 -0800"
      },
      "committer": {
        "name": "Alex Luebs",
        "email": "aluebs@google.com",
        "time": "Fri Jan 15 16:40:35 2016 -0800"
      },
      "message": "Update to new WebRTC version\n\n* Update include/ path\n* Remove unnecessary casts\n\nChange-Id: Iac2cf15ee4fce32bcd7ad57b3e0f70976cf89880\n"
    },
    {
      "commit": "34314fae965f88e8a512be882afc3f42a2b2d34e",
      "tree": "e46bf14c1be6ee444fb1aee00d207ce19697c1ed",
      "parents": [
        "899cce3292319367cb06f8a411c760b20cbd7ee9",
        "0837e00683ccc8b2e30f6a2faf4a07142b63ffb3"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Tue Jan 12 02:33:11 2016 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Tue Jan 12 02:33:11 2016 +0000"
      },
      "message": "fix possible overflow in effect wrappers. am: 9e29523b95 am: baebc739b0 am: 3a9d4f4a83 am: 5b7c20dd1e am: df81fc3f3c am: 68e43cf141 am: b1338d3cfc am: 440c9e9b72 am: 9950df2504 am: de98d9b7c1\nam: 0837e00683\n\n* commit \u00270837e00683ccc8b2e30f6a2faf4a07142b63ffb3\u0027:\n  fix possible overflow in effect wrappers.\n"
    },
    {
      "commit": "440c9e9b72277d6fc6cea630b9ab50f12687a9c0",
      "tree": "ff16ef64f82cef137607bdb02d73af3f4b6adad1",
      "parents": [
        "c653d2f19ee368e75bd7da6327196f971969078d",
        "b1338d3cfcb47d0fc5f21e2b939d66316b307fe3"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Tue Jan 12 02:20:44 2016 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Tue Jan 12 02:20:44 2016 +0000"
      },
      "message": "fix possible overflow in effect wrappers. am: 9e29523b95 am: baebc739b0 am: 3a9d4f4a83 am: 5b7c20dd1e am: df81fc3f3c am: 68e43cf141\nam: b1338d3cfc\n\n* commit \u0027b1338d3cfcb47d0fc5f21e2b939d66316b307fe3\u0027:\n  fix possible overflow in effect wrappers.\n"
    },
    {
      "commit": "b1338d3cfcb47d0fc5f21e2b939d66316b307fe3",
      "tree": "1261604575864a75daa95d71146e28ef49f2ae6b",
      "parents": [
        "2c59cc083d471fe55abc61870d05952bd242b738",
        "68e43cf141a5851c242bce776dff93f7136cbea6"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Tue Jan 12 02:07:13 2016 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Tue Jan 12 02:07:13 2016 +0000"
      },
      "message": "fix possible overflow in effect wrappers. am: 9e29523b95 am: baebc739b0 am: 3a9d4f4a83 am: 5b7c20dd1e am: df81fc3f3c\nam: 68e43cf141\n\n* commit \u002768e43cf141a5851c242bce776dff93f7136cbea6\u0027:\n  fix possible overflow in effect wrappers.\n"
    },
    {
      "commit": "df81fc3f3c56048a797232fa49185831f250e57c",
      "tree": "d0c90795e03e7efe6d4092ecb0f9b4a24c5dd2fd",
      "parents": [
        "50270d98e26fa18b20ca88216c3526667b724ba7",
        "5b7c20dd1ee9eff7f96676cec68d4b74e33440e7"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Tue Jan 12 02:02:55 2016 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Tue Jan 12 02:02:55 2016 +0000"
      },
      "message": "fix possible overflow in effect wrappers. am: 9e29523b95 am: baebc739b0 am: 3a9d4f4a83\nam: 5b7c20dd1e\n\n* commit \u00275b7c20dd1ee9eff7f96676cec68d4b74e33440e7\u0027:\n  fix possible overflow in effect wrappers.\n"
    },
    {
      "commit": "3a9d4f4a83341e4c083aa50a651fe5d765ef70ad",
      "tree": "167fc6e0e51a5eaea14f37e87074f27dc3f97ac4",
      "parents": [
        "c56555962b7e0fcee2dc0a058127f8f309f19ea8",
        "baebc739b0fe7257b26bfe105b67409559171c82"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Tue Jan 12 01:58:50 2016 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Tue Jan 12 01:58:50 2016 +0000"
      },
      "message": "fix possible overflow in effect wrappers. am: 9e29523b95\nam: baebc739b0\n\n* commit \u0027baebc739b0fe7257b26bfe105b67409559171c82\u0027:\n  fix possible overflow in effect wrappers.\n"
    },
    {
      "commit": "baebc739b0fe7257b26bfe105b67409559171c82",
      "tree": "e7204d25f9b5e74ddcd76bdf72e29bf412530371",
      "parents": [
        "208bc477d92dbd2e5b4d1c0b2d000fa4c231e9d3",
        "9e29523b9537983b4c4b205ff868d0b3bca0383b"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Tue Jan 12 01:56:51 2016 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Tue Jan 12 01:56:51 2016 +0000"
      },
      "message": "fix possible overflow in effect wrappers.\nam: 9e29523b95\n\n* commit \u00279e29523b9537983b4c4b205ff868d0b3bca0383b\u0027:\n  fix possible overflow in effect wrappers.\n"
    },
    {
      "commit": "9e29523b9537983b4c4b205ff868d0b3bca0383b",
      "tree": "e26b62c7419fe2a7f521d704e64e687a119441a2",
      "parents": [
        "3d6a7149802928ecf3f58b7218b0e82699b492df"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Fri Jan 08 10:52:38 2016 -0800"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Mon Jan 11 18:08:30 2016 +0000"
      },
      "message": "fix possible overflow in effect wrappers.\n\nAdd checks on parameter size field in effect command handlers\nto avoid overflow leading to invalid comparison with min allowed\nsize for command and reply buffers.\n\nBug: 26347509.\nChange-Id: I20e6a9b6de8e5172b957caa1ac9410b9752efa4d\n(cherry picked from commit ad1bd92a49d78df6bc6e75bee68c517c1326f3cf)\n"
    },
    {
      "commit": "ad1bd92a49d78df6bc6e75bee68c517c1326f3cf",
      "tree": "954aaa329a6478405d7dc3c273c603ff7dd3f3bd",
      "parents": [
        "a3e696da3872250bca66a62d93a3b6114e20c27d"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Fri Jan 08 10:52:38 2016 -0800"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Fri Jan 08 11:52:01 2016 -0800"
      },
      "message": "fix possible overflow in effect wrappers.\n\nAdd checks on parameter size field in effect command handlers\nto avoid overflow leading to invalid comparison with min allowed\nsize for command and reply buffers.\n\nBug: 26347509.\nChange-Id: I20e6a9b6de8e5172b957caa1ac9410b9752efa4d\n"
    },
    {
      "commit": "30a5c3d97fc7c93ec878e513f466b2f21b6e0ddd",
      "tree": "07311f54d9ebe92d289b81c9d504a7539f36463a",
      "parents": [
        "5f80c6f508ebafbe81d42177907035731e854c5b",
        "bcd62e704de35d0144c5f87b29c84742cb3d6c5d"
      ],
      "author": {
        "name": "Chih-hung Hsieh",
        "email": "chh@google.com",
        "time": "Tue Dec 01 17:11:27 2015 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Tue Dec 01 17:11:27 2015 +0000"
      },
      "message": "Merge \"Port PreProcessing to the new WebRTC version\" am: f0f6fdd4d1 am: 7ec102b586\nam: bcd62e704d\n\n* commit \u0027bcd62e704de35d0144c5f87b29c84742cb3d6c5d\u0027:\n  Port PreProcessing to the new WebRTC version\n"
    },
    {
      "commit": "9718b7d9cba77c739269462ac57d43cc6ae69134",
      "tree": "6e91a68efdb33f8148531eb61ea0da54986f204c",
      "parents": [
        "7534cb3a36f506f6e2e1cec2e823dad35c5393e9"
      ],
      "author": {
        "name": "Alex Luebs",
        "email": "aluebs@google.com",
        "time": "Tue Nov 24 14:33:14 2015 -0800"
      },
      "committer": {
        "name": "Alex Luebs",
        "email": "aluebs@google.com",
        "time": "Wed Nov 25 16:20:55 2015 -0800"
      },
      "message": "Port PreProcessing to the new WebRTC version\n\nChange-Id: I7dcf4dba83ecbc45725d10045666699a9bc7e4a6\n"
    },
    {
      "commit": "7772e4d03632a5ced3d37749a7aa6d5c793713be",
      "tree": "a285e32055925078551b2b48b54969a7d94e8249",
      "parents": [
        "4d9361a2cda408d2fee6e20af2234555c7332a00",
        "f55e722949d56f0a0a1b4285f9adb5df3ab05b71"
      ],
      "author": {
        "name": "Chih-hung Hsieh",
        "email": "chh@google.com",
        "time": "Thu Oct 22 23:38:20 2015 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Thu Oct 22 23:38:20 2015 +0000"
      },
      "message": "Merge \"Change include path and names to compile with new webrtc.\" am: 2d772fd4af am: 84669feac3\nam: f55e722949\n\n* commit \u0027f55e722949d56f0a0a1b4285f9adb5df3ab05b71\u0027:\n  Change include path and names to compile with new webrtc.\n"
    },
    {
      "commit": "de7fa31668bd90dba80ff2c0c462492fed873c3d",
      "tree": "d495f898ba81acc1948ed4e6bd32afcd63e3899e",
      "parents": [
        "3cce4937ae9bb3a522bee74a47807c8cf0b462d5"
      ],
      "author": {
        "name": "Chih-Hung Hsieh",
        "email": "chh@google.com",
        "time": "Tue Oct 13 10:58:08 2015 -0700"
      },
      "committer": {
        "name": "Chih-Hung Hsieh",
        "email": "chh@google.com",
        "time": "Tue Oct 13 11:00:19 2015 -0700"
      },
      "message": "Change include path and names to compile with new webrtc.\n\n* external/webrtc is upgraded and some header files are\n  moved from interface to include directories.\n* Some external/webrtc data member variables are renamed.\n\nChange-Id: I2d6d4b62dd18f921b0360d524651ebdf7bd2fffc\n"
    },
    {
      "commit": "bb2f3ad2f4768fbb65f0457a4660f8aeab8a0cc9",
      "tree": "4db837a1e3afe8754204d91b199a4248e35ac155",
      "parents": [
        "87c7b391f50b5ad78fbb0df7fb69ebce2a985b8f",
        "679650f008a6dee59d89238fab17edd208a1878e"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Fri Aug 21 21:31:00 2015 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Aug 21 21:31:00 2015 +0000"
      },
      "message": "Merge \"pre processing: check malloc return\""
    },
    {
      "commit": "679650f008a6dee59d89238fab17edd208a1878e",
      "tree": "3da9d1ad9fb71ab6ec5c515ec80c087c5dda52af",
      "parents": [
        "9a57d1cb51ef14a666eefb32b245dd47cf79844e"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Fri Aug 21 14:01:50 2015 -0700"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Fri Aug 21 14:22:28 2015 -0700"
      },
      "message": "pre processing: check malloc return\n\nBug: 20677305.\nChange-Id: Icd67f4b476b864dd325ece8e3f758605ba92f8d1\n"
    },
    {
      "commit": "2a5afed82fd4edd220551ce5565d89ac976f6720",
      "tree": "8238c137e7709188f971a13a9f1cb59846e89276",
      "parents": [
        "9a57d1cb51ef14a666eefb32b245dd47cf79844e"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Fri Aug 21 13:29:53 2015 -0700"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Fri Aug 21 13:29:53 2015 -0700"
      },
      "message": "LVM Effects: add malloc checks\n\nBug: 20674084.\nChange-Id: I7ea2e3a53d020be11c3a7f15315be038bab4bb4d\n"
    },
    {
      "commit": "ac85eb2ce87fd3a58931c119bd2209285b9a8c98",
      "tree": "9b0dbc608d8fd5133e91b816fa41cb262e101f85",
      "parents": [
        "7d3be41436e91a1d79b3a38c651bcd0d2c221f6d",
        "020c15b763345e237c0df79e638d94dc0b6f9de8"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Tue Jun 23 23:04:15 2015 +0000"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Tue Jun 23 23:04:15 2015 +0000"
      },
      "message": "am 020c15b7: am 867e38cc: am ffdc54b6: am 3f0b4976: am 4c855d20: am 6368e6d2: audio effects: fix heap overflow\n\n* commit \u0027020c15b763345e237c0df79e638d94dc0b6f9de8\u0027:\n  audio effects: fix heap overflow\n"
    },
    {
      "commit": "c655561b3580ae7ba3a721e69ac240606e11fab8",
      "tree": "b1284c00f28db946f0a416a52c5e9d6a94e9dbdd",
      "parents": [
        "13c925cab2decaed6786b0642f2b5a9f8516e71a",
        "29b83cbb9018e53a18cf6e0fb34893f9774dcb96"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Tue Jun 23 01:32:08 2015 +0000"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Tue Jun 23 01:32:08 2015 +0000"
      },
      "message": "am 29b83cbb: DO NOT MERGE - audio effects: fix heap overflow\n\n* commit \u002729b83cbb9018e53a18cf6e0fb34893f9774dcb96\u0027:\n  DO NOT MERGE - audio effects: fix heap overflow\n"
    },
    {
      "commit": "3f0b4976ec8023c5cad92b21ac3064d63d1aa581",
      "tree": "2af1fa48b13a7ec0121e8c039d924188c5386f41",
      "parents": [
        "66b91b348d66102c8deb652929150446223ec767",
        "4c855d207edaaeb8c61109977a5297418295658c"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Tue Jun 23 01:29:00 2015 +0000"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Tue Jun 23 01:29:00 2015 +0000"
      },
      "message": "am 4c855d20: am 6368e6d2: audio effects: fix heap overflow\n\n* commit \u00274c855d207edaaeb8c61109977a5297418295658c\u0027:\n  audio effects: fix heap overflow\n"
    },
    {
      "commit": "29b83cbb9018e53a18cf6e0fb34893f9774dcb96",
      "tree": "c17fd5e1cd3b7e6be790d902a31ea2af520a548c",
      "parents": [
        "6ff53b96235bf99cdc1023b99d44f1c4cade1c0a"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Fri Jun 19 15:33:57 2015 -0700"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Tue Jun 23 00:40:18 2015 +0000"
      },
      "message": "DO NOT MERGE - audio effects: fix heap overflow\n\nCheck consistency of effect command reply sizes before\ncopying to reply address.\n\nAlso add null pointer check on reply size.\nAlso remove unused parameter warning.\n\nBug: 21953516.\nChange-Id: I4cf00c12eaed696af28f3b7613f7e36f47a160c4\n"
    },
    {
      "commit": "2b343b1b2dd9e4885ef2b7ec2f798215d714ab3a",
      "tree": "6e9f46147820d6c55cb3c10cccaa680852605a9d",
      "parents": [
        "99b38856e91a55bb67085dbabffac9739998fe8b",
        "20569262fce8b047bfc253d91ccb0f455863fde1"
      ],
      "author": {
        "name": "Jean-Michel Trivi",
        "email": "jmtrivi@google.com",
        "time": "Mon Jun 22 18:09:23 2015 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Jun 22 18:09:24 2015 +0000"
      },
      "message": "Merge \"Add property to ignore audio effects on the platform\" into mnc-dev"
    },
    {
      "commit": "20569262fce8b047bfc253d91ccb0f455863fde1",
      "tree": "b775e9090619570eed1e74692b1190a6f68f6d65",
      "parents": [
        "47b1ca9cf7c45564887832bfdec21ccc18eb448e"
      ],
      "author": {
        "name": "Jean-Michel Trivi",
        "email": "jmtrivi@google.com",
        "time": "Fri Jun 19 12:26:52 2015 -0700"
      },
      "committer": {
        "name": "Jean-Michel Trivi",
        "email": "jmtrivi@google.com",
        "time": "Mon Jun 22 09:26:16 2015 -0700"
      },
      "message": "Add property to ignore audio effects on the platform\n\nUse boolean property ro.audio.ignore_effects to load or ignore the\n  audio effects.\n\nBug 21906334\n\nChange-Id: I778f8b10a1caf25f7679705b1c83775223df011d\n"
    },
    {
      "commit": "6368e6d23ca27cd59a9a1876d6b5a2301a8657ed",
      "tree": "8a89740c3b4dcb9a5241b5c1156154e5990086a2",
      "parents": [
        "115e995c6b3fe7ed33e2d5d88872cb87ab4e63f0"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Fri Jun 19 15:33:57 2015 -0700"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Sat Jun 20 01:21:51 2015 +0000"
      },
      "message": "audio effects: fix heap overflow\n\nCheck consistency of effect command reply sizes before\ncopying to reply address.\n\nAlso add null pointer check on reply size.\nAlso remove unused parameter warning.\n\nBug: 21953516.\nChange-Id: I4cf00c12eaed696af28f3b7613f7e36f47a160c4\n(cherry picked from commit 0f714a464d2425afe00d6450535e763131b40844)\n"
    },
    {
      "commit": "0f714a464d2425afe00d6450535e763131b40844",
      "tree": "e949a4874b50e193734fb3541e9011d3a7e54cb6",
      "parents": [
        "3ecc9db40b1fb9c7f807a5892e5c9625aac1fb06"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Fri Jun 19 15:33:57 2015 -0700"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Fri Jun 19 18:00:25 2015 -0700"
      },
      "message": "audio effects: fix heap overflow\n\nCheck consistency of effect command reply sizes before\ncopying to reply address.\n\nAlso add null pointer check on reply size.\nAlso remove unused parameter warning.\n\nBug: 21953516.\nChange-Id: I4cf00c12eaed696af28f3b7613f7e36f47a160c4\n"
    },
    {
      "commit": "7f0e16e391b0bd243005cc1049d3b6799f0692ec",
      "tree": "40b05b33af85672992eacb83f7da7bfc04a605e9",
      "parents": [
        "70b2313318aaf245d185b6ddb188606608bdf7c9"
      ],
      "author": {
        "name": "Ricardo Garcia",
        "email": "rago@google.com",
        "time": "Thu May 21 19:55:31 2015 -0700"
      },
      "committer": {
        "name": "Ricardo Garcia",
        "email": "rago@google.com",
        "time": "Fri May 22 09:58:07 2015 -0700"
      },
      "message": "Level adjustment for Bundled Effect Fix\n\nFixed automatic level compensation for bundled effects. Fixed algorithm\nnow works even in corner cases previously reported.\nCross band coefficients and cross interaction of BassBoost fixed.\n\nbug: 18769691\nChange-Id: I51570836bdbff37e7c4b26f2b4282e4ded7fa56d\n"
    },
    {
      "commit": "2757127f55dc4928f0025f5d95c9fd5f165971ac",
      "tree": "25d762c853dea088e94b05d23971bf4ccab175c6",
      "parents": [
        "667d3ea42b3557f90d7d2a7638d2575db0b13470",
        "d11d1be13a6391290fb1dbc572292973dae59909"
      ],
      "author": {
        "name": "Ricardo Garcia",
        "email": "rago@google.com",
        "time": "Tue Dec 16 17:38:28 2014 +0000"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Tue Dec 16 17:38:28 2014 +0000"
      },
      "message": "am d11d1be1: am 7ebc1670: am 8975220e: Merge \"Fix for Bundled Effects level compensation\" into lmp-mr1-dev\n\n* commit \u0027d11d1be13a6391290fb1dbc572292973dae59909\u0027:\n  Fix for Bundled Effects level compensation\n"
    },
    {
      "commit": "d11d1be13a6391290fb1dbc572292973dae59909",
      "tree": "049146db61c1de50e6b1d91d87ec51543e8ede72",
      "parents": [
        "045513fc55cd500225071c11b06e1f4bb133681f",
        "7ebc167072be27f42b7c58bd7f9378c8311533ab"
      ],
      "author": {
        "name": "Ricardo Garcia",
        "email": "rago@google.com",
        "time": "Tue Dec 16 17:27:40 2014 +0000"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Tue Dec 16 17:27:40 2014 +0000"
      },
      "message": "am 7ebc1670: am 8975220e: Merge \"Fix for Bundled Effects level compensation\" into lmp-mr1-dev\n\n* commit \u00277ebc167072be27f42b7c58bd7f9378c8311533ab\u0027:\n  Fix for Bundled Effects level compensation\n"
    },
    {
      "commit": "d3671c844e2592ce3a29d6d3c4fc344343783f46",
      "tree": "ce3b2726153fbcfc70827d726b28da5a3c0852fc",
      "parents": [
        "5d61cc77c592d1cf56a71ac9891b210c860b2bae",
        "e10615e7f8749de887c8d25579398ad9e4094077"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Fri Dec 12 20:56:59 2014 +0000"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Fri Dec 12 20:56:59 2014 +0000"
      },
      "message": "am e10615e7: am 6b3e1a6d: am ac90a24d: Merge \"Remove obsolete TARGET_SIMULATOR checks\"\n\n* commit \u0027e10615e7f8749de887c8d25579398ad9e4094077\u0027:\n  Remove obsolete TARGET_SIMULATOR checks\n"
    },
    {
      "commit": "e10615e7f8749de887c8d25579398ad9e4094077",
      "tree": "4d3490f00ecea3650ff483128583ee984696cda8",
      "parents": [
        "d7986933bcf0b327bc260312b0ff0f83431a158b",
        "6b3e1a6d59b304a2dde7f03ba184feac0dec4ee7"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Fri Dec 12 20:08:55 2014 +0000"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Fri Dec 12 20:08:55 2014 +0000"
      },
      "message": "am 6b3e1a6d: am ac90a24d: Merge \"Remove obsolete TARGET_SIMULATOR checks\"\n\n* commit \u00276b3e1a6d59b304a2dde7f03ba184feac0dec4ee7\u0027:\n  Remove obsolete TARGET_SIMULATOR checks\n"
    },
    {
      "commit": "b092a173cf139c0f03bd2fcf3e6e78cce515211d",
      "tree": "ca1090e9ebaf64d2a1d902d2c1b905ed2a0a7e95",
      "parents": [
        "cf1e3bb24b88cf942c133248d26ee7bb57ed5ba7"
      ],
      "author": {
        "name": "Trevor Drake",
        "email": "trevordrake.gerrit@gmail.com",
        "time": "Thu Dec 11 19:25:38 2014 +0000"
      },
      "committer": {
        "name": "Trevor Drake",
        "email": "trevordrake.gerrit@gmail.com",
        "time": "Thu Dec 11 19:25:38 2014 +0000"
      },
      "message": "Remove obsolete TARGET_SIMULATOR checks\n\nChange-Id: I9d499190e49fed16aac686ae5da79ab870605ff4\n"
    },
    {
      "commit": "02521e37c0494b83947c35160f3669de8adc9e5b",
      "tree": "b1da6be2aaee6e241bae52e10170f2a7b936f03d",
      "parents": [
        "9257000c453c1a6f6bf073ff0bf3ba7ef9baf183"
      ],
      "author": {
        "name": "Ricardo Garcia",
        "email": "rago@google.com",
        "time": "Thu Nov 20 08:54:51 2014 -0800"
      },
      "committer": {
        "name": "Ricardo Garcia",
        "email": "rago@google.com",
        "time": "Tue Dec 09 14:13:09 2014 -0800"
      },
      "message": "Fix for Bundled Effects level compensation\n\nFrom the bundled effects, only the EQ had some sort of level compensation\nbased on the settings of the effect.  This patch takes into account all\nthe status and levels of EQ, BassBoost and Virtualizer bundled effects\nand makes an informed decision on the overall level compensation.\n\nbug: 18213779\nChange-Id: I23c7b94fe7da5482f0bbef0cbe715ea464631420\n"
    },
    {
      "commit": "4a2eedc149c5c423ac517a049f357347d9d5dbef",
      "tree": "a584e534a691bb1359ac4cf5a713f24ae94ad00e",
      "parents": [
        "33edcf10489f783a5659ff89ceaca02828496053",
        "59ca7038364cd6fa3e7e1b52e0e90fa0960af038"
      ],
      "author": {
        "name": "Ricardo Garcia",
        "email": "rago@google.com",
        "time": "Tue Dec 09 00:57:44 2014 +0000"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Tue Dec 09 00:57:44 2014 +0000"
      },
      "message": "am 59ca7038: am 4df79c2c: am d6e7f1e1: Merge \"Fix for AOSP force virtualization mode\" into lmp-mr1-dev\n\n* commit \u002759ca7038364cd6fa3e7e1b52e0e90fa0960af038\u0027:\n  Fix for AOSP force virtualization mode\n"
    },
    {
      "commit": "59ca7038364cd6fa3e7e1b52e0e90fa0960af038",
      "tree": "2a54c4146c84d2bb4c80ad3b3576182d3adeaf93",
      "parents": [
        "5f480891e5818f111f431ae69b4c1354e302242a",
        "4df79c2c13f6163f7d99360a7fb34bf3bd2a5115"
      ],
      "author": {
        "name": "Ricardo Garcia",
        "email": "rago@google.com",
        "time": "Mon Dec 08 19:14:59 2014 +0000"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Mon Dec 08 19:14:59 2014 +0000"
      },
      "message": "am 4df79c2c: am d6e7f1e1: Merge \"Fix for AOSP force virtualization mode\" into lmp-mr1-dev\n\n* commit \u00274df79c2c13f6163f7d99360a7fb34bf3bd2a5115\u0027:\n  Fix for AOSP force virtualization mode\n"
    },
    {
      "commit": "47d4c9a4d53ed014b520edbda2edc3e280efb8a5",
      "tree": "5970b2b39c01cb5deb5d98c6b88db0202500dfe8",
      "parents": [
        "f1828910d48bbd22e1392e6ab0ce31298d1f115c"
      ],
      "author": {
        "name": "Ricardo Garcia",
        "email": "rago@google.com",
        "time": "Thu Dec 04 17:47:19 2014 -0800"
      },
      "committer": {
        "name": "Ricardo Garcia",
        "email": "rago@google.com",
        "time": "Thu Dec 04 17:47:19 2014 -0800"
      },
      "message": "Fix for AOSP force virtualization mode\n\nForcing virtualization mode with AOSP code might erroneously return\na failed code, whilst it was correct.  Fixing the condition for\nAutomatic mode.\n\nbug: 18538537\nChange-Id: I5837ff40cfed04c99889813cd56ebe3d90793e74\n"
    },
    {
      "commit": "75c537887ac6947d0bb54bd7e783ff62a3043dc1",
      "tree": "fe20a4574821dacbd176f5e0d4a8fd6ecdd17271",
      "parents": [
        "060ef2a4f42820c77ded1de99c6e1f5edb0033a0",
        "575174d62b665900203d70a4d410329b8918c2af"
      ],
      "author": {
        "name": "Dan Albert",
        "email": "danalbert@google.com",
        "time": "Sun Nov 16 17:35:36 2014 +0000"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Sun Nov 16 17:35:36 2014 +0000"
      },
      "message": "am 575174d6: am bb0cf4d0: am d0264109: Merge \"Move libldnhncr to libc++.\"\n\n* commit \u0027575174d62b665900203d70a4d410329b8918c2af\u0027:\n  Move libldnhncr to libc++.\n"
    },
    {
      "commit": "f38c754cb69d0675612418cfff7847967ec6b717",
      "tree": "501f2c520684b2d5fab93afa9f7bebc1db2af7bf",
      "parents": [
        "14a74010125880ff30386b69e21310f38008e0eb"
      ],
      "author": {
        "name": "Dan Albert",
        "email": "danalbert@google.com",
        "time": "Sat Nov 15 18:09:15 2014 -0800"
      },
      "committer": {
        "name": "Dan Albert",
        "email": "danalbert@google.com",
        "time": "Sat Nov 15 18:09:15 2014 -0800"
      },
      "message": "Move libldnhncr to libc++.\n\nBug: 15193147\nChange-Id: If59c4a53a497f501881d26d58b80b11371906527\n"
    },
    {
      "commit": "d89eaddd1544dc9f6665e2578583e8083cac00da",
      "tree": "dc49e13b8a81d56fb33da80212d46a9a37d77d3e",
      "parents": [
        "55b2e0ea6dfa0da2a6fbac9ce2307977c27bc423"
      ],
      "author": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Tue Oct 07 13:28:44 2014 -0700"
      },
      "committer": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Wed Oct 08 20:12:45 2014 +0000"
      },
      "message": "Check for duplicate uuids when parsing audio_effects.conf\n\nuuids need to be unique, and things don\u0027t work properly when they\u0027re\nnot.\nAlso fix/enhance/extend the dumpEffectDescriptor() method, and\ninclude a list of effects in audioflinger dumpsys.\n\nChange-Id: I3dfbc5ed0f7272c7809e337f2929212ece047ee4\n"
    },
    {
      "commit": "b55e1228f24dd707e120572e83bbdf1b691cd4b7",
      "tree": "7c122febc7adfa578cdc445a093c71d09ffdb64a",
      "parents": [
        "2734bb9e5dbbacaf636644cbf12068b7e5aa09b8",
        "fed1594d707b4623015e538b2f69faf76bc38d5b"
      ],
      "author": {
        "name": "Dan Albert",
        "email": "danalbert@google.com",
        "time": "Fri Sep 12 19:27:43 2014 +0000"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Fri Sep 12 19:27:43 2014 +0000"
      },
      "message": "am fed1594d: am 9916dcb6: am 0d64fcb4: Merge \"Clean up some makefiles.\"\n\n* commit \u0027fed1594d707b4623015e538b2f69faf76bc38d5b\u0027:\n  Clean up some makefiles.\n"
    },
    {
      "commit": "fed1594d707b4623015e538b2f69faf76bc38d5b",
      "tree": "0a1e0cd89a11872e2900c094dde3d56814272b06",
      "parents": [
        "bd014b81ef227752150bdbd1bb6a235db09f3616",
        "9916dcb6ef041752fda5f13192ee6a36e51e73a5"
      ],
      "author": {
        "name": "Dan Albert",
        "email": "danalbert@google.com",
        "time": "Fri Sep 12 05:59:29 2014 +0000"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Fri Sep 12 05:59:29 2014 +0000"
      },
      "message": "am 9916dcb6: am 0d64fcb4: Merge \"Clean up some makefiles.\"\n\n* commit \u00279916dcb6ef041752fda5f13192ee6a36e51e73a5\u0027:\n  Clean up some makefiles.\n"
    },
    {
      "commit": "20adec0cea8b434e9f60888f49023b5a7dde98ec",
      "tree": "bab72066c298453c070f00c899fe8e5c395616ec",
      "parents": [
        "2b16391d066d20f38f3556d65bce827a8d134e4d"
      ],
      "author": {
        "name": "Dan Albert",
        "email": "danalbert@google.com",
        "time": "Thu Sep 11 15:28:53 2014 -0700"
      },
      "committer": {
        "name": "Dan Albert",
        "email": "danalbert@google.com",
        "time": "Thu Sep 11 15:29:27 2014 -0700"
      },
      "message": "Clean up some makefiles.\n\nThe build system takes care of these things for you.\n\nChange-Id: Ife9605f15786e11d6a3578f56ed83dd9ae7fd799\n"
    },
    {
      "commit": "a5309e5c2a7a02852d2a0db7ada89a2eacb047d0",
      "tree": "fe272ffbcea53bf6b1996f5c5486fc60cedcfe6d",
      "parents": [
        "5d166509fa0cdf0e4b3037d7e05005a5390aedd3"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Thu Aug 07 20:26:57 2014 -0700"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Fri Aug 08 08:50:15 2014 -0700"
      },
      "message": "Enable loading of 64 bit effect libraries\n\nChange-Id: I19252ea8d7dd8b9eee2532059c5a3a98d53c3b28\n"
    },
    {
      "commit": "333f66d4642ddd36b42668da2767551ba25f0248",
      "tree": "5b21995570cbab7e36422983804c44f82fa7f03b",
      "parents": [
        "5698d4461a260dbf208484383f692b03c6473e74"
      ],
      "author": {
        "name": "Jean-Michel Trivi",
        "email": "jmtrivi@google.com",
        "time": "Tue Jul 08 16:31:40 2014 -0700"
      },
      "committer": {
        "name": "Jean-Michel Trivi",
        "email": "jmtrivi@google.com",
        "time": "Tue Jul 15 15:12:54 2014 +0000"
      },
      "message": "DO NOT MERGE LVM virtualizer: add support for virtualizer capability query\n\nChange-Id: I88106ba25f9b3f8fd7616307ab6b7fbe7afb6e91\n(cherry picked from commit bfd3b9764841971be2d2f04a3fdbd41a2144beea)\n"
    },
    {
      "commit": "bfd3b9764841971be2d2f04a3fdbd41a2144beea",
      "tree": "31b2be114b1cc38904cfbf958eafc4e208d423a3",
      "parents": [
        "0521213468ffe960ab66925c8378c72a5abda263"
      ],
      "author": {
        "name": "Jean-Michel Trivi",
        "email": "jmtrivi@google.com",
        "time": "Tue Jul 08 16:31:40 2014 -0700"
      },
      "committer": {
        "name": "Jean-Michel Trivi",
        "email": "jmtrivi@google.com",
        "time": "Tue Jul 15 14:46:23 2014 +0000"
      },
      "message": "LVM virtualizer: add support for virtualizer capability query\n\nChange-Id: I88106ba25f9b3f8fd7616307ab6b7fbe7afb6e91\n"
    },
    {
      "commit": "7618c5cb2fd60e944307e46afa051987d1e016c6",
      "tree": "7619c9a4cf9de3a5feec178002b904f83c80f145",
      "parents": [
        "665470b36f202bcc8ee2f7417f68fd2608dd07c1"
      ],
      "author": {
        "name": "Jean-Michel Trivi",
        "email": "jmtrivi@google.com",
        "time": "Tue Jul 08 14:17:29 2014 -0700"
      },
      "committer": {
        "name": "Jean-Michel Trivi",
        "email": "jmtrivi@google.com",
        "time": "Tue Jul 08 16:35:58 2014 -0700"
      },
      "message": "Cleanup unused parameters or variable in EffectBundle\n\nNo unused parameter warning in EffectBundle.\nRemove unused variable declaration in Virtualizer_getParameter\n\nChange-Id: Ibe1c051bc21ac53a6c770b4aa28e31ac5d559d9b\n"
    },
    {
      "commit": "7b6c7b89241397261d52602cbeaa559962efbfec",
      "tree": "1d347a2ce88b8e38c4e127224b3cc749c63f00af",
      "parents": [
        "fcd58351b6d7fcd62a0fe65b425723dd53d10e5e"
      ],
      "author": {
        "name": "Mark Salyzyn",
        "email": "salyzyn@google.com",
        "time": "Fri Jun 20 13:29:08 2014 -0700"
      },
      "committer": {
        "name": "Mark Salyzyn",
        "email": "salyzyn@google.com",
        "time": "Fri Jun 20 14:57:17 2014 -0700"
      },
      "message": "libeffects: 64-bit compile warnings\n\nChange-Id: I210129f5742b046f7ceef48194f039352eff596d\n"
    },
    {
      "commit": "e541269be94f3a1072932d51537905b120ef4733",
      "tree": "39646def02d7230929eb85189f48b9193b8c23a0",
      "parents": [
        "7c96d53a65085f42ac2b6d416cbc16fd36ed72ff"
      ],
      "author": {
        "name": "Andy Hung",
        "email": "hunga@google.com",
        "time": "Fri May 16 11:25:07 2014 -0700"
      },
      "committer": {
        "name": "Andy Hung",
        "email": "hunga@google.com",
        "time": "Fri May 16 15:05:05 2014 -0700"
      },
      "message": "Use new channel count functions for audio masks\n\nChange-Id: Ia658ab4b6320d19fdb50f123c930918724ff0ef3\nSigned-off-by: Andy Hung \u003chunga@google.com\u003e\n"
    },
    {
      "commit": "49f095546d047b52c5070229bbee0c3f27548256",
      "tree": "e8655eaaac3236025d96de19f86ad029aa5ed836",
      "parents": [
        "96b292fd3c76f9af155ee6f7a8559258eeedc6fd",
        "cf79c7a576837d8bccecc80612a1f6f30bb328a8"
      ],
      "author": {
        "name": "Ying Wang",
        "email": "wangying@google.com",
        "time": "Thu May 08 13:48:00 2014 -0700"
      },
      "committer": {
        "name": "Ying Wang",
        "email": "wangying@google.com",
        "time": "Thu May 08 13:48:00 2014 -0700"
      },
      "message": "resolved conflicts for merge of cf79c7a5 to master\n\nChange-Id: Ic4e75541193f733f477cfa4a2a87cce4c9e64f45\n"
    },
    {
      "commit": "029a64e0327ecc1215a3d17ce50f508edae1c4a6",
      "tree": "4c99a37fb8eb563cd55240cba177edc06a45ac7c",
      "parents": [
        "32fa3c6fab55b075c916f4dad38e42e239bb7813"
      ],
      "author": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Tue Apr 15 09:58:55 2014 -0700"
      },
      "committer": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Wed Apr 30 13:49:03 2014 -0700"
      },
      "message": "Define CHANNEL_MASK_* in terms of AUDIO_CHANNEL_OUT_*\n\nand use same suffixes\n\nChange-Id: I90b74ede171ba2550db4a220cfd1ad2e3caefe2d\n"
    },
    {
      "commit": "32fa3c6fab55b075c916f4dad38e42e239bb7813",
      "tree": "afcf4bf640ea8ad973e2e613d4d5fee2e21377d3",
      "parents": [
        "bff804655bcc8e94c48e8da170b9381e9aab7980"
      ],
      "author": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Tue Apr 29 09:01:52 2014 -0700"
      },
      "committer": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Wed Apr 30 09:34:02 2014 -0700"
      },
      "message": "Remove AUDIO_CHANNEL_OUT_SURROUND\n\nand corresponding downmix effect\n\nChange-Id: I1576aa373ca7acbb84d7742bacbd9c2da04a7a4c\n"
    },
    {
      "commit": "cb010a3fa85db1eb90346b35e484e21e7f1b1a4b",
      "tree": "720906051414d27dfca82c175618a83190d9ea3d",
      "parents": [
        "77d4f613bbed8b646c8ddade6a0737fcbd391b07",
        "e1ff1051ffee8fb650741ad133f0f28b73eb7a73"
      ],
      "author": {
        "name": "Mark Salyzyn",
        "email": "salyzyn@google.com",
        "time": "Fri Apr 18 22:11:00 2014 +0000"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Fri Apr 18 22:11:00 2014 +0000"
      },
      "message": "am e1ff1051: am e0f20cea: Merge \"libeffects: 64 bit compile issues\"\n\n* commit \u0027e1ff1051ffee8fb650741ad133f0f28b73eb7a73\u0027:\n  libeffects: 64 bit compile issues\n"
    },
    {
      "commit": "7cb0e733210c2ce7dd2a7c9d32f6d83c4dab9656",
      "tree": "406ac589b6b1cf7efaef89723fd0b8de5e5e2b91",
      "parents": [
        "cd4eb72edb0575ce1e84fbd3f27bb85bab6110ed"
      ],
      "author": {
        "name": "Mark Salyzyn",
        "email": "salyzyn@google.com",
        "time": "Fri Apr 18 13:48:25 2014 -0700"
      },
      "committer": {
        "name": "Mark Salyzyn",
        "email": "salyzyn@google.com",
        "time": "Fri Apr 18 13:57:58 2014 -0700"
      },
      "message": "libeffects: 64 bit compile issues\n\nChange-Id: I32dd13d307572fee91150f8e113df78924ca0067\n"
    },
    {
      "commit": "08d6608556b44f90f6e7fb7dc280f4509af79502",
      "tree": "b19240f44ee71e6dec43fb7806e1d59020c400b0",
      "parents": [
        "ad77a5e08282a92903f91c414b8f65797cb72dde",
        "3a46b975070b503bc71b53b70f9a8f5bd03bba1c"
      ],
      "author": {
        "name": "Narayan Kamath",
        "email": "narayan@google.com",
        "time": "Fri Mar 07 20:15:52 2014 +0000"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Fri Mar 07 20:15:52 2014 +0000"
      },
      "message": "am 3a46b975: am a9b82160: Merge \"LP64 fixes for media/libeffects\"\n\n* commit \u00273a46b975070b503bc71b53b70f9a8f5bd03bba1c\u0027:\n  LP64 fixes for media/libeffects\n"
    },
    {
      "commit": "a9b82160a6682438d43709ba5e7a29022ad1af58",
      "tree": "7e6fba930126b50bc2e22845552cf930ad44b926",
      "parents": [
        "395c2fc0c422c9218f39f6ed2040e90b1cc9920a",
        "b302bd5d288be2d3363b80053ca2392560b00b25"
      ],
      "author": {
        "name": "Narayan Kamath",
        "email": "narayan@google.com",
        "time": "Fri Mar 07 16:04:44 2014 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Fri Mar 07 16:04:45 2014 +0000"
      },
      "message": "Merge \"LP64 fixes for media/libeffects\""
    },
    {
      "commit": "6b2604259c12ee28b49f26ab2adac96eefe30934",
      "tree": "1515124f74fdbc0d3544034568a784155690e185",
      "parents": [
        "fc04776adc5572fcc323b1dca66dee27a537c619",
        "85b3013e06e8fe7802fe6259ecac80261e834332"
      ],
      "author": {
        "name": "jpadmana",
        "email": "jayashree.r.padmanaban@intel.com",
        "time": "Wed Mar 05 01:24:11 2014 +0000"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Wed Mar 05 01:24:11 2014 +0000"
      },
      "message": "am 85b3013e: fix deadlock issues that arise when there are simultaneous effect control interface calls to proxy and to non sub-effect wrappers(eg., bundlewrapper) from audioflinger Also, return NO_ERROR when CMD_OFFLOAD succeeds\n\n* commit \u002785b3013e06e8fe7802fe6259ecac80261e834332\u0027:\n  fix deadlock issues that arise when there are simultaneous effect control interface calls to proxy and to non sub-effect wrappers(eg., bundlewrapper) from audioflinger Also, return NO_ERROR when CMD_OFFLOAD succeeds\n"
    },
    {
      "commit": "85b3013e06e8fe7802fe6259ecac80261e834332",
      "tree": "477c3b2bddfc872ba4f012796f0e3a8d5448f059",
      "parents": [
        "50c3157c5a3e0617be77716beff1ae8801d8a72f"
      ],
      "author": {
        "name": "jpadmana",
        "email": "jayashree.r.padmanaban@intel.com",
        "time": "Thu Nov 14 17:20:52 2013 +0530"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Tue Mar 04 16:10:47 2014 -0800"
      },
      "message": "fix deadlock issues that arise when there are simultaneous\neffect control interface calls to proxy and to\nnon sub-effect wrappers(eg., bundlewrapper) from audioflinger\nAlso, return NO_ERROR when CMD_OFFLOAD succeeds\n\nWhenever there are parallel calls to proxy and non sub-effects wrappers,\nsome of the calls are not completed. This is due to deadlock arsing out\nof Proxy waiting for the subeffect call to return and subeffect waiting\nfor proxy to release lock.\nThe call flow is changed to a cleaner and simple one - Proxy gets the\naeli(effect library info) of subeffects during the EffectGetSubEffects()\ncall. Therby, proxy will manage the sub effects by itself rather than\ngoing through effects factory.\n\nChange-Id: If4b259da5776f151c1e81a78a0239d342046d923\nSigned-off-by: jpadmana \u003cjayashree.r.padmanaban@intel.com\u003e\nBug: 12424044\n"
    },
    {
      "commit": "9cf4f07c2dc5d4f14bfd1adee691667eb55882ec",
      "tree": "15cfd27d1abe01fe5806201f38fff349536172f8",
      "parents": [
        "bce50bfc3846ab008bafa75c5d3f29fd7b5395f7",
        "e276aef8779a7763b318ebd3e8c09f35ff37a95c"
      ],
      "author": {
        "name": "Glenn Kasten",
        "email": "gkasten@android.com",
        "time": "Fri Feb 28 17:24:25 2014 +0000"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Fri Feb 28 17:24:25 2014 +0000"
      },
      "message": "am e276aef8: am 0cf16339: Merge \"Fix preventing from heap overwrite in capture command\"\n\n* commit \u0027e276aef8779a7763b318ebd3e8c09f35ff37a95c\u0027:\n  Fix preventing from heap overwrite in capture command\n"
    },
    {
      "commit": "0cf1633922f970caee19e2cc2f5c042ca30b4aa6",
      "tree": "3f8355c7cd43d30fa29b1e49e33d909c75dfe337",
      "parents": [
        "096d72a32824a0a8c86a716ba44d589183b2b0b3",
        "abb7b17613fff41433cda94207eb535c9fed8fba"
      ],
      "author": {
        "name": "Glenn Kasten",
        "email": "gkasten@android.com",
        "time": "Fri Feb 28 17:12:12 2014 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Fri Feb 28 17:12:13 2014 +0000"
      },
      "message": "Merge \"Fix preventing from heap overwrite in capture command\""
    },
    {
      "commit": "e27e2d9bcabc1a367cb56b4599665c931a1d22ec",
      "tree": "5ec47116fa737797ad8fd1d737ce27d4161103f2",
      "parents": [
        "3d2e09f0221693de08129edd02adf340a44e7a38"
      ],
      "author": {
        "name": "Derek Sollenberger",
        "email": "djsollen@google.com",
        "time": "Thu Feb 27 14:29:56 2014 -0500"
      },
      "committer": {
        "name": "Derek Sollenberger",
        "email": "djsollen@google.com",
        "time": "Thu Feb 27 14:29:56 2014 -0500"
      },
      "message": "Fix includes to no longer pull in Skia includes directories.\n\nbug:13225538\nChange-Id: I4fccc414923f7e62cd46d691c67cb44b9692c225\n"
    },
    {
      "commit": "8fc4d57d41f532b90187b9404a8ac705770d75b4",
      "tree": "6fa63a63d790ed9a8401f60d5473c21ae2f9fc52",
      "parents": [
        "4ee5d2b9d0cdaf936bd5fecd670e5f38da63e4ae",
        "a93c8c9c89ba679cf312c7d082913121bb5543c2"
      ],
      "author": {
        "name": "Glenn Kasten",
        "email": "gkasten@android.com",
        "time": "Tue Feb 25 19:36:22 2014 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Tue Feb 25 19:36:23 2014 +0000"
      },
      "message": "Merge \"Avoid a building error\""
    },
    {
      "commit": "b302bd5d288be2d3363b80053ca2392560b00b25",
      "tree": "7eaf242136ba86c73b7371e47475a2d7c5334847",
      "parents": [
        "80b72e6f4202ce26facbe51b8739814bca198a2c"
      ],
      "author": {
        "name": "Ashok Bhat",
        "email": "ashok.bhat@arm.com",
        "time": "Tue Feb 18 11:40:00 2014 +0000"
      },
      "committer": {
        "name": "Ashok Bhat",
        "email": "ashok.bhat@arm.com",
        "time": "Thu Feb 20 14:12:49 2014 +0000"
      },
      "message": "LP64 fixes for media/libeffects\n\nChanges include:\n\n[x] In get parameter series of functions, replaced size_t*\n    formal parameter type with uint32_t* where actual parameter\n    passed was uint32_t*.\n\n[x] In set parameter series of functions, changed size_t\n    formal parameter to uint32_t where actual parameter was\n    uint32_t.\n\n[x] Changed the definition of LVM_UINT32 from unsigned\n    long to uint32_t as unsigned long is 64-bit in LP64.\n\n[x] Used other stdint.h types for other LVM_types for\n    consistency.\n\n[x] Use of uintptr_t for the pNextMember of the INST_ALLOC\n    structure, rather than LVM_UINT32, for portablility.\n\n[x] Use of uintptr_t where pointers are used in arithmetic.\n\n[x] Replaced the use of 0xFFFFFFFC with ~3 in places where\n    it was used to clear last two bits.\n\n[x] Removed int casts where cmdSize and *replySize, both\n    uint32_t, were being compared with sizeof().\n\nChange-Id: Ibec0b4d8e9b855f44b1cd853be6df84d13cf4186\nSigned-off-by: Marcus Oakland \u003cmarcus.oakland@arm.com\u003e\nSigned-off-by: Ashok Bhat \u003cashok.bhat@arm.com\u003e\n"
    },
    {
      "commit": "abb7b17613fff41433cda94207eb535c9fed8fba",
      "tree": "1ccb9a72843f7b023cbd9b5365fc6c424b672dc7",
      "parents": [
        "80b72e6f4202ce26facbe51b8739814bca198a2c"
      ],
      "author": {
        "name": "Ryszard Grzesica",
        "email": "ryszard.grzesica@sonymobile.com",
        "time": "Fri Jan 17 11:40:16 2014 +0100"
      },
      "committer": {
        "name": "Takeshi Aimi",
        "email": "takeshi.aimi@sonymobile.com",
        "time": "Thu Feb 20 02:01:35 2014 +0900"
      },
      "message": "Fix preventing from heap overwrite in capture command\n\nThere was heap usage error in case of stop of audio framework while\ncapturePoint was negative. Pointer to reply data was moved but\nfinal silence write was done using original buffer size.\nNow silence set is done at the beginning under the condition\nthat framework has stopped.\n\nChange-Id: I7dab1e922f1813e5fbfd4a64c8b0d15d9465520c\n"
    },
    {
      "commit": "6c44568b8f065ae06556ba6a9b3c725d9b416857",
      "tree": "8ed9e71e0cb8e8f67d161569f7039f263f41fd40",
      "parents": [
        "af191eb4feac513d17dc0362e0cea5bc9e0ffe9d"
      ],
      "author": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Thu Feb 13 16:39:11 2014 -0800"
      },
      "committer": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Thu Feb 13 16:40:36 2014 -0800"
      },
      "message": "libeffects: don\u0027t set module path\n\nSetting the module path breaks multilib builds where there may\nbe two different module paths for 32-bit and 64-bit, and there\nis no need to set it to the default.\n\nChange-Id: I95d62b5573a0bb0ab6c97649041dfc4309cbc8b9\n"
    },
    {
      "commit": "377b2ec9a2885f9b6405b07ba900a9e3f4349c38",
      "tree": "b938e1d75a1beefae86244f287ca22f4a277740d",
      "parents": [
        "cdda7bf4d3ca9cad6979374a18dd5be79ea83d80"
      ],
      "author": {
        "name": "Kévin PETIT",
        "email": "kevin.petit@arm.com",
        "time": "Mon Feb 03 12:35:36 2014 +0000"
      },
      "committer": {
        "name": "Narayan Kamath",
        "email": "narayan@google.com",
        "time": "Tue Feb 11 11:40:06 2014 +0000"
      },
      "message": "Make frameworks/av 64-bit compatible\n\nContains the necessary changes to make frameworks/av build and work\non a 64-bit machine.\n\nSigned-off-by: Craig Barber \u003ccraig.barber@arm.com\u003e\nSigned-off-by: Kévin PETIT \u003ckevin.petit@arm.com\u003e\nSigned-off-by: Ashok Bhat \u003cashok.bhat@arm.com\u003e\nSigned-off-by: Marcus Oakland \u003cmarcus.oakland@arm.com\u003e\n\nChange-Id: I725feaae50ed8eee25ca2c947cf15aee1f395c43\n"
    },
    {
      "commit": "f90c7e0bb8d83d8b7f733bdf430d331ea3f221e8",
      "tree": "f2e5372c4876aad1901b54cc98d988cbee387549",
      "parents": [
        "b447379e2ea1c9ca4cd543ac183df70567d40485"
      ],
      "author": {
        "name": "jpadmana",
        "email": "jayashree.r.padmanaban@intel.com",
        "time": "Thu Nov 14 17:20:52 2013 +0530"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Fri Jan 31 00:58:44 2014 +0000"
      },
      "message": "fix deadlock issues that arise when there are simultaneous\neffect control interface calls to proxy and to\nnon sub-effect wrappers(eg., bundlewrapper) from audioflinger\nAlso, return NO_ERROR when CMD_OFFLOAD succeeds\n\nWhenever there are parallel calls to proxy and non sub-effects wrappers,\nsome of the calls are not completed. This is due to deadlock arsing out\nof Proxy waiting for the subeffect call to return and subeffect waiting\nfor proxy to release lock.\nThe call flow is changed to a cleaner and simple one - Proxy gets the\naeli(effect library info) of subeffects during the EffectGetSubEffects()\ncall. Therby, proxy will manage the sub effects by itself rather than\ngoing through effects factory.\n\nSigned-off-by: jpadmana \u003cjayashree.r.padmanaban@intel.com\u003e\nBug: 12424044\nChange-Id: I16852222f1d0e94e433a19177729323a4bb1c090\n"
    },
    {
      "commit": "7d6fc5ebc8718ebb5bf505d9bda83ab63741a545",
      "tree": "3dff65731f7dcb75e20974287e8008c7048ca86f",
      "parents": [
        "4ef1dc2d5b5f5df93b173b0b4c4719d4484e031d"
      ],
      "author": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Fri Jan 24 21:00:32 2014 -0800"
      },
      "committer": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Mon Jan 27 12:39:29 2014 -0800"
      },
      "message": "frameworks/av: convert LOCAL_MODULE_PATH to LOCAL_MODULE_RELATIVE_PATH\n\nLOCAL_MODULE_PATH doesn\u0027t work for multiarch builds, replace it\nwith LOCAL_MODULE_RELATIVE_PATH.\n\nChange-Id: I4e4ceec61d026bbe74ba604554c06104bde42e5e\n"
    },
    {
      "commit": "9803acb6b2c1b9c01444e0c8c0124adbe9a7157a",
      "tree": "45a994000490f3ec7a346c673dfaf21228c8b025",
      "parents": [
        "274cc85dcb255185838705a91dba00efa52bf436"
      ],
      "author": {
        "name": "synergy dev",
        "email": "synergye@codefi.re",
        "time": "Tue Dec 17 17:48:51 2013 -0800"
      },
      "committer": {
        "name": "synergy dev",
        "email": "synergye@codefi.re",
        "time": "Tue Dec 17 17:59:49 2013 -0800"
      },
      "message": "libeffects: do not use GNU old-style field designators\n\nAvoiding the use of GCC extensions improves code portability\n\nChange-Id: I9edbedc5c8ad4aa46ca54bc2e28280441431a530\n"
    },
    {
      "commit": "5bf2560ce9b70bee077e0c264ac06648f0f63acc",
      "tree": "f17ecec5321e8d583d045135f29f14f3c7418e71",
      "parents": [
        "eb76f318e9daf91dbf195bcb74852b3bd736a32a",
        "b2059ff384eee8ffb70a7ec8fc5570405201c734"
      ],
      "author": {
        "name": "The Android Open Source Project",
        "email": "initial-contribution@android.com",
        "time": "Fri Nov 22 10:35:20 2013 -0800"
      },
      "committer": {
        "name": "The Android Open Source Project",
        "email": "initial-contribution@android.com",
        "time": "Fri Nov 22 10:35:20 2013 -0800"
      },
      "message": "Merge commit \u0027b2059ff384eee8ffb70a7ec8fc5570405201c734\u0027 into HEAD\n"
    },
    {
      "commit": "c9d8ea7f8f9a1ca8ecd266695e3cac423790b2f9",
      "tree": "ba266ce44ccdc60775b8f91e6b33a05b3c207f89",
      "parents": [
        "0219856e5e45c0bdd20f2199297ec92f11f0875f"
      ],
      "author": {
        "name": "synergydev",
        "email": "synergye@codefi.re",
        "time": "Sat Oct 19 22:51:33 2013 -0700"
      },
      "committer": {
        "name": "synergydev",
        "email": "synergye@codefi.re",
        "time": "Sat Oct 19 22:57:43 2013 -0700"
      },
      "message": "libeffects: do not use GNU old-style field designators\n\nNot using a GNU extension improves portability\n\nChange-Id: I4e8a0376c089828ca4fc7f1aaf3914bfd917d4c5\n"
    },
    {
      "commit": "385e7509eb563c983647e72b1232225c2200435f",
      "tree": "a6648133e77d801f1e686657d5a0f92b3d9e139e",
      "parents": [
        "7bab024867996bec6dc4e3e31ed4570da9afbc25"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Fri Oct 04 08:36:52 2013 -0700"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Fri Oct 04 08:42:21 2013 -0700"
      },
      "message": "fix offload audio effect proxy implementation uuid\n\nThe proxy implementation UUID should not be the NULL UUID as\nAudioFlinger will reject effect creation if the AudioEffect\nis constructed by passing the implementation UUID and not the\ntype UUID.\n\nBug: 11070481.\n\nChange-Id: Ia9049d974e76303c5b63a607ee594b7dc1f182d4\n"
    },
    {
      "commit": "5d6d86a4d102704f49b9235eaf282c428d7100b6",
      "tree": "32ef7801b774457edf670fbdde13f423286b646e",
      "parents": [
        "eba9bf72fb5e036bb15ca4a1dc126883a2cb938d"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Fri Sep 20 12:27:32 2013 -0700"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Fri Sep 27 16:03:46 2013 -0700"
      },
      "message": "fix oflload effect proxy commmand handling\n\nImplement a more generic command handling in offload effect\nproxy. All commands are sent to both sub effects but only the reply\nfrom the active one is returned to the caller.\n\nBug: 8174034.\nChange-Id: I28aa0f0d806e846332bc29801ee40d34e4ea0c43\n"
    },
    {
      "commit": "eba9bf72fb5e036bb15ca4a1dc126883a2cb938d",
      "tree": "3d0676b2c31251240c6be8a4c0f1255a4e4f0554",
      "parents": [
        "faca05e96744dfaa2f352e3dbb29eead4e55cfa0"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Fri Sep 27 15:04:26 2013 -0700"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Fri Sep 27 16:03:41 2013 -0700"
      },
      "message": "fix command handling in effect offload proxy\n\nFix some issues in effect proxy related to handling of effect\ncommands to offloaded and non offloaded effects.\n\nAlso fixed a bug on capture index in software Visualizer effect.\n\nBug: 8174034.\nChange-Id: I119458fea597cc3acbc0ef9ec315f67aa211cbd9\n"
    },
    {
      "commit": "faca05e96744dfaa2f352e3dbb29eead4e55cfa0",
      "tree": "13fdbf3c9f72d9c1d31d367d58556e45703e70ce",
      "parents": [
        "2eab94f7dfd41a65e13aca379a1aed97447f8884"
      ],
      "author": {
        "name": "jpadmana",
        "email": "jayashree.r.padmanaban@intel.com",
        "time": "Tue Jun 04 16:03:29 2013 +0530"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Fri Sep 27 16:03:37 2013 -0700"
      },
      "message": "Effect Offload Proxy for effects offload\n\nEffect Proxy abstracts the sub effects to the upper layers.\nIt has the following functionalities:\n- creation and release of sub effects\n- routing the effect commands and process to the appropriate sub effect\n\nBug: 8174034.\n\nChange-Id: Iec34b61104f0bbec4ef67c62f0710a5536dc325b\nSigned-off-by: jpadmana \u003cjayashree.r.padmanaban@intel.com\u003e\n"
    },
    {
      "commit": "2eab94f7dfd41a65e13aca379a1aed97447f8884",
      "tree": "bdd573d7a104c25ad6951dcfd58ee37ff2c03760",
      "parents": [
        "83f400056ac913250f0926326ff78697c68d18a1"
      ],
      "author": {
        "name": "jpadmana",
        "email": "jayashree.r.padmanaban@intel.com",
        "time": "Tue Jun 04 16:08:29 2013 +0530"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Fri Sep 27 16:03:30 2013 -0700"
      },
      "message": "Effects Factory changes for effects offload\n\naudio_effects.conf - commented changes to illustrate the\naddition of Proxy and sub effects to the conf file\n\nAdded an effectFactoryApi - EffectGetSubEffects for querying the\nsub effect descriptors from the factory. This api is used by the Proxy\nto get the sub effects\n\nAdded functions and data structures in factory code for\nloading the sub effects\n\ngSubEffectList - has the Proxies and their corresponding sub effects\n\n- addSubEffect() - reads a sub effect node and adds to the gSubEffectList\n- findSubEffect() - searches through the gSubEffectList to find a SubEffect\n\nBug: 8174034.\n\nChange-Id: Id7f6aa67c41db370d32beaf43a979ba4ac925928\nSigned-off-by: jpadmana \u003cjayashree.r.padmanaban@intel.com\u003e\n"
    },
    {
      "commit": "83f400056ac913250f0926326ff78697c68d18a1",
      "tree": "4dcd3ee8df9d39701190664ce5d0e9b4bb5b7cc9",
      "parents": [
        "5b8ce24b849f6cd5629b4ba508f7c78d6227d250"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Fri Sep 27 14:53:24 2013 -0700"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Fri Sep 27 16:03:26 2013 -0700"
      },
      "message": "Revert \"Effects Factory changes for effects offload\"\n\nThis reverts commit 284c17e73bbff51cb5b1adcee98386d47733757a.\n\nChange-Id: I31db21e1ad4758b21356bfe4c4c64f15b2da8737\n"
    },
    {
      "commit": "5b8ce24b849f6cd5629b4ba508f7c78d6227d250",
      "tree": "bdd573d7a104c25ad6951dcfd58ee37ff2c03760",
      "parents": [
        "f2c8b02786c58b98d41d3f7c30e882cacc34e7ab"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Fri Sep 27 14:50:48 2013 -0700"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Fri Sep 27 16:03:21 2013 -0700"
      },
      "message": "Revert \"Effect Offload Proxy for effects offload\"\n\nThis reverts commit 60c60df7db278d2fa5c90b0fa14f99a61d50272b.\n\nChange-Id: Iafba9e02a9f3bfde6248d802e96c4e649686a87d\n"
    },
    {
      "commit": "cd0c4683947231a7d3dc7811bedb75c5a965103c",
      "tree": "3554110faa75566c437e0d4f5bf26cf7b2759f97",
      "parents": [
        "fed6292af65a0b97b583ecbd3c232b3811a3f37b"
      ],
      "author": {
        "name": "Jean-Michel Trivi",
        "email": "jmtrivi@google.com",
        "time": "Wed Sep 25 18:43:55 2013 -0700"
      },
      "committer": {
        "name": "Jean-Michel Trivi",
        "email": "jmtrivi@google.com",
        "time": "Thu Sep 26 12:55:10 2013 -0700"
      },
      "message": "LoudnessEnhancer compatible with stereo imaging\n\nUse a single compressor for both channels.\nEnvelope of signal is determined by looking at both channels.\n\nBug 8413913\n\nChange-Id: Ia9b6f34923d2977c60a3352500b858dfa1fab33c\n"
    },
    {
      "commit": "d2ac3144e201398340cc5b9bb36e5efe39edd9eb",
      "tree": "3e56f8dca0ddb77df3635ea300bfc76acf0d43a2",
      "parents": [
        "ddfbfaeb00295fff7351711f0f044f17d6c40f3c",
        "6fbc9ef121b081f888163190bb13cbac31599900"
      ],
      "author": {
        "name": "Jean-Michel Trivi",
        "email": "jmtrivi@google.com",
        "time": "Tue Sep 24 23:37:53 2013 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Sep 24 23:37:53 2013 +0000"
      },
      "message": "Merge \"Fix log typos in Visualizer effect\" into klp-dev"
    },
    {
      "commit": "6fbc9ef121b081f888163190bb13cbac31599900",
      "tree": "588d44fb6e79c974ebbc1004e6ffcedefbc110f8",
      "parents": [
        "664539d25180ab8f77e0521533ea2821cf28985f"
      ],
      "author": {
        "name": "Jean-Michel Trivi",
        "email": "jmtrivi@google.com",
        "time": "Tue Sep 24 15:31:13 2013 -0700"
      },
      "committer": {
        "name": "Jean-Michel Trivi",
        "email": "jmtrivi@google.com",
        "time": "Tue Sep 24 15:37:06 2013 -0700"
      },
      "message": "Fix log typos in Visualizer effect\n\nFix errors in logs for Visualizer.\nSet loop counters on 32 bits\n\nBug 8413913\n\nChange-Id: Iad2140d003d15d45be46826a5e89baff14fe9e77\n"
    },
    {
      "commit": "ddfbfaeb00295fff7351711f0f044f17d6c40f3c",
      "tree": "550cf08c4c8b7d5393512d1a96661009be3e4de9",
      "parents": [
        "1c7f35d1f25eb7160314fdef536463fc34deb1ea"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Fri Sep 20 12:27:32 2013 -0700"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Tue Sep 24 15:29:55 2013 -0700"
      },
      "message": "fix oflload effect proxy commmand handling\n\nImplement a more generic command handling in offload effect\nproxy. All commands are sent to both sub effects but only the reply\nfrom the active one is returned to the caller.\n\nBug: 8174034.\nChange-Id: Ia45f9933b3bf338257ec70b37732fa1578d26b9f\n"
    },
    {
      "commit": "09647d29eaf429ce88c9c9709ff63dee62f2147a",
      "tree": "3626eb231080732d92a0b1bdfbd1710b52e36aa6",
      "parents": [
        "4b701cc041d635e5ec56e382043a4c5d01aedd80"
      ],
      "author": {
        "name": "Jean-Michel Trivi",
        "email": "jmtrivi@google.com",
        "time": "Fri Sep 20 11:58:40 2013 -0700"
      },
      "committer": {
        "name": "Jean-Michel Trivi",
        "email": "jmtrivi@google.com",
        "time": "Mon Sep 23 15:53:53 2013 -0700"
      },
      "message": "Add support for level measurements in Visualizer\n\nNew commands to set a measurement mode and perform peak + RMS\n measurements.\n\nBug 8413913\n\nChange-Id: Ib25254065c79d365ebb34f9dc9caa0490e2d300d\n"
    },
    {
      "commit": "5baf2af52cd186633b7173196c1e4a4cd3435f22",
      "tree": "9c6752456812c4a927574a71e1d2ec2495ff6ce3",
      "parents": [
        "9a98b6de791aeb130192df10744f5b35f8b6ef1a"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Thu Sep 12 17:37:00 2013 -0700"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Wed Sep 18 11:52:40 2013 -0700"
      },
      "message": "more support for audio effect offload\n\nOffloading of audio effects is now enabled for offloaded\noutput threads. If an effect not supporting offload is enabled,\nthe AudioTrack is invalidated so that it can be recreated in PCM\nmode.\n\nFix some issues in effect proxy related to handling of effect\ncommands to offloaded and non offloaded effects.\n\nAlso fixed a bug on capture index in software Visualizer effect.\n\nBug: 8174034.\n\nChange-Id: Ib23d3c2d5a652361b0aaec7faee09102f2b18fce\n"
    },
    {
      "commit": "6cc3a9948b51193dfdcb0c3527d7f3d1ca38aa3c",
      "tree": "5545a323750c07f0210f43f727e828ec7fa9f918",
      "parents": [
        "18f861404efc054da0a2ea6c582e293940f63bc8"
      ],
      "author": {
        "name": "Jean-Michel Trivi",
        "email": "jmtrivi@google.com",
        "time": "Tue Sep 10 09:15:18 2013 -0700"
      },
      "committer": {
        "name": "Jean-Michel Trivi",
        "email": "jmtrivi@google.com",
        "time": "Tue Sep 17 18:43:01 2013 -0700"
      },
      "message": "LoudnessEnhancer audio effect implementation\n\nImplementation based on DRC effect, controlled by a\n target gain.\n The target gain is used to amplify the signal at\n the input of the DRC, and to compute the knee\n of the DRC.\n\nBug 8413913\n\nChange-Id: I386d64793a9fa3f7218e053d6f0a99f6836c02bd\n"
    },
    {
      "commit": "60c60df7db278d2fa5c90b0fa14f99a61d50272b",
      "tree": "1b687d31467576d5fce79d4646917652fa8ed9dc",
      "parents": [
        "a82975e02ccf78fd9c4dd2f7c1a66c254b52fe3b"
      ],
      "author": {
        "name": "jpadmana",
        "email": "rpadmanaban.jayashree@gmail.com",
        "time": "Tue Jun 04 16:03:29 2013 +0530"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Fri Sep 06 17:36:29 2013 +0000"
      },
      "message": "Effect Offload Proxy for effects offload\n\nEffect Proxy abstracts the sub effects to the upper layers.\nIt has the following functionalities:\n- creation and release of sub effects\n- routing the effect commands and process to the appropriate sub effect\n\nBug: 8174034.\n\nChange-Id: I22d8136636048e7fe8f8807cbc6e348ffa200a22\nSigned-off-by: jpadmana \u003crpadmanaban.jayashree@gmail.com\u003e\n"
    },
    {
      "commit": "284c17e73bbff51cb5b1adcee98386d47733757a",
      "tree": "d400f398fd4f2e8e383256973185b7dae243f92f",
      "parents": [
        "a19912554f3779fac0c341ac702227bf4b5fe399"
      ],
      "author": {
        "name": "jpadmana",
        "email": "rpadmanaban.jayashree@gmail.com",
        "time": "Tue Jun 04 16:08:29 2013 +0530"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Fri Sep 06 10:33:03 2013 -0700"
      },
      "message": "Effects Factory changes for effects offload\n\naudio_effects.conf - commented changes to illustrate the\naddition of Proxy and sub effects to the conf file\n\nAdded an effectFactoryApi - EffectGetSubEffects for querying the\nsub effect descriptors from the factory. This api is used by the Proxy\nto get the sub effects\n\nAdded functions and data structures in factory code for\nloading the sub effects\n\ngSubEffectList - has the Proxies and their corresponding sub effects\n\n- addSubEffect() - reads a sub effect node and adds to the gSubEffectList\n- findSubEffect() - searches through the gSubEffectList to find a SubEffect\n\nBug: 8174034.\n\nChange-Id: I25b0c62b2ad523a52337128b51469e628209ea3e\nSigned-off-by: jpadmana \u003crpadmanaban.jayashree@gmail.com\u003e\n"
    },
    {
      "commit": "b7f08d386f2bddb8f3c87858f9204754b7fdb857",
      "tree": "84600437e114225c05ef7d83b177273b8d157f93",
      "parents": [
        "551ababe67ce31778000d52958e53e1c56e1a294"
      ],
      "author": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Tue Jun 18 11:46:28 2013 -0700"
      },
      "committer": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Wed Jul 10 15:56:47 2013 -0700"
      },
      "message": "Clean up references to AUDIO_FORMAT_PCM_8_24_BIT\n\nChange-Id: I08771eb2664b7082561a40937218c7f4414e2cce\n"
    },
    {
      "commit": "209bbbcf4190231f9dede758cbe77d109919f9f1",
      "tree": "08e8e07347f3b8dd770685bb34280a0d2c236b73",
      "parents": [
        "e6478de72a8ae1d3abb3e8c20898977c45354a4f"
      ],
      "author": {
        "name": "Jean-Michel Trivi",
        "email": "jmtrivi@google.com",
        "time": "Thu Jun 20 16:49:25 2013 -0700"
      },
      "committer": {
        "name": "Jean-Michel Trivi",
        "email": "jmtrivi@google.com",
        "time": "Thu Jun 20 16:49:25 2013 -0700"
      },
      "message": "Apply EQ and bass boost first in effect chain\n\nEQ and bass boost can improperly interact with other effects\n (e.g. virtualizer) outside of the bundle. Apply them first\n in an effect chain, which is equivalent to using them to affect\n the content of a track, rather than how a track is presented,\n when additional effects are cascaded behind EQ and BB.\n\nBug 8589316\n\nChange-Id: Ifb34e46bc1969f613cdc90ee2a79af677e2fad92\n"
    },
    {
      "commit": "5875516ea11f77438f2ed23334fc490a706edd56",
      "tree": "64a4066e339bfdd95eb7acf3682fe4ce762c9ebf",
      "parents": [
        "948700612e987b49185f7916befd38f39a2b0a3b"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Wed May 01 16:15:49 2013 -0700"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Wed May 01 16:15:49 2013 -0700"
      },
      "message": "Fix reverb at 48kHz\n\nThe LVM reverb wrapper had a test to only accept input\nsampling rate of 44.1 kHz. As the LVM reberb engine\nsupports multiple sampling rate we can remove this test.\n\nThe fix for issue 8512027 (commit 2a9c5cd4) caused a regression\nbecause the framework now checks the return code of the effect\nconfigure command and ignores subsequent commands in case of error.\n\nBug: 8630044\nChange-Id: I3146871f1ad8f7945a2e63ea763dd7b87368337d\n"
    },
    {
      "commit": "ecba7488c5cceaacef95836b1b476433451e7761",
      "tree": "83245c19c2dda5c557531edb19478056034b5db5",
      "parents": [
        "5544c66ba0aa789a997b376df503a5ffae425dc7"
      ],
      "author": {
        "name": "Ying Wang",
        "email": "wangying@google.com",
        "time": "Tue Apr 09 21:53:49 2013 -0700"
      },
      "committer": {
        "name": "Ying Wang",
        "email": "wangying@google.com",
        "time": "Tue Apr 09 21:53:49 2013 -0700"
      },
      "message": "Add liblog\n\nBug: 8580410\nChange-Id: If493d87d60d71be664ad75b140c62acadb75b0d0\n"
    },
    {
      "commit": "6a5c6ed13e3ea1b19835e08624125c9b1505b32c",
      "tree": "f3a83e08b9a6c526ee1b3cbfe02de1ed09382770",
      "parents": [
        "4f4c2655dc3f6fcef766db6e793b1642ad0fd605"
      ],
      "author": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Tue Mar 19 09:57:29 2013 -0700"
      },
      "committer": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Tue Mar 19 09:57:29 2013 -0700"
      },
      "message": "Fix valgrind error\n\nThe volume member of the BundledEffectContext class was not being\ninitialized, resulting in uninitialized data being used for calculations\nand control flow.\n\nChange-Id: I84bf9fd478e5d0479e781323b21c7c03dea958c5\n"
    },
    {
      "commit": "a93c8c9c89ba679cf312c7d082913121bb5543c2",
      "tree": "c70bb3650465a38237dbbe113c4ba71da410280a",
      "parents": [
        "12834fe289e8173e94f31603fa6d313abe56ad70"
      ],
      "author": {
        "name": "Chih-Wei Huang",
        "email": "cwhuang@linux.org.tw",
        "time": "Thu Jan 10 20:52:57 2013 +0800"
      },
      "committer": {
        "name": "Chih-Wei Huang",
        "email": "cwhuang@android-x86.org",
        "time": "Thu Jan 10 21:04:50 2013 +0800"
      },
      "message": "Avoid a building error\n\n\u0026pDwmModule-\u003econfig may equal to pConfig that triggers\na building error using gcc 4.7:\n\nIn file included from bionic/libc/include/signal.h:33:0,\n                 from bionic/libc/include/sys/select.h:34,\n                 from bionic/libc/include/unistd.h:34,\n                 from system/core/include/cutils/log.h:34,\n                 from frameworks/av/media/libeffects/downmix/EffectDownmix.c:19:\nIn function \u0027memcpy\u0027,\n    inlined from \u0027Downmix_Configure\u0027 at frameworks/av/media/libeffects/downmix/EffectDownmix.c:651:11,\n    inlined from \u0027Downmix_Init\u0027 at frameworks/av/media/libeffects/downmix/EffectDownmix.c:605:9,\n    inlined from \u0027DownmixLib_Create\u0027 at frameworks/av/media/libeffects/downmix/EffectDownmix.c:233:9:\nbionic/libc/include/string.h:114:31: error: call to \u0027__memcpy_overlap_error\u0027 declared with attribute error: memcpy called with overlapping regions\n\nChange-Id: Ia6c4aab72e38d00d8d526f3b56fc03b6530b4e44\n"
    },
    {
      "commit": "480421bb48af5df4f15498845447f3fde20a4069",
      "tree": "f9d8a23223b8a5da6528803cb5fcbabae9464037",
      "parents": [
        "fb242fa66643d1bd5362077a44c02c86c8064564"
      ],
      "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": "7f16b197c76fbae9399242f055a7ee16dcd0fd6d",
      "tree": "c3ef4aac9bb7cedd1a694a50d4f9be0ec83cc817",
      "parents": [
        "6035cb5a61a7606cc8e4ecddec32b2eb37a9fd56"
      ],
      "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": "6035cb5a61a7606cc8e4ecddec32b2eb37a9fd56",
      "tree": "4adad231ee22989258c1d6c6c95ea8c218a9807d",
      "parents": [
        "bd37975395b6517e155f6195d2300872bc26ee70"
      ],
      "author": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Thu Oct 25 11:02:50 2012 -0700"
      },
      "committer": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Thu Oct 25 12:16:59 2012 -0700"
      },
      "message": "Switch to new fx library API\n\nChange-Id: I6603aef5e3821a8f911e3f33ef8565d04bd1e2e5\n"
    },
    {
      "commit": "a4fe9a13c432afc5d1e94a4617b75e8f962540e9",
      "tree": "378f10b114a866dbe5feb3eaf7ee35f0a33f3aa2",
      "parents": [
        "bbe11e46faf8f9e3296431993c36d3efc61337b5"
      ],
      "author": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Wed Oct 17 10:57:02 2012 -0700"
      },
      "committer": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Wed Oct 17 10:57:02 2012 -0700"
      },
      "message": "Fix valgrind issues\n\nWe were reading some uninitialized memory when creating bass boost and EQ\neffects, and using memcpy() with identical source and destination.\n\nChange-Id: I15ea1b2c52ae05cbf54aef04351e89805e0ebf8e\n"
    }
  ],
  "next": "97bb6e89845cb6d85f4d34a4efcc1de2ce585336"
}
