Appearance
用户媒体事件
用户媒体事件用于监听远端用户的音视频状态变化。
remoteTrackAvailableNotify
远端用户的音视频流发生变化回调。
事件签名
typescript
remoteTrackAvailableNotify: (uid: string, audioTrack: AliRtcAudioTrack, videoTrack: AliRtcVideoTrack) => void参数说明
| 参数 | 类型 | 描述 |
|---|---|---|
| uid | string | 用户ID |
| audioTrack | AliRtcAudioTrack | 音频流类型 |
| videoTrack | AliRtcVideoTrack | 视频流类型 |
使用示例
javascript
engine.on('remoteTrackAvailableNotify', (uid, audioTrack, videoTrack) => {
console.log(`用户 ${uid} 音视频流状态变化:`, audioTrack, videoTrack);
// 根据音视频流状态更新UI
updateUserMediaStatus(uid, audioTrack, videoTrack);
});userAudioMuted
远端用户静音/取消静音回调。
事件签名
typescript
userAudioMuted: (uid: string, isMute: boolean) => void参数说明
| 参数 | 类型 | 描述 |
|---|---|---|
| uid | string | 远端用户ID |
| isMute | boolean | 是否静音,true表示静音,false表示取消静音 |
使用示例
javascript
engine.on('userAudioMuted', (uid, isMute) => {
console.log(`用户 ${uid} 音频${isMute ? '静音' : '取消静音'}`);
// 更新UI显示音频状态
updateUserAudioMuteStatus(uid, isMute);
});userVideoMuted
对端用户发送视频黑帧数据发送通知。
事件签名
typescript
userVideoMuted: (uid: string, isMute: boolean) => void参数说明
| 参数 | 类型 | 描述 |
|---|---|---|
| uid | string | 执行muteVideo的用户ID |
| isMute | boolean | 是否推流黑帧,true表示推流黑帧,false表示正常推流 |
使用示例
javascript
engine.on('userVideoMuted', (uid, isMute) => {
console.log(`用户 ${uid} 视频${isMute ? '推流黑帧' : '正常推流'}`);
// 更新UI显示视频状态
updateUserVideoMuteStatus(uid, isMute);
});userScreenMuted
对端用户发送屏幕黑帧数据发送通知。
事件签名
typescript
userScreenMuted: (uid: string, isMute: boolean) => void参数说明
| 参数 | 类型 | 描述 |
|---|---|---|
| uid | string | 执行muteVideo的用户ID |
| isMute | boolean | 是否推流黑帧,true表示推流黑帧,false表示正常推流 |
使用示例
javascript
engine.on('userScreenMuted', (uid, isMute) => {
console.log(`用户 ${uid} 屏幕共享${isMute ? '推流黑帧' : '正常推流'}`);
// 更新UI显示屏幕共享状态
updateUserScreenMuteStatus(uid, isMute);
});remoteAudioAutoPlayFail
远程用户的音频自动播放失败。
事件签名
typescript
remoteAudioAutoPlayFail: (uid: string) => void参数说明
| 参数 | 类型 | 描述 |
|---|---|---|
| uid | string | 用户ID |
使用示例
javascript
engine.on('remoteAudioAutoPlayFail', (uid) => {
console.log(`用户 ${uid} 音频自动播放失败`);
// 弹出弹窗引导用户点击页面进行播放
showAudioPlayPrompt(uid);
});remoteVideoAutoPlayFail
远程用户的视频自动播放失败。
事件签名
typescript
remoteVideoAutoPlayFail: (uid: string, videoTrack: AliRtcVideoTrack) => void参数说明
| 参数 | 类型 | 描述 |
|---|---|---|
| uid | string | 用户ID |
| videoTrack | AliRtcVideoTrack | 视频轨道类型 |
使用示例
javascript
engine.on('remoteVideoAutoPlayFail', (uid, videoTrack) => {
console.log(`用户 ${uid} 视频自动播放失败:`, videoTrack);
// 弹出弹窗引导用户点击页面进行播放
showVideoPlayPrompt(uid, videoTrack);
});remoteAudioPlayError
远程用户的音频播放出错。
事件签名
typescript
remoteAudioPlayError: (uid: string, reason: string | undefined) => void参数说明
| 参数 | 类型 | 描述 |
|---|---|---|
| uid | string | 用户ID |
| reason | string | undefined | 出错原因 |
使用示例
javascript
engine.on('remoteAudioPlayError', (uid, reason) => {
console.log(`用户 ${uid} 音频播放出错:`, reason);
// 处理音频播放错误
handleAudioPlayError(uid, reason);
});remoteVideoPlayError
远程用户的视频播放出错。
事件签名
typescript
remoteVideoPlayError: (uid: string, reason: string | undefined) => void参数说明
| 参数 | 类型 | 描述 |
|---|---|---|
| uid | string | 用户ID |
| reason | string | undefined | 出错原因 |
使用示例
javascript
engine.on('remoteVideoPlayError', (uid, reason) => {
console.log(`用户 ${uid} 视频播放出错:`, reason);
// 处理视频播放错误
handleVideoPlayError(uid, reason);
});