a4fe9a13c432afc5d1e94a4617b75e8f962540e9 |
17-Oct-2012 |
Marco Nelissen <marcone@google.com> |
Fix valgrind issues We were reading some uninitialized memory when creating bass boost and EQ effects, and using memcpy() with identical source and destination. Change-Id: I15ea1b2c52ae05cbf54aef04351e89805e0ebf8e
ffectBundle.cpp
|
c5cd686a83c6ea65a68d98023d5527fe4373d4e4 |
17-Sep-2012 |
Eric Laurent <elaurent@google.com> |
Fix THD with max user EQ preset volume again There was a problem with previous fix in 1b6c677c where the THD was good for max volume but bad for intermediate high volume values. This fix does not limit the band gains but apply a correction to the effect bundle volume to take into account not only the maximum band gain but also the average band gains weighted by the proximity of each band to the max gain band. Change-Id: Ibedd8da7fce1e163117f29b3da332da0e4fe8889
ffectBundle.cpp
ffectBundle.h
|
1b6c677c4bad5c1aea4f01277cf5aa234ad4cab4 |
11-Sep-2012 |
Eric Laurent <elaurent@google.com> |
Limit maximum equalizer gain. Limit maximum gain in all EQ bands according to current volume so that total gain (current volume + band gain) does not exceed a certain limit. The gain difference between bands is preserved. Change-Id: Ice5a9705a0b3353e8778b4c539a29ca9cdf60390
ffectBundle.cpp
ffectBundle.h
|
cba53fbdaa723322f7157a4890feab776beae13e |
30-Aug-2012 |
Eric Laurent <elaurent@google.com> |
audio effects: fix bug in sample rate control. Fix a bug in LVM bundle wrapper preventing audio framework sample rate from being sent to the effect bundle instance. Change-Id: I912027f866d3beac91b977bba869ff96a92d2a62
ffectBundle.cpp
|
e44615ff6022239850a3ea459ad6e07b44c37544 |
24-Aug-2012 |
Eric Laurent <elaurent@google.com> |
Reduce THD when equalizer is ON. Increase headroom in LVM bundle to reduce THD when equalizer is ON with high band gains. Also add a workaround for a bug in headroom parameter control. Change-Id: I1d67c9ae475f6cf852c2e0e49bacfc82a5e484fd
ffectBundle.cpp
|
a189a6883ee55cf62da1d7bf5bf5a8ab501938a4 |
20-Feb-2012 |
Glenn Kasten <gkasten@google.com> |
Use struct assignment instead of explicit memcpy for POD structs effect_descriptor_t and effect_config_t Change-Id: Ib2fc47f85fb65ed91b0abb1f87217c49b5eb571d
ffectBundle.cpp
|
17a736c3e1d062d7fc916329eb32aef8935614af |
14-Feb-2012 |
Glenn Kasten <gkasten@google.com> |
Update comments Change-Id: I327663a020670d0a72ff57bd0b682e2ce0528650
ffectBundle.cpp
|
b4d307481960b6b348fae4b4e8edefd003c3d36c |
13-Mar-2012 |
Glenn Kasten <gkasten@google.com> |
Use correct syntax for #include <> "" Change-Id: I943137108668ae66f8eba18dafe069a7951bcd8f
ffectBundle.cpp
|
5e92a7861196ddae14638d4b7a63fc4892b7ef59 |
30-Jan-2012 |
Glenn Kasten <gkasten@google.com> |
Effect UUID inputs passed by pointer are const Change-Id: I1f5c338bcb7368e3dd8cd5f804b2e6d9fbe087f8
ffectBundle.cpp
|
3d5188bd6abe55898f10a0edf3c05aff8aa2ef67 |
17-Dec-2011 |
Eric Laurent <elaurent@google.com> |
audio effects: rename configure command Renamed audio effect library interface command for audio format configuration from EFFECT_CMD_CONFIGURE to EFFECT_CMD_SET_CONFIG. This makes the naming more consistent with other exixsting commands and allow adding a new command to get the configuration (EFFECT_CMD_GET_CONFIG). Same change for reverse channel configuration renamed from EFFECT_CMD_CONFIGURE_REVERSE to EFFECT_CMD_SET_CONFIG_REVERSE. Implemented EFFECT_CMD_GET_CONFIG in exisitng effect libraries. Change-Id: Ia7b1c620f13797fe5aceb3b0b4acbacce09fb067
ffectBundle.cpp
|
45b92707d851458c73e320d2450cfc246b1167db |
05-Nov-2011 |
Eric Laurent <elaurent@google.com> |
resolved conflicts for merge of 914972be to master Change-Id: I15adb9040eaa206c31bb5a08ed5ee5b32967ba0a
|
f5a486a54d85ee59f4e9afa18b05c1946d749050 |
05-Nov-2011 |
Eric Laurent <elaurent@google.com> |
resolved conflicts for merge of 79178b8b to master Change-Id: Ia597549a6d159b86063eb3afec5ce7fe98434a65
|
4d954c4ff6ab7110df23f1f3ebfe296beb97f3de |
04-Nov-2011 |
Eric Laurent <elaurent@google.com> |
Merge "Fix device management in lvm effect bundle wrapper." into ics-mr1
|
5dc65e2ce92c7364da60bdff5f345daf145c2c0f |
01-Nov-2011 |
Eric Laurent <elaurent@google.com> |
Fix problem in lvm effect bundle wrapper. When an effect is disabled, the process function should either copy or accumulate the content of the input buffer to the output buffer depending on the behavior requested by the framework. Current implementation is copying the input buffer unconditionally. Related to issue 5433942. Change-Id: Ic488ca97eadcc4c763de570d7e6c6f5b7a979415
ffectBundle.cpp
|
b6431802fc6cff501a4311de288ba469839fbf86 |
01-Nov-2011 |
Eric Laurent <elaurent@google.com> |
Fix device management in lvm effect bundle wrapper. The virtualizer and bass boost effects should be disabled when not playing throught headsets or headphones. There is a bug in current wrapper implementation that makes that those effects are not disabled if the effect is enabled by the user after the headset has been removed (current logic only works if the device selection occurs while the effect is enabled). Change-Id: I7c66b15a0339d95fb9ed13c8320d66379725d3b6
ffectBundle.cpp
|
3856b090cd04ba5dd4a59a12430ed724d5995909 |
20-Oct-2011 |
Steve Block <steveblock@google.com> |
Rename (IF_)LOGV(_IF) to (IF_)ALOGV(_IF) DO NOT MERGE See https://android-git.corp.google.com/g/#/c/143865 Bug: 5449033 Change-Id: I0122812ed6ff6f5b59fe4a43ab8bff0577adde0a
ffectBundle.cpp
|
ba7b8f881a9b6b21803752326d2932a3bd42d7cf |
18-Jun-2011 |
Eric Laurent <elaurent@google.com> |
Audio Effect API: process reverse stream function Added function to audio effect interface for processing of a reverse stream. This is necessary for audio pre processes like echo cancellation. Change-Id: I6e12d79dbbed6376acdfc79304b8c0ab3f705eae
ffectBundle.cpp
|
6d8b694d999e9be7d5dcc336535832a80fb6f61f |
24-Jun-2011 |
Eric Laurent <elaurent@google.com> |
Moved and renamed effect API header files Moved specific effect header files to system/media/audio_effects/include/audio_effects and renamed to lower case (effect_xxx.h). Change-Id: Icfc2264bfd013cab0395d7e310ada636b9fe3621
ffectBundle.h
|
e1315cf0b63b4c14a77046519e6b01f6f60d74b0 |
18-May-2011 |
Eric Laurent <elaurent@google.com> |
New effect library API Moved and renamed media/EffectApi.h to hardware/audio_effect.h Modified the effect library API to expose a library info structure containing an interface functions table. Also removed enums for audio channels, audio format and devices from effect API and use values from system/audio.h instead. Modified effects factory to support new library interface format and load libraries and efffects listed in audio_effects.conf file. The file audio_effects.conf is first loaded from /vendor/etc and then from /system/etc/audio_effects.conf if not found. Modified existing effect libraries to implement the new library interface. Change-Id: Ie52351e071b6d352fa2fbc06c3846686f8c45df9
ffectBundle.cpp
|
d71a0e1ac517cf312b9a96fe5ba9de04f2b9ffd4 |
01-Mar-2011 |
Eric Laurent <elaurent@google.com> |
Fix issue 3499926. Make sure that NumberEffectsEnabled is decremented at the same time as SamplesToExitCountBb reaches 0 in Effect_process(). Not doing so causes NumberEffectsEnabled not being decremented if Effect_setEnabled() is called after SamplesToExitCountBb reaches 0 and before next Effect_process() is called. Change-Id: Id827a301f93a5a09ecd9995a0c7d731ef526711a
ffectBundle.cpp
|
dac69110ed1073bf0a9827a3f78698896dd05d97 |
28-Sep-2010 |
Eric Laurent <elaurent@google.com> |
Fix several audio effects problems. Fixed the following issues in LVM effect bundle wrapper: - memory leaks in EffectCreate() in case effect creation fails at various stages - Added saturation when accumulating to output buffer - Fixed problems with enabled effects count when an effect is released while enabled - Do not allocate temporary buffer for accumulation each time process() is called Fixed the following issues in effects framework (AudioFlinger) - Release effect synchronously in the library when deleted from effect chain - Do not call the effect process function if no tracks are present in the same audio session Change-Id: Ifbd80a163415cfb3c0a337c12082853ea45d9c91
ffectBundle.cpp
ffectBundle.h
|
29cc743e57f2a1701a0a0d3a0e5406ed0f2e8a89 |
16-Sep-2010 |
Eric Laurent <elaurent@google.com> |
Fix problem in lvm effect bundle wrapper When an effect was deleted while enabled, the count of enabled effects in the bundle was not decremented. Resulted a state where if another effect was still enabled, its process function was called only every other time. Change-Id: I59a0c5b7f50f416a9ecadae297b42912e56ddd51
ffectBundle.cpp
|
e0aed6ddcb4e3c301b80aa26706b6052dab42c41 |
11-Sep-2010 |
Eric Laurent <elaurent@google.com> |
Fix volume problems with insert revert - Use a constant input level to the reverb engine and implement volume control in the insert reverb. This avoids the volume spikes when an effect that was inserted after the reverb is disabled or removed. - Fix clicks (one silent buffer) at the end of the reverb disable period. - Modified volume management in audioflinger so that the volume ramp is also done by the insert effect if present when the track is paused (avoids clicks). - Increased room level for all presets. Also fixed problems with output stage session (-1): - effect bundle wrapper was not designed to support session -1 - the permission check in audioflinger for using session -1 failed due to a wrong usage of getCallingPid() Change-Id: Id1ff51327263364bf71d3f2668fa5cde4311d84f
ffectBundle.cpp
ffectBundle.h
|
2d3bf535004f7310fe04a4b5f46b6747cdb3c93f |
03-Sep-2010 |
Eric Laurent <elaurent@google.com> |
LVM release 1.08 delivery. - Changed bundle SamplesToExit to 0.1 secs - Added SamplesToExit to Revreb - Removed mixer from Core reverb Change-Id: I675ec22889f20ef35a0ac427600c2654111c397e
ffectBundle.cpp
|
8f45bd725549436eeacd12ee69349e2332ed8da5 |
31-Aug-2010 |
Eric Laurent <elaurent@google.com> |
Audio Effects: fix problems in volume control. - Fixed click when re-enabling effect during the turn off phase: make sure the effect states where effect is processed are the same where volume control is delegated to effect. - Fixed click when effect is deleted while still active: do not apply volume ramp if an effect having volume control was just removed from the effect chain. Also fixed a crash when PCM dump is enabled in effect bundle wrapper. Change-Id: Ib562f5cf75c69af75df0e862536262e2514493e4
ffectBundle.cpp
|
d918324d44aa48b3b064ea9b87d0c520c38f15a9 |
27-Aug-2010 |
Eric Laurent <elaurent@google.com> |
LVM release 1.07 delivery. - Virtualizer now uses the correct control parameter, instead of reverberation - Volume smoothing for first frame has been added - Equalizer_setParameter now returns correct error code - Correcting Non-Linear compressor gain step noise during transitions and effect level changes - Removed SVN header blocks - Memory and MIPS values have been added to the API - Reverb uses a more efficient malloc for input PCM - Reverb DecayHFRatio now ranges up to 2000 - Logging has been removed for most volume functions Change-Id: Ib59e7e331263c3811559231b4ae90c82e34a8421
ffectBundle.cpp
ffectBundle.h
|
97344f1d8e8e95fd07d5deee2ae2492a7e4c24b0 |
24-Aug-2010 |
Eric Laurent <elaurent@google.com> |
Added preset reverb. Modified lvm reverb wrapper code to expose a preset reverb interface. Also removed debug log from bundle and reverb wrapper. Change-Id: If9b95d91e25a6ff834decdfdda34b17df9b46967
ffectBundle.cpp
|
c59c6fd7f859b4010d788db89b8d4d76bbb70e57 |
04-Aug-2010 |
Eric Laurent <elaurent@google.com> |
LVM release 1.05 delivery - Click have been removed from the HP filter activation in the BassBosst Effect. - SessionId is now stored as a SessionNo - Effects now stop being called after a delay - Unix EOL fixed for .java and .xml - Updated lines limited to 100 characters. - Removed the remaining warnings from the wrapper code - Added reverb Change-Id: I03a2b3b5ee2286958f4901acc8d9b0daf9e2d7c6
ffectBundle.cpp
ffectBundle.h
|
7fa8a0ec14781a50695cf8c9dd2a85a5e8a3c3f0 |
18-Aug-2010 |
Eric Laurent <elaurent@google.com> |
Audio Effects: fixed "strength supported" parameter size. The "strength supported" parameter for bass boost and virtualizer effect was incorrectly using a short value whereas it should be an int. This is to comply to the definition of boolean type in OpenSL ES that is uint32. Change-Id: I74ccb61dcc70fc9d390524a1ca5bbbd8b13ab1af
ffectBundle.cpp
|
3be9523784cc4038f601e510faee595117cdacb3 |
30-Jul-2010 |
Eric Laurent <elaurent@google.com> |
Audio effects: aligned Equalizer API argument types on OpenSL ES SLEqualizerItf. Modified types of some arguments and returned values of the Equalizer class from int to short to match those defined by OpenSL ES SLEqualizerItf interface. Also fixed a problem with set properties in equalizer engine implementation. Change-Id: I75894bad0cb67b01c18ca5e22f9687e75ee491b8
ffectBundle.cpp
|
25f4395b932fa9859a6e91ba77c5d20d009da64a |
28-Jul-2010 |
Eric Laurent <elaurent@google.com> |
Audio effects: modified command() parameter types. The type of the cmd, cmdSize and *pReplySize parameters of the effect control interface command() function have been modified from int to uint32_t. This is more consistent with their role. Change-Id: I84d289fc262d6753747910f06f485597dfee6591
ffectBundle.cpp
|
23e1de74359f4bb1763aef0adfebe073122b032c |
23-Jul-2010 |
Eric Laurent <elaurent@google.com> |
Audio Effects: added methods to effects java classes to store and load current effect settings in a single call. Addional changes: - Fixed simulator build - Use effect interface UUIDs from OpenSL ES includes when available - Added cleanspec rules to remove now obsolete test effect libraries - Fixed bug in AudioEffect JNI setParameter function. Change-Id: Ic25ddb135e2cec5a68c181d727321f5ac7a1ab6b
ffectBundle.cpp
ffectBundle.h
|
010ae0dd9eab40a49a840388230d8bb2f97c530e |
26-Jul-2010 |
Eric Laurent <elaurent@google.com> |
Fixed bug in vlm effect bunde wrapper effect init function. The status in the command reply field was not initialized by Effect_command() for EFFECT_CMD_INIT causing unpredictable failures when initializing an effect. Change-Id: I7dccb094c9244fad4ed9aea3062a395db295e082
ffectBundle.cpp
|
163fbcf84010b98e0374110454d85b804bc8d13b |
23-Jul-2010 |
Eric Laurent <elaurent@google.com> |
Audio effects: lvm bundle wrapper update after first integration tests. Change-Id: I20cb55282833bd6e3a160e0dae1cc1fcb6b1ca30
ffectBundle.cpp
ffectBundle.h
|
de070137f11d346fba77605bd76a44c040a618fc |
13-Jul-2010 |
Eric Laurent <elaurent@google.com> |
Audio policy manager changes for audio effects Added methods for audio effects management by audio policy manager. - control of total CPU load and memory used by effect engines - selection of output stream for global effects - added audio session id in parameter list for startOutput() and stopOutput(). this is not used in default audio policy manager implementation. Modifications of audio effect framework in AudioFlinger to allow moving and reconfiguring effect engines from one output mixer thread to another when audio tracks in the same session are moved or when requested by audio policy manager. Also fixed mutex deadlock problem with effect chains locks. Change-Id: Ida43484b06e9b890d6b9e53c13958d042720ebdb
ffectBundle.cpp
|
2c8e5cab3faa6d360e222b7a6c40a80083d021ac |
09-Jul-2010 |
Eric Laurent <elaurent@google.com> |
First submission of audio effect library from NXP software. This CL contains the first open sourceable version of the audio effect library from NXP software. The effects implemented are: - Bass boost - Virtualizer (stereo widening) - Equalizer - Spectrum analyzer Source file for the effect engines are located under libeffects/lvm/lib The wrapper implementing the interface with the audio effect framework in under libeffects/lvm/wrapper The code of other effect libraries has also been reorganized fo clarity: - the effect factory is now under libeffects/factory - the test equalizer and reverb effects are under libeffect/testlibs - the visualizer is under libeffects/virtualizer Change-Id: I8d91e2181f81b89f8fc0c1e1e6bf552c5809b2eb
ffectBundle.cpp
ffectBundle.h
|