Go to the source code of this file.
|  | 
| static int CUDAAPI | cuvid_handle_video_sequence (void *opaque, CUVIDEOFORMAT *format) | 
|  | 
| static int CUDAAPI | cuvid_handle_picture_decode (void *opaque, CUVIDPICPARAMS *picparams) | 
|  | 
| static int CUDAAPI | cuvid_handle_picture_display (void *opaque, CUVIDPARSERDISPINFO *dispinfo) | 
|  | 
| static int | cuvid_is_buffer_full (AVCodecContext *avctx) | 
|  | 
| static int | cuvid_decode_packet (AVCodecContext *avctx, const AVPacket *avpkt) | 
|  | 
| static int | cuvid_output_frame (AVCodecContext *avctx, AVFrame *frame) | 
|  | 
| static av_cold int | cuvid_decode_end (AVCodecContext *avctx) | 
|  | 
| static int | cuvid_test_capabilities (AVCodecContext *avctx, const CUVIDPARSERPARAMS *cuparseinfo, int probed_width, int probed_height, int bit_depth, int is_yuv422, int is_yuv444) | 
|  | 
| static av_cold int | cuvid_decode_init (AVCodecContext *avctx) | 
|  | 
| static void | cuvid_flush (AVCodecContext *avctx) | 
|  | 
◆ cudaVideoSurfaceFormat_YUV444
      
        
          | #define cudaVideoSurfaceFormat_YUV444   2 | 
      
 
 
◆ cudaVideoSurfaceFormat_YUV444_16Bit
      
        
          | #define cudaVideoSurfaceFormat_YUV444_16Bit   3 | 
      
 
 
◆ CHECK_CU
◆ CUVID_MAX_DISPLAY_DELAY
      
        
          | #define CUVID_MAX_DISPLAY_DELAY   (4) | 
      
 
 
◆ CUVID_DEFAULT_NUM_SURFACES
◆ OFFSET
◆ VD
◆ DEFINE_CUVID_CODEC
      
        
          | #define DEFINE_CUVID_CODEC | ( |  | x, | 
        
          |  |  |  | X, | 
        
          |  |  |  | bsf_name | 
        
          |  | ) |  |  | 
      
 
Value:    static const AVClass x##_cuvid_class = { \
 
    }; \
    const 
FFCodec ff_##x##_cuvid_decoder = { \
        CODEC_LONG_NAME(
"Nvidia CUVID " #
X " decoder"), \
        .p.id           = AV_CODEC_ID_##
X, \
        .
p.priv_class   = &x##_cuvid_class, \
        .bsfs           = bsf_name, \
                          FF_CODEC_CAP_SETS_FRAME_PROPS, \
        .p.wrapper_name = "cuvid", \
    };
Definition at line 1257 of file cuviddec.c.
 
 
◆ cuvid_handle_video_sequence()
  
  | 
        
          | static int CUDAAPI cuvid_handle_video_sequence | ( | void * | opaque, |  
          |  |  | CUVIDEOFORMAT * | format |  
          |  | ) |  |  |  | static | 
 
 
◆ cuvid_handle_picture_decode()
  
  | 
        
          | static int CUDAAPI cuvid_handle_picture_decode | ( | void * | opaque, |  
          |  |  | CUVIDPICPARAMS * | picparams |  
          |  | ) |  |  |  | static | 
 
 
◆ cuvid_handle_picture_display()
  
  | 
        
          | static int CUDAAPI cuvid_handle_picture_display | ( | void * | opaque, |  
          |  |  | CUVIDPARSERDISPINFO * | dispinfo |  
          |  | ) |  |  |  | static | 
 
 
◆ cuvid_is_buffer_full()
◆ cuvid_decode_packet()
◆ cuvid_output_frame()
◆ cuvid_decode_end()
◆ cuvid_test_capabilities()
  
  | 
        
          | static int cuvid_test_capabilities | ( | AVCodecContext * | avctx, |  
          |  |  | const CUVIDPARSERPARAMS * | cuparseinfo, |  
          |  |  | int | probed_width, |  
          |  |  | int | probed_height, |  
          |  |  | int | bit_depth, |  
          |  |  | int | is_yuv422, |  
          |  |  | int | is_yuv444 |  
          |  | ) |  |  |  | static | 
 
 
◆ cuvid_decode_init()
◆ cuvid_flush()
◆ options
Initial value:= {
    { 
"deint",    
"Set deinterlacing mode", 
OFFSET(deint_mode), 
AV_OPT_TYPE_INT,   { .i64 = cudaVideoDeinterlaceMode_Weave    }, cudaVideoDeinterlaceMode_Weave, cudaVideoDeinterlaceMode_Adaptive, 
VD, .unit = 
"deint" },
    { 
"weave",    
"Weave deinterlacing (do nothing)",        0, 
AV_OPT_TYPE_CONST, { .i64 = cudaVideoDeinterlaceMode_Weave    }, 0, 0, 
VD, .unit = 
"deint" },
    { 
"bob",      
"Bob deinterlacing",                       0, 
AV_OPT_TYPE_CONST, { .i64 = cudaVideoDeinterlaceMode_Bob      }, 0, 0, 
VD, .unit = 
"deint" },
    { 
"adaptive", 
"Adaptive deinterlacing",                  0, 
AV_OPT_TYPE_CONST, { .i64 = cudaVideoDeinterlaceMode_Adaptive }, 0, 0, 
VD, .unit = 
"deint" },
    { 
"drop_second_field", 
"Drop second field when deinterlacing", 
OFFSET(drop_second_field), 
AV_OPT_TYPE_BOOL, { .i64 = 0 }, 0, 1, 
VD },
}
Definition at line 1230 of file cuviddec.c.
 
 
◆ cuvid_hw_configs
 
@ AV_PIX_FMT_CUDA
HW acceleration through CUDA.
#define AV_CODEC_CAP_HARDWARE
Codec is backed by a hardware implementation.
static int cuvid_output_frame(AVCodecContext *avctx, AVFrame *frame)
#define FF_CODEC_CAP_NOT_INIT_THREADSAFE
The codec is not known to be init-threadsafe (i.e.
static const AVOption options[]
AVCodec p
The public AVCodec.
@ AV_CODEC_HW_CONFIG_METHOD_HW_FRAMES_CTX
The codec supports this format via the hw_frames_ctx interface.
static const AVCodecHWConfigInternal *const cuvid_hw_configs[]
#define LIBAVUTIL_VERSION_INT
Describe the class of an AVClass context structure.
const char * av_default_item_name(void *ptr)
Return the context name.
@ AV_CODEC_HW_CONFIG_METHOD_INTERNAL
The codec supports this format by some internal method.
static av_cold int cuvid_decode_init(AVCodecContext *avctx)
static av_cold int cuvid_decode_end(AVCodecContext *avctx)
#define AV_OPT_FLAG_DEPRECATED
Set if option is deprecated, users should refer to AVOption.help text for more information.
const char * name
Name of the codec implementation.
const char * class_name
The name of the class; usually it is the same name as the context structure type to which the AVClass...
#define FF_CODEC_RECEIVE_FRAME_CB(func)
@ AV_OPT_TYPE_INT
Underlying C type is int.
#define AV_CODEC_CAP_DELAY
Encoder or decoder requires flushing with NULL input at the end in order to give the complete and cor...
IDirect3DDxgiInterfaceAccess _COM_Outptr_ void ** p
static void cuvid_flush(AVCodecContext *avctx)
@ AV_CODEC_HW_CONFIG_METHOD_HW_DEVICE_CTX
The codec supports this format via the hw_device_ctx interface.
@ AV_OPT_TYPE_BOOL
Underlying C type is int.
#define AV_CODEC_CAP_AVOID_PROBING
Decoder is not a preferred choice for probing.
@ AV_OPT_TYPE_STRING
Underlying C type is a uint8_t* that is either NULL or points to a C string allocated with the av_mal...
@ AV_OPT_TYPE_CONST
Special option type for declaring named constants.