|
NVIDIA DRIVE OS Linux SDK API Reference
|
5.1.15.2 Release For Test and Development only
|
Go to the documentation of this file.
17 #ifndef NVMEDIA_COMMON_ENCODE_H
18 #define NVMEDIA_COMMON_ENCODE_H
39 #define NVMEDIA_COMMON_ENCODE_VERSION_MAJOR 1
41 #define NVMEDIA_COMMON_ENCODE_VERSION_MINOR 2
47 #define NVMEDIA_VIDEO_ENCODER_TIMEOUT_INFINITE 0xFFFFFFFFU
53 #define NVMEDIA_ENCODE_INFINITE_GOPLENGTH 0xFFFFFFFFU
118 uint32_t averageBitRate;
123 uint32_t vbvBufferSize;
126 uint32_t vbvInitialDelay;
130 uint32_t averageBitRate;
135 uint32_t vbvBufferSize;
138 uint32_t vbvInitialDelay;
144 uint32_t averageBitRate;
147 uint32_t vbvBufferSize;
150 uint32_t vbvInitialDelay;
471 #define MAX_NON_SLICE_DATA_SIZE 2048U
781 uint8_t reserved3[3];
1241 int8_t ref_lf_deltas[4];
1243 int8_t mode_lf_deltas[2];
1429 int8_t ref_lf_deltas[4];
1431 int8_t mode_lf_deltas[4];
1462 int8_t seg_filter_level[4];
1464 int8_t seg_qindex[4];
@ NVMEDIA_ENCODE_PARAMS_RC_CONSTQP
Constant QP mode.
@ NVMEDIA_ENCODE_MOTION_SEARCH_CONTROL_FLAG_VALID
Enable the flag set.
@ NVMEDIA_ENCODE_CONFIG_H265_QP_MAX
Enable support to use client provided QP max for all frame types.
@ NVMEDIA_ENCODE_DISABLE_INTRA_4x4_HORIZONTAL_PREDICTION
Disable Intra 4x4 horizontal prediction.
@ NVMEDIA_ENCODE_CONFIG_H265_ENABLE_MV_BUFFER_DUMP
Enable support for motion vector buffer dump.
@ NVMEDIA_ENCODE_LEVEL_H264_1b
H.264 Level 1b.
@ NVMEDIA_ENCODE_CONFIG_VP9_ENABLE_QUANTIZATION_PARAMS
Enable to set quantization parameters.
@ NVMEDIA_ENCODE_DISABLE_INTRA_4x4_DIAGONAL_DOWN_LEFT_PREDICTION
Disable Intra 4x4 diagonal down left prediction.
NvMediaEncAttrType
Specifies the Video encoder get attribute type.
@ NVMEDIA_ENCODE_PIC_FLAG_RATECONTROL_CHANGE
Indicates change in rate control parameters from the current picture onwards.
@ NVMEDIA_ENCODE_LEVEL_H264_31
H.264 Level 3.1.
NvMediaEncodeH264SPSPPSRepeatMode
Specifies the frequency of the writing of Sequence and Picture parameters for H.264.
@ NVMEDIA_ENCODE_PARAMS_RC_CBR
Constant bitrate mode.
@ NVMEDIA_ENCODE_H264_ENTROPY_CODING_MODE_CAVLC
Entropy coding mode is CAVLC.
@ NVMEDIA_ENCODE_PIC_TYPE_P_INTRA_REFRESH
Starts a new intra refresh cycle if intra refresh support is enabled otherwise it indicates a P frame...
@ NVMEDIA_ENCODE_SPSPPS_REPEAT_DISABLED
Repeating of SPS/PPS is disabled.
NvMediaEncodeVP9Features
Defines VP9 encoder configuration features.
NvMediaEncodeProfile
Defines encoding profiles.
@ NVMEDIA_ENCODE_CONFIG_H264_ENABLE_INTRA_REFRESH
Enable gradual decoder refresh or intra refresh.
@ NVMEDIA_ENCODE_CONFIG_H265_ENABLE_SLICE_LEVEL_OUTPUT
Enable slice level output encoding.
@ NVMEDIA_ENCODE_CONFIG_VP9_ENABLE_LOOP_FILTER_PARAMS
Enable to set loop filter parameters.
@ NVMEDIA_ENCODE_PIC_TYPE_IDR
IDR picture.
@ NVMEDIA_ENCODE_CONFIG_VP9_ENABLE_TRANSFORM_MODE
Enable transform mode.
NvMediaBlockingType
Blocking type.
@ NVMEDIA_ENCODE_CONFIG_H264_ENABLE_MV_BUFFER_DUMP
Enable support for motion vector buffer dump.
@ NVMEDIA_ENCODE_CONFIG_H264_ENABLE_PROFILING
Enable encoder profiling.
@ NVMEDIA_ENCODE_PIC_TYPE_AUTOSELECT
Auto selected picture type.
@ NVMEDIA_ENCODE_PROFILE_HIGH
High profile.
@ NVMEDIA_ENCODE_PARAMS_RC_CBR_MINQP
Constant bitrate mode with MinQP.
@ NVMEDIA_ENCODE_PIC_FLAG_CONSTRAINED_FRAME
Indicates that this frame is encoded with each slice completely independent of other slices in the fr...
@ NVMEDIA_ENCODE_LEVEL_H264_32
H.264 Level 3.2.
@ NVMEDIA_ENCODE_ENABLE_IP_SEARCH_INTRA_4x4
IP Search mode bit Intra 4x4.
@ NVMEDIA_ENCODE_LEVEL_H264_22
H.264 Level 2.2.
@ NVMEDIA_ENCODE_H264_BDIRECT_MODE_TEMPORAL
Temporal BDirect mode Not supported on QNX Safety build.
@ NVMEDIA_ENCODE_CONFIG_H265_ENABLE_OUTPUT_AUD
Enable to write access unit delimiter syntax in bitstream.
@ NVMEDIA_ENCODE_DISABLE_INTRA_8x8_DC_PREDICTION
Disable Intra 8x8 DC prediction.
@ NVMEDIA_ENCODE_DISABLE_INTER_L0_8x16_PREDICTION
Disable Inter L0 partition 8x16 prediction.
@ NVMEDIA_ENCODE_LEVEL_H264_21
H.264 Level 2.1.
@ NVMEDIA_ENCODE_H264_BDIRECT_MODE_SPATIAL
Spatial BDirect mode Not supported on QNX Safety build.
@ NVMEDIA_ENCODE_ENABLE_SELF_TEMPORAL_REFINE
Enable self_temporal_refine.
NvMediaEncodeQuality
Defines encode quality level pre-settings.
@ NVMEDIA_ENCODE_CONFIG_VP8_QP_MAX
Enable support to use client provided QP max for all frame types.
@ NVMEDIA_ENCODE_PIC_FLAG_OUTPUT_SPSPPS
Writes the sequence and picture header in encoded bitstream of the current picture.
@ NVMEDIA_ENCODE_DISABLE_INTRA_8x8_VERTICAL_LEFT_PREDICTION
Disable Intra 8x8 vertical left prediction.
NvMediaEncodeH264MotionSearchControlFlags
Defines motion search mode control flags for H.264.
@ NVMEDIA_ENCODE_CONFIG_H265_ENABLE_INTRA_REFRESH
Enable gradual decoder refresh or intra refresh.
@ NVMEDIA_ENCODE_CONFIG_VP8_ENABLE_SEGMENTATION
Enable segmentation.
@ NVMEDIA_ENCODE_DISABLE_INTRA_4x4_VERTICAL_LEFT_PREDICTION
Disable Intra 4x4 vertical left prediction.
@ NVMEDIA_ENCODE_DISABLE_INTRA_4x4_HORIZONTAL_UP_PREDICTION
Disable Intra 4x4 horizontal up prediction.
@ NVMEDIA_ENCODE_H264_POC_TYPE_2
Pic_order_cnt_type 2.
@ NVMEDIA_ENCODE_CONFIG_H265_ENABLE_EXT_PIC_RC_HINT
Enable support for external picture RC hint.
@ NVMEDIA_ENCODE_DISABLE_INTRA_4x4_DC_PREDICTION
Disable Intra 4x4 DC prediction.
@ NVMEDIA_ENCODE_H264_POC_TYPE_AUTOSELECT
Automatic level selection.
@ NVMEDIA_ENCODE_LEVEL_H264_1
H.264 Level 1.
@ NVMEDIA_ENCODE_ENABLE_IP_SEARCH_INTRA_16x16
IP Search mode bit Intra 16x16.
NvMediaEncodePicType
Input picture type.
@ NVMEDIA_ENCODE_LEVEL_H264_12
H.264 Level 1.2.
@ NVMEDIA_ENCODE_DISABLE_INTRA_8x8_VERTICAL_PREDICTION
Disable Intra 8x8 vertical prediction.
@ NVMEDIA_ENCODE_LEVEL_AUTOSELECT
Automatic level selection.
#define MAX_NON_SLICE_DATA_SIZE
Maximum encoded header info size.
@ NVMEDIA_ENCODE_DISABLE_INTER_L0_16x16_PREDICTION
Disable Inter L0 partition 16x16 prediction.
@ NVMEDIA_ENCODE_CONFIG_H264_ENABLE_ULTRA_FAST_ENCODE
Enable ultra fast encoding.
@ NVMEDIA_ENCODE_ENABLE_IP_SEARCH_INTRA_8x8
IP Search mode bit Intra 8x8.
@ NVMEDIA_ENCODE_PROFILE_MAIN
Main profile.
@ NVMEDIA_ENCODE_CONFIG_H264_ENABLE_FOUR_BYTE_START_CODE
Enable support to use 4 byte start code in all the slices in a picture.
NvMediaEncodeH264AdaptiveTransformMode
Defines H.264 specific Adaptive Transform modes.
@ NVMEDIA_ENCODE_CONFIG_H264_ENABLE_CONSTRANED_ENCODING
Enable constrainedFrame encoding where each slice in the constrained picture is independent of other ...
NvMediaEncodeParamsRCMode
Rate Control Modes.
@ NVMEDIA_ENCODE_CONFIG_H264_ENABLE_EXT_PIC_RC_HINT
Enable support for external picture RC hint Not supported on QNX Safety build.
@ NVMEDIA_ENCODE_H264_ADAPTIVE_TRANSFORM_ENABLE
Specifies that Adaptive Transform 8x8 mode must be used.
@ NVMEDIA_ENCODE_QUALITY_L1
Quality Level 1 Pre-settings.
NvMediaEncodeH264EntropyCodingMode
Defines H.264 entropy coding modes.
@ NVMEDIA_ENCODE_DISABLE_INTRA_16x16_DC_PREDICTION
Disable Intra 16x16 DC prediction.
NvMediaEncodeH264MotionPredictionExclusionFlags
Defines motion prediction exclusion flags for H.264.
NvMediaEncodeH264POCType
Define H.264 pic_order_cnt_type.
@ NVMEDIA_ENCODE_CONFIG_H264_INIT_QP
Enable support to use client provided Initial QP for all frame types.
@ NVMEDIA_ENCODE_DISABLE_INTRA_4x4_DIAGONAL_DOWN_RIGHT_PREDICTION
Disable Intra 4x4 diagonal down right prediction.
@ NVMEDIA_ENCODE_CONFIG_H264_QP_MAX
Enable support to use client provided QP max for all frame types.
@ NVMEDIA_ENCODE_PIC_TYPE_P
Forward predicted.
@ NVMEDIA_ENCODE_PROFILE_AUTOSELECT
Automatic profile selection.
@ NVMEDIA_ENCODE_CONFIG_H265_ENABLE_FOUR_BYTE_START_CODE
Enable support to use 4 byte start code in all the slices in a picture.
@ NVMEDIA_ENCODE_PROFILE_HIGH444
High 444 profile.
@ NVMEDIA_ENCODE_CONFIG_VP9_INIT_QP
Enable support to use client provided Initial QP for all frame types.
@ NVMEDIA_ENCODE_CONFIG_VP9_ENABLE_PROFILING
Enable encoder profiling.
@ NVMEDIA_ENCODE_LEVEL_H264_4
H.264 Level 4.
NvMediaEncodeH264Features
Defines H264 encoder configuration features.
@ NVMEDIA_ENCODE_CONFIG_H265_ENABLE_CONSTRANED_ENCODING
Enable constrainedFrame encoding where each slice in the constrained picture is independent of other ...
@ NVMEDIA_ENCODE_CONFIG_VP8_ENABLE_QUANTIZATION_PARAMS
Enable to set quantization parameters.
@ NVMEDIA_ENCODE_CONFIG_H264_ENABLE_OUTPUT_AUD
Enable to write access unit delimiter syntax in bitstream.
@ NVMEDIA_ENCODE_CONFIG_H264_ENABLE_DYNAMIC_RPS
Enable support for dynamic reference picture set RPS/DPB control support.
@ NVMEDIA_ENCODE_PIC_TYPE_I
Intra predicted picture.
@ NVMEDIA_ENCODE_ENABLE_CONST_MV_REFINE
Enable const_mv_refine.
@ NVMEDIA_ENCODE_QUALITY_L0
Quality Level 0 Pre-settings.
@ NVMEDIA_ENCODE_DISABLE_INTRA_CHROMA_HORIZONTAL_PREDICTION
Disable Intra chroma horizontal prediction.
@ NVMEDIA_ENCODE_PARAMS_RC_VBR
Variable bitrate mode.
NvMediaEncodeLevel
Defines encoding levels.
@ NVMEDIA_ENCODE_DISABLE_INTRA_CHROMA_VERTICAL_PREDICTION
Disable Intra chroma vertical prediction.
@ NVMEDIA_ENCODE_DISABLE_INTRA_16x16_PLANE_PREDICTION
Disable Intra 16x16 plane prediction.
NvMediaEncodePicFlags
Defines encoding Picture encode flags.
@ NVMEDIA_ENCODE_CONFIG_VP9_DISABLE_ERROR_RESILIENT
Disable error resiliency.
@ NVMEDIA_ENCODE_CONFIG_H265_ENABLE_PROFILING
Enable encoder profiling.
@ NVMEDIA_ENCODE_CONFIG_H265_ENABLE_LOSSLESS_COMPRESSION
Enable lossless compression.
@ NVMEDIA_ENCODE_CONFIG_VP8_ENABLE_PROFILING
Enable encoder profiling.
@ NVMEDIA_ENCODE_QUALITY_L2
Quality Level 2 Pre-settings.
@ NVMEDIA_ENCODE_H264_BDIRECT_MODE_DISABLE
Disable BDirect mode.
NvMediaEncodeH265Features
Defines H265 encoder configuration features.
@ NVMEDIA_ENCODE_CONFIG_H265_ENABLE_DYNAMIC_RPS
Enable support for dynamic reference picture set RPS/DPB control support.
@ NVMEDIA_ENCODE_SPSPPS_REPEAT_IDR_FRAMES
SPS/PPS is repeated for every IDR frame.
@ NVMEDIA_ENCODE_H264_ADAPTIVE_TRANSFORM_AUTOSELECT
Specifies that Adaptive Transform 8x8 mode is auto selected by the encoder driver.
@ NVMEDIA_ENCODE_BLOCKING_TYPE_IF_PENDING
Block only when operation is pending.
@ NVMEDIA_ENCODE_CONFIG_H264_ENABLE_SLICE_LEVEL_OUTPUT
Enable slice level output encoding.
@ NVMEDIA_ENCODE_ENABLE_COLOC_REFINE
Enable coloc_refine.
@ NVMEDIA_ENCODE_CONFIG_H265_ENABLE_DYNAMIC_SLICE_MODE
Enable dynamic slice mode.
@ NVMEDIA_ENCODE_LEVEL_H264_42
H.264 Level 4.2.
@ NVMEDIA_ENCODE_CONFIG_H265_ENABLE_ULTRA_FAST_ENCODE
Enable ultra fast encoding.
@ NVMEDIA_ENCODE_CONFIG_VP9_ENABLE_HIGH_PRECISION_MV
Enable high precision mv.
@ NVMEDIA_ENCODE_DISABLE_INTER_L0_16x8_PREDICTION
Disable Inter L0 partition 16x8 prediction.
@ NVMEDIA_ENCODE_CONFIG_H265_INIT_QP
Enable support to use client provided Initial QP for all frame types.
@ NVMEDIA_ENCODE_ENABLE_SELF_SPATIAL_REFINE
Enable self_spatial_refine.
@ NVMEDIA_ENCODE_DISABLE_INTRA_4x4_VERTICAL_RIGHT_PREDICTION
Disable Intra 4x4 vertical right prediction.
@ NVMEDIA_ENCODE_PROFILE_EXTENDED
Extended profile Not supported on QNX Safety build.
@ NvMediaEncAttr_GetVPS
This attribute is used to get VPS data for current h265 encoding session.
@ NVMEDIA_ENCODE_LEVEL_H264_13
H.264 Level 1.3.
@ NVMEDIA_ENCODE_DISABLE_INTRA_CHROMA_PLANE_PREDICTION
Disable Intra chroma plane prediction.
@ NVMEDIA_ENCODE_DISABLE_INTRA_8x8_DIAGONAL_DOWN_LEFT_PREDICTION
Disable Intra 8x8 diagonal down left prediction.
@ NVMEDIA_ENCODE_ENABLE_EXTERNAL_REFINE
Enable external_refine.
@ NVMEDIA_ENCODE_LEVEL_H264_3
H.264 Level 3.
@ NVMEDIA_ENCODE_CONFIG_H264_ENABLE_LOSSLESS_COMPRESSION
Enable lossless compression.
@ NVMEDIA_ENCODE_CONFIG_H264_ENABLE_RTP_MODE_OUTPUT
Enable RTP mode output.
@ NvMediaEncAttr_GetPPS
This attribute is used to get PPS data for current encoding session.
uint32_t NvMediaBool
A boolean value, holding NVMEDIA_TRUE or NVMEDIA_FALSE.
@ NVMEDIA_ENCODE_DISABLE_INTRA_16x16_HORIZONTAL_PREDICTION
Disable Intra 16x16 horizontal prediction.
@ NVMEDIA_ENCODE_BLOCKING_TYPE_NEVER
Never blocks.
@ NVMEDIA_ENCODE_SPSPPS_REPEAT_INTRA_FRAMES
SPS/PPS is repeated for every intra frame.
@ NVMEDIA_ENCODE_PARAMS_RC_VBR_MINQP
Variable bitrate mode with MinQP.
@ NVMEDIA_ENCODE_DISABLE_INTRA_8x8_HORIZONTAL_DOWN_PREDICTION
Disable Intra 8x8 horizontal down prediction.
@ NVMEDIA_ENCODE_DISABLE_INTRA_4x4_VERTICAL_PREDICTION
Disable Intra 4x4 vertical prediction.
@ NVMEDIA_ENCODE_LEVEL_H264_41
H.264 Level 4.1.
@ NVMEDIA_ENCODE_PIC_TYPE_B
Bi-directionally predicted picture.
@ NVMEDIA_ENCODE_DISABLE_INTRA_8x8_VERTICAL_RIGHT_PREDICTION
Disable Intra 8x8 vertical right prediction.
@ NVMEDIA_ENCODE_DISABLE_INTER_L0_8x8_PREDICTION
Disable Inter L0 partition 8x8 prediction.
@ NVMEDIA_ENCODE_H264_POC_TYPE_0
Pic_order_cnt_type 0.
@ NVMEDIA_ENCODE_H264_ENTROPY_CODING_MODE_CABAC
Entropy coding mode is CABAC.
@ NVMEDIA_ENCODE_DISABLE_INTRA_4x4_HORIZONTAL_DOWN_PREDICTION
Disable Intra 4x4 horizontal down prediction.
@ NVMEDIA_ENCODE_PROFILE_BASELINE
Baseline profile.
@ NVMEDIA_ENCODE_CONFIG_VP8_ENABLE_LOOP_FILTER_PARAMS
Enable to set loop filter parameters.
@ NVMEDIA_ENCODE_CONFIG_VP9_QP_MAX
Enable support to use client provided QP max for all frame types.
NvMediaEncodeH264BDirectMode
Defines H.264 specific Bdirect modes.
@ NVMEDIA_ENCODE_LEVEL_H264_2
H.264 Level 2.
@ NvMediaEncAttr_GetSPS
This attribute is used to get SPS data for current encoding session.
@ NVMEDIA_ENCODE_DISABLE_INTRA_8x8_HORIZONTAL_PREDICTION
Disable Intra 8x8 horizontal prediction.
NvMediaEncodeVP8Features
Defines VP8 encoder configuration features.
@ NVMEDIA_ENCODE_CONFIG_H264_ENABLE_DYNAMIC_SLICE_MODE
Enable dynamic slice mode.
@ NVMEDIA_ENCODE_DISABLE_INTRA_CHROMA_DC_PREDICTION
Disable Intra chroma DC prediction.
@ NVMEDIA_ENCODE_CONFIG_H265_ENABLE_RTP_MODE_OUTPUT
Enable RTP mode output.
@ NVMEDIA_ENCODE_LEVEL_H264_11
H.264 Level 1.1.
@ NVMEDIA_ENCODE_DISABLE_INTRA_16x16_VERTICAL_PREDICTION
Disable Intra 16x16 vertical prediction.
@ NVMEDIA_ENCODE_H264_ADAPTIVE_TRANSFORM_DISABLE
Specifies that Adaptive Transform 8x8 mode is disabled.
@ NVMEDIA_ENCODE_DISABLE_INTRA_8x8_HORIZONTAL_UP_PREDICTION
Disable Intra 8x8 horizontal up prediction.
@ NVMEDIA_ENCODE_DISABLE_INTRA_8x8_DIAGONAL_DOWN_RIGHT_PREDICTION
Disable Intra 8x8 diagonal down right prediction.
@ NVMEDIA_ENCODE_CONFIG_VP8_INIT_QP
Enable support to use client provided Initial QP for all frame types.