hi_mpi_venc_set_roi_attr
Atlas 200/300/500 推理产品,不支持该接口。
Atlas 训练系列产品,不支持该接口。
Atlas A2训练系列产品/Atlas 800I A2推理产品,不支持该接口。
函数功能
设置H.264/H.265通道的ROI属性,用户可以通过配置ROI区域,对该区域的图像Qp进行限制,从而实现图像中该区域的Qp与其他图像区域的差异化。关于ROI编码功能的详细说明请参见ROI编码功能说明。
约束说明
- 本接口用于设置H.264/H.265通道的ROI属性。
- 本接口在编码通道创建之后,编码通道销毁之前设置。此接口在编码过程中被调用时,等到下一个帧时生效。
- 建议用户在创建通道之后,启动编码之前调用此接口,减少在编码过程中调用的次数。
- 建议用户在调用此接口之前先调用hi_mpi_venc_get_roi_attr接口,获取当前通道的ROI配置,然后再进行设置。
- 设置该接口后,如果当前帧判断编码为pskip 帧,以pskip帧效果优先。
- 设置该接口后,可能会出现感兴趣区域QP值不全为设置值的现象;这是因为在编码过程中,有些编码块的残差会为0,没有数据需要被量化,QP值不生效所致,属于正常现象,不影响编码效果。
函数原型
hi_s32 hi_mpi_venc_set_roi_attr(hi_venc_chn chn, const hi_venc_roi_attr *roi_attr)
参数说明
参数名 |
输入/输出 |
说明 |
---|---|---|
chn |
输入 |
编码通道号。 Atlas 推理系列产品(Ascend 310P处理器),编码通道号的取值范围:[0, 256),JPEGE功能和VENC功能共用通道,且通道总数最多256。 Atlas 200/500 A2推理产品,编码通道号的取值范围:[0, 128),JPEGE功能和VENC功能共用通道,且通道总数最多128。 |
roi_attr |
输入 |
ROI 区域参数指针。 |
返回值说明
- 0:成功
- 非0:失败,参见VENC视频编码/JPEGE图片编码返回码
ROI编码功能说明
ROI(Region Of Interest)编码:对感兴趣区域编码。
用户可以通过配置ROI区域,对该区域的图像Qp进行限制,从而实现图像中该区域的Qp与其它图像区域的差异化。系统现仅支持对H.264/H.265通道进行ROI设置。系统提供了8个感兴趣区域,可供用户同时使用。
8个区域可以互相叠加,且叠加时的优先级按照0~7的索引号依次提高,这里,叠加优先级是指发生叠加时,图像区域的最终Qp值的判定,最终的区域Qp值按照优先级最高的区域设定。ROI区域可配置绝对Qp和相对Qp两种模式。
- 绝对Qp:ROI区域的Qp为用户设定的Qp 值。
- 相对Qp:ROI区域的Qp为码率控制产生的Qp与用户设定的Qp偏移值的和。
以下图为例,假如图像Qp为25,即图像中所有宏块Qp值为25。Roi区域0设置为绝对Qp模式,Qp值为10,索引为0;Roi区域1设置为相对Qp模式,Qp为-10,索引为1。区域0的index小于区域1的index,所以在发生互相重叠的图像区域按高优先级的区域(区域1)Qp设置。区域0除了发生重叠的部分的Qp值等于10。区域1 的Qp值为25-10=15。