From: Sangchul Lee Date: Wed, 14 Jul 2021 09:57:12 +0000 (+0900) Subject: webrtc_sink: Fix rendering issue getting late in case of the EVAS display X-Git-Tag: submit/tizen/20210729.023123~14 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=refs%2Fchanges%2F79%2F261279%2F4;p=platform%2Fcore%2Fapi%2Fwebrtc.git webrtc_sink: Fix rendering issue getting late in case of the EVAS display 'qos' and 'sync' properties are enabled to the element resposible for video frame handoff. [Version] 0.2.46 [Issue Type] Improvement Change-Id: I35fbc990637d6893d1d56b2dfe08a88b90ca3b04 Signed-off-by: Sangchul Lee --- diff --git a/packaging/capi-media-webrtc.spec b/packaging/capi-media-webrtc.spec index 8cc4499e..b6a1fd06 100644 --- a/packaging/capi-media-webrtc.spec +++ b/packaging/capi-media-webrtc.spec @@ -1,6 +1,6 @@ Name: capi-media-webrtc Summary: A WebRTC library in Tizen Native API -Version: 0.2.45 +Version: 0.2.46 Release: 0 Group: Multimedia/API License: Apache-2.0 diff --git a/src/webrtc_sink.c b/src/webrtc_sink.c index 999d2eff..466fe04b 100644 --- a/src/webrtc_sink.c +++ b/src/webrtc_sink.c @@ -146,7 +146,11 @@ static int __build_videosink(webrtc_s *webrtc, GstElement *decodebin, GstPad *sr gst_video_overlay_set_wl_window_wl_surface_id(GST_VIDEO_OVERLAY(videosink), sink->display->overlay_surface_id); } else if (sink->display->type == WEBRTC_DISPLAY_TYPE_EVAS) { - g_object_set(videosink, "signal-handoffs", TRUE, NULL); + g_object_set(G_OBJECT(videosink), + "sync", TRUE, + "qos", TRUE, + "signal-handoffs", TRUE, + NULL); _connect_and_append_signal(&sink->signals, (GObject *)videosink, "handoff", G_CALLBACK(_video_stream_decoded_cb), sink->display); } } @@ -800,7 +804,7 @@ int _add_forwarding_sink_bin(webrtc_s *webrtc, GstPad *src_pad, bool is_video) if (!fakesink) goto error_before_insert; - g_object_set(fakesink, "signal-handoffs", TRUE, NULL); + g_object_set(G_OBJECT(fakesink), "signal-handoffs", TRUE, NULL); _connect_and_append_signal(&sink->signals, (GObject *)fakesink, "handoff", G_CALLBACK(__encoded_stream_cb), sink); capsfilter = _create_element(DEFAULT_ELEMENT_CAPSFILTER, NULL);