hi_venc_h265_cvbr_param

Description

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

Definition

typedef struct {
    hi_u32 max_i_proportion;
    hi_u32 min_i_proportion;
    hi_s32 max_reencode_times;
    hi_bool qpmap_en;
    hi_venc_rc_qpmap_mode qpmap_mode;
    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 max_qp_delta;
    hi_u32 extra_bit_percent;
    hi_u32 long_term_stats_time_unit;
} hi_venc_h265_cvbr_param;

Members

Member

Description

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

qpmap_en

Reserved.

Whether to enable the QpMap function.

The options are as follows:

  • HI_TRUE: enabled
  • HI_FALSE: disabled

qpmap_mode

Reserved.

Method of assigning the QP values for CU32 and CU64 when the VENC channel uses the QpMap mode.

max_qp

Maximum QP of P-frames and B-frames.

Value range: [min_qp, 51]

Default value: 47

min_qp

Minimum QP of P-frames and B-frames.

Value range: [0, 51]

Default value: 22

max_i_qp

Maximum QP of I-frames.

Value range: [min_i_qp, 51]

Default value: 47

min_i_qp

Minimum QP of I-frames.

Value range: [0, 51]

Default value: 20

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

max_qp_delta

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

Max. QP of I-frames = max_i_qp – max_qp_delta

Max. QP of P-/B-frames = max_qp – max_qp_delta

Value range: [0, 4]

Default value: 0

extra_bit_percent

Maximum percentage of extra bits in the streams output by the encoder.

When the bit rate is insufficient, the encoder overdraws an extra number of bits to improve the image quality. The bits will be compensated when the encoding pressure is relieved.

Value range: [0, 1000]

Default value: 5

long_term_stats_time_unit

Unit (in seconds) of the long-term bit rate statistical period (long_term_stats_time). For example, if long_term_stats_time_unit is set to 60 and long_term_stats_time is set to 3, the long-term statistical period is 3 minutes.

Value range: [1, 1800]

Default value: 60