Audio Settings
本文档主要介绍如何使用
RTC Room Engine
SDK 实现 音频设置相关功能。前提条件
使用指引
开启/关闭本地麦克风
您可以分别通过调用
openLocalMicrophone
和closeLocalMicrophone
两个接口,来开启或关闭您本地的麦克风。在调用
openLocalMicrophone
开启麦克风时,需要传入一个TUIAudioQuality
类型的参数 quality
以设置音频编码质量,TUIAudioQuality
包含以下类型,您可以根据您的业务需求进行选择:枚举值类型 | 含义 |
speech | 人声模式。单声道;音频裸码率:18kbps;适合语音通话为主的场景。 |
default | 默认模式。单声道;音频裸码率:50kbps;SDK 默认的音频质量,如无特殊需求推荐选择之。 |
music | 音乐模式。双声道 + 全频带;音频裸码率:128kbps;适合需要高保真传输音乐的场景,比如在线K歌、音乐直播等。 |
您可以分别通过调用
openLocalMicrophone
和closeLocalMicrophone
两个接口,来开启或关闭您本地的麦克风。在调用
openLocalMicrophone
开启麦克风时,需要传入一个AudioQuality
类型的参数 quality
以设置音频编码质量,AudioQuality
包含以下类型,您可以根据您的业务需求进行选择:枚举值类型 | 含义 |
SPEECH | 人声模式。单声道;音频裸码率:18kbps;适合语音通话为主的场景。 |
DEFAULT | 默认模式。单声道;音频裸码率:50kbps;SDK 默认的音频质量,如无特殊需求推荐选择之。 |
MUSIC | 音乐模式。双声道 + 全频带;音频裸码率:128kbps;适合需要高保真传输音乐的场景,比如在线K歌、音乐直播等。 |
下面以默认模式为例,提供了开启本地麦克风和关闭本地麦克风的示例代码。
import RTCRoomEnginelet roomEngine = TUIRoomEngine.sharedInstance()// 开启本地麦克风roomEngine.openLocalMicrophone(.default) {// 开启麦克风成功} onError: { code, message in// 开启麦克风失败}// 关闭本地麦克风roomEngine.closeLocalMicrophone()
TUIRoomEngine roomEngine = TUIRoomEngine.sharedInstance();// 开启本地麦克风roomEngine.openLocalMicrophone(TUIRoomDefine.AudioQuality.DEFAULT, new TUIRoomDefine.ActionCallback() {@Overridepublic void onSuccess() {// 开启麦克风成功}@Overridepublic void onError(TUICommonDefine.Error error, String message) {// 开启麦克风失败}});// 关闭本地麦克风roomEngine.closeLocalMicrophone();
更新本地音频编码质量
更新本地音频编码质量时,需要传入的参数类型
TUIAudioQuality
与上文中提到的相同。下面以默认模式为例,调用updateAudioQuality
接口更新本地音频的编码质量:import RTCRoomEnginelet audioQuality: TUIAudioQuality = .defaultTUIRoomEngine.sharedInstance().updateAudioQuality(audioQuality)
更新本地音频编码质量时,需要传入的参数类型
AudioQuality
与上文中提到的相同。下面以默认模式为例,调用updateAudioQuality
接口更新本地音频的编码质量:TUIRoomDefine.AudioQuality audioQuality = TUIRoomDefine.AudioQuality.DEFAULT;TUIRoomEngine.sharedInstance().updateAudioQuality(audioQuality);
暂停/恢复发布本地音频流
当您在直播间内时,您可能需要暂停/恢复发布您的本地音频流,您可以通过调用以下接口来实现:
import RTCRoomEnginelet roomEngine = TUIRoomEngine.sharedInstance()// 暂停发布本地音频流roomEngine.muteLocalAudio()// 恢复发布本地音频流roomEngine.unmuteLocalAudio() {// 恢复发布成功} onError: { code, message in// 恢复发布失败}
TUIRoomEngine roomEngine = TUIRoomEngine.sharedInstance();// 暂停发布本地音频流roomEngine.muteLocalAudio();// 恢复发布本地音频流roomEngine.unmuteLocalAudio(new TUIRoomDefine.ActionCallback() {@Overridepublic void onSuccess() {// 恢复发布成功}@Overridepublic void onError(TUICommonDefine.Error error, String message) {// 恢复发布失败}});
说明: