Note: I’m not seeing the blue lights on the camera that I normally see. However, when I run
the jetson-inference video-viewer, camera works as I expected:
$ video-viewer /dev/video0 rtsp://127.0.0.1:8554 --input-codec=mjpeg --output-codec=mjpeg --bitrate=1000000
Check network to ensure test-launch process is running:
$sudo ss -ltnp
State Recv-Q Send-Q Local Address:Port Peer Address:Port Process
LISTEN 0 5 127.0.0.1:8554 0.0.0.0:* users:(("test-launch",pid=8748,fd=4))
Reading from port:
steven@development-orin:~$ gst-launch-1.0 rtspsrc location=rtsp://127.0.0.1:8554/test latency=0 ! rtph264depay ! h264parse ! nvv4l2decoder ! nvvidconv ! xvimagesink sync=0
Setting pipeline to PAUSED ...
Opening in BLOCKING MODE
Pipeline is live and does not need PREROLL ...
Progress: (open) Opening Stream
Progress: (connect) Connecting to rtsp://127.0.0.1:8554/test
ERROR: from element /GstPipeline:pipeline0/GstRTSPSrc:rtspsrc0: Could not open resource for reading and writing.
Additional debug info:
gstrtspsrc.c(7893): gst_rtspsrc_retrieve_sdp (): /GstPipeline:pipeline0/GstRTSPSrc:rtspsrc0:
Failed to connect. (Generic error)
ERROR: pipeline doesn't want to preroll.
Setting pipeline to NULL ...
Freeing pipeline ...
Any ideas? Thanks!!!
steven@development-orin:~/Projects/test-gstreamer-video/build/bin$ ./test-launch v4l2src device=/dev/video0 ! video/x-h264, width=640, height=480, framerate=30/1 ! queue ! h264parse ! rtph264pay name=pay0 pt=96
stream ready at rtsp://127.0.0.1:8554/test
steven@development-orin:~$ gst-launch-1.0 rtspsrc location=rtsp://127.0.0.1:8554/test latency=0 ! rtph264depay ! h264parse ! nvv4l2decoder ! nvvidconv ! xvimagesink sync=0
Setting pipeline to PAUSED ...
Opening in BLOCKING MODE
Pipeline is live and does not need PREROLL ...
Progress: (open) Opening Stream
Progress: (connect) Connecting to rtsp://127.0.0.1:8554/test
Progress: (open) Retrieving server options
Progress: (open) Retrieving media info
ERROR: from element /GstPipeline:pipeline0/GstRTSPSrc:rtspsrc0: Could not open resource for reading.
Additional debug info:
gstrtspsrc.c(6232): gst_rtspsrc_setup_auth (): /GstPipeline:pipeline0/GstRTSPSrc:rtspsrc0:
No supported authentication protocol was found
ERROR: pipeline doesn't want to preroll.
Setting pipeline to NULL ...
Freeing pipeline ...
Note that you omitted the double quotes for test-launch.
First try to read camera feed and display (assuming you have a local monitor and GUI running on Jetson).
Try the following command and post the output of the first failing one if any.
The first test was successful
When I ran the 2nd test I received the standard “stream ready at rtsp://127.0.0.1:8554/test”
The 3rd test had issues:
steven@development-orin:~$ gst-play-1.0 rtsp://127.0.0.1:8554/test
Press 'k' to see a list of keyboard shortcuts.
Now playing rtsp://127.0.0.1:8554/test
Pipeline is live.
ERROR Could not open resource for reading. for rtsp://127.0.0.1:8554/test
ERROR debug information: gstrtspsrc.c(6232): gst_rtspsrc_setup_auth (): /GstPlayBin:playbin/GstURIDecodeBin:uridecodebin0/GstRTSPSrc:source:
No supported authentication protocol was found
Reached end of play list.
I set
$ export GST_DEBUG=“*:6” then
re-ran
$ ./test.launch “pipeline” 2>err.text
Reviewed the output, nothing eventful shows. I didn’t mention this before, the camera lights show during the gst-launch-1.0 test but not when using ./test.launch.
I submitted a question at freedesktop.org forum 1016 and submitted the error output. I was initially asked to upgrade gstreamer.
I investigated on the Nvidia forums on the process, but seems going past Gstreamer 1.16.3 is not supported.
I had changed the receiving object name in test-launch from “test” to “my_stream”. Once I changed back and re-compiled, then ran both, a window with video appeared.