Hi,
I am developing an audio conferencing application with 5 way
conference that will be part of Android firmware,.
Could you please let me know what is the best way to leverage Android
audio framework for this.
as of now I am considering this doing on AudioTrack level only. but have
This is starting a new topic on an old thread. Can you please start a new
thread with new subject line to match? Thanks!
On Monday, June 24, 2013 4:46:27 AM UTC-7, Iroid wrote:
Hi,
I am developing an audio conferencing application with 5 way
conference that will be part of Android
Dear Mr.Kasten,
Thank you very much. I will contact official directly.
I will reply you if they have a official comment on this question.
Thanks.
2013/4/17 Glenn Kasten gkas...@android.com
My unofficial opinion is that starting measurement at line #246 might give
you the cold latency,
and
My unofficial opinion is that starting measurement at line #246 might give
you the cold latency,
and help you to measure the warmup time for audio pipeline to be powered up
etc.
And that starting measurement at line 95 might give you the continuous
latency
after audio pipeline is already
Dear Glenn Kasten,
We are concern audio low latency of Android 4.2 Compatibility Definition of
(android-4.2-cdd), which make a requirement:
*1. cold output latency of 100 milliseconds or less*
*2. continuous output latency of 45 milliseconds or less*
In the document, *If a device
First, regarding your specific question:
Line 95 has:
res = (*queueItf)-Enqueue(...
which make sense to me that it could be a *possible* test point.
But line 264 has:
/* Make sure player is stopped */
res = (*playItf)-SetPlayState(playItf, SL_PLAYSTATE_STOPPED);
That doesn't seem
Hi Glenn, all
What about effects on Session 0? Do these get applied to the output of the
Fast mixer (which is the mix of fast tracks + the normal mixer)?
If so, it seems to contradict the idea that it is a fast mixer, because
Session 0 effects are still applying.
Can anyone suggest a code
Hello Glenn,
To continue the conversation forward on Track Effects being avoided by the
FastMixer, can the same be said of the Effects on SessionId 0 (the Global
Effects, if you will)? Will these global effects process the submix
(mFastTracks[0]) from the normal mixer thread only and then be
Every time a mixer thread runs through it's main loop, it gets the PCM data
for each track input by a buffer provider. The buffer provider normally
returns new PCM data each time it is called, or if there is not enough new
data available then it returns a short (insufficient) count and that
Hi Glenn,
Thanks for your response.
I understand your mean. I mean is if there is no any new states available
from normal mixer, then FastMixer will get the old state again. If this old
state command is MIX_WRITE, then at this time, FastMixer will write
the mixBuffer again which stored the PCM
No - if there is not a new state available from normal mixer, then
FastMixer will continue to operate correctly using the old state. State
includes many things, but most important is the set of active fast tracks.
The idle command is only used for major mode changes, not for state changes.
On
Hi glenn,
Thanks for your reply.
I have another question about FastMixer stat machine.
To my understanding, the MIX_WRITE process as following:
1, get next FastMixerState from FastMixerStateQueue.
2, get its command
3, if command equal MIX_WRITE, then do mixer and write operations.
After the
1. You didn't mention if you're developing Android apps or the platform. If
you're an Android app developer, you should be using only documented public
APIs. For audio output, that's Java language android.media.AudioTrack in
SDK and C language OpenSL ES AudioPlayer with PCM buffer queue in NDK.
13 matches
Mail list logo