LOG_INFO("set fec-percentage[%u] to transceiver[%p]", fec_percentage, transceiver);
}
-static gchar *__get_gst_mid_from_transceiver(bool is_audio, const char *transceiver_name)
+static gchar *__get_mid_from_transceiver_count(bool is_audio, unsigned int count)
{
- g_auto(GStrv) str_arr = NULL;
-
- RET_VAL_IF(transceiver_name == NULL, NULL, "transceiver_name is NULL");
-
- str_arr = g_strsplit(transceiver_name, "webrtctransceiver", 2);
- return g_strdup_printf("%s%s", is_audio ? "audio" : "video", str_arr[1]);
+ return g_strdup_printf("%s%u", is_audio ? "audio" : "video", count);
}
void _webrtcbin_on_new_transceiver_cb(GstElement *webrtcbin, GstWebRTCRTPTransceiver *transceiver, gpointer user_data)
source->av[j].transceiver = gst_object_ref(transceiver);
g_object_set(G_OBJECT(transceiver), "direction", __convert_transceiver_direction(source->av[j].direction)->gst, NULL);
- source->av[j].mid = __get_gst_mid_from_transceiver(j == AV_IDX_AUDIO, GST_OBJECT_NAME(transceiver));
+ source->av[j].mid = __get_mid_from_transceiver_count(j == AV_IDX_AUDIO, webrtc->transceiver_count++);
LOG_INFO("source->id[%u] source->av[%s][transceiver:%p, direction:%s, mid:%s]",
source->id, j == AV_IDX_AUDIO ? "AUDIO" : "VIDEO", source->av[j].transceiver,