hi_venc_h265_avbr_param

Description

Defines the advanced AVBR parameters of an H.265 encoding channel.

Prototype

typedef struct {
    hi_s32 chg_pos;
    hi_u32 max_i_proportion;
    hi_u32 min_i_proportion;
    hi_s32 max_reencode_times;
    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 qpmap_en;
    hi_venc_rc_qpmap_mode qpmap_mode;
}hi_venc_h265_avbr_param;

Members

max_bit_rate indicates the maximum bit rate in the motion scenario. max_bit_rate*chg_pos*min_still_percent indicates the minimum bit rate in the static scenario.

The target bit rate is adjusted between the maximum bit rate and the minimum bit rate based on the motion degree. max_qp and min_qp are used to control the image quality. The bit rate control takes the QP clamping as the highest priority, and bit rate control becomes invalid if the range of [min_qp, max_qp] is exceeded.

max_bit_rate is a member variable in the hi_venc_chn_attr.rc_attr struct and is set during VENC channel creation.

Member

Description

chg_pos

Ratio of the bit rate when the RC starts to adjust the QP to the maximum bit rate.

Value range: [50, 100]

Default value: 65

min_i_proportion

Reserved.

max_i_proportion

Maximum ratio of bits allocated to I-frames and P-frames.

Value range: [1, 100]

Default value: 100

max_reencode_times

Number of times that each frame is re-encoded. If set to 0, disables re-encoding.

Value range: [0, 3]

Default value: 2

min_still_percent

Minimum percentage of the target bit rate in the still state. If it is set to 100, AVBR does not adaptively decrease the target bit rate in the still state.

Value range: [5, 100]

Default value: 25

max_still_qp

Maximum QP of I-frames in the still state.

Value range: [min_i_qp, max_i_qp]

Default value: 35

min_still_psnr

Reserved.

max_qp

Maximum QP of P-frames.

Value range: [0, 51]

Default value: 51

min_qp

Minimum QP of P-frames.

Value range: [0, max_qp]

Default value: 24

max_i_qp

Maximum QP of I-frames.

Value range: [0, 51]

Default value: 51

min_i_qp

Minimum QP of I-frames.

Value range: [0, max_i_qp]

Default value: 24

min_qp_delta

Difference between the minimum frame-level QP and the CU-level minimum QP.

I-frame: FrameLevelMinQp = min_qp_delta + min_i_qp

P-/B-frame: FrameLevelMinQp= min_qp_delta+min_qp

Value range: [0, 4]

Default value: 0

motion_sensitivity

Motion sensitivity.

Value range: [0, 100]

Default value: 100

qpmap_en

Reserved.

qpmap_mode

Reserved.