[android-porting] Re: Questions of fastmixer

2013-06-24 Thread Iroid
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

[android-porting] Re: Questions of fastmixer

2013-06-24 Thread Glenn Kasten
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

Re: [android-porting] Re: Questions of fastmixer

2013-04-17 Thread Ship Hsu
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

Re: [android-porting] Re: Questions of fastmixer

2013-04-16 Thread Glenn Kasten
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

[android-porting] Re: Questions of fastmixer

2013-04-12 Thread Ship Hsu
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

[android-porting] Re: Questions of fastmixer

2013-04-12 Thread Glenn Kasten
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

Re: [android-porting] Re: Questions of fastmixer

2012-11-30 Thread eugene
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

Re: [android-porting] Re: Questions of fastmixer

2012-11-21 Thread Previr Rangroo
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

Re: [android-porting] Re: Questions of fastmixer

2012-09-18 Thread Glenn Kasten
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

Re: [android-porting] Re: Questions of fastmixer

2012-09-17 Thread yu wang
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

Re: [android-porting] Re: Questions of fastmixer

2012-09-16 Thread Glenn Kasten
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

Re: [android-porting] Re: Questions of fastmixer

2012-09-14 Thread yu wang
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

[android-porting] Re: Questions of fastmixer

2012-09-08 Thread Glenn Kasten
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.