NVIDIA DRIVE OS Linux SDK API Reference

6.0.9 Release
nvmedia_iep_input_extradata.h
Go to the documentation of this file.
1 /*
2  * Copyright (c) 2020-2022, NVIDIA CORPORATION. All rights reserved. All
3  * information contained herein is proprietary and confidential to NVIDIA
4  * Corporation. Any use, reproduction, or disclosure without the written
5  * permission of NVIDIA Corporation is prohibited.
6  */
7 
15 #ifndef NVMEDIA_IEP_INPUT_EXTRA_DATA_H
16 #define NVMEDIA_IEP_INPUT_EXTRA_DATA_H
17 
18 #include <stdbool.h>
19 #include "nvmedia_core.h"
20 #include "nvmedia_iep.h"
21 
22 #ifdef __cplusplus
23 extern "C" {
24 #endif
25 
27 #define NVMEDIA_ENCODE_MAX_RPS_SIZE 17U
28 
30 #define NVMEDIA_MAX_ROI_REGIONS 8U
31 
32 typedef struct {
36  int32_t lQPdelta;
38 
42 typedef enum {
49  /* Add other flags using bitfields */
51 
55 typedef struct {
58  uint32_t ulExtraDataSize;
60  uint32_t EncodeParamsFlag;
62  uint8_t *PPEMetadata;
64  signed char *QPDeltaBuffer;
70  uint32_t ulNumROIRegions;
79 typedef struct
80 {
82  uint16_t ulDRCWidth;
84  uint16_t ulDRCHeight;
86 
92 typedef enum {
104 
109 typedef struct
110 {
114 
115 
131 // coverity[misra_c_2012_rule_8_7_violation : FALSE]
134  const NvMediaIEP *encoder,
135  const void *extradata
136 );
137 
152 // coverity[misra_c_2012_rule_8_7_violation : FALSE]
155  const NvMediaIEP *encoder,
156  NvMediaEncSetAttrType attrType,
157  uint32_t attrSize,
158  const void *AttributeData
159 );
160 
161 #ifdef __cplusplus
162 } /* extern "C" */
163 #endif
164 
165 #endif /* NVMEDIA_IEP_INPUT_EXTRA_DATA_H */
NvMediaEncROIParams
Definition: nvmedia_iep_input_extradata.h:32
NvMediaEncodeDRCConfig::ulDRCWidth
uint16_t ulDRCWidth
Holds the encode Width.
Definition: nvmedia_iep_input_extradata.h:82
NvMediaEncSetAttrType
NvMediaEncSetAttrType
Specifies the Video encoder set attribute type.
Definition: nvmedia_iep_input_extradata.h:92
NvMediaEncodeInputExtradata::bSEIforROIEnable
uint8_t bSEIforROIEnable
Parameter to enable addition of ROI information to SEI NAL.
Definition: nvmedia_iep_input_extradata.h:74
NvMediaEncSetAttr_DRCParams
@ NvMediaEncSetAttr_DRCParams
This is used to pass dynamic resolution change specific information NvMediaEncodeDRCConfig.
Definition: nvmedia_iep_input_extradata.h:97
NvMediaEncodeDRCConfig::ulDRCHeight
uint16_t ulDRCHeight
Holds the encode Height.
Definition: nvmedia_iep_input_extradata.h:84
NvMediaVideoEncFrame_QPDeltaBuffer
@ NvMediaVideoEncFrame_QPDeltaBuffer
enable QP Delta Buffer
Definition: nvmedia_iep_input_extradata.h:46
NvMediaEncodeCfgFiles
Defines the structure for holding the encoding attributes for HW validation.
Definition: nvmedia_iep_input_extradata.h:109
NvMediaEncROIParams::roiRect
NvMediaRect roiRect
Region of interest rectangle.
Definition: nvmedia_iep_input_extradata.h:34
NvMediaStatus
NvMediaStatus
Defines all possible error codes.
Definition: nvmedia_core.h:104
NvMediaEncodeInputExtradata::QPDeltaBufferSize
uint32_t QPDeltaBufferSize
Parameter to program QP Delta Buffer Size.
Definition: nvmedia_iep_input_extradata.h:66
NvMediaIEP
struct NvMediaIEP NvMediaIEP
Opaque NvMediaIEP object created by NvMediaIEPCreate.
Definition: nvmedia_iep.h:75
NvMediaIEPSetAttribute
NvMediaStatus NvMediaIEPSetAttribute(const NvMediaIEP *encoder, NvMediaEncSetAttrType attrType, uint32_t attrSize, const void *AttributeData)
Set the encoder attribute for current encoding session.
NvMediaEncodeInputExtradata
Holds an Video encoder input extradata configuration.
Definition: nvmedia_iep_input_extradata.h:55
NvMediaEncodeInputExtradata::QPDeltaBuffer
signed char * QPDeltaBuffer
Parameter to program QP Delta Buffer.
Definition: nvmedia_iep_input_extradata.h:64
NvMediaEncodeInputExtradata::PPEMetadata
uint8_t * PPEMetadata
Preprocessing enhancements metadata.
Definition: nvmedia_iep_input_extradata.h:62
NvMediaEncodeInputExtradata::ulExtraDataSize
uint32_t ulExtraDataSize
Size of this extradata structure.
Definition: nvmedia_iep_input_extradata.h:58
NvMediaVideoEncEncFrameFlags
NvMediaVideoEncEncFrameFlags
Defines video frame flags.
Definition: nvmedia_iep_input_extradata.h:42
NvMediaRect
Holds a rectangular region of a surface.
Definition: nvmedia_core.h:89
nvmedia_core.h
NVIDIA Media Interface: Core
nvmedia_iep.h
NVIDIA Media Interface: NvMedia Image Encode Processing API
NvMediaEncSetAttr_HWConfigFiles
@ NvMediaEncSetAttr_HWConfigFiles
This attribute is used to pass HW config files as specified in NvVideoEncodeCfgFiles for current enco...
Definition: nvmedia_iep_input_extradata.h:102
NvMediaEncROIParams::lQPdelta
int32_t lQPdelta
QP delta for Region.
Definition: nvmedia_iep_input_extradata.h:36
NvMediaIEPSetInputExtraData
NvMediaStatus NvMediaIEPSetInputExtraData(const NvMediaIEP *encoder, const void *extradata)
Set the encoder extra data for current frame for encoding.
NvMediaVideoEncFrame_PPEMetadata
@ NvMediaVideoEncFrame_PPEMetadata
enable preprocessing enhancements buffer
Definition: nvmedia_iep_input_extradata.h:44
NVMEDIA_MAX_ROI_REGIONS
#define NVMEDIA_MAX_ROI_REGIONS
Maximum number of region of interests.
Definition: nvmedia_iep_input_extradata.h:30
NvMediaEncodeDRCConfig
Defines the resolution change parameters.
Definition: nvmedia_iep_input_extradata.h:79
NvMediaEncodeInputExtradata::ulNumROIRegions
uint32_t ulNumROIRegions
Region of interest parameters.
Definition: nvmedia_iep_input_extradata.h:70
NvMediaVideoEncFrame_ROIParams
@ NvMediaVideoEncFrame_ROIParams
passing region of interest parameters
Definition: nvmedia_iep_input_extradata.h:48
NvMediaEncodeCfgFiles::ExtHintsFileBaseName
char * ExtHintsFileBaseName
Ext Hints config file name for HW validation.
Definition: nvmedia_iep_input_extradata.h:112
NvMediaEncodeInputExtradata::EncodeParamsFlag
uint32_t EncodeParamsFlag
bit fields defined in NvMediaVideoEncEncFrameFlags to indicate valid frame parameters
Definition: nvmedia_iep_input_extradata.h:60