FFmpeg
|
Macros | |
#define | MAKE_ACCESSORS(str, name, type, field) |
Functions | |
static int | vdpau_error (VdpStatus status) |
AVVDPAUContext * | av_alloc_vdpaucontext (void) |
allocation function for AVVDPAUContext More... | |
int | av_vdpau_get_surface_parameters (AVCodecContext *avctx, VdpChromaType *type, uint32_t *width, uint32_t *height) |
Gets the parameters to create an adequate VDPAU video surface for the codec context using VDPAU hardware decoding acceleration. More... | |
int | ff_vdpau_common_frame_params (AVCodecContext *avctx, AVBufferRef *hw_frames_ctx) |
int | ff_vdpau_common_init (AVCodecContext *avctx, VdpDecoderProfile profile, int level) |
int | ff_vdpau_common_uninit (AVCodecContext *avctx) |
static int | ff_vdpau_common_reinit (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 | ff_vdpau_common_end_frame (AVCodecContext *avctx, AVFrame *frame, struct vdpau_picture_context *pic_ctx) |
int | ff_vdpau_add_buffer (struct vdpau_picture_context *pic_ctx, const uint8_t *buf, uint32_t size) |
AVVDPAUContext * | av_vdpau_alloc_context (void) |
Allocate an AVVDPAUContext. More... | |
int | av_vdpau_bind_context (AVCodecContext *avctx, VdpDevice device, VdpGetProcAddress *get_proc, unsigned flags) |
Associate a VDPAU device with a codec context for hardware acceleration. More... | |
|
static |
Definition at line 45 of file vdpau.c.
Referenced by ff_vdpau_common_end_frame(), ff_vdpau_common_init(), and ff_vdpau_common_uninit().
AVVDPAUContext* av_alloc_vdpaucontext | ( | void | ) |
allocation function for AVVDPAUContext
Allows extending the struct without breaking API/ABI
int av_vdpau_get_surface_parameters | ( | AVCodecContext * | avctx, |
VdpChromaType * | type, | ||
uint32_t * | width, | ||
uint32_t * | height | ||
) |
Gets the parameters to create an adequate VDPAU video surface for the codec context using VDPAU hardware decoding acceleration.
avctx | the codec context being used for decoding the stream |
type | storage space for the VDPAU video surface chroma type (or NULL to ignore) |
width | storage space for the VDPAU video surface pixel width (or NULL to ignore) |
height | storage space for the VDPAU video surface pixel height (or NULL to ignore) |
Definition at line 79 of file vdpau.c.
Referenced by ff_vdpau_common_frame_params(), and ff_vdpau_common_init().
int ff_vdpau_common_frame_params | ( | AVCodecContext * | avctx, |
AVBufferRef * | hw_frames_ctx | ||
) |
int ff_vdpau_common_init | ( | AVCodecContext * | avctx, |
VdpDecoderProfile | profile, | ||
int | level | ||
) |
Definition at line 142 of file vdpau.c.
Referenced by vdpau_av1_init(), vdpau_h264_init(), vdpau_hevc_init(), vdpau_mpeg4_init(), vdpau_vc1_init(), and vdpau_vp9_init().
int ff_vdpau_common_uninit | ( | AVCodecContext * | avctx | ) |
|
static |
Definition at line 316 of file vdpau.c.
Referenced by ff_vdpau_common_end_frame().
int ff_vdpau_common_start_frame | ( | struct vdpau_picture_context * | pic_ctx, |
av_unused const uint8_t * | buffer, | ||
av_unused uint32_t | size | ||
) |
Definition at line 331 of file vdpau.c.
Referenced by vdpau_av1_start_frame(), vdpau_h264_start_frame(), vdpau_hevc_start_frame(), vdpau_mpeg4_start_frame(), vdpau_mpeg_start_frame(), vdpau_vc1_start_frame(), and vdpau_vp9_start_frame().
int ff_vdpau_common_end_frame | ( | AVCodecContext * | avctx, |
AVFrame * | frame, | ||
struct vdpau_picture_context * | pic_ctx | ||
) |
Definition at line 341 of file vdpau.c.
Referenced by vdpau_av1_end_frame(), vdpau_h264_end_frame(), vdpau_hevc_end_frame(), and vdpau_vp9_end_frame().
int ff_vdpau_add_buffer | ( | struct vdpau_picture_context * | pic_ctx, |
const uint8_t * | buf, | ||
uint32_t | size | ||
) |
Definition at line 386 of file vdpau.c.
Referenced by vdpau_av1_decode_slice(), vdpau_h264_decode_slice(), vdpau_hevc_decode_slice(), vdpau_mpeg4_start_frame(), vdpau_mpeg_decode_slice(), vdpau_vc1_decode_slice(), and vdpau_vp9_decode_slice().
AVVDPAUContext* av_vdpau_alloc_context | ( | void | ) |
Allocate an AVVDPAUContext.
Definition at line 405 of file vdpau.c.
Referenced by av_alloc_vdpaucontext().
int av_vdpau_bind_context | ( | AVCodecContext * | avctx, |
VdpDevice | device, | ||
VdpGetProcAddress * | get_proc_address, | ||
unsigned | flags | ||
) |
Associate a VDPAU device with a codec context for hardware acceleration.
This function is meant to be called from the get_format() codec callback, or earlier. It can also be called after avcodec_flush_buffers() to change the underlying VDPAU device mid-stream (e.g. to recover from non-transparent display preemption).
avctx | decoding context whose get_format() callback is invoked |
device | VDPAU device handle to use for hardware acceleration |
get_proc_address | VDPAU device driver |
flags | zero of more OR'd AV_HWACCEL_FLAG_* flags |