)]}'
{
  "log": [
    {
      "commit": "17a736c3e1d062d7fc916329eb32aef8935614af",
      "tree": "7fb73e48de8641ce6ad7b65fb4204bc60cd3e5f0",
      "parents": [
        "1746929ddc7592ab397c402724a61352e45df093"
      ],
      "author": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Tue Feb 14 08:52:15 2012 -0800"
      },
      "committer": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Mon Mar 19 14:12:01 2012 -0700"
      },
      "message": "Update comments\n\nChange-Id: I327663a020670d0a72ff57bd0b682e2ce0528650\n"
    },
    {
      "commit": "33b383948e8f270bff30378476f00dce289004eb",
      "tree": "a42eeb76674395b36611da694166ddd4144a0fa8",
      "parents": [
        "dfaf549e3e310bc22444f4404b19f4907b24c286"
      ],
      "author": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Tue Mar 13 15:59:35 2012 -0700"
      },
      "committer": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Wed Mar 14 16:44:34 2012 -0700"
      },
      "message": "Remove dependency on audio_* location\n\nChange-Id: I4bc66115fcb9ba22b057bd72db3f561dcb18a0d8\n"
    },
    {
      "commit": "b4d307481960b6b348fae4b4e8edefd003c3d36c",
      "tree": "d357f30c9cf6541cbe3de6de7cc71a860f66c80b",
      "parents": [
        "f67fdc6d8bb31226ffeeecbff6aca610befd0110"
      ],
      "author": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Tue Mar 13 14:46:23 2012 -0700"
      },
      "committer": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Tue Mar 13 16:14:19 2012 -0700"
      },
      "message": "Use correct syntax for #include \u003c\u003e \"\"\n\nChange-Id: I943137108668ae66f8eba18dafe069a7951bcd8f\n"
    },
    {
      "commit": "5e92a7861196ddae14638d4b7a63fc4892b7ef59",
      "tree": "6772b944a26acb22381a2eb38871b46cff9d856a",
      "parents": [
        "0a20fa9c41c96e31fa20e071074a4b6e7f6c41c3"
      ],
      "author": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Mon Jan 30 07:40:52 2012 -0800"
      },
      "committer": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Wed Feb 08 09:21:39 2012 -0800"
      },
      "message": "Effect UUID inputs passed by pointer are const\n\nChange-Id: I1f5c338bcb7368e3dd8cd5f804b2e6d9fbe087f8\n"
    },
    {
      "commit": "3d5188bd6abe55898f10a0edf3c05aff8aa2ef67",
      "tree": "7dd2eba6d9a65d42628ffe55d12e640776285035",
      "parents": [
        "42968939dfce0954d6540011199045ec4ed7de80"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Fri Dec 16 15:30:36 2011 -0800"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Mon Dec 19 17:08:31 2011 -0800"
      },
      "message": "audio effects: rename configure command\n\nRenamed audio effect library interface command for audio format\nconfiguration from EFFECT_CMD_CONFIGURE to EFFECT_CMD_SET_CONFIG.\nThis makes the naming more consistent with other exixsting commands\nand allow adding a new command to get the configuration (EFFECT_CMD_GET_CONFIG).\nSame change for reverse channel configuration renamed from\nEFFECT_CMD_CONFIGURE_REVERSE to EFFECT_CMD_SET_CONFIG_REVERSE.\n\nImplemented EFFECT_CMD_GET_CONFIG in exisitng effect libraries.\n\nChange-Id: Ia7b1c620f13797fe5aceb3b0b4acbacce09fb067\n"
    },
    {
      "commit": "45b92707d851458c73e320d2450cfc246b1167db",
      "tree": "17482eaf257fe07bf909a9726ae86f56b4037d48",
      "parents": [
        "f5a486a54d85ee59f4e9afa18b05c1946d749050",
        "4d954c4ff6ab7110df23f1f3ebfe296beb97f3de"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Sat Nov 05 09:32:35 2011 -0700"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Sat Nov 05 09:32:35 2011 -0700"
      },
      "message": "resolved conflicts for merge of 914972be to master\n\nChange-Id: I15adb9040eaa206c31bb5a08ed5ee5b32967ba0a\n"
    },
    {
      "commit": "f5a486a54d85ee59f4e9afa18b05c1946d749050",
      "tree": "3e2b736f57ec861e490f34d76119d2f024e30cc5",
      "parents": [
        "7040b12bb2f83209bbccd0149d365e2d106adc74",
        "047f160561fc7a87fc5794762d36225bfa5d2e89"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Sat Nov 05 08:52:20 2011 -0700"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Sat Nov 05 08:52:20 2011 -0700"
      },
      "message": "resolved conflicts for merge of 79178b8b to master\n\nChange-Id: Ia597549a6d159b86063eb3afec5ce7fe98434a65\n"
    },
    {
      "commit": "4d954c4ff6ab7110df23f1f3ebfe296beb97f3de",
      "tree": "08359befbbcfeb0a4e401724e87d277c86a7d7e9",
      "parents": [
        "047f160561fc7a87fc5794762d36225bfa5d2e89",
        "b6431802fc6cff501a4311de288ba469839fbf86"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Fri Nov 04 08:29:30 2011 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Nov 04 08:29:30 2011 -0700"
      },
      "message": "Merge \"Fix device management in lvm effect bundle wrapper.\" into ics-mr1"
    },
    {
      "commit": "5dc65e2ce92c7364da60bdff5f345daf145c2c0f",
      "tree": "90ed0dc7e58b08a673b19a7b72676ba4c9630b70",
      "parents": [
        "09ebde724b2cd224968d1fdba4f5afd81c998c6a"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Mon Oct 31 17:36:03 2011 -0700"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Wed Nov 02 09:14:13 2011 -0700"
      },
      "message": "Fix problem in lvm effect bundle wrapper.\n\nWhen an effect is disabled, the process function should either\ncopy or accumulate the content of the input buffer to the output buffer\ndepending on the behavior requested by the framework.\nCurrent implementation is copying the input buffer unconditionally.\n\nRelated to issue 5433942.\n\nChange-Id: Ic488ca97eadcc4c763de570d7e6c6f5b7a979415\n"
    },
    {
      "commit": "b6431802fc6cff501a4311de288ba469839fbf86",
      "tree": "596a877457ca1b1a6e1eb6e5c547a4cb0dcbc67d",
      "parents": [
        "841fa37451fb74f3d5978a15aab606bbb67e8c39"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Mon Oct 31 18:48:15 2011 -0700"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Tue Nov 01 09:12:19 2011 -0700"
      },
      "message": "Fix device management in lvm effect bundle wrapper.\n\nThe virtualizer and bass boost effects should be disabled when\nnot playing throught headsets or headphones.\n\nThere is a bug in current wrapper implementation that makes that those\neffects are not disabled if the effect is enabled by the user after\nthe headset has been removed (current logic only works if the device selection\noccurs while the effect is enabled).\n\nChange-Id: I7c66b15a0339d95fb9ed13c8320d66379725d3b6\n"
    },
    {
      "commit": "3856b090cd04ba5dd4a59a12430ed724d5995909",
      "tree": "a24e4c98fa6049fd8085826be838000f9a67e39b",
      "parents": [
        "1d2acaffde56ad79e6e96f228d7857863462397c"
      ],
      "author": {
        "name": "Steve Block",
        "email": "steveblock@google.com",
        "time": "Thu Oct 20 11:56:00 2011 +0100"
      },
      "committer": {
        "name": "Steve Block",
        "email": "steveblock@google.com",
        "time": "Wed Oct 26 09:57:54 2011 +0100"
      },
      "message": "Rename (IF_)LOGV(_IF) to (IF_)ALOGV(_IF)  DO NOT MERGE\n\nSee https://android-git.corp.google.com/g/#/c/143865\n\nBug: 5449033\nChange-Id: I0122812ed6ff6f5b59fe4a43ab8bff0577adde0a\n"
    },
    {
      "commit": "63b96e48deb0a4c5b594693922bd9101ffc3ef93",
      "tree": "f4e64e5c62746d337a1b1de063a57c50c9fa3b62",
      "parents": [
        "a5a0cea84cdf116f4de4f812c26be73e70a260e6",
        "5e0067b486c3862316aa1f293cf9690c0cf54bda"
      ],
      "author": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Tue Jul 12 12:15:07 2011 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Jul 12 12:15:07 2011 -0700"
      },
      "message": "Merge \"Remove the simulator target from all makefiles. Bug: 5010576\""
    },
    {
      "commit": "5e0067b486c3862316aa1f293cf9690c0cf54bda",
      "tree": "104ac8491b40d6e9d8353322792fb83ce76f4c82",
      "parents": [
        "52f556b976a9caceee183d8af2118ddbee02c70a"
      ],
      "author": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Mon Jul 11 22:12:16 2011 -0700"
      },
      "committer": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Mon Jul 11 22:12:16 2011 -0700"
      },
      "message": "Remove the simulator target from all makefiles.\nBug: 5010576\n\nChange-Id: I04d722f258951a3078fe07899f5bbe8aac02a8e8\n"
    },
    {
      "commit": "ba7b8f881a9b6b21803752326d2932a3bd42d7cf",
      "tree": "3e6ac78f1dea2eb4bde64c598c21a9b8e87a9db2",
      "parents": [
        "9b88b72ee2c3fd01fb46e77b7e6d80f3bd52e958"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Fri Jun 17 18:54:16 2011 -0700"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Mon Jul 11 12:00:53 2011 -0700"
      },
      "message": "Audio Effect API: process reverse stream function\n\nAdded function to audio effect interface for processing of\na reverse stream.\nThis is necessary for audio pre processes like echo cancellation.\n\nChange-Id: I6e12d79dbbed6376acdfc79304b8c0ab3f705eae\n"
    },
    {
      "commit": "6d8b694d999e9be7d5dcc336535832a80fb6f61f",
      "tree": "4fcdbf4a7f7fa24a16d7bf27816922031870102f",
      "parents": [
        "5895e970ae119210773a5184c019178e2516b132"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Fri Jun 24 07:01:31 2011 -0700"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Thu Jul 07 15:25:51 2011 -0700"
      },
      "message": "Moved and renamed effect API header files\n\nMoved specific effect header files to\nsystem/media/audio_effects/include/audio_effects\nand renamed to lower case (effect_xxx.h).\n\nChange-Id: Icfc2264bfd013cab0395d7e310ada636b9fe3621\n"
    },
    {
      "commit": "e1315cf0b63b4c14a77046519e6b01f6f60d74b0",
      "tree": "c10fd288fd0d0d85c619e7e635a249765202fabc",
      "parents": [
        "a3e73df3b402f1ebdbef7c8a8e3111d852e7bd35"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Tue May 17 19:16:02 2011 -0700"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Fri May 27 15:15:00 2011 -0700"
      },
      "message": "New effect library API\n\nMoved and renamed media/EffectApi.h to hardware/audio_effect.h\nModified the effect library API to expose a library info structure\ncontaining an interface functions table.\nAlso removed enums for audio channels, audio format and devices\nfrom effect API and use values from system/audio.h instead.\n\nModified effects factory to support new library interface format and\nload libraries and efffects listed in audio_effects.conf file.\nThe file audio_effects.conf is first loaded from /vendor/etc and\nthen from /system/etc/audio_effects.conf if not found.\n\nModified existing effect libraries to implement the new library interface.\n\nChange-Id: Ie52351e071b6d352fa2fbc06c3846686f8c45df9\n"
    },
    {
      "commit": "9691a73139bb36c5bf294ed13eedcb04d7f05320",
      "tree": "ba00ccb1b57782b8d542f373edc326417954822e",
      "parents": [
        "35812d2cc295e95e9383b64c07f5f8919d7a6885"
      ],
      "author": {
        "name": "Iliyan Malchev",
        "email": "malchev@google.com",
        "time": "Mon Mar 14 14:02:13 2011 -0700"
      },
      "committer": {
        "name": "Iliyan Malchev",
        "email": "malchev@google.com",
        "time": "Mon Mar 14 14:25:59 2011 -0700"
      },
      "message": "frameworks/base: remove LOCAL_PRELINK_MODULE\n\nChange-Id: I54dd62ebef47e7690afa5a858f3cad941b135481\nSigned-off-by: Iliyan Malchev \u003cmalchev@google.com\u003e\n"
    },
    {
      "commit": "d71a0e1ac517cf312b9a96fe5ba9de04f2b9ffd4",
      "tree": "110dc24af6e6f8120738656436f1e20bdd5e8f0d",
      "parents": [
        "c0bff9b96152179650dc9508799a38e35ef2a321"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Tue Mar 01 12:18:41 2011 -0800"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Tue Mar 01 12:35:18 2011 -0800"
      },
      "message": "Fix issue 3499926.\n\nMake sure that NumberEffectsEnabled is decremented at the same time as\nSamplesToExitCountBb reaches 0 in Effect_process(). Not doing so\ncauses NumberEffectsEnabled not being decremented if Effect_setEnabled()\nis called after SamplesToExitCountBb reaches 0 and before next Effect_process() is called.\n\nChange-Id: Id827a301f93a5a09ecd9995a0c7d731ef526711a\n"
    },
    {
      "commit": "df489b929115ea93a0cf689830fe44400ce3c00f",
      "tree": "e34b5e622da00e3f324d44a0ca3b17022d2fcb27",
      "parents": [
        "59556c4909a2b681791f2305bf48b5160edd0ba2"
      ],
      "author": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Tue Jan 25 10:53:40 2011 -0800"
      },
      "committer": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Tue Jan 25 10:55:35 2011 -0800"
      },
      "message": "Bug 3117154\n\nThe previous default audible behavior was actually NONE (dry), despite\nthe default value of MEDIUMROOM.  Corrected default value to match the\ndefault behavior.\n\nChange-Id: Iadb0d41629a383fd52f03e8a21ba4b74ea24401c\n"
    },
    {
      "commit": "dac69110ed1073bf0a9827a3f78698896dd05d97",
      "tree": "db990d1cf1867854ffbf39585c0ce19e436c56b9",
      "parents": [
        "036fad5034d05beecae19da6da46e1ce7be78e64"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Tue Sep 28 14:09:57 2010 -0700"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Tue Sep 28 14:23:39 2010 -0700"
      },
      "message": "Fix several audio effects problems.\n\nFixed the following issues in LVM effect bundle wrapper:\n- memory leaks in EffectCreate() in case effect creation fails at various stages\n- Added saturation when accumulating to output buffer\n- Fixed problems with enabled effects count when an effect is released while enabled\n- Do not allocate temporary buffer for accumulation each time process() is called\n\nFixed the following issues in effects framework (AudioFlinger)\n- Release effect synchronously in the library when deleted from effect chain\n- Do not call the effect process function if no tracks are present in the same\naudio session\n\nChange-Id: Ifbd80a163415cfb3c0a337c12082853ea45d9c91\n"
    },
    {
      "commit": "29cc743e57f2a1701a0a0d3a0e5406ed0f2e8a89",
      "tree": "2107d9d223ed9e7547097b814c7331b3bb986825",
      "parents": [
        "e0aed6ddcb4e3c301b80aa26706b6052dab42c41"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Wed Sep 15 18:29:49 2010 -0700"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Thu Sep 16 09:02:16 2010 -0700"
      },
      "message": "Fix problem in lvm effect bundle wrapper\n\nWhen an effect was deleted while enabled, the count of enabled effects\nin the bundle was not decremented. Resulted a state where if another effect\nwas still enabled, its process function was called only every other time.\n\nChange-Id: I59a0c5b7f50f416a9ecadae297b42912e56ddd51\n"
    },
    {
      "commit": "e0aed6ddcb4e3c301b80aa26706b6052dab42c41",
      "tree": "4a85e38eefe3ad4ac70ca1b182660aefacc07658",
      "parents": [
        "a1754133ee6640346b5fd6daa4666f5d2285379a"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Fri Sep 10 17:44:44 2010 -0700"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Mon Sep 13 09:08:28 2010 -0700"
      },
      "message": "Fix volume problems with insert revert\n\n- Use a constant input level to the reverb engine and implement volume control in the\ninsert reverb. This avoids the volume spikes when an effect that was inserted after\nthe reverb is disabled or removed.\n- Fix clicks (one silent buffer) at the end of the reverb disable period.\n- Modified volume management in audioflinger so that the volume ramp is also done by\nthe insert effect if present when the track is paused (avoids clicks).\n- Increased room level for all presets.\n\nAlso fixed problems with output stage session (-1):\n- effect bundle wrapper was not designed to support session -1\n- the permission check in audioflinger for using session -1 failed due to a wrong usage of\ngetCallingPid()\n\nChange-Id: Id1ff51327263364bf71d3f2668fa5cde4311d84f\n"
    },
    {
      "commit": "5185b0138aaeffeecc93b958cb9cd9821f260faf",
      "tree": "542a93d7048bb9ede08477926b310f3c23f6fe37",
      "parents": [
        "fbf7162465ee5b9e928d5676d439a475c93b0725"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Thu Sep 09 12:01:11 2010 -0700"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Thu Sep 09 12:02:58 2010 -0700"
      },
      "message": "LVM release 1.09 delivery\n\n- Reverb:\n\t- 1 channel mixed has gain zero\n\t- core componenet now only outputs STEREO samples\n\t- wrapper now handles only STEREO from the Reverb Core\n- Bass Boost:\n\t- increase scratch memory\n\nChange-Id: I00ae31051cc40a7006fc993420facfeb4d30dc52\n"
    },
    {
      "commit": "54c38fdcff502ab3502c55dd314a954dd60c0183",
      "tree": "262ae2c34f5eb7e695994ccc3d79c8da097d12d5",
      "parents": [
        "f9c0ae8474dc7180a561ed1e7a8ba3d0d31f6d38"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Wed Sep 08 16:06:18 2010 -0700"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Wed Sep 08 16:06:18 2010 -0700"
      },
      "message": "Modify type of some environmental reverb parameters\n\nChanged type of decay time, reverb delay and reflections delay parameters\nfrom signed to unsigned int to match OpenSL ES interface definition.\n\nAlso fixed some type casts in lvm reverb wrapper.\n\nChange-Id: I5ca5e76a87c2590f01f031f3168355586ef22556\n"
    },
    {
      "commit": "2d3bf535004f7310fe04a4b5f46b6747cdb3c93f",
      "tree": "461dec21780c6bacaf61368786580b9ff03dc87b",
      "parents": [
        "8ae49d87b98d57d6758b0c51b95e28a6581a79f1"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Thu Sep 02 17:18:20 2010 -0700"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Fri Sep 03 15:22:18 2010 -0700"
      },
      "message": "LVM release 1.08 delivery.\n\n- Changed bundle SamplesToExit to 0.1 secs\n- Added SamplesToExit to Revreb\n- Removed mixer from Core reverb\n\nChange-Id: I675ec22889f20ef35a0ac427600c2654111c397e\n"
    },
    {
      "commit": "8f45bd725549436eeacd12ee69349e2332ed8da5",
      "tree": "d1f48f9af5991d462fb22fb37a5dd0a3d7f2251a",
      "parents": [
        "06124758ff402512f3c7a5fb2b35d8d09a0d6c2e"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Tue Aug 31 13:50:07 2010 -0700"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Tue Aug 31 15:26:23 2010 -0700"
      },
      "message": "Audio Effects: fix problems in volume control.\n\n- Fixed click when re-enabling effect during the turn off phase:\nmake sure the effect states where effect is processed are the same\nwhere volume control is delegated to effect.\n- Fixed click when effect is deleted while still active: do not apply\nvolume ramp if an effect having volume control was just removed from the\neffect chain.\n\nAlso fixed a crash when PCM dump is enabled in effect bundle wrapper.\n\nChange-Id: Ib562f5cf75c69af75df0e862536262e2514493e4\n"
    },
    {
      "commit": "d918324d44aa48b3b064ea9b87d0c520c38f15a9",
      "tree": "83632ad570c190d498d18a8e15f8301ae5171ace",
      "parents": [
        "14cc6fcf8803ae7289a1e342532c26fe257b3d3f"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Fri Aug 27 10:52:56 2010 -0700"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Fri Aug 27 11:54:39 2010 -0700"
      },
      "message": "LVM release 1.07 delivery.\n\n- Virtualizer now uses the correct control parameter, instead of reverberation\n- Volume smoothing for first frame has been added\n- Equalizer_setParameter now returns correct error code\n- Correcting Non-Linear compressor gain step noise during transitions and effect level changes\n- Removed SVN header blocks\n- Memory and MIPS values have been added to the API\n- Reverb uses a more efficient malloc for input PCM\n- Reverb DecayHFRatio now ranges up to 2000\n- Logging has been removed for most volume functions\n\nChange-Id: Ib59e7e331263c3811559231b4ae90c82e34a8421\n"
    },
    {
      "commit": "97344f1d8e8e95fd07d5deee2ae2492a7e4c24b0",
      "tree": "294d749c237f399295fd80ab5e03393c5b9cb160",
      "parents": [
        "afb68fbf65fad41fdd8da333a61278588e735846"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Tue Aug 24 14:21:57 2010 -0700"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Tue Aug 24 17:32:48 2010 -0700"
      },
      "message": "Added preset reverb.\n\nModified lvm reverb wrapper code to expose a preset reverb interface.\nAlso removed debug log from bundle and reverb wrapper.\n\nChange-Id: If9b95d91e25a6ff834decdfdda34b17df9b46967\n"
    },
    {
      "commit": "c59c6fd7f859b4010d788db89b8d4d76bbb70e57",
      "tree": "cbdf7a007e63d834652abf8dbdb32a371a59d73c",
      "parents": [
        "3eb2ff224a12b5670f4f62f07a47ffb2fde01548"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Wed Aug 04 06:33:52 2010 -0700"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Fri Aug 20 14:17:41 2010 -0700"
      },
      "message": "LVM release 1.05 delivery\n\n- Click have been removed from the HP filter activation in the BassBosst Effect.\n- SessionId is now stored as a SessionNo\n- Effects now stop being called after a delay\n- Unix EOL fixed for .java and .xml\n- Updated lines limited to 100 characters.\n- Removed the remaining warnings from the wrapper code\n- Added reverb\n\nChange-Id: I03a2b3b5ee2286958f4901acc8d9b0daf9e2d7c6\n"
    },
    {
      "commit": "7fa8a0ec14781a50695cf8c9dd2a85a5e8a3c3f0",
      "tree": "e25fd604bb57f98f2de0628c91478eaeafe08cb3",
      "parents": [
        "c059860c73678a202bfa33062723e8f82fb779d9"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Wed Aug 18 14:31:25 2010 -0700"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Wed Aug 18 14:31:25 2010 -0700"
      },
      "message": "Audio Effects: fixed \"strength supported\" parameter size.\n\nThe \"strength supported\" parameter for bass boost and virtualizer effect was incorrectly using a\nshort value whereas it should be an int. This is to comply to the definition of boolean type in OpenSL ES\nthat is uint32.\n\nChange-Id: I74ccb61dcc70fc9d390524a1ca5bbbd8b13ab1af\n"
    },
    {
      "commit": "3be9523784cc4038f601e510faee595117cdacb3",
      "tree": "bab6f83881aab994b68acc959ed83485d35d1f2b",
      "parents": [
        "5caff27f4683d5e444f327a5beec15d9b8c7f252"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Fri Jul 30 09:12:51 2010 -0700"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Fri Jul 30 09:12:51 2010 -0700"
      },
      "message": "Audio effects: aligned Equalizer API argument types on OpenSL ES SLEqualizerItf.\n\nModified types of some arguments and returned values of the Equalizer class from int to short\nto match those defined by OpenSL ES SLEqualizerItf interface.\n\nAlso fixed a problem with set properties in equalizer engine implementation.\n\nChange-Id: I75894bad0cb67b01c18ca5e22f9687e75ee491b8\n"
    },
    {
      "commit": "25f4395b932fa9859a6e91ba77c5d20d009da64a",
      "tree": "01098a211d6c782708b840c28ebd396a6eb72a7b",
      "parents": [
        "23e1de74359f4bb1763aef0adfebe073122b032c"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Wed Jul 28 05:40:18 2010 -0700"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Wed Jul 28 05:49:21 2010 -0700"
      },
      "message": "Audio effects: modified command() parameter types.\n\nThe type of the cmd, cmdSize and *pReplySize parameters of the effect control interface command()\nfunction have been modified from int to uint32_t. This is more consistent with their role.\n\nChange-Id: I84d289fc262d6753747910f06f485597dfee6591\n"
    },
    {
      "commit": "23e1de74359f4bb1763aef0adfebe073122b032c",
      "tree": "f7c8a84104ae81d565a867208d606fd3887d47fe",
      "parents": [
        "8b4179f44917ec4845ade406a49a713cd568fe8a"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Fri Jul 23 00:19:11 2010 -0700"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Tue Jul 27 00:41:31 2010 -0700"
      },
      "message": "Audio Effects: added methods to effects java classes to store and load current effect settings in\na single call.\n\nAddional changes:\n- Fixed simulator build\n- Use effect interface UUIDs from OpenSL ES includes when available\n- Added cleanspec rules to remove now obsolete test effect libraries\n- Fixed bug in AudioEffect JNI setParameter function.\n\nChange-Id: Ic25ddb135e2cec5a68c181d727321f5ac7a1ab6b\n"
    },
    {
      "commit": "8b4179f44917ec4845ade406a49a713cd568fe8a",
      "tree": "13662a6378d09363adb73330863a260e77fbd12f",
      "parents": [
        "09d5ca3766d4bab91cdaad7206716a5747ebad77",
        "010ae0dd9eab40a49a840388230d8bb2f97c530e"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Mon Jul 26 10:09:54 2010 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Jul 26 10:09:54 2010 -0700"
      },
      "message": "Merge \"Fixed bug in vlm effect bunde wrapper effect init function.\" into gingerbread"
    },
    {
      "commit": "09d5ca3766d4bab91cdaad7206716a5747ebad77",
      "tree": "e4fe4f3e6fb5b986b42c3625469f54c8937b3eca",
      "parents": [
        "163fbcf84010b98e0374110454d85b804bc8d13b"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Fri Jul 23 09:01:44 2010 -0700"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Mon Jul 26 01:57:36 2010 -0700"
      },
      "message": "LVM release 1.04.\n\nRemaining warnings in the code have been removed\nCore components support seamless insertion in the audio stream at playtime (Enabling / Disabling the effect).\n\nChange-Id: Icae7085305fad663faeb5a94cb673b41cec5a9f1\n"
    },
    {
      "commit": "010ae0dd9eab40a49a840388230d8bb2f97c530e",
      "tree": "b544e3dff585bc48925f4ff667553de49dd7f0e6",
      "parents": [
        "163fbcf84010b98e0374110454d85b804bc8d13b"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Mon Jul 26 01:03:37 2010 -0700"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Mon Jul 26 01:07:38 2010 -0700"
      },
      "message": "Fixed bug in vlm effect bunde wrapper effect init function.\n\nThe status in the command reply field was not initialized by Effect_command() for\nEFFECT_CMD_INIT causing unpredictable failures when initializing an effect.\n\nChange-Id: I7dccb094c9244fad4ed9aea3062a395db295e082\n"
    },
    {
      "commit": "163fbcf84010b98e0374110454d85b804bc8d13b",
      "tree": "be90f2d23071ae29c91a55d659e815fdc0ca332f",
      "parents": [
        "542db5d438988360d491a5add1040a2df9aa90c9"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Fri Jul 23 00:54:58 2010 -0700"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Fri Jul 23 00:54:58 2010 -0700"
      },
      "message": "Audio effects: lvm bundle wrapper update after first integration tests.\n\nChange-Id: I20cb55282833bd6e3a160e0dae1cc1fcb6b1ca30\n"
    },
    {
      "commit": "de070137f11d346fba77605bd76a44c040a618fc",
      "tree": "ba741240b391a66899514061ccda38254e539013",
      "parents": [
        "f997cabca292d70d078ae828e21c28e6df62995f"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Tue Jul 13 04:45:46 2010 -0700"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Tue Jul 20 10:31:57 2010 -0700"
      },
      "message": "Audio policy manager changes for audio effects\n\nAdded methods for audio effects management by audio policy manager.\n- control of total CPU load and memory used by effect engines\n- selection of output stream for global effects\n- added audio session id in parameter list for startOutput() and stopOutput().\nthis is not used in default audio policy manager implementation.\n\nModifications of audio effect framework in AudioFlinger to allow moving and reconfiguring\neffect engines from one output mixer thread to another when audio tracks in the same session\nare moved or when requested by audio policy manager.\nAlso fixed mutex deadlock problem with effect chains locks.\n\nChange-Id: Ida43484b06e9b890d6b9e53c13958d042720ebdb\n"
    },
    {
      "commit": "2c8e5cab3faa6d360e222b7a6c40a80083d021ac",
      "tree": "fd19b8baa829edb78116b089d1122ea4ef0921e1",
      "parents": [
        "ada2ac8e09b6d3f2b3c3155a852ba0fffae1b592"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Fri Jul 09 12:28:50 2010 -0700"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Sat Jul 17 06:33:00 2010 -0700"
      },
      "message": "First submission of audio effect library from NXP software.\n\nThis CL contains the first open sourceable version of the audio effect library from NXP software.\nThe effects implemented are:\n- Bass boost\n- Virtualizer (stereo widening)\n- Equalizer\n- Spectrum analyzer\n\nSource file for the effect engines are located under libeffects/lvm/lib\nThe wrapper implementing the interface with the audio effect framework in under libeffects/lvm/wrapper\n\nThe code of other effect libraries has also been reorganized fo clarity:\n- the effect factory is now under libeffects/factory\n- the test equalizer and reverb effects are under libeffect/testlibs\n- the visualizer is under libeffects/virtualizer\n\nChange-Id: I8d91e2181f81b89f8fc0c1e1e6bf552c5809b2eb\n"
    }
  ]
}
