gpt4 book ai didi

android - WebRTC Android 回声消除

转载 作者:行者123 更新时间:2023-12-04 15:24:54 51 4
gpt4 key购买 nike

我想在android中实现语音和视频通话。我使用这个示例项目作为引用:Amazon Kinesis Video Streams Android WebRTC SDK问题是麦克风会拾取远程声音,从而导致极端的回声效果。我们使用这个版本:

org.webrtc:google-webrtc:1.0.30039

AudioManager 处于这种模式:

audioManager.setMode(AudioManager.MODE_IN_COMMUNICATION);
audioManager.setSpeakerphoneOn(false);

这是我们尝试过但没有任何效果的方法:

WebRtcAudioUtils.setWebRtcBasedAcousticEchoCanceler(true);
WebRtcAudioUtils.useWebRtcBasedAcousticEchoCanceler();
WebRtcAudioUtils.setWebRtcBasedAutomaticGainControl(true);
WebRtcAudioUtils.useWebRtcBasedAutomaticGainControl();
WebRtcAudioUtils.setWebRtcBasedNoiseSuppressor(true);
WebRtcAudioUtils.useWebRtcBasedNoiseSuppressor();
WebRtcAudioManager.setBlacklistDeviceForOpenSLESUsage(true);

还有这个:

audioConstraints.mandatory.add(new MediaConstraints.KeyValuePair("googEchoCancellation", "true"));
audioConstraints.mandatory.add(new MediaConstraints.KeyValuePair("googEchoCancellation2", "true"));
audioConstraints.mandatory.add(new MediaConstraints.KeyValuePair("googDAEchoCancellation", "true"));

audioConstraints.mandatory.add(new MediaConstraints.KeyValuePair("googTypingNoiseDetection", "true"));

audioConstraints.mandatory.add(new MediaConstraints.KeyValuePair("googAutoGainControl", "true"));
audioConstraints.mandatory.add(new MediaConstraints.KeyValuePair("googAutoGainControl2", "true"));

audioConstraints.mandatory.add(new MediaConstraints.KeyValuePair("googNoiseSuppression", "true"));
audioConstraints.mandatory.add(new MediaConstraints.KeyValuePair("googNoiseSuppression2", "true"));

audioConstraints.mandatory.add(new MediaConstraints.KeyValuePair("googAudioMirroring", "false"));
audioConstraints.mandatory.add(new MediaConstraints.KeyValuePair("googHighpassFilter", "true"));

我真的迷路了。如何在 Android 中激活回声消除?

最佳答案

使用JavaAudioDeviceModule.class的以下方法

setUseHardwareAcousticEchoCanceler(false)       
setUseHardwareNoiseSuppressor(false)

(作为引用,请查看 PeerConnectionClient.java 的 createJavaAudioDevice() - Checkout official android example on googlesource.com您还可以查看 Somesh 的 GitHub 项目 ( https://github.com/TheSomeshKumar/AndroidWebRTCGradle )。

关于android - WebRTC Android 回声消除,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62479789/

51 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com