2013-04-11 7 views
7

Kann mir jemand helfen, Audio vom Standardmikrofon mit HTML5 aufzunehmen? Es sind viele Beispiele verfügbar, aber keine davon scheint zu funktionieren. Ich habe versucht Audio capturing with HTML5 Da es nur mit Chrom mit Flags aktiviert funktioniert. aber es wird NavigatorUserMediaError bekommen. Das Videosymbol in der Adressleiste hat ein rotes Kreuz und die QuickInfo sagt 'Diese Seite wurde für den Zugriff auf Kamera und Mikrofon gesperrt'HTML5 Audio vom Standardmikrofon aufnehmen

Antwort

8

Es gibt einige großartige Artikel zu HTML5 Rocks. Dies ist nur einer, den ich gezogen habe. 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

danke für Ihre Antwort. Ich habe das auch. aber scheint nicht zu funktionieren. Von dem Link können wir zwei Beispiel Live-Demos erhalten. [Eins] (http://webaudiodemos.appspot.com/pitchdetect/index.html) und [Two] (http://chromium.googlecode.com/svn/trunk/samples/audio/visualizer-live.html) aber keiner scheint zu funktionieren. Beide bitten mich, das Mikrofon benutzen zu dürfen, aber danach passiert nichts. Die einzige Änderung ist, dass eine rote Kugel langsam auf dem Titelsymbol blinkt. Mein Chrom ist auf dem neuesten Stand und ich habe auch 'Web Audio Input' aktiviert. kann jemand eine funktionierende Probe zur Verfügung stellen. – abduIntegral

+0

irgendwelche Updates zu diesem Thema? –

+1

HTML5 Rocks erstellte einige Webaudio-Demos, wenn diese APIs neu waren, aber sie haben die Demos nie aktualisiert, als sich die APIs entwickelten. Leider funktionieren einige ihrer Web-Audio-Demos nicht mehr. –

3

stellen Sie sicher, die Demo von einem Webserver zu starten - einfach kopieren/einfügen & Start aus dem Dateisystem wird nicht funktionieren - in Chrom Sie nie Zugriff auf das Mikrofon auf diese Weise erhalten.

2

Vor kurzem (nicht sicher, wann) hat Chrome die Anforderung hinzugefügt, dass auf die Seite über SSL zugegriffen werden muss, um getUserMedia zu aktivieren.