next up previous contents index
Siguiente: Recibir entrada del usuario Subir: Manual del Usuario Anterior: Modo multitortuga   Índice General   Índice de Materias


Tocar música (MIDI)

Ya comentamos anteriormente (sección 3.3) que la versión para Windows de jre no incorpora las API (Application Programming Interface - Interfaz de Programación de Aplicaciones) que contienen los instrumentos y que deben ser instaladas manualmente (Preguntas frecuentes, 15.1). Es importante recordarlo porque, si no lo haces, con la instalación por defecto de JAVA no tendrás instrumentos disponibles.

Las primitivas que nos ocupan son:

Primitivas Argumentos Uso
secuencia, sec a: lista Carga en memoria la secuencia incluída en la lista. Siguiendo a esta tabla, se indica cómo escribir una secuencia de notas músicales.
tocamúsica no Toca la secuencia de notas en memoria.
instrumento, instr no Da el número que corresponde al instrumento actualmente seleccionado.
poninstrumento, pinstr a: número Queda seleccionado el instrumento número a. Puedes ver la lista de instrumentos disponibles en el menú Herramientas Preferencias Sonido.
indicesecuencia, indsec no Da la posición del puntero en la secuencia corriente.
ponindicesecuencia, pindsec a: número Pone el puntero en la posición a de la secuencia corriente.
borrasecuencia, bos no Elimina de memoria la secuencia corriente.

Para tocar música, primero hay que poner en memoria una lista de notas llamada secuencia. Para crear una secuencia, puedes usar la primitiva sec o secuencia. Para crear una secuencia válida, hay que seguir las siguientes reglas:

Ejemplo:

Después de :++ en la secuencia, todas las notas sonarán dos octavas más altas.
Por defecto, todas las notas tienen una duración uno. Si quieres aumentar o disminuir la duración, debes escribir un número correspondiente.

Ejemplos:
      secuencia [sol 0.5 la si]
tocará sol con la duración 1 y la y si con la duración 0.5 (el doble de rápido).

Otro ejemplo:
Image musica
 para partitura
 # crea la secuencia de notas
   secuencia [0.5 sol la si sol 1 la 0.5 la si 1 :+ do do :- si si 
      0.5 sol la si sol 1 la 0.5 la si 1 :+ do re 2 :- sol ]
   secuencia [:+ 1 re 0.5 re do 1 :- si 0.5 la si 1 :+ do re 2 :- la ]
   secuencia [:+ 1 re 0.5 re do 1 :- si 0.5 la si 1 :+ do re 2 :- la ]
   secuencia [0.5 sol la si sol 1 la 0.5 la si 1 :+ do do :- si si 
      0.5 sol la si sol 1 la 0.5 la si 1 :+ do re 2 :- sol ]
 fin
Para escuchar la música, ejecuta las primitivas:

partitura tocamúsica.

Ahora veamos una aplicación interesante de la primitiva ponindicesecuencia:

borrasecuencia # elimina toda secuencia de memoria

partitura # pone en memoria las notas

pindsec 2 # pone el cursor en el segundo "la"

partitura # pone en memoria las mismas notas, pero movidas 2 lugares.

tocamúsica # Grandioso!

También puedes elegir un instrumento con la primitiva poninstrumento o en el menú Herramientas Preferencias Sonido. Encontrarás la lista de instrumentos disponibles asociados a un número. (Si usas Windows, echa un vistazo a las Preguntas Frecuentes si no lo has hecho aún)


next up previous contents index
Siguiente: Recibir entrada del usuario Subir: Manual del Usuario Anterior: Modo multitortuga   Índice General   Índice de Materias
Álvaro Valdés 2008-03-13