webrtcbin: fix ulpfecenc passthrough pt
authorMatthew Waters <matthew@centricular.com>
Thu, 10 Mar 2022 04:36:00 +0000 (15:36 +1100)
committerGStreamer Marge Bot <gitlab-merge-bot@gstreamer-foundation.org>
Thu, 10 Mar 2022 16:20:03 +0000 (16:20 +0000)
ulpfecenc uses a value of pt=255 for passthrough.

Fixes: https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/1075
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1914>

subprojects/gst-plugins-bad/ext/webrtc/gstwebrtcbin.c

index 0fd1145..799ff6e 100644 (file)
@@ -4599,7 +4599,12 @@ _set_internal_rtpbin_element_props_from_stream (GstWebRTCBin * webrtc,
           trans, ulpfec_pt, red_pt);
 
       if (trans->ulpfecenc) {
-        g_object_set (trans->ulpfecenc, "pt", ulpfec_pt, "multipacket",
+        guint ulpfecenc_pt = ulpfec_pt;
+
+        if (ulpfecenc_pt == 0)
+          ulpfecenc_pt = 255;
+
+        g_object_set (trans->ulpfecenc, "pt", ulpfecenc_pt, "multipacket",
             rtp_trans->kind == GST_WEBRTC_KIND_VIDEO, "percentage",
             trans->fec_percentage, NULL);
       }