Simulate RTP stream with VLC fails - what does the gst-launch command do (specifics)?

267 views
Skip to first unread message

W

unread,
Oct 10, 2019, 10:34:37 AM10/10/19
to kurento
This question is about the RTP streaming example/tutorial on the Kurento repo. To simulate an RTP stream the following gst-launch command was used. Everything works as expected on my machine. 
However, I wish to know what this command is comprised of, as I would like to simulate an RTP stream using a different tool, such as VLC.

All of my attempts with VLC have failed and I could not find any other helpful references online. No errors or logs anywhere, the stream simply does not show up on my application server.

Following is the gst-launch command:

I am asking this here as it was used in the official tutorial and I'd like to know what these parameters and flags are (especially SELF_ASSRC and SELF_VSSRC). 

Any help is appreciated!

PEER_A=33954 PEER_V=42342 PEER_IP=localhost \
SELF_PATH="video.mp4" \
SELF_A=5006 SELF_ASSRC=445566 \
SELF_V=5004 SELF_VSSRC=112233 \
bash -c 'gst-launch-1.0 -e \
  rtpbin name=r sdes="application/x-rtp-source-sdes,cname=(string)\"user\@example.com\"" \
  filesrc location="$SELF_PATH" ! decodebin name=d \
  d. ! queue ! audioconvert ! opusenc \
    ! rtpopuspay ! "application/x-rtp,payload=(int)96,clock-rate=(int)48000,ssrc=(uint)$SELF_ASSRC" \
    ! r.send_rtp_sink_0 \
  d. ! queue ! videoconvert ! x264enc tune=zerolatency \
    ! rtph264pay ! "application/x-rtp,payload=(int)103,clock-rate=(int)90000,ssrc=(uint)$SELF_VSSRC" \
    ! r.send_rtp_sink_1 \
  r.send_rtp_src_0 ! udpsink host=$PEER_IP port=$PEER_A bind-port=$SELF_A \
  r.send_rtcp_src_0 ! udpsink host=$PEER_IP port=$((PEER_A+1)) bind-port=$((SELF_A+1)) sync=false async=false \
  udpsrc port=$((SELF_A+1)) ! r.recv_rtcp_sink_0 \
  r.send_rtp_src_1 ! udpsink host=$PEER_IP port=$PEER_V bind-port=$SELF_V \
  r.send_rtcp_src_1 ! udpsink host=$PEER_IP port=$((PEER_V+1)) bind-port=$((SELF_V+1)) sync=false async=false \
  udpsrc port=$((SELF_V+1)) ! tee name=t \
    t. ! queue ! r.recv_rtcp_sink_1 \
    t. ! queue ! fakesink dump=true async=false'


Micael Gallego

unread,
Oct 11, 2019, 4:30:48 AM10/11/19
to kur...@googlegroups.com
Take a look to this page:


Best regards

Micael Gallego
Kurento / OpenVidu Project Lead


--
You received this message because you are subscribed to the Google Groups "kurento" group.
To unsubscribe from this group and stop receiving emails from it, send an email to kurento+u...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/kurento/f074c357-6091-4220-bf72-00bcc005b1e1%40googlegroups.com.

W

unread,
Oct 11, 2019, 8:41:54 AM10/11/19
to kurento
Thanks, Micael, but I already went through this.

What I cannot understand is why, when I open two RTP streams from VLC (one for video, and one for audio), and send it to the kurento IP (and ports) - from this tutorial, I am not receiving anything. 

I am wondering if there is something else gst-launch is doing that VLC is missing.

Thanks
To unsubscribe from this group and stop receiving emails from it, send an email to kur...@googlegroups.com.
Reply all
Reply to author
Forward
0 new messages