FFmpeg
4.0
|
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) |
int | av_vdpau_get_profile (AVCodecContext *avctx, VdpDecoderProfile *profile) |
Get a decoder profile that should be used for initializing a VDPAU decoder. More... | |
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 43 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 74 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 | ||
) |
Definition at line 114 of file vdpau.c.
Referenced by vdpau_mpeg_decode_slice(), and vdpau_vc1_init().
int ff_vdpau_common_init | ( | AVCodecContext * | avctx, |
VdpDecoderProfile | profile, | ||
int | level | ||
) |
Definition at line 133 of file vdpau.c.
Referenced by vdpau_h264_init(), vdpau_hevc_init(), vdpau_mpeg4_init(), vdpau_mpeg_decode_slice(), and vdpau_vc1_init().
int ff_vdpau_common_uninit | ( | AVCodecContext * | avctx | ) |
Definition at line 280 of file vdpau.c.
Referenced by vdpau_mpeg_decode_slice(), and vdpau_vc1_init().
|
static |
Definition at line 303 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 318 of file vdpau.c.
Referenced by vdpau_h264_start_frame(), vdpau_hevc_start_frame(), vdpau_mpeg4_start_frame(), vdpau_mpeg_start_frame(), and vdpau_vc1_start_frame().
int ff_vdpau_common_end_frame | ( | AVCodecContext * | avctx, |
AVFrame * | frame, | ||
struct vdpau_picture_context * | pic_ctx | ||
) |
Definition at line 328 of file vdpau.c.
Referenced by ff_vdpau_common_end_frame(), vdpau_h264_end_frame(), and vdpau_hevc_end_frame().
int ff_vdpau_add_buffer | ( | struct vdpau_picture_context * | pic_ctx, |
const uint8_t * | buf, | ||
uint32_t | size | ||
) |
Definition at line 373 of file vdpau.c.
Referenced by vdpau_h264_decode_slice(), vdpau_hevc_decode_slice(), vdpau_mpeg4_start_frame(), vdpau_mpeg_decode_slice(), and vdpau_vc1_decode_slice().
int av_vdpau_get_profile | ( | AVCodecContext * | avctx, |
VdpDecoderProfile * | profile | ||
) |
Get a decoder profile that should be used for initializing a VDPAU decoder.
Should be called from the AVCodecContext.get_format() callback.
avctx | the codec context being used for decoding the stream |
profile | a pointer into which the result will be written on success. The contents of profile are undefined if this function returns an error. |
AVVDPAUContext* av_vdpau_alloc_context | ( | void | ) |
Allocate an AVVDPAUContext.
Definition at line 441 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 |