[Asterisk-video] How can I close correctly a channel driver?

Carlo Rossi rossicar at dei.unipd.it
Sun Nov 2 07:56:49 CST 2008


Hi,

I'm developing a new channel driver for Asterisk (It's my master thesis 
at university), which permits to make a 3G-324M video call using 
Asterisk, app_h324m and a  common PC umts modem. Now this driver is 
partially complete, and if I "call" the modem I see on my mobile the 
video captured by a webcam on my PC, and viceversa.
I've a problem when I try to close the conversation: when I hang-up the 
call on my mobile, the channel driver stops working,
so it is impossible to make a second call, and when I stop asterisk with 
"stop now" command, I receive
a nice segmentation fault when H324MSessionEnd(id) is called:

#0  0x00007f0f62c3d263 in pthread_mutex_lock () from 
/lib/libpthread.so.0          
#1  0x00007f0f61cc31b3 in PTimedMutex::Wait () from 
/usr/lib/libpt_linux_x86_64_r.so.1.10.10
#2  0x00007f0f61cd2978 in PTimer::~PTimer () from 
/usr/lib/libpt_linux_x86_64_r.so.1.10.10 
#3  0x00007f0f623de999 in H245Negotiator::~H245Negotiator () from 
/usr/lib/libh323_linux_x86_64_n.so.1.18.0
#4  0x00007f0f5a49deab in ~H245MasterSlave (this=0x844150) at 
H245MasterSlave.cpp:37                      
#5  0x00007f0f5a3b5ddc in ~H324MControlChannel (this=0x844ac0) at 
H324MControlChannel.cpp:50              
#6  0x00007f0f5a3b2ef5 in ~H324MSession (this=0x829ad0) at 
H324MSession.cpp:46                            
#7  0x00007f0f5a71bd24 in app_h324m_loopback (chan=0x8285d0, data=0x0) 
at app_h324m.c:72

There is a simple way to close the pseudo channel correctly without 
generate these errors?

Thanks!

Carlo



More information about the asterisk-video mailing list