Interface ClientConfig
用于控制客户端行为的接口。
在调用 createClient 创建客户端对象时,你需要配置该接口。
Properties
clientRoleOptions
clientRoleOptions: ClientRoleOptions
用户角色的具体设置,包含用户级别。
用户级别确定用户在其角色权限范围内可以操作和享受到的服务级别。例如对于观众,选择接收低延时还是超低延时的视频流。不同的级别会影响计费。
codec
codec: SDK_CODEC
浏览器使用的编码格式,有以下选择:
-
"vp8"
: 浏览器使用 VP8 编码。 -
"h264"
: 浏览器使用 H.264 编码。 -
"vp9"
: (Beta) 浏览器使用 VP9 编码。 -
"av1"
: 浏览器使用 AV1 编码。
Safari 12.1 及之前版本不支持 VP8 编码。
mode
mode: SDK_MODE
频道场景。
Agora Web SDK 需知道 app 的使用场景(例如通信场景或直播场景),从而使用不同的优化手段。
声网频道支持以下场景:
-
"live"
: 直播场景,有主播和观众两种用户角色,可以通过 setClientRole 方法设置用户角色为主播或观众。主播可以发布和订阅音视频轨道,而观众只能订阅音视频轨道,无法发布。 -
"rtc"
: 通信场景,用于常见的一对一通话或群聊,频道中的任何用户可以自由说话。
role
role: ClientRole
直播场景中(mode 为 "live"
时)的用户角色。
用户角色确定用户在 SDK 层的权限,包含是否可以发布和订阅音视频轨道、是否可以推流到 CDN。用户角色有 "host"
(主播)和 "audience"
(观众)。主播既可发布轨道,也可订阅轨道;观众不能进行 publish 操作。直播场景中的用户角色默认为观众。如需发布音视频,必须将角色角色为主播。
在创建客户端之后,你可以随时调用 setClientRole 来改变用户角色。