Domanda

I miei bisogni del cliente a lasciare un record utente un messaggio dal browser, quindi esportare il messaggio come un file audio (per esempio, WAV).

Come è meglio raggiunto? Flash, Java, HTML5? Di meglio, voglio dire qualcosa che è semplice da implementare e anche un ampio sostegno.

Quali sono le esperienze delle persone che utilizzano HTML5?

Grazie!

È stato utile?

Soluzione

Flash è un'opzione, ma è necessario un server di streaming multimediale (Adobe Media Server, Wowza, Red5). Non c'è modo per catturare e memorizzare l'audio su Flash a livello locale per un file.

Se siete disposti ad andare con applet Java ci sono più soluzioni. Tutti loro richiedono l'accesso al file system locale e chiederà agli utenti per le autorizzazioni aggiuntive. Per esempio provare http://www.javasonics.com/ o Google " applet registrare audio ".

Aggiornamento: a partire da Flash 10.0 c'è possibilità di usare il microfono con SampleDataEvent.SAMPLE_DATA. Questo dà l'accesso ai dati grezzi audio dal microfono. Vedere questo progetto per l'implementazione: http://code.google.com/p/micrecorder/

Altri suggerimenti

Beh ho il sospetto che una simile caratteristica di HTML5 sarebbe piuttosto non standard, e il supporto del browser può essere diverso per un sacco (con molti browser non comprese le eventuali).

Java non è così popolare come il flash e ci sono molte persone che non hanno JRE è affatto.

Quindi, tutto sommato vorrei andare per la soluzione Flash in questo caso. E forse con un HTML5 di riserva per alcuni casi limitati, sono risorse permettere.

Supponendo che si intende "esportare" a un server, qui è una soluzione Flash open-source che non richiede un media server Flash:

https://code.google.com/p/wami-recorder/

La registrazione viene trasferito via HTTP post per una tecnologia lato server di tua scelta. Nel caso più semplice, è possibile catturare e salvare l'audio con 4 righe di codice PHP:

<? 
$content = file_get_contents('php://input');
$fh = fopen('output.wav', 'w') or die("can't open file");
fwrite($fh, $content);
fclose($fh);
?>

Per quanto riguarda il supporto HTML5, mantenere un occhio su getUserMedia ()

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top