List Info

Thread: Re: New audio output framework. Draft 1.




Re: New audio output framework. Draft 1.
country flaguser name
United States
2007-03-22 06:33:21
We already have a heartbeat for the media task, it probably
would not
be difficult to send the heartbeat (i.e. OsMsg) to multiple
consumers
(e.g. the MpOutputDeviceManager).

--- Alexander Chemeris <Alexander.Chemerissipez.com> wrote:

> Hello,
> 
> On 3/21/07, Daniel Petrie <dpetriesipez.com> wrote:
> > I am wondering if we can solve the mixing
requirement in a way that
> > does not require two different modes or driver
behaviors.  I would
> > rather have a little more complexity in the
manager and simplify
> the
> > driver implementation.  One option that comes to
mind is that if
> the
> > manager knows ahead of time how many resources are
going to
> contribute
> > push a frame to be mixed before given to the
driver, then the
> manager
> > or connection could know that it was being given
the last frame to
> mix
> > and actually push the mixed frame to the driver. 
This is a little
> bit
> > ugly or complicated in that the manager has to
know who is going to
> > contribute ahead of time, but in this way we can
design the drivers
> to
> > always get a frame pushed as soon as it is ready.
> 
> I dislike this approach, as it may lead to blocking of
all streams
> due to
> delay/hang of one flowgraph. I could propose other way,
I'm thinking
> of
> a while. Device could provide heartbeat timer
interface, which will
> call
> AudioOutputConnection callback. This call back will in
turn push
> frame
> to device or do other fancy thing, e.g. start
processing of next
> frame in
> flowgraph. Under Linux we have separate thread for
flowgraph timing
> and
> under Windows we depend on WOM_DONE messages in speaker
thread. We
> should
> consider the way to provide timing in new device
framework if we want
> to remove old one.
> 
> -- 
> Regards,
> Alexander Chemeris.
> 
> SIPez LLC.
> SIP VoIP, IM and Presence Consulting
> http://www.SIPez.com
> tel: +1 (617) 273-4000
> 

_______________________________________________
sipxtapi-dev mailing list
sipxtapi-devlist.sipfoundry.org
List Archive: http
://list.sipfoundry.org/archive/sipxtapi-dev/

Re: New audio output framework. Draft 1.
user name
2007-03-22 07:42:54
Hello,

On 3/22/07, Daniel Petrie <dpetriesipez.com> wrote:
> We already have a heartbeat for the media task, it
probably would not
> be difficult to send the heartbeat (i.e. OsMsg) to
multiple consumers
> (e.g. the MpOutputDeviceManager).
As I mentioned, under Windows current heartbeat timer send
messages
from speaker thread at the same time when next frame of data
is pushed
to audio device. If we remove speaker thread, we lose
heartbeat timer.
If we want to port this heartbeat timer to new framework,
it's a good time to
abstract it too. Current implementation take heartbeat ticks
from one source
and send it to all flowgraphs. With this approach we're
falling to clock skew
problems all the time. If flowgraph use one audio device, it
should take clock
from this device, or have good logic for clock skew
detection and correction.


-- 
Regards,
Alexander Chemeris.

SIPez LLC.
SIP VoIP, IM and Presence Consulting
http://www.SIPez.com
tel: +1 (617) 273-4000
_______________________________________________
sipxtapi-dev mailing list
sipxtapi-devlist.sipfoundry.org
List Archive: http
://list.sipfoundry.org/archive/sipxtapi-dev/

[1-2]

about | contact  Other archives ( Real Estate discussion Medical topics )