HTML5 Rocks (literalmente!)

Haciendo uso de las nuevas características presentes en las beta de Firefox 4 (Data Audio API), Greg Jopa desarrollo una simple aplicación que permite ejecutar tabs (tablaturas) directamente desde el browser (en este caso y por el momento, unicamente Firefox 4).

La magia resulta complemento de la generacion y uso de las tablaturas en formato MusicXML, que parsea a un simple javascript con las notas a ejecutar.

//...
playNote(notes.C, 4, 1);
playNote(notes.C, 4, 1);
playNote(notes.G, 4, 1);
playNote(notes.G, 4, 1);
//...

Para los curiosos (y los músicos javascripteros también), la magia de las notas hecha script:

function playNote(distanceFreq, octave, length) {
	// calculate frequency
	var frequency = 440 * Math.pow(2,((octave-4) * 12 + distanceFreq)/12);
	var start = Math.ceil(sampleRate * index * 60 / tempo);
	// -100ms pause at the end
	var end = Math.floor(sampleRate * ((index + length) * 60 / tempo - 0.1) ); 

	var k = 2* Math.PI * frequency / sampleRate;
	for (var i = start; i <= end; i++) {
		buffer[i] = Math.sin(k * i);
	}
	index += length;
}

Leer más:



Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos necesarios están marcados *

Comment

You may use these tags : <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>