Hi, I'm using the following setup : Alice ---- IPPhone ------<LAN>----- Media gateway ----<PSTN> ------- Phone ---- Bob For certain calls, users complains about echo : they can ear their own voice in their handset, though media gateway echo cancel is turned on. I'm wondering how this echo cancelation engine is supposed to work. My understanding of echo is that most probably, when users complains about earing their own voice, that means that distant phone or nearby equipment is "leaking" : Bob's phone is sending Alice's voice signal back to Alice. So, to properly cancel, I would say Media gateway should substract from incoming signal the signal that left the media gateway few ms before. Discussing here and there, some say that Media Gateway never work this way : it would only filters out locally generated echo. Do you agree with that ? If positive, then what can you do, if Bob's phone generate much echo ? Regards -------------- next part -------------- An HTML attachment was scrubbed... URL: http://lists.digium.com/pipermail/asterisk-users/attachments/20081010/dd719a06/attachment.htm
Eric "ManxPower" Wieling
2008-Oct-10 17:27 UTC
[asterisk-users] Question about echo cancelation
All calls with a 2-wire analog piece have echo. You cannot perceive the echo because it happens so fast on non-VoIP connections. On VoIP calls you have significant extra latency while causes you you to perceive the echo. Echo must be removed before the call is converted to VoIP -- in your case the Media Gateway is the device that must remove echo. Olivier wrote:> Hi, > > I'm using the following setup : > Alice ---- IPPhone ------<LAN>----- Media gateway ----<PSTN> ------- Phone > ---- Bob > > For certain calls, users complains about echo : they can ear their own voice > in their handset, though media gateway echo cancel is turned on. > > I'm wondering how this echo cancelation engine is supposed to work. > My understanding of echo is that most probably, when users complains about > earing their own voice, that means that distant phone or nearby equipment is > "leaking" : Bob's phone is sending Alice's voice signal back to Alice. > > So, to properly cancel, I would say Media gateway should substract from > incoming signal the signal that left the media gateway few ms before. > > Discussing here and there, some say that Media Gateway never work this way : > it would only filters out locally generated echo. > Do you agree with that ? > If positive, then what can you do, if Bob's phone generate much echo ? > > Regards > > > > ------------------------------------------------------------------------ > > _______________________________________________ > -- Bandwidth and Colocation Provided by http://www.api-digital.com -- > > asterisk-users mailing list > To UNSUBSCRIBE or update options visit: > http://lists.digium.com/mailman/listinfo/asterisk-users >-- Consulting for Asterisk, Polycom, Sangoma, Digium, Cisco, LAN, WAN, QoS, T-1, PRI, Frame Relay, Linux, and network design. Based near Birmingham, AL. Now accepting clients worldwide. http://www.fnords.org/skillslist.html
I am running asterisk 1.2.27 and it dead today. The following is the backtrace of core file. Can anybody help me to identify what is the possible cause of crash? It seems the mysql connection causing problem in Thread 2. But I can not tell what exactly happened. This asterisk is using as ACD for over hundred agents. #> thread apply all bt ........ ........ Thread 6 (process 20135): #0 0x00fc17a2 in _dl_sysinfo_int80 () from /lib/ld-linux.so.2 #1 0x002dfdf4 in poll () from /lib/tls/libc.so.6 #2 0x080675a7 in ast_waitfor_nandfds (c=0xb7469b80, n=2, fds=0x0, nfds=0, exception=0x0, outfd=0x0, ms=0xb7469b4c) at channel.c:1644 #3 0x08069d86 in ast_channel_bridge (c0=0xb22bf9a8, c1=0xa2ae648, config=0xb746a7a0, fo=0xb7469c40, rc=0xb7469c44) at channel.c:1721 #4 0x00548f65 in ast_bridge_call (chan=0xb22bf9a8, peer=0xa2ae648, config=0xb746a7a0) at res_features.c:1365 #5 0x005a40ba in dial_exec_full (chan=0xb22bf9a8, data=Variable "data" is not available. ) at app_dial.c:1633 #6 0x005a6a33 in dial_exec (chan=0xfffffffc, data=0x7fffffff) at app_dial.c:1680 #7 0x08090bad in pbx_extension_helper (c=0xb22bf9a8, con=Variable "con" is not available. ) at pbx.c:574 #8 0x08091e86 in __ast_pbx_run (c=0xb22bf9a8) at pbx.c:2250 #9 0x08093a2c in pbx_thread (data=0xfffffffc) at pbx.c:2537 #10 0x00fa83cc in start_thread () from /lib/tls/libpthread.so.0 #11 0x002e9c3e in clone () from /lib/tls/libc.so.6 Thread 5 (process 11504): #0 0x00fc17a2 in _dl_sysinfo_int80 () from /lib/ld-linux.so.2 #1 0x002dfdf4 in poll () from /lib/tls/libc.so.6 #2 0x080675a7 in ast_waitfor_nandfds (c=0xb51e2e90, n=2, fds=0x0, nfds=0, exception=0x0, outfd=0x0, ms=0xb51e2e5c) at channel.c:1644 #3 0x08069d86 in ast_channel_bridge (c0=0xa2db720, c1=0xa12acf8, config=0xb51e37c0, fo=0xb51e2f50, rc=0xb51e2f54) at channel.c:1721 #4 0x00548f65 in ast_bridge_call (chan=0xa2db720, peer=0xa12acf8, config=0xb51e37c0) at res_features.c:1365 #5 0x004085bb in try_calling (qe=0xb51e3ac0, options=Variable "options" is not available. ) at app_queue.c:2602 #6 0x0040c6eb in queue_exec (chan=0xa2db720, data=0xb51e8010) at app_queue.c:3344 #7 0x08090bad in pbx_extension_helper (c=0xa2db720, con=Variable "con" is not available. ) at pbx.c:574 #8 0x08091e86 in __ast_pbx_run (c=0xa2db720) at pbx.c:2250 #9 0x08093a2c in pbx_thread (data=0xfffffffc) at pbx.c:2537 #10 0x00fa83cc in start_thread () from /lib/tls/libpthread.so.0 ---Type <return> to continue, or q <return> to quit--- #11 0x002e9c3e in clone () from /lib/tls/libc.so.6 Thread 4 (process 24033): #0 0x00fc17a2 in _dl_sysinfo_int80 () from /lib/ld-linux.so.2 #1 0x002dfdf4 in poll () from /lib/tls/libc.so.6 #2 0x080675a7 in ast_waitfor_nandfds (c=0xb6c56e90, n=2, fds=0x0, nfds=0, exception=0x0, outfd=0x0, ms=0xb6c56e5c) at channel.c:1644 #3 0x08069d86 in ast_channel_bridge (c0=0x9e9cb80, c1=0xaf0ce2f8, config=0xb6c577c0, fo=0xb6c56f50, rc=0xb6c56f54) at channel.c:1721 #4 0x00548f65 in ast_bridge_call (chan=0x9e9cb80, peer=0xaf0ce2f8, config=0xb6c577c0) at res_features.c:1365 #5 0x004085bb in try_calling (qe=0xb6c57ac0, options=Variable "options" is not available. ) at app_queue.c:2602 #6 0x0040c6eb in queue_exec (chan=0x9e9cb80, data=0xb6c5c010) at app_queue.c:3344 #7 0x08090bad in pbx_extension_helper (c=0x9e9cb80, con=Variable "con" is not available. ) at pbx.c:574 #8 0x08091e86 in __ast_pbx_run (c=0x9e9cb80) at pbx.c:2250 #9 0x08093a2c in pbx_thread (data=0xfffffffc) at pbx.c:2537 #10 0x00fa83cc in start_thread () from /lib/tls/libpthread.so.0 #11 0x002e9c3e in clone () from /lib/tls/libc.so.6 Thread 3 (process 30070): #0 0x00fc17a2 in _dl_sysinfo_int80 () from /lib/ld-linux.so.2 #1 0x002f6a9e in __lll_mutex_lock_wait () from /lib/tls/libc.so.6 #2 0x0028800b in _L_mutex_lock_3800 () from /lib/tls/libc.so.6 #3 0x00fa9e27 in pthread_mutex_lock () from /lib/tls/libpthread.so.0 #4 0x080668f5 in ast_read (chan=0x2f6a9e) at channel.c:1945 #5 0x08069d98 in ast_channel_bridge (c0=0xb015fea0, c1=0xa0b5c88, config=0xb4e937a0, fo=0xb4e92c40, rc=0xb4e92c44) at channel.c:3399 #6 0x00548f65 in ast_bridge_call (chan=0xb015fea0, peer=0xa0b5c88, config=0xb4e937a0) at res_features.c:1365 #7 0x005a40ba in dial_exec_full (chan=0xb015fea0, data=Variable "data" is not available. ) at app_dial.c:1633 #8 0x005a6a33 in dial_exec (chan=0xfffffffc, data=0x348ff4) at app_dial.c:1680 #9 0x08090bad in pbx_extension_helper (c=0xb015fea0, con=Variable "con" is not available. ) at pbx.c:574 #10 0x08091e86 in __ast_pbx_run (c=0xb015fea0) at pbx.c:2250 #11 0x08093a2c in pbx_thread (data=0xfffffffc) at pbx.c:2537 #12 0x00fa83cc in start_thread () from /lib/tls/libpthread.so.0 #13 0x002e9c3e in clone () from /lib/tls/libc.so.6 Thread 2 (process 21752): #0 0x00fc17a2 in _dl_sysinfo_int80 () from /lib/ld-linux.so.2 #1 0x002f6a9e in __lll_mutex_lock_wait () from /lib/tls/libc.so.6 #2 0x0028800b in _L_mutex_lock_3800 () from /lib/tls/libc.so.6 #3 0x0028bb61 in strcasecmp () from /lib/tls/libc.so.6 #4 0x08090667 in pbx_builtin_setvar_helper (chan=0xb01657f0, name=0xb6a41858 "connid", value=0xb6a41760 "5") at pbx.c:6030 #5 0x00460212 in ?? () from /usr/lib/asterisk/modules/app_addon_sql_mysql.so #6 0xb01657f0 in ?? () #7 0xb6a41858 in ?? () #8 0xb6a41760 in ?? () ---Type <return> to continue, or q <return> to quit--- #9 0x00000005 in ?? () #10 0x00000035 in ?? () #11 0x00000000 in ?? () Thread 1 (process 30108): #0 0x00fc17a2 in _dl_sysinfo_int80 () from /lib/ld-linux.so.2 #1 0x002487a5 in raise () from /lib/tls/libc.so.6 #2 0x0024a209 in abort () from /lib/tls/libc.so.6 #3 0x0027ca1a in __libc_message () from /lib/tls/libc.so.6 #4 0x002834c0 in _int_free () from /lib/tls/libc.so.6 #5 0x0028363a in free () from /lib/tls/libc.so.6 #6 0x08061e15 in ast_channel_free (chan=0x9ea42c0) at channel.c:972 #7 0x0806896d in ast_hangup (chan=0x9ea42c0) at channel.c:1403 #8 0x08092171 in __ast_pbx_run (c=0x9ea42c0) at pbx.c:2487 #9 0x08093a2c in pbx_thread (data=0x0) at pbx.c:2537 #10 0x00fa83cc in start_thread () from /lib/tls/libpthread.so.0 #11 0x002e9c3e in clone () from /lib/tls/libc.so.6 -------------- next part -------------- An HTML attachment was scrubbed... URL: http://lists.digium.com/pipermail/asterisk-users/attachments/20081010/ef6e80a0/attachment-0001.htm
Tilghman Lesher
2008-Oct-10 21:33 UTC
[asterisk-users] Help need for debuging the core file.
On Friday 10 October 2008 15:42:34 gary wrote:> I am running asterisk 1.2.27 and it dead today. The following is the > backtrace of core file. Can anybody help me to identify what is the > possible cause of crash? It seems the mysql connection causing problem in > Thread 2. But I can not tell what exactly happened. This asterisk is using > as ACD for over hundred agents.<snip>> Thread 1 (process 30108): > #0 0x00fc17a2 in _dl_sysinfo_int80 () from /lib/ld-linux.so.2 > #1 0x002487a5 in raise () from /lib/tls/libc.so.6 > #2 0x0024a209 in abort () from /lib/tls/libc.so.6 > #3 0x0027ca1a in __libc_message () from /lib/tls/libc.so.6 > #4 0x002834c0 in _int_free () from /lib/tls/libc.so.6 > #5 0x0028363a in free () from /lib/tls/libc.so.6<snip> Please read doc/valgrind.txt. -- Tilghman