TUIRoomDeviceManager
Copyright (c) 2024 Tencent. All rights reserved.
Module: TUIRoomDeviceManager @ TUIKitEngine
Function: 设备测试、管理相关接口
TUIRoomDeviceManager
TUIRoomDeviceManagerObserver
函数列表 | 描述 |
本地设备添加事件 | |
测试摄像头画面渲染成功回调 | |
测试麦克风时的音量回调 | |
测试扬声器时的音量回调 |
TUIRoomDeviceManager
函数列表 | 描述 |
判断当前是否为前置摄像头(仅适用于移动端) | |
切换前置或后置摄像头(仅适用于移动端) | |
查询是否支持自动识别人脸位置(仅适用于移动端) | |
开启自动对焦功能(仅适用于移动端) | |
开启/关闭闪光灯,也就是手电筒模式(仅适用于移动端) | |
设置音频路由(仅适用于移动端) | |
设置事件回调 | |
开始摄像头测试(仅适用于桌面端) | |
结束摄像头测试(仅适用于桌面端) | |
开始麦克风测试(仅适用于桌面端) | |
结束麦克风测试(仅适用于桌面端) | |
开始扬声器测试(仅适用于桌面端) | |
结束扬声器测试(仅适用于桌面端) | |
获取设备列表(仅适用于桌面端) | |
设置当前要使用的设备(仅适用于桌面端) | |
获取当前正在使用的设备(仅适用于桌面端) |
结构体类型
函数列表 | 描述 |
设备信息 |
枚举类型
枚举类型 | 描述 |
设备类型 | |
设备操作 | |
音频路由(即声音的播放模式) |
onDeviceChanged:type:state:
onDeviceChanged:type:state:
- (void)onDeviceChanged: | (NSString *)deviceId |
type: | |
state: |
本地设备添加事件
参数 | 描述 |
deviceId | 设备 ID。 |
state | 通断状态,0:设备已添加;1:设备已被移除;2:设备已启用。 |
type | 设备类型。 |
注意
当本地设备(包括摄像头、麦克风以及扬声器)添加时,SDK 便会抛出此事件回调。
onTestCameraVideoFrameRendered:height:
onTestCameraVideoFrameRendered:height:
- (void)onTestCameraVideoFrameRendered: | (NSInteger)width |
height: | (NSInteger)height |
测试摄像头画面渲染成功回调
参数 | 描述 |
height | 画面的高度。 |
width | 画面的宽度。 |
注意
当本地测试摄像头画面渲染成功时,SDK 便会抛出此事件回调。
onTestMicVolume:
onTestMicVolume:
- (void)onTestMicVolume: | (NSInteger)volume |
测试麦克风时的音量回调
参数 | 描述 |
volume | 麦克风采集到的音量值,取值范围0 - 100。 |
注意
当本地测试麦克风时,SDK 便会抛出此事件回调。
onTestSpeakerVolume:
onTestSpeakerVolume:
- (void)onTestSpeakerVolume: | (NSInteger)volume |
测试扬声器时的音量回调
参数 | 描述 |
volume | SDK 提交给扬声器去播放的声音的音量,取值范围0 - 100。 |
注意
当本地测试扬声器时,SDK 便会抛出此事件回调。
isFrontCamera
isFrontCamera
判断当前是否为前置摄像头(仅适用于移动端)
switchCamera:
switchCamera:
- (void)switchCamera: | (BOOL)frontCamera |
切换前置或后置摄像头(仅适用于移动端)
isAutoFocusEnabled
isAutoFocusEnabled
查询是否支持自动识别人脸位置(仅适用于移动端)
enableCameraAutoFocus:
enableCameraAutoFocus:
- (void)enableCameraAutoFocus: | (BOOL)enabled |
开启自动对焦功能(仅适用于移动端)
开启后,SDK 会自动检测画面中的人脸位置,并将摄像头的焦点始终对焦在人脸位置上。
enableCameraTorch:
enableCameraTorch:
- (void)enableCameraTorch: | (BOOL)enabled |
开启/关闭闪光灯,也就是手电筒模式(仅适用于移动端)
setAudioRoute:
setAudioRoute:
- (void)setAudioRoute: |
设置音频路由(仅适用于移动端)
手机有两个音频播放设备:一个是位于手机顶部的听筒,一个是位于手机底部的立体声扬声器。
设置音频路由为听筒时,声音比较小,只有将耳朵凑近才能听清楚,隐私性较好,适合用于接听电话。
设置音频路由为扬声器时,声音比较大,不用将手机贴脸也能听清,因此可以实现“免提”的功能。
setObserver:
setObserver:
- (void)setObserver: |
设置事件回调
您可以通过 TUIRoomDeviceManagerObserver 获得各类事件通知。
参数 | 描述 |
observer | 监听的实例。 |
startCameraDeviceTest:
startCameraDeviceTest:
- (void)startCameraDeviceTest: | (TUIVideoView *__nullable)view |
开始摄像头测试(仅适用于桌面端)
注意
在测试过程中可以使用 $setCurrentDevice$ 接口切换摄像头。
stopCameraDeviceTest
stopCameraDeviceTest
结束摄像头测试(仅适用于桌面端)
startMicDeviceTest:playback:
startMicDeviceTest:playback:
- (void)startMicDeviceTest: | (NSInteger)interval |
playback: | (BOOL)playback |
开始麦克风测试(仅适用于桌面端)
该接口可以测试麦克风是否能正常工作,测试到的麦克风采集音量的大小,会以回调的形式通知给您,其中 volume 的取值范围为0 - 100。
参数 | 描述 |
interval | 麦克风音量的回调间隔。 |
playback | 是否开启回播麦克风声音,开启后用户测试麦克风时会听到自己的声音。 |
stopMicDeviceTest
stopMicDeviceTest
结束麦克风测试(仅适用于桌面端)
startSpeakerDeviceTest:
startSpeakerDeviceTest:
- (void)startSpeakerDeviceTest: | (NSString *) filePath |
开始扬声器测试(仅适用于桌面端)
该接口通过播放指定的音频文件,用于测试播放设备是否能正常工作。如果用户在测试时能听到声音,说明播放设备能正常工作。
参数 | 描述 |
filePath | 声音文件的路径。 |
stopSpeakerDeviceTest
stopSpeakerDeviceTest
结束扬声器测试(仅适用于桌面端)
getDevicesList:callback:
getDevicesList:callback:
- (void)getDevicesList: | |
callback: | (TUIDeviceListBlock)callback |
获取设备列表(仅适用于桌面端)
参数 | 描述 |
type | 设备类型,指定需要获取哪种设备的列表。详见 $TUIMediaDeviceType$ 定义。 |
setCurrentDevice:deviceId:
setCurrentDevice:deviceId:
- (void)setCurrentDevice: | |
deviceId: | (NSString *) deviceId |
设置当前要使用的设备(仅适用于桌面端)
参数 | 描述 |
deviceId | |
type | 设备类型,详见 $TUIMediaDeviceType$ 定义。 |
getCurrentDevice:callback:
getCurrentDevice:callback:
- (void)getCurrentDevice: | |
callback: | (TUIDeviceInfoBlock) callback |
获取当前正在使用的设备(仅适用于桌面端)
参数 | 描述 |
type | 设备类型,详见 $TUIMediaDeviceType$ 定义。 |
TUIMediaDeviceType
TUIMediaDeviceType
设备类型
枚举 | 取值 | 描述 |
TUIMediaDeviceTypeUnknown | -1 | 未定义的设备类型 |
TUIMediaDeviceTypeAudioInput | 0 | 麦克风类型设备 |
TUIMediaDeviceTypeAudioOutput | 1 | 扬声器类型设备 |
TUIMediaDeviceTypeVideoCamera | 2 | 摄像头类型设备 |
TUIMediaDeviceState
TUIMediaDeviceState
设备操作
枚举 | 取值 | 描述 |
TUIMediaDeviceStateAdd | 0 | 设备已被插入 |
TUIMediaDeviceStateRemove | 1 | 设备已被移除 |
TUIMediaDeviceStateActive | 2 | 设备已启用 |
TUIAudioRoute
TUIAudioRoute
音频路由(即声音的播放模式)
枚举 | 取值 | 描述 |
TUIAudioRouteSpeakerphone | 0 | Speakerphone:使用扬声器播放(即“免提”),扬声器位于手机底部,声音偏大,适合外放音乐。 |
TUIAudioRouteEarpiece | 1 | Earpiece:使用听筒播放,听筒位于手机顶部,声音偏小,适合需要保护隐私的通话场景。 |
TUIDeviceInfo
TUIDeviceInfo
设备信息
枚举类型 | 描述 |
deviceId | 设备 ID |
deviceName | 设备名称 |
deviceProperties | 设备属性 |
- TUIRoomDeviceManagerObserver
- TUIRoomDeviceManager
- 结构体类型
- 枚举类型
- onDeviceChanged:type:state:
- onTestCameraVideoFrameRendered:height:
- onTestMicVolume:
- onTestSpeakerVolume:
- isFrontCamera
- switchCamera:
- isAutoFocusEnabled
- enableCameraAutoFocus:
- enableCameraTorch:
- setAudioRoute:
- setObserver:
- startCameraDeviceTest:
- stopCameraDeviceTest
- startMicDeviceTest:playback:
- stopMicDeviceTest
- startSpeakerDeviceTest:
- stopSpeakerDeviceTest
- getDevicesList:callback:
- setCurrentDevice:deviceId:
- getCurrentDevice:callback:
- TUIMediaDeviceType
- TUIMediaDeviceState
- TUIAudioRoute
- TUIDeviceInfo