Originalcode von https://code.google.com/p/wami-recorder/ (unter MIT-Lizenz)
Code -Updates, Optimierungen für JQuery und einige Korrekturen von Ignacio Santolin
Zum jetzigen Zeitpunkt unterstützen die meisten Browser immer noch nicht die GetUsermedia von WebRTC ()
http://caniuse.com/#search=stream
Dies verspricht, Webentwicklern Mikrofonzugriff über JavaScript zu gewähren. Dieses Projekt erreicht das nächstbeste für Browser, die Flash unterstützen. Mit dem WAMI -Rekorder können Sie Audio auf Ihrem Server sammeln, ohne eine proprietäre Medienserver -Software zu installieren.
Der WAMI-Rekorder verwendet eine leichte Flash-App, um Audio von Client über einen Standard-HTTP-Post von Client zum Server zu versenden. Abgesehen von den Sicherheitseinstellungen, mit denen Mikrofonzugriff zugegeben werden kann, kann die gesamte Schnittstelle in HTML und JQuery konstruiert werden.
Die Flash -App zeigt den größten Teil ihrer wichtigen Parameter und Funktionen dem JavaScript.
Wami.startRecording(myRecordURL);
Wami.stopRecording();
Wami.startPlaying(anyWavURL);
Wami.stopPlaying();
Sie können die gut angesehene SWFObject-Bibliothek verwenden, um die Flash-App zu betten, und dann auf die gleiche Weise wie unser Beispielcode zugreifen. Schauen Sie sich unsere Mackenseite an, um die Eigenheiten von Flash und JavaScript auf verschiedenen Browsern und Betriebssystemen kennenzulernen.
Wenn Sie den Flash -Inhalt ändern möchten, können Sie den kostenlosen Flex SDK herunterladen und aus der Befehlszeile kompilieren. Für eine vollwertige IDE sind Ihre kostenlosen Optionen begrenzter. Für den akademischen Gebrauch wie das Sammeln von Audio für eine Studie über Amazon Mechanical Turk können Sie sich für eine kostenlose LIZORDIGER LEGERLEGELN.
Wenn Sie Audio aus dem Browser sammeln möchten, gibt es nicht die Notwendigkeit, Ihren eigenen Server zu hosten. Eine wichtige Funktion dieses Projekts ist jedoch, dass kein gesamtes Flash -Media -Server konfiguriert werden muss, um Audio aus dem Web zu sammeln. Sie können die serverseitige Technologie auswählen, die Sie bevorzugen. Sie können beispielsweise dieses einfache PHP -Skript auf Apache2 hosten:
Beispiel/Server/PHP/WriteAudio.php
Beachten Sie, dass dieser Code optional einen URL -Abfrageparameter benötigt, um einen Dateinamen anzugeben. Mit den entsprechenden Berechtigungen schreibt der PHP -Code eine Datei mit dieser NAM auf die Festplatte. Sie können jedes Mal einen anderen Dateinamen übergeben, wenn Sie aufzeichnen, um zwischen einzelnen Benutzern, Sitzungen und Äußerungen zu unterscheiden. Möglicherweise möchten Sie zufällige Nummern verwenden, die in JavaScript und Cookies generiert werden, die im Browser gespeichert sind, um Benutzer über Browser -Nachladen zu verfolgen und ihre entsprechenden Dateien zu benennen. Es ist zu beachten, dass das obige Beispiel unter Sicherheitsproblemen leidet und wahrscheinlich für die tatsächliche Bereitstellung geändert werden sollte.
Wami.startRecording('http://localhost/test.php?name=USER.SESSION.UTTERANCE.wav');
Eine leichte Komplikation tritt auf, wenn die URL, die Sie zum Spielen oder Aufnehmen verwenden, nicht auf denselben Host hinweist, der die SWF -Datei dient. In diesem Fall müssen Sie eine Crossdomain.xml am Wurzel des Hosts bedienen, aus dem das Audio serviert oder aufgezeichnet wird.