声网 RTC Electron SDK 基于 RTC SDK for macOS 和 RTC SDK for Windows,使用 Node.js C++ 插件开发,是一个为 Electron 平台用户服务的开源 SDK。 通过声网全球部署的虚拟网络,提供可以灵活搭配的 API 组合,在各平台提供质量可靠的实时音视频通信。
AgoraRtcEngine 类包含应用程序调用的主要方法。
AgoraRtcEngine.on 用于向应用程序发送事件回调通知。
AgoraRtcChannel 类能在指定频道中实现实时音视频功能。通过创建多个 AgoraRtcChannel 对象,用户可以同时加入多个频道。
AgoraRtcChannel.on 监听和报告指定频道的事件和数据。
| 方法 | 描述 |
|---|---|
| initialize | 初始化 AgoraRtcEngine 实例 |
| release | 释放 AgoraRtcEngine 实例 |
| setChannelProfile | 设置频道场景 |
| setClientRole | 设置直播场景下的用户角色 |
| setClientRoleWithOptions | 设置直播场景下的用户角色和观众端延时级别 |
| joinChannel | 加入频道 |
| switchChannel | 快速切换直播频道 |
| leaveChannel | 离开频道 |
| subscribe | 订阅远端用户并初始化视频渲染 |
| renewToken | 更新 Token |
| getConnectionState | 获取网络连接状态 |
| AgoraRtcEngine.on | 监听 AgoraRtcEngine 运行时的事件 |
| off | 取消监听 AgoraRtcEngine 运行时的事件 |
| 方法 | 描述 |
|---|---|
| enableAudio | 启用音频模块 |
| disableAudio | 关闭音频模块 |
| setAudioProfile | 设置音频编码配置 |
| adjustRecordingSignalVolume | 调节麦克风采集信号音量 |
| adjustLoopbackRecordingSignalVolume | 调节声卡采集信号音量 |
| adjustPlaybackSignalVolume | 调节本地播放的所有远端用户信号音量 |
| adjustUserPlaybackSignalVolume | 调节本地播放的指定远端用户音量 |
| enableLocalAudio | 开关本地音频采集 |
| muteLocalAudioStream | 停止/恢复发送本地音频流 |
| muteRemoteAudioStream | 停止/恢复接收指定音频流 |
| muteAllRemoteAudioStreams | 停止/恢复接收所有音频流 |
| setDefaultMuteAllRemoteAudioStreams | 设置是否默认接收所有音频流 |
| 方法 | 描述 |
|---|---|
| enableVideo | 启用视频模块 |
| disableVideo | 关闭视频模块 |
| setVideoEncoderConfiguration | 设置视频编码配置 |
| setupLocalVideo | 设置本地视图 |
| setupViewContentMode | 设置视窗模式 |
| setRenderMode | 设置渲染模式 |
| startPreview | 开启视频预览 |
| stopPreview | 停止视频预览 |
| enableLocalVideo | 开关本地视频采集 |
| muteLocalVideoStream | 停止/恢复发送本地视频流 |
| muteRemoteVideoStream | 停止/恢复接收指定视频流 |
| muteAllRemoteVideoStreams | 停止/恢复接收所有视频流 |
| setDefaultMuteAllRemoteVideoStreams | 设置是否默认接收所有视频流 |
| 方法 | 描述 |
|---|---|
| initRender | 初始化渲染器 |
| destroyRender | 销毁渲染器 |
| resizeRender | 调整视频渲染尺寸 |
| setVideoRenderDimension | 设置视频渲染的分辨率 |
| setVideoRenderFPS | 设置视频渲染的帧率 |
| setVideoRenderHighFPS | 设置高帧率渲染视频流 |
| addVideoRenderToHighFPS | 添加高帧率渲染视频流 |
| removeVideoRenderFromHighFPS | 移除高帧率渲染视频流 |
| 方法 | 描述 |
|---|---|
| setBeautyEffectOptions | 设置美颜设置选项 |
| enableVirtualBackground | 开启/关闭虚拟背景 |
| setVideoDenoiserOptions | 设置视频降噪功能 |
| setLowlightEnhanceOptions | 设置暗光增强功能 |
| setColorEnhanceOptions | 设置色彩增强功能 |
| API | 描述 |
|---|---|
| createChannel | 创建并获取一个 AgoraRtcChannel 对象。通过创建多个对象,用户可以同时加入多个频道。 |
| AgoraRtcChannel | 该类提供在指定频道内实现实时音视频功能的方法。 |
| AgoraRtcChannel.on | 提供监听指定频道事件和数据的回调。 |
| 基础方法 | 描述 |
|---|---|
| getScreenDisplaysInfo | 获取屏幕信息 |
| getScreenWindowsInfo | 获取窗口信息 |
| getScreenCaptureSources | 获取可共享的屏幕和窗口对象列表(仅适用于 macOS 和 Windows)。 |
| 主进程方法 | 描述 |
|---|---|
| startScreenCaptureByDisplayId | 通过屏幕 ID 共享屏幕(仅适用于 macOS 和 Windows)。 |
| startScreenCaptureByScreen | 通过指定区域共享屏幕 |
| startScreenCaptureByWindow | 通过窗口信息共享屏幕 |
| stopScreenCapture | 停止共享屏幕 |
| updateScreenCaptureParameters | 更新屏幕共享的编码参数配置 |
| setScreenCaptureContentHint | 设置屏幕共享内容类型 |
| setScreenCaptureScenario | 设置屏幕共享的场景(仅适用于 macOS 和 Windows) |
| updateScreenCaptureRegion | 更新屏幕共享区域 |
| 子进程方法 | 描述 |
|---|---|
| videoSourceStartScreenCaptureByScreen | 通过屏幕信息共享屏幕 |
| videoSourceStartScreenCaptureByWindow | 通过窗口信息共享屏幕 |
| videoSourceSetVideoProfile | 设置摄像头流的编码配置 |
| stopScreenCapture2 | 停止共享屏幕 |
| startScreenCapturePreview | 开启预览共享屏幕 |
| stopScreenCapturePreview | 停止预览共享屏幕 |
| videoSourceUpdateScreenCaptureRegion | 更新共享区域 |
| videoSourceUpdateScreenCaptureParameters | 更新共享屏幕的编码配置 |
| videoSourceSetScreenCaptureContentHint | 设置共享屏幕的内容类型 |
| 方法 | 描述 |
|---|---|
| startAudioMixing | 开始播放音乐文件 |
| stopAudioMixing | 停止播放音乐文件 |
| pauseAudioMixing | 暂停播放音乐文件 |
| resumeAudioMixing | 恢复播放音乐文件 |
| adjustAudioMixingVolume | 调节音乐文件的播放音量 |
| adjustAudioMixingPlayoutVolume | 调节音乐文件的本地播放音量 |
| adjustAudioMixingPublishVolume | 调节音乐文件的远端播放音量 |
| setAudioMixingPitch | 调节音乐文件播放音调 |
| getAudioMixingPlayoutVolume | 获取音乐文件的本地播放音量 |
| getAudioMixingPublishVolume | 获取音乐文件的远端播放音量 |
| getAudioMixingCurrentPosition | 获取音乐文件的播放进度 |
| setAudioMixingPosition | 设置音乐文件的播放位置 |
| getAudioTrackCount | 获取当前音乐文件的音轨索引(仅适用于 Android,iOS,Windows)。 |
| selectAudioTrack | 指定当前音乐文件的播放音轨(仅适用于 Android,iOS,Windows)。 |
| setAudioMixingPlaybackSpeed | 设置当前音乐文件的播放速度。 |
| setAudioMixingDualMonoMode | 设置当前音乐文件的声道模式。 |
| 方法 | 描述 |
|---|---|
| getEffectsVolume | 获取音效文件的播放音量 |
| setEffectsVolume | 设置音效文件的播放音量 |
| setVolumeOfEffect | 设置单个音效文件的播放音量 |
| playEffect | 播放指定的音效文件 |
| stopEffect | 停止播放指定的音效文件 |
| preloadEffect | 将音效文件预加载至内存 |
| unloadEffect | 从内存释放某个预加载的音效文件 |
| pauseEffect | 暂停播放指定的音效文件 |
| pauseAllEffects | 暂停播放所有音效文件 |
| resumeEffect | 恢复播放指定的音效文件 |
| resumeAllEffects | 恢复播放所有音效文件 |
| getEffectDuration | 获取指定音效文件总时长 |
| setEffectPosition | 设置指定音效文件的播放位置 |
| getEffectCurrentPosition | 获取指定音效文件的播放进度 |
| 方法 | 描述 |
|---|---|
| getAudioFileInfo | 获取指定音频文件信息。 |
| 方法 | 描述 |
|---|---|
| setLocalVoicePitch | 设置本地语音音调 |
| enableLocalVoicePitchCallback | 开启本地语音音调回调。 |
| setLocalVoiceEqualization | 设置本地语音音效均衡 |
| setLocalVoiceReverb | 设置本地音效混响 |
| setVoiceBeautifierPreset | 设置 SDK 预设的美声效果 |
| setVoiceBeautifierParameters | 设置 SDK 预设美声效果的参数 |
| setAudioEffectPreset | 设置 SDK 预设的人声效果 |
| setAudioEffectParameters | 设置 SDK 预设人声音效的参数 |
| setVoiceConversionPreset | 设置 SDK 预设的变声效果 |
| 方法 | 描述 |
|---|---|
| enableSoundPositionIndication | 开启/关闭远端用户的语音立体声 |
| setRemoteVoicePosition | 设置远端用户的语音位置 |
| 方法 | 描述 |
|---|---|
| startRtmpStreamWithoutTranscoding | 开始非转码推流。 |
| startRtmpStreamWithTranscoding | 开始 CDN 直播推流并设置转码属性。 |
| updateRtmpTranscoding | 更新转码属性。 |
| stopRtmpStream | 结束 CDN 直播推流。 |
| setLiveTranscoding | 设置直播转码配置 |
| addPublishStreamUrl | 增加旁路推流地址 |
| removePublishStreamUrl | 删除旁路推流地址 |
| 方法 | 描述 |
|---|---|
| startChannelMediaRelay | 开始跨频道媒体流转发 |
| updateChannelMediaRelay | 更新媒体流转发的频道 |
| pauseAllChannelMediaRelay | 暂停向所有目标频道转发媒体流。 |
| resumeAllChannelMediaRelay | 恢复向所有目标频道转发媒体流。 |
| stopChannelMediaRelay | 停止跨频道媒体流转发。 |
| 方法 | 描述 |
|---|---|
| enableAudioVolumeIndication | 启用说话者音量提示 |
| 方法 | 描述 |
|---|---|
| enableDualStreamMode | 开启视频双流模式 |
| setRemoteVideoStreamType | 设置订阅的视频流类型 |
| setRemoteDefaultVideoStreamType | 设置默认订阅的视频流类型 |
| 方法 | 描述 |
|---|---|
| setLocalPublishFallbackOption | 设置弱网条件下发布的音视频流回退选项 |
| setRemoteSubscribeFallbackOption | 设置弱网条件下订阅的音视频流回退选项 |
| setRemoteUserPriority | 设置远端用户媒体流的优先级 |
| 方法 | 描述 |
|---|---|
| startEchoTestWithInterval | 开始语音通话回路测试,并根据间隔时间返回测试结果 |
| startEchoTestWithConfig | 开始音视频通话回路测试。 |
| stopEchoTest | 停止语音通话回路测试 |
| enableLastmileTest | 启用网络测试 |
| disableLastmileTest | 关闭网络测试 |
| startLastmileProbeTest | 开始通话前网络质量探测 |
| stopLastmileProbeTest | 停止通话前网络质量探测 |
| 方法 | 描述 |
|---|---|
| registerMediaMetadataObserver | 注册媒体附属信息观测器 |
| unRegisterMediaMetadataObserver | 取消注册媒体附属信息观测器 |
| setMaxMetadataSize | 设置媒体附属信息的最大大小 |
| sendMetadata | 发送媒体附属信息 |
| 方法 | 描述 |
|---|---|
| addVideoWatermark | 添加本地视频水印 |
| clearVideoWatermarks | 删除已添加的视频水印 |
| Method | Description |
|---|---|
| takeSnapshot | 获取视频截图。 |
| 方法 | 描述 |
|---|---|
| enableContentInspect | 开启/关闭视频截图上传。 |
| 方法 | 描述 |
|---|---|
| enableEncryption | 开启或关闭内置加密 |
| 方法 | 描述 |
|---|---|
| startAudioRecordingWithConfig | 开始客户端录音 |
| stopAudioRecording | 停止客户端录音 |
| 方法 | 描述 |
|---|---|
| setAudioPlaybackDevice | 设置音频播放设备 |
| getAudioPlaybackDevices | 获取音频播放设备 |
| getPlaybackDeviceInfo | 获取音频播放设备信息 |
| getCurrentAudioPlaybackDevice | 获取当前的音频播放设备 |
| getDefaultAudioPlaybackDevices | 获取系统默认的音频播放设备 |
| followSystemPlaybackDevice | 设置 SDK 使用的音频播放设备跟随系统默认的音频播放设备 |
| setAudioPlaybackDeviceMute | 设置音频播放设备静音 |
| getAudioPlaybackDeviceMute | 获取音频播放设备静音状态 |
| setAudioPlaybackVolume | 设置音频播放设备的音量 |
| getAudioPlaybackVolume | 获取音频播放设备的音量 |
| startAudioPlaybackDeviceTest | 开始音频播放设备测试 |
| stopAudioPlaybackDeviceTest | 停止音频播放设备测试 |
| startAudioDeviceLoopbackTest | 开始音频设备回路测试 |
| stopAudioDeviceLoopbackTest | 停止音频设备回路测试 |
| 方法 | 描述 |
|---|---|
| setAudioRecordingDevice | 设置音频采集设备 |
| getAudioRecordingDevices | 获取音频采集设备 |
| getRecordingDeviceInfo | 获取音频采集设备信息 |
| getCurrentAudioRecordingDevice | 获取当前的音频采集设备 |
| getDefaultAudioRecordingDevices | 获取系统默认的音频采集设备 |
| followSystemRecordingDevice | 设置 SDK 使用的音频采集设备跟随系统默认的音频采集设备 |
| setAudioRecordingDeviceMute | 设置音频采集设备静音 |
| getAudioRecordingDeviceMute | 获取音频采集设备静音状态 |
| setAudioRecordingVolume | 设置音频采集设备的音量 |
| getAudioRecordingVolume | 获取音频采集的音量 |
| startAudioRecordingDeviceTest | 开始音频采集设备测试 |
| stopAudioRecordingDeviceTest | 停止音频采集设备测试 |
| startAudioDeviceLoopbackTest | 开始音频设备回路测试 |
| stopAudioDeviceLoopbackTest | 停止音频设备回路测试 |
| 方法 | 描述 |
|---|---|
| setVideoDevice | 设置视频设备 |
| getVideoDevices | 获取视频设备 |
| getCurrentVideoDevice | 获取当前的视频设备 |
| startVideoDeviceTest | 开始视频设备测试 |
| stopVideoDeviceTest | 停止视频设备测试 |
| 方法 | 描述 |
|---|---|
| createDataStreamWithConfig | 创建数据流 |
| sendStreamMessage | 发送数据流 |
| 方法 | 描述 |
|---|---|
| enableWirelessAccelerate | 开启或关闭 Wi-Fi 加速功能。 |
| 方法 | 描述 |
|---|---|
| enableLoopbackRecording | 开启声卡采集 |
| 方法 | 描述 |
|---|---|
| setCameraCapturerConfiguration | 设置摄像头的采集偏好 |
| 方法 | 描述 |
|---|---|
| setCloudProxy | 设置云代理服务 |
| enableDeepLearningDenoise | 开启/关闭 AI 降噪模式 |
| sendCustomReportMessage | 自定义数据上报 |
| getCallId | 获取通话 ID |
| rate | 给通话评分 |
| complain | 投诉通话质量 |
| getVersion | 查询 SDK 版本号 |
| getErrorDescription | 获取警告或错误描述 |
| 方法 | 描述 |
|---|---|
| setParameters | 通过 JSON 配置 SDK 提供技术预览或特别定制功能 |
声网 RTC Electron SDKK 提供双实例的实现方法。第二个实例用以屏幕共享。下表列出双实例独有的方法,其中屏幕共享相关方法详见屏幕共享。
| 方法 | 描述 |
|---|---|
| videoSourceInitialize | 初始化 videoSource 对象 |
| videoSourceRelease | 释放 videoSource 对象 |
| videoSourceSetLogFile | 设置日志文件 |
| videoSourceSetChannelProfile | 设置频道场景 |
| setupLocalVideoSource | 设置 videoSource 的渲染器 |
| videoSourceJoin | 加入频道 |
| videoSourceLeave | 离开频道 |
| videoSourceRenewToken | 更新 Token |
| videoSourceEnableAudio | 启用音频模块 |
| videoSourceEnableLoopbackRecording | 开启声卡采集 |
| videoSourceEnableEncryption | 开启或关闭内置加密 |
| videoSourceSetParameters | 双实例方法:启用定制功能 |
声网 RTC Electron SDK 通过 AgoraRtcEngine.on 方法监听上述方法触发的事件。
| 事件 | 描述 |
|---|---|
warning |
发生警告 |
error |
发生错误 |
joinedChannel |
已加入频道 |
rejoinedChannel |
已重新加入频道 |
leaveChannel |
已离开频道 |
clientRoleChanged |
用户角色已改变 |
userJoined |
远端用户已加入频道 |
connectionStateChanged |
网络连接状态已改变 |
connectionLost |
网络连接已丢失 |
apiCallExecuted |
API 方法已执行 |
tokenPrivilegeWillExpire |
Token 即将过期 |
requestChannelKey |
Channel Key 已过期 |
localUserRegistered |
本地用户已注册 User account |
userInfoUpdated |
远端用户信息已更新 |
groupAudioVolumeIndication |
提示频道内谁正在说话以及说话者音量 |
activeSpeaker |
监测到活跃用户 |
rtcStats |
报告当前通话统计信息 |
localVideoStats |
报告本地视频流统计信息 |
remoteVideoStats |
报告远端视频流统计信息 |
localAudioStats |
报告通话中本地音频流统计信息 |
remoteAudioStats |
报告通话中远端音频流的统计信息 |
audioMixingStateChanged |
本地音乐文件播放状态已改变 |
remoteAudioMixingBegin |
远端音乐文件播放已开始 |
remoteAudioMixingEnd |
远端音乐文件播放已结束 |
audioEffectFinished |
本地音效文件播放已结束 |
networkQuality |
报告网络上下行质量 |
lastmileQuality |
报告通话前本地用户的网络质量 |
lastmileProbeResult |
报告通话前Last-mile 网络上下行质量 |
firstLocalAudioFramePublished |
已发布本地音频首帧回调 |
firstLocalVideoFramePublished |
已发布本地视频首帧回调 |
firstLocalVideoFrame |
已显示本地视频首帧 |
videoSizeChanged |
本地或远端视频大小或旋转信息发生改变 |
userOffline |
远端用户已离开频道 |
userMuteVideo |
远端用户已暂停/重新发送视频流 |
cameraReady |
摄像头已启用 |
videoStopped |
视频功能已停止 |
streamMessage |
接收到对方数据流小 |
streamMessageError |
接收对方数据流消息发生错误 |
rtmpStreamingStateChanged |
RTMP/RTMPS 推流状态发生改变回调 |
transcodingUpdated |
推流转码设置已更新回调 |
rtmpStreamingEvent |
RTMP/RTMPS 推流事件回调 |
audioDeviceVolumeChanged |
音频设备播放音量已改变 |
localAudioStateChanged |
本地音频状态改变回调 |
remoteAudioStateChanged |
远端用户音频状态已改变回调 |
localVideoStateChanged |
本地视频状态已改变 |
audioPublishStateChanged |
音频发布状态改变回调 |
videoPublishStateChanged |
视频发布状态改变回调 |
audioSubscribeStateChanged |
音频订阅状态发生改变回调 |
videoSubscribeStateChanged |
视频订阅状态发生改变回调 |
audioDeviceStateChanged |
音频设备状态发生改变回调 |
videoDeviceStateChanged |
视频设备状态发生改变回调 |
remoteVideoStateChanged |
远端视频状态已改变 |
cameraFocusAreaChanged |
摄像头对焦区域已改变 |
cameraExposureAreaChanged |
摄像头曝光区域已改变 |
transcodingUpdated |
旁路推流配置已更新 |
channelMediaRelayState |
跨频道媒体流转发状态发生改变回调 |
channelMediaRelayEvent |
跨频道媒体流转发事件回调 |
localPublishFallbackToAudioOnly |
本地发布流已回退为音频流或恢复为音视频流 |
remoteSubscribeFallbackToAudioOnly |
远端订阅流已回退为音频流或恢复为音视频流 |
receiveMetadata |
媒体附属信息接收成功回调 |
sendMetadataSuccess |
媒体附属信息发送成功回调 |
videoSourceJoinedSuccess |
(第二个实例)已加入频道 |
videoSourceRequestNewToken |
(第二个实例)Token 已过期 |
videoSourceLeaveChannel |
(第二个实例)已离开频道 |
videoSourceLocalAudioStats |
(第二个实例)报告通话中本地音频流统计信息 |
videoSourceLocalVideoStats |
(第二个实例)报告本地视频流统计信息 |
videoSourceVideoSizeChanged |
(第二个实例)本地或远端视频大小或旋转信息发生改变 |
videoSourceLocalVideoStateChanged |
(第二个实例)本地视频状态已改变 |
videoSourceLocalAudioStateChanged |
(第二个实例)本地音频状态改变回调 |
requestAudioFileInfo |
音频文件信息回调。 |
channelMediaRelayEvent |
跨频道媒体流转发事件回调。 |
snapshotTaken |
视频截图结果回调。 |
警告代码意味着声网 RTC Electron SDK 遇到问题,但有可能恢复,警告代码仅起告知作用,一般情况下应用程序可以忽略警告代码。
| 警告码 | 描述 |
|---|---|
-8 |
指定的 view 无效。 使用视频功能时需要指定 view,如果 view 尚未指定,则返回该警告。 |
-16 |
初始化视频功能失败。 用户无法看到视频画面,但不影响语音通信。 有可能是视频资源被占用导致的。 |
-20 |
请求处于待定状态。 一般是由于某个模块还没准备好,请求被延迟处理。 |
-103 |
没有可用的频道资源。 可能是因为服务端没法分配频道资源。 |
-104 |
查找频道超时。 在加入频道时 SDK 先要查找指定的频道,出现该警告一般是因为网络太差,连接不到服务器。 |
-105 |
DEPRECATED 请改用 ConnectionChangeReason 中的 10。 查找频道请求被服务器拒绝。 服务器可能没有办法处理这个请求或请求是非法的。 |
-106 |
打开频道超时。 查找到指定频道后,SDK 接着打开该频道,超时一般是因为网络太差,连接不到服务器。 |
-107 |
服务器拒绝打开频道请求。 服务器可能没有办法处理该请求或该请求是非法的。 |
-111 |
切换直播视频超时。 |
-118 |
直播场景下设置用户角色超时。 |
-119 |
直播场景下用户角色未授权。 |
-121 |
TICKET 非法,打开频道失败。 |
-122 |
尝试打开另一个服务器。 |
-131 |
频道连接不可恢复。 | |
-157 |
尚未集成必要的动态库。调用 enableDeepLearningDenoise 前,你没有将用于 AI 降噪的动态库集成到项目文件中。 |
-701 |
打开伴奏出错。 |
-1014 |
音频设备模块:运行时播放设备出现警告。 |
-1016 |
音频设备模块:运行时录音设备出现警告。 |
-1019 |
音频设备模块:没有采集到有效的声音数据。 |
-1020 |
音频设备模块:播放设备故障。 |
-1021 |
音频设备模块:录音设备故障。 |
-1025 |
通话或直播被系统声音打断,比如电话、闹钟等。 |
-1029 |
在通话过程中,Audio Session 的 category 必须设置成 AVAudioSessionCategoryPlayAndRecord,AgoraRtcEngine 会监控这个属性值。当这个值被修改成其他值的时候会触发这个告警,并强制设置回 AVAudioSessionCategoryPlayAndRecord。 |
-1031 |
音频设备模块:录到的声音太低。 |
-1032 |
音频设备模块:播放的声音太低。 |
-1040 |
音频设备模块:音频驱动异常。 解决方案:禁用并重新启用音频设备,或者重启机器,或者更新声卡驱动 |
-1042 |
音频采集设备和播放设备不一致,可能引起回声,建议使用同一设备采集和播放音频。 |
-1051 |
音频设备模块:录音声音监测到啸叫。 |
-1052 |
音频设备模块:音频播放会卡顿。 |
-1053 |
音频设备模块:音频信号处理模块检测到残余回声,该回声可能由系统线程调度不及时或信号溢出导致。 |
-1323 |
音频设备模块:无可用音频播放设备。 解决方案:插入音频设备 |
-1324 |
音频设备模块:音频采集释放有误。 解决方案:禁用并重新启用音频设备,或者重启机器,或者更新声卡驱动。 |
-1610 |
超分告警:远端用户的原始视频流的分辨率超出了可以应用超分辨率算法的要求。 |
-1611 |
超分告警:已指定一个远端用户使用超分辨率算法。 |
-1612 |
超分告警:当前设备不支持超分算法。 |
错误代码意味着声网 RTC Electron SDK 遭遇不可恢复的错误,需要应用程序干预,例如打开摄像头失败会返回错误,应用程序需要提示用户不能使用摄像头。
| 错误码 | 描述 |
|---|---|
0 |
没有错误。 |
-1 |
一般性的错误(没有明确归类的错误原因)。 |
-2 |
使用了无效的参数。例如指定的频道名含有非法字符。 |
-3 |
RTC 引擎初始化失败。 解决方法: |
-4 |
RTC 引擎当前状态不支持此项操作。 |
-5 |
调用被拒绝。 |
-6 |
传入的缓冲区大小不足以存放返回的数据。 |
-7 |
SDK 尚未初始化就调用其 API。 请确认在调用 API 之前已创建 AgoraRtcEngine 对象并完成初始化。 |
-9 |
没有操作权限。 请检查用户是否授予音视频设备使用权限。 |
-10 |
API 调用超时。 有些 API 调用需要 SDK 返回结果,如果 SDK 处理事件过长,超过 10 秒没有返回,会出现此错误。 |
-11 |
请求被取消。 仅供 SDK 内部使用,不通过 API 或者回调事件返回给 App。 |
-12 |
调用频率太高。 仅供 SDK 内部使用,不通过 API 或者回调事件返回给 App。 |
-13 |
SDK 内部绑定到网络 Socket 失败。 仅供 SDK 内部使用,不通过 API 或者回调事件返回给 App。 |
-14 |
网络不可用。 仅供 SDK 内部使用,不通过 API 或者回调事件返回给 App。 |
-15 |
没有网络缓冲区可用。 仅供 SDK 内部使用,不通过 API 或者回调事件返回给 App。 |
-17 |
加入频道被拒绝。一般有以下原因:joinChannel ,会返回此错误。停止调用该方法即可。 |
-18 |
离开频道失败。一般有以下原因:leaveChannel,会返回此错误。停止调用该方法即可。 |
-19 |
资源已被占用,不能重复使用。 |
-20 |
SDK 放弃请求,可能由于请求次数太多。 |
-21 |
Windows 下特定的防火墙设置导致 SDK 初始化失败然后崩溃。 |
-22 |
当用户 App 占用资源过多,或系统资源耗尽时,SDK 分配资源失败会返回该错误。 |
-101 |
不是有效的 App ID。 请更换有效的 App ID 重新加入频道。 |
-102 |
不是有效的频道名。 请更换有效的频道名重新加入频道。 |
-103 |
无法获取当前指定区域的服务器资源。请在调用 initialize 方法时尝试指定其他区域。 |
-109 |
DEPRECATED 请改用 ConnectionChangeReason 中的 9。当前使用的 Token 过期,不再有效。一般有以下原因: |
-110 |
DEPRECATED 请改用 ConnectionChangeReason 中的 8。生成的 Token 无效,一般有以下原因: uid 为生成 Token 的必须字段,用户在调用 joinChannel 加入频道时必须设置相同的 uid。 |
-113 |
用户不在频道内。 调用 sendStreamMessage,当调用发生在频道外时,会发生该错误. |
-114 |
调用 sendStreamMessage,当发送的数据长度大于 1024 个字节时,会发生该错误。 |
-115 |
调用 sendStreamMessage,当发送的数据频率超过限制时(6 KB/s),会发生该错误。 |
-116 |
调用 createDataStream,如果创建的数据通道过多(超过 5 个),会发生该错误。 |
-117 |
数据流发送超时。 |
-119 |
切换角色失败。 请尝试重新加入频道。 |
-120 |
解密失败,可能是用户加入频道用了不同的密码。 请检查加入频道时的设置,或尝试重新加入频道。 |
-123 |
此用户被服务器禁止。 |
-124 |
水印文件参数错误。 |
-125 |
水印文件路径错误。 |
-126 |
水印文件格式错误。 |
-127 |
水印文件信息错误。 |
-128 |
水印文件数据格式错误。 |
-129 |
水印文件读取错误。 |
-130 |
调用 addPublishStreamUrl 时,如果开启了加密,则会返回该错误(推流不支持加密流)。 |
-134 |
无效的 User Account。 |
-151 |
CDN 相关错误。 请调用 removePublishStreamUrl 删除原来的推流地址,然后调用 addPublishStreamUrl 重新推流到新地址。 |
-152 |
单个主播的推流地址数目达到上限 10。 请删掉一些不用的推流地址再增加推流地址。 |
-153 |
操作不属于主播自己的流,如更新其他主播的流参数、停止其他主播的流。 请检查 App 逻辑。 |
-154 |
推流服务器出现错误。 请调用 addPublishStreamUrl 重新推流。 |
-155 |
服务器无法找到数据流。 |
-156 |
推流地址格式有错误。 请检查推流地址格式是否正确。 |
-160 |
客户端正在录音。如需开始新的录音, 请先调用 stopAudioRecording 停止当前录音,再调用 startAudioRecording。 |
-401 |
用户已登出。 |
-402 |
网络故障。 |
-403 |
已在另一台设备登录。 |
-405 |
Token 已过期。 |
-1001 |
加载媒体引擎失败。 |
-1002 |
启动媒体引擎开始通话失败。 请尝试重新进入频道。 |
-1003 |
DEPRECATED 请改用 localVideoStateChanged 回调中的 error (4)。启动摄像头失败,请检查摄像头是否被其他应用占用,或者尝试重新进入频道。 |
-1004 |
启动视频渲染模块失败。 |
-1005 |
音频设备模块:音频设备出现错误(未明确指明为何种错误)。 请检查音频设备是否被其他应用占用,或者尝试重新进入频道。 |
-1006 |
音频设备模块:使用 Java 资源出现错误。 |
-1007 |
音频设备模块:设置的采样频率出现错误。 |
-1008 |
音频设备模块:初始化播放设备出现错误。 请检查播放设备是否被其他应用占用,或者尝试重新进入频道。 |
-1009 |
音频设备模块:启动播放设备出现错误。 请检查播放设备是否正常,或者尝试重新进入频道。 |
-1010 |
音频设备模块:停止播放设备出现错误。 |
-1011 |
音频设备模块:初始化录音设备时出现错误。 请检查录音设备是否正常,或者尝试重新进入频道。 |
-1012 |
音频设备模块:启动录音设备出现错误。 请检查录音设备是否正常,或者尝试重新进入频道。 |
-1013 |
音频设备模块:停止录音设备出现错误。 |
-1015 |
音频设备模块:运行时播放出现错误。 请检查播放设备是否正常,或者尝试重新进入频道。 |
-1017 |
音频设备模块:运行时录音错误。 请检查录音设备是否正常,或者尝试重新进入频道。 |
-1018 |
音频设备模块:录音失败。 |
-1020 |
音频设备模块:回放频率异常。 |
-1021 |
音频设备模块:录制频率异常。 |
-1022 |
音频设备模块:初始化 Loopback 设备错误。 |
-1023 |
音频设备模块:启动 Loopback 设备错误。 |
-1027 |
音频设备模块:没有录音权限。 请检查是否已经打开权限允许录音。 |
-1033 |
音频设备模块:录制设备被占用。 |
-1301 |
音频设备模块:音频驱动异常或者兼容性问题。 解决方案:禁用并重新启用音频设备,或者重启机器。 |
-1303 |
音频设备模块:音频驱动异常或者兼容性问题。 解决方案:禁用并重新启用音频设备,或者重启机器。 |
-1306 |
音频设备模块:音频驱动异常或者兼容性问题。 解决方案:禁用并重新启用音频设备,或者重启机器。 |
-1307 |
音频设备模块:无可用音频设备。 解决方案:插入音频设备。 |
-1309 |
音频设备模块:音频驱动异常或者兼容性问题。 解决方案:禁用并重新启用音频设备,或者重启机器。 |
-1311 |
音频设备模块:系统内存不足或者机器性能较差。 解决方案:重启机器或者更换机器。 |
-1314 |
音频设备模块:音频驱动异常。 解决方案:禁用并重新启用音频设备,或者重启机器,或者更新声卡驱动。 |
-1319 |
音频设备模块:系统内存不足或者机器性能较差。 解决方案:重启机器或者更换机器。 |
-1320 |
音频设备模块:音频驱动异常。 解决方案:禁用并重新启用音频设备,或者重启机器,或者更新声卡驱动。 |
-1322 |
音频设备模块:无可用音频采集设备。 解决方案:插入音频设备。 |
-1323 |
音频设备模块:无可用音频播放设备。 解决方案:插入音频设备。 |
-1351 |
音频设备模块:音频驱动异常或者兼容性问题。 解决方案:禁用并重新启用音频设备,或者重启机器,或者更新声卡驱动。 |
-1353 |
音频设备模块:音频驱动异常。 解决方案:禁用并重新启用音频设备,或者重启机器,或者更新声卡驱动。 |
-1354 |
音频设备模块:音频驱动异常。 解决方案:禁用并重新启用音频设备,或者重启机器,或者更新声卡驱动。 |
-1355 |
音频设备模块:音频驱动异常。 解决方案:禁用并重新启用音频设备,或者重启机器,或者更新声卡驱动。 |
-1356 |
音频设备模块:音频驱动异常。 解决方案:禁用并重新启用音频设备,或者重启机器,或者更新声卡驱动。 |
-1357 |
音频设备模块:音频驱动异常。 解决方案:禁用并重新启用音频设备,或者重启机器,或者更新声卡驱动。 |
-1358 |
音频设备模块:音频驱动异常。 解决方案:禁用并重新启用音频设备,或者重启机器,或者更新声卡驱动。 |
-1359 |
音频设备模块:无录制设备。 请检查是否有可用的录放音设备或者录放音设备是否已经被其他应用占用。 |
-1360 |
音频设备模块:无播放设备。 |
-1501 |
视频设备模块:没有摄像头使用权限。 请检查是否已经打开摄像头权限。 |
-1502 |
DEPRECATED 请改用 localVideoStateChanged 回调中的 error (3)。视频设备模块:摄像头正在使用中。 |
-1600 |
视频设备模块:未知错误。 |
-1601 |
视频设备模块:视频编码器初始化错误。 该错误为严重错误,请尝试重新加入频道。 |
-1602 |
视频设备模块:视频编码器错误。 该错误为严重错误,请尝试重新加入频道。 |
-1603 |
视频设备模块:视频编码器设置错误。 |