diff options
author | Mark Thompson <sw@jkqxz.net> | 2016-04-12 23:13:31 +0100 |
---|---|---|
committer | Anton Khirnov <anton@khirnov.net> | 2016-04-15 10:07:04 +0200 |
commit | f6b85523692b0e7d4c4efb8449fa201d313424fe (patch) | |
tree | ee84ef7e68d38e4dd1db1c3cff9f1e13d4b64b22 /libavcodec/vaapi_encode.h | |
parent | 18019f8cb9663dd1032c65aa453eaec18d641905 (diff) | |
download | ffmpeg-f6b85523692b0e7d4c4efb8449fa201d313424fe.tar.gz |
vaapi_encode: Refactor slightly to allow easier setting of global options
Signed-off-by: Anton Khirnov <anton@khirnov.net>
Diffstat (limited to 'libavcodec/vaapi_encode.h')
-rw-r--r-- | libavcodec/vaapi_encode.h | 10 |
1 files changed, 8 insertions, 2 deletions
diff --git a/libavcodec/vaapi_encode.h b/libavcodec/vaapi_encode.h index 1aea45884b..9716578e5a 100644 --- a/libavcodec/vaapi_encode.h +++ b/libavcodec/vaapi_encode.h @@ -32,6 +32,8 @@ struct VAAPIEncodeType; struct VAAPIEncodePicture; enum { + MAX_CONFIG_ATTRIBUTES = 4, + MAX_GLOBAL_PARAMS = 4, MAX_PICTURE_REFERENCES = 2, MAX_PICTURE_SLICES = 1, MAX_PARAM_BUFFERS = 16, @@ -128,15 +130,19 @@ typedef struct VAAPIEncodeContext { AVBufferRef *recon_frames_ref; AVHWFramesContext *recon_frames; - VAConfigAttrib *config_attributes; + VAConfigAttrib config_attributes[MAX_CONFIG_ATTRIBUTES]; int nb_config_attributes; + VAEncMiscParameterBuffer *global_params[MAX_GLOBAL_PARAMS]; + size_t global_params_size[MAX_GLOBAL_PARAMS]; + int nb_global_params; + // Per-sequence parameter structure (VAEncSequenceParameterBuffer*). void *codec_sequence_params; // Per-sequence parameters found in the per-picture parameter // structure (VAEncPictureParameterBuffer*). - void *codec_picture_params; + void *codec_picture_params; // Current encoding window, in display (input) order. VAAPIEncodePicture *pic_start, *pic_end; |