hi David,
Thanks.
1. For lowest "cost" echo cancellation in software you need the lowest
possible delay between outbound and inbound data streams, which demands the
minimum possible buffering.
Not sure I understand what you actually mean? You need to buffer voice
anyway for echo cancel itself, so you could as well have done this in
hardware rather than using the Pentium for it ???
2. The 8 byte chunk per channel is the source of the millisecond timer that
seems to be crucial to proper operation of meetme and other applications.
I agree that we should keep a design where a 1ms latency from channel to
channel is possible, but I believe a good board should allow the driver
to configure this and at least offer a 10ms buffer. But, I also
understand that both the Digium and Sangoma passive board have
limitations by the chipset used so well....
The T1/E1 as well as the analog Sangoma cards have a common PCI interface
using individual DMA channels for each DS0, which can be set at any value.
See for instance the API specification at
http://sangoma.editme.com/wanpipe-linux-tdm-voice-api. On the A104d quad
T1/E1 and A201d analog cards where echo is taken care of on board, and
presumably also on Digium's TE411P, there is no echo cancellation
constraint. The chunk size could easily be expanded to 10 or 20ms for these
cards with hardware EC. One of the reasons why Yate is more efficient in
handling TDM is because voice is handled in larger packets.
Switching delays at 10 or 20 ms are not at all critical. If we could get
around the need for the millisecond timer in Asterisk, the way would be open
to making use of bigger chunks. Sangoma cards can produce an independent 1
ms timer IRQ, but that somewhat defeats the object.
Thanks - this was good news. My project is rather 'special' anyway so I
need to re-write the driver anyway.
Jan
_______________________________________________
--Bandwidth and Colocation provided by Easynews.com --
Asterisk-Users mailing list
To UNSUBSCRIBE or update options visit:
http://lists.digium.com/mailman/listinfo/asterisk-users