跳到主要内容

hi_venc_scene_chg_detect

hi_venc_h265_cvbr_param

说明

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

定义

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;

成员

成员名称描述
min_i_proportion预留参数,暂不支持。
max_i_proportion最大IP 帧码率的比值。 取值范围:[1,100]。 默认值:100。
max_reencode_times每帧重编码次数。0 表示不进行重编码。 取值范围:[0, 3]。 默认值:2。
qpmap_en预留参数,暂不支持。
qpmap_mode预留参数,暂不支持。
max_qpP、B帧的最大QP。 取值范围:[min_qp, 51]。 默认值:47。
min_qpP、B帧的最小QP。 取值范围:[0, 51]。 默认值:22。
max_i_qpI帧的最大QP。 取值范围:[min_i_qp, 51]。 默认值:47。
min_i_qpI帧的最小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。

父主题: VENC视频/JPEGE图像编码

hi_venc_h265_cbr_param

说明

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

定义

typedef struct {
hi_u32 max_i_proportion;
hi_u32 min_i_proportion;
hi_u32 max_qp;
hi_u32 min_qp;
hi_u32 max_i_qp;
hi_u32 min_i_qp;
hi_s32 max_reencode_times;
hi_bool qpmap_en;
hi_venc_rc_qpmap_mode qpmap_mode;
}hi_venc_h265_cbr_param;

成员

成员名称描述
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_qpI帧的最大QP。用于控制I帧的最小bits数。 取值范围:[0, 51]。 默认值:51。
min_i_qpI帧的最小QP。用于控制I帧的最大bits数。 取值范围:[0, max_i_qp]。 默认值:10。
max_reencode_times每帧重编码次数。0表示不进行重编码。 取值范围:[0, 3]。 默认值:2。
qpmap_en预留参数,暂不支持。
qpmap_mode预留参数,暂不支持

父主题: VENC视频/JPEGE图像编码

hi_venc_scene_chg_detect

说明

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

定义

typedef struct {
hi_bool detect_scene_chg_en;
hi_bool adapt_insert_idr_frame_en;
}hi_venc_scene_chg_detect;

成员

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

父主题: VENC视频/JPEGE图像编码

hi_venc_huffman_dc_table

说明

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

定义

typedef struct {
hi_u8 dc_bits[16];
hi_u8 dc_value[12];
} hi_venc_huffman_dc_table;

成员

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

父主题: VENC视频/JPEGE图像编码

hi_venc_huffman_ac_table

说明

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

定义

typedef struct {
hi_u8 ac_bits[16];
hi_u8 ac_value[162];
} hi_venc_huffman_ac_table;

成员

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

父主题: VENC视频/JPEGE图像编码

hi_venc_jpeg_huffman_param

说明

用于定义指定JPEGE编码通道的huffman编码高级参数的数据结构。

定义

typedef struct {
hi_venc_huffman_dc_table dc_tables[3];
hi_venc_huffman_ac_table ac_tables[3];
hi_u32 reserved[2];
} hi_venc_jpeg_huffman_param;

成员

成员名称描述
dc_tables[]亮度DC huffman编码表数据。 Cb分量和Cr分量需保持一致。
ac_tables[]色度AC huffman编码表数据。 Cb分量和Cr分量需保持一致。
reserved[]预留参数,为保证后续版本兼容性,请务必使用memset结构体方式进行清零初始化,在代码中必须避免显式对reserved字段进行访问。

父主题: VENC视频/JPEGE图像编码

在线提单