hi_venc_h264_avbr_param

Description

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

Prototype

hi_venc_h264_avbr_param = {"chg_pos": chg_pos,
                           "max_i_proportion": max_i_proportion,
                           "min_i_proportion": min_i_proportion,
                           "max_reencode_times": max_reencode_times,
                           "qpmap_en": qpmap_en,
                           "min_still_percent": min_still_percent,
                           "max_still_qp": max_still_qp,
                           "min_still_psnr": min_still_psnr,
                           "max_qp": max_qp,
                           "min_qp": min_qp,
                           "max_i_qp": max_i_qp,
                           "min_i_qp": min_i_qp,
                           "min_qp_delta": min_qp_delta,
                           "motion_sensitivity": motion_sensitivity,
                           "save_bitrate_en": save_bitrate_en}

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 hi_venc_chn_attr["rc_attr"] and is set during VENC channel creation.

Member

Description

chg_pos

Int, proportion of the bit rate when the QP value starts to be adjusted in AVBR mode to the maximum bit rate.

Value range: [50, 100]

Default value: 65

min_i_proportion

Int, reserved.

max_i_proportion

Int, maximum bit rate proportion of I- and P-frames.

Value range: [1, 100]

Default value: 100

max_reencode_times

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

Value range: [0, 3]

Default value: 2

qpmap_en

Int, reserved.

min_still_percent

Int, minimum percentage of the destination bit rate in a still scene. 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

Int, maximum QP value of an I-frame in a still scene.

Value range: [MinIQp, MaxIQp]

Default value: 35

min_still_psnr

Int, reserved.

max_qp

Int, maximum QP value of P and B-frames.

Value range: [0, 51]

Default value: 51

min_qp

Int, minimum QP value of P- and B-frames.

Value range: [0, max_qp]

Default value: 24

max_i_qp

Int, maximum QP value of an I-frame.

Value range: [0, 51]

Default value: 51

min_i_qp

Int, minimum QP value of an I-frame.

Value range: [0, max_i_qp]

Default value: 24

min_qp_delta

Int, difference between the frame-level and CU-level minimum QP values.

Min. QP of I-frames = min_qp_delta + min_i_qp

Min. QP of P-/B-frames = min_qp_delta + min_qp

Value range: [0, 4]

Default value: 0

motion_sensitivity

Int, motion sensitivity.

Value range: [0, 100]

Default value: 100

save_bitrate_en

Int, reserved.