48 *pp = (CUVIDPICPARAMS) {
49 .PicWidthInMbs = (cur_frame->
width + 15) / 16,
50 .FrameHeightInMbs = (cur_frame->
height + 15) / 16,
51 .CurrPicIdx = cf->
idx,
61 .CodecSpecific.vc1 = {
64 .FrameWidth = cur_frame->
width,
65 .FrameHeight = cur_frame->
height,
71 .progressive_fcm = v->
fcm == 0,
127 #if CONFIG_WMV3_NVDEC_HWACCEL
129 .
name =
"wmv3_nvdec",
This structure describes decoded (raw) audio or video data.
int extended_mv
Ext MV in P/B (not in Simple)
int broadcast
TFF/RFF present.
uint8_t rangeredfrm
Frame decoding info for S/M profiles only.
int ff_nvdec_simple_end_frame(AVCodecContext *avctx)
int fastuvmc
Rounding of qpel vector to hpel ? (not in Simple)
static int nvdec_vc1_frame_params(AVCodecContext *avctx, AVBufferRef *hw_frames_ctx)
const AVHWAccel ff_vc1_nvdec_hwaccel
int panscanflag
NUMPANSCANWIN, TOPLEFT{X,Y}, BOTRIGHT{X,Y} present.
CUVIDPICPARAMS pic_params
int interlace
Progressive/interlaced (RPTFTM syntax element)
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.
int profile
Sequence header data for all Profiles TODO: choose between ints, uint8_ts and monobit flags...
int refdist_flag
REFDIST syntax element present in II, IP, PI or PP field picture headers.
int psf
Progressive Segmented Frame.
int overlap
overlapped transforms in use
int ff_nvdec_start_frame(AVCodecContext *avctx, AVFrame *frame)
const AVHWAccel ff_wmv3_nvdec_hwaccel
int resync_marker
could this stream contain resync markers
int postprocflag
Per-frame processing suggestion flag present.
int ff_nvdec_decode_init(AVCodecContext *avctx)
int cur_field_type
0: top, 1: bottom
int ff_nvdec_frame_params(AVCodecContext *avctx, AVBufferRef *hw_frames_ctx, int dpb_size)
const char * name
Name of the hardware accelerated codec.
int tfcntrflag
TFCNTR present.
int field_mode
1 for interlaced field pictures
HW acceleration through CUDA.
static int nvdec_vc1_start_frame(AVCodecContext *avctx, const uint8_t *buffer, uint32_t size)
int rangered
RANGEREDFRM (range reduction) syntax element present at frame level.
int finterpflag
INTERPFRM present.
Libavcodec external API header.
int multires
frame-level RESPIC syntax element present
main external API structure.
int ff_nvdec_decode_uninit(AVCodecContext *avctx)
uint8_t * data
The data buffer.
int extended_dmv
Additional extended dmv range at P/B-frame-level.
int quantizer_mode
2 bits, quantizer mode used for sequence, see QUANT_*
int max_b_frames
max number of B-frames for encoding
int pict_type
AV_PICTURE_TYPE_I, AV_PICTURE_TYPE_P, AV_PICTURE_TYPE_B, ...
int vstransform
variable-size [48]x[48] transform type + info
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)
enum FrameCodingMode fcm
Frame decoding info for Advanced profile.
void * hwaccel_priv_data
hwaccel-specific private data
Picture last_picture
copy of the previous picture structure.
struct AVCodecInternal * internal
Private context used for internal data.
Picture next_picture
copy of the next picture structure.
int dquant
How qscale varies with MBs, 2 bits (not in Simple)
void * hwaccel_priv
Per-frame private data for hwaccels.