详细描述
音频设备管理方法。
IAudioDeviceManager 接口类提供用于测试音频设备的相关接口。可通过实例化 IAudioDeviceManager 类来获取 IAudioDeviceManager 接口。
构造及析构函数说明
~IAudioDeviceManager
virtual ar::rtc::IAudioDeviceManager::~IAudioDeviceManager()
成员函数说明
enumeratePlaybackDevices
virtual IAudioDeviceCollection* ar::rtc::IAudioDeviceManager::enumeratePlaybackDevices()
获取系统中所有的播放设备列表。
该方法返回一个 IAudioDeviceCollection 对象,包含系统中所有的播放设备。通过 IAudioDeviceCollection 对象,App 可以枚举播放设备。在使用结束后,App 需调用 release 方法销毁返回的对象。
返回
enumerateRecordingDevices
virtual IAudioDeviceCollection* ar::rtc::IAudioDeviceManager::enumerateRecordingDevices()
获取系统中所有的录音设备列表。
该方法返回一个 IAudioDeviceCollection 对象,包含系统中所有的录音设备。通过 IAudioDeviceCollection 对象,App 可以枚举录音设备。在使用结束后,App 需调用 release 方法销毁返回的对象。
返回
setPlaybackDevice
virtual int ar::rtc::IAudioDeviceManager::setPlaybackDevice ( const char deviceId[MAX_DEVICE_ID_LENGTH])
指定播放设备。
参数
返回
setRecordingDevice
virtual int ar::rtc::IAudioDeviceManager::setRecordingDevice(const char deviceId[MAX_DEVICE_ID_LENGTH])
指定录音设备。
参数
返回
startPlaybackDeviceTest
virtual int ar::rtc::IAudioDeviceManager::startPlaybackDeviceTest ( const char * testAudioFilePath )
启动播放设备测试。
该方法测试播放设备是否能正常工作。启动测试后,SDK 播放指定的音频文件并通过 onAudioVolumeIndication 回调向 app 上报音量信息,测试者如果能听到声音,说明播放设备能正常工作。
参数
参数 | 描述 |
---|
testAudioFilePath | 音频文件的绝对路径,路径字符串使用 UTF-8 编码格式。
支持文件格式: wav、mp3、m4a、aac;
支持文件采样率: 8000、16000、32000、44100、48000。 |
返回
- 0,方法调用成功:你可以听到设置的音频文件的声音;
- <0 方法调用失败
stopPlaybackDeviceTest
virtual int ar::rtc::IAudioDeviceManager::stopPlaybackDeviceTest( )
停止播放设备测试。
返回
setPlaybackDeviceVolume
virtual int ar::rtc::IAudioDeviceManager::setPlaybackDeviceVolume ( int volume)
设置播放设备音量。
参数
参数 | 描述 |
---|
volume | 播放设备音量。取值可在 [0,255]。 |
返回
getPlaybackDeviceVolume
virtual int ar::rtc::IAudioDeviceManager::getPlaybackDeviceVolume (int * volume)
获取播放设备音量。
参数
参数 | 描述 |
---|
volume | 播放设备音量。取值可在 [0,255]。 |
返回
setRecordingDeviceVolume
virtual int ar::rtc::IAudioDeviceManager::setRecordingDeviceVolume ( int volume)
设置录音设备音量
参数
参数 | 描述 |
---|
volume | 录音设备音量。取值范围 [0,255]。 |
返回
getRecordingDeviceVolume
virtual int ar::rtc::IAudioDeviceManager::getRecordingDeviceVolume ( int * volume)
获取录音设备音量
参数
参数 | 描述 |
---|
volume | 录音设备音量。取值范围 [0,255]。 |
返回
setPlaybackDeviceMute
virtual int ar::rtc::IAudioDeviceManager::setPlaybackDeviceMute ( bool mute)
静音播放设备。
参数
参数 | 描述 |
---|
mute | true: 设备设为静音;
false: 设备设为不静音 |
返回
getPlaybackDeviceMute
virtual int ar::rtc::IAudioDeviceManager::getPlaybackDeviceMute ( bool * mute)
获取播放设备静音状态。
参数
参数 | 描述 |
---|
mute | true: 已静音状态;
false: 非静音状态。 |
返回
setRecordingDeviceMute
virtual int ar::rtc::IAudioDeviceManager::setRecordingDeviceMute ( bool mute)
静音录音设备。
参数
参数 | 描述 |
---|
mute | true: 设备设为静音;
false: 设备设为非静音。 |
返回
getRecordingDeviceMute
virtual int ar::rtc::IAudioDeviceManager::getRecordingDeviceMute ( bool * mute )
获取录音设备静音状态。
参数
参数 | 描述 |
---|
mute | true: 已静音状态;
false: 非静音状态。 |
返回
startRecordingDeviceTest
virtual int ar::rtc::IAudioDeviceManager::startRecordingDeviceTest ( int indicationInterval )
启动录音设备测试。
该方法测试录音设备是否能正常工作。启动测试后,SDK 通过 onAudioVolumeIndication 回调方法向 App 上报音量信息。
参数
返回
stopRecordingDeviceTest
virtual int ar::rtc::IAudioDeviceManager::stopRecordingDeviceTest ( )
停止录音设备测试。
该方法停止录音设备测试。调用 startRecordingDeviceTest 后,必须调用该方法停止测试。
返回
getPlaybackDevice
virtual int ar::rtc::IAudioDeviceManager::getPlaybackDevice ( char deviceId[MAX_DEVICE_ID_LENGTH] )
获取音频播放设备。
参数
返回
getPlaybackDeviceInfo
virtual int ar::rtc::IAudioDeviceManager::getPlaybackDeviceInfo ( char deviceId[MAX_DEVICE_ID_LENGTH],
char deviceName[MAX_DEVICE_ID_LENGTH]
)
根据设备 ID 和设备名称获取播放设备。
参数
参数 | 描述 |
---|
deviceId | 播放设备的设备 ID |
deviceName | 播放设备的设备名称。 |
返回
getRecordingDevice
virtual int ar::rtc::IAudioDeviceManager::getRecordingDevice ( char deviceId[MAX_DEVICE_ID_LENGTH] )
根据设备 ID 获取音频录制设备。
参数
返回
getRecordingDeviceInfo
virtual int ar::rtc::IAudioDeviceManager::getRecordingDeviceInfo ( char deviceId[MAX_DEVICE_ID_LENGTH],
char deviceName[MAX_DEVICE_ID_LENGTH]
)
根据设备名称和设备 ID 获取音频录制设备信息。
参数
参数 | 描述 |
---|
deviceId | 音频录制设备的设备 ID |
deviceName | 音频录制设备的设备名称。 |
返回
startAudioDeviceLoopbackTest
virtual int ar::rtc::IAudioDeviceManager::startAudioDeviceLoopbackTest ( int indicationInterval )
开始音频设备回路测试。
该方法测试麦克风和播放设备是否能正常工作。一旦测试开始,麦克风会采集本地讲话声音,然后使用扬声器播放出来,同时 SDK 会通过 onAudioVolumeIndication 回调向应用程序上报音量信息。
参数
返回
注意事项:
stopAudioDeviceLoopbackTest
virtual int ar::rtc::IAudioDeviceManager::stopAudioDeviceLoopbackTest()
停止音频设备回路测试。
返回
注意事项:
- 在调用 startAudioDeviceLoopbackTest 后,必须调用该方法停止音频设备回路测试。
release
virtual void ar::rtc::IAudioDeviceManager::release()
释放 IAudioDeviceManager 对象占用的所有资源。