}
}
-static void __invoke_peer_connection_state_change_cb(webrtc_s *webrtc, GstWebRTCPeerConnectionState state)
+static void __invoke_peer_connection_state_change_cb(webrtc_s *webrtc, webrtc_peer_connection_state_e state)
{
webrtc_callbacks_s *cb;
cb = &webrtc->peer_connection_state_change_cb;
- LOG_INFO("webrtc[%p] peer connection state is changed to [%s]", webrtc, __peer_connection_state_info[state].str);
+ LOG_INFO("webrtc[%p] peer connection state is changed to [%u]", webrtc, state);
if (cb->callback) {
LOG_DEBUG(">>> callback[%p] user_data[%p]", cb->callback, cb->user_data);
- ((webrtc_peer_connection_state_change_cb)(cb->callback))((webrtc_h)webrtc, __peer_connection_state_info[state].state, cb->user_data);
+ ((webrtc_peer_connection_state_change_cb)(cb->callback))((webrtc_h)webrtc, state, cb->user_data);
LOG_DEBUG("<<< end of the callback");
}
}
//LCOV_EXCL_STOP
-static void __invoke_signaling_state_change_cb(webrtc_s *webrtc, GstWebRTCPeerConnectionState state)
+static void __invoke_signaling_state_change_cb(webrtc_s *webrtc, webrtc_signaling_state_e state)
{
webrtc_callbacks_s *cb;
cb = &webrtc->signaling_state_change_cb;
- LOG_INFO("webrtc[%p] signaling state is changed to [%s]", webrtc, __signaling_state_info[state].str);
+ LOG_INFO("webrtc[%p] signaling state is changed to [%u]", webrtc, state);
if (cb->callback) {
LOG_DEBUG(">>> callback[%p] user_data[%p]", cb->callback, cb->user_data);
- ((webrtc_signaling_state_change_cb)(cb->callback))((webrtc_h)webrtc, __signaling_state_info[state].state, cb->user_data);
+ ((webrtc_signaling_state_change_cb)(cb->callback))((webrtc_h)webrtc, state, cb->user_data);
LOG_DEBUG("<<< end of the callback");
}
}
-static void __invoke_ice_gathering_state_change_cb(webrtc_s *webrtc, GstWebRTCICEGatheringState state)
+static void __invoke_ice_gathering_state_change_cb(webrtc_s *webrtc, webrtc_ice_gathering_state_e state)
{
webrtc_callbacks_s *cb;
cb = &webrtc->ice_gathering_state_change_cb;
- LOG_INFO("webrtc[%p] ICE gathering state is changed to [%s]", webrtc, __ice_gathering_state_info[state].str);
+ LOG_INFO("webrtc[%p] ICE gathering state is changed to [%u]", webrtc, state);
if (cb->callback) {
LOG_DEBUG(">>> callback[%p] user_data[%p]", cb->callback, cb->user_data);
- ((webrtc_ice_gathering_state_change_cb)(cb->callback))((webrtc_h)webrtc, __ice_gathering_state_info[state].state, cb->user_data);
+ ((webrtc_ice_gathering_state_change_cb)(cb->callback))((webrtc_h)webrtc, state, cb->user_data);
LOG_DEBUG("<<< end of the callback");
}
}
//LCOV_EXCL_START
-static void __invoke_ice_connection_state_change_cb(webrtc_s *webrtc, GstWebRTCICEConnectionState state)
+static void __invoke_ice_connection_state_change_cb(webrtc_s *webrtc, webrtc_ice_connection_state_e state)
{
webrtc_callbacks_s *cb;
cb = &webrtc->ice_connection_state_change_cb;
- LOG_INFO("webrtc[%p] ICE connection state is changed to [%s]", webrtc, __ice_connection_state_info[state].str);
+ LOG_INFO("webrtc[%p] ICE connection state is changed to [%u]", webrtc, state);
if (cb->callback) {
LOG_DEBUG(">>> callback[%p] user_data[%p]", cb->callback, cb->user_data);
- ((webrtc_ice_connection_state_change_cb)(cb->callback))((webrtc_h)webrtc, __ice_connection_state_info[state].state, cb->user_data);
+ ((webrtc_ice_connection_state_change_cb)(cb->callback))((webrtc_h)webrtc, state, cb->user_data);
LOG_DEBUG("<<< end of the callback");
}
}
break;
case IDLE_CB_TYPE_PEER_CONNECTION_STATE_CHANGE:
+ g_mutex_lock(&webrtc->mutex);
g_mutex_lock(&webrtc->event_src_mutex);
webrtc->idle_cb_event_source_ids[data->type] = 0;
g_mutex_unlock(&webrtc->event_src_mutex);
+ webrtc->negotiation_states.peer_connection_state = data->new.peer_connection_state;
+ g_mutex_unlock(&webrtc->mutex);
__invoke_peer_connection_state_change_cb(webrtc, data->new.peer_connection_state);
break;
case IDLE_CB_TYPE_SIGNALING_STATE_CHANGE:
+ g_mutex_lock(&webrtc->mutex);
g_mutex_lock(&webrtc->event_src_mutex);
webrtc->idle_cb_event_source_ids[data->type] = 0;
g_mutex_unlock(&webrtc->event_src_mutex);
+ webrtc->negotiation_states.signaling_state = data->new.signaling_state;
+ g_mutex_unlock(&webrtc->mutex);
__invoke_signaling_state_change_cb(webrtc, data->new.signaling_state);
break;
case IDLE_CB_TYPE_ICE_GATHERING_STATE_CHANGE:
+ g_mutex_lock(&webrtc->mutex);
g_mutex_lock(&webrtc->event_src_mutex);
webrtc->idle_cb_event_source_ids[data->type] = 0;
g_mutex_unlock(&webrtc->event_src_mutex);
+ webrtc->negotiation_states.ice_gathering_state = data->new.ice_gathering_state;
+ g_mutex_unlock(&webrtc->mutex);
__invoke_ice_gathering_state_change_cb(webrtc, data->new.ice_gathering_state);
break;
case IDLE_CB_TYPE_ICE_CONNECTION_STATE_CHANGE:
+ g_mutex_lock(&webrtc->mutex);
g_mutex_lock(&webrtc->event_src_mutex);
webrtc->idle_cb_event_source_ids[data->type] = 0;
g_mutex_unlock(&webrtc->event_src_mutex);
+ webrtc->negotiation_states.ice_connection_state = data->new.ice_connection_state;
+ g_mutex_unlock(&webrtc->mutex);
__invoke_ice_connection_state_change_cb(webrtc, data->new.ice_connection_state);
break;
g_object_get(webrtcbin, "connection-state", &state, NULL);
LOG_DEBUG("webrtc[%p] [PeerConnectionState] is changed to [%s]", webrtc, __peer_connection_state_info[state].str);
- webrtc->negotiation_states.peer_connection_state = __peer_connection_state_info[state].state;
- __post_peer_connection_state_change_cb_in_idle(webrtc, state);
+ __post_peer_connection_state_change_cb_in_idle(webrtc, __peer_connection_state_info[state].state);
switch (state) {
case GST_WEBRTC_PEER_CONNECTION_STATE_CONNECTED:
g_object_get(webrtcbin, "signaling-state", &state, NULL);
LOG_DEBUG("webrtc[%p] [SignalingState] is changed to [%s]", webrtc, __signaling_state_info[state].str);
- webrtc->negotiation_states.signaling_state = __signaling_state_info[state].state;
- __post_signaling_state_change_cb_in_idle(webrtc, state);
+ __post_signaling_state_change_cb_in_idle(webrtc, __signaling_state_info[state].state);
}
static void __webrtcbin_ice_gathering_state_cb(GstElement *webrtcbin, GParamSpec * pspec, gpointer user_data)
g_object_get(webrtcbin, "ice-gathering-state", &state, NULL);
LOG_DEBUG("webrtc[%p] [IceGatheringState] is changed to [%s]", webrtc, __ice_gathering_state_info[state].str);
- webrtc->negotiation_states.ice_gathering_state = __ice_gathering_state_info[state].state;
- __post_ice_gathering_state_change_cb_in_idle(webrtc, state);
+ __post_ice_gathering_state_change_cb_in_idle(webrtc, __ice_gathering_state_info[state].state);
}
//LCOV_EXCL_START
g_object_get(webrtcbin, "ice-connection-state", &state, NULL);
LOG_DEBUG("webrtc[%p] [IceConnectionState] is changed to [%s]", webrtc, __ice_connection_state_info[state].str);
- webrtc->negotiation_states.ice_connection_state = __ice_connection_state_info[state].state;
- __post_ice_connection_state_change_cb_in_idle(webrtc, state);
+ __post_ice_connection_state_change_cb_in_idle(webrtc, __ice_connection_state_info[state].state);
if (state == GST_WEBRTC_ICE_CONNECTION_STATE_FAILED)
__invoke_error_cb(webrtc, WEBRTC_ERROR_CONNECTION_FAILED);
static void __peer_connection_state_change_cb(webrtc_h webrtc, webrtc_peer_connection_state_e state, void *user_data)
{
- g_print("__peer_connection_state_change_cb() is invoked, state[%d]\n", state);
+ webrtc_peer_connection_state_e _state;
+
+ webrtc_get_peer_connection_state(webrtc, &_state);
+
+ g_print("__peer_connection_state_change_cb() is invoked, state[%u, %u]\n", state, _state);
}
static void __signaling_state_change_cb(webrtc_h webrtc, webrtc_signaling_state_e state, void *user_data)
{
connection_s *conn = (connection_s *)user_data;
+ webrtc_signaling_state_e _state;
- g_print("__signaling_state_change_cb() is invoked, state[%d]\n", state);
+ webrtc_get_signaling_state(webrtc, &_state);
+
+ g_print("__signaling_state_change_cb() is invoked, state[%u, %u]\n", state, _state);
if (conn->is_for_room && state == WEBRTC_SIGNALING_STATE_HAVE_REMOTE_OFFER) {
_webrtc_create_answer(conn, false);
static void __ice_gathering_state_change_cb(webrtc_h webrtc, webrtc_ice_gathering_state_e state, void *user_data)
{
- g_print("__ice_gathering_state_change_cb() is invoked, state[%d]\n", state);
+ webrtc_ice_gathering_state_e _state;
+
+ webrtc_get_ice_gathering_state(webrtc, &_state);
+
+ g_print("__ice_gathering_state_change_cb() is invoked, state[%u, %u]\n", state, _state);
}
static void __ice_connection_state_change_cb(webrtc_h webrtc, webrtc_ice_connection_state_e state, void *user_data)
{
- g_print("__ice_connection_state_change_cb() is invoked, state[%d]\n", state);
+ webrtc_ice_connection_state_e _state;
+
+ webrtc_get_ice_connection_state(webrtc, &_state);
+
+ g_print("__ice_connection_state_change_cb() is invoked, state[%u, %u]\n", state, _state);
}
static void _webrtc_set_all_negotiation_state_change_cbs(int index)
if (ret != WEBRTC_ERROR_NONE)
g_print("failed to webrtc_get_ice_connection_state()\n");
- g_print("peer_conn_state[%d] signaling_state[%d] ice_gathering_state[%d] ice_conn_state[%d]\n",
+ g_print("peer_conn_state[%u] signaling_state[%u] ice_gathering_state[%u] ice_conn_state[%u]\n",
peer_conn_state, signaling_state, ice_gathering_state, ice_conn_state);
}