Hi, I have two related questions about Audio Effects.

1. I'm trying to get information on how an application should add a
persistent audio effect to the global output mix.
Yes I create the an instance of the effect in the Java app on
sessionId 0.
Then when my Java app exits, the effect successfully continues to
process audio playing on the device, but I notice in the process list
(in the Eclipse Devices tab) that my application is still running. I
understand this is not the Java application, but the linux/C process
still running.
If I manually [stop] this process, my global effect ceases. Therefore
I assume that this could have occured if my process was killed by the
system to recover resources later on.

So my question is: What is the correct way to be able to have a global
audio effect remain active until removed? Is the only way to run a
background service in Java that is actively connected with the
underlying global effect?

2. I'm trying to understand the connection between an "effect engine",
the instance of an effect (via EffectCreate call in the library
implementation), and the Java effect object instantiated to create/
control the effect.
Is it always the case that if an Application A1 instantiates a java
instance I1 of an effect E on sessionId 1, and then Application A2
creates a java instance I2 of the same effect class E on sessionId 2,
then Application A1's instance I1 "loses control" of the effect, while
A2 can freely control it via I2. But Application A1's instance I1 can
still receive parameter change callbacks via the listener. Is this
correct?
And therefore, is it always the case then that these multiple java
instances I1 and I2 of effect type E will always talk to the same
"effect engine" - that is, the same instance of the effect created by
EffectCreate in the library?
I realise this crosses the line between SDK development and underlying
effect library development, but at least here I'm asking from the
application level perspective. I'm wondering whether the intention and
design is that the Java instances of effects are merely supposed to
act as thin clients to a single concrete instance of the effect as
created in the underlying AudioFlinger and added to one effect chain
at a time?

Kind regards
eugene

-- 
You received this message because you are subscribed to the Google
Groups "Android Developers" group.
To post to this group, send email to android-developers@googlegroups.com
To unsubscribe from this group, send email to
android-developers+unsubscr...@googlegroups.com
For more options, visit this group at
http://groups.google.com/group/android-developers?hl=en

Reply via email to