Gstreamer "udpsrc3: Internal data stream error." when compositing two rtsp streams

I’m able to stream a single rtsp stream with gstreamer, but when I try to composite them together I get an error.

gst-launch-1.0 \
    rtspsrc location=rtsp://192.168.10.176:8554/cam1 latency=100 \
    ! rtpjitterbuffer \
    ! rtph264depay \
    ! h264parse \
    ! avdec_h264 \
    ! videoconvert \
    ! videoscale \
    ! video/x-raw,width=640,height=480 \
    ! compositor name=comp \
    sink_0::xpos=0 sink_0::ypos=0 \
    sink_1::xpos=0 sink_1::ypos=320 \
    latency=10 \
    rtspsrc location=rtsp://192.168.10.176:8554/cam0 latency=100 \
    ! rtpjitterbuffer \
    ! rtph264depay \
    ! h264parse \
    ! avdec_h264 \
    ! videoconvert \
    ! videoscale \
    ! video/x-raw,width=640,height=480 \
    ! comp. -e

I’m trying to run that on my mac to consume the streams generated with the Jetson. There is a lot of output with debug level 4, but this is what surrounds the error that gets thrown. If it’s needed I can post more logs. What does “not-linked” mean? I’m can’t sort out what’s causing that error.

$ GST_DEBUG=4 ./composit-from-jetson.sh 2>&1 | rg -C5 "Internal data stream error"
0:00:01.489638000 29186 0x7fd156868180 INFO                    task gsttask.c:368:gst_task_func:<comp:src> Task going to paused
0:00:01.497993000 29186 0x7fd156868240 INFO                    task gsttask.c:368:gst_task_func:<rtpjitterbuffer1:src> Task going to paused
0:00:01.504243000 29186 0x7fd1568681e0 INFO                    task gsttask.c:368:gst_task_func:<rtpjitterbuffer0:src> Task going to paused
0:00:01.506464000 29186 0x7fd156860240 INFO                    task gsttask.c:368:gst_task_func:<rtpjitterbuffer3:src> Task going to paused
0:00:01.506469000 29186 0x7fd1568600c0 INFO                 basesrc gstbasesrc.c:3038:gst_base_src_loop:<udpsrc3> pausing after gst_pad_push() = not-linked
0:00:01.506505000 29186 0x7fd1568600c0 WARN                 basesrc gstbasesrc.c:3127:gst_base_src_loop:<udpsrc3> error: Internal data stream error.
0:00:01.506511000 29186 0x7fd1568600c0 WARN                 basesrc gstbasesrc.c:3127:gst_base_src_loop:<udpsrc3> error: streaming stopped, reason not-linked (-1)
0:00:01.506528000 29186 0x7fd1568600c0 INFO        GST_ERROR_SYSTEM gstelement.c:2235:gst_element_message_full_with_details:<udpsrc3> posting message: Internal data stream error.
ERROR: from element /GstPipeline:pipeline0/GstRTSPSrc:rtspsrc0/GstUDPSrc:udpsrc3: Internal data stream error.
Additional debug info:
../libs/gst/base/gstbasesrc.c(3127): gst_base_src_loop (): /GstPipeline:pipeline0/GstRTSPSrc:rtspsrc0/GstUDPSrc:udpsrc3:
streaming stopped, reason not-linked (-1)
0:00:01.506609000 29186 0x7fd1568600c0 INFO        GST_ERROR_SYSTEM gstelement.c:2262:gst_element_message_full_with_details:<udpsrc3> posted error message: Internal data stream error.
0:00:01.506639000 29186 0x7fd1568600c0 INFO                    task gsttask.c:368:gst_task_func:<udpsrc3:src> Task going to paused
Execution ended after 0:00:00.261399000
Setting pipeline to NULL ...
0:00:01.506703000 29186 0x7fd154d0d200 INFO              GST_STATES gstbin.c:2532:gst_bin_element_set_state:<comp> current PLAYING pending VOID_PENDING, desired next PAUSED
0:00:01.506714000 29186 0x7fd154d0d200 INFO              GST_STATES gstelement.c:2770:gst_element_continue_state:<comp> completed state change to PAUSED

Thank you in advance, this one is stumping me!

Hi,
Yo use software decoder in the command. Please try hardware decoder:

$ export DISPLAY=:0
$ gst-launch-1.0 rtspsrc location=rtsp://10.19.106.133:8554/test ! rtph264depay ! h264parse ! nvv4l2decoder ! nv3dsink rtspsrc location=rtsp://10.19.106.133:8554/test ! rtph264depay ! h264parse ! nvv4l2decoder ! nv3dsink window-x=300 window-y=100

To make sure the sources can be decoded and displayed in separate windows first.