2010-08-13 15 views
7

Non riesco a trovare nulla tramite le ricerche in rete, ma è in programma di creare un'API per generare blocchi audio da riprodurre in un tag HTML5 <audio>?Creazione audio tramite Javascript in <audio>

EDIT: questo è l'esempio ::

PSEUDOCODE:: 
var music = new Song([Array of hertz levels or notes]); 
var box = document.createElement('audio'); 
document.body.appendChild(box); 
box.src = music.convert(); 
box.play(); 

risposta

5

In teoria, si può effettivamente farlo ora - impostare l'attributo di origine di un elemento audio a un data URI, che si costruisce al volo in JavaScript . Ho fatto questo con elementi embed e file MIDI, che funziona su macchine con QuickTime o altri helper multimediali installati.

Il pescato, naturalmente, è che la generazione di dati audio è un po 'più computazionalmente intensive e occupa più spazio (che potrebbe conciliarsi con il limite di dimensione dei dati URL in determinati contesti ... IE e Safari Mobile vengono a mente). In questo modo verrai limitato a clip di piccole dimensioni e potresti essere limitato dalle ore di inizio/fine per il tag audio.

Mozilla ha un audio buffer API su cui stanno lavorando, che potrebbe portare al browser un vero audio generato dal programma. Nel frattempo, però, si tratta di hacker di Data URI o roba di tipo plug-in come Flash (che ha ottenuto un Buffer audio programmabile nella versione 10) o Java.

Un'altra nota: ho avviato un JavaScript Audio google group alcuni mesi indietro. Non ci sono ancora molte discussioni in corso, ma mi piacerebbe che un numero sufficiente di persone interessate alla musica/audio/audio nel contesto del browser si iscrivessero in modo da poter raggiungere una massa critica e iniziare ad avere conversazioni reali su argomenti come questo.

+1

Un recente articolo sul API Audio Web: http://www.html5rocks.com/en/tutorials/webaudio/games/ – mwcz

3

Mozilla hanno rilasciato un'API di dati audio, che funziona in Firefox 4 beta e nightly Minefield:

https://wiki.mozilla.org/Audio_Data_API

http://vocamus.net/dave/?p=1148

A quanto mi risulta, c'è anche un progetto WebKit simile.

Un W3C Audio Incubator Group è stato formato: la loro missione è "esplorare la possibilità di avviare una o più specifiche che trattano vari aspetti delle funzionalità audio avanzate, inclusa la lettura e la scrittura di dati audio grezzi e la sintesi di suoni o parlato '.

http://www.w3.org/2005/Incubator/audio/

Problemi correlati