我正在使用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);
});
}
答案 0 :(得分:1)
这是我正在使用的当前chrome版本中的一个错误(28)。 Chrome金丝雀效果很好。
答案 1 :(得分:0)
你能检查两个音频设备的采样率吗?
如果采样率与默认麦克风相同,则默认情况下非默认麦克风存在错误:https://code.google.com/p/chromium/issues/detail?id=164058。
另外,你是OSX还是Linux?错误中的注释使它看起来应该在Windows上修复。
答案 2 :(得分:0)
尝试选择USB麦克风作为默认值。 Chrome无法管理音频设备,它始终使用默认麦克风。