What is the command for Orin NX to preview without going through the ISP?

The device I use is Jetson 6.1 Orin NX,and my data format is RAW10.

mode_type = "bayer";
pixel_phase = "rggb";

This is the preview command I use that has undergone ISP processing

gst-launch-1.0 nvarguscamerasrc sensor-id=0 sensor-mode=0 ! 'video/x-raw(memory:NVMM),width=1920, height=1080, framerate=30/1, format=NV12' ! nvvidconv ! xvimagesink

What is the command for me to obtain a preview video without going through the ISP?

v4l2-ctl --device=/dev/video0 --list-formats-ext

ioctl: VIDIOC_ENUM_FMT

	Type: Video Capture



	[0]: 'RG10' (10-bit Bayer RGRG/GBGB)

		Size: Discrete 1920x1080

			Interval: Discrete 0.033s (30.000 fps)


What is needed is a direct preview of 10-bit RG10 Bayer camera footage on Jetson without going through the ISP (Argus/nvarguscamerasrc). If GStreamer does not support previewing 10-bit RG10 cameras without the ISP, what command can be used to obtain a preview feed that bypasses the ISP?

*** Please note that this reply is generated by LLM automatically ***

Based on the provided context, I will provide a comprehensive answer to your question.

Since you are using the Jetson Orin NX device and your data format is RAW10, you want to obtain a preview video without going through the ISP (Image Signal Processor). You are currently using the nvarguscamerasrc plugin, which is part of the Argus API, to preview the camera footage.

To bypass the ISP and obtain a direct preview of the 10-bit RG10 Bayer camera footage, you can use the V4L2 API. According to the Camera API Matrix table, when the camera does not use the Jetson ISP (CSI interface), the V4L2 API is available.

To use the V4L2 API, you can use the v4l2src plugin in GStreamer. However, please note that the v4l2src plugin might not support 10-bit RG10 Bayer format directly.

As an alternative, you can use the v4l2-ctl command-line tool to configure the camera and capture the raw Bayer data. This tool allows you to control the camera settings, including the format, resolution, and frame rate.

Here is an example command to capture the raw Bayer data using v4l2-ctl:

v4l2-ctl -d /dev/video0 --set-fmt-video=width=1920,height=1080,pixelformat=RG10 --set-ctrl=brightness=100 --stream-mmap --stream-count=30

This command sets the camera format to RG10, resolution to 1920x1080, and brightness to 100. It then captures 30 frames of raw Bayer data using memory mapping.

To preview the captured raw Bayer data, you can use a tool like yavta (Yet Another Video4Linux Test Application). Here is an example command to preview the captured data:

yavta -f RG10 -s 1920x1080 /dev/video0

This command displays the captured raw Bayer data in a window.

In summary, to obtain a preview video without going through the ISP on Jetson Orin NX, you can use the V4L2 API with the v4l2src plugin in GStreamer or use the v4l2-ctl and yavta tools to capture and preview the raw Bayer data.

Comparison:

  • Using nvarguscamerasrc plugin (Argus API):
    • Pros: Easy to use, supports ISP processing.
    • Cons: ISP processing is required, which might not be desirable.
  • Using v4l2src plugin (V4L2 API):
    • Pros: Bypasses ISP processing, supports raw Bayer data capture.
    • Cons: Might not support 10-bit RG10 Bayer format directly.
  • Using v4l2-ctl and yavta tools:
    • Pros: Allows direct capture and preview of raw Bayer data, supports 10-bit RG10 Bayer format.
    • Cons: Requires more manual configuration and setup.

*** Please give the thumbs up if you get answers you like. Or provide feedback to help us improve the answer. ***

You can use v4l API to get the raw and debayer it by software or MMAPI sample code like rawBayerOutput

Does the Orin NX support H.264 hardware encoding?

Suppose yes.

已解决,谢谢