From: Sangchul Lee Date: Mon, 27 May 2024 06:40:10 +0000 (+0900) Subject: webrtc_source_private: Set picture-id-mode in case of VP8 payloader X-Git-Tag: accepted/tizen/unified/20240621.010426^0 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=17e92a5dcf40ad3a82cde8fa3c1cb41652f2ccb3;p=platform%2Fcore%2Fapi%2Fwebrtc.git webrtc_source_private: Set picture-id-mode in case of VP8 payloader 7-bit picture id has been set to vp8 payloader. It has also been verified with Chrome browser. [Version] 1.1.4 [Issue Type] Compatibility Change-Id: Ib05694631fbb1424ba0c21194f103e94b9484f24 Signed-off-by: Sangchul Lee --- diff --git a/packaging/capi-media-webrtc.spec b/packaging/capi-media-webrtc.spec index e82470b5..7050e31d 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: 1.1.3 +Version: 1.1.4 Release: 0 Group: Multimedia/API License: Apache-2.0 diff --git a/src/webrtc_source_private.c b/src/webrtc_source_private.c index c871ba5e..1035e100 100644 --- a/src/webrtc_source_private.c +++ b/src/webrtc_source_private.c @@ -978,6 +978,15 @@ skip_encoder: if (!source->av[idx].payloader_factory_name) { GstElementFactory *factory = gst_element_get_factory(payloader); source->av[idx].payloader_factory_name = g_strdup(GST_OBJECT_NAME(factory)); + if (!g_strcmp0(source->av[idx].payloader_factory_name, "rtpvp8pay")) { + /* NOTE: picture-id-mode has been set for compatibility with mediasoup.*/ + #define VP8_PAYLOADER_7BIT_PICTURE_ID 1 /* 7-bit Picture ID */ + g_object_set(G_OBJECT(payloader), + "picture-id-mode", VP8_PAYLOADER_7BIT_PICTURE_ID, + NULL); + LOG_DEBUG("[%s] set picture-id-mode [%d]", + source->av[idx].payloader_factory_name, VP8_PAYLOADER_7BIT_PICTURE_ID); + } } if (!is_simulcast) {