Mesa (master): vl: add parameters for VAAPI encode
Christian König
deathsimple at kemper.freedesktop.org
Thu Jul 14 07:53:31 UTC 2016
Module: Mesa
Branch: master
Commit: b86bf4b568634b4bf11c645c60025840a0dcab5c
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=b86bf4b568634b4bf11c645c60025840a0dcab5c
Author: Boyuan Zhang <boyuan.zhang at amd.com>
Date: Wed Jul 13 18:51:11 2016 -0400
vl: add parameters for VAAPI encode
Allow to specify more parameters in the encoding interface
which previously just hardcoded in the encoder
Signed-off-by: Boyuan Zhang <boyuan.zhang at amd.com>
Reviewed-by: Christian König <christian.koenig at amd.com>
---
src/gallium/include/pipe/p_video_state.h | 33 ++++++++++++++++++++++++++++++++
1 file changed, 33 insertions(+)
diff --git a/src/gallium/include/pipe/p_video_state.h b/src/gallium/include/pipe/p_video_state.h
index d353be6..754d013 100644
--- a/src/gallium/include/pipe/p_video_state.h
+++ b/src/gallium/include/pipe/p_video_state.h
@@ -352,9 +352,29 @@ struct pipe_h264_enc_rate_control
unsigned frame_rate_num;
unsigned frame_rate_den;
unsigned vbv_buffer_size;
+ unsigned vbv_buf_lv;
unsigned target_bits_picture;
unsigned peak_bits_picture_integer;
unsigned peak_bits_picture_fraction;
+ unsigned fill_data_enable;
+ unsigned enforce_hrd;
+};
+
+struct pipe_h264_enc_motion_estimation
+{
+ unsigned motion_est_quarter_pixel;
+ unsigned enc_disable_sub_mode;
+ unsigned lsmvert;
+ unsigned enc_en_ime_overw_dis_subm;
+ unsigned enc_ime_overw_dis_subm_no;
+ unsigned enc_ime2_search_range_x;
+ unsigned enc_ime2_search_range_y;
+};
+
+struct pipe_h264_enc_pic_control
+{
+ unsigned enc_cabac_enable;
+ unsigned enc_constraint_set_flags;
};
struct pipe_h264_enc_picture_desc
@@ -363,17 +383,30 @@ struct pipe_h264_enc_picture_desc
struct pipe_h264_enc_rate_control rate_ctrl;
+ struct pipe_h264_enc_motion_estimation motion_est;
+ struct pipe_h264_enc_pic_control pic_ctrl;
+
unsigned quant_i_frames;
unsigned quant_p_frames;
unsigned quant_b_frames;
enum pipe_h264_enc_picture_type picture_type;
unsigned frame_num;
+ unsigned frame_num_cnt;
+ unsigned p_remain;
+ unsigned i_remain;
+ unsigned idr_pic_id;
+ unsigned gop_cnt;
unsigned pic_order_cnt;
unsigned ref_idx_l0;
unsigned ref_idx_l1;
+ unsigned gop_size;
+ unsigned ref_pic_mode;
bool not_referenced;
+ bool is_idr;
+ bool enable_vui;
+ unsigned int frame_idx[32];
};
struct pipe_h265_sps
More information about the mesa-commit
mailing list