Adding AudioEffects in GingerBread via OpenSLES

555 views
Skip to first unread message

SM

unread,
Feb 25, 2011, 2:10:02 AM2/25/11
to android-porting
I have an IP which is an audio enhancement codec. OpenSL specifies
interfaces for certain effects such as bass boost, preset
reverberation, stereo widening etc. Through which interface of
Android(OpenSL) do i need to plugin my IP.

Glenn Kasten

unread,
Feb 25, 2011, 10:54:18 AM2/25/11
to android-porting
The primary documentation for integrating audio effects is frameworks/
base/include/media/EffectApi.h. Also study the default effects code in
frameworks/base/media/libeffects, and AudioFlinger. For Java APIs,
frameworks/base/media/java/android/media/audiofx and frameworks/base/
media/jni/audioeffect may also be helpful. For the native audio APIs
based on OpenSL ES, see system/media.

SM

unread,
Mar 1, 2011, 1:40:06 AM3/1/11
to android-porting
My aim is to plugin the audio Effect Lib via the OpenSL ES. I went
through the code
at frameworks/base/media/libeffects. It contains implementations of
Audio Effects by vendors.
For eg, There is an AudioEffect Library, Dynamic Bass Boost by NXP
Software Ltd.
Does this make use of OpenSL ES?

Glenn Kasten

unread,
Mar 1, 2011, 11:35:06 AM3/1/11
to android-porting
The OpenSL ES and Java layers provides only the API, the top
interfaces that are exposed to the application developer. They both
sit on top of AudioTrack, AudioFlinger, and the audio effects
implementation.

If you want to replace an existing audio effect, you can mostly ignore
the OpenSL ES layer, as long as you're using the right GUID for the
effect.

The OpenSL ES API does not currently support custom effects.

Custom effects are exposed by the Java API -- see
http://developer.android.com/reference/android/media/audiofx/AudioEffect.html#queryEffects%28%29
Message has been deleted
Message has been deleted

SM

unread,
Mar 2, 2011, 2:03:00 AM3/2/11
to android-porting
Thank you for the inputs

I still have a few more queries
(a) So is it that we do not need to go via OpenSL for a adding a
custom effect. ?
(b) In the link given below
http://www.khronos.org/message_boards/viewtopic.php?f=33&t=3612

I understand that we can add custom effects by introducing a new
interface in OpenSL . In the OpenSl framework implemented
in Android is this feature not supported?
(c)If supported , what would be the steps involved.

On Mar 1, 9:35 pm, Glenn Kasten <gkas...@android.com> wrote:
> The OpenSL ES and Java layers provides only the API, the top
> interfaces that are exposed to the application developer. They both
> sit on top of AudioTrack, AudioFlinger, and the audio effects
> implementation.
>
> If you want to replace an existing audio effect, you can mostly ignore
> the OpenSL ES layer, as long as you're using the right GUID for the
> effect.
>
> The OpenSL ES API does not currently support custom effects.
>
> Custom effects are exposed by the Java API -- seehttp://developer.android.com/reference/android/media/audiofx/AudioEff...

SM

unread,
Mar 2, 2011, 2:05:32 AM3/2/11
to android-porting
Thank you for the inputs

I still have a few more queries
(a) So is it that we do not need to go via OpenSL for a adding a
custom effect. ?
(b) In the link given below
http://www.khronos.org/message_boards/viewtopic.php?f=33&t=3612

I understand that we can add custom effects by introducing a new
interface in OpenSL . In the OpenSl framework implemented
in Android is this feature not supported?
(c)If supported , what would be the steps involved.

On Mar 1, 9:35 pm, Glenn Kasten <gkas...@android.com> wrote:
> The OpenSL ES and Java layers provides only the API, the top
> interfaces that are exposed to the application developer. They both
> sit on top of AudioTrack, AudioFlinger, and the audio effects
> implementation.
>
> If you want to replace an existing audio effect, you can mostly ignore
> the OpenSL ES layer, as long as you're using the right GUID for the
> effect.
>
> The OpenSL ES API does not currently support custom effects.
>
> Custom effects are exposed by the Java API -- seehttp://developer.android.com/reference/android/media/audiofx/AudioEff...
Reply all
Reply to author
Forward
0 new messages