Jetson Linux API Reference

32.6.1 Release

 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
v4l2_nv_extensions.h File Reference

Detailed Description

NVIDIA V4L2 API Extensions

Description: This file declares NVIDIA V4L2 extensions, controls and structures.

Definition in file v4l2_nv_extensions.h.

Go to the source code of this file.

Data Structures

struct  v4l2_ctrl_videodec_statusmetadata_
 Holds the decoder error status metadata for the frame. More...
 
struct  v4l2_ctrl_videodec_refframe_metadata_
 Holds the the frame specific metadata for a reference frame. More...
 
struct  v4l2_ctrl_videodec_currentframe_metadata_
 Holds the the frame specific metadata for the current frame. More...
 
struct  v4l2_ctrl_videodec_dpbinfometadata_
 Holds the decoder DPB info metadata. More...
 
struct  v4l2_ctrl_h264dec_bufmetadata_
 Holds H.264 specific decoder metadata for the frame. More...
 
struct  v4l2_ctrl_hevcdec_bufmetadata_
 Holds H.265 specific decoder metadata for the frame. More...
 
struct  v4l2_ctrl_videodec_inputbuf_metadata_
 Holds the video decoder input header error metadata for a frame. More...
 
struct  v4l2_ctrl_videodec_outputbuf_metadata_
 Holds the video decoder output metadata for a frame. More...
 
struct  v4l2_enc_hw_preset_type_param_
 Holds encoder HW Preset type parameters to be used with V4L2_CID_MPEG_VIDEOENC_HW_PRESET_TYPE_PARAM IOCTL. More...
 
struct  v4l2_enc_slice_length_param_
 Holds encoder slice length parameters, to be used with V4L2_CID_MPEG_VIDEOENC_SLICE_LENGTH_PARAM IOCTL. More...
 
struct  v4l2_enc_virtual_buffer_size_
 Holds encoder virtual buffer size parameters, to be used with V4L2_CID_MPEG_VIDEOENC_VIRTUALBUFFER_SIZE IOCTL. More...
 
struct  v4l2_enc_num_ref_frames_
 Holds encoder number of reference frame parameters, to be used with V4L2_CID_MPEG_VIDEOENC_NUM_REFERENCE_FRAMES IOCTL. More...
 
struct  v4l2_enc_slice_intrarefresh_param_
 Holds encoder slice intrareferesh parameters, to be used with V4L2_CID_MPEG_VIDEOENC_SLICE_INTRAREFRESH_PARAM IOCTL. More...
 
struct  v4l2_enc_ROI_param_
 Holds the encoder quality parameters for a single ROI region. More...
 
struct  v4l2_enc_frame_ROI_params_
 Holds the encoder frame ROI parameters to be used with V4L2_CID_MPEG_VIDEOENC_ROI_PARAMS IOCTL. More...
 
struct  MVInfo_
 Holds the motion vector parameters for a single block. More...
 
struct  v4l2_ctrl_videoenc_outputbuf_metadata_MV_
 Holds the motion vector parameters for one complete frame. More...
 
struct  v4l2_enc_frame_full_prop_
 Holds the RPS List parameters of encoded frame. More...
 
struct  v4l2_ctrl_videoenc_outputbuf_metadata_
 Holds the encoder output metadata for a frame, to be used with V4L2_CID_MPEG_VIDEOENC_METADATA IOCTL. More...
 
struct  v4l2_ctrl_video_metadata_
 Holds the metadata parameters for video encoder and decoder. More...
 
struct  v4l2_enc_gdr_params_
 Holds the encoder GDR parameters to be used with V4L2_CID_MPEG_VIDEOENC_INPUT_METADATA IOCTL. More...
 
struct  v4l2_enc_enable_ext_rps_ctrl_
 Holds the params to configure encoder for external rps control to be used with V4L2_CID_MPEG_VIDEOENC_ENABLE_EXTERNAL_RPS_CONTROL IOCTL. More...
 
struct  _v4l2_enc_frame_prop
 Holds the encoder frame property. More...
 
struct  v4l2_enc_frame_ext_rps_ctrl_params_
 Holds the encoder frame external rps control parameters to be used with V4L2_CID_MPEG_VIDEOENC_INPUT_METADATA IOCTL. More...
 
struct  v4l2_enc_enable_ext_rate_ctrl_
 Holds the params to configure encoder for external rate control mode to be used with V4L2_CID_MPEG_VIDEOENC_ENABLE_EXTERNAL_RATE_CONTROL IOCTL. More...
 
struct  v4l2_enc_frame_ext_rate_ctrl_params_
 Holds the encoder frame external rate control parameters to be used with V4L2_CID_MPEG_VIDEOENC_INPUT_METADATA ioctl. More...
 
struct  v4l2_enc_enable_roi_param_
 Holds the params to configure encoder for ROI parameters encoding. More...
 
struct  v4l2_enc_enable_reconcrc_param_
 Holds the params to configure encoder for Reconstructed CRC encoding. More...
 
struct  v4l2_enc_frame_ReconCRC_params_
 Holds the encoder frame Reconstructed CRC parameters. More...
 
struct  v4l2_ctrl_videoenc_input_metadata_
 Holds the encoder frame input metadata parameters. More...
 
struct  _v4l2_ctrl_video_qp_range
 Holds the encoder frame min/max QP parameters. More...
 
struct  _v4l2_argus_denoise_strength
 Holds the strength value for denoise operation. More...
 
struct  _v4l2_argus_edge_enhance_strength
 Holds the strength value for edge enhancement operation. More...
 
struct  _v4l2_argus_exposure_compensation
 Holds the value for exposure compensation. More...
 
struct  _v4l2_argus_ispdigital_gainrange
 Holds the value for Isp Digital gain range. More...
 
struct  _v4l2_argus_color_saturation
 Holds the value for absolute color saturation. More...
 
struct  _v4l2_argus_gainrange
 Holds the value for gain range. More...
 
struct  _v4l2_argus_exposure_timerange
 Holds the value for exposure range. More...
 
struct  _v4l2_argus_ctrl_metadata
 Holds the value for camera output metadata. More...
 
struct  v4l2_ctrl_video_displaydata_
 
struct  _v4l2_ctrl_video_hdrmasteringdisplaydata
 HDR Metadata. More...
 
struct  _v4l2_ctrl_video_device_poll
 Poll device. More...
 

Macros

#define V4L2_PIX_FMT_DIVX4   v4l2_fourcc('D', 'V', 'X', '4')
 Defines V4L2 pixel format for DIVX. More...
 
#define V4L2_PIX_FMT_DIVX5   v4l2_fourcc('D', 'V', 'X', '5')
 
#define V4L2_PIX_FMT_H265   v4l2_fourcc('H', '2', '6', '5')
 Defines V4L2 pixel format for H.265. More...
 
#define V4L2_PIX_FMT_VP9   v4l2_fourcc('V', 'P', '9', '0')
 Defines the V4L2 pixel format for VP9. More...
 
#define V4L2_PIX_FMT_P010   v4l2_fourcc('P', '0', '1', '0') /* Y/CbCr 4:2:0, 10 bits per channel */
 Defines the V4L2 pixel format for representing single plane 10-bit Y/CbCr 4:2:0 decoder data. More...
 
#define V4L2_PIX_FMT_P010M   v4l2_fourcc('P', 'M', '1', '0') /* Y/CbCr 4:2:0, 10 bits per channel */
 Defines the V4L2 pixel format for representing semi-planar 10-bit Y/CbCr 4:2:0 decoder data. More...
 
#define V4L2_PIX_FMT_P012   v4l2_fourcc('P', '0', '1', '2') /* Y/CbCr 4:2:0, 12 bits per channel */
 Defines the V4L2 pixel format for representing single plane 12-bit Y/CbCr 4:2:0 decoder data. More...
 
#define V4L2_PIX_FMT_P012M   v4l2_fourcc('P', 'M', '1', '2') /* Y/CbCr 4:2:0, 12 bits per channel */
 Defines the V4L2 pixel format for representing semi-planar 12-bit Y/CbCr 4:2:0 decoder data. More...
 
#define V4L2_PIX_FMT_NV24M   v4l2_fourcc('N', 'M', '2', '4') /* Y/CbCr 4:4:4, 8 bits per channel */
 Defines the V4L2 pixel format for representing semi-planar 8-bit Y/CbCr 4:4:4 decoder data. More...
 
#define V4L2_PIX_FMT_NV24_10LE   v4l2_fourcc('N', 'V', '1', '0') /* Y/CbCr 4:4:4, 10 bits per channel */
 Defines the V4L2 pixel format for representing semi-planar 10-bit Y/CbCr 4:4:4 decoder data. More...
 
#define V4L2_EVENT_RESOLUTION_CHANGE   5
 Defines the V4L2 event type for decoder resolution event change. More...
 
#define V4L2_CID_MPEG_VIDEO_H265_PROFILE   (V4L2_CID_MPEG_BASE+513)
 Defines the control ID to set the H.265 encoder profile. More...
 
#define V4L2_CID_MPEG_VIDEO_IDR_INTERVAL   (V4L2_CID_MPEG_BASE+514)
 Defines the control ID to set the encoder IDR frame interval. More...
 
#define V4L2_CID_MPEG_VIDEO_DISABLE_COMPLETE_FRAME_INPUT   (V4L2_CID_MPEG_BASE+515)
 Defines the Control ID to indicate to the decoder that the input buffers do not contain complete buffers. More...
 
#define V4L2_CID_MPEG_VIDEO_DISABLE_DPB   (V4L2_CID_MPEG_BASE+516)
 Defines the Control ID to disable decoder DPB management. More...
 
#define V4L2_CID_MPEG_VIDEO_ERROR_REPORTING   (V4L2_CID_MPEG_BASE+517)
 Defines the Control ID to enable decoder error and metadata reporting. More...
 
#define V4L2_CID_MPEG_VIDEO_SKIP_FRAMES   (V4L2_CID_MPEG_BASE+518)
 Defines the Control ID to set the skip frames property of the decoder. More...
 
#define V4L2_CID_MPEG_VIDEODEC_METADATA   (V4L2_CID_MPEG_BASE+519)
 Defines the Control ID to get the decoder output metadata. More...
 
#define V4L2_CID_MPEG_VIDEODEC_INPUT_METADATA   (V4L2_CID_MPEG_BASE+520)
 Defines the Control ID to get the decoder input header error metadata. More...
 
#define V4L2_CID_VIDEODEC_DISPLAYDATA_PRESENT   (V4L2_CID_MPEG_BASE+521)
 Defines the Control ID to check if display data is present. More...
 
#define V4L2_CID_VIDEODEC_HDR_MASTERING_DISPLAY_DATA   (V4L2_CID_MPEG_BASE+522)
 Defines the Control ID to get display data if V4L2_CID_VIDEODEC_DISPLAYDATA_PRESENT returns true. More...
 
#define V4L2_CID_VIDEO_CONVERT_OUTPUT_PLANE_LAYOUT   (V4L2_CID_MPEG_BASE+523)
 Defines the Control ID to set converter output plane buffer layout. More...
 
#define V4L2_CID_VIDEO_CONVERT_CAPTURE_PLANE_LAYOUT   (V4L2_CID_MPEG_BASE+524)
 Defines the Control ID to set converter capture plane buffer layout. More...
 
#define V4L2_CID_VIDEO_CONVERT_FLIP_METHOD   (V4L2_CID_MPEG_BASE+525)
 Defines the Control ID to set the converter flip/rotation method. More...
 
#define V4L2_CID_VIDEO_CONVERT_INTERPOLATION_METHOD   (V4L2_CID_MPEG_BASE+526)
 Defines the Control ID to set the converter interpolation method. More...
 
#define V4L2_CID_VIDEO_CONVERT_TNR_ALGORITHM   (V4L2_CID_MPEG_BASE+527)
 Defines the Control ID to set the converter Temporal Noise Reduction (TNR) algorithm. More...
 
#define V4L2_CID_MPEG_VIDEOENC_TEMPORAL_TRADEOFF_LEVEL   (V4L2_CID_MPEG_BASE+528)
 Defines the Control ID to configure encoder to drop frames while encoding. More...
 
#define V4L2_CID_MPEG_VIDEOENC_SLICE_LENGTH_PARAM   (V4L2_CID_MPEG_BASE+529)
 Defines the Control ID to configure encoder slice length either in terms of MBs or bits. More...
 
#define V4L2_CID_MPEG_VIDEOENC_ROI_PARAMS   (V4L2_CID_MPEG_BASE+530)
 Defines the Control ID to configure encoder to encode particular region of frame in high quality. More...
 
#define V4L2_CID_MPEG_VIDEOENC_VIRTUALBUFFER_SIZE   (V4L2_CID_MPEG_BASE+531)
 Defines the Control ID to specify virtual buffer size in bits for encoder. More...
 
#define V4L2_CID_MPEG_VIDEOENC_NUM_REFERENCE_FRAMES   (V4L2_CID_MPEG_BASE+532)
 Defines the Control ID to specify maximum number of reference frames that can be used. More...
 
#define V4L2_CID_MPEG_VIDEOENC_SLICE_INTRAREFRESH_PARAM   (V4L2_CID_MPEG_BASE+533)
 Defines the Control ID to specify the encoder slice intra refresh interval. More...
 
#define V4L2_CID_MPEG_VIDEOENC_NUM_BFRAMES   (V4L2_CID_MPEG_BASE+534)
 Defines the Control ID to set number of B frames to be encoded between two P frames. More...
 
#define V4L2_CID_MPEG_VIDEOENC_INSERT_SPS_PPS_AT_IDR   (V4L2_CID_MPEG_BASE+535)
 Defines the Control ID to enable/disable inserting SPS and PPS explicitly at IDR interval. More...
 
#define V4L2_CID_MPEG_VIDEOENC_METADATA   (V4L2_CID_MPEG_BASE+536)
 Defines the Control ID to get encoder output metadata. More...
 
#define V4L2_CID_MPEG_VIDEOENC_ENABLE_METADATA_MV   (V4L2_CID_MPEG_BASE+537)
 Defines the Control ID to enable/disable encoder motion vector reporting. More...
 
#define V4L2_CID_MPEG_VIDEOENC_METADATA_MV   (V4L2_CID_MPEG_BASE+538)
 Defines the Control ID to get encoder output motion vector metadata. More...
 
#define V4L2_CID_MPEG_VIDEOENC_QP_RANGE   (V4L2_CID_MPEG_BASE+539)
 Defines the Control ID to set QP range for I/P/B frames. More...
 
#define V4L2_CID_MPEG_VIDEOENC_HW_PRESET_TYPE_PARAM   (V4L2_CID_MPEG_BASE+540)
 Defines the Control ID to set encoder HW Preset type. More...
 
#define V4L2_CID_MPEG_VIDEOENC_INPUT_METADATA   (V4L2_CID_MPEG_BASE+541)
 Defines the Control ID to provide input metadata for encoder buffer. More...
 
#define V4L2_CID_MPEG_VIDEOENC_ENABLE_EXTERNAL_RPS_CONTROL   (V4L2_CID_MPEG_BASE+542)
 Defines the Control ID to configure encoder for external RPS control. More...
 
#define V4L2_CID_MPEG_VIDEOENC_ENABLE_EXTERNAL_RATE_CONTROL   (V4L2_CID_MPEG_BASE+543)
 Defines the Control ID to configure encoder for external rate control. More...
 
#define V4L2_CID_MPEG_VIDEOENC_ENABLE_ROI_PARAM   (V4L2_CID_MPEG_BASE+544)
 Defines the Control ID to configure ROI encoding for a session. More...
 
#define V4L2_CID_MPEG_VIDEOENC_ENABLE_RECONCRC_PARAM   (V4L2_CID_MPEG_BASE+545)
 Defines the Control ID to configure Reconstructed CRC for a session. More...
 
#define V4L2_CID_MPEG_VIDEOENC_INSERT_VUI   (V4L2_CID_MPEG_BASE+546)
 Control ID to enable/disable inserting VUI in SPS. More...
 
#define V4L2_CID_MPEG_VIDEOENC_INSERT_AUD   (V4L2_CID_MPEG_BASE+547)
 Control ID to enable/disable inserting AUD(Access Unit Delimiter). More...
 
#define V4L2_CID_MPEG_VIDEOENC_EXTEDED_COLORFORMAT   (V4L2_CID_MPEG_BASE+548)
 Control ID to enable/disable setting extended color format. More...
 
#define V4L2_CID_MPEG_VIDEO_DECODE_INSTANCE   (V4L2_CID_MPEG_BASE+549)
 Control ID to select which NVDEC IP to decode. More...
 
#define V4L2_CID_MPEG_VIDEO_DEVICE_POLL   (V4L2_CID_MPEG_BASE+550)
 Control ID to issue a pseudo POLL call on the fd opened in non blocking mode. More...
 
#define V4L2_CID_MPEG_SET_POLL_INTERRUPT   (V4L2_CID_MPEG_BASE+551)
 Control ID to set/clear the polling interrupt mode. More...
 
#define V4L2_CID_MPEG_VIDEOENC_TWO_PASS_CBR   (V4L2_CID_MPEG_BASE+552)
 Control ID to enable/disable setting rate control two pass CBR. More...
 
#define V4L2_CID_VIDEO_CONVERT_YUV_RESCALE_METHOD   (V4L2_CID_MPEG_BASE+553)
 Defines the Control ID to set the converter YUV Rescale method. More...
 
#define V4L2_CID_MPEG_VIDEO_MAX_PERFORMANCE   (V4L2_CID_MPEG_BASE+554)
 Control ID to enable maximum Performance. More...
 
#define V4L2_CID_MPEG_VIDEOENC_ENABLE_ALLIFRAME_ENCODE   (V4L2_CID_MPEG_BASE+555)
 Control ID to enable/disable setting for all i-Frame encoding. More...
 
#define V4L2_CID_MPEG_VIDEO_BUF_API_TYPE   (V4L2_CID_MPEG_BASE+556)
 Defines the Control ID to set buf api to be used by decoder/encoder. More...
 
#define V4L2_CID_MPEG_VIDEO_CUDA_MEM_TYPE   (V4L2_CID_MPEG_BASE+557)
 Defines the Control ID to set cuda memory type to be used by decoder/encoder. More...
 
#define V4L2_CID_MPEG_VIDEO_CUDA_GPU_ID   (V4L2_CID_MPEG_BASE+558)
 Defines the Control ID to set GPU ID to be used by decoder/encoder. More...
 
#define V4L2_CID_MPEG_VIDEODEC_DROP_FRAME_INTERVAL   (V4L2_CID_MPEG_BASE+559)
 Defines the Control ID to set drop frames interval for decoder. More...
 
#define V4L2_CID_MPEG_VIDEOENC_VPX_HEADERS_WITH_FRAME   (V4L2_CID_MPEG_BASE+560)
 Control ID to enable/disable setting for attaching VP8/9 headers. More...
 
#define V4L2_CID_MPEG_VIDEOENC_H265_LEVEL   (V4L2_CID_MPEG_BASE+561)
 Defines the control ID to set the H.265 encoder level. More...
 
#define V4L2_CID_MPEG_VIDEOENC_ENABLE_SLICE_LEVEL_ENCODE   (V4L2_CID_MPEG_BASE+562)
 Control ID to enable/disable slice level encode output. More...
 
#define V4L2_CID_MPEG_VIDEOENC_POC_TYPE   (V4L2_CID_MPEG_BASE+563)
 Defines the Control ID to set Picture Order Count property in frames. More...
 
#define V4L2_CID_MPEG_VIDEOENC_H265_VUI_EXT_SAR_WIDTH   (V4L2_CID_MPEG_BASE+564)
 Defines the Control ID to set Sample Aspect Ratio width for H265 VUI encoding. More...
 
#define V4L2_CID_MPEG_VIDEOENC_H265_VUI_EXT_SAR_HEIGHT   (V4L2_CID_MPEG_BASE+565)
 Defines the Control ID to set Sample Aspect Ratio height for H265 VUI encoding. More...
 
#define V4L2_CID_MPEG_VIDEOENC_FORCE_INTRA_FRAME   (V4L2_CID_MPEG_BASE+566)
 Defines the Control ID to force INTRA frame. More...
 
#define V4L2_CID_MPEG_VIDEOENC_FORCE_IDR_FRAME   (V4L2_CID_MPEG_BASE+567)
 Defines the Control ID to force IDR frame. More...
 
#define V4L2_CID_ARGUS_AUTO_WHITE_BALANCE_MODE   (V4L2_CID_CAMERA_CLASS_BASE+20)
 Defines the Control ID to set auto white balance mode for camera. More...
 
#define V4L2_CID_ARGUS_SENSOR_MODE   (V4L2_CID_CAMERA_CLASS_BASE+32)
 Defines the Control ID to set sensor mode for camera. More...
 
#define V4L2_CID_ARGUS_DENOISE_STRENGTH   (V4L2_CID_CAMERA_CLASS_BASE+33)
 Defines the Control ID to set denoise strength for camera. More...
 
#define V4L2_CID_ARGUS_DENOISE_MODE   (V4L2_CID_CAMERA_CLASS_BASE+34)
 Defines the Control ID to set denoise mode for camera. More...
 
#define V4L2_CID_ARGUS_EE_STRENGTH   (V4L2_CID_CAMERA_CLASS_BASE+35)
 Defines the Control ID to set edge enhancement strength for camera. More...
 
#define V4L2_CID_ARGUS_EE_MODE   (V4L2_CID_CAMERA_CLASS_BASE+36)
 Defines the Control ID to set edge enhancement mode for camera. More...
 
#define V4L2_CID_ARGUS_AE_ANTIBANDING_MODE   (V4L2_CID_CAMERA_CLASS_BASE+37)
 Defines the Control ID to set Auto Exposure antibanding mode for camera. More...
 
#define V4L2_CID_ARGUS_EXPOSURE_COMPENSATION   (V4L2_CID_CAMERA_CLASS_BASE+38)
 Defines the Control ID to set edge enhancement settings for camera. More...
 
#define V4L2_CID_ARGUS_ISP_DIGITAL_GAIN_RANGE   (V4L2_CID_CAMERA_CLASS_BASE+39)
 Defines the Control ID to set edge enhancement settings for camera. More...
 
#define V4L2_CID_ARGUS_COLOR_SATURATION   (V4L2_CID_CAMERA_CLASS_BASE+40)
 Defines the Control ID to set sensor mode for camera. More...
 
#define V4L2_CID_ARGUS_GAIN_RANGE   (V4L2_CID_CAMERA_CLASS_BASE+41)
 Defines the Control ID to set edge enhancement settings for camera. More...
 
#define V4L2_CID_ARGUS_EXPOSURE_TIME_RANGE   (V4L2_CID_CAMERA_CLASS_BASE+42)
 Defines the Control ID to set edge enhancement settings for camera. More...
 
#define V4L2_CID_ARGUS_METADATA   (V4L2_CID_CAMERA_CLASS_BASE+43)
 Defines the Control ID to get the camera argus output metadata. More...
 
#define V4L2_MAX_ROI_REGIONS   8
 Defines the maximum number of ROI regions supported by the encoder. More...
 
#define V4L2_MAX_REF_FRAMES   8
 Maximum number of reference frames supported by the encoder. More...
 
#define QP_RETAIN_VAL   -1
 Setting Qp values in v4l2_ctrl_video_qp_range to QP_RETAIN_VAL retains default or previously set QP values. More...
 

Typedefs

typedef struct
v4l2_ctrl_videodec_statusmetadata_ 
v4l2_ctrl_videodec_statusmetadata
 Holds the decoder error status metadata for the frame. More...
 
typedef struct
v4l2_ctrl_videodec_refframe_metadata_ 
v4l2_ctrl_videodec_refframe_metadata
 Holds the the frame specific metadata for a reference frame. More...
 
typedef struct
v4l2_ctrl_videodec_currentframe_metadata_ 
v4l2_ctrl_videodec_currentframe_metadata
 Holds the the frame specific metadata for the current frame. More...
 
typedef struct
v4l2_ctrl_videodec_dpbinfometadata_ 
v4l2_ctrl_videodec_dpbinfometadata
 Holds the decoder DPB info metadata. More...
 
typedef struct
v4l2_ctrl_h264dec_bufmetadata_ 
v4l2_ctrl_h264dec_bufmetadata
 Holds H.264 specific decoder metadata for the frame. More...
 
typedef struct
v4l2_ctrl_hevcdec_bufmetadata_ 
v4l2_ctrl_hevcdec_bufmetadata
 Holds H.265 specific decoder metadata for the frame. More...
 
typedef struct
v4l2_ctrl_videodec_inputbuf_metadata_ 
v4l2_ctrl_videodec_inputbuf_metadata
 Holds the video decoder input header error metadata for a frame. More...
 
typedef struct
v4l2_ctrl_videodec_outputbuf_metadata_ 
v4l2_ctrl_videodec_outputbuf_metadata
 Holds the video decoder output metadata for a frame. More...
 
typedef struct
v4l2_enc_hw_preset_type_param_ 
v4l2_enc_hw_preset_type_param
 Holds encoder HW Preset type parameters to be used with V4L2_CID_MPEG_VIDEOENC_HW_PRESET_TYPE_PARAM IOCTL. More...
 
typedef struct
v4l2_enc_slice_length_param_ 
v4l2_enc_slice_length_param
 Holds encoder slice length parameters, to be used with V4L2_CID_MPEG_VIDEOENC_SLICE_LENGTH_PARAM IOCTL. More...
 
typedef struct
v4l2_enc_virtual_buffer_size_ 
v4l2_enc_virtual_buffer_size
 Holds encoder virtual buffer size parameters, to be used with V4L2_CID_MPEG_VIDEOENC_VIRTUALBUFFER_SIZE IOCTL. More...
 
typedef struct
v4l2_enc_num_ref_frames_ 
v4l2_enc_num_ref_frames
 Holds encoder number of reference frame parameters, to be used with V4L2_CID_MPEG_VIDEOENC_NUM_REFERENCE_FRAMES IOCTL. More...
 
typedef struct
v4l2_enc_slice_intrarefresh_param_ 
v4l2_enc_slice_intrarefresh_param
 Holds encoder slice intrareferesh parameters, to be used with V4L2_CID_MPEG_VIDEOENC_SLICE_INTRAREFRESH_PARAM IOCTL. More...
 
typedef struct v4l2_enc_ROI_param_ v4l2_enc_ROI_param
 Holds the encoder quality parameters for a single ROI region. More...
 
typedef struct
v4l2_enc_frame_ROI_params_ 
v4l2_enc_frame_ROI_params
 Holds the encoder frame ROI parameters to be used with V4L2_CID_MPEG_VIDEOENC_ROI_PARAMS IOCTL. More...
 
typedef struct MVInfo_ MVInfo
 Holds the motion vector parameters for a single block. More...
 
typedef struct
v4l2_ctrl_videoenc_outputbuf_metadata_MV_ 
v4l2_ctrl_videoenc_outputbuf_metadata_MV
 Holds the motion vector parameters for one complete frame. More...
 
typedef struct
v4l2_enc_frame_full_prop_ 
v4l2_enc_frame_full_prop
 Holds the RPS List parameters of encoded frame. More...
 
typedef struct
v4l2_ctrl_videoenc_outputbuf_metadata_ 
v4l2_ctrl_videoenc_outputbuf_metadata
 Holds the encoder output metadata for a frame, to be used with V4L2_CID_MPEG_VIDEOENC_METADATA IOCTL. More...
 
typedef struct
v4l2_ctrl_video_metadata_ 
v4l2_ctrl_video_metadata
 Holds the metadata parameters for video encoder and decoder. More...
 
typedef struct v4l2_enc_gdr_params_ v4l2_enc_gdr_params
 Holds the encoder GDR parameters to be used with V4L2_CID_MPEG_VIDEOENC_INPUT_METADATA IOCTL. More...
 
typedef struct
v4l2_enc_enable_ext_rps_ctrl_ 
v4l2_enc_enable_ext_rps_ctr
 Holds the params to configure encoder for external rps control to be used with V4L2_CID_MPEG_VIDEOENC_ENABLE_EXTERNAL_RPS_CONTROL IOCTL. More...
 
typedef struct _v4l2_enc_frame_prop v4l2_enc_frame_prop
 Holds the encoder frame property. More...
 
typedef struct
v4l2_enc_frame_ext_rps_ctrl_params_ 
v4l2_enc_frame_ext_rps_ctrl_params
 Holds the encoder frame external rps control parameters to be used with V4L2_CID_MPEG_VIDEOENC_INPUT_METADATA IOCTL. More...
 
typedef struct
v4l2_enc_enable_ext_rate_ctrl_ 
v4l2_enc_enable_ext_rate_ctr
 Holds the params to configure encoder for external rate control mode to be used with V4L2_CID_MPEG_VIDEOENC_ENABLE_EXTERNAL_RATE_CONTROL IOCTL. More...
 
typedef struct
v4l2_enc_frame_ext_rate_ctrl_params_ 
v4l2_enc_frame_ext_rate_ctrl_params
 Holds the encoder frame external rate control parameters to be used with V4L2_CID_MPEG_VIDEOENC_INPUT_METADATA ioctl. More...
 
typedef struct
v4l2_enc_enable_roi_param_ 
v4l2_enc_enable_roi_param
 Holds the params to configure encoder for ROI parameters encoding. More...
 
typedef struct
v4l2_enc_enable_reconcrc_param_ 
v4l2_enc_enable_reconcrc_param
 Holds the params to configure encoder for Reconstructed CRC encoding. More...
 
typedef struct
v4l2_enc_frame_ReconCRC_params_ 
v4l2_enc_frame_ReconCRC_params
 Holds the encoder frame Reconstructed CRC parameters. More...
 
typedef struct
v4l2_ctrl_videoenc_input_metadata_ 
v4l2_ctrl_videoenc_input_metadata
 Holds the encoder frame input metadata parameters. More...
 
typedef struct
_v4l2_ctrl_video_qp_range 
v4l2_ctrl_video_qp_range
 Holds the encoder frame min/max QP parameters. More...
 
typedef struct
_v4l2_argus_denoise_strength 
v4l2_argus_denoise_strength
 Holds the strength value for denoise operation. More...
 
typedef struct
_v4l2_argus_edge_enhance_strength 
v4l2_argus_edge_enhance_strength
 Holds the strength value for edge enhancement operation. More...
 
typedef struct
_v4l2_argus_exposure_compensation 
v4l2_argus_exposure_compensation
 Holds the value for exposure compensation. More...
 
typedef struct
_v4l2_argus_ispdigital_gainrange 
v4l2_argus_ispdigital_gainrange
 Holds the value for Isp Digital gain range. More...
 
typedef struct
_v4l2_argus_color_saturation 
v4l2_argus_color_saturation
 Holds the value for absolute color saturation. More...
 
typedef struct
_v4l2_argus_gainrange 
v4l2_argus_gainrange
 Holds the value for gain range. More...
 
typedef struct
_v4l2_argus_exposure_timerange 
v4l2_argus_exposure_timerange
 Holds the value for exposure range. More...
 
typedef struct
_v4l2_argus_ctrl_metadata 
v4l2_argus_ctrl_metadata
 Holds the value for camera output metadata. More...
 
typedef struct
v4l2_ctrl_video_displaydata_ 
v4l2_ctrl_video_displaydata
 
typedef struct
_v4l2_ctrl_video_hdrmasteringdisplaydata 
v4l2_ctrl_video_hdrmasteringdisplaydata
 HDR Metadata. More...
 
typedef struct
_v4l2_ctrl_video_device_poll 
v4l2_ctrl_video_device_poll
 Poll device. More...
 

Enumerations

enum  v4l2_mpeg_video_h265_profile {
  V4L2_MPEG_VIDEO_H265_PROFILE_MAIN = 0,
  V4L2_MPEG_VIDEO_H265_PROFILE_MAIN10 = 1,
  V4L2_MPEG_VIDEO_H265_PROFILE_MAINSTILLPICTURE = 2
}
 Defines the possible profiles for H.265 encoder. More...
 
enum  v4l2_skip_frames_type {
  V4L2_SKIP_FRAMES_TYPE_NONE = 0,
  V4L2_SKIP_FRAMES_TYPE_NONREF = 1,
  V4L2_SKIP_FRAMES_TYPE_DECODE_IDR_ONLY = 2
}
 Enum v4l2_skip_frames_type, possible methods for decoder skip frames. More...
 
enum  v4l2_cuda_mem_type {
  V4L2_CUDA_MEM_TYPE_DEVICE = 0,
  V4L2_CUDA_MEM_TYPE_PINNED = 1,
  V4L2_CUDA_MEM_TYPE_UNIFIED = 2
}
 Enum v4l2_cuda_mem_type, possible methods for cuda memory tpye. More...
 
enum  v4l2_videodec_input_error_type {
  V4L2_DEC_ERROR_NONE = 0x0,
  V4L2_DEC_ERROR_SPS = 0x1,
  V4L2_DEC_ERROR_PPS = 0x2,
  V4L2_DEC_ERROR_SLICE_HDR = 0x4,
  V4L2_DEC_ERROR_MISSING_REF_FRAME = 0x8,
  V4L2_DEC_ERROR_VPS = 0x10
}
 Enum v4l2_videodec_input_error_type, possible error types for input stream. More...
 
enum  v4l2_enc_temporal_tradeoff_level_type {
  V4L2_ENC_TEMPORAL_TRADEOFF_LEVEL_DROPNONE = 0,
  V4L2_ENC_TEMPORAL_TRADEOFF_LEVEL_DROP1IN5,
  V4L2_ENC_TEMPORAL_TRADEOFF_LEVEL_DROP1IN3,
  V4L2_ENC_TEMPORAL_TRADEOFF_LEVEL_DROP1IN2,
  V4L2_ENC_TEMPORAL_TRADEOFF_LEVEL_DROP2IN3
}
 Specifies the types of encoder temporal tradeoff levels. More...
 
enum  v4l2_enc_hw_preset_type {
  V4L2_ENC_HW_PRESET_DISABLE = 0,
  V4L2_ENC_HW_PRESET_ULTRAFAST = 1,
  V4L2_ENC_HW_PRESET_FAST,
  V4L2_ENC_HW_PRESET_MEDIUM,
  V4L2_ENC_HW_PRESET_SLOW
}
 Specifies the encoder HW Preset type. More...
 
enum  v4l2_enc_slice_length_type {
  V4L2_ENC_SLICE_LENGTH_TYPE_BITS = 0,
  V4L2_ENC_SLICE_LENGTH_TYPE_MBLK
}
 Enum specifying the type of slice length. More...
 
enum  v4l2_enc_input_metadata_param {
  V4L2_ENC_INPUT_ROI_PARAM_FLAG = 1,
  V4L2_ENC_INPUT_GDR_PARAM_FLAG = 1 << 1,
  V4L2_ENC_INPUT_RPS_PARAM_FLAG = 1 << 2,
  V4L2_ENC_INPUT_RC_PARAM_FLAG = 1 << 3,
  V4L2_ENC_INPUT_RECONCRC_PARAM_FLAG = 1 << 4
}
 Specifies the input buffer metadata flag. More...
 
enum  v4l2_mpeg_video_h265_level {
  V4L2_MPEG_VIDEO_H265_LEVEL_1_0_MAIN_TIER = 0,
  V4L2_MPEG_VIDEO_H265_LEVEL_1_0_HIGH_TIER,
  V4L2_MPEG_VIDEO_H265_LEVEL_2_0_MAIN_TIER,
  V4L2_MPEG_VIDEO_H265_LEVEL_2_0_HIGH_TIER,
  V4L2_MPEG_VIDEO_H265_LEVEL_2_1_MAIN_TIER,
  V4L2_MPEG_VIDEO_H265_LEVEL_2_1_HIGH_TIER,
  V4L2_MPEG_VIDEO_H265_LEVEL_3_0_MAIN_TIER,
  V4L2_MPEG_VIDEO_H265_LEVEL_3_0_HIGH_TIER,
  V4L2_MPEG_VIDEO_H265_LEVEL_3_1_MAIN_TIER,
  V4L2_MPEG_VIDEO_H265_LEVEL_3_1_HIGH_TIER,
  V4L2_MPEG_VIDEO_H265_LEVEL_4_0_MAIN_TIER,
  V4L2_MPEG_VIDEO_H265_LEVEL_4_0_HIGH_TIER,
  V4L2_MPEG_VIDEO_H265_LEVEL_4_1_MAIN_TIER,
  V4L2_MPEG_VIDEO_H265_LEVEL_4_1_HIGH_TIER,
  V4L2_MPEG_VIDEO_H265_LEVEL_5_0_MAIN_TIER,
  V4L2_MPEG_VIDEO_H265_LEVEL_5_0_HIGH_TIER,
  V4L2_MPEG_VIDEO_H265_LEVEL_5_1_MAIN_TIER,
  V4L2_MPEG_VIDEO_H265_LEVEL_5_1_HIGH_TIER,
  V4L2_MPEG_VIDEO_H265_LEVEL_5_2_MAIN_TIER,
  V4L2_MPEG_VIDEO_H265_LEVEL_5_2_HIGH_TIER,
  V4L2_MPEG_VIDEO_H265_LEVEL_6_0_MAIN_TIER,
  V4L2_MPEG_VIDEO_H265_LEVEL_6_0_HIGH_TIER,
  V4L2_MPEG_VIDEO_H265_LEVEL_6_1_MAIN_TIER,
  V4L2_MPEG_VIDEO_H265_LEVEL_6_1_HIGH_TIER,
  V4L2_MPEG_VIDEO_H265_LEVEL_6_2_MAIN_TIER,
  V4L2_MPEG_VIDEO_H265_LEVEL_6_2_HIGH_TIER
}
 Defines the possible levels for H.265 encoder. More...
 
enum  v4l2_argus_denoise_mode {
  V4L2_ARGUS_DENOISE_MODE_UNKNOWN = 0,
  V4L2_ARGUS_DENOISE_MODE_OFF = 1,
  V4L2_ARGUS_DENOISE_MODE_FAST = 2,
  V4L2_ARGUS_DENOISE_MODE_HIGH_QUALITY = 3
}
 Enum specifying types of denoise modes. More...
 
enum  v4l2_argus_edge_enhance_mode {
  V4L2_ARGUS_EDGE_ENHANCE_MODE_UNKNOWN = 0,
  V4L2_ARGUS_EDGE_ENHANCE_MODE_OFF = 1,
  V4L2_ARGUS_EDGE_ENHANCE_MODE_FAST = 2,
  V4L2_ARGUS_EDGE_ENHANCE_MODE_HIGH_QUALITY = 3
}
 Enum specifying types of edge enhancement modes. More...
 
enum  v4l2_argus_ac_ae_antibanding_mode {
  V4L2_ARGUS_AE_ANTIBANDING_MODE_UNKNOWN = 0,
  V4L2_ARGUS_AE_ANTIBANDING_MODE_OFF = 1,
  V4L2_ARGUS_AE_ANTIBANDING_MODE_AUTO = 2,
  V4L2_ARGUS_AE_ANTIBANDING_MODE_50HZ = 3,
  V4L2_ARGUS_AE_ANTIBANDING_MODE_60HZ = 4
}
 Enum specifying types of AE antibanding modes. More...
 
enum  v4l2_argus_ac_awb_mode {
  V4L2_ARGUS_AWB_MODE_OFF = 1,
  V4L2_ARGUS_AWB_MODE_AUTO = 2,
  V4L2_ARGUS_AWB_MODE_INCANDESCENT = 3,
  V4L2_ARGUS_AWB_MODE_FLUORESCENT = 4,
  V4L2_ARGUS_AWB_MODE_WARM_FLUORESCENT = 5,
  V4L2_ARGUS_AWB_MODE_DAYLIGHT = 6,
  V4L2_ARGUS_AWB_MODE_CLOUDY_DAYLIGHT = 7,
  V4L2_ARGUS_AWB_MODE_TWILIGHT = 8,
  V4L2_ARGUS_AWB_MODE_SHADE = 9,
  V4L2_ARGUS_AWB_MODE_MANUAL = 10
}
 Enum specifying types of AC AWB modes. More...
 
enum  v4l2_argus_ae_state {
  V4L2_ARGUS_AeState_Unknown = 0,
  V4L2_ARGUS_AE_STATE_INACTIVE = 1,
  V4L2_ARGUS_AE_STATE_SEARCHING = 2,
  V4L2_ARGUS_AE_STATE_CONVERGED = 3,
  V4L2_ARGUS_AE_STATE_FLASH_REQUIRED = 4,
  V4L2_ARGUS_AE_STATE_TIMEOUT = 5
}
 Enum specifying types of AE states. More...
 
enum  v4l2_argus_awb_state {
  V4L2_ARGUS_AwbState_Unknown = 0,
  V4L2_ARGUS_AWB_STATE_INACTIVE = 1,
  V4L2_ARGUS_AWB_STATE_SEARCHING = 2,
  V4L2_ARGUS_AWB_STATE_CONVERGED = 3,
  V4L2_ARGUS_AWB_STATE_LOCKED = 4
}
 Enum specifying types of AWB states. More...
 
enum  v4l2_nv_buffer_layout {
  V4L2_NV_BUFFER_LAYOUT_PITCH = 0,
  V4L2_NV_BUFFER_LAYOUT_BLOCKLINEAR = 1
}
 Enum specifying types of buffer layouts. More...
 
enum  v4l2_flip_method {
  V4L2_FLIP_METHOD_IDENTITY = 0,
  V4L2_FLIP_METHOD_90L = 1,
  V4L2_FLIP_METHOD_180 = 2,
  V4L2_FLIP_METHOD_90R = 3,
  V4L2_FLIP_METHOD_HORIZ = 4,
  V4L2_FLIP_METHOD_INVTRANS = 5,
  V4L2_FLIP_METHOD_VERT = 6,
  V4L2_FLIP_METHOD_TRANS = 7
}
 Specifies the types of rotation/flip algorithms. More...
 
enum  v4l2_interpolation_method {
  V4L2_INTERPOLATION_NEAREST = 1,
  V4L2_INTERPOLATION_BILINEAR = 2,
  V4L2_INTERPOLATION_5_TAP = 3,
  V4L2_INTERPOLATION_10_TAP = 4,
  V4L2_INTERPOLATION_SMART = 5,
  V4L2_INTERPOLATION_NICEST = 6
}
 Specifies the types of interpolation methods. More...
 
enum  v4l2_tnr_algorithm {
  V4L2_TNR_ALGO_ORIGINAL = 0,
  V4L2_TNR_ALGO_OUTDOOR_LOW_LIGHT = 1,
  V4L2_TNR_ALGO_OUTDOOR_MEDIUM_LIGHT = 2,
  V4L2_TNR_ALGO_OUTDOOR_HIGH_LIGHT = 3,
  V4L2_TNR_ALGO_INDOOR_LOW_LIGHT = 4,
  V4L2_TNR_ALGO_INDOOR_MEDIUM_LIGHT = 5,
  V4L2_TNR_ALGO_INDOOR_HIGH_LIGHT = 6
}
 Specifies the types of TNR algorithms. More...
 
enum  v4l2_yuv_rescale_method {
  V4L2_YUV_RESCALE_NONE = 0,
  V4L2_YUV_RESCALE_STD_TO_EXT = 1,
  V4L2_YUV_RESCALE_EXT_TO_STD = 2
}
 Specifies the types of YUV rescale methods. More...
 

Macro Definition Documentation

#define V4L2_CID_MPEG_VIDEO_H265_PROFILE   (V4L2_CID_MPEG_BASE+513)

Defines the control ID to set the H.265 encoder profile.

A v4l2_mpeg_video_h265_profile must be passed.

Definition at line 139 of file v4l2_nv_extensions.h.

#define V4L2_CID_MPEG_VIDEO_IDR_INTERVAL   (V4L2_CID_MPEG_BASE+514)

Defines the control ID to set the encoder IDR frame interval.

Must be used with VIDIOC_S_EXT_CTRLS IOCTL.

Definition at line 157 of file v4l2_nv_extensions.h.

#define V4L2_EVENT_RESOLUTION_CHANGE   5

Defines the V4L2 event type for decoder resolution event change.

Definition at line 116 of file v4l2_nv_extensions.h.

#define V4L2_PIX_FMT_DIVX4   v4l2_fourcc('D', 'V', 'X', '4')

Defines V4L2 pixel format for DIVX.

Definition at line 55 of file v4l2_nv_extensions.h.

#define V4L2_PIX_FMT_DIVX5   v4l2_fourcc('D', 'V', 'X', '5')

Definition at line 57 of file v4l2_nv_extensions.h.

#define V4L2_PIX_FMT_H265   v4l2_fourcc('H', '2', '6', '5')

Defines V4L2 pixel format for H.265.

Definition at line 61 of file v4l2_nv_extensions.h.

#define V4L2_PIX_FMT_NV24_10LE   v4l2_fourcc('N', 'V', '1', '0') /* Y/CbCr 4:4:4, 10 bits per channel */

Defines the V4L2 pixel format for representing semi-planar 10-bit Y/CbCr 4:4:4 decoder data.

Definition at line 96 of file v4l2_nv_extensions.h.

#define V4L2_PIX_FMT_NV24M   v4l2_fourcc('N', 'M', '2', '4') /* Y/CbCr 4:4:4, 8 bits per channel */

Defines the V4L2 pixel format for representing semi-planar 8-bit Y/CbCr 4:4:4 decoder data.

Definition at line 91 of file v4l2_nv_extensions.h.

#define V4L2_PIX_FMT_P010   v4l2_fourcc('P', '0', '1', '0') /* Y/CbCr 4:2:0, 10 bits per channel */

Defines the V4L2 pixel format for representing single plane 10-bit Y/CbCr 4:2:0 decoder data.

Definition at line 71 of file v4l2_nv_extensions.h.

#define V4L2_PIX_FMT_P010M   v4l2_fourcc('P', 'M', '1', '0') /* Y/CbCr 4:2:0, 10 bits per channel */

Defines the V4L2 pixel format for representing semi-planar 10-bit Y/CbCr 4:2:0 decoder data.

Definition at line 76 of file v4l2_nv_extensions.h.

#define V4L2_PIX_FMT_P012   v4l2_fourcc('P', '0', '1', '2') /* Y/CbCr 4:2:0, 12 bits per channel */

Defines the V4L2 pixel format for representing single plane 12-bit Y/CbCr 4:2:0 decoder data.

Definition at line 81 of file v4l2_nv_extensions.h.

#define V4L2_PIX_FMT_P012M   v4l2_fourcc('P', 'M', '1', '2') /* Y/CbCr 4:2:0, 12 bits per channel */

Defines the V4L2 pixel format for representing semi-planar 12-bit Y/CbCr 4:2:0 decoder data.

Definition at line 86 of file v4l2_nv_extensions.h.

#define V4L2_PIX_FMT_VP9   v4l2_fourcc('V', 'P', '9', '0')

Defines the V4L2 pixel format for VP9.

Definition at line 66 of file v4l2_nv_extensions.h.

Enumeration Type Documentation

Defines the possible profiles for H.265 encoder.

Enumerator
V4L2_MPEG_VIDEO_H265_PROFILE_MAIN 

H.265 Main profile.

V4L2_MPEG_VIDEO_H265_PROFILE_MAIN10 

H.265 Main10 profile.

V4L2_MPEG_VIDEO_H265_PROFILE_MAINSTILLPICTURE 

H.265 MainStillPicture profile.

Definition at line 144 of file v4l2_nv_extensions.h.