连麦功能
连麦模块(connectMic) 提供连麦功能的集成,详细使用方式见下文。
一、设置连麦及连麦信息
1.1 设置连麦
观看页 SDK 默认不会设置连麦功能,如果需要连麦功能,开发者需要手动设置连麦功能,设置完成后即可调用连麦模块的 Api。
Api 方法: setupConnectMic(pageInstance: ConnectMicPageInstance): Promise<ConnectMicResult>
参数说明:
pageInstance:页面或组件实例,
ConnectMicPageInstance
类型,必传
返回值说明: 设置结果,Promise<ConnectMicResult>
类型
示例:
1.2 是否支持连麦功能
用于判断当前环境是否支持连麦功能。
Api 方法: supportConnectMic(): SupportResult
返回值说明: SupportResult
类型
示例:
1.3 获取连麦信息
连麦模块的状态,数据均通过 connectMicInfo
保存,开发者可通过 getConnectMicInfo
方法获取连麦信息。
PS:通过 ConnectMicEvents.ConnectMicInfoChange 事件监听连麦事件改变。
Api 方法: getConnectMicInfo(): ConnectMicStoreInfo
返回值说明: 连麦信息,ConnectMicStoreInfo
类型,详细类型说明如下
属性名 | 说明 | 类型 |
---|---|---|
| 当前环境是否支持连麦 |
|
| 连麦状态,开启或关闭 |
|
| 连麦类型 |
|
| 用户连麦状态 |
|
| 连麦排序显示开关 |
|
| 连麦顺序索引值(-1 表示不在队列) |
|
| 当前用户是否为主讲 |
|
| 本地流是否关闭摄像头 |
|
| 本地流是否关闭麦克风 |
|
示例:
1.4 判断连麦状态是否处于连麦中
通过 isConnectMicing
判断用户或传入的状态是否处于连麦中(ConnectMicStatus.Publishing or ConnectMicStatus.Connected)。
Api 方法: isConnectMicing(status?: ConnectMicStatus): boolean
参数说明:
status:连麦状态,不传则用当前状态,
ConnectMicStatus
类型,选传
返回值说明: 是否连麦中
示例:
二、观众上麦
2.1 观众申请连麦
当讲师/主播开启连麦功能后,用户即可申请连麦,开发者可调用 applyConnectMic
方法申请连麦,在申请时可调用 cancelApplyConnectMic 取消连麦申请。
PS: 通过 ConnectMicEvents.AllowConnectMicApply 监听连麦申请通过
Api 方法: applyConnectMic(): Promise<ConnectMicResult>
返回值说明: Promise<ConnectMicResult>
类型
示例:
2.2 取消连麦申请
当观众申请连麦后,调用 cancelApplyConnectMic
即可取消连麦申请。
Api 方法: cancelApplyConnectMic(): void
示例:
2.3 开始推送本地流
讲师通过连麦申请后,连麦模块会触发 ConnectMicEvents.ConnectMicDataChange 事件回调新的连麦数据列表,此时列表中会存在一个 isLocal
为 true 的连麦对象。 在获取新的列表后创建连麦播放器,并在连麦播放器组件的 attached
生命周期中调用 startStream
方法推流,详细可参考 demo 中的 <connect-mic-player>
组件。
Api 方法: startStream(): void
示例:
2.4 结束连麦
当讲师通过观众的连麦申请并连麦成功后,通过 endConnectMic
可手动结束观众的连麦。
PS:通过 ConnectMicEvents.LeaveConnectMicSuccess 监听离开成功。
Api 方法: endConnectMic(): Promise<void>
示例:
三、摄像头设置
3.1 开启本地摄像头
通过 enabledVideo
方法开启本地摄像头,可通过 ConnectMicEvents.LocalVideoMuteChange 事件监听本地摄像头的开关。
Api 方法: enabledVideo(): void
示例:
3.2 关闭本地摄像头
通过 disabledVideo
方法关闭本地摄像头,可通过 ConnectMicEvents.LocalVideoMuteChange 事件监听本地摄像头的开关。
Api 方法: disabledVideo(): void
示例:
3.3 切换前后置摄像头
Api 方法: switchCamera(): void
四、麦克风设置
4.1 开启本地麦克风
通过 enabledAudio
方法开启本地麦克风,可通过 ConnectMicEvents.LocalAudioMuteChange 事件监听本地麦克风的开关。
Api 方法: enabledAudio(): void
示例:
4.2 关闭本地麦克风
通过 disabledAudio
方法关闭本地麦克风,可通过 ConnectMicEvents.LocalAudioMuteChange 事件监听本地麦克风的开关。
Api 方法: disabledAudio(): void
示例:
五、其他
5.1 用户连麦状态
Enum 枚举: ConnectMicStatus
常量 | 枚举成员 | 说明 |
---|---|---|
|
| 未连麦 |
|
| 连麦申请中 |
|
| 推流中 |
|
| 已连麦 |
|
| 连麦异常 |
5.2 连麦类型
用于区分讲师开启的是视频连麦或音频连麦
Enum 枚举: ConnectMicType
常量 | 枚举成员 | 说明 |
---|---|---|
|
| 视频连麦 |
|
| 音频连麦 |
Last updated