hi_venc_h264_avbr_param
说明
定义H264协议编码通道AVBR码率控制模式的高级参数。
定义
typedef struct {
    hi_s32 chg_pos;
    hi_u32 max_i_proportion;
    hi_u32 min_i_proportion;
    hi_s32 max_reencode_times;
    hi_bool qpmap_en;
    hi_s32 min_still_percent;
    hi_u32 max_still_qp;
    hi_u32 min_still_psnr;
    hi_u32 max_qp;
    hi_u32 min_qp;
    hi_u32 max_i_qp;
    hi_u32 min_i_qp;
    hi_u32 min_qp_delta;
    hi_u32 motion_sensitivity;
    hi_bool save_bitrate_en;
}hi_venc_h264_avbr_param;
成员
max_bit_rate表示运动场景下的最大码率,max_bit_rate*chg_pos*min_still_percent表示静止情况下的最小码率。
根据运动程度的不同,目标码率会在最大码率和最小码率间调整。max_qp,min_qp用于控制图像的质量范围,码率控制以QP钳位为最高优先级,超出min_qp,max_qp范围内码率控制将失效。
 max_bit_rate参数在创建VENC通道时设置,是hi_venc_chn_attr.rc_attr结构体内的成员变量。
成员名称  | 
描述  | 
|---|---|
chg_pos  | 
AVBR开始调整Qp时的码率相对于最大码率的比例。 取值范围:[50, 100]。 默认值:65。  | 
min_i_proportion  | 
预留参数,暂不支持。  | 
max_i_proportion  | 
最大IP帧码率的比值。 取值范围:[1,100]。 默认值:100。  | 
max_reencode_times  | 
每帧重编码次数。0 表示不进行重编码。 取值范围:[0, 3]。 默认值:2。  | 
qpmap_en  | 
预留参数,暂不支持。 是否开启qpmap功能。 取值范围: 
  | 
min_still_percent  | 
静止状态下目标码率的最小百分比。此变量设置为100,AVBR将不会在判别为静止时主动调低目标码率。 取值范围:[5, 100]。 默认值:25。  | 
max_still_qp  | 
静止场景I帧QP的最大值。 取值范围:[min_i_qp, max_i_qp]。 默认值:35。  | 
min_still_psnr  | 
预留参数,暂不支持。  | 
max_qp  | 
P、B帧的最大QP。 取值范围:[0, 51]。 默认值:51。  | 
min_qp  | 
P、B帧的最小QP。 取值范围:[0, max_qp]。 默认值:24。  | 
max_i_qp  | 
I帧的最大QP。 取值范围:[0, 51]。 默认值:51。  | 
min_i_qp  | 
I帧的最小QP。 取值范围:[0, max_i_qp]。 默认值:24。  | 
min_qp_delta  | 
帧级QP最小值和CU级QP最小值的差值。 I帧,帧级QP最小值= min_qp_delta + min_i_qp P、B帧,帧级QP最小值= min_qp_delta+min_qp 取值范围:[0, 4]。 默认值:0。  | 
motion_sensitivity  | 
运动敏感度。 取值范围:[0, 100]。 默认值:100。  | 
save_bitrate_en  | 
预留参数,暂不支持。  |