34 CUVIDMPEG2PICPARAMS *ppc = &pp->CodecSpecific.mpeg2;
48 *pp = (CUVIDPICPARAMS) {
49 .PicWidthInMbs = (cur_frame->
width + 15) / 16,
50 .FrameHeightInMbs = (cur_frame->
height + 15) / 16,
51 .CurrPicIdx = cf->
idx,
57 .CodecSpecific.mpeg2 = {
62 .full_pel_forward_vector = s->
full_pel[0],
63 .full_pel_backward_vector = s->
full_pel[1],
78 for (i = 0; i < 64; ++i) {
93 #if CONFIG_MPEG2_NVDEC_HWACCEL
95 .
name =
"mpeg2_nvdec",
109 #if CONFIG_MPEG1_NVDEC_HWACCEL
111 .
name =
"mpeg1_nvdec",
This structure describes decoded (raw) audio or video data.
int ff_nvdec_simple_end_frame(AVCodecContext *avctx)
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)
Picture current_picture
copy of the current picture structure.
static int nvdec_mpeg12_frame_params(AVCodecContext *avctx, AVBufferRef *hw_frames_ctx)
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.
HW acceleration through CUDA.
preferred ID for MPEG-1/2 video decoding
uint16_t inter_matrix[64]
int concealment_motion_vectors
Libavcodec external API header.
main external API structure.
int ff_nvdec_decode_uninit(AVCodecContext *avctx)
uint8_t * data
The data buffer.
const AVHWAccel ff_mpeg1_nvdec_hwaccel
int pict_type
AV_PICTURE_TYPE_I, AV_PICTURE_TYPE_P, AV_PICTURE_TYPE_B, ...
A reference to a data buffer.
This struct stores per-frame lavc-internal data and is attached to it via private_ref.
int ff_nvdec_get_ref_idx(AVFrame *frame)
void * hwaccel_priv_data
hwaccel-specific private data
Picture last_picture
copy of the previous picture structure.
const AVHWAccel ff_mpeg2_nvdec_hwaccel
struct AVCodecInternal * internal
Private context used for internal data.
Picture next_picture
copy of the next picture structure.
static int nvdec_mpeg12_start_frame(AVCodecContext *avctx, const uint8_t *buffer, uint32_t size)
uint16_t intra_matrix[64]
matrix transmitted in the bitstream
void * hwaccel_priv
Per-frame private data for hwaccels.