webrtc_source_private: move pad probe position for loopback behind videoscale 32/279832/9 accepted/tizen/unified/20220824.042342 submit/tizen/20220823.080652
authorhj kim <backto.kim@samsung.com>
Thu, 18 Aug 2022 07:37:17 +0000 (16:37 +0900)
committerhj kim <backto.kim@samsung.com>
Tue, 23 Aug 2022 06:40:09 +0000 (06:40 +0000)
Some sources support video scale via videoscale element.
so, the stream for loopback should be collected behind videoscale element.

[Version] 0.3.207
[Issue Type] Improvement

Change-Id: Ia362797bd3c3f9f989def391660bf3cefe4f7fb4

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

index 0275d99221a1da8491a2f72b31226f8ee8d3122e..e418211177d67602c744ef0d6dc500ea204c5038 100644 (file)
@@ -1,6 +1,6 @@
 Name:       capi-media-webrtc
 Summary:    A WebRTC library in Tizen Native API
-Version:    0.3.206
+Version:    0.3.207
 Release:    0
 Group:      Multimedia/API
 License:    Apache-2.0
index fc72187ac954f63819048009547020fff5fc9904..58110a504f77866e76527f306739f2f26fbc64f9 100644 (file)
@@ -1088,10 +1088,16 @@ int _create_rest_of_elements(webrtc_s *webrtc, webrtc_gst_slot_s *source, bool n
                        goto error;
                APPEND_ELEMENT(*element_list, videoscaleCapsfilter);
 
+               _remove_probe_from_pad_for_render(source, idx);
+
                if ((caps = __make_default_raw_caps(source, &webrtc->ini))) {
                        PRINT_CAPS(caps, ELEMENT_NAME_VIDEOSCALE_CAPSFILTER);
                        g_object_set(G_OBJECT(videoscaleCapsfilter), "caps", caps, NULL);
+
+                       _set_caps_for_render(source, caps, idx);
                }
+
+               _add_probe_to_pad_for_render(source, idx, gst_element_get_static_pad(videoscaleCapsfilter, "src"), _source_data_probe_cb);
        }
 
        if (source->type == WEBRTC_MEDIA_SOURCE_TYPE_SCREEN && !source->zerocopy_enabled) {