40
40
#endif
41
41
#endif
42
42
43
- #define NVDECAPI_MAJOR_VERSION 12
44
- #define NVDECAPI_MINOR_VERSION 2
43
+ #define NVDECAPI_MAJOR_VERSION 13
44
+ #define NVDECAPI_MINOR_VERSION 0
45
45
46
46
#define NVDECAPI_VERSION (NVDECAPI_MAJOR_VERSION | (NVDECAPI_MINOR_VERSION << 24))
47
47
@@ -97,6 +97,9 @@ typedef enum cudaVideoSurfaceFormat_enum {
97
97
cudaVideoSurfaceFormat_YUV444 = 2 , /**< Planar YUV [Y plane followed by U and V planes] */
98
98
cudaVideoSurfaceFormat_YUV444_16Bit = 3 , /**< 16 bit Planar YUV [Y plane followed by U and V planes].
99
99
Can be used for 10 bit(6LSB bits 0), 12 bit (4LSB bits 0) */
100
+ cudaVideoSurfaceFormat_NV16 = 4 , /**< Semi-Planar YUV 422 [Y plane followed by interleaved UV plane] */
101
+ cudaVideoSurfaceFormat_P216 = 5 /**< 16 bit Semi-Planar YUV 422[Y plane followed by interleaved UV plane].
102
+ Can be used for 10 bit(6LSB bits 0), 12 bit (4LSB bits 0) */
100
103
} cudaVideoSurfaceFormat ;
101
104
102
105
/******************************************************************************************************************/
@@ -320,10 +323,10 @@ typedef struct _CUVIDH264PICPARAMS
320
323
int delta_pic_order_always_zero_flag ;
321
324
int frame_mbs_only_flag ;
322
325
int direct_8x8_inference_flag ;
323
- int num_ref_frames ; // NOTE: shall meet level 4.1 restrictions
326
+ int num_ref_frames ;
324
327
unsigned char residual_colour_transform_flag ;
325
- unsigned char bit_depth_luma_minus8 ; // Must be 0 (only 8-bit supported)
326
- unsigned char bit_depth_chroma_minus8 ; // Must be 0 (only 8-bit supported)
328
+ unsigned char bit_depth_luma_minus8 ;
329
+ unsigned char bit_depth_chroma_minus8 ;
327
330
unsigned char qpprime_y_zero_transform_bypass_flag ;
328
331
// PPS
329
332
int entropy_coding_mode_flag ;
@@ -344,7 +347,7 @@ typedef struct _CUVIDH264PICPARAMS
344
347
int frame_num ;
345
348
int CurrFieldOrderCnt [2 ];
346
349
// DPB
347
- CUVIDH264DPBENTRY dpb [16 ]; // List of reference frames within the DPB
350
+ CUVIDH264DPBENTRY dpb [16 ]; // List of reference frames within the DPB
348
351
// Quantization Matrices (raster-order)
349
352
unsigned char WeightScale4x4 [6 ][16 ];
350
353
unsigned char WeightScale8x8 [2 ][64 ];
@@ -359,7 +362,10 @@ typedef struct _CUVIDH264PICPARAMS
359
362
unsigned long long slice_group_map_addr ;
360
363
const unsigned char * pMb2SliceGroupMap ;
361
364
} fmo ;
362
- unsigned int Reserved [12 ];
365
+ unsigned int mb_adaptive_frame_field_flag : 2 ; // bit 0 represent SPS flag mb_adaptive_frame_field_flag
366
+ // if bit 1 is not set, flag is ignored. Bit 1 is set to maintain backward compatibility
367
+ unsigned int Reserved1 : 30 ;
368
+ unsigned int Reserved [11 ];
363
369
// SVC/MVC
364
370
union
365
371
{
@@ -487,7 +493,24 @@ typedef struct _CUVIDVC1PICPARAMS
487
493
/***********************************************************/
488
494
typedef struct _CUVIDJPEGPICPARAMS
489
495
{
490
- int Reserved ;
496
+ unsigned char numComponents ;
497
+ unsigned char bitDepth ;
498
+ unsigned char quantizationTableSelector [4 ];
499
+ unsigned int scanOffset [4 ];
500
+ unsigned int scanSize [4 ];
501
+
502
+ unsigned short restartInterval ;
503
+ unsigned char componentIdentifier [4 ];
504
+
505
+ unsigned char hasQMatrix ;
506
+ unsigned char hasHuffman ;
507
+ unsigned short quantvals [4 ][64 ];
508
+
509
+ unsigned char bits_ac [4 ][16 ];
510
+ unsigned char table_ac [4 ][256 ]; // there can only be max of 162 ac symbols
511
+
512
+ unsigned char bits_dc [4 ][16 ];
513
+ unsigned char table_dc [4 ][256 ]; // there can only be max of 12 dc symbols
491
514
} CUVIDJPEGPICPARAMS ;
492
515
493
516
0 commit comments