cdevelop

Results 3 comments of cdevelop

@seven1240 Teacher Du and I explained this issue in detail.

SWITCH_DECLARE(switch_core_session_t *) switch_core_session_request_uuid(switch_endpoint_interface_t *endpoint_interface, switch_call_direction_t direction, switch_originate_flag_t originate_flags, switch_memory_pool_t **pool, const char *use_uuid) ... switch_mutex_init(&session->codec_init_mutex, SWITCH_MUTEX_NESTED, session->pool); switch_mutex_init(&session->codec_read_mutex, SWITCH_MUTEX_NESTED, session->pool); session->codec_write_mutex = session->codec_read_mutex; //switch_mutex_init(&session->codec_write_mutex, SWITCH_MUTEX_NESTED, session->pool); This will solve the...

The reasons for this problem are: Thread 2 switch_core_session_write_frame lock session->codec_write_mutex switch_mutex_lock(session->codec_write_mutex) Call an external function switch_core_session_receive_message sofia_receive_message Blocked switch_mutex_lock(tech_pvt->sofia_mutex) Thread 3 sofia_receive_message switch_mutex_lock(tech_pvt->sofia_mutex) switch_core_media_set_codec Blocked switch_mutex_lock(session->codec_write_mutex) The solution to...