NVIDIA DRIVE OS Linux SDK API Reference

5.1.6.0 Release

 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
nvmedia_common.h
Go to the documentation of this file.
1 /*
2  * Copyright (c) 2017-2019 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 
8 
17 #ifndef NVMEDIA_COMMON_H
18 #define NVMEDIA_COMMON_H
19 
20 #ifdef __cplusplus
21 extern "C" {
22 #endif
23 
24 #include "nvmedia_core.h"
25 
52 #define NVMEDIA_COMMON_VERSION_MAJOR 1
53 
54 #define NVMEDIA_COMMON_VERSION_MINOR 28
55 
59 typedef enum {
69 
73 typedef enum {
83 
87 typedef enum {
113 
118 typedef struct {
120  uint8_t *bitstream;
122  uint32_t bitstreamBytes;
124  uint32_t bitstreamSize;
126 
130 enum
131 {
138 };
139 
150 typedef void NvMediaPictureInfo;
151 
162 typedef void NvMediaRefSurface;
163 
181 typedef struct {
186  NvMediaRefSurface *surface;
200  int32_t field_order_cnt[2];
206  uint16_t FrameIdx;
207 
211  uint16_t not_existing;
213 
215 #define MAX_USER_SEI_PAYLOAD 128U
216 
222 typedef struct {
250  uint8_t UserDefinedSeiPayload[MAX_USER_SEI_PAYLOAD];
252 
270 typedef struct {
272  int32_t field_order_cnt[2];
275 
279  uint16_t frame_num;
281  uint8_t field_pic_flag;
285  uint8_t num_ref_frames;
333  uint8_t *slice_group_map;
335  uint8_t fmo_aso_enable;
338 
340  uint8_t scaling_lists_4x4[6][16];
342  uint8_t scaling_lists_8x8[2][64];
343 
345  NvMediaReferenceFrameH264 referenceFrames[16];
348  uint32_t nNumSlices;
350  uint32_t *pSliceDataOffsets;
352  uint8_t frameType;
353 
355  struct {
359  uint16_t view_id;
369  uint16_t InterViewRefsL0[16];
371  uint16_t InterViewRefsL1[16];
372  } mvcext;
373 
381  int32_t last_sps_id;
383  int32_t last_pps_id;
387 
403 typedef struct
404 {
406  uint16_t display_primaries_x[3];
408  uint16_t display_primaries_y[3];
410  uint16_t white_point_x;
412  uint16_t white_point_y;
418 
425 typedef struct
426 {
432 
433 
434 
442 typedef struct
443 {
448  uint8_t *pBitstreamData;
450  uint32_t uNumSlices;
452  uint32_t *pSliceDataOffsets;
454  uint32_t uCTBCount;
456  uint32_t uFirstCtbAddr;
464 
480 typedef struct {
481  // sps
501  uint8_t bit_depth_luma;
539  uint8_t reserved1[3];
540 
541  // pps
558 
575 
592 
611 
613  uint16_t column_width_minus1[22];
615  uint16_t row_height_minus1[20];
616 
617  // RefPicSets
619  uint32_t iCur;
621  uint32_t IDRPicFlag;
623  uint32_t RAPPicFlag;
627  uint32_t NumPocTotalCurr;
633  uint32_t NumPocLtCurr;
635  uint32_t NumBitsToSkip;
642  NvMediaRefSurface *RefPics[16];
643  int32_t PicOrderCntVal[16];
645  uint8_t IsLongTerm[16];
646  int8_t RefPicSetStCurrBefore[8];
647  int8_t RefPicSetStCurrAfter[8];
648  int8_t RefPicSetLtCurr[8];
649 
650  // scaling lists (diag order)
652  uint8_t ScalingList4x4[6][16];
654  uint8_t ScalingList8x8[6][64];
656  uint8_t ScalingList16x16[6][64];
658  uint8_t ScalingList32x32[2][64];
660  uint8_t ScalingListDCCoeff16x16[6];
662  uint8_t ScalingListDCCoeff32x32[2];
663 
665  uint32_t NumDeltaPocs[64];
666 
668  // sps extension HEVC-main 444
689 
691  // pps extension HEVC-main 444
707  int8_t cb_qp_adjustment[6];
709  int8_t cr_qp_adjustment[6];
711  uint8_t reserved2;
713  uint8_t frameType;
714 
723 
725  struct {
727  uint32_t mv_hevc_enable;
729  uint32_t nuh_layer_id;
745  int32_t RefPicSetInterLayer0[32];
747  int32_t RefPicSetInterLayer1[32];
748  } mvext;
772 typedef struct {
777  NvMediaRefSurface *forward_reference;
782  NvMediaRefSurface *backward_reference;
783 
797  uint8_t alternate_scan;
799  uint8_t q_scale_type;
810  uint8_t f_code[2][2];
812  uint8_t intra_quantizer_matrix[64];
814  uint8_t non_intra_quantizer_matrix[64];
818  uint32_t nNumSlices;
820  uint32_t *pSliceDataOffsets;
824 
843 typedef struct {
848  NvMediaRefSurface *forward_reference;
853  NvMediaRefSurface *backward_reference;
854 
856  int32_t trd[2];
858  int32_t trb[2];
872  uint8_t interlaced;
874  uint8_t quant_type;
876  uint8_t quarter_sample;
886  uint8_t intra_quantizer_matrix[64];
888  uint8_t non_intra_quantizer_matrix[64];
892  uint8_t reversible_vlc;
895  uint32_t nNumSlices;
897  uint32_t *pSliceDataOffsets;
898 
904  uint32_t divx_flags;
910 
928 typedef struct {
933  NvMediaRefSurface *forward_reference;
938  NvMediaRefSurface *backward_reference;
943  NvMediaRefSurface *range_mapped;
944 
946  uint8_t picture_type;
951 
952 
954  uint8_t postprocflag;
956  uint8_t pulldown;
958  uint8_t interlace;
960  uint8_t tfcntrflag;
962  uint8_t finterpflag;
964  uint8_t psf;
966  uint8_t dquant;
968  uint8_t panscan_flag;
970  uint8_t refdist_flag;
972  uint8_t quantizer;
974  uint8_t extended_mv;
976  uint8_t extended_dmv;
978  uint8_t overlap;
980  uint8_t vstransform;
982  uint8_t loopfilter;
984  uint8_t fastuvmc;
988  uint8_t range_mapy;
992  uint8_t range_mapuv;
993 
998  uint8_t multires;
1003  uint8_t syncmarker;
1008  uint8_t rangered;
1013  uint8_t rangeredfrm;
1018  uint8_t maxbframes;
1021  uint32_t nNumSlices;
1024 
1026  uint8_t profile;
1028  uint16_t frameWidth;
1030  uint16_t frameHeight;
1049 typedef struct {
1051  NvMediaRefSurface *LastReference;
1053  NvMediaRefSurface *GoldenReference;
1055  NvMediaRefSurface *AltReference;
1057  uint8_t key_frame;
1059  uint8_t version;
1061  uint8_t show_frame;
1066  uint8_t clamp_type;
1079  uint8_t filter_type;
1091  uint8_t dequant_index;
1093  int8_t deltaq[5];
1094 
1106  uint8_t mb_seg_tree_probs [3];
1107 
1109  int8_t seg_feature[2][4];
1111  int8_t ref_lf_deltas[4];
1113  int8_t mode_lf_deltas[4];
1114 
1116  uint8_t BitsConsumed;
1118  uint8_t AlignByte[3];
1126  uint32_t coeff_partition_size[8];
1128  uint32_t coeff_partition_start_offset[8];
1131  uint32_t nNumSlices;
1138 
1158 typedef struct {
1160  uint32_t inter_mode_counts[7][3][2];
1162  uint32_t sb_ymode_counts[4][10];
1164  uint32_t uv_mode_counts[10][10];
1166  uint32_t partition_counts[16][4];
1168  uint32_t switchable_interp_counts[4][3];
1170  uint32_t intra_inter_count[4][2];
1172  uint32_t comp_inter_count[5][2];
1174  uint32_t single_ref_count[5][2][2];
1176  uint32_t comp_ref_count[5][2];
1178  uint32_t tx32x32_count[2][4];
1180  uint32_t tx16x16_count[2][3];
1182  uint32_t tx8x8_count[2][2];
1184  uint32_t mbskip_count[3][2];
1186  uint32_t joints[4];
1188  uint32_t sign[2][2];
1190  uint32_t classes[2][11];
1192  uint32_t class0[2][2];
1194  uint32_t bits[2][10][2];
1196  uint32_t class0_fp[2][2][4];
1198  uint32_t fp[2][4];
1200  uint32_t class0_hp[2][2];
1202  uint32_t hp[2][2];
1204  uint32_t countCoeffs[2][2][6][6][4];
1206  uint32_t countCoeffs8x8[2][2][6][6][4];
1208  uint32_t countCoeffs16x16[2][2][6][6][4];
1210  uint32_t countCoeffs32x32[2][2][6][6][4];
1212  uint32_t countEobs[4][2][2][6][6];
1214 
1221 typedef struct {
1222 
1224  uint8_t kf_bmode_prob[10][10][8];
1226  uint8_t kf_bmode_probB[10][10][1];
1228  uint8_t ref_pred_probs[3];
1230  uint8_t mb_segment_tree_probs[7];
1232  uint8_t segment_pred_probs[3];
1234  uint8_t ref_scores[4];
1236  uint8_t prob_comppred[2];
1238  uint8_t pad1[9];
1239 
1241  uint8_t kf_uv_mode_prob[10][8];
1243  uint8_t kf_uv_mode_probB[10][1];
1245  uint8_t pad2[6];
1246 
1248  uint8_t inter_mode_prob[7][4];
1250  uint8_t intra_inter_prob[4];
1251 
1253  uint8_t uv_mode_prob[10][8];
1255  uint8_t tx8x8_prob[2][1];
1257  uint8_t tx16x16_prob[2][2];
1259  uint8_t tx32x32_prob[2][3];
1261  uint8_t sb_ymode_probB[4][1];
1263  uint8_t sb_ymode_prob[4][8];
1264 
1266  uint8_t partition_prob[2][16][4];
1267 
1269  uint8_t uv_mode_probB[10][1];
1271  uint8_t switchable_interp_prob[4][2];
1273  uint8_t comp_inter_prob[5];
1275  uint8_t mbskip_probs[3];
1277  uint8_t pad3[1];
1278 
1280  uint8_t joints[3];
1282  uint8_t sign[2];
1284  uint8_t class0[2][1];
1286  uint8_t fp[2][3];
1288  uint8_t class0_hp[2];
1290  uint8_t hp[2];
1292  uint8_t classes[2][10];
1294  uint8_t class0_fp[2][2][3];
1296  uint8_t bits[2][10];
1297 
1299  uint8_t single_ref_prob[5][2];
1301  uint8_t comp_ref_prob[5];
1303  uint8_t pad4[17];
1304 
1306  uint8_t probCoeffs[2][2][6][6][4];
1308  uint8_t probCoeffs8x8[2][2][6][6][4];
1310  uint8_t probCoeffs16x16[2][2][6][6][4];
1312  uint8_t probCoeffs32x32[2][2][6][6][4];
1314 
1323 typedef struct {
1325  NvMediaRefSurface *LastReference;
1327  NvMediaRefSurface *GoldenReference;
1329  NvMediaRefSurface *AltReference;
1331  uint32_t width;
1333  uint32_t height;
1335  uint32_t ref0_width;
1337  uint32_t ref0_height;
1339  uint32_t ref1_width;
1341  uint32_t ref1_height;
1343  uint32_t ref2_width;
1345  uint32_t ref2_height;
1347  uint32_t keyFrame;
1349  uint32_t bit_depth;
1351  uint32_t prevIsKeyFrame;
1353  uint32_t PrevShowFrame;
1357  uint32_t errorResilient;
1359  uint32_t intraOnly;
1363  uint8_t refFrameSignBias[4];
1369  int32_t qpYAc;
1371  int32_t qpYDc;
1373  int32_t qpChAc;
1375  int32_t qpChDc;
1377  uint32_t lossless;
1379  uint32_t transform_mode;
1387  uint32_t comp_pred_mode;
1389  uint32_t comp_fixed_ref;
1391  uint32_t comp_var_ref[2];
1395  uint32_t log2_tile_rows;
1397  uint32_t segmentEnabled;
1405  uint8_t segmentFeatureEnable[8][4];
1407  short segmentFeatureData[8][4];
1411  uint32_t mbRefLfDelta[4];
1413  uint32_t mbModeLfDelta[2];
1417  uint32_t frameTagSize;
1420 
1430 #define NVMEDIA_VIDEO_ENCODER_TIMEOUT_INFINITE 0xFFFFFFFF
1431 
1436 #define NVMEDIA_ENCODE_INFINITE_GOPLENGTH 0xFFFFFFFF
1437 
1442 typedef struct {
1444  uint32_t qpInterP;
1446  uint32_t qpInterB;
1448  uint32_t qpIntra;
1449 } NvMediaEncodeQP;
1450 
1456 typedef enum
1457 {
1469 
1474 typedef struct {
1478  uint32_t numBFrames;
1479  union {
1480  struct {
1482  uint32_t averageBitRate;
1485  uint32_t vbvBufferSize;
1489  } cbr;
1490  struct {
1494  } const_qp;
1495  struct {
1497  uint32_t averageBitRate;
1499  uint32_t maxBitRate;
1502  uint32_t vbvBufferSize;
1505  uint32_t vbvInitialDelay;
1506  } vbr;
1507  struct {
1509  uint32_t averageBitRate;
1511  uint32_t maxBitRate;
1514  uint32_t vbvBufferSize;
1517  uint32_t vbvInitialDelay;
1520  } vbr_minqp;
1521  struct {
1523  uint32_t averageBitRate;
1526  uint32_t vbvBufferSize;
1529  uint32_t vbvInitialDelay;
1531  NvMediaEncodeQP minQP;
1532  } cbr_minqp;
1533  } params;
1539  uint32_t maxSessionQP;
1541 
1546 typedef enum {
1554 
1566 typedef enum {
1582 
1586 typedef enum {
1589 
1603 
1608 typedef enum {
1611 
1641 
1646 typedef enum {
1657 
1661 typedef enum {
1669 
1674 typedef enum {
1680 
1685 typedef enum {
1693 
1698 typedef enum {
1706 
1711 typedef enum {
1730 
1749 
1758 
1767 
1777 
1782 typedef enum {
1802 
1808 typedef enum {
1816 
1822 typedef enum {
1830 
1835 typedef enum {
1843 
1848 #define MAX_NON_SLICE_DATA_SIZE 2048U
1849 
1854 typedef struct {
1856  uint32_t ulNalSize;
1859 } NvMediaNalData;
1860 
1864 typedef struct {
1872  uint16_t aspectSARWidth;
1885  uint8_t videoFormat;
1900  uint8_t colourMatrix;
1907 
1911 typedef struct {
1921 
1925 typedef struct {
1927  int32_t mvx : 12;
1929  int32_t mvy : 10;
1931  uint32_t refidx : 5;
1933  uint32_t dir : 1;
1935  uint32_t partType : 2;
1937  uint32_t lastofPart : 1;
1939  uint32_t lastOfMB : 1;
1941 
1946 typedef enum {
1992 
1996 typedef struct {
1999  uint32_t features;
2003  uint32_t gopLength;
2012  uint32_t idrPeriod;
2077 
2081 typedef struct {
2083  uint32_t payloadSize;
2085  uint32_t payloadType;
2087  uint8_t *payload;
2089 
2093 typedef struct {
2095  uint32_t encodeWidth;
2097  uint32_t encodeHeight;
2102  uint32_t frameRateNum;
2105  uint32_t frameRateDen;
2109  uint8_t profile;
2113  uint8_t level;
2149  uint32_t mvcNumViews : 4;
2151  uint32_t enableExternalPictureRC : 1;
2153  uint32_t enableAllIFrames : 1;
2155  uint32_t reserved : 26;
2157 
2161 typedef struct {
2166  uint32_t encodePicFlags;
2173  uint32_t nextBFrames;
2208  uint32_t frameRateNum;
2211  uint32_t frameRateDen;
2213  uint32_t viewId;
2226 typedef struct {
2234  uint16_t aspectSARWidth;
2247  uint8_t videoFormat;
2262  uint8_t matrixCoeffs;
2263  /* Holds that num_units_in_tick, time_scale and fixed_frame_rate_flag are present
2264  in the bitstream (as defined in Annex E of the ITU-T Specification). */
2266  /* Specified the bitstream restriction info (as defined in Annex E of the ITU-T Specification). */
2269 
2274 typedef enum {
2320 
2324 typedef struct {
2327  uint32_t features;
2331  uint32_t gopLength;
2339  uint32_t idrPeriod;
2385 
2389 typedef struct {
2391  uint32_t encodeWidth;
2393  uint32_t encodeHeight;
2400  uint32_t frameRateNum;
2403  uint32_t frameRateDen;
2407  uint8_t profile;
2411  uint8_t level;
2415  uint8_t levelTier;
2451  uint32_t mvNumViews : 4;
2453  uint32_t enableExternalPictureRC : 1;
2455  uint32_t enableAllIFrames : 1;
2457  uint32_t reserved : 26;
2459 
2463 typedef struct {
2465  uint32_t payloadSize;
2467  uint32_t payloadType;
2469  uint32_t nalUnitType;
2471  uint8_t *payload;
2473 
2477 typedef struct {
2482  uint32_t encodePicFlags;
2489  uint32_t nextBFrames;
2524  uint32_t frameRateNum;
2527  uint32_t frameRateDen;
2529  uint32_t viewId;
2531 
2544 typedef enum {
2563 
2567 typedef struct {
2569  uint32_t features;
2573  uint32_t gopLength;
2579  uint32_t idrPeriod;
2580 
2585  uint32_t filter_type;
2587  uint32_t filter_level;
2592  int8_t ref_lf_deltas[4];
2594  int8_t mode_lf_deltas[2];
2599 
2600  /* Set the feature flag \ref NVMEDIA_ENCODE_CONFIG_VP9_ENABLE_QUANTIZATION_PARAMS
2601  to set the following parameters */
2604  uint32_t base_qindex;
2607  int32_t delta_y_dc_q;
2610  int32_t delta_uv_dc;
2613  int32_t delta_uv_ac;
2614 
2615  /* Set the feature flag \ref NVMEDIA_ENCODE_CONFIG_VP9_ENABLE_TRANSFORM_MODE to
2616  set the following parameter */
2620  uint32_t transform_mode;
2621 
2622  /* Set the feature flag \ref NVMEDIA_ENCODE_CONFIG_VP9_ENABLE_HIGH_PRECISION_MV
2623  to set the following parameter */
2626  uint32_t high_prec_mv;
2627 
2628  /* Set the feature flag \ref NVMEDIA_ENCODE_CONFIG_VP9_DISABLE_ERROR_RESILIENT to
2629  set the following parameter */
2633 
2643 
2647 typedef struct {
2649  uint32_t encodeWidth;
2651  uint32_t encodeHeight;
2657  uint32_t frameRateNum;
2660  uint32_t frameRateDen;
2679 
2683 typedef struct {
2688  uint32_t encodePicFlags;
2695  uint32_t nextBFrames;
2724 
2737 typedef enum {
2752 
2756 typedef struct {
2758  uint32_t features;
2762  uint32_t gopLength;
2766  uint32_t version;
2773  uint32_t filter_type;
2775  uint32_t filter_level;
2780  int8_t ref_lf_deltas[4];
2782  int8_t mode_lf_deltas[4];
2790  uint32_t base_qindex;
2793  uint32_t y1dc_delta_q;
2795  uint32_t y2dc_delta_q;
2797  uint32_t y2ac_delta_q;
2799  uint32_t uvdc_delta_q;
2801  uint32_t uvac_delta_q;
2813  int8_t seg_filter_level[4];
2815  int8_t seg_qindex[4];
2832 
2836 typedef struct {
2838  uint32_t encodeWidth;
2840  uint32_t encodeHeight;
2843  uint32_t frameRateNum;
2846  uint32_t frameRateDen;
2853 
2857 typedef struct {
2862  uint32_t encodePicFlags;
2870  uint32_t frameRateNum;
2873  uint32_t frameRateDen;
2875 
2880 typedef enum {
2888 
2899 #define NVMEDIA_DISP_ATTR_COMPOSITION (1<<6)
2900 
2904 #define NVMEDIA_DISP_ATTR_SET_DEPTH (1<<7)
2905 
2909 #define NVMEDIA_DISP_ATTR_SET_POSITION (1<<8)
2910 
2916 typedef enum {
2926 
2930 typedef struct {
2942  uint32_t depth;
2948 
2951 typedef enum {
2967 
2970 /*
2971  * \defgroup history_nvmedia_common History
2972  * Provides change history for the NvMedia Common Types.
2973  *
2974  * \section history_nvmedia_common Version History
2975  *
2976  * <b> Version 1.0 </b> March 21, 2017
2977  * - Initial release
2978  *
2979  * <b> Version 1.1 </b> April 18, 2017
2980  * - Added \ref NvMediaDecoderInstanceId enum and
2981  * \ref NvMediaEncoderInstanceId enum
2982  * - Changed to use standard data types
2983  * - Removed input surface rotation and mirroring enumerations and members from
2984  * \ref NvMediaEncodeInitializeParamsH264 and \ref NvMediaEncodeInitializeParamsH265
2985  *
2986  * <b> Version 1.2 </b> May 4, 2017
2987  * - Added SLICE_LEVEL_OUTPUT, RTP_MODE_OUTPUT, EXT_PIC_RC_HINT, DYNAMIC_RPS,
2988  * MV_BUFFER_DUMP and RECON_CRC features for \ref NvMediaEncodeH264Features
2989  * and \ref NvMediaEncodeH265Features
2990  * - Add bConstFrameQP parameter in \ref NvMediaEncodeRCParams.
2991  * - Add NvMediaEncAttrType enum and NvMediaNalData data structure.
2992  *
2993  * <b> Version 1.3 </b> May 8, 2017
2994  * - Added \ref numMacroblocksPerSlice in \ref NvMediaEncodeConfigH264
2995  * and \ref numCTUsPerSlice in \ref NvMediaEncodeConfigH265.
2996  *
2997  * <b> Version 1.4 </b> May 10, 2017
2998  * - Added LOOP_FILTER_PARAMS, QUANTIZATION_PARAMS, TRANSFORM_MODE, HIGH_PRECISION_MV
2999  * and ERROR_RESILIENT features in \ref NvMediaEncodeVP9Features.
3000  * - Added filter_type, filter_level, sharpness_level, ref_lf_deltas, mode_lf_deltas,
3001  * bmode_ref_lf_delta_enabled, bmode_ref_lf_delta_update, base_qindex, delta_y_dc_q,
3002  * delta_uv_dc, delta_uv_ac, transform_mode, high_prec_mv and error_resilient
3003  * parameters in \ref NvMediaEncodeConfigVP9.
3004  *
3005  * <b> Version 1.5 </b> May 17, 2017
3006  * - Added display_attributes enum defines
3007  * - Added \ref NvMediaDispCompMode and \ref NvMediaDispAttributes
3008  *
3009  * <b> Version 1.6 </b> May 18, 2017
3010  * - Added NvMediaTransform enum defines
3011  *
3012  * <b> Version 1.7 </b> June 05, 2017
3013  * - Add \ref bSliceDecEnable and \ref NvMediaSliceDecodeData structure member in
3014  * \ref NvMediaPictureInfoH265 structure.
3015  *
3016  * <b> Version 1.8 </b> June 07, 2017
3017  * - Added \ref NvMediaEncodeH264POCType enum for H.264 pic_order_cnt_type.
3018  * The support is added for pic_order_cnt_type 0 and 2. pic_order_cnt_type 1 is not
3019  * not supported.
3020  * - Added variable pocType of type \ref NvMediaEncodeH264POCType in \ref NvMediaEncodeConfigH264.
3021  *
3022  * <b> Version 1.9 </b> June 09, 2017
3023  * -Added PROFILING feature in \ref NvMediaEncodeH264Features,
3024  * \ref NvMediaEncodeH265Features and \ref NvMediaEncodeVP9Features.
3025  *
3026  * <b> Version 1.10 </b> June 09, 2017
3027  * - Removed RECON_CRC features from \ref NvMediaEncodeH264Features
3028  * and \ref NvMediaEncodeH265Features and added it as enableReconCRC
3029  * for \ref NvMediaEncodeInitializeParamsH264 and \ref
3030  * NvMediaEncodeInitializeParamsH265.
3031  * - Added enableMVC, enableROIEncode and enableSliceEncode
3032  * in \ref NvMediaEncodeInitializeParamsH264 and \ref
3033  * NvMediaEncodeInitializeParamsH265.
3034  *
3035  * <b> Version 1.11 </b> June 22, 2017
3036  * -Added levelTier parameter in \ref NvMediaEncodeInitializeParamsH265
3037  * Added initQP, maxQP parameters in \ref NvMediaEncodeConfigH264,
3038  * \ref NvMediaEncodeConfigH265 and \ref NvMediaEncodeConfigVP9.
3039  *
3040  * <b> Version 1.12 </b> June 29, 2017
3041  * -Added feature in \ref NvMediaEncodeH264Features and \ref NvMediaEncodeH265Features,
3042  * to enable 4 byte start code.
3043  *
3044  * <b> Version 1.13</b> June 30, 2017
3045  * -Added HEVC MV interface members in \ref NvMediaPictureInfoH265 structure
3046  *
3047  * <b> Version 1.14</b> July 26, 2017
3048  * -Added enableWeightedPrediction in \ref NvMediaEncodeConfigH264 structure *
3049  *
3050  * <b> Version 1.15</b> Sept 1, 2017
3051  * -Added NvMediaEncodeVP8Features, NvMediaEncodeConfigVP8, NvMediaEncodeInitializeParamsVP8
3052  * and NvMediaEncodePicParamsVP8 structures *
3053  *
3054  * <b> Version 1.16 </b> Sept 13, 2017
3055  * -Added frameRateNum and frameRateDen parameters in \ref NvMediaEncodePicParamsVP8
3056  *
3057  * <b> Version 1.17 </b> Oct 26, 2017
3058  * -Added useBFramesAsRef parameter in \ref NvMediaEncodeInitializeParamsH264
3059  * and \ref NvMediaEncodeInitializeParamsH265
3060  *
3061  * <b> Version 1.18 </b> Nov 6, 2017
3062  * - Added enableTwoPassRC and enableSourceHalfScaled for \ref NvMediaEncodeInitializeParamsH264 and
3063  * \ref NvMediaEncodeInitializeParamsH265.
3064  *
3065  * <b> Version 1.19 </b> Nov 24, 2017
3066  * - Added mvNumViews for \ref NvMediaEncodeInitializeParamsH265 and viewId for
3067  * \ref NvMediaEncodePicParamsH265. Added mvcNumViews for \ref NvMediaEncodeInitializeParamsH264
3068  * and viewId for \ref NvMediaEncodePicParamsH264.
3069  *
3070  * <b> Version 1.20 </b> March 16, 2018
3071  * - Added \ref NvMediaNoiseReductionAlgorithm structure
3072  *
3073  * <b> Version 1.21 </b> October 4, 2018
3074  * - Added Ultrafast encoding support for H.264 for platforms >=T194 in
3075  * \ref NvMediaEncodeH264Features
3076  *
3077  * <b> Version 1.22 </b> October 29, 2018
3078  * - Added enableExternalPictureRC in \ref NvMediaEncodeInitializeParamsH264
3079  * and \ref NvMediaEncodeInitializeParamsH265
3080  *
3081  * <b> Version 1.23 </b> Dec 14, 2018
3082  * - Defined Macro constants as unsigned to fix MISRA issues
3083  * - Fix MISRA violations 21.1 and 21.2
3084  *
3085  * <b> Version 1.24 </b> Jan 02, 2019
3086  * - Added enableAllIFrames in \ref NvMediaEncodeInitializeParamsH264
3087  * and \ref NvMediaEncodeInitializeParamsH265
3088  *
3089  * <b> Version 1.25 </b> Jan 21, 2019
3090  * - Moved \ref NvMediaTransform to nvmedia_2d.h
3091  *
3092  * <b> Version 1.26 </b> Feb 6, 2019
3093  * - Deprecated the following display attributes \ref NVMEDIA_DISP_ATTR_BRIGHTNESS,
3094  * \ref NVMEDIA_DISP_ATTR_COLOR_STANDARD, \ref NVMEDIA_DISP_ATTR_SATURATION,
3095  * \ref NVMEDIA_DISP_ATTR_HUE, \ref NVMEDIA_DISP_ATTR_CONTRAST, \ref NVMEDIA_DISP_ATTR_LIMITED_RGB
3096  * - Deprecated parameters brightness, hue, saturation, contrast, limitedRGB and
3097  * colorStandard from \ref NvMediaDispAttributes
3098  *
3099  * <b> Version 1.27 </b> March 26, 2019
3100  * - Added \ref NvMediaContentLightLevelInfo structure
3101  *
3102  * <b> Version 1.28 </b> April 4, 2019
3103  * - Deprecate NVMEDIA_MIN_CAPTURE_FRAME_BUFFERS, NVMEDIA_MAX_CAPTURE_FRAME_BUFFERS
3104  */
3105 
3106 
3107 #ifdef __cplusplus
3108 }; /* extern "C" */
3109 #endif
3110 
3111 #endif /* NVMEDIA_COMMON_H */
uint32_t nNumSlices
Number of slices in this picture.
uint16_t aspectSARHeight
If aspectRatioIdc is Extended SAR it indicates vertical size of the sample aspect ratio (in the same ...
uint8_t cabacBypassAlignmentEnableFlag
Holds the SPS cabac_bypass_alignment_enabled_flag; always 0 in current profile.
uint32_t qpInterB
QP value for B frames.
uint32_t useBFramesAsRef
Enables B frames to be used as refernces frames.
uint8_t scaling_matrix_present
Copy of the H.264 bitstream field.
Enable support for motion vector buffer dump.
Holds H265-specific encode initialization parameters.
uint32_t * pSliceDataOffsets
Passing NULL for pSliceDataOffsets disables error-concealment.
uint32_t y1dc_delta_q
VP8 delta (subtracted from baseline quant index)
uint32_t nNumSlices
Number of slices in this picture.
uint32_t allow_high_precision_mv
Holds a copy of the VP9 bitstream field.
NvMediaBool videoFullRangeFlag
Holds the output range of the luma and chroma samples (as defined in Annex E of the ITU-T Specificati...
uint32_t log2_tile_columns
Holds a copy of the VP9 bitstream field.
uint8_t log2_diff_max_min_transform_block_size
Holds a copy of the H.265 bitstream field.
uint32_t mb_segment_abs_delta
VP8 mb segment abs delta.
uint32_t pic_height_in_map_units_minus1
Copy of the H.264 bitstream field.
int8_t pps_cr_qp_offset
Holds a copy of the H.265 bitstream field.
This attribute is used to get SPS data for current encoding session.
uint32_t hdr_processed_offset
Offset to byte which is parsed in cpu.
uint8_t highPrecisionOffsetsEnableFlag
Holds the SPS high_precision_offsets_enabled_flag.
NvMediaBool videoSignalTypePresentFlag
If set to NVMEDIA_TRUE, it specifies that the videoFormat, videoFullRangeFlag and colourDescriptionPr...
Disable Intra 8x8 vertical left prediction.
uint8_t num_short_term_ref_pic_sets
Holds a copy of the H.265 bitstream field.
uint32_t qpInterP
QP value for P frames.
Enable to set loop filter parameters.
uint32_t log2_tile_rows
Holds a copy of the VP9 bitstream field.
uint8_t num_ref_frames
Copy of the H.264 bitstream field.
uint8_t maxNumRefFrames
Holds the max reference numbers used for encoding.
uint32_t viewId
Holds the viewId of current picture.
uint16_t white_point_x
Normalized x chromaticity cordinate of white point of mastering display.
NvMediaEncodeQP maxQP
Holds the maximum QP parameters.
Automatic profile selection.
uint32_t idrPeriod
Holds the IDR interval.
int8_t pps_beta_offset_div2
Holds a copy of the H.265 bitstream field.
uint8_t frame0_flipped_flag
Indicates which one of the two constituent frames is flipped, as described in Annex D...
Mastering display data for an H.265 picture.
uint32_t frameTagSize
Holds a copy of the VP9 bitstream field.
uint32_t encodePicFlags
Holds bit-wise OR`ed encode pic flags.
NvMediaRefSurface * forward_reference
Reference used by B and P frames.
uint8_t profile
Holds the encoding profile.
uint8_t log2_max_pic_order_cnt_lsb_minus4
Holds a copy of the H.265 bitstream field.
NvMediaBool bGMCConceal
Parser only: DivX GMC Concealment Flag to prevent decoding of non I-VOPs during a GMC sequence and in...
NvMediaEncodeH264Features
Defines H264 encoder configuration features.
uint8_t picture_structure
Holds a copy of the MPEG bitstream field.
uint8_t * slice_group_map
Slice group map.
uint8_t frame_mbs_only_flag
Copy of the H.264 bitstream field.
uint8_t transferCharacteristics
Holds the opto-electronic transfer characteristics to use (as defined in Annex E of the ITU-T Specifi...
uint8_t weighted_bipred_idc
Copy of the H.264 bitstream field.
uint8_t field_pic_flag
Copy of the H.264 bitstream field.
Holds picture parameter information for a VP9 picture.
NvMediaEncodeRCParams rcParams
Holds the rate control parameters for the current encoding session.
Intra predicted picture.
Holds an application data buffer containing compressed video data.
int8_t chroma_qp_index_offset
Copy of the H.264 bitstream field.
uint8_t vop_fcode_forward
Holds a copy of the bitstream field.
Disable Intra 8x8 vertical right prediction.
uint16_t frame_num
Copy of the H.264 bitstream field.
uint32_t uCoeffPartitionBufferHandle
Handle to VP8 Coeff partition (for OTF case).
uint8_t level
Holds the encoding level.
uint32_t refresh_entropy_probs
VP8 refresh entropy probs.
uint32_t nextBFrames
Secifies the number of B-frames that follow the current frame.
uint32_t frameRateDen
Holds the numerator for frame rate used for encoding in frames per second ( Frame rate = frameRateNum...
uint8_t extended_dmv
Holds a copy of the VC-1 bitstream field.
uint32_t numBFrames
Specified number of B frames between two reference frames.
uint8_t content_interpretation_flag
Indicates the intended interpretation of the constituent frames, as described in Annex D...
Enable support to use 4 byte start code in all the slices in a picture.
Specifies the decoder instance ID 1.
uint32_t y2dc_delta_q
VP8 Y2 dc delta.
uint8_t matrixCoeffs
Holds the matrix coefficients used in deriving the luma and chroma from the RGB primaries (as defined...
uint32_t * pSliceDataOffsets
Passing NULL for pSliceDataOffsets disables error-concealment.
uint8_t log2SaoOffsetScaleChroma
Holds the PPS log2_sao_offset_scale_chroma.
uint32_t ref2_height
Holds a copy of the VP9 bitstream field.
Holds the H.265 video usability information parameters.
uint32_t NvMediaBool
A boolean value, holding NVMEDIA_TRUE or NVMEDIA_FALSE.
Definition: nvmedia_core.h:80
NvMediaEncodeExternalMEHint * meExternalHints
Holds the pointer to ME external hints for the current frame.
uint8_t update_mb_seg_data
Holds a copy of the VP8 bitstream field.
NvMediaRefSurface * surface
The surface that contains the reference image.
uint16_t frameHeight
Parser only: Actual frame height.
Constant bitrate mode with MinQP.
NvMediaEncoderInstanceId
Specifies the encoder instance ID.
NvMediaBool bmode_ref_lf_delta_update
Set it to true if MB-level loop filter adjustment delta values are updated.
uint8_t loopfilter
Holds a copy of the VC-1 bitstream field.
NvMediaDecoderInstanceId
Specifies the decoder instance ID.
NvMediaEncodeLevel
Defines encoding levels.
uint32_t frameRateNum
Holds the numerator for frame rate used for encoding in frames per second ( Frame rate = frameRateNum...
uint32_t seiPayloadArrayCnt
Holds the number of elements allocated in seiPayloadArray array.
Disable Intra 4x4 horizontal down prediction.
uint32_t * pSliceDataOffsets
Passing NULL for pSliceDataOffsets disables error-concealment.
uint8_t fastuvmc
Holds a copy of the VC-1 bitstream field.
uint8_t CbrHdrBedRange
Holds a copy of the VP8 bitstream field.
uint8_t update_mb_seg_map
Holds a copy of the VP8 bitstream field.
uint8_t vstransform
Holds a copy of the VC-1 bitstream field.
uint8_t maxbframes
Copy of the VC-1 bitstream field.
int32_t qpYDc
Holds a copy of the VP9 bitstream field.
NvMediaEncodeH264POCType pocType
Holds pic_ordec_cnt_type.
High filter quality.
uint32_t NumActiveRefLayerPics1
Holds a copy of the H.265-MV bitstream field.
Holds quantization parameters(QP) value for frames.
NvMediaBool is_long_term
Is this a long term reference (else short term).
uint32_t NumPocTotalCurr
Holds a copy of the H.265 bitstream field.
uint32_t vbvInitialDelay
Holds the VBV(HRD) initial delay in bits.
uint32_t frameRateDen
Holds the denominator for frame rate used for encoding in frames per second ( Frame rate = frameRateN...
NvMediaBool overscanInfoPresentFlag
If set to NVMEDIA_TRUE, it specifies that the overscanInfo is present.
Disable Intra 4x4 diagonal down right prediction.
uint8_t mode_ref_lf_delta_enabled
Holds a copy of the VP8 bitstream field.
NvMediaBool enableTwoPassRC
Enable 2 pass RC support.
uint32_t encodeHeight
Holds the encode height.
uint32_t frameRateDen
Holds the denominator for frame rate used for encoding in frames per second ( Frame rate = frameRateN...
A lower depth overlay is fully covering any higher depth overlay.
Quality Level 1 Pre-settings.
uint8_t intraSmoothingDisabledFlag
Holds the SPS intra_smoothing_disabled_flag.
uint16_t white_point_y
Normalized y chromaticity cordinate of white point of mastering display.
VC-1 advanced profile codec.
uint32_t sharpness_level
Specifies Sharpness level.
NvMediaEncodeRCParams rcParams
Holds the rate control parameters for the current encoding session.
uint32_t numCandsPerBlk8x16
Holds the number of candidates per 8x16 block.
uint8_t extendedPrecisionProcessingFlag
Holds the SPS extended_precision_processing_flag; always 0 in current profile.
uint32_t intraRefreshCnt
Holds the number of frames over which intra refresh happens.
uint8_t transquant_bypass_enabled_flag
Holds a copy of the H.265 bitstream field.
uint8_t redundant_pic_cnt_present_flag
Copy of the H.264 bitstream field.
uint32_t uBitstreamDataLen
Bitstream data.
Content Light Level info for an H.265 picture.
uint8_t log2MaxTransformSkipSize
Holds the PPS extension log2_max_transform_skip_block_size_minus2, 0...5.
Medium filter quality.
NvMediaBool no_temporal_mv_hints
Set to disable temporal mv hints.
NvMediaBool bLastSlice
Last slice flag: whether this SliceData contains last slice of frame.
NvMediaEncodeVP9Features
Defines VP9 encoder configuration features.
uint8_t q_scale_type
Holds a copy of the MPEG bitstream field.
uint8_t entropy_coding_mode_flag
Copy of the H.264 bitstream field.
uint32_t maxSessionQP
Holds the max QP for encoding session when external picture RC hint is used.
uint8_t log2_min_transform_block_size_minus2
Holds a copy of the H.265 bitstream field.
IP Search mode bit Intra 4x4.
uint8_t show_frame
Holds a copy of the VP8 bitstream field.
uint8_t colourPrimaries
Holds color primaries for converting to RGB (as defined in Annex E of the ITU-T Specification).
uint8_t intra_dc_precision
Holds a copy of the MPEG bitstream field.
uint32_t divx_flags
Parser Only: DivX flags.
Holds H264 video usability information parameters.
int8_t pic_init_qp_minus26
Copy of the H.264 bitstream field.
NvMediaRefSurface * LastReference
Holds a pointer to the last reference frame.
uint8_t delta_pic_order_always_zero_flag
Copy of the H.264 bitstream field.
uint8_t diff_cu_qp_delta_depth
Holds a copy of the H.265 bitstream field.
uint8_t constrained_intra_pred_flag
Holds a copy of the H.265 bitstream field.
uint32_t frameRateDen
Holds the denominator for frame rate used for encoding in frames per second ( Frame rate = frameRateN...
uint8_t syncmarker
Copy of the VC-1 bitstream field.
uint32_t frameRateNum
Holds the numerator for frame rate used for encoding in frames per second ( Frame rate = frameRateNum...
NvMediaBool bottom_is_reference
Is the bottom field used as a reference.
uint8_t weighted_bipred_flag
Holds a copy of the H.265 bitstream field.
uint32_t uCoeffPartitionDataLen
Number of bytes in VP8 Coeff partition (for OTF case)
NvMediaRefSurface * GoldenReference
Golden reference frame.
uint32_t gopLength
Holds the number of pictures in one GOP.
Holds H264-specific encode initialization parameters.
uint8_t enableWeightedPrediction
Holds enable weighted prediction.
uint8_t alternate_vertical_scan_flag
Holds a copy of the bitstream field.
H.264 specific User SEI message.
uint8_t update_mb_seg_abs
Copy of the VP8 bitstream field.
uint32_t transform_mode
Specifies transform_mode: 0: only4x4, 1: allow_8x8, 2: allow_16x16, 3: allow_32x32, 4:transform_mode_select.
NvMediaRefSurface * LastReference
Last reference frame.
Disable Intra 4x4 vertical right prediction.
uint8_t slice_group_map_type
Copy of the H.264 bitstream field.
NvMediaBool enableROIEncode
Enable region of interest encoding.
uint8_t colourMatrix
Holds the matrix coefficients used in deriving the luma and chroma from the RGB primaries (as defined...
uint8_t key_frame
Holds a copy of the VP8 bitstream field.
uint32_t pic_height_in_luma_samples
Holds a copy of the H.265 bitstream field.
Holds VP9-specific encoder picture parameters, which are sent on a per frame basis.
Specifies that Adaptive Transform 8x8 mode is disabled.
uint32_t ref0_height
Holds a copy of the VP9 bitstream field.
uint32_t modeRefLfEnabled
Holds a copy of the VP9 bitstream field.
uint8_t dquant
Holds a copy of the VC-1 bitstream field.
uint8_t constrained_intra_pred_flag
Copy of the H.264 bitstream field.
int32_t last_pps_id
Copy of the H.264 bitstream field.
Enable to set quantization parameters.
NvMediaBool enableExternalMEHints
Holds a flag indicating whether to enable or disable the external ME hints.
Holds picture parameter information for an MPEG-4 Part 2 picture.
uint8_t num_ref_idx_l0_active_minus1
Copy of the H.264 bitstream field.
Holds H265-specific encoder picture parameters.
uint8_t frameType
0:FrameType_B 1:FrameType_P 2:FrameType_I
uint8_t log2_diff_max_min_pcm_luma_coding_block_size
Holds a copy of the H.265 bitstream field.
uint32_t default_ref_layers_active_flag
Holds a copy of the H.265-MV bitstream field.
NvMediaBool enableLimitedRGB
Set this to NVMEDIA_TRUE for limited-RGB (16-235) input.
uint8_t full_pel_backward_vector
Holds a copy of the MPEG-1 bitstream field.
NvMediaDispCompMode
Specifies composition modes for layers.
NvMediaBool bmode_ref_lf_delta_enabled
Set it to true if MB-level loop filter adjustment is on.
uint32_t segmentEnabled
Holds a copy of the VP9 bitstream field.
NvMediaNoiseReductionAlgorithm
Noise Reduction Algorithm.
Bi-directionally predicted picture.
Constant bitrate mode.
uint8_t loop_filter_across_tiles_enabled_flag
Holds a copy of the H.265 bitstream field.
uint32_t hdr_partition_size
Remaining header parition size.
NvMediaEncodeH264AdaptiveTransformMode adaptiveTransformMode
Holds the Adaptive Transform Mode.
NvMediaRefSurface * AltReference
Alternate reference frame.
uint8_t tiles_enabled_flag
Holds a copy of the H.265 bitstream field.
uint8_t tfcntrflag
Holds a copy of the VC-1 bitstream field.
uint8_t postprocflag
Holds a copy of the VC-1 bitstream field.
uint8_t loop_filter_level
Holds a copy of the VP8 bitstream field.
uint8_t resync_marker_disable
Holds a copy of the bitstream field.
uint8_t deblocking_filter_control_present_flag
Holds a copy of the H.265 bitstream field.
uint8_t num_ref_idx_l1_active_minus1
Copy of the H.264 bitstream field.
Specifies that the decoder instance ID can be set dynamically during decode.
uint8_t fastRiceAdaptationEnableFlag
Holds the SPS fast_rice_adaptation_enabled_flag.
uint32_t bitstreamBytes
The number of data bytes.
uint8_t separate_colour_plane_flag
Holds a copy of the H.265 bitstream field.
NvMediaBool enableMVC
If client want to do MVC encoding then this flag need to be set.
uint32_t encodePicFlags
Holds bit-wise OR`ed encode pic flags.
uint32_t numCandsPerBlk16x8
Holds the number of candidates per 16x8 block.
uint32_t intraRefreshPeriod
Holds the interval between frames that triggers a new intra refresh cycle.
uint8_t filter_type
Holds a copy of the VP8 bitstream field.
Holds picture parameter information for an H.265 picture.
uint8_t rangered
VC-1 SP/MP range reduction control.
NvMediaBool overscanInfoPresentFlag
If set to NVMEDIA_TRUE, it specifies that the overscanInfo is present.
NvMediaBool overscanAppropriateFlag
Holds the overscan info (as defined in Annex E of the ITU-T Specification).
uint8_t picture_coding_type
Holds a copy of the MPEG bitstream field.
uint8_t output_flag_present_flag
Holds a copy of the H.265 bitstream field.
uint32_t encodeWidth
Holds the encode width.
Enable support for external picture RC hint.
Disable Intra chroma vertical prediction.
Enable constrainedFrame encoding where each slice in the constrained picture is independent of other ...
uint8_t top_field_first
Holds a copy of the MPEG bitstream field.
uint8_t interlaced
Holds a copy of the bitstream field.
uint32_t base_qindex
Set the feature flag NVMEDIA_ENCODE_CONFIG_VP8_ENABLE_QUANTIZATION_PARAMS to set the following parame...
uint16_t not_existing
Parser only: Non-existing reference frame flag (corresponding PicIdx should be set to -1) ...
uint32_t comp_fixed_ref
Holds a copy of the VP9 bitstream field.
MPEG4 Part 2 codec.
uint8_t log2_diff_max_min_luma_coding_block_size
Holds a copy of the H.265 bitstream field.
uint32_t frameRateDen
Holds the numerator for frame rate used for encoding in frames per second ( Frame rate = frameRateNum...
uint32_t features
Holds bit-wise OR`ed configuration feature flags.
uint32_t NumDirectRefLayers
Holds a copy of the H.265-MV bitstream field.
NvMediaVP9BackwardUpdates backwardUpdateCounts
Parser only: Backward update counts.
uint8_t crossComponentPredictionEnableFlag
Holds the PPS cross_component_prediction_enabled_flag.
int8_t init_qp_minus26
Holds a copy of the H.265 bitstream field.
Disable Intra 8x8 vertical prediction.
NvMediaBool mb_no_coeff_skip_flag
Set to enable skipping of macroblocks with no non-zero coefficients at the frame level.
uint32_t gopLength
Holds the number of pictures in one GOP.
uint32_t uvac_delta_q
VP8 UV ac delta.
uint8_t alt_ref_frame_sign_bias
Holds a copy of the VP8 bitstream field.
uint8_t num_long_term_ref_pics_sps
Holds a copy of the H.265 bitstream field.
uint32_t payloadSize
SEI payload size in bytes.
int8_t second_chroma_qp_index_offset
Copy of the H.264 bitstream field.
Forward predicted.
Disable Intra 16x16 vertical prediction.
Indicates that this frame is encoded with each slice completely independent of other slices in the fr...
uint32_t vbvBufferSize
Holds the VBV(HRD) buffer size.
Specifies that the encoder instance ID can be set dynamically during encode.
uint32_t NumBitsToSkip
Holds a copy of the H.265 bitstream field.
NvMediaBool videoSignalTypePresentFlag
If set to NVMEDIA_TRUE, it specifies that the videoFormat, videoFullRangeFlag, and colourDescriptionP...
NvMediaEncodeExternalMEHint * meExternalHints
Holds the pointer to ME external hints for the current frame.
uint8_t transform_skip_enabled_flag
Holds a copy of the H.265 bitstream field.
NvMediaRefSurface * forward_reference
Reference used by B and P frames.
uint32_t maxSliceSizeInBytes
Holds the maximum slice size in bytes for dynamic slice mode.
uint8_t log2_min_pcm_luma_coding_block_size_minus3
Holds a copy of the H.265 bitstream field.
Disable Intra 8x8 horizontal up prediction.
Low (default) filter quality.
Holds VP9-specific encode initialization parameters.
uint32_t numMacroblocksPerSlice
Holds the number of macroblocks per slice.
Auto selected picture type.
NvMediaEncodeH264SEIPayload * seiPayloadArray
Array of SEI payloads which will be inserted for this frame.
uint8_t pps_slice_chroma_qp_offsets_present_flag
Holds a copy of the H.265 bitstream field.
uint8_t chromaQpAdjustmentTableSize
Holds the PPS chroma_qp_adjustment_table_size_minus1+1, 1...6.
NvMediaEncodeH264SPSPPSRepeatMode repeatSPSPPS
Holds the frequency of the writing of Sequence and Picture parameters.
uint8_t cabac_init_present_flag
Holds a copy of the H.265 bitstream field.
uint32_t numCandsPerBlk8x8
Holds the number of candidates per 8x8 block.
NvMediaBool enableLimitedRGB
Set this to NVMEDIA_TRUE for limited-RGB (16-235) input.
uint16_t aspectSARHeight
If aspectRatioIdc is Extended SAR then it indicates vertical size of the sample aspect ratio (in the ...
uint8_t quarter_sample
Holds a copy of the bitstream field.
uint8_t slice_segment_header_extension_present_flag
Holds a copy of the H.265 bitstream field.
uint8_t CbrHdrBedValue
Holds a copy of the VP8 bitstream field.
Holds VP9 encoder configuration parameters.
uint32_t base_qindex
Specifies quant base index (used only when rc_mode = 0) for each segment 0...255. ...
uint32_t RetRefreshGoldenFrame
Parser only: RetRefreshGoldenFrame.
uint8_t cu_qp_delta_enabled_flag
Holds a copy of the H.265 bitstream field.
uint32_t * pSliceDataOffsets
If not NULL, nNumSlices entries, contains offset of each slice within the bitstream data buffer...
NvMediaBool enableSliceEncode
use slice encode to reduce latency in getting encoded buffers.
uint32_t intraRefreshPeriod
Holds the interval between frames that trigger a new intra refresh cycle and this cycle lasts for int...
uint32_t hdr_start_offset
Start of header partition.
uint8_t transform_8x8_mode_flag
Copy of the H.264 bitstream field.
NvMediaBool bStereoEnabled
Flag whether stereo is enabled or not.
NvMediaBool enableExternalMEHints
Set to NVMEDIA_TRUE to enable external ME hints.
NvMediaRefSurface * backward_reference
Reference used by B frames.
uint32_t NumActiveRefLayerPics
Holds a copy of the H.265-MV bitstream field.
uint16_t max_content_light_level
Maximum content light level in units of candelas per square metre.
Disable Intra chroma DC prediction.
Disable Intra 4x4 vertical prediction.
uint32_t errorResilient
Error Resilient.
uint32_t frameRateNum
Holds the numerator for frame rate used for encoding in frames per second ( Frame rate = frameRateNum...
uint8_t log2_min_luma_coding_block_size_minus3
Holds a copy of the H.265 bitstream field.
int32_t qpChDc
Holds a copy of the VP9 bitstream field.
Noise reduction algorithm for outdoor medium light condition.
Pic_order_cnt_type 2.
uint32_t viewId
Holds the viewId of current picture.
uint32_t encodeHeight
Holds the encode height.
uint32_t ulNalSize
Nal size for header.
uint8_t pps_deblocking_filter_disabled_flag
Holds a copy of the H.265 bitstream field.
uint32_t filter_type
Set the feature flag NVMEDIA_ENCODE_CONFIG_VP8_ENABLE_LOOP_FILTER_PARAMS to change the following para...
uint32_t poc_lsb_not_present_flag
Holds a copy of the H.265-MV bitstream field.
uint8_t maxNumRefFrames
Holds the max reference numbers used for encoding.
NvMediaBool error_resilient
Enable Error resiliency.
uint32_t min_display_parameter_luminance
Nominal minimum display luminance in units of 0.0001 candelas per square metre.
uint8_t entropy_coding_sync_enabled_flag
Holds a copy of the H.265 bitstream field.
int32_t qpYAc
Holds a copy of the VP9 bitstream field.
picture header data present or not
uint32_t mcomp_filter_type
Holds a copy of the VP9 bitstream field.
uint32_t encodePicFlags
Holds bit-wise OR`ed encode pic flags.
NvMediaBool videoFullRangeFlag
Holds the output range of the luma and chroma samples (as defined in Annex E of the ITU-T Specificati...
NVIDIA Media Interface: Core
uint8_t videoFormat
Holds the source video format (as defined in Annex E of the ITU-T Specification). ...
Enable gradual decoder refresh or intra refresh.
Block only when operation is pending.
uint8_t golden_ref_frame_sign_bias
Holds a copy of the VP8 bitstream field.
uint8_t MVCReserved8Bits
Copy of the H.264 mvc bitstream field.
NvMediaEncodeRCParams rcParams
Holds the rate control parameters from the current frame onward if the NVMEDIA_ENCODE_PIC_FLAG_RATECO...
uint32_t nNumSlices
Number of slices in this picture.
uint8_t amp_enabled_flag
Holds a copy of the H.265 bitstream field.
uint32_t encodeWidth
Holds the encode width.
sequence header data present or not
uint32_t allow_comp_inter_inter
Holds a copy of the VP9 bitstream field.
uint32_t slice_group_change_rate_minus1
Copy of the H.264 bitstream field.
NvMediaBool bmode_ref_lf_delta_update
Set it to true if MB-level loop filter adjustment delta values are updated.
uint8_t num_extra_slice_header_bits
Holds a copy of the H.265 bitstream field.
uint32_t bitstreamSize
Size of bitstream array.
uint32_t frameRateDen
Holds the denominator for frame rate used for encoding in frames per second ( Frame rate = frameRateN...
uint8_t intraBlockCopyEnableFlag
Holds the SPS intraBlockCopyEnableFlag; always 0 not currently used by the spec.
uint8_t log2_max_frame_num_minus4
Copy of the H.264 bitstream field.
uint8_t range_mapy
Holds a copy of the VC-1 bitstream field.
NvMediaEncodeH264BDirectMode bdirectMode
Holds the BDirect mode.
uint8_t reserved2
Ensures alignment to 4 bytes.
uint8_t panscan_flag
Holds a copy of the VC-1 bitstream field.
NvMediaDispCompMode compositionMode
Defines the composition mode for the layer.
uint8_t picture_type
I=0, P=1, B=3, BI=4 from 7.1.1.4.
uint8_t BitsConsumed
Bits consumed for the current bitstream byte.
Disable Intra 4x4 horizontal prediction.
int8_t pps_tc_offset_div2
Holds a copy of the H.265 bitstream field.
uint32_t ref1_width
Holds a copy of the VP9 bitstream field.
Holds VP8-specific encoder picture parameters, which are sent on a per frame basis.
uint8_t log2_max_pic_order_cnt_lsb_minus4
Copy of the H.264 bitstream field.
NvMediaEncodeH264BDirectMode
Defines H.264 specific Bdirect modes.
Enable to set quantization parameters.
Enable gradual decoder refresh or intra refresh.
VC-1 simple and main profile codec.
uint32_t max_one_active_ref_layer_flag
Holds a copy of the H.265-MV bitstream field.
Holds the H265 encoder configuration parameters.
uint32_t PrevShowFrame
Previous frame is show frame.
uint8_t * payload
Pointer to user data.
uint8_t version
Holds a copy of the VP8 bitstream field.
uint8_t * pBitstreamData
Ptr to bitstream data for this picture (slice-layer)
H264 specific encoder picture params.
uint32_t mv_hevc_enable
Indicates hecv-mv is present in the stream.
uint32_t filter_level
Specifies the loop filter strength for each segment.
uint8_t current_frame_is_frame0_flag
Indicate whether current frame is frame 0, as described in Annex D.
uint8_t mode_ref_lf_delta_update
Holds a copy of the VP8 bitstream field.
uint8_t deblocking_filter_control_present_flag
Copy of the H.264 bitstream field.
uint32_t nalUnitType
SEI nal_unit_type.
NvmediaVP9EntropyProbs entropy
Holds a copy of the VP9 bitstream field.
NvMediaBool enableMVC
If client want to do MVC encoding then this flag need to be set.
Holds an External Motion Vector hint.
NvMediaEncodeRCParams rcParams
Holds the rate control parameters from the current frame onward if the NVMEDIA_ENCODE_PIC_FLAG_RATECO...
Enable support for dynamic reference picture set RPS/DPB control support.
uint8_t rounding_control
Derived from vop_rounding_type bitstream field.
NvMediaEncodePicFlags
Defines encoding Picture encode flags.
uint32_t uFirstCtbAddr
CTB number of first CTB in the slice data.
uint32_t high_prec_mv
Specifies to enable high precision MV.
uint8_t log2SaoOffsetScaleLuma
Holds the PPS log2_sao_offset_scale_luma, max(0,bitdepth-10), maxBitdepth 16 for future.
uint32_t motionPredictionExclusionFlags
Holds bitwise OR`ed exclusion flags.
uint8_t frame_coding_mode
Progressive=0, Frame-interlace=2, Field-interlace=3; see VC-1 7.1.1.15.
NvMediaMasteringDisplayData MasteringDispData
Parser Only: Mastering display data if present.
uint32_t uNumSlices
Number of slices in this SliceData.
NvMediaEncodeH264MotionPredictionExclusionFlags
Defines motion prediction exclusion flags for H.264.
uint8_t inter_view_flag
Copy of the H.264 mvc bitstream field.
NvMediaSEIPayloadH264 seiPayloadInfo
Parser only: SEI payload info.
uint8_t quant_type
Holds a copy of the bitstream field.
NvMediaEncodeProfile
Defines encoding profiles.
uint8_t data_partitioned
Holds a copy of the bitstream field.
Disable Inter L0 partition 8x16 prediction.
int32_t delta_uv_dc
Specifies qindex adjustment for uv accoefficient, -15...15.
NvMediaBool top_is_reference
Is the top field used as a reference.
uint8_t full_pel_forward_vector
Holds a copy of the MPEG-1 bitstream field.
uint32_t features
Holds bit-wise OR`ed configuration feature flags.
uint16_t chroma_format_idc
Copy of the H.264 bitstream field.
Disable Intra chroma horizontal prediction.
Holds a rectangular region of a surface.
Definition: nvmedia_core.h:133
Original (default) noise reduction algorithm.
uint8_t maxNumRefFrames
Holds the max reference numbers used for encoding.
uint8_t profile
Parser only: Profile.
uint32_t features
Holds bit-wise OR`ed configuration feature flags.
NvMediaBool aspectRatioInfoPresentFlag
If set to NVMEDIA_TRUE, specifies the aspectRatioIdc is present.
uint8_t profile
Holds the encoding profile.
uint32_t lossless
Holds a copy of the VP9 bitstream field.
uint32_t RetRefreshAltFrame
Parser only: RetRefreshAltFrame.
uint8_t field_views_flag
Indicates whether all pictures in the current coded video sequence are coded as complementary field p...
NvMediaEncodeH264EntropyCodingMode entropyCodingMode
Holds the entropy coding mode.
uint32_t y2ac_delta_q
VP8 Y2 ac delta.
NvMediaEncodeQuality
Defines encode quality level pre-settings.
uint8_t sps_range_extension_present_flag
uint8_t transformSkipRotationEnableFlag
Holds the SPS extension for transform_skip_rotation_enabled_flag.
Holds VP9 entropy contexts.
uint32_t loopFilterLevel
Holds a copy of the VP9 bitstream field.
Disable Intra 8x8 DC prediction.
uint8_t weighted_pred_flag
Copy of the H.264 bitstream field.
uint8_t dequant_index
Holds a copy of the VP8 bitstream field.
NvMediaEncodeRCParams rcParams
Holds the rate control parameters from the current frame onward if the NVMEDIA_ENCODE_PIC_FLAG_RATECO...
uint32_t NumPocStCurrBefore
Holds a copy of the H.265 bitstream field.
NvMediaRefSurface * forward_reference
Reference used by B and P frames.
NvMediaEncodeQuality quality
Holds encode quality pre-set.
uint8_t * payload
pointer to user data
uint8_t enableWeightedPrediction
Holds enable weighted predition.
NvMediaBool enableSliceEncode
use slice encode to reduce latency in getting encoded buffers.
Holds rate control configuration parameters.
uint32_t bit_depth
Holds the depth per pixel.
Enable support to use client provided QP max for all frame types.
uint8_t loop_filter_across_slices_enabled_flag
Holds a copy of the H.265 bitstream field.
uint32_t frameRateNum
Holds the numerator for frame rate used for encoding in frames per second ( Frame rate = frameRateNum...
NvMediaBool enableReconCRC
Enable support for recon CRC generation.
NvMediaFilterQuality
Defines filter quality levels.
Quality Level 2 Pre-settings.
uint8_t dependent_slice_segments_enabled_flag
Holds a copy of the H.265 bitstream field.
slice level data used with slice level decoding
uint8_t finterpflag
Holds a copy of the VC-1 bitstream field.
uint8_t direct_8x8_inference_flag
Copy of the H.264 bitstream field.
uint8_t quantizer
Holds a copy of the VC-1 bitstream field.
uint8_t bit_depth_chroma
Holds a copy of the H.265 bitstream field.
uint32_t nNumSlices
Holds the number of slices in this picture.
NvMediaEncodeQP minQP
Holds the minimum QP used for rate control.
Specifies that Adaptive Transform 8x8 mode is auto selected by the encoder driver.
NvMediaEncodeQP constQP
Holds the initial QP to be used for encoding, these values would be used for all frames in Constant Q...
NvMediaEncodeExternalMEHint * meExternalHints
Holds the pointer to ME external hints for the current frame.
NvMediaBool enableSourceHalfScaled
Enable 2 pass RC with quarter resolution first pass.
uint8_t psf
Holds a copy of the VC-1 bitstream field.
uint8_t masterin_display_data_present
Parser Only: Flag to indicated mastering display data is present.
uint8_t frameType
0:FrameType_B 1:FrameType_P 2:FrameType_I
NvMediaEncodePicType
Input picture type.
uint32_t payloadType
SEI payload types and syntax can be found in Annex D of the H.264 Specification.
This is used to get header info (SPS/PPS/VPS) using GetAttribute call.
Pic_order_cnt_type 0.
NvMediaEncodeRCParams rcParams
Holds the rate control parameters from the current frame onward if the NVMEDIA_ENCODE_PIC_FLAG_RATECO...
uint8_t pps_range_extension_present_flag
uint16_t aspectSARWidth
If aspectRatioIdc is Extended SAR then it indicates horizontal size of the sample aspect ratio (in ar...
uint32_t useBFramesAsRef
Enables B frames to be used as refernces frames.
uint8_t vop_coding_type
Holds a copy of the bitstream field.
NvMediaRefSurface * range_mapped
Reference used for range mapping.
NvMediaEncAttrType
Specifies the Video encoder get attribute type.
uint32_t nextBFrames
Secifies the number of B-frames that follow the current frame.
uint32_t NumPocStCurrAfter
Holds a copy of the H.265 bitstream field.
uint8_t explicitRdpcmEnableFlag
Holds the SPS explicit_rdpcm_enabled_flag.
Holds NvMedia display attributes.
NvMediaBool colourDescriptionPresentFlag
If set to NVMEDIA_TRUE, it specifies that the colourPrimaries, transferCharacteristics, and colourMatrix are present.
NvMediaEncodeQuality quality
Holds the encode quality pre-set.
uint8_t clamp_type
Copy of the VP8 bitstream field.
uint8_t long_term_ref_pics_present_flag
Holds a copy of the H.265 bitstream field.
uint8_t log2_parallel_merge_level_minus2
Holds a copy of the H.265 bitstream field.
uint8_t implicitRdpcmEnableFlag
Holds the SPS implicit_rdpcm_enabled_flag.
uint32_t sharpness_level
Specifies Sharpness level.
NvMediaEncodeConfigH264VUIParams * h264VUIParameters
Holds the H.264 video usability information pamameters.
uint32_t encodeHeight
Holds the encode height.
uint16_t numSliceCountMinus1
Holds a number that is 1 less than the desire number of slices per frame.
Holds an external motion vector hint with counts per block type.
int32_t qpChAc
Holds a copy of the VP9 bitstream field.
uint8_t bottom_field_flag
Bottom field flag TopField=0 BottomField=1.
Disable Intra 8x8 horizontal prediction.
NvMediaRefSurface * GoldenReference
Holds a pointer to the golden reference frame.
slice header data present or not
void NvMediaPictureInfo
A generic "picture information" pointer type.
uint32_t transform_mode
Holds a copy of the VP9 bitstream field.
uint8_t transformSkipContextEnableFlag
Holds the SPS extension for transform_skip_context_enabled_flag.
uint32_t intraRefreshCnt
Holds the number of frames over which intra refresh will happen.
NvMediaBool content_light_level_info_present
Parser Only: Flag to indicated content light level data is present.
#define MAX_NON_SLICE_DATA_SIZE
Maximum encoded header info size.
NvMediaBool enableSliceLevelEncode
Set this to NVMEDIA_TRUE for slice level encode.
int32_t CurrPicOrderCntVal
Holds a copy of the H.265 bitstream field.
Disable Intra 4x4 DC prediction.
Disable Intra 16x16 horizontal prediction.
uint8_t transferCharacteristics
Holds the opto-electronic transfer characteristics to use (as defined in Annex E of the ITU-T Specifi...
Enable support for motion vector buffer dump.
Disable Intra chroma plane prediction.
NvMediaEncodePicType pictureType
Holds input picture type.
Disable Inter L0 partition 16x8 prediction.
Holds an H265-specific User SEI message.
uint32_t max_display_parameter_luminance
Nominal maximum display luminance in units of 0.0001 candelas per square metre.
uint8_t diffCuChromaQpAdjustmentDepth
Holds the PPS diff_cu_chroma_qp_adjustment_depth, 0...3.
uint32_t height
Holds a copy of the VP9 bitstream field.
Enable support to use client provided QP max for all frame types.
uint8_t overlap
Holds a copy of the VC-1 bitstream field.
NvMediaEncodeQP maxQP
Holds maximum QP parameters.
NvMediaEncodePicType pictureType
Holds input picture type.
Picture parameter information for an H.264 picture.
NvMediaBool stop_prob_update
Set to turn off all probability updates to save hw testing time.
NvMediaBool bSliceDecEnable
Flag to indicate slice decode is enabled.
uint32_t encodeHeight
Holds the encode height.
uint16_t FrameIdx
Copy of the H.264 bitstream field: frame_num from slice_header for short-term references, LongTermPicNum from decoding algorithm for long-term references.
Holds picture parameter information for an MPEG 1 or MPEG 2 picture.
uint32_t seiPayloadArrayCnt
Holds the number of elements allocated in seiPayloadArray array.
uint32_t frameRateNum
Holds the numerator for frame rate used for encoding in frames per second ( Frame rate = frameRateNum...
uint8_t num_tile_rows_minus1
Holds a copy of the H.265 bitstream field.
uint8_t num_slice_groups_minus1
Copy of the H.264 bitstream field.
NvMediaEncodeRCParams rcParams
Holds the rate control parameters for the current encoding session.
uint8_t sign_data_hiding_enabled_flag
Holds a copy of the H.265 bitstream field.
Indicates change in rate control parameters from the current picture onwards.
NvMediaEncodeH265Features
Defines H265 encoder configuration features.
Starts a new intra refresh cycle if intra refresh support is enabled otherwise it indicates a P frame...
uint32_t pic_width_in_mbs_minus1
Copy of the H.264 bitstream field.
Disable Intra 8x8 diagonal down left prediction.
NvMediaEncodeQP initQP
Holds the initial QP parameters.
uint8_t intra_vlc_format
Holds a copy of the MPEG bitstream field.
Holds an H264 encoder configuration.
uint8_t scaling_list_enable_flag
Holds a copy of the H.265 bitstream field.
uint16_t aspectSARWidth
If aspectRatioIdc is Extended SAR it indicates horizontal size of the sample aspect ratio (in arbitra...
Specifies that Adaptive Transform 8x8 mode must be used.
uint8_t num_ref_idx_l0_default_active_minus1
Holds a copy of the H.265 bitstream field.
uint8_t num_ref_idx_l1_default_active_minus1
Holds a copy of the H.265 bitstream field.
uint32_t resolutionChange
Resolution change.
uint8_t videoFormat
Holds the source video format (as defined in Annex E of the ITU-T Specification). ...
uint32_t gopLength
Holds the number of pictures in one GOP.
uint8_t bit_depth_luma
Holds a copy of the H.265 bitstream field.
uint8_t mb_adaptive_frame_field_flag
Copy of the H.264 bitstream field.
NvMediaEncodeConfigH265VUIParams * h265VUIParameters
Holds the H265 video usability info pamameters.
uint32_t IDRPicFlag
Holds a copy of the H.265 bitstream field.
NvMediaBool bmode_ref_lf_delta_enabled
Set it to true if MB-level loop filter adjustment is on.
SPS/PPS is repeated for every intra frame.
uint32_t frameRateNum
Holds the numerator for frame rate used for encoding in frames per second ( Frame rate = frameRateNum...
uint32_t prevIsKeyFrame
If previous frame is key frame.
void NvMediaRefSurface
A generic "reference surface" pointer type.
Holds picture parameter information for a VC1 picture.
uint32_t width
Holds a copy of the VP9 bitstream field.
H.264 Multiview Video Coding codec.
uint32_t gopLength
Holds the number of pictures in one GOP.
int32_t delta_uv_ac
Specifies qindex adjustment for uv dccoefficient, -15...15.
uint32_t numReferenceFrames
Number of reference frame.
Enable to write access unit delimiter syntax in bitstream.
Repeating of SPS/PPS is disabled.
uint8_t num_inter_view_refs_l0
Copy of the H.264 mvc bitstream field.
uint8_t weighted_pred_flag
Holds a copy of the H.265 bitstream field.
NvMediaEncodeH264POCType
Define H.264 pic_order_cnt_type.
Holds VP8 encoder configuration parameters.
uint32_t loopFilterSharpness
Holds a copy of the VP9 bitstream field.
NvMediaBool bConstFrameQP
using constant frame QP throughout the current encode frame.
NvMediaEncodePicType pictureType
Holds input picture type.
uint32_t encodeWidth
Holds the encode width.
uint8_t fmo_aso_enable
Copy of the H.264 bitstream field.
uint8_t rangeredfrm
Copy of the VC-1 bitstream field.
uint32_t * pSliceDataOffsets
Passing NULL for pSliceDataOffsets disables error-concealment.
uint32_t maxBitRate
Holds the maximum bitrate for the encoded output.
uint8_t levelTier
Holds the level tier information.
uint8_t num_tile_columns_minus1
Holds a copy of the H.265 bitstream field.
Enable support to use client provided Initial QP for all frame types.
NvMediaVideoCodec
Video codec type.
NvMediaEncodeH264SPSPPSRepeatMode
Specifies the frequency of the writing of Sequence and Picture parameters for H.264.
uint32_t idrPeriod
Holds the IDR interval.
uint32_t pic_width_in_luma_samples
Holds a copy of the H.265 bitstream field.
uint32_t encodePicFlags
Holds bit-wise OR`ed encode pic flags.
NvMediaEncodeQP maxQP
Holds maximum QP parameters.
uint32_t idrPeriod
Holds the IDR interval.
uint8_t frame_pred_frame_dct
Holds a copy of the MPEG bitstream field.
Disable Intra 4x4 vertical left prediction.
uint32_t RAPPicFlag
Holds a copy of the H.265 bitstream field.
uint8_t disableDeblockingFilter
Holds disable the deblocking filter.
uint8_t pcm_sample_bit_depth_luma_minus1
Holds a copy of the H.265 bitstream field.
H265 Multiview Video Coding codec.
uint8_t max_transform_hierarchy_depth_inter
Holds a copy of the H.265 bitstream field.
uint32_t ref1_height
Holds a copy of the VP9 bitstream field.
NvMediaEncodeH265SEIPayload * seiPayloadArray
Array of SEI payloads which will be inserted for this frame.
Disable Intra 4x4 diagonal down left prediction.
uint8_t maxNumRefFrames
Holds the max reference numbers used for encoding.
uint8_t num_of_partitions
Holds a copy of the VP8 bitstream field.
uint32_t nextBFrames
Holds the number of B-frames that follow the current frame.
uint32_t payloadSize
SEI payload size in bytes.
Enable to set loop filter parameters.
Information about an H.264 reference frame.
Enable support to use client provided QP max for all frame types.
int32_t segmentMapTemporalUpdate
Holds a copy of the VP9 bitstream field.
int8_t pps_cb_qp_offset
Holds a copy of the H.265 bitstream field.
Disable Intra 16x16 DC prediction.
NvMediaBool timingInfoPresentFlag
Holds that num_units_in_tick, time_scale and fixed_frame_rate_flag are present in the bitstream (as d...
NvMediaEncodeParamsRCMode rateControlMode
Holds the rate control mode.
NvMediaBool enableTwoPassRC
Enable 2 pass RC support.
uint8_t deblocking_filter_override_enabled_flag
Holds a copy of the H.265 bitstream field.
Noise reduction algorithm for indoor medium light condition.
uint16_t num_views_minus1
Copy of the H.264 mvc bitstream field.
uint8_t sharpness_level
Holds a copy of the VP8 bitstream field.
NvMediaBool is_reference
Will the decoded frame be used as a reference later.
NvMediaEncodeQP maxQP
Holds max QP parameters.
uint8_t flag_slices_across_multiple_rows
Indicates whether the MPEG slices span across multiple rows.
Enable to write access unit delimiter syntax in bitstream.
uint32_t numCTUsPerSlice
Number of CTU per slice.
uint16_t max_pic_average_light_level
Maximum frame average light level in units of candelas per square metre.
NvMediaBlockingType
Blocking type.
Enable constrainedFrame encoding where each slice in the constrained picture is independent of other ...
uint16_t frameWidth
Parser only: Actual frame width.
int32_t delta_y_dc_q
Specifies explicit qindex adjustment for y dccoefficient, -15...15.
uint8_t top_field_first
Holds a copy of the bitstream field.
Enable support to use client provided Initial QP for all frame types.
uint8_t pcm_enabled_flag
Holds a copy of the H.265 bitstream field.
uint8_t uniform_spacing_flag
Holds a copy of the H.265 bitstream field.
uint32_t nuh_layer_id
Holds a copy of the H.265-MV bitstream field.
NvMediaContentLightLevelInfo ContentLightLevelInfo
Parser Only: Content light level info data if present.
NvMediaBool overscanAppropriateFlag
Holds the overscan info (as defined in Annex E of the ITU-T Specification).
NvMediaEncodeH264MotionSearchControlFlags
Defines motion search mode control flags for H.264.
uint32_t uvdc_delta_q
VP8 UV dc delta.
NvMediaEncodeParamsRCMode
Rate Control Modes.
uint8_t strong_intra_smoothing_enabled_flag
Holds a copy of the H.265 bitstream field.
Enable support to use 4 byte start code in all the slices in a picture.
uint8_t pic_order_cnt_type
Copy of the H.264 bitstream field.
uint8_t num_inter_view_refs_l1
Copy of the H.264 mvc bitstream field.
uint32_t frameRateNum
Holds the numerator for frame rate used for encoding in frames per second ( Frame rate = frameRateNum...
uint16_t numSliceCountMinus1
Set to 1 less than the number of slices desired per frame.
Enable support to use client provided Initial QP for all frame types.
Automatic level selection.
uint32_t nNumSlices
Number of slices in this picture.
Enable support to use client provided Initial QP for all frame types.
uint8_t pcm_loop_filter_disabled_flag
Holds a copy of the H.265 bitstream field.
Disable Intra 8x8 diagonal down right prediction.
uint8_t range_mapy_flag
Holds a copy of the VC-1 bitstream field.
uint8_t spatial_flipping_flag
Indicates that whether one of the two constituent frames is spatially flipped relative to its intende...
uint8_t interlace
Holds a copy of the VC-1 bitstream field.
uint32_t maxSliceSizeInBytes
Holds the maximum slice size in bytes for dynamic slice mode.
NvMediaEncodeH264SPSPPSRepeatMode repeatSPSPPS
Holds the frequency of the writing of Sequence and Picture parameters.
Noise reduction algorithm for outdoor high light condition.
#define MAX_USER_SEI_PAYLOAD
Maximum user defined sei payload size.
uint32_t iCur
Holds a copy of the H.265 bitstream field.
Variable bitrate mode.
uint32_t NumDeltaPocsOfRefRpsIdx
Holds a copy of the H.265 bitstream field.
uint8_t refresh_entropy_probs
Holds a copy of the VP8 bitstream field.
uint8_t frameContextIdx
Holds a copy of the VP9 bitstream field.
uint8_t reversible_vlc
Holds a copy of the bitstream field.
Disable Intra 4x4 horizontal up prediction.
uint32_t averageBitRate
Holds the average bitrate (in bits/sec) used for encoding.
uint32_t intraOnly
Intra only.
uint16_t video_object_layer_height
Parser Only: Video object layer height.
uint32_t uCTBCount
Number of CTB present in this CTB.
IP Search mode bit Intra 8x8.
int32_t last_sps_id
Copy of the H.264 bitstream field.
uint8_t quincunx_sampling_flag
Indicate whether each colour component plane of each consituent frame is quincunx sampled or not...
uint8_t colourPrimaries
Holds color primaries for converting to RGB (as defined in Annex E of the ITU-T Specification).
uint32_t encodeWidth
Holds the encode width.
uint32_t filter_type
Set the feature flag NVMEDIA_ENCODE_CONFIG_VP9_ENABLE_LOOP_FILTER_PARAMS to change the following para...
uint32_t payloadType
SEI payload types and syntax can be found in Annex D of the H265 Specification.
uint32_t depth
Holds a positive value (up to 255) that specifies the video displays relative to the top-most layer...
NvMediaRefSurface * backward_reference
Reference used by B frames.
uint32_t keyFrame
Holds a copy of the VP9 bitstream field.
uint32_t uUserSeiPayloadLength
Specify the length of user data unregistered SEI message, as described in Annex D.
Quality Level 0 Pre-settings.
uint8_t disableDeblockingFilterIDC
Holds the deblocking filter mode.
IP Search mode bit Intra 16x16.
uint8_t chroma_format_idc
Holds a copy of the chroma_format_idc.
Disable Inter L0 partition 16x16 prediction.
uint8_t range_mapuv
Holds a copy of the VC-1 bitstream field.
NvMediaEncodeRCParams rcParams
Holds the rate control parameters for the current encoding session.
Picture parameter information for a VP8 picture.
Holds VP9 counters for adaptive entropy contexts.
uint8_t * bitstream
A pointer to the bitstream data bytes.
uint8_t lists_modification_present_flag
Holds a copy of the H.265 bitstream field.
NvMediaEncodeQP initQP
Holds Initial QP parameters.
A lower depth overlay is per-pixel alpha blended over any higher depth overlay.
uint8_t pulldown
Holds a copy of the VC-1 bitstream field.
Noise reduction algorithm for indoor high light condition.
uint32_t comp_pred_mode
Holds a copy of the VP9 bitstream field.
uint32_t offsetToDctParts
Holds a copy of the VP9 bitstream field.
uint8_t vop_fcode_backward
Holds a copy of the bitstream field.
NvMediaEncodeH264AdaptiveTransformMode
Defines H.264 specific Adaptive Transform modes.
uint8_t max_transform_hierarchy_depth_intra
Holds a copy of the H.265 bitstream field.
H.264 SEI payload information Used by the parser only.
uint32_t * pSliceDataOffsets
Passing NULL for pSliceDataOffsets disables error-concealment.
uint8_t multires
Copy of the VC-1 bitstream field.
This attribute is used to get PPS data for current encoding session.
uint32_t NumPocLtCurr
Holds a copy of the H.265 bitstream field.
uint8_t short_video_header
Holds a copy of the bitstream field.
A lower depth overlay is per-pixel alpha blended over any higher depth overlay.
uint8_t alternate_scan
Holds a copy of the MPEG bitstream field.
uint8_t sample_adaptive_offset_enabled_flag
Holds a copy of the H.265 bitstream field.
uint32_t features
Holds bit-wise OR`ed configuration feature flags.
SPS/PPS is repeated for every IDR frame.
Disable Inter L0 partition 8x8 prediction.
Specifies the encoder instance ID 0.
uint32_t version
VP8 version type.
uint8_t range_mapuv_flag
Holds a copy of the VC-1 bitstream field.
uint32_t ref2_width
Holds a copy of the VP9 bitstream field.
NvMediaBool enableSourceHalfScaled
Enable 2 pass RC with quarter resolution first pass.
uint32_t update_mb_segmentation_map
Set the feature flag NVMEDIA_ENCODE_CONFIG_VP8_ENABLE_SEGMENTATION to set the following parameters...
NvMediaBool colourDescriptionPresentFlag
If set to NVMEDIA_TRUE, it specifies that the colourPrimaries, transferCharacteristics and colourMatr...
int32_t qpprime_y_zero_transform_bypass_flag
Copy of the H.264 bitstream field, qpprime_y_zero_transform_bypass_flag.
uint8_t extended_mv
Holds a copy of the VC-1 bitstream field.
uint8_t aspectRatioIdc
Holds the aspect ratio IDC (as defined in Annex E of the ITU-T specification).
This attribute is used to get VPS data for current h265 encoding session.
NvMediaEncodeQP initQP
Holds Initial QP parameters.
NvMediaBool bErrorFlag
Error flag if some parsing error detected.
Enable support for dynamic reference picture set RPS/DPB control support.
Enable support to use client provided QP max for all frame types.
NvMediaBool enableROIEncode
Enable region of interest encoding.
uint8_t refdist_flag
Holds a copy of the VC-1 bitstream field.
uint16_t video_object_layer_width
Parser Only: Video object layer width.
Noise reduction algorithm for outdoor low light condition.
uint32_t segmentFeatureMode
Holds a copy of the VP9 bitstream field.
NvMediaSliceDecodeData sliceDecData
Slice decode data when Slice decode is enabled.
Specifies the decoder instance ID 0.
Writes the sequence and picture header in encoded bitstream of the current picture.
NvMediaEncodeH264EntropyCodingMode
Defines H.264 entropy coding modes.
uint32_t filter_level
Specifies the loop filter strength for each segment.
uint32_t vop_time_increment_bitcount
Holds a copy of the bitstream field.
NvMediaRect position
The rectangle where the video renders.
uint8_t frame_packing_arrangement_type
Indicate the type of packing arrangement of the frames, as described in Annex D.
NvMediaBool enableExternalMEHints
Set to NVMEDIA_TRUE to enable external ME hints.
uint8_t pcm_sample_bit_depth_chroma_minus1
Holds a copy of the H.265 bitstream field.
Disable Intra 16x16 plane prediction.
NvMediaEncodePicType pictureType
Holds input picture type.
uint32_t ref0_width
Holds a copy of the VP9 bitstream field.
uint32_t frameRateDen
Holds the numerator for frame rate used for encoding in frames per second ( Frame rate = frameRateNum...
Specifies the encoder instance ID 1.
uint8_t concealment_motion_vectors
Holds a copy of the MPEG bitstream field.
Variable bitrate mode with MinQP.
NvMediaRefSurface * AltReference
Holds a pointer to the alternate reference frame.
uint8_t aspectRatioIdc
Holds the acpect ratio IDC (as defined in Annex E of the ITU-T Specification).
Disable Intra 8x8 horizontal down prediction.
uint8_t bottom_field_flag
Copy of the H.264 bitstream field.
uint16_t vop_time_increment_resolution
Holds a copy of the bitstream field.
uint8_t pic_order_present_flag
Copy of the H.264 bitstream field.
NvMediaBool enableLimitedRGB
Holds a flag indicating whether input is limted-RGB (16-235).
NvMediaBool enableReconCRC
Enable support for recon CRC generation.
Enable support for external picture RC hint.
uint32_t qpIntra
QP value for Intra frames.
uint32_t RetRefreshLastFrame
Parser only: RetRefreshLastFrame.
uint32_t update_mb_segmentation_data
VP8 update mb segmentation data.
uint8_t segmentation_enabled
Holds a copy of the VP8 bitstream field.
uint32_t segmentMapUpdate
Holds a copy of the VP9 bitstream field.
uint8_t level
Holds the encoding level.
NvMediaEncodeQuality quality
Holds encode quality pre-set.
uint32_t NumActiveRefLayerPics0
Holds a copy of the H.265-MV bitstream field.
Noise reduction algorithm for indoor low light condition.
uint8_t chromaQpAdjustmentEnableFlag
Holds the PPS chroma_qp_adjustment_enabled_flag .
NvMediaBool bitstreamRestrictionFlag
Holds the bitstream restriction info (as defined in Annex E of the ITU-T Specification).
uint32_t numCandsPerBlk16x16
Holds the number of candidates per 16x16 block.
uint16_t view_id
Copy of the H.264 mvc bitstream field.
Holds VP8-specific encode initialization parameters.
uint8_t sps_temporal_mvp_enabled_flag
Holds a copy of the H.265 bitstream field.
NvMediaEncodeQP initQP
Holds Initial QP parameters.
NvMediaEncodeVP8Features
Defines VP8 encoder configuration features.
NvMediaRefSurface * backward_reference
Reference used by B frames.
NvMediaBool aspectRatioInfoPresentFlag
If set to NVMEDIA_TRUE, it specifies that the aspectRatioIdc is present.
NvMediaBool bFirstSlice
First slice flag: whether this SliceData contains first slice of frame.