Hello, I'm trying to connect Caller with callee when a playback finished. but when callee answer SEMS crash with stack :
Program received signal SIGSEGV, Segmentation fault. > [Switching to Thread 0x7ffff63cd700 (LWP 14271)] > 0x0000000000553558 in AmAudio::encode (this=0x7fffd0013850, size=32768) at > AmAudio.cpp:386 > 386 amci_codec_t* codec = fmt->getCodec(); > (gdb) bt > #0 0x0000000000553558 in AmAudio::encode (this=0x7fffd0013850, > size=32768) at AmAudio.cpp:386 > #1 0x0000000000552f98 in AmAudio::put (this=0x7fffd0013850, > system_ts=2230272, buffer=0x9b1570 "\b", input_sample_rate=8000, > size=32768) at AmAudio.cpp:327 > #2 0x000000000062ee66 in AmSession::readStreams (this=0x7fffd0002540, > ts=2230272, buffer=0x9b1570 "\b") at AmSession.cpp:1296 > #3 0x00000000005c7ddf in AmMediaProcessorThread::processAudio > (this=0x9b13f0, ts=2230272) at AmMediaProcessor.cpp:288 > #4 0x00000000005c7c1d in AmMediaProcessorThread::run (this=0x9b13f0) at > AmMediaProcessor.cpp:260 > #5 0x000000000065e41a in AmThread::_start (_t=0x9b13f0) at AmThread.cpp:66 > #6 0x00007ffff76ba182 in start_thread (arg=0x7ffff63cd700) at > pthread_create.c:312 > #7 0x00007ffff67f247d in clone () at > ../sysdeps/unix/sysv/linux/x86_64/clone.S:111 > (gdb) print fmt > $1 = {_M_ptr = 0x182017c01740168} here where i connectCallee void AnnounceCallerDialog::process(AmEvent* event) > { > > AmAudioEvent* audio_event_1 = dynamic_cast<AmAudioEvent*>(event); > if(audio_event_1 && (audio_event_1->event_id == AmAudioEvent::cleared)){ > > return; > } > > AnnouncePlayBackFinishEvent* audio_event = > dynamic_cast<AnnouncePlayBackFinishEvent*>(event); > if(audio_event ) > { > connectCallee(callee_addr, callee_uri,caller_addr,caller_uri); > } > > AmB2ABCallerSession::process(event); > } AnnouncePlayBackFinishEvent is an event fired by AnnouncePlayBack: public AmAudio Does it make sense ? Thank you, Ayoub
_______________________________________________ Semsdev mailing list Semsdev@lists.iptel.org http://lists.iptel.org/mailman/listinfo/semsdev