>For VOIP application, two streams will be created, one is to remote
>side, the other is from remote side. For PA, these two streams are
>separated; for VOIP APP, they should be one group. Does moblin AM has
>any special consideration on grouped streams?
For this case, one is capture stream(to remote side), the other is playback 
stream(from remote side). Playback/capture streams are handled in different 
ways in AM. I don't understand the group concept you mentioned.

>About 3g stream, you assume that voice data will bypass PA, the only
>thing we need to do is register/unregister 3g stream and do related
>stream control. 
It's not an assumption, this code is written inside MRST module which is 
specific for one platform where 3g actually bypass PA. If in your platform, 3g 
go through PA, it could be handled in different ways in your platform related 
module.
>My problem is if voice data need to be render at user space, for
>example, noise/echo cancellation. And we need to add a special real-time
>like module to handle voice data. How to manage such kind streams?
If your 3g implementation is sufficient, and provides API for post-processing, 
you could just bypass PA, and do your own work separately, just 
register/unregister your 3g stream when needed. Or, your 3g stream go through 
PA, you may check whether PA's post processing capability is enough for you(I'm 
not familiar with this part).

>The problem is, decode-and-return mode LPE stream is consisted of two types of 
>stream:
>decode-and-return stream and PA stream. How to handle such special
>stream?
Decode-and-return LPE stream is not supposed to LPERegister itself, and before 
decode-and-return LPE stream actually rendered into PA, it is not a real audio 
stream. For this scenario, there's only one PA stream which actually gets data 
from LPE decode-n-return.

Best Regards, Zheng, Huan(ZBT)
OTC/SSD/SSG
Intel Asia-Pacific Research & Developement Ltd
Tel: 021-6116 6435
Inet: 8821 6435
Cub: 3W035

-----Original Message-----
From: tieg [mailto:[email protected]] 
Sent: 2010年1月11日 18:45
To: Zheng, Huan
Cc: [email protected]
Subject: Audio Streams

Hi, Zheng Huan:

In moblin audio manager, all audio streams are managed, no matter the
streams pass or bypass pulseaudio. 

According your design document and audio manager source code.  I can
find three kinds of streams: PA stream, LPE stream, 3g stream.

Here I would like to do more discussing on stream issues:

1. VOIP stream

For VOIP application, two streams will be created, one is to remote
side, the other is from remote side. For PA, these two streams are
separated; for VOIP APP, they should be one group. Does moblin AM has
any special consideration on grouped streams? 

2. Voice Call Stream / 3g stream

About 3g stream, you assume that voice data will bypass PA, the only
thing we need to do is register/unregister 3g stream and do related
stream control. 
My problem is if voice data need to be render at user space, for
example, noise/echo cancellation. And we need to add a special real-time
like module to handle voice data. How to manage such kind streams?

3. LPE stream -- decode-and-return mode & fire-and-forget mode

Switch from fire-and-forget to decode-and-return, a new pa stream need
to be created to play data coming from LPE. The problem is,
decode-and-return mode LPE stream is consisted of two types of stream:
decode-and-return stream and PA stream. How to handle such special
stream?

Thanks very much for your time on this email!

BR
tieg

_______________________________________________
Moblin dev Mailing List
[email protected]

To manage or unsubscribe from this mailing list visit:
http://lists.moblin.org/listinfo/dev or your user account on http://moblin.org 
once logged in.

For more information on the Moblin Developer Mailing lists visit:
http://moblin.org/community/mailing-lists

Reply via email to