53 *pp = (CUVIDPICPARAMS) {
54 .PicWidthInMbs = (cur_frame->
width + 15) / 16,
55 .FrameHeightInMbs = (cur_frame->
height + 15) / 16,
56 .CurrPicIdx = cf->
idx,
58 .CodecSpecific.vp8 = {
59 .width = cur_frame->
width,
60 .height = cur_frame->
height,
This structure describes decoded (raw) audio or video data.
AVHWAccel ff_vp8_nvdec_hwaccel
int ff_nvdec_simple_end_frame(AVCodecContext *avctx)
static int nvdec_vp8_frame_params(AVCodecContext *avctx, AVBufferRef *hw_frames_ctx)
CUVIDPICPARAMS pic_params
AVBufferRef * private_ref
AVBufferRef for internal use by a single libav* library.
int ff_nvdec_simple_decode_slice(AVCodecContext *avctx, const uint8_t *buffer, uint32_t size)
int ff_nvdec_start_frame(AVCodecContext *avctx, AVFrame *frame)
int ff_nvdec_decode_init(AVCodecContext *avctx)
int ff_nvdec_frame_params(AVCodecContext *avctx, AVBufferRef *hw_frames_ctx, int dpb_size)
const char * name
Name of the hardware accelerated codec.
static int nvdec_vp8_start_frame(AVCodecContext *avctx, const uint8_t *buffer, uint32_t size)
HW acceleration through CUDA.
Libavcodec external API header.
static unsigned char safe_get_ref_idx(VP8Frame *frame)
main external API structure.
int ff_nvdec_decode_uninit(AVCodecContext *avctx)
uint8_t * data
The data buffer.
uint8_t enabled
whether each mb can have a different strength based on mode/ref
int header_partition_size
uint8_t update_feature_data
struct VP8Context::@145 segmentation
Base parameters for segmentation, i.e.
A reference to a data buffer.
This struct stores per-frame lavc-internal data and is attached to it via private_ref.
common internal api header.
int ff_nvdec_get_ref_idx(AVFrame *frame)
void * hwaccel_priv_data
hwaccel-specific private data
struct AVCodecInternal * internal
Private context used for internal data.
void * hwaccel_priv
Per-frame private data for hwaccels.