FFmpeg  4.0
Functions | Variables
nvdec_hevc.c File Reference
#include <stdint.h>
#include <string.h>
#include "avcodec.h"
#include "nvdec.h"
#include "decode.h"
#include "internal.h"
#include "hevcdec.h"
#include "hevc_data.h"

Go to the source code of this file.

Functions

static void dpb_add (CUVIDHEVCPICPARAMS *pp, int idx, const HEVCFrame *src)
 
static void fill_scaling_lists (CUVIDHEVCPICPARAMS *ppc, const HEVCContext *s)
 
static int nvdec_hevc_start_frame (AVCodecContext *avctx, const uint8_t *buffer, uint32_t size)
 
static int nvdec_hevc_decode_slice (AVCodecContext *avctx, const uint8_t *buffer, uint32_t size)
 
static int nvdec_hevc_frame_params (AVCodecContext *avctx, AVBufferRef *hw_frames_ctx)
 

Variables

const AVHWAccel ff_hevc_nvdec_hwaccel
 

Function Documentation

◆ dpb_add()

static void dpb_add ( CUVIDHEVCPICPARAMS *  pp,
int  idx,
const HEVCFrame src 
)
static

Definition at line 33 of file nvdec_hevc.c.

Referenced by nvdec_hevc_start_frame().

◆ fill_scaling_lists()

static void fill_scaling_lists ( CUVIDHEVCPICPARAMS *  ppc,
const HEVCContext s 
)
static

Definition at line 43 of file nvdec_hevc.c.

Referenced by nvdec_hevc_start_frame().

◆ nvdec_hevc_start_frame()

static int nvdec_hevc_start_frame ( AVCodecContext avctx,
const uint8_t buffer,
uint32_t  size 
)
static

Definition at line 69 of file nvdec_hevc.c.

◆ nvdec_hevc_decode_slice()

static int nvdec_hevc_decode_slice ( AVCodecContext avctx,
const uint8_t buffer,
uint32_t  size 
)
static

Definition at line 240 of file nvdec_hevc.c.

◆ nvdec_hevc_frame_params()

static int nvdec_hevc_frame_params ( AVCodecContext avctx,
AVBufferRef hw_frames_ctx 
)
static

Definition at line 267 of file nvdec_hevc.c.

Variable Documentation

◆ ff_hevc_nvdec_hwaccel

const AVHWAccel ff_hevc_nvdec_hwaccel
Initial value:
= {
.name = "hevc_nvdec",
.pix_fmt = AV_PIX_FMT_CUDA,
.start_frame = nvdec_hevc_start_frame,
.end_frame = ff_nvdec_end_frame,
.decode_slice = nvdec_hevc_decode_slice,
.frame_params = nvdec_hevc_frame_params,
.priv_data_size = sizeof(NVDECContext),
}
static int nvdec_hevc_start_frame(AVCodecContext *avctx, const uint8_t *buffer, uint32_t size)
Definition: nvdec_hevc.c:69
static int nvdec_hevc_frame_params(AVCodecContext *avctx, AVBufferRef *hw_frames_ctx)
Definition: nvdec_hevc.c:267
int ff_nvdec_end_frame(AVCodecContext *avctx)
Definition: nvdec.c:460
static int nvdec_hevc_decode_slice(AVCodecContext *avctx, const uint8_t *buffer, uint32_t size)
Definition: nvdec_hevc.c:240
int ff_nvdec_decode_init(AVCodecContext *avctx)
Definition: nvdec.c:264
HW acceleration through CUDA.
Definition: pixfmt.h:231
int ff_nvdec_decode_uninit(AVCodecContext *avctx)
Definition: nvdec.c:246

Definition at line 275 of file nvdec_hevc.c.