24 #include <vdpau/vdpau.h> 
   38     VdpPictureInfoVC1 *info = &pic_ctx->info.vc1;
 
   42     info->forward_reference  = VDP_INVALID_HANDLE;
 
   43     info->backward_reference = VDP_INVALID_HANDLE;
 
   49         assert(ref != VDP_INVALID_HANDLE);
 
   50         info->backward_reference = 
ref;
 
   56         assert(ref != VDP_INVALID_HANDLE);
 
   57         info->forward_reference  = 
ref;
 
   61     info->slice_count       = 0;
 
   63         info->picture_type  = 4;
 
   67     info->frame_coding_mode = v->
fcm ? (v->
fcm + 1) : 0;
 
  112     pic_ctx->info.vc1.slice_count++;
 
  122         profile = VDP_DECODER_PROFILE_VC1_SIMPLE;
 
  125         profile = VDP_DECODER_PROFILE_VC1_MAIN;
 
  128         profile = VDP_DECODER_PROFILE_VC1_ADVANCED;
 
  137 #if CONFIG_WMV3_VDPAU_HWACCEL 
  146     .frame_priv_data_size = 
sizeof(
struct vdpau_picture_context),
 
  161     .frame_priv_data_size = 
sizeof(
struct vdpau_picture_context),
 
const char const char void * val
 
static av_cold int init(AVCodecContext *avctx)
 
int ff_vdpau_common_start_frame(struct vdpau_picture_context *pic_ctx, av_unused const uint8_t *buffer, av_unused uint32_t size)
 
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. 
 
Public libavcodec VDPAU header. 
 
int fastuvmc
Rounding of qpel vector to hpel ? (not in Simple) 
 
int ff_vdpau_common_uninit(AVCodecContext *avctx)
 
int panscanflag
NUMPANSCANWIN, TOPLEFT{X,Y}, BOTRIGHT{X,Y} present. 
 
int interlace
Progressive/interlaced (RPTFTM syntax element) 
 
int refdist_flag
REFDIST syntax element present in II, IP, PI or PP field picture headers. 
 
int psf
Progressive Segmented Frame. 
 
int ff_vdpau_common_init(AVCodecContext *avctx, VdpDecoderProfile profile, int level)
 
int overlap
overlapped transforms in use 
 
int resync_marker
could this stream contain resync markers 
 
int postprocflag
Per-frame processing suggestion flag present. 
 
static int vdpau_vc1_init(AVCodecContext *avctx)
 
const char * name
Name of the hardware accelerated codec. 
 
int tfcntrflag
TFCNTR present. 
 
static int vdpau_vc1_start_frame(AVCodecContext *avctx, const uint8_t *buffer, uint32_t size)
 
#define FF_PROFILE_VC1_MAIN
 
Picture * current_picture_ptr
pointer to the current picture 
 
void * hwaccel_picture_private
Hardware accelerator private data. 
 
#define FF_PROFILE_VC1_SIMPLE
 
int rangered
RANGEREDFRM (range reduction) syntax element present at frame level. 
 
int finterpflag
INTERPFRM present. 
 
AVHWAccel ff_vc1_vdpau_hwaccel
 
Libavcodec external API header. 
 
int ff_vdpau_mpeg_end_frame(AVCodecContext *avctx)
 
int multires
frame-level RESPIC syntax element present 
 
main external API structure. 
 
int extended_dmv
Additional extended dmv range at P/B-frame-level. 
 
HW acceleration through VDPAU, Picture.data[3] contains a VdpVideoSurface. 
 
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 
 
static int vdpau_vc1_decode_slice(AVCodecContext *avctx, const uint8_t *buffer, uint32_t size)
 
Picture * next_picture_ptr
pointer to the next picture (for bidir pred) 
 
static int ref[MAX_W *MAX_W]
 
int ff_vdpau_add_buffer(struct vdpau_picture_context *pic_ctx, const uint8_t *buf, uint32_t size)
 
enum FrameCodingMode fcm
Frame decoding info for Advanced profile. 
 
Picture last_picture
copy of the previous picture structure. 
 
Picture * last_picture_ptr
pointer to the previous picture. 
 
#define FF_PROFILE_VC1_ADVANCED
 
Picture next_picture
copy of the next picture structure. 
 
int dquant
How qscale varies with MBs, 2 bits (not in Simple) 
 
static uintptr_t ff_vdpau_get_surface_id(AVFrame *pic)
Extract VdpVideoSurface from an AVFrame.