Re: [asterisk-users] The High Performance Echo Canceller (HPEC)
- Original Message - From: Nic Bellamy [EMAIL PROTECTED] To: Asterisk Users Mailing List - Non-Commercial Discussion asterisk-users@lists.digium.com Sent: Friday, February 16, 2007 12:56 AM Subject: Re: [asterisk-users] The High Performance Echo Canceller (HPEC) Wireless wrote: Thanks Nic, I have bought a couple of HPEC channel licences from Digium and been trying to get them working, all seems fine until I get to 9 and 10 of this doc ftp://ftp.digium.com/pub/telephony/hpec/README - at which point Asterisk is not running and I've issued a: wanrouter start command and all looks good. 9 says type [EMAIL PROTECTED] ~]# modprobe zaptel which returns nothing... when I run 10 At this point, if you run dmesg, do you find the following in your kernel log? Digium High-Performance Echo Canceller, version 8.20 Optimized for i386 CPU architecture Coypright (C) 2006 Digium, Inc. and Adaptive Digital Technologies, Inc. This module is supplied under a commercial license granted by Digium, Inc. Please see the full license text supplied by the accompanying register utility, or ask for a copy from Digium. If not, you've probably not got Zaptel built with HPEC properly. [EMAIL PROTECTED] ~]# ./zaphpec_enable I get - No valid licenses for HPEC found. If anyone can shed I bit of light on how to register my licence I'd be very greatful, I've checked in /var/lib/digium/licenses and there is a licence there. Hmm... not run into this myself - after registering my key, it worked first pop for me, giving the following output: # ./zaphpec_enable Digium High-Performance Echo Canceller Enabler Copyright (C) 2006, Digium, Inc. Version 1.0.0 Use the '-l' option to see license information for software included in this program. Found key 'HPEC-' for 4 channels. Found valid HPEC licenses for 4 channels. Successfully enabled 4 channels. After this, the follow line is spat out by the kernel: hpec_license_check: License granted for 4 channels Cheers, Nic. -- Nic Bellamy, Head Of Engineering, Vadacom Ltd - http://www.vadacom.co.nz/ I'm truely stuck now, I cannot get HPEC to register with my Sangoma A200 card. I'm using Asterisk 1.2.15 Zaptel 1.2.13 Wanpipe drivers / util 2.3.4-7 I'm just not seeing any mention of HPEC in dmesg and I have tried different versions of the HPEC i386, i586, i686 and pentium3m the physical proc is a P3 650Mhz running CentOS 4.4 (Trixbox 2) I've rebuilt this box over the weekend from a fully patched CentOS 4.4 (yum update) as the hard drive failed! when I run ./register all seems ok then when I run ./zaphpec_enable it reports: No valid licenses for HPEC found. Any suggestions as to how I can debug what is not happening much appreciated Thanks Harvey ___ --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
Re: [asterisk-users] The High Performance Echo Canceller (HPEC)
Wireless wrote: looks good. 9 says type [EMAIL PROTECTED] ~]# modprobe zaptel which returns nothing... when I run 10 At this point, if you run dmesg, do you find the following in your kernel log? Digium High-Performance Echo Canceller, version 8.20 Optimized for i386 CPU architecture Coypright (C) 2006 Digium, Inc. and Adaptive Digital Technologies, Inc. This module is supplied under a commercial license granted by Digium, Inc. Please see the full license text supplied by the accompanying register utility, or ask for a copy from Digium. If not, you've probably not got Zaptel built with HPEC properly. I'm truely stuck now, I cannot get HPEC to register with my Sangoma A200 card. I'm using Asterisk 1.2.15 Zaptel 1.2.13 Wanpipe drivers / util 2.3.4-7 I'm just not seeing any mention of HPEC in dmesg and I have tried different versions of the HPEC i386, i586, i686 and pentium3m the physical proc is a P3 650Mhz running CentOS 4.4 (Trixbox 2) I've rebuilt this box over the weekend from a fully patched CentOS 4.4 (yum update) as the hard drive failed! when I run ./register all seems ok then when I run ./zaphpec_enable it reports: No valid licenses for HPEC found. Any suggestions as to how I can debug what is not happening much appreciated Before building Zaptel, you are grabbing the correct version of hpec_x86_32.o_shipped for your CPU and putting it in zaptel-1.2.13/hpec/ right? It sounds to me like you've either not done that correctly, or something with the Sangoma build process is stopping the HPEC build working. After building zaptel, run strings zaptel.ko | grep 'High-Performance Echo Canceller' and see if you get a line like: Digium High-Performance Echo Canceller, version %s If not, you're going to need to dig into the way your Zaptel is being built to see why the HPEC module is not being included. Cheers, Nic. -- Nic Bellamy, Head Of Engineering, Vadacom Ltd - http://www.vadacom.co.nz/ ___ --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
Re: [asterisk-users] The High Performance Echo Canceller (HPEC)
- Original Message - From: Nic Bellamy [EMAIL PROTECTED] To: Asterisk Users Mailing List - Non-Commercial Discussion asterisk-users@lists.digium.com Sent: Monday, February 19, 2007 8:21 PM Subject: Re: [asterisk-users] The High Performance Echo Canceller (HPEC) Wireless wrote: looks good. 9 says type [EMAIL PROTECTED] ~]# modprobe zaptel which returns nothing... when I run 10 At this point, if you run dmesg, do you find the following in your kernel log? Digium High-Performance Echo Canceller, version 8.20 Optimized for i386 CPU architecture Coypright (C) 2006 Digium, Inc. and Adaptive Digital Technologies, Inc. This module is supplied under a commercial license granted by Digium, Inc. Please see the full license text supplied by the accompanying register utility, or ask for a copy from Digium. If not, you've probably not got Zaptel built with HPEC properly. I'm truely stuck now, I cannot get HPEC to register with my Sangoma A200 card. I'm using Asterisk 1.2.15 Zaptel 1.2.13 Wanpipe drivers / util 2.3.4-7 I'm just not seeing any mention of HPEC in dmesg and I have tried different versions of the HPEC i386, i586, i686 and pentium3m the physical proc is a P3 650Mhz running CentOS 4.4 (Trixbox 2) I've rebuilt this box over the weekend from a fully patched CentOS 4.4 (yum update) as the hard drive failed! when I run ./register all seems ok then when I run ./zaphpec_enable it reports: No valid licenses for HPEC found. Any suggestions as to how I can debug what is not happening much appreciated Before building Zaptel, you are grabbing the correct version of hpec_x86_32.o_shipped for your CPU and putting it in zaptel-1.2.13/hpec/ right? It sounds to me like you've either not done that correctly, or something with the Sangoma build process is stopping the HPEC build working. After building zaptel, run strings zaptel.ko | grep 'High-Performance Echo Canceller' and see if you get a line like: Digium High-Performance Echo Canceller, version %s If not, you're going to need to dig into the way your Zaptel is being built to see why the HPEC module is not being included. Cheers, Nic. Hi Nic Thanks for that, it does indeed show Digium High-Performance Echo Canceller, version %s, I've emailed Digium support but not sure if they will help me as I'm using the Sangoma card - here hoping :) Harvey ___ --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
Re: [asterisk-users] The High Performance Echo Canceller (HPEC)
- Original Message - From: Nic Bellamy [EMAIL PROTECTED] To: Asterisk Users Mailing List - Non-Commercial Discussion asterisk-users@lists.digium.com Sent: Tuesday, February 13, 2007 8:40 PM Subject: Re: [asterisk-users] The High Performance Echo Canceller (HPEC) Larry Shields wrote: I recently read about the following new technologies from Digium. Has anyone tried the new HPEC or knows when it will be available? It's out now, and I've tried it - the difference between HPEC and MG2 from trunk is stunning - in situations with bad echo where MG2 can take ten or more seconds to converge to a reasonable degree, HPEC does it in perhaps 300ms - converging on my intake of breath before I say hello, and absolutely no echo after that unless I purposefully go out of my way to screw it up (whistling/blowing into the handpiece for instance - even then, the malfunction is minimal). You can now buy it from the Digium website (US$10 per channel), or if you have an in-warranty Digium card, email through the serial numbers to Digium support and they'll give you a key (this is what I did). You'll need Zaptel 1.2.13 to make it go. It does take quite a bit of CPU though - perhaps 70% more compared to MG2-trunk for the same number of taps from my rough measurements. Cheers, Nic. -- Nic Bellamy, Head Of Engineering, Vadacom Ltd - http://www.vadacom.co.nz/ ___ --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 -- Does anyone know if the HPEC will work on a Sangoma A200 / 2 port FXO card? (I'm assuming so as it still uses Zapel) I've 2 PSTN lines one of which I cannot get rid of the echo, I've tried a 2GHz machine as apposed to my normal P3 650MHz and this made no difference. Would the 650Mhz be enough to run HPEC on one line (I assume only needing one licence) This is what Digium say on their web site: Digium recommends that users requiring 8 channels at 1024 taps run a PC comparible to a 3.0 GHz Pentium 4, while users only requiring 4 channels at 1024 taps may run a 2.5 GHz Pentium Celeron. The CPU requirements are such that it is impractical to operate this echo canceller at 1024 taps for a full T1 or E1 of channels. Many Thanks Harvey ___ --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
Re: [asterisk-users] The High Performance Echo Canceller (HPEC)
Wireless wrote: - Original Message - From: Nic Bellamy [EMAIL PROTECTED] To: Asterisk Users Mailing List - Non-Commercial Discussion asterisk-users@lists.digium.com Sent: Tuesday, February 13, 2007 8:40 PM Subject: Re: [asterisk-users] The High Performance Echo Canceller (HPEC) Larry Shields wrote: I recently read about the following new technologies from Digium. Has anyone tried the new HPEC or knows when it will be available? It's out now, and I've tried it - the difference between HPEC and MG2 from trunk is stunning - in situations with bad echo where MG2 can take ten or more seconds to converge to a reasonable degree, HPEC does it in perhaps 300ms - converging on my intake of breath before I say hello, and absolutely no echo after that unless I purposefully go out of my way to screw it up (whistling/blowing into the handpiece for instance - even then, the malfunction is minimal). You can now buy it from the Digium website (US$10 per channel), or if you have an in-warranty Digium card, email through the serial numbers to Digium support and they'll give you a key (this is what I did). You'll need Zaptel 1.2.13 to make it go. It does take quite a bit of CPU though - perhaps 70% more compared to MG2-trunk for the same number of taps from my rough measurements. Cheers, Nic. -- Nic Bellamy, Head Of Engineering, Vadacom Ltd - http://www.vadacom.co.nz/ ___ --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 -- Does anyone know if the HPEC will work on a Sangoma A200 / 2 port FXO card? (I'm assuming so as it still uses Zapel) I've 2 PSTN lines one of which I cannot get rid of the echo, I've tried a 2GHz machine as apposed to my normal P3 650MHz and this made no difference. Would the 650Mhz be enough to run HPEC on one line (I assume only needing one licence) This is what Digium say on their web site: Digium recommends that users requiring 8 channels at 1024 taps run a PC comparible to a 3.0 GHz Pentium 4, while users only requiring 4 channels at 1024 taps may run a 2.5 GHz Pentium Celeron. The CPU requirements are such that it is impractical to operate this echo canceller at 1024 taps for a full T1 or E1 of channels. It looks like octasic have started supplying their echo canceller as host software for zaptel now. I expect either canceller would work with the Sangoma cards, as they currently sit in the zaptel framework too. Steve ___ --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
Re: [asterisk-users] The High Performance Echo Canceller (HPEC)
On Thursday 15 February 2007 6:51 am, Steve Underwood wrote: It looks like octasic have started supplying their echo canceller as host software for zaptel now. I expect either canceller would work with the Sangoma cards, as they currently sit in the zaptel framework too. Out of curiosity, why do you suppose that it is the Octasic algorithm which is used in Digium's HPEC? I have no reasons to suspect otherwise, but I'm curious as to your reasons for suspecting that is indeed the case. Oh, and sorry about the incorrect attribution as to which Steve wrote and maintains spandsp. I always get yourself and Steven Critchfield mixed up. :-) -A. ___ --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
Re: [asterisk-users] The High Performance Echo Canceller (HPEC)
On Feb 15, 2007, at 3:17 AM, Wireless wrote: - Original Message - From: Nic Bellamy [EMAIL PROTECTED] To: Asterisk Users Mailing List - Non-Commercial Discussion asterisk-users@lists.digium.com Sent: Tuesday, February 13, 2007 8:40 PM Subject: Re: [asterisk-users] The High Performance Echo Canceller (HPEC) Larry Shields wrote: I recently read about the following new technologies from Digium. Has anyone tried the new HPEC or knows when it will be available? It's out now, and I've tried it - the difference between HPEC and MG2 from trunk is stunning - in situations with bad echo where MG2 can take ten or more seconds to converge to a reasonable degree, HPEC does it in perhaps 300ms - converging on my intake of breath before I say hello, and absolutely no echo after that unless I purposefully go out of my way to screw it up (whistling/blowing into the handpiece for instance - even then, the malfunction is minimal). You can now buy it from the Digium website (US$10 per channel), or if you have an in-warranty Digium card, email through the serial numbers to Digium support and they'll give you a key (this is what I did). You'll need Zaptel 1.2.13 to make it go. It does take quite a bit of CPU though - perhaps 70% more compared to MG2-trunk for the same number of taps from my rough measurements. Cheers, Nic. -- Nic Bellamy, Head Of Engineering, Vadacom Ltd - http://www.vadacom.co.nz/ ___ --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 -- Does anyone know if the HPEC will work on a Sangoma A200 / 2 port FXO card? (I'm assuming so as it still uses Zapel) I've 2 PSTN lines one of which I cannot get rid of the echo, I've tried a 2GHz machine as apposed to my normal P3 650MHz and this made no difference. Would the 650Mhz be enough to run HPEC on one line (I assume only needing one licence) This is what Digium say on their web site: Digium recommends that users requiring 8 channels at 1024 taps run a PC comparible to a 3.0 GHz Pentium 4, while users only requiring 4 channels at 1024 taps may run a 2.5 GHz Pentium Celeron. The CPU requirements are such that it is impractical to operate this echo canceller at 1024 taps for a full T1 or E1 of channels. Yes, it will work with any card that uses zaptel. You just have to pay a per port fee to use it with a non-digium card. I'm not sure about the performance requirements for one port though. You could try it with a low tap count and keep bumping up your taps (echocancel=[32,64,128,256,512,1024]) until it cancels the echo though. That way you'd only use as much cpu as you absolutely have to. Matthew Fredrickson ___ --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
Re: [asterisk-users] The High Performance Echo Canceller (HPEC)
Andrew Kohlsmith wrote: On Thursday 15 February 2007 6:51 am, Steve Underwood wrote: It looks like octasic have started supplying their echo canceller as host software for zaptel now. I expect either canceller would work with the Sangoma cards, as they currently sit in the zaptel framework too. Out of curiosity, why do you suppose that it is the Octasic algorithm which is used in Digium's HPEC? I have no reasons to suspect otherwise, but I'm curious as to your reasons for suspecting that is indeed the case. I think Steve meant Octasic are _also_ now supplying their EC as host software for Zaptel. The HPEC canceller is from Adaptive Digital. Cheers, Nic. -- Nic Bellamy, Head Of Engineering, Vadacom Ltd - http://www.vadacom.co.nz/ ___ --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
Re: [asterisk-users] The High Performance Echo Canceller (HPEC)
Wireless wrote: Does anyone know if the HPEC will work on a Sangoma A200 / 2 port FXO card? (I'm assuming so as it still uses Zapel) I've 2 PSTN lines one of which I cannot get rid of the echo, I've tried a 2GHz machine as apposed to my normal P3 650MHz and this made no difference. Would the 650Mhz be enough to run HPEC on one line (I assume only needing one licence) It should work, providing all the Wanpipe stuff is ready to work with Zaptel 1.2.13. As far as performance, you should be able to get one, maybe two channels of 1024 tap cancellation on the P3, but I'd advise careful testing, perhaps even using oprofile for a while to keep an eye on what's using what. You also have to watch out extra carefully due to the following: HPEC works in sparse mode, meaning it can cover 1024 taps, but just cancels echo in the parts where there is echo - hence CPU usage will likely change quite a bit with different echo paths - ie. a simple single reflection path will use less CPU than a complicated path with more than one reflection. Cheers, Nic. -- Nic Bellamy, Head Of Engineering, Vadacom Ltd - http://www.vadacom.co.nz/ ___ --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
RE: [asterisk-users] The High Performance Echo Canceller (HPEC)
How do you fake echo for testing purposes then? Regards, Dean Collins Cognation Pty Ltd [EMAIL PROTECTED] +1-212-203-4357 Ph +1-917-207-3420 Mb +61-2-9016-5642 (Sydney in-dial). -Original Message- From: [EMAIL PROTECTED] [mailto:asterisk-users- [EMAIL PROTECTED] On Behalf Of Nic Bellamy Sent: Thursday, 15 February 2007 3:53 PM To: Asterisk Users Mailing List - Non-Commercial Discussion Subject: Re: [asterisk-users] The High Performance Echo Canceller (HPEC) Wireless wrote: Does anyone know if the HPEC will work on a Sangoma A200 / 2 port FXO card? (I'm assuming so as it still uses Zapel) I've 2 PSTN lines one of which I cannot get rid of the echo, I've tried a 2GHz machine as apposed to my normal P3 650MHz and this made no difference. Would the 650Mhz be enough to run HPEC on one line (I assume only needing one licence) It should work, providing all the Wanpipe stuff is ready to work with Zaptel 1.2.13. As far as performance, you should be able to get one, maybe two channels of 1024 tap cancellation on the P3, but I'd advise careful testing, perhaps even using oprofile for a while to keep an eye on what's using what. You also have to watch out extra carefully due to the following: HPEC works in sparse mode, meaning it can cover 1024 taps, but just cancels echo in the parts where there is echo - hence CPU usage will likely change quite a bit with different echo paths - ie. a simple single reflection path will use less CPU than a complicated path with more than one reflection. Cheers, Nic. -- Nic Bellamy, Head Of Engineering, Vadacom Ltd - http://www.vadacom.co.nz/ ___ --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 ___ --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
Re: [asterisk-users] The High Performance Echo Canceller (HPEC)
On Thu, Feb 15, 2007 at 05:35:09PM -0500, Dean Collins wrote: How do you fake echo for testing purposes then? A soft phone will normally give you good enough delay. Call a an analog phone from a different soft phone. Make sure no over-freindly device/software along the voice path kills the echo ;-) -- Tzafrir Cohen icq#16849755jabber:[EMAIL PROTECTED] +972-50-7952406 mailto:[EMAIL PROTECTED] http://www.xorcom.com iax:[EMAIL PROTECTED]/tzafrir ___ --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
Re: [asterisk-users] The High Performance Echo Canceller (HPEC)
Dean Collins wrote: How do you fake echo for testing purposes then? All my tests have been done using sound files in userspace - I've written a few bits of code for doing this. Basically, the idea is you start with two sound files - speaker-A and speaker-B. Take speaker-A file, and run it through a finite impulse response filter (FIR) that has been preloaded with an echo path (ie. line echo characteristics). I use the various echo path models from the ITU G.168 specification for this, set at various pure delay offsets, and sometimes mixed together (ie. multiple paths at different offsets and amplitudes to simulate a variety of really nasty echo paths). The output is the speaker-A returned echo, and is saved to a file, then mixed with speaker-B so as to simulate doubletalk scenarios - resulting file called speaker-A-rx. My other tools wrap the various Zaptel echo cancellers into a userspace program, read .wav files of speaker-A and speaker-A-rx, run the echo canceller over them, and save the echo cancelled output to another file, which can then be listened to, spectrum analysed, etc. Testing the HPEC stuff was a bit more complicated, since it's a binary blob that requires licensing - I whacked up a quick'n'dirty Zaptel ioctl that takes bits of audio, feeds it through it, and passes it back, and uses rdtsc to keep track of CPU time used. Cheers, Nic. -Original Message- From: [EMAIL PROTECTED] [mailto:asterisk-users- [EMAIL PROTECTED] On Behalf Of Nic Bellamy Sent: Thursday, 15 February 2007 3:53 PM To: Asterisk Users Mailing List - Non-Commercial Discussion Subject: Re: [asterisk-users] The High Performance Echo Canceller (HPEC) Wireless wrote: Does anyone know if the HPEC will work on a Sangoma A200 / 2 port FXO card? (I'm assuming so as it still uses Zapel) I've 2 PSTN lines one of which I cannot get rid of the echo, I've tried a 2GHz machine as apposed to my normal P3 650MHz and this made no difference. Would the 650Mhz be enough to run HPEC on one line (I assume only needing one licence) It should work, providing all the Wanpipe stuff is ready to work with Zaptel 1.2.13. As far as performance, you should be able to get one, maybe two channels of 1024 tap cancellation on the P3, but I'd advise careful testing, perhaps even using oprofile for a while to keep an eye on what's using what. You also have to watch out extra carefully due to the following: HPEC works in sparse mode, meaning it can cover 1024 taps, but just cancels echo in the parts where there is echo - hence CPU usage will likely change quite a bit with different echo paths - ie. a simple single reflection path will use less CPU than a complicated path with more than one reflection. Cheers, Nic. -- Nic Bellamy, Head Of Engineering, Vadacom Ltd - http://www.vadacom.co.nz/ ___ --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 ___ --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 -- Nic Bellamy, Head Of Engineering, Vadacom Ltd - http://www.vadacom.co.nz/ ___ --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
Re: [asterisk-users] The High Performance Echo Canceller (HPEC)
- Original Message - From: Nic Bellamy [EMAIL PROTECTED] To: Asterisk Users Mailing List - Non-Commercial Discussion asterisk-users@lists.digium.com Sent: Thursday, February 15, 2007 8:53 PM Subject: Re: [asterisk-users] The High Performance Echo Canceller (HPEC) Wireless wrote: Does anyone know if the HPEC will work on a Sangoma A200 / 2 port FXO card? (I'm assuming so as it still uses Zapel) I've 2 PSTN lines one of which I cannot get rid of the echo, I've tried a 2GHz machine as apposed to my normal P3 650MHz and this made no difference. Would the 650Mhz be enough to run HPEC on one line (I assume only needing one licence) It should work, providing all the Wanpipe stuff is ready to work with Zaptel 1.2.13. As far as performance, you should be able to get one, maybe two channels of 1024 tap cancellation on the P3, but I'd advise careful testing, perhaps even using oprofile for a while to keep an eye on what's using what. You also have to watch out extra carefully due to the following: HPEC works in sparse mode, meaning it can cover 1024 taps, but just cancels echo in the parts where there is echo - hence CPU usage will likely change quite a bit with different echo paths - ie. a simple single reflection path will use less CPU than a complicated path with more than one reflection. Cheers, Nic. -- Nic Bellamy, Head Of Engineering, Vadacom Ltd - http://www.vadacom.co.nz/ Thanks Nic, I have bought a couple of HPEC channel licences from Digium and been trying to get them working, all seems fine until I get to 9 and 10 of this doc ftp://ftp.digium.com/pub/telephony/hpec/README - at which point Asterisk is not running and I've issued a: wanrouter start command and all looks good. 9 says type [EMAIL PROTECTED] ~]# modprobe zaptel which returns nothing... when I run 10 [EMAIL PROTECTED] ~]# ./zaphpec_enable I get - No valid licenses for HPEC found. If anyone can shed I bit of light on how to register my licence I'd be very greatful, I've checked in /var/lib/digium/licenses and there is a licence there. Thanks Harvey ___ --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
Re: [asterisk-users] The High Performance Echo Canceller (HPEC)
Andrew Kohlsmith wrote: On Thursday 15 February 2007 6:51 am, Steve Underwood wrote: It looks like octasic have started supplying their echo canceller as host software for zaptel now. I expect either canceller would work with the Sangoma cards, as they currently sit in the zaptel framework too. Out of curiosity, why do you suppose that it is the Octasic algorithm which is used in Digium's HPEC? I have no reasons to suspect otherwise, but I'm curious as to your reasons for suspecting that is indeed the case. Oh, and sorry about the incorrect attribution as to which Steve wrote and maintains spandsp. I always get yourself and Steven Critchfield mixed up. :-) I don't suspect that. Others have specifically said Digium are selling the Adaptive Digital software. However, if you look at Octasic's web site you will find they are now selling their canceller has host software *specifically* for use with Asterisk. So, there seem to be two workable commercial cancellers now. Also, David Rowe's work seems to be building nicely on what I started 3 years ago, and will probably produce a viable free canceller soon. Steve ___ --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
Re: [asterisk-users] The High Performance Echo Canceller (HPEC)
Dean Collins wrote: How do you fake echo for testing purposes then? I you look in my spandsp library, thre is a fairly complete framework for testing echo cancellers according to G.168. This includes modelling the various echo patterns defined in G.168. Steve ___ --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
Re: [asterisk-users] The High Performance Echo Canceller (HPEC)
Tzafrir Cohen wrote: On Thu, Feb 15, 2007 at 05:35:09PM -0500, Dean Collins wrote: How do you fake echo for testing purposes then? A soft phone will normally give you good enough delay. Call a an analog phone from a different soft phone. Make sure no over-freindly device/software along the voice path kills the echo ;-) I think you were joking, but just in case anyone takes this seriously... In practice, that kind of testing is almost useless. You *must* have something controllable and repeatable. Regards, Steve ___ --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
Re: [asterisk-users] The High Performance Echo Canceller (HPEC)
Wireless wrote: Thanks Nic, I have bought a couple of HPEC channel licences from Digium and been trying to get them working, all seems fine until I get to 9 and 10 of this doc ftp://ftp.digium.com/pub/telephony/hpec/README - at which point Asterisk is not running and I've issued a: wanrouter start command and all looks good. 9 says type [EMAIL PROTECTED] ~]# modprobe zaptel which returns nothing... when I run 10 At this point, if you run dmesg, do you find the following in your kernel log? Digium High-Performance Echo Canceller, version 8.20 Optimized for i386 CPU architecture Coypright (C) 2006 Digium, Inc. and Adaptive Digital Technologies, Inc. This module is supplied under a commercial license granted by Digium, Inc. Please see the full license text supplied by the accompanying register utility, or ask for a copy from Digium. If not, you've probably not got Zaptel built with HPEC properly. [EMAIL PROTECTED] ~]# ./zaphpec_enable I get - No valid licenses for HPEC found. If anyone can shed I bit of light on how to register my licence I'd be very greatful, I've checked in /var/lib/digium/licenses and there is a licence there. Hmm... not run into this myself - after registering my key, it worked first pop for me, giving the following output: # ./zaphpec_enable Digium High-Performance Echo Canceller Enabler Copyright (C) 2006, Digium, Inc. Version 1.0.0 Use the '-l' option to see license information for software included in this program. Found key 'HPEC-' for 4 channels. Found valid HPEC licenses for 4 channels. Successfully enabled 4 channels. After this, the follow line is spat out by the kernel: hpec_license_check: License granted for 4 channels Cheers, Nic. -- Nic Bellamy, Head Of Engineering, Vadacom Ltd - http://www.vadacom.co.nz/ ___ --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
RE: [asterisk-users] The High Performance Echo Canceller (HPEC)
I gotta take issue with your comments that a HWEC is just software running on a DSP. In the case of Octasic, it's an ASIC. How it does EC is VERY different because.it's done completely in hardware, not firmware loaded into memory and run on a specialized CPU! Yes, the ASIC does contain an DSP but it is customized for EC. You cannot think of it as a CPU. -Original Message- From: Nic Bellamy [mailto:[EMAIL PROTECTED] Sent: Tuesday, February 13, 2007 5:43 PM To: Asterisk Users Mailing List - Non-Commercial Discussion Subject: Re: [asterisk-users] The High Performance Echo Canceller (HPEC) shadowym wrote: Interesting, Is this just a more advanced software echo canceller or software with hardware hooks or software with hardware assisted processing? A more advanced software canceller (there's no magical thing that makes hardware echo cancellers better, it's still software, but it's running on a DSP so it has more grunt available to it). It's licensed from Adaptive Digital Technologies - G.168 compliant, and supports up to 1024 taps (128ms) of tail coverage. Comes as a binary blob, but such is life. How would it compare to a true hardware echo canceller like the one Sangoma uses. Besides the extra CPU cycles required. Quite comparable - not sure if Octasic (as used by Sangoma and the latest Digium cards) or ADT would win in a shootout, but they're both in the same quality class. The main issue is going to be CPU usage - getting this going at 1024 taps on a full T1/E1 span would likely require two fast CPUs with the interrupts distributed evenly between them... and even then, *shrug* Cheers, Nic. -Original Message- From: Nic Bellamy [mailto:[EMAIL PROTECTED] Sent: Tuesday, February 13, 2007 12:41 PM To: Asterisk Users Mailing List - Non-Commercial Discussion Subject: Re: [asterisk-users] The High Performance Echo Canceller (HPEC) Larry Shields wrote: I recently read about the following new technologies from Digium. Has anyone tried the new HPEC or knows when it will be available? It's out now, and I've tried it - the difference between HPEC and MG2 from trunk is stunning - in situations with bad echo where MG2 can take ten or more seconds to converge to a reasonable degree, HPEC does it in perhaps 300ms - converging on my intake of breath before I say hello, and absolutely no echo after that unless I purposefully go out of my way to screw it up (whistling/blowing into the handpiece for instance - even then, the malfunction is minimal). You can now buy it from the Digium website (US$10 per channel), or if you have an in-warranty Digium card, email through the serial numbers to Digium support and they'll give you a key (this is what I did). You'll need Zaptel 1.2.13 to make it go. It does take quite a bit of CPU though - perhaps 70% more compared to MG2-trunk for the same number of taps from my rough measurements. Cheers, Nic. -- Nic Bellamy, Head Of Engineering, Vadacom Ltd - http://www.vadacom.co.nz/ ___ --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 -- Nic Bellamy, Head Of Engineering, Vadacom Ltd - http://www.vadacom.co.nz/ ___ --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
Re: [asterisk-users] The High Performance Echo Canceller (HPEC)
On Feb 13, 2007, at 5:48 PM, shadowym wrote: Interesting, Is this just a more advanced software echo canceller or software with hardware hooks or software with hardware assisted processing? How would it compare to a true hardware echo canceller like the one Sangoma uses. Besides the extra CPU cycles required. We noticed that it has slightly better performance characteristics than the Octasic, particularly in double talk scenarios, at least from our internal lab testing. Matthew Fredrickson ___ --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
Re: [asterisk-users] The High Performance Echo Canceller (HPEC)
On Feb 14, 2007, at 10:17 AM, shadowym wrote: I gotta take issue with your comments that a HWEC is just software running on a DSP. In the case of Octasic, it's an ASIC. How it does EC is VERY different because.it's done completely in hardware, not firmware loaded into memory and run on a specialized CPU! Yes, the ASIC does contain an DSP but it is customized for EC. You cannot think of it as a CPU. Yes, but the math and functions involved are the same. It's just doing it on one or the other involves different types of instructions. Matthew Fredrickson ___ --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
Re: [asterisk-users] The High Performance Echo Canceller (HPEC)
Can someone comment why only Digium cards still under warranty are eligible to use this EC at no cost, versus older cards? Regards, Richard ___ --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
Re: [asterisk-users] The High Performance Echo Canceller (HPEC)
On Wednesday 14 February 2007 11:17 am, shadowym wrote: I gotta take issue with your comments that a HWEC is just software running on a DSP. In the case of Octasic, it's an ASIC. How it does EC is VERY different because.it's done completely in hardware, not firmware loaded into memory and run on a specialized CPU! Yes, the ASIC does contain an DSP but it is customized for EC. You cannot think of it as a CPU. Why not? A DSP is a CPU which has been designed to do mathematical functions very quickly, generally especially with respect to matrix math. I mean think of what you just said. You could just as easily have said A CPU ... it's an ASIC. Everything it does is completely in hardware. -A. ___ --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
Re: [asterisk-users] The High Performance Echo Canceller (HPEC)
On Wednesday 14 February 2007 11:19 am, Matthew Fredrickson wrote: We noticed that it has slightly better performance characteristics than the Octasic, particularly in double talk scenarios, at least from our internal lab testing. How has the testing been with respect to its use on FXO ports (such as those on the TDM400 FXO modules) ?? I'm *very* interested in any real test data, including any comparisons with MG2 and the Octasic cancellers available on Digium products. -A. ___ --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
RE: [asterisk-users] The High Performance Echo Canceller (HPEC)
The algorithms may be similar but EC is an infinitely variable non-linear(analog) process. A CPU cannot do that. You can fake it by performing cpu intensive rapid calculations one after another but it is fundamentally not an analog processor. HWEC is designed to deal with the analog process on an instant by instant basis performing parallel computations. A CPU cannot do that at ANY clock speed. -Original Message- From: Matthew Fredrickson [mailto:[EMAIL PROTECTED] Sent: Wednesday, February 14, 2007 10:03 AM To: Asterisk Users Mailing List - Non-Commercial Discussion Subject: Re: [asterisk-users] The High Performance Echo Canceller (HPEC) On Feb 14, 2007, at 10:17 AM, shadowym wrote: I gotta take issue with your comments that a HWEC is just software running on a DSP. In the case of Octasic, it's an ASIC. How it does EC is VERY different because.it's done completely in hardware, not firmware loaded into memory and run on a specialized CPU! Yes, the ASIC does contain an DSP but it is customized for EC. You cannot think of it as a CPU. Yes, but the math and functions involved are the same. It's just doing it on one or the other involves different types of instructions. Matthew Fredrickson ___ --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
Re: [asterisk-users] The High Performance Echo Canceller (HPEC)
shadowym wrote: I gotta take issue with your comments that a HWEC is just software running on a DSP. In the case of Octasic, it's an ASIC. How it does EC is VERY different because.it's done completely in hardware, not firmware loaded into memory and run on a specialized CPU! Yes, the ASIC does contain an DSP but it is customized for EC. You cannot think of it as a CPU. You've obviously missed the fact that the Octasic chips have loadable firmware. Without being privy to any internal Octasic information, all I can guess is that their ASIC is a customised DSP core with perhaps more on-chip fast memory for FIR coefficient storage, and perhaps custom instructions/custom logic blocks specifically designed to improve the performance for the type of mathematical operations required for echo cancellation. Nobody in their right mind is going to do this entirely in custom circuitry - if you find a bug in your algorithm, or a way to improve things, what then - spend a few million on getting your chip rebatched and tell your users get their soldering irons out? Anyway, I'm going to shut up now before I get carried away and start a flame war :-) Cheers, Nic. -Original Message- From: Nic Bellamy [mailto:[EMAIL PROTECTED] Sent: Tuesday, February 13, 2007 5:43 PM To: Asterisk Users Mailing List - Non-Commercial Discussion Subject: Re: [asterisk-users] The High Performance Echo Canceller (HPEC) shadowym wrote: Interesting, Is this just a more advanced software echo canceller or software with hardware hooks or software with hardware assisted processing? A more advanced software canceller (there's no magical thing that makes hardware echo cancellers better, it's still software, but it's running on a DSP so it has more grunt available to it). It's licensed from Adaptive Digital Technologies - G.168 compliant, and supports up to 1024 taps (128ms) of tail coverage. Comes as a binary blob, but such is life. How would it compare to a true hardware echo canceller like the one Sangoma uses. Besides the extra CPU cycles required. Quite comparable - not sure if Octasic (as used by Sangoma and the latest Digium cards) or ADT would win in a shootout, but they're both in the same quality class. The main issue is going to be CPU usage - getting this going at 1024 taps on a full T1/E1 span would likely require two fast CPUs with the interrupts distributed evenly between them... and even then, *shrug* Cheers, Nic. -Original Message- From: Nic Bellamy [mailto:[EMAIL PROTECTED] Sent: Tuesday, February 13, 2007 12:41 PM To: Asterisk Users Mailing List - Non-Commercial Discussion Subject: Re: [asterisk-users] The High Performance Echo Canceller (HPEC) Larry Shields wrote: I recently read about the following new technologies from Digium. Has anyone tried the new HPEC or knows when it will be available? It's out now, and I've tried it - the difference between HPEC and MG2 from trunk is stunning - in situations with bad echo where MG2 can take ten or more seconds to converge to a reasonable degree, HPEC does it in perhaps 300ms - converging on my intake of breath before I say hello, and absolutely no echo after that unless I purposefully go out of my way to screw it up (whistling/blowing into the handpiece for instance - even then, the malfunction is minimal). You can now buy it from the Digium website (US$10 per channel), or if you have an in-warranty Digium card, email through the serial numbers to Digium support and they'll give you a key (this is what I did). You'll need Zaptel 1.2.13 to make it go. It does take quite a bit of CPU though - perhaps 70% more compared to MG2-trunk for the same number of taps from my rough measurements. Cheers, Nic. -- Nic Bellamy, Head Of Engineering, Vadacom Ltd - http://www.vadacom.co.nz/ ___ --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 -- Nic Bellamy, Head Of Engineering, Vadacom Ltd - http://www.vadacom.co.nz/ ___ --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 -- Nic Bellamy, Head Of Engineering, Vadacom Ltd - http://www.vadacom.co.nz/ ___ --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
Re: [asterisk-users] The High Performance Echo Canceller (HPEC)
On Wednesday 14 February 2007 4:12 pm, shadowym wrote: The algorithms may be similar but EC is an infinitely variable non-linear(analog) process. A CPU cannot do that. You can fake it by performing cpu intensive rapid calculations one after another but it is fundamentally not an analog processor. HWEC is designed to deal with the analog process on an instant by instant basis performing parallel computations. A CPU cannot do that at ANY clock speed. I think you are very sorely mistaken. I've done DSP work on general-purpose CPUs for many years. All current processors have SIMD, which, until the i586 (for Intel), was more or less only in DSPs. Steven Critchfield has been doing DSP work (spandsp) for much longer than I have, and is much better at it than I will ever be. :-) Anything a DSP can do, a general-purpose CPU can do, but very likely slower. There is no magic. There is nothing particularly special about ASICs or DSPs that general-purpose CPUs can't do; it's all a matter of how quickly it can do it and how much you're willing to consume in system resources. -A. ___ --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
Re: [asterisk-users] The High Performance Echo Canceller (HPEC)
On Feb 14, 2007, at 3:12 PM, shadowym wrote: The algorithms may be similar but EC is an infinitely variable non-linear(analog) process. A CPU cannot do that. You can fake it by performing cpu intensive rapid calculations one after another but it is fundamentally not an analog processor. HWEC is designed to deal with the analog process on an instant by instant basis performing parallel computations. A CPU cannot do that at ANY clock speed. I don't think you are seeing this clearly. The octasic is a processor. It has firmware that loads. Though it maybe a specialized processor with instructions that help with echo cancellation, by the time that a HW echo canceller sees the data it is very much not analog anymore. It has already gone through an analog to digital converter and the algorithms and math that are used to cancel echo are done in the digital domain. Modern echo cancellation is not done in continuous time, it is done in the digital, discrete time. That means sampled, and coming in through a TDM bus of some sort. Not analog. Matthew Fredrickson ___ --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
RE: [asterisk-users] The High Performance Echo Canceller (HPEC)
Think of what you just said. You just said a Central Processing Unit is an Application Specific Integrated Circuit. If you say so.LOL! -Original Message- From: Andrew Kohlsmith [mailto:[EMAIL PROTECTED] Sent: Wednesday, February 14, 2007 12:26 PM To: asterisk-users@lists.digium.com Subject: Re: [asterisk-users] The High Performance Echo Canceller (HPEC) On Wednesday 14 February 2007 11:17 am, shadowym wrote: I gotta take issue with your comments that a HWEC is just software running on a DSP. In the case of Octasic, it's an ASIC. How it does EC is VERY different because.it's done completely in hardware, not firmware loaded into memory and run on a specialized CPU! Yes, the ASIC does contain an DSP but it is customized for EC. You cannot think of it as a CPU. Why not? A DSP is a CPU which has been designed to do mathematical functions very quickly, generally especially with respect to matrix math. I mean think of what you just said. You could just as easily have said A CPU ... it's an ASIC. Everything it does is completely in hardware. -A. ___ --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
RE: [asterisk-users] The High Performance Echo Canceller (HPEC)
That is why people use FPGA's. Google FPGA vs ASIC vs CPU if you want to educate yourself. -Original Message- From: Nic Bellamy [mailto:[EMAIL PROTECTED] Sent: Wednesday, February 14, 2007 1:53 PM To: Asterisk Users Mailing List - Non-Commercial Discussion Subject: Re: [asterisk-users] The High Performance Echo Canceller (HPEC) shadowym wrote: I gotta take issue with your comments that a HWEC is just software running on a DSP. In the case of Octasic, it's an ASIC. How it does EC is VERY different because.it's done completely in hardware, not firmware loaded into memory and run on a specialized CPU! Yes, the ASIC does contain an DSP but it is customized for EC. You cannot think of it as a CPU. You've obviously missed the fact that the Octasic chips have loadable firmware. Without being privy to any internal Octasic information, all I can guess is that their ASIC is a customised DSP core with perhaps more on-chip fast memory for FIR coefficient storage, and perhaps custom instructions/custom logic blocks specifically designed to improve the performance for the type of mathematical operations required for echo cancellation. Nobody in their right mind is going to do this entirely in custom circuitry - if you find a bug in your algorithm, or a way to improve things, what then - spend a few million on getting your chip rebatched and tell your users get their soldering irons out? Anyway, I'm going to shut up now before I get carried away and start a flame war :-) Cheers, Nic. -Original Message- From: Nic Bellamy [mailto:[EMAIL PROTECTED] Sent: Tuesday, February 13, 2007 5:43 PM To: Asterisk Users Mailing List - Non-Commercial Discussion Subject: Re: [asterisk-users] The High Performance Echo Canceller (HPEC) shadowym wrote: Interesting, Is this just a more advanced software echo canceller or software with hardware hooks or software with hardware assisted processing? A more advanced software canceller (there's no magical thing that makes hardware echo cancellers better, it's still software, but it's running on a DSP so it has more grunt available to it). It's licensed from Adaptive Digital Technologies - G.168 compliant, and supports up to 1024 taps (128ms) of tail coverage. Comes as a binary blob, but such is life. How would it compare to a true hardware echo canceller like the one Sangoma uses. Besides the extra CPU cycles required. Quite comparable - not sure if Octasic (as used by Sangoma and the latest Digium cards) or ADT would win in a shootout, but they're both in the same quality class. The main issue is going to be CPU usage - getting this going at 1024 taps on a full T1/E1 span would likely require two fast CPUs with the interrupts distributed evenly between them... and even then, *shrug* Cheers, Nic. -Original Message- From: Nic Bellamy [mailto:[EMAIL PROTECTED] Sent: Tuesday, February 13, 2007 12:41 PM To: Asterisk Users Mailing List - Non-Commercial Discussion Subject: Re: [asterisk-users] The High Performance Echo Canceller (HPEC) Larry Shields wrote: I recently read about the following new technologies from Digium. Has anyone tried the new HPEC or knows when it will be available? It's out now, and I've tried it - the difference between HPEC and MG2 from trunk is stunning - in situations with bad echo where MG2 can take ten or more seconds to converge to a reasonable degree, HPEC does it in perhaps 300ms - converging on my intake of breath before I say hello, and absolutely no echo after that unless I purposefully go out of my way to screw it up (whistling/blowing into the handpiece for instance - even then, the malfunction is minimal). You can now buy it from the Digium website (US$10 per channel), or if you have an in-warranty Digium card, email through the serial numbers to Digium support and they'll give you a key (this is what I did). You'll need Zaptel 1.2.13 to make it go. It does take quite a bit of CPU though - perhaps 70% more compared
Re: [asterisk-users] The High Performance Echo Canceller (HPEC)
On Wednesday 14 February 2007 6:00 pm, shadowym wrote: Think of what you just said. You just said a Central Processing Unit is an Application Specific Integrated Circuit. If you say so.LOL! Do you disagree that a CPU is not an integrated circuit specialized in dealing with the application of computing? Honestly, you're arguing against people who are in the electronics design and telecommunications industries... I myself have been in electronics design for over a decade, and others here have similar telecommunications experience. CPUs can't do EC well is just a garbage CS-freshman statement. We've pointed out examples of where general CPUs are doing heavy DSP work and you sit there with your fingers in your ears, saying la la la la la... can't hear you! Honestly man, look around and try to see that there are others who know what they're talking about. general-purpose CPUs *can* do signal processing, and modern CPUs have elements which make them VERY DSP like... to the point where the bottleneck isn't (and hasn't for a while now) been the CPU processing capability; it's been in keeping it fed with data to keep it from stalling, and in keeping its FPU busy without stalling out its general processing abilities. -A. ___ --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
RE: [asterisk-users] The High Performance Echo Canceller (HPEC)
I generally agree with this. I guess I just did not explain it very well. -Original Message- From: Andrew Kohlsmith [mailto:[EMAIL PROTECTED] Sent: Wednesday, February 14, 2007 2:12 PM To: asterisk-users@lists.digium.com Subject: Re: [asterisk-users] The High Performance Echo Canceller (HPEC) On Wednesday 14 February 2007 4:12 pm, shadowym wrote: The algorithms may be similar but EC is an infinitely variable non-linear(analog) process. A CPU cannot do that. You can fake it by performing cpu intensive rapid calculations one after another but it is fundamentally not an analog processor. HWEC is designed to deal with the analog process on an instant by instant basis performing parallel computations. A CPU cannot do that at ANY clock speed. I think you are very sorely mistaken. I've done DSP work on general-purpose CPUs for many years. All current processors have SIMD, which, until the i586 (for Intel), was more or less only in DSPs. Steven Critchfield has been doing DSP work (spandsp) for much longer than I have, and is much better at it than I will ever be. :-) Anything a DSP can do, a general-purpose CPU can do, but very likely slower. There is no magic. There is nothing particularly special about ASICs or DSPs that general-purpose CPUs can't do; it's all a matter of how quickly it can do it and how much you're willing to consume in system resources. -A. ___ --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
RE: [asterisk-users] The High Performance Echo Canceller (HPEC)
Of course it is all digital. It can also do the entire process in one clock cycle I would imagine. A CPU, I don't know. Maybe 100's of thousands. For a real time environment that is an important distinction. What I am debating is the people who are saying ASIC's and CPU's are the same thing. Hardly! -Original Message- From: Matthew Fredrickson [mailto:[EMAIL PROTECTED] Sent: Wednesday, February 14, 2007 2:18 PM To: Asterisk Users Mailing List - Non-Commercial Discussion Subject: Re: [asterisk-users] The High Performance Echo Canceller (HPEC) On Feb 14, 2007, at 3:12 PM, shadowym wrote: The algorithms may be similar but EC is an infinitely variable non-linear(analog) process. A CPU cannot do that. You can fake it by performing cpu intensive rapid calculations one after another but it is fundamentally not an analog processor. HWEC is designed to deal with the analog process on an instant by instant basis performing parallel computations. A CPU cannot do that at ANY clock speed. I don't think you are seeing this clearly. The octasic is a processor. It has firmware that loads. Though it maybe a specialized processor with instructions that help with echo cancellation, by the time that a HW echo canceller sees the data it is very much not analog anymore. It has already gone through an analog to digital converter and the algorithms and math that are used to cancel echo are done in the digital domain. Modern echo cancellation is not done in continuous time, it is done in the digital, discrete time. That means sampled, and coming in through a TDM bus of some sort. Not analog. Matthew Fredrickson ___ --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
Re: [asterisk-users] The High Performance Echo Canceller (HPEC)
shadowym wrote: The algorithms may be similar but EC is an infinitely variable non-linear(analog) process. A CPU cannot do that. You can fake it by performing cpu intensive rapid calculations one after another but it is fundamentally not an analog processor. HWEC is designed to deal with the analog process on an instant by instant basis performing parallel computations. A CPU cannot do that at ANY clock speed. You seem to have absolutely no idea what you are talking about. Perhaps it would be better to speed your time reading than spouting garbage? Steve ___ --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
Re: [asterisk-users] The High Performance Echo Canceller (HPEC)
Larry Shields wrote: I recently read about the following new technologies from Digium. Has anyone tried the new HPEC or knows when it will be available? It's out now, and I've tried it - the difference between HPEC and MG2 from trunk is stunning - in situations with bad echo where MG2 can take ten or more seconds to converge to a reasonable degree, HPEC does it in perhaps 300ms - converging on my intake of breath before I say hello, and absolutely no echo after that unless I purposefully go out of my way to screw it up (whistling/blowing into the handpiece for instance - even then, the malfunction is minimal). You can now buy it from the Digium website (US$10 per channel), or if you have an in-warranty Digium card, email through the serial numbers to Digium support and they'll give you a key (this is what I did). You'll need Zaptel 1.2.13 to make it go. It does take quite a bit of CPU though - perhaps 70% more compared to MG2-trunk for the same number of taps from my rough measurements. Cheers, Nic. -- Nic Bellamy, Head Of Engineering, Vadacom Ltd - http://www.vadacom.co.nz/ ___ --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
RE: [asterisk-users] The High Performance Echo Canceller (HPEC)
Will this work with SIP channels? I get zero echo out the PRI but I do get it occasionally on a LD provider (SIP) we use. The stock * install doesn't appear to be doing anything stopping echo on those channels. Bill -Original Message- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On Behalf Of Nic Bellamy Sent: Tuesday, February 13, 2007 3:41 PM To: Asterisk Users Mailing List - Non-Commercial Discussion Subject: Re: [asterisk-users] The High Performance Echo Canceller (HPEC) Larry Shields wrote: I recently read about the following new technologies from Digium. Has anyone tried the new HPEC or knows when it will be available? It's out now, and I've tried it - the difference between HPEC and MG2 from trunk is stunning - in situations with bad echo where MG2 can take ten or more seconds to converge to a reasonable degree, HPEC does it in perhaps 300ms - converging on my intake of breath before I say hello, and absolutely no echo after that unless I purposefully go out of my way to screw it up (whistling/blowing into the handpiece for instance - even then, the malfunction is minimal). You can now buy it from the Digium website (US$10 per channel), or if you have an in-warranty Digium card, email through the serial numbers to Digium support and they'll give you a key (this is what I did). You'll need Zaptel 1.2.13 to make it go. It does take quite a bit of CPU though - perhaps 70% more compared to MG2-trunk for the same number of taps from my rough measurements. Cheers, Nic. -- Nic Bellamy, Head Of Engineering, Vadacom Ltd - http://www.vadacom.co.nz/ ___ --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 ___ --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
Re: [asterisk-users] The High Performance Echo Canceller (HPEC)
Bill Gibbs wrote: Will this work with SIP channels? I get zero echo out the PRI but I do get it occasionally on a LD provider (SIP) we use. The stock * install doesn't appear to be doing anything stopping echo on those channels. Nope, it won't help - echo cancellation needs to be performed as close to the source of the echo as possible. When you've got SIP in the mix, you've got variable network delays, packet loss, jitter buffer interpolation and various other things to think about, and this would make an echo cancellers job orders of magnitude harder (and it's already a pretty hard problem). While it would be technically possible to echo-cancel SIP channels, it'd be _extremely_ CPU intensive (you'd need massive tail coverage) and probably not do a very good job. If you're getting echo from a VoIP-PSTN provider, they need to do something about it themselves - by the time it gets to you, it's too late. Cheers, Nic. -Original Message- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On Behalf Of Nic Bellamy Sent: Tuesday, February 13, 2007 3:41 PM To: Asterisk Users Mailing List - Non-Commercial Discussion Subject: Re: [asterisk-users] The High Performance Echo Canceller (HPEC) Larry Shields wrote: I recently read about the following new technologies from Digium. Has anyone tried the new HPEC or knows when it will be available? It's out now, and I've tried it - the difference between HPEC and MG2 from trunk is stunning - in situations with bad echo where MG2 can take ten or more seconds to converge to a reasonable degree, HPEC does it in perhaps 300ms - converging on my intake of breath before I say hello, and absolutely no echo after that unless I purposefully go out of my way to screw it up (whistling/blowing into the handpiece for instance - even then, the malfunction is minimal). You can now buy it from the Digium website (US$10 per channel), or if you have an in-warranty Digium card, email through the serial numbers to Digium support and they'll give you a key (this is what I did). You'll need Zaptel 1.2.13 to make it go. It does take quite a bit of CPU though - perhaps 70% more compared to MG2-trunk for the same number of taps from my rough measurements. Cheers, Nic. -- Nic Bellamy, Head Of Engineering, Vadacom Ltd - http://www.vadacom.co.nz/ ___ --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
RE: [asterisk-users] The High Performance Echo Canceller (HPEC)
Interesting, Is this just a more advanced software echo canceller or software with hardware hooks or software with hardware assisted processing? How would it compare to a true hardware echo canceller like the one Sangoma uses. Besides the extra CPU cycles required. -Original Message- From: Nic Bellamy [mailto:[EMAIL PROTECTED] Sent: Tuesday, February 13, 2007 12:41 PM To: Asterisk Users Mailing List - Non-Commercial Discussion Subject: Re: [asterisk-users] The High Performance Echo Canceller (HPEC) Larry Shields wrote: I recently read about the following new technologies from Digium. Has anyone tried the new HPEC or knows when it will be available? It's out now, and I've tried it - the difference between HPEC and MG2 from trunk is stunning - in situations with bad echo where MG2 can take ten or more seconds to converge to a reasonable degree, HPEC does it in perhaps 300ms - converging on my intake of breath before I say hello, and absolutely no echo after that unless I purposefully go out of my way to screw it up (whistling/blowing into the handpiece for instance - even then, the malfunction is minimal). You can now buy it from the Digium website (US$10 per channel), or if you have an in-warranty Digium card, email through the serial numbers to Digium support and they'll give you a key (this is what I did). You'll need Zaptel 1.2.13 to make it go. It does take quite a bit of CPU though - perhaps 70% more compared to MG2-trunk for the same number of taps from my rough measurements. Cheers, Nic. -- Nic Bellamy, Head Of Engineering, Vadacom Ltd - http://www.vadacom.co.nz/ ___ --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
Re: [asterisk-users] The High Performance Echo Canceller (HPEC)
shadowym wrote: Interesting, Is this just a more advanced software echo canceller or software with hardware hooks or software with hardware assisted processing? A more advanced software canceller (there's no magical thing that makes hardware echo cancellers better, it's still software, but it's running on a DSP so it has more grunt available to it). It's licensed from Adaptive Digital Technologies - G.168 compliant, and supports up to 1024 taps (128ms) of tail coverage. Comes as a binary blob, but such is life. How would it compare to a true hardware echo canceller like the one Sangoma uses. Besides the extra CPU cycles required. Quite comparable - not sure if Octasic (as used by Sangoma and the latest Digium cards) or ADT would win in a shootout, but they're both in the same quality class. The main issue is going to be CPU usage - getting this going at 1024 taps on a full T1/E1 span would likely require two fast CPUs with the interrupts distributed evenly between them... and even then, *shrug* Cheers, Nic. -Original Message- From: Nic Bellamy [mailto:[EMAIL PROTECTED] Sent: Tuesday, February 13, 2007 12:41 PM To: Asterisk Users Mailing List - Non-Commercial Discussion Subject: Re: [asterisk-users] The High Performance Echo Canceller (HPEC) Larry Shields wrote: I recently read about the following new technologies from Digium. Has anyone tried the new HPEC or knows when it will be available? It's out now, and I've tried it - the difference between HPEC and MG2 from trunk is stunning - in situations with bad echo where MG2 can take ten or more seconds to converge to a reasonable degree, HPEC does it in perhaps 300ms - converging on my intake of breath before I say hello, and absolutely no echo after that unless I purposefully go out of my way to screw it up (whistling/blowing into the handpiece for instance - even then, the malfunction is minimal). You can now buy it from the Digium website (US$10 per channel), or if you have an in-warranty Digium card, email through the serial numbers to Digium support and they'll give you a key (this is what I did). You'll need Zaptel 1.2.13 to make it go. It does take quite a bit of CPU though - perhaps 70% more compared to MG2-trunk for the same number of taps from my rough measurements. Cheers, Nic. -- Nic Bellamy, Head Of Engineering, Vadacom Ltd - http://www.vadacom.co.nz/ ___ --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 -- Nic Bellamy, Head Of Engineering, Vadacom Ltd - http://www.vadacom.co.nz/ ___ --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