Я играю с getUserMedia, чтобы получить доступ к микрофону пользователей в Chrome (версия 28.0.1500.72 м). Я могу записывать и воспроизводить ввод пользователей, когда они используют внутренний микрофон с внутренними динамиками.HTML5 Аудиозапись не работает Внешний микрофон
Как только я подключаю минигарнитуру USB-гарнитуры, я больше не могу записывать входные данные пользователей. Я переключил устройство в настройках 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);
});
}