控制声音
简介
Pano SDK 支持控制音频设备和音量。
各端 SDK 相关接口,请查看下列介绍:
Windows (C++)
通过 RtcEngine
实例的 getAudioDeviceManager
方法获取音频设备管理器(AudioDeviceManager
)。
- 音频采集
- 通过其
enumerateRecordDevices
方法枚举音频采集设备 - 通过其
getRecordDevice
方法获取当前使用的音频采集设备,setRecordDevice
方法设置需要使用的音频采集设备 - 通过其
isDefaultRecordDevice
方法检查当前使用的音频采集设备是否是系统默认通信设备,setDefaultRecordDevice
方法设置系统默认通信设备作为音频采集设备 - 通过其
getRecordDeviceVolume
方法获取采集音量,setRecordDeviceVolume
方法设置采集音量
- 通过其
- 音频播放
- 通过其
enumeratePlayoutDevices
方法枚举音频播放设备 - 通过其
getPlayoutDevice
方法获取当前使用的音频播放设备,setPlayoutDevice
方法设置需要使用的音频播放设备 - 通过其
isDefaultPlayoutDevice
方法检查当前使用的音频播放设备是否是系统默认通信设备,setDefaultPlayoutDevice
方法设置系统默认通信设备作为音频播放设备 - 通过其
getPlayoutDeviceVolume
方法获取播放音量,setPlayoutDeviceVolume
方法设置播放音量
- 通过其
- 播放静音
- 通过其
setPlayoutDataMuteStatus
方法设置播放静音(1.6.4.1版本新增)
- 通过其
setRecordDeviceVolume
和setPlayoutDeviceVolume
方法会影响系统设备从而影响所有应用,setPlayoutDataMuteStatus
方法仅影响当前应用。
macOS/iOS (Objective-C)
通过 PanoRtcEngineKit
实例的:
- getAudioDeviceVolume:
方法获取当前音频设备的音量type
指定为kPanoDeviceAudioRecord
表示音频采集设备type
指定为kPanoDeviceAudioPlayout
表示音频播放设备
- setAudioDeviceVolume:withType:
方法设置当前音频设备的音量(此方法会影响系统设备从而影响所有应用)- setPlayoutDataMuteStatus:
方法设置播放静音(1.6.4.1版本新增,此方法仅影响当前应用)
以下方法仅 macOS 适用:
- enumerateDevices:
方法枚举设备- getDevice:
方法获取当前使用的设备,- setDevice:withType:
方法设置需要使用的设备- isDefaultDeviceWithType:
方法检查当前使用的设备是否为系统默认设备,- setDefaultDeviceWithType:
方法使用系统默认设备
以下方法仅 iOS 适用:
- isEnabledLoudspeaker
方法检查扬声器是否启用,- setLoudspeakerStatus:
方法设置是否启用扬声器
Android (Java)
通过 RtcEngine
实例的getAudioDeviceManager
方法获取音频设备管理器(RtcAudioDeviceManager
)。
- 通过其
getRecordDeviceVolume
方法获取采集音量,setRecordDeviceVolume
方法设置采集音量。 - 通过其
setPlayoutDevice
方法选择音频播放设备,getPlayoutDeviceVolume
方法获取播放音量,setPlayoutDeviceVolume
方法设置播放音量。 - 通过其
isLoudspeakerOn
方法检查扬声器是否启用,setLoudspeakerStatus
方法设置是否启用扬声器 - 通过其
setPlayoutDataMuteStatus
方法设置播放静音(1.6.4.1版本新增)。
setRecordDeviceVolume
和setPlayoutDeviceVolume
方法会影响系统设备从而影响所有应用,setPlayoutDataMuteStatus
方法仅影响当前应用。
Web
通过 RtcEngine
实例的:
getMics
方法获取麦克风列表,selectMic
方法选择麦克风。getSpeakers
方法获取扬声器列表,selectSpeaker
方法选择扬声器。muteMic
方法静音麦克风,unmuteMic
方法取消静音麦克风。getAudioPlayoutVolume
方法获取播放音量,setAudioPlayoutVolume
方法设置播放音量。muteAudioPlayout
方法设置播放静音,unmuteAudioPlayout
方法取消播放静音。
Electron
通过 RtcEngine
实例的 audioDeviceMgr()
方法获取音频设备管理器。
- 音频采集
- 通过其
getRecordDeviceList()
方法获取音频采集设备列表 - 通过其
getRecordDevice()
方法获取当前使用的音频采集设备,setRecordDevice(deviceId)
方法设置需要使用的音频采集设备 - 通过其
isDefaultRecordDevice()
方法检查当前使用的音频采集设备是否是系统默认设备,setDefaultRecordDevice()
方法设置系统默认设备作为音频采集设备注意:Windows 系统上对应"默认通信设备"而不是默认设备
- 通过其
getRecordDeviceVolume()
方法获取采集音量,setRecordDeviceVolume(volume)
方法设置采集音量(volume
的取值范围为0 - 255)
- 通过其
- 音频播放
- 通过其
getPlayoutDeviceList()
方法获取音频播放设备列表 - 通过其
getPlayoutDevice()
方法获取当前使用的音频播放设备,setPlayoutDevice(deviceId)
方法设置需要使用的音频播放设备 - 通过其
isDefaultPlayoutDevice()
方法检查当前使用的音频播放设备是否是系统默认设备,setDefaultPlayoutDevice()
方法设置系统默认设备作为音频播放设备注意:Windows 系统上对应"默认通信设备"而不是默认设备
- 通过其
getPlayoutDeviceVolume()
方法获取播放音量,setPlayoutDeviceVolume(volume)
方法设置播放音量(volume
的取值范围为0 - 255)
- 通过其
- 播放静音
- 通过其
setPlayoutDataMuteStatus(muted)
方法设置播放静音(参数为布尔值,1.2.0版本增加此方法)
setRecordDeviceVolume
和setPlayoutDeviceVolume
方法会影响系统设备从而影响所有应用,setPlayoutDataMuteStatus
方法仅影响当前应用。 - 通过其
示例代码:
let audioDeviceMgr = rtcEngine.audioDeviceMgr();
let recordDeviceList = audioDeviceMgr.getRecordDeviceList();
let currentRecordDevice = audioDeviceMgr.getRecordDevice(); // 返回 deviceId
let isDefaultRecordDevice = audioDeviceMgr.isDefaultRecordDevice(); // true / false
let recordDeviceVolume = audioDeviceMgr.getRecordDeviceVolume(); // 示例:234
audioDeviceMgr.setRecordDeviceVolume(255);
let playoutDeviceList = audioDeviceMgr.getPlayoutDeviceList();
let currentPlayoutDevice = audioDeviceMgr.getPlayoutDevice(); // 返回 deviceId
let isDefaultPlayoutDevice = audioDeviceMgr.isDefaultPlayoutDevice(); // true / false
let playoutDeviceVolume = audioDeviceMgr.getPlayoutDeviceVolume(); // 示例:20
audioDeviceMgr.setPlayoutDeviceVolume(100);
audioDeviceMgr.setPlayoutDataMuteStatus(true); // 设置播放静音
Flutter
通过 RtcEngineKit
实例的:
getAudioDeviceVolume
方法获取当前音频设备的音量,setAudioDeviceVolume
方法设置当前音频设备的音量type
指定为Record
表示音频采集设备type
指定为Playout
表示音频播放设备
isEnabledLoudspeaker
方法检查扬声器是否启用,setLoudspeakerStatus
方法设置是否启用扬声器setPlayoutDataMuteStatus
方法设置播放静音(1.0.7版本新增)
React Native
通过 RtcEngineKit
实例的:
getAudioDeviceVolume(type: AudioDeviceType)
方法获取当前音频设备的音量,setAudioDeviceVolume(volume: number, type: AudioDeviceType)
方法设置当前音频设备的音量type
指定为Record
表示音频采集设备type
指定为Playout
表示音频播放设备
isEnabledLoudspeaker()
方法检查扬声器是否启用,setLoudspeakerStatus(enable: boolean)
方法设置是否启用扬声器