Jetson Xavier NX GStreamer example pipelines for video capture and display

From RidgeRun Developer Wiki



Previous: GStreamer/Example_Pipelines Index Next: Gstreamer/Example_Pipelines/Encoding






Problems running the pipelines shown on this page? Please see our GStreamer Debugging guide for help.

Camera Capture

Camera capture pipelines were tested with a Sony IMX219 CMOS (Raspberry Pi V2.1 camera) image sensor, which its Linux driver is already supported by default on Linux For Tegra kernel for the Jetson Xavier NX and Jetson Nano platforms.

If you are interested in a higher quality camera support for the Jetson Xavier NX platform, you can take a look at the Raspberry Pi HQ camera IMX477 Linux driver for Jetson wiki page for detailed information on the free Linux driver support for this camera sensor that RidgeRun offers.

Using nvarguscamerasrc with a Sony IMX219 CMOS image sensor (Raspberry Pi V2.1 camera), the following operation modes are available:

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: 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;

The Jetson Xavier NX has the following power mode "NV Power Mode: MODE_15W_6CORE" and the jetson clocks binary was executed to set the board in maximum performance mode.


Max Resolution

gst-launch-1.0 nvarguscamerasrc ! 'video/x-raw(memory:NVMM), width=3264, height=2464, format=NV12, framerate=21/1' ! fakesink


1080p

gst-launch-1.0 nvarguscamerasrc ! 'video/x-raw(memory:NVMM), width=1920, height=1080, format=NV12, framerate=30/1' ! fakesink
Table 1. Performance results
Resolution CPU% FPS
3264x2464 3.8% 21
3264x1848 4.9% 28
1080p 4.5% 30
720p 8.9% 60
720p 16.4% 120

Videotestsrc display

The Jetson Xavier NX has the following power mode "NV Power Mode: MODE_15W_6CORE" and jetson_clocks binary was executed to set the board in maximum performance mode.

gst-launch-1.0 videotestsrc is-live=true ! video/x-raw, width=1920, height=1080  ! nvoverlaysink

Note: A videotestsrc pipeline to fakesink is capable to achieve at 1920x1080 resolution a maximum framerate of 97.5fps with a CPU load of 17%

Camera capture display

The Jetson Xavier NX has the following power mode "NV Power Mode: MODE_15W_6CORE" and jetson_clocks binary was executed to set the board in maximum performance mode.

3264x2464

gst-launch-1.0 nvarguscamerasrc ! 'video/x-raw(memory:NVMM), width=3264, height=2464, format=NV12, framerate=21/1' ! nvoverlaysink


1080p

gst-launch-1.0 nvarguscamerasrc ! 'video/x-raw(memory:NVMM), width=1920, height=1080, format=NV12, framerate=30/1' ! nvoverlaysink
Table 2. Performance results
Resolution CPU% FPS Glass to Glass Latency (ms)
3264x2464 4% 21 -
3264x1848 4.8% 28 -
1080p 4.7% 30 103.29
720p 9% 60 69.67
720p 16% 120 182.24


Previous: GStreamer/Example_Pipelines Index Next: Gstreamer/Example_Pipelines/Encoding