Publicado el 21 de Junio del 2017
832 visualizaciones desde el 21 de Junio del 2017
2,9 MB
168 paginas
Creado hace 20a (06/01/2005)
CENTRO DE INVESTIGACI ÓN Y DE ESTUDIOS AVANZADOS
DEL INSTITUTO POLITÉCNICO NACIONAL
DEPARTAMENTO DE INGENIERÍA ELÉCTRICA
SECCI ÓN DE COMPUTACI ÓN
Captura de Múltiples Eventos MIDI
en Tiempo de Ejecución
Tesis que presenta
Maximino Peña Guerrero
Para Obtener el Grado de
Doctor en Ciencias
En la Especialidad de
Ingeniería Eléctrica
Opción Computación
Director de la Tesis: Dr. Adriano De Luca Pennacchia.
Codirector: Dr. Jorge Buenabad Chávez.
México D.F.
Enero 2005
RESUMEN
El protocolo de comunicaciones entre instrumentos musicales MIDI (Musical Instru-
ment 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 can-
tante, o bien, simular una orquesta real. La captura de los eventos MIDI de un ins-
trumento 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ía posible arreglos con sonidos de distintos instru-
mentos 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 Sys-
tem 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 segmenta-
da 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 basa-
do en el microcontrolador 8051, y el software de control del mismo. Capturamos
datos MIDI de varios instrumentos, y con un compilador que desarrollamos, lla-
mado KL (Kernel f or music Language), obtuvimos sus partituras con una ca-
lidad aceptable. Para probar MCS-S sólo evaluamos su MSA, el único compo-
nente distinto de los de MCS-L. Nuestra evaluación, en base al sistema de de-
sarrollo 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.
ii
ABSTRACT
The protocol of communication among musical instruments MIDI (Musical Instru-
ment Digital Interface) it was introduced in 1983, and from then on a great number of
musical applications it has been developed. Software systems exist with those which
one can edit a musical score just as it is made with a text, to transport the notes to
another tone, to build accompaniment sequences, to insert the voice of a singer, or
to simulate a real orchestra. The capture of the events MIDI of an instrument at the
moment it is limited in fidelity and that of several instruments is not possible because
the MIDI system it was not designed to capture data in parallel. This capture type
would make possible arrangements with sounds of different instruments and the pre-
cise and automatic extraction of the scores of each instrument.
This thesis presents the design alternatives of a MIDI events recording system
of several sources and it proposes two specific designs: MIDI Capture System Linear-
Memory (MCS-L) and MIDI Capture System Segmented-Memory (MCS-S). MCS-L
uses a conventional lineal memory, and it is adapted to develop a prototype in little
time. MCS-S uses a special design of self-compacting segmented memory (MSA) that
it facilitates their massive production and very possibly it reduces their cost since
alone it uses three integrated circuits of specific purpose. MSA inserts the data MI-
DI of each instrument in a different segment from variable size and self-compacted,
not wasting memory if one of the instruments doesn’t generate data.
In order to prove MCS-L we develop a prototype with a minimum system based
on the 8051 microcontroller, and its software of control of the one. We capture data
MIDI of several instruments, and with a compiler that we have developed, named KL
(Kernel for music Language), we obtained their scores with acceptable quality. In or-
der to prove alone MCS-S we evaluate their MSA, the only component different from
those of MCS-L. Our evaluation, based on the development system of digital systems
Xilinx, it shows that MSA is much quicker that a conventional memory, guarantee-
ing the faithful capture of MIDI events.
iii
Xóchitl Peña Navarro,
Ma. del Rosario Peña Navarro,
Ma. Teresa Navarro Serrano,
Elena Guerrero Badillo,
Alberto Peña Ramírez,
Instituto Politécnico Nacional. . .
Dios:
Gracias.
iv
Agradecimientos
Agradezco a mi director de tesis, Dr. Adriano De Luca Pennacchia la guía, asesoría y
la oportunidad que me dio al formar parte de su grupo de investigadores, con lo cual
fue posible desarrollar el presente proyecto de tesis doctoral.
De la misma forma, también quiero hacer patente mi deuda y agradecimientos
al Dr. Jorge Buenabad Chávez, codirector de esta tesis, cuyas sugerencias, ideas, y
señalamientos enriquecieron el contenido del proyecto.
De una manera muy especial, agradezco al Dr. Manuel González Hernández los
consejos que recibí como amigo, maestro, y compañero de trabajo durante aquellos
momentos difíciles de mi vida; asimismo las revisiones, sugerencias y correcciones que
hizo a este documento. Muchas gracias M anix.
Estoy agradecido con: Dr. Oscar Olmedo Aguirre, cuyas recomendaciones ayu-
daron a mejorar la estructura del texto; Dr. Miguel Ángel León Chávez, invirtió su
valioso tiempo en revisar el documento final, sus observaciones y sugerencias en-
riquecieron esta tesis; Dra. Graciela Roman Alonzo, amablemente hizo revisiones y
recomendaciones que también enriquecieron la tesis; y, Dr. Luis Gerardo de La Fra-
ga, hizo las primeras observaciones que ayudaron a bien organizar nuestro proyecto.
Reconozco mi deuda con el Dr. Sergio V. Chapa V., por el apoyo y facilidades
que permitieron iniciar, desarrollar, y profundizar en el tema durante su administra-
ción en la Sección de Computación del Departamento de Ingeniería Eléctrica del CIN-
VESTAV; agradezco sus sugerencias cuando presentamos por primera vez este tópi-
co en el Centro de Investigación en Inteligencia Artificial de Barcelona España.
También debo dar las gracias a: Dr. Raúl Cortés Mateos, que destacó la impor-
tancia de lograr objetivos precisos, además me dio el apoyo que necesitaba para la
realización del trabajo; Dr. Adolfo Guzmán Arenas, Dr. Marvin Minsky, y Dr. Harold
V. McIntosh, que me ayudaron a reforzar la convicción para desarrollar y profundizar
en el tema.
v
Gracias también: Ing. Luis Alcaraz Ugalde, las facilidades que permitieron ter-
minar el proyecto; Ing. Jorge Suárez Díaz, que facilitó tiempo de trabajo y las insta-
laciones donde surgieron las primeras ideas; M.C. Armando Jiménez Flores, indicó re-
visiones y cambios que mejoraron el comportamiento de los dispositivos; Ing. Leode-
gario Wrvieta Cortés, la disposición de sus sistemas de desarrollo; Ing. José de Jesús
Negrete Redondo, la revisión final del manuscrito; y Lic. José Urbano Cruz Cedillo,
el acceso a sus recursos computacionales.
Muchas gracias al Prof. Ignacio Rubén Pérez Escamilla que invirtió su valioso
tiempo en ayudarme a comprender aquellos conceptos matemáticos que me permi-
tieron seguir adelante. En este mismo contexto, deseo expresar profundos agradeci-
mientos a todos los maestros que me formaron en la vida, desde el primero que re-
cuerda mi infancia, Prof. Camilo Torres, maestro rural de Sn. José Zoquital Hgo., y
que me enseñó los primeros “palitos”, hasta los que he tenido en estos últimos años,
y que me han permitido lograr mis objetivos, sin olvidar para nada a los profesores de
música que me ayudaron a comprender su lenguaje. Muchas gracias a todos mis alum-
nos que participaron programando muchos conceptos sin relación alguna aparente,
pero que comprobaron en los laboratorios y los reunieron en un todo congruente.
Agradezco con profunda emoción las facilidades otorgadas por las autoridades
de las instituciones adonde he sido alumno, docente e investigador, y donde surgieron
aquellas ideas que me permitieron desarrollar esta investigación, resultado de la cual,
he dedicado gran parte de mi vida: Escuela Superior de Ingeniería Mecánica y Eléctri-
ca (ESIME) del IPN; Centro de Investigación y de Estudios Avanzados (CINVES-
TAV) del IPN, principalmente, la Sección de Computación del Departamento de In-
geniería Eléctrica, y la Sección de Proyectos de Ingeniería, del mismo departamen-
to; Centro Nacional de Cálculo (CeNaC) del IPN; Centro de Investigación en Com-
putación (CIC) del IPN; Dirección de Cómputo y Comunicaciones (DCyC) del IPN;
y por supuesto, mi Alma M ater: Instituto Politécnico Nacional.
Maximino Peña Guerrero
vi
... Levántate, pues, y vence
tu flaqueza con el ánimo
que triunfa en los comba-
tes [...]
levantarse
mira alrededor, desvanecido
por la grande angustia por
[la] que ha pasado...
... y al
Dante Alighieri
(1265-1321)
vii
Índice general
1. Introducción
2. Música Digital
2.1. Composición . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2.1.1. Creación de una composición . . . . . . . . . . . . . . . . . .
. . . . . . . .
2.1.2. Creación de una composición con una máquina
2.2. Escritura de una compo
Comentarios de: Captura de Múltiples Eventos MIDI en Tiempo de Ejecución (0)
No hay comentarios