RTP with FEC enabled stream fails

myamens mrayyamen at gmail.com
Wed May 12 04:41:57 UTC 2021

I am testing FEC integration for video streaming, so I have tested the
pipelines provided by the documentation for sending/receiving fec enabled
streams as follows:

gst-launch-1.0 udpsrc port=9001 caps="application/x-rtp" ! rtpstorage
size-time=220000000 ! rtpssrcdemux ! application/x-rtp, payload=96,
clock-rate=90000, media=video, encoding-name=H264 ! rtpjitterbuffer
do-lost=1 latency=200 !  rtpulpfecdec ! rtph264depay ! h264parse !
avdec_h264 ! videoconvert ! autovideosink sync=false

gst-launch-1.0 videotestsrc ! x264enc ! video/x-h264, profile=baseline !
rtph264pay pt=96 ! rtpulpfecenc percentage=100 ! udpsink port=9001 -v

These pipelines work fine and the video starts playing. If I restarted the
receiver pipeline then it will still play without problem. However, if I
restarted the sender pipeline, the receiver fails with the following
:00:54.028139185 29777 0x56351c03e4f0 WARN                 basesrc
gstbasesrc.c:3055:gst_base_src_loop:<udpsrc0> error: Internal data stream
0:00:54.028159073 29777 0x56351c03e4f0 WARN                 basesrc
gstbasesrc.c:3055:gst_base_src_loop:<udpsrc0> error: streaming stopped,
reason not-linked (-1)
ERROR: from element /GstPipeline:pipeline0/GstUDPSrc:udpsrc0: Internal data
stream error.
Additional debug info:
gstbasesrc.c(3055): gst_base_src_loop ():
streaming stopped, reason not-linked (-1)

I am suspecting that its due to ssrc is changing when the sender is
Is there any suggestion to resolve this issue?

Sent from: http://gstreamer-devel.966125.n4.nabble.com/

More information about the gstreamer-devel mailing list