webrtcbin: connect rtp funnel after updating ptmaps
authorMathieu Duponchelle <mathieu@centricular.com>
Tue, 21 Jan 2020 11:14:49 +0000 (12:14 +0100)
committerMathieu Duponchelle <mduponchelle1@gmail.com>
Tue, 21 Jan 2020 11:17:38 +0000 (11:17 +0000)
We need the streams' pt maps updated before requesting pads
on rtpbin, because this is what will trigger the requesting
of FEC encoders, and our handler for this request looks for
the payload types in the relevant stream's pt map.

Fixes #1187

ext/webrtc/gstwebrtcbin.c

index 8ecedb7..a28d914 100644 (file)
@@ -4027,12 +4027,12 @@ _update_transceivers_from_sdp (GstWebRTCBin * webrtc, SDPSource source,
     bundle_stream = _get_or_create_transport_stream (webrtc, bundle_idx,
         _message_media_is_datachannel (sdp->sdp, bundle_idx));
 
-    _connect_rtpfunnel (webrtc, bundle_idx);
-
     g_array_set_size (bundle_stream->ptmap, 0);
     for (i = 0; i < gst_sdp_message_medias_len (sdp->sdp); i++) {
       _update_transport_ptmap_from_media (webrtc, bundle_stream, sdp->sdp, i);
     }
+
+    _connect_rtpfunnel (webrtc, bundle_idx);
   }
 
   for (i = 0; i < gst_sdp_message_medias_len (sdp->sdp); i++) {