浏览器使用的编解码 Codec,有以下两种选择:
"vp8"
: 浏览器使用 VP8 编解码"h264"
: 浏览器使用 H264 编解码Note:
如果场景中有 Safari 浏览器,无论何种模式,请将 codec 设置为 "h264"
。
频道模式
Agora Web SDK 需知道应用程序的使用场景(例如通信模式或直播模式), 从而使用不同的优化手段。
目前 Agora Web SDK 支持以下频道模式:
"live"
: 直播模式,有主播和观众两种用户角色,可以通过 Client.setClientRole 方法设置主播和观众的角色。主播可以收发语音/视频流,而观众只能接收语音/视频,无法发送。"rtc"
: 通信模式,用于常见的一对一通话或群聊,频道中的任何用户可以自由说话。Note:
如需与 Agora Native SDK 互通,建议按照以下设置以取得最佳通信效果。
"live"
。Note:
mode 设为 "rtc"
时,不支持 Agora 录制 SDK。
Nginx 服务器域名
设有企业防火墙的用户使用该参数,可以部署 Nginx 服务器,以将信令消息通过 Nginx 服务器传到 Agora SD-RTN,然后使用 Agora 的服务。
ASCII 字符,字符串长度大于 0 小于 256 字节。
TURN 服务器设置
设有企业防火墙的用户使用该参数,可以部署 TURN 服务器,以将音视频数据通过 TURN 服务器传到 Agora SD-RTN,然后使用 Agora 的服务。
是否启用强制中转:
你在 TURN 服务器上使用的密码。ASCII 字符,字符串长度大于 0 小于 256 字节。
你想要添加的 TCP 端口。字符串字符串长度大于 0 小于 256 字节,必须为数字字符。
你的 TURN 服务器 URL 地址。ASCII 字符,字符串长度大于 0 小于 256 字节。
你想要添加的 UDP 端口。字符串字符串长度大于 0 小于 256 字节,必须为数字字符。
你在 TURN 服务器上注册并使用的用户名。ASCII 字符,字符串长度大于 0 小于 256 字节。
定义 createClient 中的
config
参数的类。Note:
设置频道模式
下表列出 Web SDK 新旧版本中对应的频道模式设置:
createClient({mode: "interop"})
createClient({mode: "live", codec: "vp8"})
createClient({mode: "h264_interop"})
createClient({mode: "live", codec: "h264"})
设置代理服务器
如需使用代理服务器,设置 proxyServer 和 turnServer 。 完整的网页端部署 Proxy 服务器指南,请参考 企业部署代理服务器.
Note:
在使用 Firefox 浏览器时,跨运营商代理速度会比较慢。Agora 建议使用同运营商进行代理。如果必须使用跨运营商代理,则避免使用 Firefox 浏览器。
示例代码
var config = { mode: "live", codec: "vp8", proxyServer: "YOUR NGINX PROXY SERVER IP", turnServer: { turnServerURL: "YOUR TURNSERVER URL", username: "YOUR USERNAME", password: "YOUR PASSWORD", udpport: "THE UDP PORT YOU WANT TO ADD", tcpport: "THE TCP PORT YOU WANT TO ADD", forceturn: false } } var client = AgoraRTC.createClient(config);```