VAAPI_Decoding

Functions

static void destroy_buffers (VADisplay display, VABufferID *buffers, unsigned int n_buffers)
 
int ff_vaapi_render_picture (struct vaapi_context *vactx, VASurfaceID surface)
 
int ff_vaapi_commit_slices (struct vaapi_context *vactx)
 
static voidalloc_buffer (struct vaapi_context *vactx, int type, unsigned int size, uint32_t *buf_id)
 
voidff_vaapi_alloc_pic_param (struct vaapi_context *vactx, unsigned int size)
 Allocate a new picture parameter buffer. More...
 
voidff_vaapi_alloc_iq_matrix (struct vaapi_context *vactx, unsigned int size)
 Allocate a new IQ matrix buffer. More...
 
uint8_tff_vaapi_alloc_bitplane (struct vaapi_context *vactx, uint32_t size)
 Allocate a new bit-plane buffer. More...
 
VASliceParameterBufferBase * ff_vaapi_alloc_slice (struct vaapi_context *vactx, const uint8_t *buffer, uint32_t size)
 Allocate a new slice descriptor for the input slice. More...
 
void ff_vaapi_common_end_frame (AVCodecContext *avctx)
 Common AVHWAccel.end_frame() implementation. More...
 
int ff_vaapi_mpeg_end_frame (AVCodecContext *avctx)
 
static VASurfaceID ff_vaapi_get_surface_id (Picture *pic)
 Extract VASurfaceID from a Picture. More...
 

Detailed Description

Function Documentation

static void* alloc_buffer ( struct vaapi_context vactx,
int  type,
unsigned int  size,
uint32_t *  buf_id 
)
static
static void destroy_buffers ( VADisplay  display,
VABufferID *  buffers,
unsigned int  n_buffers 
)
static

Definition at line 33 of file vaapi.c.

Referenced by ff_vaapi_common_end_frame().

uint8_t * ff_vaapi_alloc_bitplane ( struct vaapi_context vactx,
uint32_t  size 
)

Allocate a new bit-plane buffer.

Definition at line 143 of file vaapi.c.

Referenced by ff_vaapi_get_surface_id(), and vaapi_vc1_start_frame().

void * ff_vaapi_alloc_iq_matrix ( struct vaapi_context vactx,
unsigned int  size 
)

Allocate a new IQ matrix buffer.

Definition at line 138 of file vaapi.c.

Referenced by ff_vaapi_get_surface_id(), vaapi_h264_start_frame(), vaapi_mpeg2_start_frame(), and vaapi_mpeg4_start_frame().

void * ff_vaapi_alloc_pic_param ( struct vaapi_context vactx,
unsigned int  size 
)

Allocate a new picture parameter buffer.

Definition at line 133 of file vaapi.c.

Referenced by ff_vaapi_get_surface_id(), vaapi_h264_start_frame(), vaapi_mpeg2_start_frame(), vaapi_mpeg4_start_frame(), and vaapi_vc1_start_frame().

VASliceParameterBufferBase * ff_vaapi_alloc_slice ( struct vaapi_context vactx,
const uint8_t buffer,
uint32_t  size 
)

Allocate a new slice descriptor for the input slice.

Parameters
vactxthe VA API context
bufferthe slice data buffer base
sizethe size of the slice in bytes
Returns
the newly allocated slice parameter

Definition at line 148 of file vaapi.c.

Referenced by ff_vaapi_get_surface_id(), vaapi_h264_decode_slice(), vaapi_mpeg2_decode_slice(), vaapi_mpeg4_decode_slice(), and vaapi_vc1_decode_slice().

int ff_vaapi_commit_slices ( struct vaapi_context vactx)
void ff_vaapi_common_end_frame ( AVCodecContext avctx)

Common AVHWAccel.end_frame() implementation.

Definition at line 179 of file vaapi.c.

Referenced by ff_vaapi_get_surface_id(), ff_vaapi_mpeg_end_frame(), and vaapi_h264_end_frame().

static VASurfaceID ff_vaapi_get_surface_id ( Picture pic)
inlinestatic
int ff_vaapi_mpeg_end_frame ( AVCodecContext avctx)
int ff_vaapi_render_picture ( struct vaapi_context vactx,
VASurfaceID  surface 
)

Definition at line 44 of file vaapi.c.

Referenced by ff_vaapi_get_surface_id(), ff_vaapi_mpeg_end_frame(), and vaapi_h264_end_frame().