RTP streaming not displaying on host

Hello, I am trying to use RTP to display the camera on my linux host computer while i ssh into the jetson nano. i followed this procedure https://github.com/dusty-nv/jetson-inference/blob/master/docs/aux-streaming.md#viewing-rtp-remotely.

I enter this into the jetson nano:

video-viewer --bitrate=1000000 csi://0 rtp://<remote-ip>:1234 

using all of the ip addresses i could find on my computer and when i enter this into my computer

 $ gst-launch-1.0 -v udpsrc port=1234 \
 caps = "application/x-rtp, media=(string)video, clock-rate=(int)90000, encoding-name=(string)H264, payload=(int)96" ! \
 rtph264depay ! decodebin ! videoconvert ! autovideosink 

i get this:

castej@castej-HP-Spectre-x360-Convertible:~$ gst-launch-1.0 -v udpsrc port=1234  caps = "application/x-rtp, media=(string)video, clock-rate=(int)90000, encoding-name=(string)H264, payload=(int)96" !  rtph264depay ! decodebin ! videoconvert ! autovideosink
Setting pipeline to PAUSED ...
Pipeline is live and does not need PREROLL ...
/GstPipeline:pipeline0/GstUDPSrc:udpsrc0.GstPad:src: caps = application/x-rtp, media=(string)video, clock-rate=(int)90000, encoding-name=(string)H264, payload=(int)96
/GstPipeline:pipeline0/GstRtpH264Depay:rtph264depay0.GstPad:sink: caps = application/x-rtp, media=(string)video, clock-rate=(int)90000, encoding-name=(string)H264, payload=(int)96
Setting pipeline to PLAYING ...
New clock: GstSystemClock

and nothing ever happens. I have downloaded gstreamer as it was explained by the github.

does this work if im doing ssh over wifi? ive also tried VLC and it does not display

Hi,
We suggest try the setup mentioned in Jetson Nano FAQ

Q: Is there any example of running RTSP streaming?
Q: Is there an example for running UDP streaming?

To try and see if the two setups work first. And then try video-viewer

Hello, when i try UDP i get this error:

castej@castej-desktop:~$ gst-launch-1.0 videotestsrc is-live=1 ! video/x-raw,width=1280,height=720 ! timeoverlay valignment=4 halignment=1 ! nvvidconv ! 'video/x-raw(memory:NVMM),width=1280,height=720' ! tee name=t ! nvv4l2h264enc insert-sps-pps=1 idrinterval=15 ! h264parse ! rtph264pay ! udpsink host=10.19.106.10 port=5000 sync=0 t. ! queue ! nvegltransform ! nveglglessink sync=0
Setting pipeline to PAUSED ...

Using winsys: x11 
ERROR: Pipeline doesn't want to pause.
Got context from element 'eglglessink0': gst.egl.EGLDisplay=context, display=(GstEGLDisplay)NULL;
ERROR: from element /GstPipeline:pipeline0/nvv4l2h264enc:nvv4l2h264enc0: Cannot identify device '/dev/v4l2-nvenc'.
Additional debug info:
/dvs/git/dirty/git-master_linux/3rdparty/gst/gst-v4l2/gst-v4l2/v4l2_calls.c(637): gst_v4l2_open (): /GstPipeline:pipeline0/nvv4l2h264enc:nvv4l2h264enc0:
system error: No such file or directory
Setting pipeline to NULL ...
Freeing pipeline ...
castej@castej-desktop:

and for RSTP VLC shoots out an error when i put the rstp://<>:8554/test url that says the input can’t be opened and to check log for details

Hi,
The error print is not expected on default release:

ERROR: from element /GstPipeline:pipeline0/nvv4l2h264enc:nvv4l2h264enc0: Cannot identify device '/dev/v4l2-nvenc'.

Would suggest re-flash the system and try again. The setups are simple and should work well on default release. The latest release for Jetson Nano is Jetpack 4.6.4

Hello, sorry for the misunderstanding. I have both a jetson nano and a jetson orin nano, but now i understand this is only for the jetson nano.

now when i inout this command on the jetson nano:

$ gst-launch-1.0 videotestsrc is-live=1 ! video/x-raw,width=1280,height=720 ! timeoverlay valignment=4 halignment=1 ! nvvidconv ! 'video/x-raw(memory:NVMM),width=1280,height=720' ! tee name=t ! nvv4l2h264enc insert-sps-pps=1 idrinterval=15 ! h264parse ! rtph264pay ! udpsink host=10.19.106.10 port=5000 sync=0 t. ! queue ! nvegltransform ! nveglglessink sync=0

i get the test screen with all the colors and it works fine. but when i run the other command on my pc to try to get the video stream nothing happens i get this and it just loads and never does anything:

castej@castej-HP-Spectre-x360-Convertible:~$ gst-launch-1.0 udpsrc port=5000 ! 'application/x-rtp,encoding-name=H264,payload=96' ! rtph264depay ! avdec_h264 ! xvimagesink sync=0
Setting pipeline to PAUSED ...
Pipeline is live and does not need PREROLL ...
Setting pipeline to PLAYING ...
New clock: GstSystemClock

do i have to do it while i ssh in or anything?

Hi,

Please change the IP address to castej-HP-Spectre-x360-Convertible(the PC to receive the video stream)

There is no hardware encoder in Orin Nano and please change to software encoder if you would like to run UDP server on Orin Nano.

i was able to rstp into vlc using the jetson nano, thank you

1 Like

This topic was automatically closed 14 days after the last reply. New replies are no longer allowed.