RTSP Video Streaming with Raspberry Pi Noir v2 Cam Using Gstreamer

Hi all,

I working on Flutter Mobile Application Project about Warehouse Management System.I want to make a RTSP Stream using Noir v2 Cam and Jetson Nano with Gstreamer.

Simply i installed gstreamer and try to run this pipeline

gst-launch-1.0 nvarguscamerasrc sensor-id=0 ! ‘video/x-raw(memory:NVMM),width=3280, height=2464, framerate=20/1, format=NV12’ ! nvvidconv flip-method=2 ! ‘video/x-raw,width=640, height=480’ ! nvvidconv ! nvv4l2h264enc! rtph264pay ! udpsink host=192.168.1.255 port=8554

And output :

Setting pipeline to PAUSED …
Opening in BLOCKING MODE
Pipeline is live and does not need PREROLL …
Setting pipeline to PLAYING …
New clock: GstSystemClock
Redistribute latency…
NvMMLiteOpen : Block : BlockType = 4
===== NVMEDIA: NVENC =====
NvMMLiteBlockCreate : Block : BlockType = 4
GST_ARGUS: Creating output stream
CONSUMER: Waiting until producer is connected…
GST_ARGUS: Available Sensor modes :
GST_ARGUS: 3264 x 2464 FR = 21,000000 fps Duration = 47619048 ; Analog Gain range min 1,000000, max 10,625000; Exposure Range min 13000, max 683709000;

GST_ARGUS: 3264 x 1848 FR = 28,000001 fps Duration = 35714284 ; Analog Gain range min 1,000000, max 10,625000; Exposure Range min 13000, max 683709000;

GST_ARGUS: 1920 x 1080 FR = 29,999999 fps Duration = 33333334 ; Analog Gain range min 1,000000, max 10,625000; Exposure Range min 13000, max 683709000;

GST_ARGUS: 1640 x 1232 FR = 29,999999 fps Duration = 33333334 ; Analog Gain range min 1,000000, max 10,625000; Exposure Range min 13000, max 683709000;

GST_ARGUS: 1280 x 720 FR = 59,999999 fps Duration = 16666667 ; Analog Gain range min 1,000000, max 10,625000; Exposure Range min 13000, max 683709000;

GST_ARGUS: 1280 x 720 FR = 120,000005 fps Duration = 8333333 ; Analog Gain range min 1,000000, max 10,625000; Exposure Range min 13000, max 683709000;

GST_ARGUS: Running with following settings:
Camera index = 0
Camera mode = 5
Output Stream W = 1280 H = 720
seconds to Run = 0
Frame Rate = 120,000005
GST_ARGUS: Setup Complete, Starting captures for 0 seconds
GST_ARGUS: Starting repeat capture requests.
CONSUMER: Producer has connected; continuing.
H264: Profile = 66, Level = 0

But i can’t connect this stream on another device .Can you help me with this ?

BR,

RTSP needs a server. Your pipeline is sending a single RTP stream over UDP. The only way to connect to this stream would be from the 192.168.1.255 device itself. Maybe your network is blocking multicast. Howre you trying to play the stream?
You could give this a try: Using UDP Multicast with GStreamer | Multicast Video Streaming (ridgerun.com)
I don’t think you really want to broadcast your stream. There is also “multiudpsink”

aler9/rtsp-simple-server: ready-to-use RTSP / RTMP / LL-HLS / WebRTC server and proxy that allows to read, publish and proxy video and audio streams (github.com) is an easy way to quickly get RTSP server running.

1 Like

Many thanks for your support ! Now, I am able to stream with usb camera.But i think this server support RpiCam just with RaspberryPi OS.Do you have any idea how can i stream with NoirV2 Cam on Jetson Nano ?

Thanks in advance

See:

for building test-launch, then use:

test-launch "nvarguscamerasrc ! video/x-raw(memory:NVMM),format=NV12,width=1920,height=1080,framerate=30/1 ! nvvidconv ! nvv4l2h264enc insert-vui=1 ! h264parse ! rtph264pay name=pay0"

Thanks !

This works with the Nano, you just have to read the documentation. You would also probaby need to encrypt your stream eventually.