本文介绍在加入频道(joinChannel
)之前的 API 调用和设置。在加入频道前,通常只需要简单调用一两个 API 即可快速实现实时音视频功能,但是如果你的应用场景对通话质量和稳定性有较高的要求,我们建议参考本文进行更多的设置。
为了确保 SDK 输出的日志信息完整,声网建议在初始化 RtcEngine 实例时设置日志文件,详见如何设置日志文件。
如果你的场景有高音质需求(例如音乐教学场景),建议在加入频道前调用 setAudioProfile
,并将 profile
参数设置为 MUSIC_HIGH_QUALITY
(4),scenario
参数设置为 GAME_STREAMING
(3),更多的设置可以参考基础功能 > 设置音频编码属性。
SDK 默认关闭视频功能,如果要使用视频,在加入频道之前调用 enableVideo
开启全局的视频功能。
enableVideo
会开启本地视频采集、编码、发送和远端视频接收,如果需要更精细的控制,可以调用以下 API:
enableLocalVideo
:开启/关闭本地视频采集。muteLocalVideoStream
:停止/恢复发送本地视频流。muteRemoteVideoStream
:停止/恢复接收指定视频流。muteAllRemoteVideoStreams
:停止/恢复接收所有视频流。enableLocalVideo
和 enableVideo
,两个方法都调用会导致摄像头打开两次以及加入频道时间变长。enableVideo
方法会重置整个视频引擎,加入频道之后我们建议用精细控制的 API 关闭或打开视频。在加入频道前调用 startPreview
可以加快本地首帧出图时间,如果调用了 startPreview
,在 destroy
之前必须调用 stopPreview
。
如果你的应用场景中包括 Web 端,并且你使用的 Native SDK 版本在 3.0.0 之前,直播模式下,一定要在加入频道前调用 enableWebSdkInteroperability
方法打开和 Web 端的互通。