我正在使用 getUserMedia 来访问 Chrome 中的用户麦克风(版本 28.0.1500.72 m)。当用户使用带有内置扬声器的内置麦克风时,我能够记录和回放用户输入。
一旦我插入 USB 麦克风耳机,我就不再能够记录用户的输入。我已经在隐私和内容设置下的 chrome 设置中切换了设备。所以chrome确实看到了新插入的麦克风。我也重新启动了 chrome 并在插入麦克风后再次尝试。仍然没有用户输入。
提前致谢。
以下是我正在使用的当前代码。
window.AudioContext = window.AudioContext||window.webkitAudioContext;
var html5Recorder;
var audioContext = new AudioContext();
navigator.getUserMedia = navigator.getUserMedia || navigator.webkitGetUserMedia || navigator.mozGetUserMedia || navigator.msGetUserMedia || navigator.oGetUserMedia;
if(navigator.getUserMedia){
navigator.getUserMedia({audio:true},handleAudioStream, audioError)
}else{
console.log('Use Flash')
}
function handleAudioStream(stream){
var mediaStream = audioContext.createMediaStreamSource(stream);
mediaStream.connect( audioContext.destination );
html5Recorder = new HTML5Recorder(mediaStream);
html5Recorder.stop();
html5Recorder.clear();
}
function audioError(error){
console.log(error);
}
function record(){
html5Recorder.record();
}
function stopRecording(){
html5Recorder.stop();
html5Recorder.exportWAV(function(e){
console.log(e);
console.log(window.URL.createObjectURL(e));
document.getElementById('audio1').src = window.URL.createObjectURL(e);
HTML5Recorder.forceDownload(e);
});
}