webrtc_source: Use _av_tbl to get element name 47/266947/6
authorbackto.kim <backto.kim@samsung.com>
Tue, 23 Nov 2021 04:36:17 +0000 (13:36 +0900)
committerbackto.kim <backto.kim@samsung.com>
Thu, 25 Nov 2021 08:02:51 +0000 (17:02 +0900)
[Version] 0.3.13
[Issue Type] Refactoring

Change-Id: Ic6c2aacd44f4a01bf65f0b8ec5c91c011a93b843

packaging/capi-media-webrtc.spec
src/webrtc_source.c

index c3f6fd50202436268995b715e62188e2e4309537..7f4868bd6b3d7892ee0ed6309b5920be0c56079c 100644 (file)
@@ -1,6 +1,6 @@
 Name:       capi-media-webrtc
 Summary:    A WebRTC library in Tizen Native API
-Version:    0.3.12
+Version:    0.3.13
 Release:    0
 Group:      Multimedia/API
 License:    Apache-2.0
index 84f4d8c5ba26d08d0bf1e4e8e929a80efbd2245e..ff3501cf4f14f4b054fd1d8235884933a43c96ba 100644 (file)
@@ -1835,7 +1835,7 @@ static void __filesrc_pipeline_audio_stream_handoff_cb(GstElement *object, GstBu
        webrtc_gst_slot_s *source = data;
        GstFlowReturn gst_ret = GST_FLOW_OK;
 
-       g_signal_emit_by_name(gst_bin_get_by_name(source->bin, ELEMENT_NAME_AUDIO_APPSRC), "push-buffer", buffer, &gst_ret, NULL);
+       g_signal_emit_by_name(gst_bin_get_by_name(source->bin, _av_tbl[AV_IDX_AUDIO].appsrc_name), "push-buffer", buffer, &gst_ret, NULL);
        if (gst_ret != GST_FLOW_OK)
                LOG_ERROR("failed to 'push-buffer', gst_ret[0x%x]", gst_ret);
 }
@@ -1845,7 +1845,7 @@ static void __filesrc_pipeline_video_stream_handoff_cb(GstElement *object, GstBu
        webrtc_gst_slot_s *source = data;
        GstFlowReturn gst_ret = GST_FLOW_OK;
 
-       g_signal_emit_by_name(gst_bin_get_by_name(source->bin, ELEMENT_NAME_VIDEO_APPSRC), "push-buffer", buffer, &gst_ret, NULL);
+       g_signal_emit_by_name(gst_bin_get_by_name(source->bin, _av_tbl[AV_IDX_VIDEO].appsrc_name), "push-buffer", buffer, &gst_ret, NULL);
        if (gst_ret != GST_FLOW_OK)
                LOG_ERROR("failed to 'push-buffer', gst_ret[0x%x]", gst_ret);
 }
@@ -4517,15 +4517,13 @@ int _set_rtp_packet_drop_probability(webrtc_s *webrtc, unsigned int source_id, f
 
        if (source->type == WEBRTC_MEDIA_SOURCE_TYPE_FILE) {
                int count = 0;
-               if ((netsim = gst_bin_get_by_name(bin, ELEMENT_NAME_AUDIO_NETWORK_SIMULATOR))) {
-                       g_object_set(G_OBJECT(netsim), "drop-probability", probability, NULL);
-                       LOG_INFO("webrtc[%p] source_id[%u] probability[%f] applies to [%s]", webrtc, source_id, probability, GST_ELEMENT_NAME(netsim));
-                       count++;
-               }
-               if ((netsim = gst_bin_get_by_name(bin, ELEMENT_NAME_VIDEO_NETWORK_SIMULATOR))) {
-                       g_object_set(G_OBJECT(netsim), "drop-probability", probability, NULL);
-                       LOG_INFO("webrtc[%p] source_id[%u] probability[%f] applies to [%s]", webrtc, source_id, probability, GST_ELEMENT_NAME(netsim));
-                       count++;
+               int av_idx = 0;
+               for (av_idx = 0; av_idx < AV_IDX_MAX; av_idx++) {
+                       if ((netsim = gst_bin_get_by_name(bin, _av_tbl[av_idx].network_simulator_name))) {
+                               g_object_set(G_OBJECT(netsim), "drop-probability", probability, NULL);
+                               LOG_INFO("webrtc[%p] source_id[%u] probability[%f] applies to [%s]", webrtc, source_id, probability, GST_ELEMENT_NAME(netsim));
+                               count++;
+                       }
                }
                RET_VAL_IF(count == 0, WEBRTC_ERROR_INVALID_OPERATION, "could not find any element for network simulator");
                return WEBRTC_ERROR_NONE;
@@ -4557,17 +4555,16 @@ int _get_rtp_packet_drop_probability(webrtc_s *webrtc, unsigned int source_id, f
        RET_VAL_IF(bin == NULL, WEBRTC_ERROR_INVALID_OPERATION, "bin is NULL");
 
        if (source->type == WEBRTC_MEDIA_SOURCE_TYPE_FILE) {
-               if (!(netsim = gst_bin_get_by_name(bin, ELEMENT_NAME_AUDIO_NETWORK_SIMULATOR)) &&
-                       !(netsim = gst_bin_get_by_name(bin, ELEMENT_NAME_VIDEO_NETWORK_SIMULATOR))) {
-                       LOG_ERROR("could not find any element for network simulator");
-                       return WEBRTC_ERROR_INVALID_OPERATION;
+               int av_idx = 0;
+               for (av_idx = 0; av_idx < AV_IDX_MAX; av_idx++) {
+                       if ((netsim = gst_bin_get_by_name(bin, _av_tbl[av_idx].network_simulator_name)))
+                               break;
                }
+
        } else {
-               if (!(netsim = __find_element_in_bin(bin, DEFAULT_ELEMENT_NETWORK_SIMULATOR))) {
-                       LOG_ERROR("could not find any element for network simulator");
-                       return WEBRTC_ERROR_INVALID_OPERATION;
-               }
+               netsim = __find_element_in_bin(bin, DEFAULT_ELEMENT_NETWORK_SIMULATOR);
        }
+       RET_VAL_IF(!netsim, WEBRTC_ERROR_INVALID_OPERATION, "could not find any element for network simulator");
 
        g_object_get(G_OBJECT(netsim), "drop-probability", (gfloat *)probability, NULL);
        LOG_INFO("webrtc[%p] source_id[%u] probability[%f]", webrtc, source_id, *probability);