耳返
更新时间: 2023/04/26 07:55:41
耳返即耳机采集监听,在设备上插入耳机或耳麦后,可以从耳机侧听到本设备麦克风采集到的声音,主要用来监听本地采集的音频。耳返音频具备低延时、高音质等特征,可以实时向主播等参与音频互动的成员反馈本端的声音数据,让主播可以实时听到本端的声音。耳返功能一般用于在线 KTV、连麦 PK、演唱会等娱乐场景。
NERoom SDK 支持耳返功能,同时支持调节耳返的音量。
注意事项
- 请在房间内调用该方法。
- 开启耳返功能后,必须连接上耳机或耳麦,才能正常使用耳返功能。建议通过
onRtcAudioOutputDeviceChanged
监听播放设备的变化,当监听到播放设备切换为耳机时才开启耳返。
实现方法
-
在加入房间成功后,调用
enableEarback
开启耳返功能。通过volume
参数设置采集耳返音量大小。取值范围为 0 ~ 100,默认值为 100。耳返功能可以随时开启,但只有当插入耳机或耳麦时生效,当拔出耳机或耳麦时自动暂停,再次插入耳机或耳麦自动恢复,可以实时关闭。
-
通过
onRtcAudioOutputDeviceChanged
监听播放设备的变化,当监听到播放设备切换为耳机时才开启耳返。/** * 本端音频输出设备变更通知,如切换到扬声器、听筒、耳机等 * @param device 音频输出类型 */ fun onRtcAudioOutputDeviceChanged(device: NEAudioOutputDevice)
-
调用
disableEarBack
关闭耳返功能。
示例代码
实现监听播放设备变化的示例代码如下:
@Override
public void onRtcAudioOutputDeviceChanged(@NonNull NEAudioOutputDevice device) {
switch (device) {
case SPEAKER_PHONE:
Log.d(TAG, "扬声器");
break;
case WIRED_HEADSET:
Log.d(TAG, "有线耳机");
break;
case EARPIECE:
Log.d(TAG, "听筒");
break;
case BLUETOOTH_HEADSET:
Log.d(TAG, "蓝牙耳机");
break;
}
}
实现开启耳返和关闭耳返的示例代码如下:
NERoomService roomService = NERoomKit.getInstance().getService(NERoomService.class);
NERoomContext roomContext = roomService.getRoomContext(roomUuid);
if (roomContext != null) {
//开启白板
Int result = roomContext.getRtcController().enableEarback(80);
if (result == 0) {
Log.d(TAG, "开启耳返成功");
} else{
Log.d(TAG, "开启耳返失败");
}
}
if (roomContext != null) {
//关闭白板
Int result = roomContext.getRtcController().disableEarback();
if (result == 0) {
Log.d(TAG, "关闭耳返成功");
} else{
Log.d(TAG, "关闭耳返失败");
}
}
API 参考
方法 | 功能描述 |
---|---|
enableEarback | 开启耳返。 |
disableEarback | 关闭耳返。 |
此文档是否对你有帮助?