产品动态
产品近期公告
关于 TRTC Live 正式上线的公告
关于TRTC Conference 正式版上线的公告
Conference 商业化版本即将推出
关于多人音视频 Conference 开启内测公告
关于音视频通话 Call 正式版上线的公告
关于腾讯云音视频终端 SDK 播放升级及新增授权校验的公告
关于 TRTC 应用订阅套餐服务上线的相关说明
属性名 | 类型 | 描述 |
microphoneStatus | 麦克风状态。 | |
microphoneLastError | 麦克风错误,用于出现报错时提取错误信息。 | |
captureVolume | Int | 采集音量,取值范围 [0, 100]。 |
currentMicVolume | Int | 当前用户实际输出音量。 |
outputVolume | Int | 最大输出音量,取值范围 [0, 100]。 |
cameraStatus | 摄像头状态。 | |
cameraLastError | 摄像头错误,用于出现报错时提取错误信息。 | |
isFrontCamera | Bool | 是否为前置摄像头。 |
localMirrorType | 镜像状态。 | |
localVideoQuality | 本地视频质量。 | |
currentAudioRoute | 当前音频路由位置。 | |
screenStatus | 屏幕分享状态。 | |
networkInfo | 网络信息。 |
函数名 | 描述 |
单例对象。 | |
打开本地麦克风。 | |
关闭本地麦克风。 | |
设置采集音量。 | |
设置输出音量。 | |
设置音频路由。 | |
开始摄像头测试。 | |
停止摄像头测试。 | |
打开本地摄像头。 | |
关闭本地摄像头。 | |
切换摄像头。 | |
切换镜像状态。 | |
更新视频质量。 | |
开启屏幕分享。 | |
关闭屏幕分享。 | |
重置为默认状态。 |
public func openLocalMicrophone(completion: CompletionClosure?) {fatalError("\\(#function) must be overridden by subclass")}
参数名 | 类型 | 是否必填 | 描述 |
completion | 必填 | 操作是否成功。 |
public func closeLocalMicrophone() {fatalError("\\(#function) must be overridden by subclass")}
public func setCaptureVolume(volume: Int) {fatalError("\\(#function) must be overridden by subclass")}
参数名 | 类型 | 是否必填 | 描述 |
volume | Int | 必填 | 采集音量,取值范围 [0, 100]。 |
public func setOutputVolume(_ volume: Int) {fatalError("\\(#function) must be overridden by subclass")}
参数名 | 类型 | 是否必填 | 描述 |
volume | Int | 必填 | 最大音量,取值范围 [0, 100]。 |
public func setAudioRoute(_ route: AudioRoute) {fatalError("\\(#function) must be overridden by subclass")}
参数名 | 类型 | 是否必填 | 描述 |
route | 必填 | 路由位置。 |
public func startCameraTest(cameraView: UIView,completion: CompletionClosure?) {fatalError("\\(#function) must be overridden by subclass")}
参数名 | 类型 | 是否必填 | 描述 |
cameraView | UIView | 必填 | 摄像头采集画面的渲染视图。 |
completion | 必填 | 操作是否成功。 |
public func stopCameraTest() {fatalError("\\(#function) must be overridden by subclass")}
public func openLocalCamera(isFront: Bool,completion: CompletionClosure?) {fatalError("\\(#function) must be overridden by subclass")}
参数名 | 类型 | 是否必填 | 描述 |
isFront | Bool | 必填 | 是否前置摄像头。 |
completion | 必填 | 操作是否成功。 |
public func closeLocalCamera() {fatalError("\\(#function) must be overridden by subclass")}
public func switchCamera(isFront: Bool) {fatalError("\\(#function) must be overridden by subclass")}
参数名 | 类型 | 是否必填 | 描述 |
isFront | Bool | 必填 | 是否前置摄像头。 |
public func switchMirror(mirrorType: MirrorType) {fatalError("\\(#function) must be overridden by subclass")}
参数名 | 类型 | 是否必填 | 描述 |
mirrorType | 必填 | 镜像状态。 |
public func updateVideoQuality(_ quality: VideoQuality) {fatalError("\\(#function) must be overridden by subclass")}
参数名 | 类型 | 是否必填 | 描述 |
quality | 必填 | 视频质量。 |
public func startScreenShare(appGroup: String) {fatalError("\\(#function) must be overridden by subclass")}
参数名 | 类型 | 是否必填 | 描述 |
appGroup | String | 必填 | App Group ID。 |
public func stopScreenShare() {fatalError("\\(#function) must be overridden by subclass")}
public func reset() {fatalError("\\(#function) must be overridden by subclass")}
枚举值 | 值 | 说明 |
microphone | 0 | 麦克风类型。 |
camera | 1 | 摄像头类型。 |
screenShare | 2 | 屏幕分享类型。 |
枚举值 | 值 | 说明 |
noError | 0 | 操作成功。 |
noDeviceDetected | 1 | 未检测到设备。 |
noSystemPermission | 2 | 没有系统权限。 |
notSupportCapture | 3 | 不支持采集。 |
occupiedError | 4 | 设备已占用。 |
unknownError | 5 | 未知错误。 |
枚举值 | 值 | 说明 |
off | 0 | 关闭。 |
on | 1 | 开启。 |
枚举值 | 值 | 说明 |
speakerphone | 0 | 扬声器,使用扬声器播放(即"免提"),扬声器位于手机底部,声音偏大,适合外放音乐。 |
earpiece | 1 | 听筒,使用听筒播放,听筒位于手机顶部,声音偏小,适合需要保护隐私的通话场景。 |
枚举值 | 值 | 说明 |
quality360P | 1 | 360P。 |
quality540P | 2 | 540P。 |
quality720P | 3 | 720P。 |
quality1080P | 4 | 1080P。 |
枚举值 | 值 | 说明 |
unknown | 0 | 未知网络。 |
excellent | 1 | 极佳。 |
good | 2 | 良好。 |
poor | 3 | 较差。 |
bad | 4 | 差。 |
veryBad | 5 | 极差。 |
down | 6 | 中断。 |
枚举值 | 值 | 说明 |
auto | 0 | 自动,前置摄像头镜像,后置摄像头不镜像。 |
enable | 1 | 前后摄像头均镜像。 |
disable | 2 | 前后摄像头均不镜像。 |
枚举值 | 说明 |
call | 语音通话场景。 |
live | 直播场景。 |
none | 未设置。 |
属性 | 类型 | 说明 |
userID | String | 用户唯一ID。 |
quality | 网络质量。 | |
upLoss | UInt32 | 上行丢包率,取值范围 [0, 100]。 |
downLoss | UInt32 | 下行丢包率,取值范围 [0, 100]。 |
delay | UInt32 | 延迟(单位:毫秒)。 |
属性 | 类型 | 说明 |
microphoneStatus | 麦克风状态。 | |
microphoneLastError | 麦克风错误,用于出现报错时提取错误信息。 | |
captureVolume | Int | 采集音量,取值范围 [0, 100]。 |
currentMicVolume | Int | 当前用户实际输出音量。 |
outputVolume | Int | 最大输出音量,取值范围 [0, 100]。 |
cameraStatus | 摄像头状态。 | |
cameraLastError | 摄像头错误,用于出现报错时提取错误信息。 | |
isFrontCamera | Bool | 是否为前置摄像头。 |
localMirrorType | 镜像状态。 | |
localVideoQuality | 本地视频质量。 | |
currentAudioRoute | 当前音频路由位置。 | |
screenStatus | 屏幕分享状态。 | |
networkInfo | 网络信息。 |
// 获取单例实例let store = DeviceStore.shared// 订阅状态变化store.state.subscribe { state inprint("麦克风状态: \\(state.microphoneStatus)")print("摄像头状态: \\(state.cameraStatus)")print("网络质量: \\(state.networkInfo.quality)")}// 打开麦克风store.openLocalMicrophone { code, message inif code == 0 {print("麦克风打开成功")}}// 打开前置摄像头store.openLocalCamera(isFront: true) { code, message inif code == 0 {print("摄像头打开成功")}}
文档反馈