Sequence seen in the log file: clock thread in conference.c get_frame() locks the conf mutex pjsua thread in pjsua_call.c pjsua_call_on_media_update() locks pjsua mutex clock thread hits playback EOF condition and user EOF function is called. If user EOF function calls something like pjsua_player_destroy() then clock thread tries to acquire psjua mutex. But the pjsua thread has that. Resulting in deadlock for the pjsua thread and the clock thread. Workaround solution: Don't call pjsua_player_destroy() or anything blocking on pjsua mutex from EOF function. Simply signal the application thread from the EOF function...yea EOF has happened and let it do the pjsua_player_destroy(). David Clark -------------- next part -------------- An HTML attachment was scrubbed... URL: <http://lists.pjsip.org/pipermail/pjsip_lists.pjsip.org/attachments/20090511/c4d8e838/attachment.html>