Tencent Cloud Device Management Module
Module: TRTC 音视频设备管理模块 Function: 用于管理摄像头、麦克风和扬声器等音视频相关的硬件设备
◆ liteav::TXCameraCaptureParam
struct liteav::TXCameraCaptureParam |
◆ TXCameraCaptureParam()
◆ height
◆ mode
◆ width
◆ liteav::ITXDeviceInfo
class liteav::ITXDeviceInfo |
◆ ~ITXDeviceInfo()
◆ getDeviceName()
virtual const char* getDeviceName |
( |
| ) |
|
|
pure virtual |
◆ getDevicePID()
virtual const char* getDevicePID |
( |
| ) |
|
|
pure virtual |
◆ release()
release function, don't use delete!!!
◆ liteav::ITXDeviceCollection
class liteav::ITXDeviceCollection |
◆ ~ITXDeviceCollection()
◆ getCount()
virtual uint32_t getCount |
( |
| ) |
|
|
pure virtual |
◆ getDeviceName()
virtual const char* getDeviceName |
( |
uint32_t |
index | ) |
|
|
pure virtual |
设备名字 (UTF-8)
- 参数
-
index | 设备索引,值为 [0,getCount) |
- 返回
- 设备名字 (UTF-8)
◆ getDevicePID()
virtual const char* getDevicePID |
( |
uint32_t |
index | ) |
|
|
pure virtual |
设备唯一标识 (UTF-8)
- 参数
-
index | 设备索引,值为 [0,getCount) |
◆ getDeviceProperties()
virtual const char* getDeviceProperties |
( |
uint32_t |
index | ) |
|
|
pure virtual |
设备信息(json格式)
- 注意
- 示例:{"SupportedResolution":[{"width":640,"height":480},{"width":320,"height":240}]}
- 参数
-
index | 设备索引,值为 [0,getCount) |
- 返回
- 返回 json 格式的设备信息
◆ release()
释放设备列表,请不要使用 delete 释放资源 !!!
◆ liteav::ITXDeviceObserver
class liteav::ITXDeviceObserver |
◆ ~ITXDeviceObserver()
◆ onDeviceChanged()
本地设备的通断状态发生变化(仅适用于桌面系统)
当本地设备(包括摄像头、麦克风以及扬声器)被插入或者拔出时,SDK 便会抛出此事件回调。
- 参数
-
deviceId | 设备 ID |
type | 设备类型 |
state | 通断状态,0:设备已添加;1:设备已被移除;2:设备已启用。 |
◆ liteav::ITXDeviceManager
class liteav::ITXDeviceManager |
◆ ITXDeviceManager()
◆ ~ITXDeviceManager()
◆ enableCameraAutoFocus()
virtual int enableCameraAutoFocus |
( |
bool |
enabled | ) |
|
|
pure virtual |
开启自动对焦功能(仅适用于移动端)
开启后,SDK 会自动检测画面中的人脸位置,并将摄像头的焦点始终对焦在人脸位置上。
◆ enableCameraTorch()
virtual int enableCameraTorch |
( |
bool |
enabled | ) |
|
|
pure virtual |
开启/关闭闪光灯,也就是手电筒模式(仅适用于移动端)
◆ getApplicationMuteState()
virtual bool getApplicationMuteState |
( |
| ) |
|
|
pure virtual |
获取 Windows 系统音量合成器中当前进程的静音状态(仅适用于 Windows 系统)
◆ getApplicationPlayVolume()
virtual int getApplicationPlayVolume |
( |
| ) |
|
|
pure virtual |
获取 Windows 系统音量合成器中当前进程的音量(仅适用于 Windows 系统)
◆ getCameraZoomMaxRatio()
virtual float getCameraZoomMaxRatio |
( |
| ) |
|
|
pure virtual |
◆ getCurrentDevice()
◆ getCurrentDeviceMute()
获取当前设备的静音状态(仅适用于桌面端)
这里的音量指的是麦克风和扬声器,摄像头是不支持静音操作的。
◆ getCurrentDeviceVolume()
获取当前设备的音量(仅适用于桌面端)
这里的音量指的是麦克风的采集音量或者扬声器的播放音量,摄像头是不支持获取音量的。
◆ getDevicesList()
获取设备列表(仅适用于桌面端)
- 参数
-
type | 设备类型,指定需要获取哪种设备的列表。详见 TXMediaDeviceType 定义。 |
- 注意
- 使用完毕后请调用 release 方法释放资源,这样可以让 SDK 维护 ITXDeviceCollection 对象的生命周期。
- 不要使用 delete 释放返回的 Collection 对象,delete ITXDeviceCollection* 指针会导致异常崩溃。
- type 只支持 TXMediaDeviceTypeMic、TXMediaDeviceTypeSpeaker、TXMediaDeviceTypeCamera。
- 此接口只支持 Mac 和 Windows 平台
◆ isAutoFocusEnabled()
virtual bool isAutoFocusEnabled |
( |
| ) |
|
|
pure virtual |
◆ isFrontCamera()
virtual bool isFrontCamera |
( |
| ) |
|
|
pure virtual |
◆ setApplicationMuteState()
virtual int setApplicationMuteState |
( |
bool |
bMute | ) |
|
|
pure virtual |
设置 Windows 系统音量合成器中当前进程的静音状态(仅适用于 Windows 系统)
◆ setApplicationPlayVolume()
virtual int setApplicationPlayVolume |
( |
int |
volume | ) |
|
|
pure virtual |
设置 Windows 系统音量合成器中当前进程的音量(仅适用于 Windows 系统)
◆ setAudioRoute()
设置音频路由(仅适用于移动端)
手机有两个音频播放设备:一个是位于手机顶部的听筒,一个是位于手机底部的立体声扬声器。 设置音频路由为听筒时,声音比较小,只有将耳朵凑近才能听清楚,隐私性较好,适合用于接听电话。 设置音频路由为扬声器时,声音比较大,不用将手机贴脸也能听清,因此可以实现“免提”的功能。
◆ setCameraCapturerParam()
◆ setCameraFocusPosition()
virtual int setCameraFocusPosition |
( |
float |
x, |
|
|
float |
y |
|
) |
| |
|
pure virtual |
设置摄像头的对焦位置(仅适用于移动端)
您可以通过该接口实现如下交互:
- 在本地摄像头的预览画面上,允许用户单击操作。
- 在用户的单击位置显示一个矩形方框,以示摄像头会在此处对焦。
- 随后将用户点击位置的坐标通过本接口传递给 SDK,之后 SDK 会操控摄像头按照用户期望的位置进行对焦。
- 注意
- 使用该接口的前提是先通过 enableCameraAutoFocus 关闭自动对焦功能。
- 参数
-
position | 对焦位置,请传入期望对焦点的坐标值 |
- 返回
- 0:操作成功;负数:操作失败。
◆ setCameraZoomRatio()
virtual int setCameraZoomRatio |
( |
float |
zoomRatio | ) |
|
|
pure virtual |
设置摄像头的缩放倍数(仅适用于移动端)
- 参数
-
zoomRatio | 取值范围1 - 5,取值为1表示最远视角(正常镜头),取值为5表示最近视角(放大镜头)。 |
◆ setCurrentDevice()
设置当前要使用的设备(仅适用于桌面端)
- 参数
-
type | 设备类型,详见 TXMediaDeviceType 定义。 |
deviceId | 设备ID,您可以通过接口 getDevicesList 获得设备 ID。 |
- 返回
- 0:操作成功;负数:操作失败。
◆ setCurrentDeviceMute()
设置当前设备的静音状态(仅适用于桌面端)
这里的音量指的是麦克风和扬声器,摄像头是不支持静音操作的。
◆ setCurrentDeviceVolume()
设置当前设备的音量(仅适用于桌面端)
这里的音量指的是麦克风的采集音量或者扬声器的播放音量,摄像头是不支持设置音量的。
- 参数
-
volume | 音量大小,取值范围为0 - 100,默认值:100。 |
- 注意
- 如果将 volume 设置成 100 之后感觉音量还是太小,可以将 volume 最大设置成 150,但超过 100 的 volume 会有爆音的风险,请谨慎操作。
◆ setDeviceObserver()
◆ setSystemVolumeType()
设置系统音量类型(仅适用于移动端)
- 弃用:
- v9.5 版本开始不推荐使用,建议使用 TRTCCloud 中的 startLocalAudio(quality) 接口替代之,通过 quality 参数来决策音质。
◆ startCameraDeviceTest() [1/2]
开始摄像头测试(仅适用于 Windows 系统)
该接口支持自定义渲染,即您可以通过接 ITRTCVideoRenderCallback 回调接口接管摄像头的渲染画面。
◆ startCameraDeviceTest() [2/2]
virtual int startCameraDeviceTest |
( |
void * |
view | ) |
|
|
pure virtual |
◆ startMicDeviceTest()
virtual int startMicDeviceTest |
( |
uint32_t |
interval | ) |
|
|
pure virtual |
开始麦克风测试(仅适用于桌面端)
该接口可以测试麦克风是否能正常工作,测试到的麦克风采集音量的大小,会以回调的形式通知给您,其中 volume 的取值范围为0 - 100。
- 参数
-
◆ startSpeakerDeviceTest()
virtual int startSpeakerDeviceTest |
( |
const char * |
filePath | ) |
|
|
pure virtual |
开始扬声器测试(仅适用于桌面端)
该接口通过播放指定的音频文件,用于测试播放设备是否能正常工作。如果用户在测试时能听到声音,说明播放设备能正常工作。
- 参数
-
◆ stopCameraDeviceTest()
virtual int stopCameraDeviceTest |
( |
| ) |
|
|
pure virtual |
◆ stopMicDeviceTest()
virtual int stopMicDeviceTest |
( |
| ) |
|
|
pure virtual |
◆ stopSpeakerDeviceTest()
virtual int stopSpeakerDeviceTest |
( |
| ) |
|
|
pure virtual |
◆ switchCamera()
virtual int switchCamera |
( |
bool |
frontCamera | ) |
|
|
pure virtual |
◆ __ITXDEVICEMANAGER_H__
#define __ITXDEVICEMANAGER_H__ |