我正在尝试使用this repo作为基础来实现VideoCall功能。我把一切都搞定了,但现在的问题是音频非常差,它有尖锐的声音和回声。音频几乎听不见。我在callee / caller中创建音频源时使用了适当的约束。以下是我创建音频源的方法 -
MediaConstraints audioConstraints = new MediaConstraints();
audioConstraints.mandatory.add(new MediaConstraints.KeyValuePair("googNoiseSuppression", "true"));
audioConstraints.mandatory.add(new MediaConstraints.KeyValuePair("googEchoCancellation", "true"));
audioConstraints.mandatory.add(new MediaConstraints.KeyValuePair("echoCancellation", "true"));
audioConstraints.mandatory.add(new MediaConstraints.KeyValuePair("noiseSuppression", "true"));
AudioSource audioSource = peerConnectionFactory.createAudioSource(audioConstraints);
localAudioTrack = peerConnectionFactory.createAudioTrack("101", audioSource);
请帮我搞定。
问题是在启用远程音频轨道时我设置了这些线路
AudioTrack audioTrack = mediaStream.audioTracks.get(0);
audioTrack.setEnabled(true);
audioTrack.setVolume(100); // culprit
我将音量设置为100的最后一行是问题。删除它就可以了。