aliyun-webrtc-electron-sdk
v2.5.2-beta1
Published
Downloads
7
Readme
Electron SDK
阿里云音视频通信aliyun-webrtc-electron-sdk
一、接入前准备
接入参数配置
1 、在electron项目目录中package.json文件scripts中增加postinstall命令配置指定版本号 (electron版本也需要对应版本,一般相同主版本号可以兼容)
"scripts": {
"postinstall": "node node_modules/aliyun-webrtc-electron-sdk/dist/bin/alirtcdown -v 6.0.10"
...
}
参数说明:
| 命令 | 是否必填 | 说明 | 可选参数 | 备注 | | --- | --- | --- | --- | --- | | -v | 必填 | electron版本 | 6.0.10 | 当前请选择6.0.10 | | -p | 可选 | 系统类型 | darwin win32 | darwin表示mac系统,win32表示windows系统 | | -a | 可选 | 位数 | ia32 x64 | 当前windows请选择ia32,mac仅有x64 |
2、在dependencies中增加aliyun-webrtc-electron-sdk包
"dependencies": {
...
"aliyun-webrtc-electron-sdk": "^2.5.2"
...
}
3、执行npm install /cnpm install安装依赖
打包参数配置
由于electron sdk用到的dll库在asar压缩后无法正常使用,需要配置不压缩
"build": {
"extraResources": [
"./node_modules/aliyun-webrtc-electron-sdk/**"
]
}
官方文档
阿里云RTC提供移动端、PC等多端SDK,并兼容标准WebRTC浏览器接入网络,帮助您快速搭建多端实时应用。接入RTC的方法,请参见入门概述。 当您成功搭建本地SDK,可以在终端调用API与RTC服务端进行交互,在加入频道或房间后,您可以进行本地推流、订阅远端用户等操作,实现频道内不同用户之间的音视频实时通话。 阿里云RTC拥有全球实时智能调度系统,并结合实时媒体处理系统和1500+边缘节点,运用行业领先的音频3A(AGC、AEC、ANS)、视频编码、弱网对抗等算法为您提供低延时、抗丢包的音视频实时通信。
二、文档
接口文档
本文为您介绍了Electron SDK的接口详情
目录
基础接口
| API | 描述 | 支持的最低版本 | | --- | --- | --- | | 实例化 | 创建aliElectronRtc实例 | 2.1.0 | | destroy | SDK资源释放 | 2.1.0 |
频道相关接口
| API | 描述 | 支持的最低版本 | | --- | --- | --- | | joinChannel | 加入频道 | 2.1.0 | | leaveChannel | 离开频道 | 2.1.0 | | isInCall | 检查当前是否在频道中 | 2.1.0 | | setChannelProfile | 设置频道模式 | 2.1.0 |
发布相关接口
| API | 描述 | 支持的最低版本 | | --- | --- | --- | | publishLocalVideoStream | 设置是否允许推视频流 | 2.1.0 | | isLocalVideoStreamPublished | 查询当前是否允许推视频流 | 2.1.0 | | isScreenSharePublished | 查询当前是否允许推屏幕流 | 2.1.0 | | publishLocalAudioStream | 设置是否允许推音频流 | 2.1.0 | | isLocalAudioStreamPublished | 查询当前是否允许推音频流 | 2.1.0 | | publishLocalDualStream | 设置是否允许推次要视频流 | 2.1.0 | | isDualStreamPublished | 查询当前是否允许推次要视频流 | 2.1.0 |
订阅相关接口
| API | 描述 | 支持的最低版本 | | --- | --- | --- | | setRemoteVideoStreamType | 设置订阅的相机流格式。 | 2.1.0 | | setRemoteDefaultVideoStreamType | 设置默认订阅的相机流格式。 | 2.1.0 | | setDefaultSubscribeAllRemoteAudioStreams | 设置是否默认拉音频流。 | 2.1.0 | | subscribeAllRemoteAudioStreams | 停止或恢复拉所有远端音频流。 | 2.1.0 | | subscribeRemoteAudioStream | 停止或恢复特定远端用户的音频流拉取。 | 2.1.0 | | setDefaultSubscribeAllRemoteVideoStreams | 设置是否默认拉视频流。 | 2.1.0 | | subscribeAllRemoteVideoStreams | 停止或恢复拉所有远端视频流。 | 2.1.0 | | subscribeRemoteVideoStream | 停止或恢复特定远端用户的视频流拉取。 | 2.1.0 |
视频相关接口
| API | 描述 | 支持的最低版本 | | --- | --- | --- | | setScreenShareEncoderConfiguration | 设置屏幕共享编码属性 | 2.1.0 | | setLocalViewConfig | 为本地预览设置渲染窗口以及绘制参数 | 2.1.0 | | enableLocalVideo | 禁用或重新启用本地视频采集 | 2.1.0 | | muteLocalCamera | 设置是否停止推本地视频流 | 2.1.0 | | setRemoteViewConfig | 为远端的视频设置渲染窗口 | 2.1.0 | | stopRecord | 停止录制 | 2.1.0 | | startRecord | 开始录制 | 2.1.0 | | pauseRecord | 暂停录制 | 2.1.0 | | resumeRecord | 重新开始录制 | 2.1.0 | | setBeautyEffect | 设置基础美颜 | 2.1.0 | | setVideoEncoderConfiguration | 设置视频编码属性 | 2.1.0 |
共享视频接口
| API | 描述 | 支持的最低版本 | | --- | --- | --- | | startScreenShareByDesktopId | 根据桌面ID进行屏幕分享。 | 2.1.0 | | startScreenShareByWindowId | 根据窗口ID进行屏幕分享。 | 2.1.0 | | stopScreenShare | 停止屏幕分享。 | 2.1.0 | | getScreenShareConfig | 获取屏幕共享配置。 | 2.1.0 | | getScreenShareSourceInfo | 获取屏幕分享源信息。 | 2.1.0 | | getCurrentScreenShareSourceId | 获取当前屏幕共享源ID。 | 2.1.0 | | getCurrentScreenShareSourceType | 获取当前屏幕共享源类型。 | 2.1.0 |
音频相关接口
| API | 描述 | 支持的最低版本 | | --- | --- | --- | | muteLocalMic | 设置是否停止推本地音频。 | 2.1.0 | | muteRemoteAudio | 设置是否停止播放远端音频流。 | 2.1.0 | | muteAllRemoteAudio | 停止或恢复远端所有的音频播放。 | 2.1.0 | | startAudioCapture | 开启音频采集。 | 2.1.0 | | stopAudioCapture | 关闭音频采集。 | 2.1.0 | | startAudioPlayer | 开启音频播放设备。 | 2.1.0 | | stopAudioPlayer | 关闭音频播放。 | 2.1.0 | | enableAudioVolumeIndication | 设置音量回调频率和平滑系数。 | 2.1.0 | | setAudioProfile | 设置音频Profile。 | 2.1.0 | | startAudioAccompany | 开始混音 | 2.1.0 | | stopAudioAccompany | 停止混音 | 2.1.0 | | setAudioAccompanyVolume | 设置混音音量 | 2.1.0 | | setAudioAccompanyPublishVolume | 设置混音之后推流出去的音量 | 2.1.0 | | getAudioAccompanyPublishVolume | 获取推流出去的混音音量 | 2.1.0 | | setAudioAccompanyPlayoutVolume | 设置混音之后本地播放的音量 | 2.1.0 | | getAudioAccompanyPlayoutVolume | 获取混音本地播放的音量 | 2.1.0 | | pauseAudioAccompany | 暂停混音 | 2.1.0 | | resumeAudioAccompany | 重新开始混音 | 2.1.0 | | getAudioAccompanyDuration | 获取伴奏文件时长 | 2.1.0 | | getAudioAccompanyCurrentPosition | 获取音乐文件播放进度 | 2.1.0 | | setAudioAccompanyPosition | 设置音频文件的播放位置 | 2.1.0 | | enableSystemAudioRecording | 设置是否开启系统声音采集推送。 | 2.1.0 | | isSystemAudioRecording | 当前是否开启系统声音采集推送。 | 2.1.0 | | setSystemAudioRecordingVolume | 设置系统声音采集推送音量。 | 2.1.0 | | getSystemAudioRecordingVolume | 获取当前设置系统声音采集推送音量。 | 2.1.0 |
音频设备管理接口
| API | 描述 | 支持的最低版本 | | --- | --- | --- | | getAudioCaptureList | 获取系统中的录音设备列表。 | 2.1.0 | | getCurrentAudioCaptureName | 获取使用的录音设备名称。 | 2.1.0 | | getCurrentAudioCaptureID | 获取使用的录音设备ID。 | 2.1.0 | | setCurrentAudioCaptureName | 选择录音设备名称。 | 2.1.0 | | setCurrentAudioCaptureID | 选择录音设备ID。 | 2.1.0 | | getAudioPlayerList | 获取系统中的扬声器列表。 | 2.1.0 | | getCurrentAudioPlayerName | 获取当前使用的扬声器名称。 | 2.1.0 | | getCurrentAudioPlayerID | 获取当前使用的扬声器ID。 | 2.1.0 | | setCurrentAudioPlayerName | 选择扬声器名称。 | 2.1.0 | | setCurrentAudioPlayerID | 选择扬声器ID。 | 2.1.0 | | startTestAudioRecordByName | 开始测试音频采集设备。 | 2.1.0 | | startTestAudioRecordById | 开启麦克风设备测试(按设备ID)。 | 2.1.0 | | stopTestAudioRecord | 停止测试音频采集设备。 | 2.1.0 | | startTestAudioPlayoutByName | 开始测试音频播放设备。 | 2.1.0 | | startTestAudioPlayoutById | 开启扬声器设备测试(按设备ID)。 | 2.1.0 | | stopTestAudioPlayout | 停止测试音频播放设备。 | 2.1.0 |
视频设备管理接口
| API | 描述 | 支持的最低版本 | | --- | --- | --- | | getCameraList | 获取摄像头列表。 | 2.1.0 | | getCurrentCameraName | 获取当前使用的摄像头名称。 | 2.1.0 | | getCurrentCameraID | 获取当前使用的摄像头ID。 | 2.1.0 | | setCurrentCameraName | 选择摄像头名称。 | 2.1.0 | | setCurrentCameraID | 选择摄像头ID。 | 2.1.0 |
预览接口
| API | 描述 | 以上版本支持 | | --- | --- | --- | | startPreview | 开启预览 | 2.1.0 | | stopPreview | 停止预览 | 2.1.0 |
远端用户查询接口
| API | 描述 | 支持的最低版本 | | --- | --- | --- | | getUserInfo | 查询远端用户信息。 | 2.1.0 |
其他接口
| API | 描述 | 支持的最低版本 | | --- | --- | --- | | getSDKVersion | 获取SDK版本号。 | 2.1.0 | | setClientRole | 设置用户角色。 | 2.1.0 | | getClientRole | 获取用户角色。 | 2.1.0 | | startLastmileDetect | 开始网络质量探测。 | 2.1.0 | | stopLastmileDetect | 停止网络质量探测。 | 2.1.0 | | getCurrentConnectionStatus | 获取当前网络链接状态。 | 2.1.0 | | on | 订阅事件 | 2.1.0 | | off | 取消订阅事件 | 2.1.0 |
接口详情
基础接口
- 实例化
let aliElectronRtc = new AliRtcEngine(option)
| 参数 | - | 类型 | 描述 | | --- | --- | --- | --- | | option | h5CompatibleMode | Boolean | 是否开启H5兼容,默认false | | - | extension | Object | 定制参数,默认空对象,可不填 |
注:H5兼容模式是指是否能和Web端正常通信,默认关闭。
- destroy:销毁实例
aliElectronRtc.destroy();
频道相关接口
- joinChannel:加入频道。
注:1、加入频道成功后,如果中途需要加入其他频道,必须先调用leaveChannel离开当前频道。 2、如果加入频道失败,需要重试时,无需先调用leaveChannel。 3、该接口是异步接口,是否成功加入频道,通过onJoinChannelResult判断。
aliElectronRtc.joinChannel(authInfo, options)
| 参数 | 类型 | 描述 | | --- | --- | --- | | authInfo | AliEngineAuthInfo | 鉴权信息 | | options | ChannelMediaOptions | 订阅选项 |
- isInCall: 是否在频道中
aliElectronRtc.isInCall()
返回说明:true表示在频道中,false表示不在频道中
- leaveChannel: 离开频道
aliElectronRtc.leaveChannel()
注:该接口是异步接口,是否成功加入频道,通过onJoinChannelResult判断
- setChannelProfile: 设置频道类型
注:默认通信模式,设置频道模式需要在入会前调用。 返回 0:成功,其他表示对应错误码
aliElectronRtc.setChannelProfile(profile)
| 参数 | 类型 | 描述 | | --- | --- | --- | | profile | AliEngineChannelProfile | 频道类型 |
发布相关接口
- publishLocalVideoStream:设置是否允许推视频流。
aliElectronRtc.publishLocalVideoStream(enable)
| 参数 | 类型 | 描述 | | --- | --- | --- | | enable | Boolean | 是否允许推视频流 |
- isLocalVideoStreamPublished:查询当前是否允许推视频流。
aliElectronRtc.isLocalVideoStreamPublished()
返回说明:true表示允许推相机流,false表示不允许推相机流。
- isScreenSharePublished:查询当前是否允许推屏幕流。
aliElectronRtc.isScreenSharePublished()
返回说明:true表示允许推相机流,false表示不允许推相机流。
- publishLocalAudioStream:设置是否允许推音频流。
aliElectronRtc.publishLocalAudioStream(enable)
| 参数 | 类型 | 描述 | | --- | --- | --- | | enable | Boolean | 是否允许推音频流 |
返回说明:0表示方法调用成功,其他表示方法调用失败。
- isLocalAudioStreamPublished:查询当前是否允许推音频流。
aliElectronRtc.isLocalAudioStreamPublished
返回说明:true表示允许推音频流,false表示不允许推音频流。
- publishLocalDualStream:设置是否允许推次要视频流。
aliElectronRtc.publishLocalDualStream(enable)
| 参数 | 类型 | 描述 | | --- | --- | --- | | enable | Boolean | 是否允许推次要视频流 |
返回说明:0表示方法调用成功,其他表示方法调用失败。
- isDualStreamPublished:查询当前是否允许推次要视频流。
aliElectronRtc.isDualStreamPublished()
返回说明:true表示允许推次要视频流,false表示不允许推次要视频流。
订阅相关接口
- setRemoteVideoStreamType:设置订阅的相机流格式。
aliElectronRtc.setRemoteVideoStreamType(uid, streamType)
| 参数 | 类型 | 描述 | | --- | --- | --- | | uid | String | 远端用户ID。 | | streamType | AliEngineVideoStreamType | 相机流格式。 |
返回说明:0表示方法调用成功,其他表示方法调用失败。
- setRemoteDefaultVideoStreamType:设置默认订阅的相机流格式。
aliElectronRtc.SetRemoteDefaultVideoStreamType(streamType)
| 参数 | 类型 | 描述 | | --- | --- | --- | | streamType | AliEngineVideoStreamType | 相机流格式。 |
返回说明:0表示方法调用成功,其他表示方法调用失败。
- setDefaultSubscribeAllRemoteAudioStreams:设置是否默认拉音频流。
aliElectronRtc.setDefaultSubscribeAllRemoteAudioStreams(sub)
| 参数 | 类型 | 描述 | | --- | --- | --- | | sub | Boolean | 是否订阅 |
返回说明:0表示方法调用成功,其他表示方法调用失败。
- subscribeAllRemoteAudioStreams:停止或恢复拉所有远端音频流。
aliElectronRtc.subscribeAllRemoteAudioStreams(sub)
| 参数 | 类型 | 描述 | | --- | --- | --- | | sub | Boolean | 是否订阅。 |
返回说明:0表示方法调用成功,其他表示方法调用失败。
- subscribeRemoteAudioStream:停止或恢复特定远端用户的音频流拉取。
aliElectronRtc.subscribeRemoteAudioStream(uid, sub)
| 参数 | 类型 | 描述 | | --- | --- | --- | | uid | String | 远端用户ID | | sub | Boolean | 是否订阅 |
返回说明:0表示方法调用成功,其他表示方法调用失败。
- setDefaultSubscribeAllRemoteVideoStreams:设置是否默认拉视频流。
aliElectronRtc.setDefaultSubscribeAllRemoteVideoStreams(sub)
| 参数 | 类型 | 描述 | | --- | --- | --- | | sub | Boolean | 是否订阅。 |
返回说明:0表示方法调用成功,其他表示方法调用失败。
- subscribeAllRemoteVideoStreams:停止或恢复拉所有远端视频流。
aliElectronRtc.subscribeAllRemoteVideoStreams(sub)
| 参数 | 类型 | 描述 | | --- | --- | --- | | sub | Boolean | 是否订阅。 |
返回说明:0表示方法调用成功,其他表示方法调用失败。
- subscribeRemoteVideoStream:停止或恢复特定远端用户的视频流拉取。
aliElectronRtc.subscribeRemoteVideoStream(uid, track, sub)
| 参数 | 类型 | 描述 | | --- | --- | --- | | uid | String | 远端用户ID。 | | track | AliEngineVideoTrack | 视频流类型。 | | sub | Boolean | 是否订阅。 |
返回说明:0表示方法调用成功,其他表示方法调用失败。
视频相关接口
- setScreenShareEncoderConfiguration:设置屏幕共享编码属性。
aliElectronRtc.setScreenShareEncoderConfiguration(config)
| 参数 | 类型 | 描述 | | --- | --- | --- | | config | AliEngineScreenShareEncoderConfiguration | 屏幕共享编码属性。 |
- setLocalViewConfig:为本地预览设置渲染窗口
aliElectronRtc.setLocalViewConfig(element)
| 参数 | 类型 | 描述 | | --- | --- | --- | | element | HTMLDivElement | 预览容器 |
- enableLocalVideo:禁用或重新启用本地视频采集。
aliElectronRtc.enableLocalVideo(enable)
| 参数 | 类型 | 描述 | | --- | --- | --- | | enable | Boolean | 禁用或重新启用本地视频采集 |
返回说明:0表示方法调用成功,其他表示方法调用失败。
- muteLocalCamera:停止或恢复本地视频数据发送。
aliElectronRtc.muteLocalCamera(mute, track)
| 参数 | 类型 | 描述 | | --- | --- | --- | | mute | Boolean | 停止或恢复推视频流 | | track | AliEngineVideoTrack | 需要改变推流状态的视频流类型。 |
返回说明:0表示方法调用成功,其他表示方法调用失败。
说明此接口只是控制指定视频流上是否发送黑帧,采集和数据发送不会停止,如果需要关闭采集请使用enableLocalVideo接口,如果需要中止视频数据发送请使用publishLocalVideoStream接口。
- setRemoteViewConfig:为远端的视频设置渲染窗口
aliElectronRtc.setRemoteViewConfig(uid, container, type)
| 参数 | 类型 | 描述 | | --- | --- | --- | | uid | String | 用户ID。 | | container | HTMLDivElement | 视图容器 | | type | Number | 视频流 1:camera 2:screen |
- stopRecord:停止录制。
aliElectronRtc.stopRecord()
返回说明:true表示方法调用成功,false表示方法调用失败。
- startRecord:开始录制
aliElectronRtc.startRecord(recordType, recordFormat, filePath, audioConfig, videoConfig, isFragment)
| 参数 | 类型 | 描述 | | --- | --- | --- | | recordType | AliEngineRecordType | 录制类型 | | recordFormat | AliEngineRecordFormat | 录制格式 | | filePath | String | 文件路径 | | audioConfig | AliEngineRecordAudioConfig | 录制音频设置 | | videoConfig | AliEngineRecordVideoConfig | 录制视频设置 | | isFragment | Boolean | 是否支持mp4内部分段,只在录制mp4时有效 |
返回说明:true表示方法调用成功,false表示方法调用失败。 注:目前仅支持音频录制
- pauseRecord:暂停录制。
aliElectronRtc.pauseRecord()
返回说明:true表示方法调用成功,false表示方法调用失败。
- resumeRecord:重新开始录制。
aliElectronRtc.resumeRecord()
返回说明:true表示方法调用成功,false表示方法调用失败。
- setBeautyEffect:设置是否启用基础美颜。
aliElectronRtc.setBeautyEffect(enable, config)
| 参数 | 类型 | 描述 | | --- | --- | --- | | enable | Boolean | 是否启用基础美颜 | | config | AliEngineBeautyConfig | 基础美颜参数。 |
返回说明:0表示方法调用成功,其他表示方法调用失败。
说明该接口目前只支持美白和磨皮。
- setVideoEncoderConfiguration:设置视频编码属性。
aliElectronRtc.setVideoEncoderConfiguration(config)
| 参数 | 类型 | 描述 | | --- | --- | --- | | config | AliEngineVideoEncoderConfiguration | 预定义的编码属性。 |
共享视频接口
- startScreenShareByDesktopId:根据桌面ID进行屏幕分享。
aliElectronRtc.startScreenShareByDesktopId(desktopId, config)
| 参数 | 类型 | 描述 | | --- | --- | --- | | desktopId | Number | 桌面ID(可通过getScreenShareSourceInfo接口获取) | | config | AliEngineScreenShareConfig | 屏幕分享配置 |
返回说明:0表示方法调用成功,其他表示方法调用失败。 说明 配置指定区域分享时,分享区域最小分辨率为16 x 16,设置区域小于最小分辨率时重置为最小分辨率;设置分享区域超过实际桌面分辨率时,将分享整个桌面。
- startScreenShareByWindowId:根据窗口ID进行屏幕分享。
aliElectronRtc.startScreenShareByWindowId(windowId, config)
| 参数 | 类型 | 描述 | | --- | --- | --- | | windowId | Number | 窗口ID(可通过GetScreenShareSourceInfo接口获取) | | config | AliEngineScreenShareConfig | 屏幕分享配置 |
返回说明:0表示方法调用成功,其他表示方法调用失败。
- stopScreenShare:停止屏幕分享。
aliElectronRtc.stopScreenShare()
返回说明:0表示方法调用成功,其他表示方法调用失败。
- getScreenShareConfig:获取屏幕共享配置。
aliElectronRtc.getScreenShareConfig()
返回说明:返回屏幕共享配置信息 AliEngineScreenShareConfig
- getScreenShareSourceInfo:获取屏幕分享源信息。
aliElectronRtc.getScreenShareSourceInfo(sourceType).then(sourceInfo => {
//...
})
| 参数 | 类型 | 描述 | | --- | --- | --- | | sourceType | AliEngineScreenShareType | 屏幕分享类型。 |
返回说明:Promise 返回屏幕共享源列表
| 返回各项参数名 | 类型 | 描述 | | --- | --- | --- | | sourceId | Number | 源id | | sourceTitle | String | 源名称 | | appIcon | NativeImage | null | 窗口icon | | thumbnail | NativeImage | null | 缩略图 |
- getCurrentScreenShareSourceId:获取当前屏幕共享源ID。
aliElectronRtc.getCurrentScreenShareSourceId()
返回说明:返回当前屏幕共享源ID。
- getCurrentScreenShareSourceType:获取当前屏幕共享源类型。
aliElectronRtc.getCurrentScreenShareSourceType()
返回说明:返回当前屏幕共享源类型。
音频相关接口
- muteLocalMic:停止或恢复本地音频数据发送。
aliElectronRtc.muteLocalMic(mute, mode)
| 参数 | 类型 | 描述 | | --- | --- | --- | | mute | Boolean | 停止或恢复本地音频数据发送 | | mode | AliEngineMuteLocalAudioMode | 静音模式,默认麦克风静音模式。 |
返回说明:0表示方法调用成功,其他表示方法调用失败。
说明 mute只是发送音频数据为静音帧,采集和编码模块仍然在工作。
- muteRemoteAudio:停止或恢复远端的音频播放。
aliElectronRtc.muteRemoteAudio(uid, mute)
| 参数 | 类型 | 描述 | | --- | --- | --- | | uid | String | 用户ID。 | | mute | Boolean | 停止或恢复远端的音频播放 |
返回说明:0表示方法调用成功,其他表示方法调用失败。
- muteAllRemoteAudio:停止或恢复远端所有的音频播放。
aliElectronRtc.muteAllRemoteAudio(mute)
| 参数 | 类型 | 描述 | | --- | --- | --- | | mute | Boolean | 停止或恢复远端所有的音频播放 |
返回说明:0表示方法调用成功,其他表示方法调用失败。
- startAudioCapture:开启音频采集。
aliElectronRtc.startAudioCapture()
返回说明:0表示方法调用成功,其他表示方法调用失败。
- stopAudioCapture:关闭音频采集。
aliElectronRtc.stopAudioCapture()
返回说明:0表示方法调用成功,其他表示方法调用失败。
- startAudioPlayer:开启音频播放设备。
aliElectronRtc.StartAudioPlayer()
返回说明:0表示方法调用成功,其他表示方法调用失败。
- stopAudioPlayer:关闭音频播放。
aliElectronRtc.stopAudioPlayer()
返回说明:0表示方法调用成功,其他表示方法调用失败。
- enableAudioVolumeIndication:设置音量回调频率和平滑系数。
aliElectronRtc.enableAudioVolumeIndication(interval, smooth, reportVad)
| 参数 | 类型 | 描述 | | --- | --- | --- | | interval | Number | 时间间隔,单位为毫秒,最小值不得小于10ms,建议设置300~500ms;小于等于0表示不启用音量提示和说话人提示功能。 | | smooth | Number | 平滑系数,数值越大平滑程度越高,反之越低,实时性越好,取值范围:[0,9],建议设置3。 | | reportVad | Number | 说话人检测开关。取值:0:关闭。1:开启,通过onAudioVolumeCallback接口回调每一个说话人的状态。|
返回说明:0表示方法调用成功,其他表示方法调用失败。
- setAudioProfile:设置音频Profile。
aliElectronRtc.setAudioProfile(audio_profile, audio_scene)
| 参数 | 类型 | 描述 | | --- | --- | --- | | audio_profile | AliEngineAudioProfile | 音频采集或编码模式参数 | | audio_scene | AliEngineAudioScenario | 音频场景模式参数 |
返回说明:0表示方法调用成功,其他表示方法调用失败。
- startAudioAccompany:开始混音
aliElectronRtc.startAudioAccompany(filePath, onlyLocalPlay, replaceMic, loopCycles)
| 参数 | 类型 | 描述 | | --- | --- | --- | | filePath | String | 混音文件路径。 | | onlyLocalPlay | Boolean | 是否只本地播放。 | | replaceMic | Boolean | 是否替换掉MIC。 | | loopCycles | Number | 循环次数(可以设置-1或者正整数)。 |
返回说明:0表示方法调用成功,其他表示方法调用失败。
- stopAudioAccompany:停止混音
aliElectronRtc.stopAudioAccompany()
返回说明:0表示方法调用成功,其他表示方法调用失败。
- setAudioAccompanyVolume:设置混音音量
aliElectronRtc.setAudioAccompanyVolume(volume)
| 参数 | 类型 | 描述 | | --- | --- | --- | | volume | Number | 混音音量,取值范围:[0,100]。 |
返回说明:0表示方法调用成功,其他表示方法调用失败。 说明设置音量需要在startAudioAccompany后才能生效。
- setAudioAccompanyPublishVolume:设置混音之后推流出去的音量
aliElectronRtc.setAudioAccompanyPublishVolume(volume)
| 参数 | 类型 | 描述 | | --- | --- | --- | | volume | Number | 混音音量,取值范围:[0,100]。 |
返回说明:0表示方法调用成功,其他表示方法调用失败。 说明设置音量需要在startAudioAccompany后才能生效。
- getAudioAccompanyPublishVolume:获取推流出去的混音音量
aliElectronRtc.getAudioAccompanyPublishVolume()
返回说明:返回推流出去的混音音量。
- setAudioAccompanyPlayoutVolume:设置混音之后本地播放的音量
aliElectronRtc.setAudioAccompanyPlayoutVolume(volume)
| 参数 | 类型 | 描述 | | --- | --- | --- | | volume | Number | 混音音量,取值范围:[0,100]。 |
返回说明:0表示方法调用成功,其他表示方法调用失败。 说明设置音量需要在startAudioAccompany后才能生效。
- getAudioAccompanyPlayoutVolume:获取混音本地播放的音量
aliElectronRtc.getAudioAccompanyPlayoutVolume()
返回说明:当前混音本地播放的音量大小。
- pauseAudioAccompany:暂停混音
aliElectronRtc.pauseAudioAccompany()
返回说明:0表示方法调用成功,其他表示方法调用失败。
- resumeAudioAccompany:重新开始混音
aliElectronRtc.resumeAudioAccompany()
返回说明:0表示方法调用成功,其他表示方法调用失败。
- getAudioAccompanyDuration:获取伴奏文件时长
aliElectronRtc.getAudioAccompanyDuration()
返回说明:返回当前伴奏文件时长,单位为毫秒。
- getAudioAccompanyCurrentPosition:获取音乐文件播放进度
aliElectronRtc.getAudioAccompanyCurrentPosition()
返回说明:当前音乐文件播放进度,单位为毫秒。
- setAudioAccompanyPosition:设置音频文件的播放位置
aliElectronRtc.setAudioAccompanyPosition(pos)
| 参数 | 类型 | 描述 | | --- | --- | --- | | pos | Number | 进度条位置,单位为毫秒。 |
返回说明:0表示方法调用成功,其他表示方法调用失败。
- enableSystemAudioRecording:设置是否开启系统声音采集推送。
aliElectronRtc.enableSystemAudioRecording(enable, path)
| 参数 | 类型 | 描述 | | --- | --- | --- | | enable | Boolean | 是否开启系统声音采集推送 | | path | String | windows 可以设置为第三方播放器路径, mac需要设置为虚拟声卡设备名才能采集系统声音,关闭时需要传入要切换回的扬声器名称 |
返回说明:0表示方法调用成功,其他表示方法调用失败。
- isSystemAudioRecording:当前是否开启系统声音采集推送。
aliElectronRtc.isSystemAudioRecording()
返回说明:true表示开启状态, false表示关闭状态。
- setSystemAudioRecordingVolume:设置系统声音采集推送音量。
aliElectronRtc.setSystemAudioRecordingVolume(volume)
| 参数 | 类型 | 描述 | | --- | --- | --- | | volume | Number | 设置音量。 |
返回说明:0表示方法调用成功,其他表示方法调用失败。
- getSystemAudioRecordingVolume:获取当前设置系统声音采集推送音量。
aliElectronRtc.getSystemAudioRecordingVolume()
返回说明:返回系统音量。 说明需要开启系统声音采集推送后才能设置,否则设置失败。
音频设备管理接口
- getAudioCaptureList:获取系统中的录音设备列表。
aliElectronRtc.getAudioCaptureList()
返回说明:返回系统中的录音设备列表。
- getCurrentAudioCaptureName:获取使用的录音设备名称。
aliElectronRtc.getCurrentAudioCaptureName()
返回说明:返回当前音频采集设备名。
- getCurrentAudioCaptureID:获取使用的录音设备ID。
aliElectronRtc.getCurrentAudioCaptureID()
返回说明:返回当前音频采集设备ID。
- setCurrentAudioCaptureName:选择录音设备名称。
aliElectronRtc.setCurrentAudioCaptureName()
| 参数 | 类型 | 描述 | | --- | --- | --- | | captureName | String | 音频采集设备名称。 |
返回说明:0表示方法调用成功,其他表示方法调用失败。
- setCurrentAudioCaptureID:选择录音设备ID。
aliElectronRtc.setCurrentAudioCaptureID()
| 参数 | 类型 | 描述 | | --- | --- | --- | | captureID | String | 音频采集设备名称。 |
返回说明:0表示方法调用成功,其他表示方法调用失败。
- getAudioPlayerList:获取系统中的扬声器列表。
aliElectronRtc.getAudioPlayerList()
返回说明:返回音频播放设备列表。
- getCurrentAudioPlayerName:获取当前使用的扬声器名称。
aliElectronRtc.getCurrentAudioPlayerName()
返回说明:返回当前音频播放设备名。
- getCurrentAudioPlayerID:获取当前使用的扬声器ID。
aliElectronRtc.getCurrentAudioPlayerID()
返回说明:返回当前音频播放设备ID。
- setCurrentAudioPlayerName:选择扬声器名称。
aliElectronRtc.setCurrentAudioPlayerName()
| 参数 | 类型 | 描述 | | --- | --- | --- | | playerName | String | 音频播放设备名称。 |
返回说明:0表示方法调用成功,其他表示方法调用失败。
- setCurrentAudioPlayerID:选择扬声器ID。
| 参数 | 类型 | 描述 | | --- | --- | --- | | playerID | String | 音频播放设备ID。 |
返回说明:0表示方法调用成功,其他表示方法调用失败。
- startTestAudioRecordByName:开始测试音频采集设备
aliElectronRtc.startTestAudioRecordByName(deviceName, callbackInterval)
| 参数 | 类型 | 描述 | | --- | --- | --- | | deviceName | String | 音频采集设备名称。 | | callbackInterval | Number | 音量回调频率,单位:毫秒,默认值200毫秒。 |
返回说明:0表示方法调用成功,其他表示方法调用失败。 说明开始测试后音量信息通过onAudioDeviceRecordLevel回调返回。
- startTestAudioRecordById:开启麦克风设备测试(按设备ID)。
aliElectronRtc.startTestAudioRecordById(deviceId, callbackInterval)
| 参数 | 类型 | 描述 | | --- | --- | --- | | deviceId | String | 设备ID。 | | callbackInterval | Number | 音量回调频率,单位:毫秒,默认值200毫秒。 |
返回说明:0表示方法调用成功,其他表示方法调用失败。 说明开始测试后音量信息通过onAudioDeviceRecordLevel回调返回。
- stopTestAudioRecord:停止测试音频采集设备。
aliElectronRtc.stopTestAudioRecord()
返回说明:0表示方法调用成功,其他表示方法调用失败。
- startTestAudioPlayoutByName:开始测试音频播放设备。
aliElectronRtc.startTestAudioPlayoutByName(deviceName, filePath, callbackInterval, loopCycles)
| 参数 | 类型 | 描述 | | --- | --- | --- | | deviceName | String | 音频播放设备名称。 | | filePath | String | 音频文件路径。 | | callbackInterval | Number | 音量回调频率,单位:毫秒,默认值200毫秒。 | | loopCycles | Number | 重复播放次数,-1表示循环播放。 |
返回说明:0表示方法调用成功,其他表示方法调用失败。
- startTestAudioPlayoutById:开启扬声器设备测试(按设备ID)。
aliElectronRtc.startTestAudioPlayoutById(deviceId, filePath, callbackInterval, loopCycles)
| 参数 | 类型 | 描述 | | --- | --- | --- | | deviceId | String | 设备ID。 | | filePath | String | 音频文件路径。 | | callbackInterval | Number | 音量回调频率,单位:毫秒,默认值200毫秒。 | | loopCycles | Number | 重复播放次数,-1表示循环播放。 |
返回说明:0表示方法调用成功,其他表示方法调用失败。 说明开始测试后音量信息通过onAudioDevicePlayoutLevel回调返回。
- stopTestAudioPlayout:停止测试音频播放设备。
aliElectronRtc.stopTestAudioPlayout()
返回说明:0表示方法调用成功,其他表示方法调用失败。
视频设备管理接口
- getCameraList:获取摄像头列表。
aliElectronRtc.getCameraList()
返回说明:返回摄像头列表。
- getCurrentCameraName:获取当前使用的摄像头名称。
aliElectronRtc.getCurrentCameraName()
返回说明:返回当前使用的摄像头名称。
- getCurrentCameraID:获取当前使用的摄像头ID。
aliElectronRtc.getCurrentCameraID()
返回说明:返回当前使用的摄像头ID。
- setCurrentCameraName:选择摄像头名称。
aliElectronRtc.setCurrentCameraName(cameraName)
| 参数 | 类型 | 描述 | | --- | --- | --- | | cameraName | String | 摄像头名称。 |
返回说明:0表示方法调用成功,其他表示方法调用失败。
- setCurrentCameraID:选择摄像头ID。
aliElectronRtc.setCurrentCameraID(cameraID)
| 参数 | 类型 | 描述 | | --- | --- | --- | | cameraID | String | 摄像头ID。 |
返回说明:0表示方法调用成功,其他表示方法调用失败。
预览接口
- startPreview:开始本地预览。
aliElectronRtc.startPreview()
返回说明:0表示方法调用成功,其他表示方法调用失败。
- stopPreview:停止本地预览。
aliElectronRtc.stopPreview()
返回说明:0表示方法调用成功,其他表示方法调用失败。
- getUserInfo:查询远端用户的各种状态。
aliElectronRtc.getUserInfo(uid)
| 参数 | 类型 | 描述 | | --- | --- | --- | | uid | String | 用户ID。 |
返回说明
| 返回 | 类型 | 描述 | | --- | --- | --- | | userInfo | Object | 用户信息 |
- getSDKVersion:获取SDK版本号。
aliElectronRtc.getSDKVersion()
返回说明:返回SDK版本号。
- setClientRole:设置用户角色。
aliElectronRtc.setClientRole(clientRole)
| 参数 | 类型 | 描述 | | --- | --- | --- | | clientRole | AliEngineClientRole | 用户角色类型 |
返回说明:0表示方法调用成功,其他表示方法调用失败。
- getClientRole:获取用户角色。
aliElectronRtc.getClientRole()
返回说明:返回当前用户角色。
- startLastmileDetect:开始网络质量探测。
aliElectronRtc.startLastmileDetect()
返回说明:0表示方法调用成功,其他表示方法调用失败。 说明此接口需在joinChannel之前调用,探测结果在onLastmileDetectResultWithQuality回调。
- stopLastmileDetect:停止网络质量探测。
aliElectronRtc.stopLastmileDetect()
返回说明:0表示方法调用成功,其他表示方法调用失败。
- getCurrentConnectionStatus:获取当前网络连接状态。
aliElectronRtc.getCurrentConnectionStatus()
返回说明:返回当前网络连接状态 AliEngineConnectionStatus
- on:订阅事件
aliElectronRtc.on(event, handler)
| 参数 | 类型 | 描述 | | --- | --- | --- | | event | String | 事件名称 | | handler | Function | 回调函数 |
- off:取消订阅事件
aliElectronRtc.off(event, handler)
| 参数 | 类型 | 描述 | | --- | --- | --- | | event | String | 事件名称 | | handler | Function | 回调函数 |
回调文档
目录
| API | 描述 | 支持的最低版本 | | --- | --- | --- | | onJoinChannelResult | 加入频道结果的回调。 | 2.1.0 | | onLeaveChannelResult | 离开频道结果的回调。 | 2.1.0 | | onRemoteUserOnLineNotify | 远端用户上线的回调。 | 2.1.0 | | onRemoteUserOffLineNotify | 远端用户下线的回调。 | 2.1.0 | | onAudioPublishStateChanged | 音频推流变更的回调。 | 2.1.0 | | onVideoPublishStateChanged | 视频推流变更的回调。 | 2.1.0 | | onDualStreamPublishStateChanged | 次要流推流变更的回调。 | 2.1.0 | | onScreenSharePublishStateChangedWithInfo | 屏幕分享推流变更的回调(适用于Mac或windows端)。 | 2.1.0 | | onRemoteTrackAvailableNotify | 远端用户音视频流发生变化时的回调。 | 2.1.0 | | onAudioSubscribeStateChanged | 音频订阅情况变更的回调。 | 2.1.0 | | onVideoSubscribeStateChanged | 相机流订阅情况变更的回调。 | 2.1.0 | | onScreenShareSubscribeStateChanged | 屏幕分享流订阅情况变更的回调。 | 2.1.0 | | onSubscribeStreamTypeChanged | 大小流订阅情况变更的回调。 | 2.1.0 | | onOccurWarning | 警告回调。 | 2.1.0 | | onOccurError | 错误回调。 | 2.1.0 | | onBye | 被服务器踢出或者频道关闭时的回调。 | 2.1.0 | | onAudioDeviceStateChanged | 音频设备状态变更的回调。 | 2.1.0 | | onVideoDeviceStateChanged | 视频设备状态变更的回调。 | 2.1.0 | | onNetworkQualityChanged | 网络质量变化时的回调。 | 2.1.0 | | onUserAudioMuted | 对端用户停止音频数据发送的通知。 | 2.1.0 | | onUserVideoMuted | 对端用户发送视频黑帧数据发送的通知。 | 2.1.0 | | onUpdateRoleNotify | 用户角色发生改变时的回调。 | 2.1.0 | | onAudioPlayingStateChanged | 伴奏播放的回调。 | 2.1.0 | | onLastmileDetectResultWithQuality | 网络质量探测的回调。 | 2.1.0 | | onAudioDeviceRecordLevel | 音频采集设备测试的回调。 | 2.1.0 | | onAudioDevicePlayoutLevel | 音频播放设备测试回调。 | 2.1.0 | | onAudioDevicePlayoutEnd | 音频播放设备测试结束(音频文件播放完毕)时的回调。 | 2.1.0 | | onStats | 当前会话统计信息回调(2s触发一次)。 | 2.1.0 | | onLocalVideoStats | 本地视频统计信息回调(2s触发一次)。 | 2.1.0 | | onRemoteVideoStats | 远端视频统计信息回调(2s触发一次)。 | 2.1.0 | | onLocalAudioStats | 本地音频统计信息回调(2s触发一次)。 | 2.1.0 | | onRemoteAudioStats | 远端音频统计信息回调(2s触发一次)。 | 2.1.0 | | onMediaRecordEvent | 录制事件回调。 | 2.1.0 | | onAudioVolumeCallback | 用户音量大小的回调。 | 2.1.0 | | onActiveSpeaker | 订阅的当前说话人。 | 2.1.0 |
回调详情
- onJoinChannelResult:加入频道结果的回调。
aliElectronRtc.on("onJoinChannelResult", (result, channel, elapsed)=> {
// ...
})
| 参数 | 类型 | 描述 | | --- | --- | --- | | result | Number | 加入频道结果,成功返回0,失败返回错误码。 | | channel | String | 频道ID。 | | elapsed | Number | 加入频道耗时。 |
- onLeaveChannelResult:离开频道结果的回调。调用leaveChannel接口后返回,如果leaveChannel后直接释放SDK,将不会收到此回调。
aliElectronRtc.on("onJoinChannelResult", (result)=> {
// ...
})
| 参数 | 类型 | 描述 | | --- | --- | --- | | result | Number | 成功返回0,失败返回错误码信息。 |
- onRemoteUserOnLineNotify:远端用户上线的回调。
aliElectronRtc.on("onRemoteUserOnLineNotify", (uid, elapsed)=> {
// ...
})
| 参数 | 类型 | 描述 | | --- | --- | --- | | uid | String | 远端用户ID。 | | elapsed | Number | 用户加入频道时的耗时。 |
- onRemoteUserOffLineNotify:远端用户下线的回调。
aliElectronRtc.on("OnRemoteUserOffLineNotify", (uid, reason)=> {
// ...
})
| 参数 | 类型 | 描述 | | --- | --- | --- | | uid | String | 远端用户ID。 | | reason | AliEngineUserOfflineReason | 用户离线的原因。 |
- onAudioPublishStateChanged:音频推流变更的回调。
aliElectronRtc.on("onAudioPublishStateChanged", (oldState, newState, elapseSinceLastState, channel)=> {
// ...
})
| 名称 | 类型 | 描述 | | --- | --- | --- | | oldState | AliEnginePublishState | 之前的推流状态。 | | newState | AliEnginePublishState | 当前的推流状态。 | | elapseSinceLastState | Number | 状态变更时间间隔。 | | channel | String | 当前频道ID。 |
- onVideoPublishStateChanged:视频推流变更的回调。
aliElectronRtc.on("onVideoPublishStateChanged", (oldState, newState, elapseSinceLastState, channeluid, elapsed)=> {
// ...
})
| 名称 | 类型 | 描述 | | --- | --- | --- | | oldState | AliEnginePublishState | 之前的推流状态。 | | newState | AliEnginePublishState | 当前的推流状态。 | | elapseSinceLastState | Number | 状态变更时间间隔。 | | channel | String | 当前频道ID。 |
- onDualStreamPublishStateChanged:次要流推流变更的回调。
aliElectronRtc.on("onDualStreamPublishStateChanged", (oldState, newState, elapseSinceLastState, channel)=> {
// ...
})
| 名称 | 类型 | 描述 | | --- | --- | --- | | oldState | AliEnginePublishState | 之前的推流状态。 | | newState | AliEnginePublishState | 当前的推流状态。 | | elapseSinceLastState | Number | 状态变更时间间隔。 | | channel | String | 当前频道ID。 |
- onScreenSharePublishStateChangedWithInfo:屏幕分享推流变更的回调
aliElectronRtc.on("onRemoteUserOnLineNotify", (oldState, newState, elapseSinceLastState, channel, screenShareInfo)=> {
// ...
})
| 名称 | 类型 | 描述 | | --- | --- | --- | | oldState | AliEnginePublishState | 之前的推流状态。 | | newState | AliEnginePublishState | 当前的推流状态。 | | elapseSinceLastState | Number | 状态变更时间间隔。 | | channel | String | 当前频道ID。 | | screenShareInfo | AliEngineScreenShareInfo | 本次屏幕共享推流信息。 |
- onRemoteTrackAvailableNotify:远端用户音视频流发生变化时的回调。
aliElectronRtc.on("onRemoteTrackAvailableNotify", (uid, audioTrack, videoTrack)=> {
// ...
})
| 名称 | 类型 | 描述 | | --- | --- | --- | | uid | String | 远端用户ID。 | | audioTrack | AliEngineAudioTrack | 远端用户发生变化后的音频流。 | | videoTrack | AliEngineVideoTrack | 远端用户发生变化后的视频流。 |
- onAudioSubscribeStateChanged:音频订阅情况变更的回调。
aliElectronRtc.on("onAudioSubscribeStateChanged", (uid, oldState, newState, elapseSinceLastState, channel)=> {
// ...
})
| 名称 | 类型 | 描述 | | --- | --- | --- | | uid | String | 远端用户ID。 | | oldState | AliEngineSubscribeState | 之前的订阅状态。 | | newState | AliEngineSubscribeState | 当前的订阅状态。 | | elapseSinceLastState | Number | 状态变更时间间隔。 | | channel | String | 当前频道ID。 |
- onVideoSubscribeStateChanged:相机流订阅情况变更的回调。
aliElectronRtc.on("onVideoSubscribeStateChanged", (uid, oldState, newState, elapseSinceLastState, channel)=> {
// ...
})
| 名称 | 类型 | 描述 | | --- | --- | --- | | uid | String | 远端用户ID。 | | oldState | AliEngineSubscribeState | 之前的订阅状态。 | | newState | AliEngineSubscribeState | 当前的订阅状态。 | | elapseSinceLastState | Number | 状态变更时间间隔。 | | channel | String | 当前频道ID。 |
- onScreenShareSubscribeStateChanged:屏幕分享流订阅情况变更的回调。
aliElectronRtc.on("onRemoteUserOnLineNotify", (uid, oldState, newState, elapseSinceLastState, channel)=> {
// ...
})
| 名称 | 类型 | 描述 | | --- | --- | --- | | uid | String | 远端用户ID。 | | oldState | AliEngineSubscribeState | 之前的订阅状态。 | | newState | AliEngineSubscribeState | 当前的订阅状态。 | | elapseSinceLastState | Number | 状态变更时间间隔。 | | channel | String | 当前频道ID。 |
- onSubscribeStreamTypeChanged:大小流订阅情况变更的回调。
aliElectronRtc.on("onSubscribeStreamTypeChanged", (uid, oldStreamType, newStreamType, elapseSinceLastState, channel)=> {
// ...
})
| 名称 | 类型 | 描述 | | --- | --- | --- | | uid | String | 远端用户ID。 | | oldStreamType | AliEngineVideoStreamType | 之前的订阅状态。 | | newStreamType | AliEngineVideoStreamType | 当前的订阅状态。 | | elapseSinceLastState | Number | 状态变更时间间隔。 | | channel | String | 当前频道ID。 |
- onOccurWarning:警告回调。目前警告回调可以忽略,不会影响正常使用。
aliElectronRtc.on("onOccurWarning", (warn, msg)=> {
// ...
})
| 参数 | 类型 | 描述 | | --- | --- | --- | | warn | Number | 警告类型。 | | msg | String | 警告说明。 |
- onOccurError:错误回调。
aliElectronRtc.on("onOccurError", (error, msg)=> {
// ...
})
| 参数 | 类型 | 描述 | | --- | --- | --- | | error | Number | 错误类型。 当参数error为16908812或33620229时,您需要先释放实例,重新创建SDK实例,再调用joinChannel加入频道。 | | msg | String | 错误说明。 |
- onBye:被服务器踢出或者频道关闭时的回调。
aliElectronRtc.on("onBye", (code)=> {
// ...
})
| 参数 | 类型 | 描述 | | --- | --- | --- | | code | Number | onBye类型,详情请参见AliEngineOnByeType。 |
- onAudioDeviceStateChanged:音频设备状态变更的回调。
aliElectronRtc.on("onAudioDeviceStateChanged", (deviceInfo, deviceType, deviceState)=> {
// ...
})
| 参数 | 类型 | 描述 | | --- | --- | --- | | deviceInfo | AliEngineDeviceInfo | 外接设备信息。 | | deviceType | AliEngineExternalDeviceType | 外接设备类型。 | | deviceState | AliEngineExternalDeviceState | 外接设备状态。 |
- onVideoDeviceStateChanged:视频设备状态变更的回调。
aliElectronRtc.on("onVideoDeviceStateChanged", (deviceInfo, deviceType, deviceState)=> {
// ...
})
| 参数 | 类型 | 描述 | | --- | --- | --- | | deviceInfo | AliEngineDeviceInfo | 外接设备信息。 | | deviceType | AliEngineExternalDeviceType | 外接设备类型。 | | deviceState | AliEngineExternalDeviceState | 外接设备状态。 |
- onNetworkQualityChanged:网络质量变化时的回调。
aliElectronRtc.on("onNetworkQualityChanged", (uid, upQuality, downQuality)=> {
// ...
})
| 参数 | 类型 | 描述 | | --- | --- | --- | | uid | String | 网络质量发生变化的用户ID,用户ID为空表示本地,其他表示远端。 | | upQuality | AliEngineNetworkQuality | 上行网络质量。 | | downQuality | AliEngineNetworkQuality | 下行网络质量。 |
- onConnectionStatusChange:网络连接状态改变的回调。
aliElectronRtc.on("onConnectionStatusChange", (status, reason)=> {
// ...
})
| 名称 | 类型 | 描述 | | --- | --- | --- | | status | Number | 当前网络链接状态,详情请参见AliEngineConnectionStatus。 | | reason | Number | 网络链接状态改变原因,详情请参见AliEngineConnectionStatusChangeReason。 |
- onUserAudioMuted:对端用户停止音频数据发送的通知。
aliElectronRtc.on("onUserAudioMuted", (uid, isMute)=> {
// ...
})
| 名称 | 类型 | 描述 | | --- | --- | --- | | uid | String | 执行muteAudio的用户。 | | isMute | Boolean | 是否静音 |
- onUserVideoMuted:对端用户发送视频黑帧数据发送的通知。
aliElectronRtc.on("onUserVideoMuted", (uid, isMute)=> {
// ...
})
| 名称 | 类型 | 描述 | | --- | --- | --- | | uid | String | 执行EnableLocalVideo的用户。 | | isMute | Boolean | 是否打开相机流采集 |
- onUpdateRoleNotify:用户角色发生改变时的回调。
aliElectronRtc.on("onUpdateRoleNotify", (oldRole, newRole)=> {
// ...
})
| 参数 | 类型 | 描述 | | --- | --- | --- | | oldRole | AliEngineClientRole | 切换前的角色。 | | newRole | AliEngineClientRole | 切换后的角色。 |
- onAudioPlayingStateChanged:伴奏播放的回调。
aliElectronRtc.on("onAudioPlayingStateChanged", (type, errorCode)=> {
// ...
})
| 名称 | 类型 | 描述 | | --- | --- | --- | | type | AliEngineAudioPlayingType | 当前播放状态。 | | errorCode | AliEngineAudioPlayingErrorCode | 错误码。 |
- onLastmileDetectResultWithQuality:网络质量探测的回调。
aliElectronRtc.on("onLastmileDetectResultWithQuality", (networkQuality)=> {
// ...
})
| 参数 | 类型 | 描述 | | --- | --- | --- | | networkQuality | AliEngineNetworkQuality | 网络质量。 |
- onAudioDeviceRecordLevel:音频采集设备测试的回调。
aliElectronRtc.on("onAudioDeviceRecordLevel", (level)=> {
// ...
})
| 参数 | 类型 | 描述 | | --- | --- | --- | | level | Number | 音频采集设备音量值。 |
- onAudioDevicePlayoutLevel:音频播放设备测试回调。
aliElectronRtc.on("onAudioDevicePlayoutLevel", (level)=> {
// ...
})
| 参数 | 类型 | 描述 | | --- | --- | --- | | level | Number | 音频采集设备音量值。 |
- onAudioDevicePlayoutEnd:音频播放设备测试结束(音频文件播放完毕)时的回调。
aliElectronRtc.on("onAudioDevicePlayoutEnd", ()=> {
// ...
})
- onStats:当前会话统计信息回调(2s触发一次)。
aliElectronRtc.on("onStats", (stats)=> {
// ...
})
| 参数 | 类型 | 描述 | | --- | --- | --- | | stats | AliEngineStats | 会话统计信息。 |
- onLocalVideoStats:本地视频统计信息回调(2s触发一次)。
aliElectronRtc.on("onLocalVideoStats", (localVideoStats)=> {
// ...
})
| 参数 | 类型 | 描述 | | --- | --- | --- | | localVideoStats | AliEngineLocalVideoStats | 本地视频统计信息。 |
- onRemoteVideoStats:远端视频统计信息回调(2s触发一次)。
aliElectronRtc.on("onRemoteVideoStats", (remoteVideoStats)=> {
// ...
})
| 参数 | 类型 | 描述 | | --- | --- | --- | | remoteVideoStats | AliEngineRemoteVideoStats | 远端视频统计信息。 |
- onLocalAudioStats:本地音频统计信息回调(2s触发一次)。
aliElectronRtc.on("onLocalAudioStats", (localAudioStats)=> {
// ...
})
| 参数 | 类型 | 描述 | | --- | --- | --- | | localAudioStats | AliEngineLocalAudioStats | 本地音频统计信息。 |
- onRemoteAudioStats:远端音频统计信息回调(2s触发一次)。
aliElectronRtc.on("onRemoteAudioStats", (remoteAudioStats)=> {
// ...
})
| 参数 | 类型 | 描述 | | --- | --- | --- | | remoteAudioStats | AliEngineRemoteAudioStats | 远端音频统计信息。 |
- onMediaRecordEvent:录制事件回调。
aliElectronRtc.on("onMediaRecordEvent", (event, filePath)=> {
// ...
})
| 参数 | 类型 | 说明 | | --- | --- | --- | | event | Number | 录制事件。取值:0:录制开始。1:录制结束。2:打开文件失败。3:写文件失败。| | filePath | String | 录制文件路径。 |
- onAudioVolumeCallback:用户音量大小的回调。
aliElectronRtc.on("onAudioVolumeCallback", (volumeInfo)=> {
// ...
})
| 参数 | 类型 | 描述 | | --- | --- | --- | | volumeInfo | AliEngineUserVolumeInfo | 说话人结构体信息。AliEngineUserVolumeInfo中userid为0表示本地推流音量,1表示远端混音音量,其他表示用户的音量。 |
- onActiveSpeaker:订阅的当前说话人。当前时间段说话可能性最大的用户uid。如果返回的uid为0,则默认为本地用户。
aliElectronRtc.on("onActiveSpeaker", (uid)=> {
// ...
})
| 名称 | 类型 | 描述 | | --- | --- | --- | | uid | String | 用户ID。 |
数据类型
目录
| 数据类型 | 描述 | 支持的最低版本 | | --- | --- | --- | | AliEngineAudioPlayingType | 音乐伴奏播放状态。 | 2.1.0 | | AliEngineAudioPlayingErrorCode | 音乐伴奏播放错误码。 | 2.1.0 | | AliEngineConnectionStatus | 网络连接状态。 | 2.1.0 | | AliEngineConnectionStatusChangeReason | 网络连接状态变更原因。 | 2.1.0 | | AliEnginePublishState | 推流状态。 | 2.1.0 | | AliEngineSubscribeState | 订阅状态。 | 2.1.0 | | AliEngineVideoTrack | 视频流类型。 | 2.1.0 | | AliEngineAudioTrack | 音频流类型。 | 2.1.0 | | AliEngineVideoStreamType | 相机流类型。 | 2.1.0 | | AliEngineVideoRecordSource | 录制视频数据源。 | 2.1.0 | | AliEngineRotationMode | 视频旋转角度。 | 2.1.0 | | AliEngineAudioSampleRate | 音频采样率类型。 | 2.1.0 | | AliEngineNetworkQuality | 网络质量。 | 2.1.0 | | AliEngineAuthInfo | 鉴权信息。 | 2.1.0 | | AliEngineOnByeType | OnBye类型。 | 2.1.0 | | AliEngineUserOfflineReason | 用户离线原因。 | 2.1.0 | | AliEngineScreenShareType | 桌面分享类型。 | 2.1.0 | | AliEngineClientRole | 角色类型。 | 2.1.0 | | AliEngineExternalDeviceType | 外接设备类型。 | 2.1.0 | | AliEngineExternalDeviceState | 外接设备状态。 | 2.1.0 | | AliEngineMuteLocalAudioMode | 本地静音模式。 | 2.1.0 | | AliEngineUserVolumeInfo | 用户音量信息。 | 2.1.0 | | AliEngineScreenShareRegion | 屏幕共享区域。 | 2.1.0 | | AliEngineScreenShareEncoderConfiguration | 屏幕流码属性设置。 | 2.1.0 | | AliEngineScreenShareConfig | 屏幕共享参数配置。 | 2.1.0 | | AliEngineScreenShareInfo | 屏幕共享配置信息。 | 2.1.0 | | AliEngineStats | 会话数据统计信息。 | 2.1.0 | | AliEngineLocalVideoStats | 本地视频统计信息。 | 2.1.0 | | AliEngineRemoteVideoStats | 远端视频统计信息。 | 2.1.0 | | AliEngineLocalAudioStats | 本地音频统计信息。 | 2.1.0 | | AliEngineRemoteAudioStats | 远端音频统计信息。 | 2.1.0 | | AliEngineAudioProfile | 音频编码配置。 | 2.1.0 | | AliEngineAudioScenario | 音频场景。 | 2.1.0 | | AliEngineRecordType | 录制类型。 | 2.1.0 | | AliEngineRecordFormat | 录制格式。 | 2.1.0 | | AliEngineAudioQuality | 录制音频质量。 | 2.1.0 | | AliEngineVideoQuality | 录制视频质量。 | 2.1.0 | | AliEngineRecordAudioConfig | 录制音频设置。 | 2.1.0 | | AliEngineRecordVideoConfig | 录制视频设置。 | 2.1.0 | | AliEngineFrameRate | 视频帧率。 | 2.1.0 | | AliEngineVideoEncoderBitrate | 视频编码码率。 | 2.1.0 | | AliEngineVideoEncoderOrientationMode | 视频输出模式。 | 2.1.0 | | AliEngineVideoMirrorMode | 视频镜像模式。 | 2.1.0 | | AliEngineVideoDimensions | 视频分辨率。 | 2.1.0 | | AliEngineVideoEncoderConfiguration | 视频编码属性设置。 | 2.1.0 | | AliEngineChannelProfile | 频道类型。 | 2.1.0 | | AliEngineErrorCode | SDK错误码。 | 2.1.0 | | AliEngineBeautyConfig | 美颜设置。 | 2.1.0 | | AliEngineDeviceInfo | 设备信息。 | 2.1.0 | | ChannelMediaOptions | 入会选项 | 2.1.0 |
数据详情
注:枚举数据没有标注枚举值的默认按照表格从0开始枚举递增
- AliEngineAudioPlayingType:音乐伴奏播放状态。
| 枚举名 | 描述 | 枚举值 | | --- | --- | --- | | AliEngineAudioPlayingStarted | 开始播放。 | 100 | | AliEngineAudioPlayingStopped | 停止播放。 | 101 | | AliEngineAudioPlayingPaused | 暂停播放。 | 102 | | AliEngineAudioPlayingResumed | 重启播放。 | 103 | | AliEngineAudioPlayingEnded | 播放结束。 | 104 | | AliEngineAudioPlayingBuffering | 播放缓冲中。 | 105 | | AliEngineAudioPlayingBufferingEnd | 播放缓冲完。 | 106 | | AliEngineAudioPlayingFailed | 播放失败。 | 107 |
- AliEngineAudioPlayingErrorCode:音乐伴奏播放错误码。
| 枚举名 | 描述 | 枚举值 | | --- | --- | --- | | AliEngineAudioPlayingNoError | 伴奏播放正常。 | 0 | | AliEngineAudioPlayingOpenFailed | 伴奏播放打开失败。 | -100 | | AliEngineAudioPlayingDecodeFailed | 伴奏播放解码失败。 | -101 |
- AliEngineConnectionStatus:网络连接状态。
| 枚举名 | 描述 | | --- | --- | | AliEngineConnectionInit | 初始化完成。 | | AliEngineConnectionDisconnected | 网络连接断开。 | | AliEngineConnectionConnecting | 建立网络连接中。 | | AliEngineConnectionConnected | 网络已连接。 | | AliEngineConnectionReconnecting | 重新建立网络连接中。 | | AliEngineConnectionFailed | 网络连接失败。 |
- AliEngineConnectionStatusChangeReason:网络连接状态变更原因。
| 枚举名 | 描述 | | --- | --- | | AliEngineConnectionChangedDummyReason | 未知原因。 | | AliEngineConnectionMediaPathChanged | 媒体通道变更。 | | AliEngineConnectionSignalingHeartbeatTimeout | 心跳超时。 | | AliEngineConnectionSignalingHeartbeatAlive | 心跳恢复。 | | AliEngineConnectionSignalingHttpdnsResolved | DNS解析成功。 | | AliEngineConnectionSignalingHttpdnsFailure | DNS解析失败。 | | AliEngineConnectionSignalingGslbFailure | GSLB请求失败。 | | AliEngineConnectionSignalingGslbSucccess | GSLB请求成功。 | | AliEngineConnectionSignalingJoinChannelFailure | 加入频道失败。 | | AliEngineConnectionSignalingJoinChannelSuccess | 加入频道成功。 | | AliEngineConnectionSignalingLeaveChannel | 离开频道。 | | AliEngineConnectionSignalingConnecting | 信令建立连接。 |
- AliEnginePublishState:推流状态。
| 枚举名 | 描述 | | --- | --- | | AliEngineStatsPublishIdle | 初始状态。 | | AliEngineStatsNoPublish | 未推流。 | | AliEngineStatsPublishing | 推流中。 | | AliEngineStatsPublished | 已推流。 |
- AliEngineSubscribeState:订阅状态。
| 枚举名 | 描述 | | --- | --- | | AliEngineStatsSubscribeIdle | 初始状态。 | | AliEngineStatsNoSubscribe | 未订阅。 | | AliEngineStatsSubscribing | 订阅中。 | | AliEngineStatsSubscribed | 已订阅。 |
- AliEngineVideoTrack:视频流的类型。
| 枚举名 | 描述 | | --- | --- | | AliEngineVideoTrackNo | 无视频流。 | | AliEngineVideoTrackCamera | 摄像头流。 | | AliEngineVideoTrackScreen | 屏幕共享流。 | | AliEngineVideoTrackBoth | 摄像头和屏幕共享。 |
- AliEngineAudioTrack:音频流的类型。
| 枚举名 | 描述 | | --- | --- | | AliEngineAudioTrackNo | 无音频流。 | | AliEngineAudioTrackMic | 麦克风流。 |
- AliEngineVideoStreamType:相机流类型。
| 枚举名 | 描述 | | --- | --- | | AliEngineVideoStreamTypeNone | 无视频流。 | | AliEngineVideoStreamTypeHigh | 大流。 | | AliEngineVideoStreamTypeLow | 小流。 |
- AliEngineVideoRecordSource:录制视频数据源。
| 枚举名 | 描述 | | --- | --- | | AliEngineVideoRecordSourceCamera | 摄像头流。 | | AliEngineVideoRecordSourceScreenShare | 屏幕共享流。 | | AliEngineVideoRecordSourceBoth | 摄像头和屏幕共享流。 |
- AliEngineRotationMode:视频旋转角度。
| 枚举名 | 描述 | 枚举值 | | --- | --- | --- | | AliEngineRotationMode_0 | 旋转0度。 | 0 | | AliEngineRotationMode_90 | 旋转90度。 | 90 | | AliEngineRotationMode_180 | 旋转180度。 | 180 | | AliEngineRotationMode_270 | 旋转270度。 | 270 |
- AliEngineAudioSampleRate:音频采样率类型。
| 枚举名 | 描述 | | --- | --- | | AliEngineAudioSampleRate_8000 | 8000Hz。 | | AliEngineAudioSampleRate_11025 | 11025Hz。 | | AliEngineAudioSampleRate_16000 | 16000Hz。 | | AliEngineAudioSampleRate_22050 | 22050Hz。 | | AliEngineAudioSampleRate_32000 | 32000Hz。 | | AliEngineAudioSampleRate_44100 | 44100Hz。 | | AliEngineAudioSampleRate_48000 | 48000Hz。 |
- AliEngineNetworkQuality:网络质量。
| 枚举名 | 描述 | | --- | --- | | AliEngineNetworkQualityExcellent | 网络极好,流畅度清晰度质量好。 | | AliEngineNetworkQualityGood | 网络质量好,流畅度清晰度和极好差不多。 | | AliEngineNetworkQualityPoor | 网络质量较差,音视频流畅度清晰度有瑕疵,不影响沟通。 | | AliEngineNetworkQualityBad | 网络质量差,视频卡顿严重,音频能正常沟通。 | | AliEngineNetworkQualityVeryBad | 网络质量极差,基本无法沟通。 | | AliEngineNetworkQualityDisconnect | 网络中断。 | | AliEngineNetworkQualityUnknow | 未知。 |
- AliEngineAuthInfo:鉴权信息
| 参数 | 类型 | 描述 | | --- | --- | --- | | channel | String | 频道号。 | | userid | String | 用户ID。 | | appid | String | 应用ID。 | | nonce | String | 令牌随机码。 | | token | String | 令牌。 | | timestamp | Number | 时间戳。 | | gslb | Array | 服务器地址。 | | displayName | String | 用户名字 |
- AliEngineOnByeType:OnBye类型。
| 枚举名 | 描述 | 枚举值 | | --- | --- | --- | | AliEngineOnByeBeKickOut | 当前用户被踢出频道。 | 1 | | AliEngineOnByeChannelTerminated | 频道结束。 | 2 | | AliEngineOnByeUserReplaced | 相同用户在其他设备加入频道,当前设备被下线。 | 3 |
- AliEngineUserOfflineReason:用户离线原因。
| 枚举名 | 描述 | | --- | --- | | AliEngineUserOfflineQuit | 用户主动离开。 | | AliEngineUserOfflineDropped | 因过长时间收不到对方数据包,超时掉线。 | | AliEngineUserOfflineBecomeAudience | 用户身份从主播切换为观众时触发。 |
- AliEngineScreenShareType:桌面分享类型。
| 枚举名 | 描述 | | --- | --- | | AliEngineScreenShareDesktop | 桌面分享。 | | AliEngineScreenShareWindow | 窗口分享。 |
- AliEngineClientRole:角色类型。
| 枚举名 | 描述 | 枚举值 | | --- | --- | --- | | AliEngineClientRoleInteractive | 参与互动角色。 | 1 | | AliEngineClientRoleLive | 仅观看角色。 | 2 |
- AliEngineExternalDeviceType:外接设备类型。
| 枚举名 | 描述 | 枚举值 | | --- | --- | --- | | AliEngineExternalTypeUnknown | 未知类型。 | -1 | | AliEngineExternalTypeAudioCapture | 音频采集设备。 | 0 | | AliEngineExternalTypeAudioPlayout | 音频播放设备。 | 1 | | AliEngineExternalTypeVideoCapture | 视频采集设备。 | 2 |
- AliEngineExternalDeviceState:外接设备状态。
| 枚举名 | 描述 | | --- | --- | | AliEngineExternalDeviceAdd | 新增外接设备。 | | AliEngineExternalDeviceRemove | 移除外接设备。 |
- AliEngineMuteLocalAudioMode:本地静音模式。
| 枚举名 | 描述。 | | --- | --- | | AliEngineMuteLocalAudioModeDefault | 默认静音。 | | AliEngineMuteLocalAudioModeMuteAll | 禁止本地所有音。 | | AliEngineMuteLocalAudioModeMuteOnlyMic | 禁止麦克风。 |
- AliEngineUserVolumeInfo:用户音量信息。
| 参数 | 类型 | 描述 | | --- | --- | --- | | uid | String | 用户ID(从AppServer下发的唯一标示符)。 | | volume | Number | 用户音量,取值范围:[0,255]。 | | speechState | Number | 语音状态 0:当前未说话。1:当前在说话。|
- AliEngineScreenShareRegion:屏幕共享区域。
| 参数 | 类型 | 描述 | | --- | --- | --- | | originX | Number | x轴。 | | originY | Number | y轴。 | | width | Number | 宽度。 | | height | Number | 高度。 |
- AliEngineScreenShareEncoderConfiguration:屏幕流码属性设置。
| 参数 | 类型 | 描述 | | --- | --- | --- | | dimensions | AliEngineVideoDimensions | 视频分辨率。 | | frameRate | AliEngineFrameRate | 视频帧率。 | | bitrate | Number | 码率。 | | rotationMode | AliEngineRotationMode | 视频旋转角度。 |
- AliEngineScreenShareConfig:屏幕共享参数配置。
| 参数 | 类型 | 描述 | | --- | --- | --- | | isShareByRegion | Boolean | 是否指定区域,默认false。 | | shareRegion | AliEngineScreenShareRegion | 屏幕分享区域。 |
- AliEngineScreenShareInfo:屏幕共享配置信息。
| 参数 | 类型 | 描述 | | --- | --- | --- | | shareType | AliEngineScreenShareType | 桌面分享类型。 | | shareSourceId | Number | 共享源ID。 | | shareConfig | AliEngineScreenShareConfig | 屏幕共享参数配置。 |
- AliEngineStats:会话数据统计信息。
| 参数 | 类型 | 描述 | | --- | --- | --- | | sentKBitrate | Number | 发送码率。 | | rcvdKBitrate | Number | 接收码率。 | | sentBytes | Number | 发送字节数。 | | rcvdBytes | Number | 接收字节数。 | | systemCpu | Number | 电脑CPU使用率。 | | appCpu | Number | RTC进程CPU使用率。 | | videoRcvdKBitrate | Number | 视频接收码率。 | | videoSentKBitrate | Number | 视频发送码率。 | | callDuration | Number | 通话时长,单位:秒。 | | sentLossRate | Number | 发送丢包率。 | | lastmileDelay | Number | 延时时长,单位:毫秒。 |
- AliEngineLocalVideoStats:本地视频统计信息。
| 参数 | 类型 | 描述 | | --- | --- | --- | | track | AliEngineVideoTrack | 视频流类型。 | | sentBitrate | Number | 发送码率。 | | sentFps | Number | 发送帧率。 | | encodeFps | Number | 编码器输出帧率。 |
- AliEngineRemoteVideoStats:远端视频统计信息。
| 参数 | 类型 | 描述 | | --- | --- | --- | | userid | String | 用户ID。 | | track | AliEngineVideoTrack | 视频流类型。 | | width | Number | 宽。 | | height | Number | 高。 | | decodeFps | Number | 编码器输出帧率。 | | renderFps | Number | 渲染器输出帧率。 | | frozenTimes | Number | 卡顿次数。 |
- AliEngineLocalAudioStats:本地音频统计信息。
| 参数 | 类型 | 描述 | | --- | --- | --- | | track | AliEngineAudioTrack | 音频流类型。 | | sentBitrate | Number | 发送码率。 | | sentSamplerate | Number | 发送的采样率。 | | numChannel | Number | 声道数。 | | inputLevel | Number | 输入音量。 |
- AliEngineRemoteAudioStats:远端音频统计信息。
| 参数 | 类型 | 描述 | | --- | --- | --- | | userid | String | 远端用户UID | | track | AliEngineAudioTrack | 音频流类型 | | quality | Number | 音质 | | networkTransportDelay | Number | 网络传输延时 | | jitterBufferDelay | Number | jitterBuffer延时 | | audioLossRate | Number | 音频丢包率 | | rcvdBitrate | Number | 接收码率 | | totalFrozenTimes | Number | 卡顿次数 |
- AliEngineAudioProfile:音频编码配置。
| 枚举名 | 描述 | 枚举值 | | --- | --- | --- | | AliEngineLowQualityMode | 低音质。 | 0x0000 | | AliEngineBasicQualityMode | 标准音质。 | 0x0001 | | AliEngineHighQualityMode | 高音质。 | 0x0010 | | AliEngineStereoHighQualityMode | 立体高音质。 | 0x0011 | | AliEngineSuperHighQualityMode | 超高音质。 | 0x0012 | | AliEngineStereoSuperHighQualityMode | 立体超高音质。 | 0x0013 |
- AliEngineAudioScenario:音频场景。
| 枚举名 | 描述 | 枚举值 | | --- | --- | --- | | AliEngineSceneDefaultMode | 默认场景。 | 0x0000 | | AliEngineSceneEducationMode | 教育场景。 | 0x0100 | | AliEngineSeneMediaMode | 媒体场景。 | 0x0200 | | AliEngineSceneMusicMode | 音乐场景。 | 0x0300 |
- AliEngineRecordType:录制类型。
| 枚举名 | 描述 | | --- | --- | | AliEngineRecordTypeAudio | 纯音频录制。 | | AliEngineRecordTypeVideo | 纯视频录制。 | | AliEngineRecordTypeBoth | 音视频录制。 |
- AliEngineRecordFormat:录制格式。
| 枚举名 | 描述 | | --- | --- | | AliEngineRecordFormatAAC | AAC文件。 | | AliEngineRecordFormatWAV | WAV文件。 | | AliEngineRecordFormatMP4 | MP4文件。 |
- AliEngineAudioQuality:录制音频质量。
| 枚举名 | 描述 | | --- | --- | | AliEngineAudioQualityLow | 低。 | | AliEngineAudioQualityMidium | 中。 | | AliEngineAudioQualityHigh | 高。 |
- AliEngineVideoQuality:录制视频质量。
| 枚举名 | 描述 | | --- | --- | | AliEngineVideoQualityDefault | 默认,和采集保持一致(例如采集能力为1080P,默认就录制1080P的视频流)。 |
- AliEngineRecordAudioConfig:录制音频设置。
| 参数 | 类型 | 描述 | | --- | --- | --- | | sampleRate | AliEngineAudioSampleRate | 音频采样率。 | | quality | AliEngineAudioQuality | 音频质量。 | | externalPcmCaptureRecording | Boolean | 外部PCM输入录制。 | | externalPcmRenderRecording | Boolean | 外部PCM渲染录制。 |
- AliEngineRecordVideoConfig:录制视频设置。
| 参数 | 类型 | 描述 | | --- | --- | --- | | fps | Number | 帧率。 | | bitrate | Number | 码率。 | | quality | AliEngineVideoQuality | 视频质量。 | | sourceType | AliEngineVideoRecordSource | 视频源类型。 |
- AliEngineFrameRate:视频帧率。
| 枚举值 | 描述 | 枚举值 | | --- | --- | --- | | AliEngineFrameRateFps5 | 5 fps。 | 5 | | AliEngineFrameRateFps10 | 10 fps。 | 10 | | AliEngineFrameRateFps15 | 15 fps。 | 15 | | AliEngineFrameRateFps20 | 20 fps。 | 20 | | AliEngineFrameRateFps25 | 25 fps。 | 25 | | AliEngineFrameRateFps30 | 30 fps。 | 30 |
- AliEngineVideoEncoderBitrate:视频编码码率。
| 枚举值 | 描述 | | --- | --- | | AliEngineVideoStandardBitrate | 标准编码码率。 |
- AliEngineVideoEncoderOrientationMode:视频输出模式。
| 枚举值 | 描述 | | --- | --- | | AliEngineVideoEncoderOrientationModeAdaptive | 自适应模式(默认值)。 | | AliEngineVideoEncoderOrientationModeFixedLandscape | 横向模式。 | | AliEngineVideoEncoderOrientationModeFixedPortrait | 纵向模式。 |
- AliEngineVideoMirrorMode:视频镜像模式。
| 枚举值 | 描述 | | --- | --- | | AliEngineVideoMirrorModeDisabled | 无镜像。 | | AliEngineVideoMirrorModeEnable | 镜像。 |
- AliEngineVideoDimensions:视频分辨率。
| 参数 | 类型 | 描述 | | --- | --- | --- | | width | Number | 宽。 | | height | Number | 高。 |
- AliEngineVideoEncoderConfiguration:视频编码属性设置。
| 参数 | 类型 | 描述 | | --- | --- | --- | | dimensions | AliEngineVideoDimensions | 视频分辨率。 | | frameRate | AliEngineFrameRate | 视频帧率。 | | bitrate | Number | 码率。 | | orientationMode | AliEngineVideoEncoderOrientationMode | 视频输出模式。 | | mirrorMode | AliEngineVideoMirrorMode | 视频镜像模式。 | | rotationMode | AliEngineRotationMode | 视频旋转模式。 |
- AliEngineChannelProfile:频道类型。
| 枚举名 | 描述 | | --- | --- | | AliEngineCommunication | 通信模式。 | | AliEngineInteractiveLive | 互动模式。 |
- AliEngineErrorCode:SDK错误码。
| 枚举名 | 描述 | | --- | --- | | AliEngineErrorJoinBadAppId | App ID不存在。 | | AliEngineErrorJoinInvaildAppId | App ID已失效。 | | AliEngineErrorJoinBadChannel | 频道不存在。 | | AliEngineErrorJoinInvaildChannel | 频道已失效。 | | AliEngineErrorJoinBadToken | Token不存在。 | | AliEngineErrorJoinTimeout | 加入频道超时。 | | AliEngineErrorJoinBadParam | 加入频道参数错误。 | | AliEngineErrorJoinChannelFailed | 加入频道失败。 | | AliEngineErrorMicOpenFail | 采集设备初始化失败。 | | AliEngineErrorSpeakerOpenFail | 播放设备初始化失败。 | | AliEngineErrorMicInterrupt | 采集过程中出现异常。 | | AliEngineErrorSpeakerInterrupt | 播放过程中出现异常。 | | AliEngineErrorMicAuthFail | 麦克风设备授权失败。 | | AliEngineErrorMicNotAvailable | 麦克风设备未授权。 | | AliEngineErrorSpeakerNotAvailable | 无可用的音频采集设备。 | | AliEngineErrorCameraOpenFail | 相机设备初始化失败。 | | AliEngineErrorCameraInterrupt | 相机采集中发生异常。 | | AliEngineErrorVideoDisplayOpenFail | 渲染设备初始化失败。 | | AliEngineErrorVideoDisplayInterrupt | 渲染过程中出现异常。 | | AliEngineErrorAudioBufferFull | 音频输入的buffer已满。 | | AliEngineErrorVideoBufferFull | 视频输入的buffer已满。 | | AliEngineErrorAudioStreamError | 音频流错误。 | | AliEngineErrorAudioFileOpenFail | 音频文件打开失败。 | | AliEngineErrorAudioFormatNotSupported | 音频格式不支持。 | | AliEngineErrorIceConnectionConnectFail | 媒体通道建立失败。 | | AliEngineErrorIceConnectionReconnectFail | 媒体通道重连失败。 | | AliEngineErrorIceConnectionHeartbeatTimeout | 信令心跳超时。 | | AliEngineErrorLowLatencyLiveCommunicationFail | 低延时互动直播信令失败。 | | AliEngineErrorLowLatencyLiveMediaSettingFail | 低延时互动直播媒体设置错误。 | | AliEngineErrorLowLatencyLiveNoneBroadcaster | 低延时互动直播当前房间没有主播推流。 | | AliEngineErrorLowLatencyLiveNeedRestart | 低延时互动直播错误,应用层需要重新创建新的SDK实例。 | | AliEngineErrorLowLatencyLiveNeedRestartAgainLater | 低延时互动直播错误,应用层需要稍等一定时间(自定义间隔)重新创建新的SDK实例。 | | AliEngineErrorLowLatencyLiveServiceUnavailable | 低延时互动直播服务不可用或者服务降级。 | | AliEngineErrorLowLatencyLiveMediaConnectionInterrruption | 低延时互动直播网络中断错误。 | | AliEngineErrorUpdateRoleChannel | 更新频道角色失败。 | | AliEngineErrorPublishInvaild | 推流无效。 | | AliEngineErrorPublishNotJoinChannel | 未入会推流错误。 | | AliEngineErrorPublishAudioStreamFailed | 推音频流失败。 | | AliEngineErrorPublishVideoStreamFailed | 推视频流失败。 | | AliEngineErrorPublishDualStreamFailed | 推双流失败。 | | AliEngineErrorPublishScreenShareFailed | 推共享流失败。 | | AliEngineErrorPublishScreenShareConfigError | 推共享流配置失败。 | | AliEngineErrorSubscribeInvaild | 订阅无效。 | | AliEngineErrorSubscribeNotJoinChannel | 未入会订阅错误。 | | AliEngineErrorSubscribeAudioStreamFailed | 订阅音频流失败。 | | AliEngineErrorSubscribeVideoStreamFailed | 订阅视频流失败。 | | AliEngineErrorSubscribeDualStreamFailed | 订阅双流失败。 | | AliEngineErrorSubscribeScreenShareFailed | 订阅共享流失败。 | | AliEngineErrorInvaildState | SDK内部状态错误。 | | AliEngineErrorSessionRemoved | session已经被移除。 | | AliEngineErrorInvaildArgument | 无效的参数。 | | AliEngineErrorInner | SDK内部错误。 |
- AliEngineBeautyConfig:美颜设置。
| 参数 | 类型 | 描述 | | --- | --- | --- | | whiteningLevel | Number | 美白,范围:[0,1],数值越大美白效果越好。 | | smoothnessLevel | Number | 磨皮,范围:[0,1],数值越大磨皮效果越好。 |
- AliEngineDeviceInfo:设备信息。
| 参数 | 类型 | 描述 | | --- | --- | --- | | deviceName | String | 设备名称。 | | deviceID | String | 设备ID。 |
- ChannelMediaOptions:入会选项
| 参数 | 类型 | 描述 | | --- | --- | --- | | autoSubscribeAudio | Boolean | 自动订阅音频(默认true) | | autoSubscribeVideo | Boolean | 自动订阅视频(默认true) |