为针对不同的实时音视频场景采用不同的优化策略,声网为 RTC 频道提供了一个 setChannelProfile
方法。你可以通过该方法将频道设置为通信(CHANNEL_PROFILE_COMMUNICATION
)场景或直播(CHANNEL_PROFILE_LIVE_BROADCASTING
)场景。这两种场景默认的用户角色、音频路由、视频编码码率是不同的。
为方便对用户进行管理,声网对用户角色进行区分:
不同的频道场景下,默认的用户角色如下:
setClientRole
改变用户角色。setClientRole
来实现。setClientRole
不能切换用户角色。详见如何使用连麦鉴权功能。音频路由是指 app 在播放音频时使用的设备通道。默认音频路由指的是设备本身的音频路由,通常为手机的听筒或扬声器。
不同的频道场景下,移动端默认的音频路由也是不同的:
setVideoEncoderConfiguration
方法中的 bitrate
成员为本地视频编码码率。当码率使用默认值,即 STANDARD_BITRATE(0)
时,相同的分辨率和帧率下,直播场景的码率是通信场景码率的两倍。
分辨率 (px) | 帧率 (fps) | 基准码率 (Kbps, 通信场景适用) | 直播码率 (Kbps, 直播场景适用) |
---|---|---|---|
160 × 120 | 15 | 65 | 130 |
320 × 180 | 15 | 140 | 280 |
640 × 360 | 30 | 600 | 1,200 |
848 × 480 | 30 | 930 | 1,860 |
完整的视频编码分辨率、帧率、码率对照表请参考 API 文档。
根据上述差异,声网推荐在一对一通话或多人群聊场景中,将频道场景设为 CHANNEL_PROFILE_COMMUNICATION
(通信),在语音聊天室、小班课、互动大班课、视频直播等场景中,将频道场景设为 CHANNEL_PROFILE_LIVE_BROADCASTING
(直播)。