19 #ifndef AVCODEC_VAAPI_ENCODE_H
20 #define AVCODEC_VAAPI_ENCODE_H
150 VAEncMiscParameterRateControl
rc;
153 VAEncMiscParameterBuffer
misc;
154 VAEncMiscParameterHRD
hrd;
157 VAEncMiscParameterBuffer
misc;
158 VAEncMiscParameterFrameRate
fr;
160 #if VA_CHECK_VERSION(0, 36, 0)
162 VAEncMiscParameterBuffer
misc;
163 VAEncMiscParameterBufferQualityLevel quality;
249 char *
data,
size_t *data_len);
252 char *
data,
size_t *data_len);
256 char *
data,
size_t *data_len);
265 char *
data,
size_t *data_len);
273 char *
data,
size_t *data_len);
278 const AVFrame *input_image,
int *got_packet);
This struct aggregates all the (hardware/vendor-specific) "high-level" state, i.e.
VASurfaceID input_surface
VAEncMiscParameterBuffer misc
This structure describes decoded (raw) audio or video data.
VAEntrypoint va_entrypoint
ptrdiff_t const GLvoid * data
char codec_options_data[0]
int(* write_slice_header)(AVCodecContext *avctx, VAAPIEncodePicture *pic, VAAPIEncodeSlice *slice, char *data, size_t *data_len)
void * codec_sequence_params
AVBufferRef * input_frames_ref
VAEncMiscParameterHRD hrd
size_t picture_params_size
AVHWDeviceContext * device
struct VAAPIEncodeContext::@129 hrd_params
API-specific header for AV_HWDEVICE_TYPE_VAAPI.
unsigned int va_packed_headers
VAEncMiscParameterFrameRate fr
int(* write_picture_header)(AVCodecContext *avctx, VAAPIEncodePicture *pic, char *data, size_t *data_len)
AVBufferRef * output_buffer_ref
VABufferID * param_buffers
VASurfaceID recon_surface
int ff_vaapi_encode_init(AVCodecContext *avctx)
VAConfigAttrib config_attributes[MAX_CONFIG_ATTRIBUTES]
AVHWFramesContext * input_frames
VAEncMiscParameterBuffer * global_params[MAX_GLOBAL_PARAMS]
int(* configure)(AVCodecContext *avctx)
int ff_vaapi_encode_close(AVCodecContext *avctx)
int(* init_picture_params)(AVCodecContext *avctx, VAAPIEncodePicture *pic)
void * codec_picture_params
int(* write_extra_header)(AVCodecContext *avctx, VAAPIEncodePicture *pic, int index, int *type, char *data, size_t *data_len)
AVHWFramesContext * recon_frames
VAAPIEncodeSlice * slices
unsigned int va_rt_format
struct VAAPIEncodePicture * next
void * codec_picture_params
int64_t ts_ring[MAX_REORDER_DELAY *3]
AVBufferPool * output_buffer_pool
int(* write_sequence_header)(AVCodecContext *avctx, char *data, size_t *data_len)
struct VAAPIEncodePicture * refs[MAX_PICTURE_REFERENCES]
int ff_vaapi_encode2(AVCodecContext *avctx, AVPacket *pkt, const AVFrame *input_image, int *got_packet)
const struct VAAPIEncodeType * codec
Libavcodec external API header.
VAAPIEncodePicture * pic_start
main external API structure.
int(* write_extra_buffer)(AVCodecContext *avctx, VAAPIEncodePicture *pic, int index, int *type, char *data, size_t *data_len)
Describe the class of an AVClass context structure.
This struct describes a set or pool of "hardware" frames (i.e.
AVBufferRef * recon_frames_ref
VAAPIEncodePicture * pic_end
size_t global_params_size[MAX_GLOBAL_PARAMS]
VAEncMiscParameterRateControl rc
A reference to a data buffer.
size_t sequence_params_size
void * codec_slice_params
int(* init_slice_params)(AVCodecContext *avctx, VAAPIEncodePicture *pic, VAAPIEncodeSlice *slice)
VAAPI connection details.
enum VAAPIEncodeContext::@131 issue_mode
int(* init_sequence_params)(AVCodecContext *avctx)
struct VAAPIEncodeContext::@128 rc_params
This structure stores compressed data.
struct VAAPIEncodeContext::@130 fr_params
AVVAAPIDeviceContext * hwctx