使用WebRTC从多个媒体设备录制 - 导致音频失真

时间:2017-07-28 21:04:14

标签: javascript google-chrome webrtc

用户选择设备后,我使用以下内容从设备中获取流:

mediaDeviceScanner.getMediaByDeviceId = function (deviceId) {
    return navigator.mediaDevices.getUserMedia({ audio: true, video: { deviceId: { exact: deviceId } } });
}

即使连接了多个网络摄像头,这也很有效。

我遇到的问题是,当在MediaRecorder内使用结果流时,录制的音频 - 偶尔会 - 极度失真:

    const mediaRecorder = new MediaRecorder(mediaDevice.localStream(), getMediaRecorderOptions()); 
    // localStream is what the above method returns

视频录制总是很好。音频录制适用于一台设备,但有时音频在连接多个本地设备时变得非常失真。

我已尝试通过getUserMedia通过deviceId / exact指定音频设备,但从Chrome 60.0开始,这似乎不受支持。

可能导致这种情况的原因,以及如何防止这种情况发生?

0 个答案:

没有答案