Skip to main content

hi_venc_h265_cbr_param

hi_venc_h265_qvbr_param

说明

定义H265协议编码通道QVBR码率控制模式的高级参数。

定义

hi_venc_h265_qvbr_param = {"max_i_proportion": max_i_proportion,
"min_i_proportion": min_i_proportion,
"max_reencode_times": max_reencode_times,
"qpmap_en": qpmap_en,
"qpmap_mode": hi_venc_rc_qpmap_mode,
"max_qp": max_qp,
"min_qp": min_qp,
"max_i_qp": max_i_qp,
"min_i_qp": min_i_qp,
"max_bit_percent": max_bit_percent,
"min_bit_percent": min_bit_percent,
"max_psnr_fluctuate": max_psnr_fluctuate,
"min_psnr_fluctuate": min_psnr_fluctuate}

成员

当实时统计的PSNR小于max_psnr_fluctuate时,适当增加目标码率,最大码率=target_bit_rate* max_bit_percent。

当实时统计的PSNR大于max_psnr_fluctuate时,适当减小目标码率,最小码率=target_bit_rate* min_bit_percent。

根据当前PSNR的不同,目标码率会在最大码率和最小码率间调整,当PSNR值范围超过[min_psnr_fluctuate-4,max_psnr_fluctuate+4]∩[20,40]时,PSNR不再起作用,码率会在最大码率和最小码率间调整。

max_qp,min_qp用于控制图像的质量范围,码率控制以QP钳位为最高优先级,超出min_qp,max_qp范围内码率控制将失效。

码率浮动上下限的优先级高于PSNR的优先级,例如,当码率浮动到上限依然不能满足PSNR要求,则码率不会再继续上调。

:::note 说明 target_bit_rate参数在创建VENC通道时设置,是hi_venc_chn_attr.rc_attr内的成员变量。 :::

成员名称描述
min_i_proportion整型,预留参数,暂不支持。
max_i_proportion整型,最大IP 帧码率的比值。 取值范围:[1,100]。 默认值:100。
max_reencode_times整型,每帧重编码次数。0 表示不进行重编码。 取值范围:[0, 3]。 默认值:2。
qpmap_en整型,预留参数,暂不支持。
qpmap_en整型,预留参数,暂不支持。
max_qp整型,P、B帧的最大QP。 取值范围:[MinQp, 51]。 默认值:51。
min_qp整型,P、B帧的最小QP。 取值范围:[0, 51]。 默认值:16。
max_i_qp整型,I帧的最大QP。 取值范围:[MinIQp, 51]。 默认值:51。
min_i_qp整型,I帧的最小QP。 取值范围:[0, 51]。 默认值:16。
max_bit_percent整型,码率百分比上限。 取值范围:[min_bit_percent, 180]。 默认值:110。
min_bit_percent整型,码率百分比下限。 取值范围:[30, 180]。 默认值:45。
max_psnr_fluctuate整型,Psnr 上限。 取值范围:[min_psnr_fluctuate, 40]。 默认值:40。
min_psnr_fluctuate整型,Psnr下限。 取值范围:[18, 40]。 默认值:23。

父主题: 视频/图像编码

hi_venc_h265_cvbr_param

说明

定义H265协议编码通道CVBR码率控制模式的高级参数。

定义

hi_venc_h265_qvbr_param = {"max_i_proportion": max_i_proportion,
"min_i_proportion": min_i_proportion,
"max_reencode_times": max_reencode_times,
"qpmap_en": qpmap_en,
"qpmap_mode": hi_venc_rc_qpmap_mode,
"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,
"max_qp_delta": max_qp_delta,
"extra_bit_percent": extra_bit_percentm,
"long_term_stats_time_unit": long_term_stats_time_unit}

成员

成员名称描述
min_i_proportion整型,预留参数,暂不支持。
max_i_proportion整型,最大IP 帧码率的比值。 取值范围:[1,100]。 默认值:100。
max_reencode_times整型,每帧重编码次数。0 表示不进行重编码。 取值范围:[0, 3]。 默认值:2。
qpmap_en整型,预留参数,暂不支持。
qpmap_en整型,预留参数,暂不支持。
max_qp整型,P、B帧的最大QP。 取值范围:[MinQp, 51]。 默认值:47。
min_qp整型,P、B帧的最小QP。 取值范围:[0, 51]。 默认值:22。
max_i_qp整型,I帧的最大QP。 取值范围:[MinIQp, 51]。 默认值:47。
min_i_qp整型,I帧的最小QP。 取值范围:[0, 51]。 默认值:20。
min_qp_delta整型,帧级QP最小值和CU级QP最小值的差值。 I 帧:FrameLevelMinQp = min_qp_delta + min_i_qp P、B帧:FrameLevelMinQp= min_qp_delta+min_qp 取值范围:[0, 4]。 默认值:0。
max_qp_delta整型,帧级QP最大值和CU级QP最大值的差值。 I帧,帧级QP最大值 = max_i_qp - max_qp_delta P、B帧,帧级QP最大值= max_qp - max_qp_delta 取值范围:[0, 4]。 默认值:0。
extra_bit_percent整型,编码器输出码流最大透支bit 数百分比。 在码率不足时,为保证图像质量,编码器会通过透支一定的bit 数以提升图像质量,这部分透支的码率会在编码压力较小时进行偿还。 取值范围[0, 1000]。 默认值:5。
long_term_stats_time_unit整型,码率长期统计时间参数(long_term_stats_time)的单位,本变量单位是秒(s),如配置long_term_stats_time_unit = 60,long_term_stats_time =3,代表长期统计时间为3 分钟。 取值范围:[1, 1800]。 默认值:60。

父主题: 视频/图像编码

hi_venc_h265_cbr_param

说明

定义H265协议编码通道CBR码率控制模式的高级参数。

定义

hi_venc_h265_qvbr_param = {"max_i_proportion": max_i_proportion,
"min_i_proportion": min_i_proportion,
"max_qp": max_qp,
"min_qp": min_qp,
"max_i_qp": max_i_qp,
"min_i_qp": min_i_qp,
"max_reencode_times": max_reencode_times,
"qpmap_en": qpmap_en,
"qpmap_mode": hi_venc_rc_qpmap_mode}

成员

成员名称描述
min_i_proportion整型,预留参数,暂不支持。
max_i_proportion最大IP帧比例。 取值范围:[1, 100]。 该参数默认值为100。
max_qp整型,帧最大QP,用于钳位质量。 取值范围:[0, 51]。 默认值:51。
min_qp整型,帧最小QP,用于钳位码率波动。 取值范围:[0, max_qp]。 默认值:10。
max_i_qp整型,I帧的最大QP。用于控制I帧的最小bits数。 取值范围:[0, 51]。 默认值:51。
min_i_qp整型,I帧的最小QP。用于控制I帧的最大bits数。 取值范围:[0, max_i_qp]。 默认值:10。
max_reencode_times整型,每帧重编码次数。0表示不进行重编码。 取值范围:[0, 3]。 默认值:2。
qpmap_en整型,预留参数,暂不支持。
qpmap_en整型,预留参数,暂不支持

父主题: 视频/图像编码

hi_venc_scene_chg_detect

说明

定义编码场景检测控制参数。

定义

hi_venc_scene_chg_detect = {"detect_scene_chg_en": detect_scene_chg_en,
"adapt_insert_idr_frame_en": adapt_insert_idr_frame_en}

成员

成员名称描述
detect_scene_chg_en整型,是否使能场景切换检测。 取值范围如下:
- HI_TRUE:是,默认为该值
- HI_FALSE:否
adapt_insert_idr_frame_en整型,是否使能自适应插入IDR帧。 取值范围如下:
- HI_TRUE:是
- HI_FALSE:否,默认为该值

父主题: 视频/图像编码

hi_venc_huffman_dc_table

说明

用于定义指定JPEGE编码通道的亮度DC huffman编码表参数的数据结构。

定义

hi_venc_huffman_dc_table = {"dc_bits": dc_bits[16], # RW; Range:[0, 255]; len: 16
"dc_value": dc_value[12]} # RW; Range:[0, 255];len 12

成员

成员名称描述
dc_bits[]列表, dc_bits数组存放的是长度从1bit到16bit的码字分别对应的符号个数。
dc_value[]列表,dc_value数据存放的是码字对应的符号值。

父主题: 视频/图像编码

hi_venc_huffman_ac_table

说明

用于定义指定JPEGE编码通道的色度AC huffman编码表参数的数据结构。

定义

hi_venc_huffman_ac_table = {"ac_bits": ac_bits[16],
"ac_value": ac_value[162]}

成员

成员名称描述
ac_bits列表,ac_bits数组存放的是长度从1bit到16bit的码字分别对应的符号个数。
ac_value列表,ac_value数据存放的是码字对应的符号值。

父主题: 视频/图像编码

在线提单