19 #ifndef AVCODEC_VAAPI_DECODE_H
20 #define AVCODEC_VAAPI_DECODE_H
31 #if FF_API_STRUCT_VAAPI_CONTEXT
37 return (uintptr_t)pic->
data[3];
61 #if FF_API_STRUCT_VAAPI_CONTEXT
86 const void *params_data,
This struct aggregates all the (hardware/vendor-specific) "high-level" state, i.e.
VAAPI-specific data associated with a frame pool.
This structure describes decoded (raw) audio or video data.
ptrdiff_t const GLvoid * data
static VASurfaceID ff_vaapi_get_surface_id(AVFrame *pic)
This structure is used to share data between the FFmpeg library and the client video application...
int ff_vaapi_decode_make_slice_buffer(AVCodecContext *avctx, VAAPIDecodePicture *pic, const void *params_data, size_t params_size, const void *slice_data, size_t slice_size)
API-specific header for AV_HWDEVICE_TYPE_VAAPI.
AVHWFramesContext * frames
int ff_vaapi_decode_uninit(AVCodecContext *avctx)
int ff_vaapi_decode_issue(AVCodecContext *avctx, VAAPIDecodePicture *pic)
AVVAAPIDeviceContext * hwctx
enum AVPixelFormat surface_format
VAEntrypoint va_entrypoint
Libavcodec version macros.
AVVAAPIFramesContext * hwfc
reference-counted frame API
int ff_vaapi_decode_cancel(AVCodecContext *avctx, VAAPIDecodePicture *pic)
VABufferID * slice_buffers
struct vaapi_context * old_context
VABufferID param_buffers[MAX_PARAM_BUFFERS]
VASurfaceID output_surface
Libavcodec external API header.
main external API structure.
int ff_vaapi_decode_make_param_buffer(AVCodecContext *avctx, VAAPIDecodePicture *pic, int type, const void *data, size_t size)
Public libavcodec VA API header.
This struct describes a set or pool of "hardware" frames (i.e.
int ff_vaapi_decode_init(AVCodecContext *avctx)
uint8_t * data[AV_NUM_DATA_POINTERS]
pointer to the picture/channel planes.
AVHWDeviceContext * device
A reference to a data buffer.
VAAPI connection details.
attribute_deprecated const uint8_t * slice_data
Pointer to slice data buffer base.
AVPixelFormat
Pixel format.