[asterisk-dev] Building an embedded Asterisk PBX
Greg Boehnlein
damin at nacs.net
Sat Sep 2 17:40:17 MST 2006
On Sun, 3 Sep 2006, David Rowe wrote:
> > With regards to echo cancellation, it is my opinion that it is 100%
> > neccessary to have hardware based echo cancellation on any piece of
> > hardware that will be deployed in a customer scenario. In all of my
> > experiences, I have finally come to the conclusion that the Software Echo
> > cancelling routines in Asterisk are just not acceptable enough to deal
> > with, and eliminate all forms of echo. I.E. some echo and artifacts always
> > remain. As a result, I have made the decision to deploy all hardware based
> > Echo cancelling cards.
>
> OK, thanks for the tip. As a first pass I plan to use the Asterisk echo
> can software, but we can always try and improve from there. I know from
> personal experience that echo cancellers are tough pieces of DSP
> software to write, so I understand the problem. So to be fair I would
> say that the authors of the Asterisk software echo can have actually
> done a pretty good job - much better than I have to date :-)
>
> Just to clarify "hardware echo cancellers" are actually proprietary
> software running on programmable DSP chips (just like say G729 software
> in binary form). The reason they work so well is that they have been
> written by echo can experts (like I said - this is tough, specialised
> software). The same software would work just as well on an x86 with
> enough MIPS available.
>
> There is no fundamental reason that Asterisk couldn't include an open
> source, carrier grade, high performance echo can. Its just that no one
> has written one yet. But then again a few years ago no one had written
> an open source PBX, either.
I'm not saying it can't be done, but w/ existing DSP solutions such as
Octasic, many have chosen to let the experts practice their black arts and
move on to bigger and better things.
> > Do you think the blackfin STAMP has enough horsepower to enable carrier
> > grade echo cancelling?
>
> In terms of MIPs, I have calculated that about 12 channels of 128ms
> echo-can will run comfortably on a Blackfin (or 24 ports of 64ms tail
> echo can). Thats while running Asterisk at the same time. You see the
> Blackfin _is_ a DSP chip, so it's optimised for this sort of thing. It
> just happens to run uClinux (and therefore Asterisk) as well.
>
> > Or is there an easy way to include a DSP based Echo
> > canceller into the system?
>
> So what you really mean is how to get carrier-grade echo can? You could
> (i) license some proprietary echo can software and use it on the
> Blackfin (ii) as a community we could develop one (I have talked to some
> experienced DSP/echo guys about this) and (iii) you could hang something
> like an Octasic chip off the side. (i) and (iii) will make it cost
> more, (iii) is needs some community development work. And would be more
> fun :-)
As I suspected. It would be nice to have a board that supported the
addition of a socketed Octasic DSP. That way, you could load the existing
Octasic firmware that ships w/ Zaptel into it.
--
Vice President of N2Net, a New Age Consulting Service, Inc. Company
http://www.n2net.net Where everything clicks into place!
KP-216-121-ST
More information about the asterisk-dev
mailing list