[asterisk-dev] Re: Meetme/Timing Basics

Tony Mountifield tony at softins.clara.co.uk
Fri May 19 14:20:50 MST 2006


In article <446E2C0D.7000900 at digium.com>,
Kevin P. Fleming <kpfleming at digium.com> wrote:
> Prakash Rao Kanthi wrote:
> 
> > Thanks Kevin. You said Zaptel does the mixing of SLINEAR data sent to
> > it. Is it byte level mixing or RTP packet level mixing? And also i still
> > have my questions on how the RTP from 2 users is streamed to 3rd user in
> > the conference as a signle 64 Kbps channel without buffering.
> 
> Zaptel works on audio samples, it has no concept of frames. If you wish
> to learn how the conference mixing works, read the source in zaptel.c

And you can also find some useful information at www.zapatatelephony.org,
especially tha page http://www.zapatatelephony.org/conf.html

That will help you to understand the accumulator code in zaptel.c

It's not Asterisk that does the conferencing. It's the zaptel driver.
When using zaptel interface cards (PRI or analogue), the mixing is
done on the driver's buffers that are filled and emptied directly
from and to the hardware. When you want to add RTP or IAX streams
into the conference, you (i.e. meetme) create a proxy pseudo device
which exists in the driver and has buffers that can be mixed in the
same way as the hardware driver buffers. Meetme then has the job of
reading the RTP frame and writing it to the pseudo, and also reading
from the pseudo and writing out an RTP frame.

Cheers
Tony
-- 
Tony Mountifield
Work: tony at softins.co.uk - http://www.softins.co.uk
Play: tony at mountifield.org - http://tony.mountifield.org



More information about the asterisk-dev mailing list