2013-04-11 2 views
7

Может ли кто-нибудь помочь мне в том, как захватить звук из микрофона по умолчанию, используя HTML5? Есть много доступных образцов, но ни один из них не работает. Я пробовал Audio capturing with HTML5 Поскольку он работает только с хром с включенными флагами. но он получает NavigatorUserMediaError. Значок видео на адресной строке имеет красный крестик, и его подсказка говорит: «Эта страница заблокирована от доступа к вашей камере и микрофону»HTML5 захват звука из микрофона по умолчанию

ответ

8

В HTML5 Rocks есть отличные статьи. Это всего лишь один, который я вытащил. http://updates.html5rocks.com/2012/09/Live-Web-Audio-Input-Enabled

// success callback when requesting audio input stream 
function successCallback(stream) { 
    var audioContext = new (window.webkitAudioContext)(); 

    // Create an AudioNode from the stream. 
    var mediaStreamSource = audioContext.createMediaStreamSource(stream); 

    // Connect it to the destination to hear yourself (or any other node for processing!) 
    mediaStreamSource.connect(audioContext.destination); 
} 

function errorCallback() { 
    console.log("The following error occurred: " + err); 
} 

navigator.webkitGetUserMedia({audio:true}, successCallback, errorCallback); 
+1

благодарит за ответ. Я тоже это понял. но, похоже, не работает. из ссылки мы можем получить две демонстрационные демо-версии. [Один] (http://webaudiodemos.appspot.com/pitchdetect/index.html) и [Два] (http://chromium.googlecode.com/svn/trunk/samples/audio/visualizer-live.html), но нет похоже работа. оба требуют, чтобы я разрешил использовать микрофон, но после этого ничего не происходит. единственное изменение заключается в том, что красный значок медленно мигает над значком заголовка. мой хром обновлен, а также я включил «Web Audio Input». может ли кто-нибудь предоставить рабочий образец. – abduIntegral

+0

любые обновления по этому вопросу? –

+1

HTML5 Rocks создал несколько демонстраций веб-аудио, когда эти API были новыми, но они никогда не обновляли демоверсии по мере развития API. К сожалению, некоторые из их веб-аудио-демонстраций больше не работают. –

3

убедитесь, что вы запустите демо с веб-сервера - просто копировать/вставить & старт из файловой системы не будет работать - в хроме вы никогда не получите доступ к микрофону таким образом.

2

Недавно (не уверен, когда) Chrome добавил требование, чтобы страница была доступна через SSL для включения getUserMedia.