summaryrefslogtreecommitdiff
path: root/src/i965_avc_encoder_common.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/i965_avc_encoder_common.h')
-rw-r--r--src/i965_avc_encoder_common.h18
1 files changed, 18 insertions, 0 deletions
diff --git a/src/i965_avc_encoder_common.h b/src/i965_avc_encoder_common.h
index d69686fd..e16cbed8 100644
--- a/src/i965_avc_encoder_common.h
+++ b/src/i965_avc_encoder_common.h
@@ -179,6 +179,22 @@ struct i965_avc_encoder_context {
//ref list
struct i965_gpe_resource list_reference_res[MAX_MFC_AVC_REFERENCE_SURFACES];
+ //preenc downscale surfae
+ VASurfaceID preenc_scaled_4x_surface_id;
+ struct object_surface *preenc_scaled_4x_surface_obj;
+ VASurfaceID preenc_past_ref_scaled_4x_surface_id;
+ struct object_surface *preenc_past_ref_scaled_4x_surface_obj;
+ VASurfaceID preenc_future_ref_scaled_4x_surface_id;
+ struct object_surface *preenc_future_ref_scaled_4x_surface_obj;
+ struct i965_gpe_resource preenc_past_ref_stat_data_out_buffer;
+ struct i965_gpe_resource preenc_future_ref_stat_data_out_buffer;
+
+ // preproc resources
+ struct i965_gpe_resource preproc_mv_predictor_buffer;
+ struct i965_gpe_resource preproc_mb_qp_buffer;
+ struct i965_gpe_resource preproc_mv_data_out_buffer;
+ struct i965_gpe_resource preproc_stat_data_out_buffer;
+
// kernel context
struct gen_avc_scaling_context context_scaling;
struct gen_avc_me_context context_me;
@@ -186,6 +202,7 @@ struct i965_avc_encoder_context {
struct gen_avc_mbenc_context context_mbenc;
struct gen_avc_wp_context context_wp;
struct gen_avc_sfd_context context_sfd;
+ struct gen_avc_preproc_context context_preproc;
struct encoder_status_buffer_internal status_buffer;
@@ -199,6 +216,7 @@ struct avc_enc_state {
VAEncSliceParameterBufferH264 *slice_param[MAX_AVC_SLICE_NUM];
VAEncMacroblockParameterBufferH264 *mb_param;
VAEncMiscParameterFEIFrameControlH264 *fei_framectl_param;
+ VAStatsStatisticsParameterH264 *stat_param;
uint32_t mad_enable: 1;
//mb skip
uint32_t mb_disable_skip_map_enable: 1;