http://www.flipcode.com/misc/BeatDetect ... rithms.pdf
En particular me llamó la atención la técnica basada en el cálculo de la correlación de la señal con un tren de pulsos. En la sección soft puede descargarse una implementación sencilla en C de este algoritmo. Da muy buenos resultados con música pop, rock y electrónica. No he probado el código con otros estilos musicales.
Código fuente aquí.
[ añadir comentario ] ( 1171 visualizaciones ) | [ 0 trackbacks ] | enlace permanente | ( 3 / 1884 )
El otro día subí un nuevo tema a mi cuenta de soundcloud:
http://soundcloud.com/avelinoherrera/unmute
Hoy he recibido un correo pidiéndome permiso para ponerlo en una tienda y el buen amigo taiwanés Dj WangHart lo va a pinchar hoy en su set de todos los viernes a las 14:00, hora canaria, a través de Intersonik Radio
http://intersonik.net
Aquí para ver el set completo que usará.
No me puedo quejar, la verdad :-). Espero que les guste.
[ añadir comentario ] ( 1144 visualizaciones ) | [ 0 trackbacks ] | enlace permanente | ( 3 / 1863 )
Acabo de grabar y subir un nuevo tema de cosecha propia. Se titula Sol y está disponible tanto en mi cuenta de SoundCloud
http://soundcloud.com/avelinoherrera/sol
como por descarga directa en la sección Música.
Espero que les guste :-)
[ 2 comentarios ] ( 7415 visualizaciones ) | [ 0 trackbacks ] | enlace permanente | ( 3 / 18694 )
Ya tenemos un nuevo tema colgado en la web:
guineo - metamorfosis
Nuestra primera incursión en el español :-)
[ añadir comentario ] ( 2846 visualizaciones ) | [ 0 trackbacks ] | enlace permanente | ( 3 / 18811 )
En la sección soft he puesto el código fuente de un parser/reproductor de ficheros MIDI (compatible con tipo 0 y tipo 1) implementado en C y en C++ (dos implementaciones separadas).
Se trata de un esqueleto básico. Para que el parser/reproductor funcione con un hardware determinado hay que hacer las siguientes modificaciones.
en C
Modificar la implementación de la función void sendMidiEventCallback(uint8_t *data, uint8_t dataLength) para que emita los "dataLength" primeros bytes de "data" sobre el hardware deseado.
en C++
Implementar una clase que herede de TMidiPlayer (esta clase tiene el método virtual puro void sendMidiEvent(u8 *data, u8 size) que debe ser implementado en alguna subclase).
Más info en la sección soft, subsección sonido.
[ añadir comentario ] ( 2988 visualizaciones ) | [ 0 trackbacks ] | enlace permanente | ( 3 / 18767 )