В некоторых мобильных устройствах (например, Motorola One Power - Android 10, Redmi Note 5 Pro - Android 7.1.2) звук из динамика телефона переходит в конференц-связь через телефон mi c и вызывает эхо. Эта проблема с эхом возникает только тогда, когда телефонный динамик находится в состоянии ON.
Я использовал режим MODE_IN_COMMUNICATION в AudioManager:
mAudioManager = (AudioManager) getSystemService(AUDIO_SERVICE);
mAudioManager.setMode(AudioManager.MODE_IN_COMMUNICATION);
Кроме того, используются ниже ограничения звука для создания источника звука с помощью createAudioSource () API PeerConnectionFactory:
audioConstraints = new MediaConstraints();
audioConstraints.mandatory.add(new MediaConstraints.KeyValuePair("googEchoCancellation", "true"));
audioConstraints.mandatory.add(new MediaConstraints.KeyValuePair("googAutoGainControl", "true"));
audioConstraints.mandatory.add(new MediaConstraints.KeyValuePair("googHighpassFilter", "true"));
audioConstraints.mandatory.add(new MediaConstraints.KeyValuePair("googNoiseSuppression", "true"));
Мы будем благодарны за любую помощь или руководство в решении проблемы.