FFmpeg
4.0
|
#include "config.h"
#include <objbase.h>
#include "libavutil/hwcontext.h"
#include "avcodec.h"
#include "internal.h"
Go to the source code of this file.
Data Structures | |
union | AVDXVAContext |
struct | FFDXVASharedContext |
Macros | |
#define | COBJMACROS |
#define | DXVA_SHARED_CONTEXT(avctx) ((FFDXVASharedContext *)((avctx)->internal->hwaccel_priv_data)) |
#define | DXVA_CONTEXT(avctx) (AVDXVAContext *)((avctx)->hwaccel_context ? (avctx)->hwaccel_context : (&(DXVA_SHARED_CONTEXT(avctx)->ctx))) |
#define | D3D11VA_CONTEXT(ctx) (&ctx->d3d11va) |
#define | DXVA2_CONTEXT(ctx) (&ctx->dxva2) |
Typedefs | |
typedef void | DECODER_BUFFER_DESC |
Functions | |
unsigned | ff_dxva2_get_surface_index (const AVCodecContext *avctx, const AVDXVAContext *, const AVFrame *frame) |
int | ff_dxva2_commit_buffer (AVCodecContext *, AVDXVAContext *, DECODER_BUFFER_DESC *, unsigned type, const void *data, unsigned size, unsigned mb_count) |
int | ff_dxva2_common_end_frame (AVCodecContext *, AVFrame *, const void *pp, unsigned pp_size, const void *qm, unsigned qm_size, int(*commit_bs_si)(AVCodecContext *, DECODER_BUFFER_DESC *bs, DECODER_BUFFER_DESC *slice)) |
int | ff_dxva2_decode_init (AVCodecContext *avctx) |
int | ff_dxva2_decode_uninit (AVCodecContext *avctx) |
int | ff_dxva2_common_frame_params (AVCodecContext *avctx, AVBufferRef *hw_frames_ctx) |
int | ff_dxva2_is_d3d11 (const AVCodecContext *avctx) |
#define COBJMACROS |
Definition at line 26 of file dxva2_internal.h.
#define DXVA_SHARED_CONTEXT | ( | avctx | ) | ((FFDXVASharedContext *)((avctx)->internal->hwaccel_priv_data)) |
Definition at line 97 of file dxva2_internal.h.
Referenced by bufref_wrap_interface(), dxva_get_decoder_configuration(), dxva_get_decoder_guid(), dxva_list_guids_debug(), ff_dxva2_common_end_frame(), ff_dxva2_decode_init(), ff_dxva2_decode_uninit(), ff_dxva2_lock(), ff_dxva2_unlock(), and get_surface().
#define DXVA_CONTEXT | ( | avctx | ) | (AVDXVAContext *)((avctx)->hwaccel_context ? (avctx)->hwaccel_context : (&(DXVA_SHARED_CONTEXT(avctx)->ctx))) |
Definition at line 99 of file dxva2_internal.h.
Referenced by commit_bitstream_and_slice_buffer(), dxva2_h264_decode_slice(), dxva2_h264_start_frame(), dxva2_hevc_start_frame(), dxva2_mpeg2_start_frame(), dxva2_vc1_start_frame(), dxva2_vp9_start_frame(), ff_dxva2_common_end_frame(), ff_dxva2_lock(), ff_dxva2_unlock(), and fill_slice_long().
Definition at line 101 of file dxva2_internal.h.
Referenced by commit_bitstream_and_slice_buffer(), ff_dxva2_commit_buffer(), ff_dxva2_common_end_frame(), ff_dxva2_lock(), and ff_dxva2_unlock().
Definition at line 102 of file dxva2_internal.h.
Referenced by commit_bitstream_and_slice_buffer(), ff_dxva2_commit_buffer(), and ff_dxva2_common_end_frame().
typedef void DECODER_BUFFER_DESC |
Definition at line 56 of file dxva2_internal.h.
unsigned ff_dxva2_get_surface_index | ( | const AVCodecContext * | avctx, |
const AVDXVAContext * | , | ||
const AVFrame * | frame | ||
) |
Definition at line 764 of file dxva2.c.
Referenced by fill_picture_parameters(), and fill_slice_long().
int ff_dxva2_commit_buffer | ( | AVCodecContext * | , |
AVDXVAContext * | , | ||
DECODER_BUFFER_DESC * | , | ||
unsigned | type, | ||
const void * | data, | ||
unsigned | size, | ||
unsigned | mb_count | ||
) |
Definition at line 791 of file dxva2.c.
Referenced by commit_bitstream_and_slice_buffer(), and ff_dxva2_common_end_frame().
int ff_dxva2_common_end_frame | ( | AVCodecContext * | , |
AVFrame * | , | ||
const void * | pp, | ||
unsigned | pp_size, | ||
const void * | qm, | ||
unsigned | qm_size, | ||
int(*)(AVCodecContext *, DECODER_BUFFER_DESC *bs, DECODER_BUFFER_DESC *slice) | commit_bs_si | ||
) |
Definition at line 880 of file dxva2.c.
Referenced by dxva2_h264_end_frame(), dxva2_hevc_end_frame(), dxva2_mpeg2_end_frame(), dxva2_vc1_end_frame(), and dxva2_vp9_end_frame().
int ff_dxva2_decode_init | ( | AVCodecContext * | avctx | ) |
Definition at line 649 of file dxva2.c.
Referenced by dxva2_h264_end_frame(), dxva2_hevc_end_frame(), dxva2_mpeg2_end_frame(), dxva2_vc1_end_frame(), and dxva2_vp9_end_frame().
int ff_dxva2_decode_uninit | ( | AVCodecContext * | avctx | ) |
Definition at line 724 of file dxva2.c.
Referenced by dxva2_h264_end_frame(), dxva2_hevc_end_frame(), dxva2_mpeg2_end_frame(), dxva2_vc1_end_frame(), dxva2_vp9_end_frame(), and ff_dxva2_decode_init().
int ff_dxva2_common_frame_params | ( | AVCodecContext * | avctx, |
AVBufferRef * | hw_frames_ctx | ||
) |
Definition at line 586 of file dxva2.c.
Referenced by dxva2_h264_end_frame(), dxva2_hevc_end_frame(), dxva2_mpeg2_end_frame(), dxva2_vc1_end_frame(), and dxva2_vp9_end_frame().
int ff_dxva2_is_d3d11 | ( | const AVCodecContext * | avctx | ) |
Definition at line 1045 of file dxva2.c.
Referenced by commit_bitstream_and_slice_buffer(), ff_dxva2_commit_buffer(), ff_dxva2_common_end_frame(), ff_dxva2_lock(), and ff_dxva2_unlock().