Captura de Múltiples Eventos MIDI en Tiempo de Ejecución

Captura de Múltiples Eventos MIDI en Tiempo de Ejecución

Maximino Peña Guerrero
 

Texto completo de la Tesis     

 


Resumen

El protocolo de comunicaciones entre instrumentos musicales MIDI (Musical Instrument Digital Interface) fue introducido en 1983, y desde entonces se ha desarrollado un gran número de aplicaciones musicales. Existen sistemas de software con los cuales se puede editar una partitura musical tal como se hace con un texto, transportar las notas a otro tono, construir secuencias de acompañamiento, insertar la voz de un cantante, o bien, simular una orquesta real. La captura de los eventos MIDI de un instrumento actualmente está limitada en fidelidad, y la de varios instrumentos MIDI no es posible debido a que el sistema MIDI no fue diseñado para capturar datos en paralelo. Este tipo de captura hará posible arreglos con sonidos de distintos instrumentos y la extracción precisa y automática de las partituras de cada instrumento. Esta tesis presenta las alternativas de diseño de un sistema de grabación de eventos MIDI de varias fuentes y propone dos diseños específicos: MIDI Capture System Linear-memory (MCS-L) y MIDI Capture System Segmented-Memory (MCS-S). MCS-L utiliza una memoria lineal convencional, y es adecuado para desarrollar un prototipo en poco tiempo. MCS-S utiliza un diseño especial de memoria segmentada autocompactante (MSA) que facilita su producción masiva y muy posiblemente reduce su costo ya que sólo utiliza tres circuitos integrados de propósito específico. MSA inserta los datos MIDI de cada instrumento en un segmento distinto de tamaño variable y autocompactante, no desperdiciando memoria si uno de los instrumentos no genera datos. Para probar MCS-L desarrollamos un prototipo con un sistema mínimo basado en el microcontrolador 8051, y el software de control del mismo. Capturamos datos MIDI de varios instrumentos, y con un compilador que desarrollamos, llamado KL (Kernel for music Language), obtuvimos sus partituras con una calidad aceptable. Para probar MCS-S sólo evaluamos su MSA, el unico componente distinto de los de MCS-L. Nuestra evaluación, en base al sistema de desarrollo de sistemas digitales Xilinx, muestra que MSA es mucho más rápida que una memoria convencional, garantizando la captura fiel de los eventos MIDI.