前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >【最佳实践】巡检项:实时音视频 (TRTC) 检查原生平台 SDK 是否根据辅流/小流视频分辨率和帧率设置了合理的视频码率

【最佳实践】巡检项:实时音视频 (TRTC) 检查原生平台 SDK 是否根据辅流/小流视频分辨率和帧率设置了合理的视频码率

原创
作者头像
jackwlchen
修改2023-05-09 11:23:10
5220
修改2023-05-09 11:23:10
举报

问题/风险描述:

在直播场景中,主播的推流分辨率已经设置为1080p,但观众端看到的画面还是很模糊。通过分析这个案例,发现问题不是出现在推流端分辨率过低导致的模糊。从仪表盘上观察推流数据发现,上行分辨率是1080p,但是推流的码率过低。1080p x 15fps的码率只有500kbps左右,在排除了推流端的网络带宽不足情况,跟客户确认了,应用侧设置码率是只有500kbps。

根据客户提供推流参数,我们对比复现了在相同1080p分辨率下,分别用1000kbps和500kbps的码率在直播模式下进行了测试。

如下图所示,在500kbps的码率下,即使是1080p的分辨率,画面相比1000kbps要模糊不小,所以判断这个案例是因为用客户设置的码率过低,编码器把画面压缩比设置过大,导致的画面细节丢失而产生的模糊现象。

1000kbps画面质量
1000kbps画面质量
500kbps画面质量
500kbps画面质量

解决方案:

根据上面的分析得知,因为没有正确设置推流端的码率,码率过小情况下,即使是带宽充足也会出现视频画面模糊问题。

解决办法是根据推流端画面分辨率和帧率,然后参考这里的表格设置适合的码率:实时音视频 设定画面质量 - 无 UI 集成方案 - 文档中心 - 腾讯云

下面是设置Native SDK推流端设置辅路视频参数setSubStreamEncoderParam的接口调用代码:

代码语言:javascript
复制
TRTCCloudDef.TRTCVideoEncParam param = new TRTCCloudDef.TRTCVideoEncParam();
param.videoResolution = TRTCCloudDef.TRTC_VIDEO_RESOLUTION_1920_1080;
// 设置码率 2000kbps
param.videoBitrate = 2000;
// 设置最小码率 1200kbps ,一般为正常码率的60%
param.minVideoBitrate = 1200;
param.videoResolutionMode = TRTC_VIDEO_RESOLUTION_MODE_PORTRAIT;
param.enableAdjustRes = false;
param.videoFps = 25;
// 设置辅路流的码率
mTRTCCloud.setSubStreamEncoderParam(param);

下面是设置Native SDK推流端设置小流视频参数enableEncSmallVideoStream的代码:

代码语言:javascript
复制
// 小画面推流,建议只在桌面端 PC或者MAC上开启
TRTCCloudDef.TRTCVideoEncParam param = new TRTCCloudDef.TRTCVideoEncParam();
param.videoResolution = TRTCCloudDef.TRTC_VIDEO_RESOLUTION_640_360;
// 设置码率 2000kbps
param.videoBitrate = 400;
// 设置最小码率 1200kbps ,一般为正常码率的60%
param.minVideoBitrate = 240;
param.videoResolutionMode = TRTC_VIDEO_RESOLUTION_MODE_PORTRAIT;
param.enableAdjustRes = false;
param.videoFps = 15;
// 设置辅路流的码率
mTRTCCloud.enableEncSmallVideoStream(true, param);

注意事项:

在不同的场景对画面的质量要求是不一样的,应该根据场景设置适合的码率,比如广播影视比普通视频通话对画面要求要高得多,这时候可以设置更高的码率。

另外,如果设置最小码率,SDK会根据用户带宽自动调整码率,在带宽不足情况下,牺牲画面质量来保持通话的流畅性。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 问题/风险描述:
  • 解决方案:
  • 注意事项:
相关产品与服务
实时音视频
实时音视频(Tencent RTC)基于腾讯21年来在网络与音视频技术上的深度积累,以多人音视频通话和低延时互动直播两大场景化方案,通过腾讯云服务向开发者开放,致力于帮助开发者快速搭建低成本、低延时、高品质的音视频互动解决方案。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档