文档中心>最佳实践>实时音视频>分层编码与兴趣区域编码

分层编码与兴趣区域编码

最近更新时间:2024-05-31 16:02:11

我的收藏
实时音视频(TRTC)技术致力于在各种环境下提供低延时和高质量的视频体验。通过与腾讯多媒体实验室的深入合作,TRTC 推出可分层视频编码 SVC 兴趣区域编码 ROI 两项智能编码技术,这些技术旨在帮助用户在不同网络条件下实现更为流畅、高效和稳定的音视频通话体验。

前提条件

登录 TRTC 控制台,开通 TRTC 服务并 创建应用
前往 TRTC 购买页,针对需要使用加密能力的 SDKAppid 购买 TRTC 旗舰版包月套餐,以解锁可分层视频编码兴趣区域编码 ROI 能力位。包月套餐相关说明请参见文档 包月套餐计费说明

可分层视频编码 SVC

视频作为二维信息相比于音频数据能传递的信息更多,理论上所需的带宽也更高。这不仅对编码器压缩性有极高的要求,同时因为信息量大,在弱网下丢包的几率也相对更高。因此可分层编码 SVC 功能,在高压缩率的同时最大化弱网抗性,保障弱网环境下依然可以有效地传输视频数据。



可分层编码 SVC 功能在解锁对应能力位后默认自动生效,无需 API 调用。由于此功能会通过 SDK 优化音视频的编码功能,可能会与您集成的第三方 SDK 冲突,订阅 TRTC 旗舰版包月套餐解锁功能后,此功能开关默认关闭,请前往 控制台 > 应用概览 > 增值功能,开启可分层编码 SVC 能力位。




兴趣区域编码 ROI

ROI 功能能够优化码率在重要信息上的分配效率,使人眼感兴趣的区域编码更为清晰。对于 ROI 区域,支持外部传入及内部检测两种模式—如果外部有美颜等前处理模块可使用外部传入模式,避免重复计算;对于大多数的场景,外部并不存在 ROI 检测结果,此时可开启耗时极低的内部检测算法,节省计算资源的同时也能提升编码画质。
通过 ROI 技术,低码率下能显著提升主观质量,高码率下则能够在保证画质相同的情况下节省20%左右的带宽。




实现方式

兴趣区域视频编码 ROI 功能需调用实验性接口(callExperimentalAPI,以 Android 为例)设置感兴趣区域,示例:
//设置 ROI 参数
{
"api":"UpdateRoiConfig",
"params":{
"roiConfigArray":[
{
"stream":1,
"x":0,
"y":0,
"width":100,
"height":100,
"level":2
},
{
"stream":1,
"x":20,
"y":200,
"width":100,
"height":100,
"level":2
}
]
}
}
字段名
说明
stream
流类型:0大流,1小流,2辅流。
x,y,w,h
roi 区域坐标点,以编码输出的分辨率为参考。
level
[0, 12] , 就是 roi 的强度, 值越大,roi 区域的效果更明显,但非 roi 区域可能会更模糊。