-
Notifications
You must be signed in to change notification settings - Fork 1
07. La envolvente de tono
Si, como espero, usted ha entendido cómo funciona la envolvente de volumen, este capítulo le resultará muy fácil. La envolvente de tono, ENT, se programa prácticamente igual que la de volumen, aunque, evidentemente, su acción se ejerce sobre el tono de la nota, no sobre la amplitud.
La instrucción ENT controla las variaciones de tono de las notas, las cuales crean un efecto pulsátil denominado vibrato. Estas pequeñas variaciones de tono afectan a los armónicos de la onda sonora y en muchos instrumentos musicales son las responsables de su singularidad.
Los parámetros de ENT son fáciles de comprender: están dispuestos en grupos, igual que en la instrucción ENV. Son los siguientes:
ENT n,T1,V1,W1,T2,V2,W2,T3,V3,W3,T4,V4,W4,T5,V5,W5
donde «n» es el número de la envolvente. Al igual que en el capítulo anterior, he respetado las letras que se utilizan en el manual del Amstrad para designar los parámetros, a pesar de que no tienen relación alguna con las magnitudes que representan.
La envolvente de tono se puede dibujar en una gráfica del tono en función del tiempo. La instrucción ENT especifica la variación temporal del tono.
En el programa 7.1 definimos una envolvente típica utilizando cuatro de las cinco secciones posibles. Si ejecuta el programa tal como está, oirá el tono no controlado por ENT. Elimine la línea 15, la cual cancela la definición de la envolvente.
Programa 7.1
10 ENT 1,65,5,1,10,-2,10,10,2,5,30,-5,1
15 ENT 1
20 SOUND 1,478,50,15,0,1,0
Lo que acaba de escuchar es el efecto de la envolvente de tono sobre la nota. La figura 7.1 describe qué está ocurriendo, tanto en ENT como en SOUND.
Otro ejemplo de envolvente de tono es el que se muestra en la figura 7.2. En cada sección hay tres parámetros: Tn, que es el número de escalones;
Fig. 7.1 Relación entre las instrucciones ENT y SOUND y secciones de una envolvente de tono.
Fig. 7.2 Ejemplo de envolvente de tono.
Vn, que es la altura de los escalones; y Wn, que es la duración de cada uno de ellos. Como ocurría con ENV, es necesario definir al menos una sección, salvo cuando se desee cancelar una envolvente. Si se empieza a definir una sección, hay que completarla, pues el ordenador no admite una instrucción en la que falte algún parámetro.
Los márgenes de valores de los parámetros ENT son los mismos que en ENV en cuanto a altura y duración de los escalones; en cambio, el número de escalones puede variar entre 0 y 239. Además, el primer parámetro, n, que identifica la envolvente, sirve para indicar si la envolvente ha de repetirse. En efecto, poniendo un número negativo, la envolvente se repite durante todo el tiempo en que la nota está sonando. Este sirve para simular el efecto trémolo.
Si desea experimentar con ENT, teclee el programa 7.2, que funciona de forma análoga a la del programa 6.2.
Programa 7.2
10 CLS
20 PRINT"Elija numero de escalones (0-239)"
30 INPUT numesc
40 PRINT"Elija tamano de escalones (-128 a +127)"
50 INPUT tamaesc
60 PRINT"Elija duracion de escalones (0-255)"
70 INPUT duraesc
80 ENT 1,numesc,tamaesc,duraesc
90 SOUND 1,240,100,15,0,1,0
100 ENT 1
110 PRINT"Pulse una tecla para continuar"
120 x$=INKEY$:IF X$="" THEN 120
130 GOTO 10
Y con esto casi hemos terminado nuestro estudio de las envolventes. La inclusión de las envolventes en BASIC facilita el control más completo del generador de sonido: al definir una envolvente se puede especificar la forma de ataque, sostenimiento y caída de las notas. Si no conoce esta terminología, no se alarme; de hecho, hemos estado manejando estos conceptos en los dos últimos capítulos. Cuando diseñamos envolventes, estamos aumentando, reduciendo o manteniendo constantes la amplitud o el tono. Cuando oímos un sonido cualquiera, observamos que el volumen aumenta (generalmente deprisa) al principio: es la fase de ataque. Una vez alcanzada la amplitud máxima, esta se mantiene constante durante algún tiempo (fase de sostenimiento) y luego decrece hasta extinguirse (fase de caída). Todos los sonidos constan de estas tres fases, pero con duraciones y formas diferentes, que los caracterizan. Estudiemos estos factores más detenidamente, haciendo referencia a la envolvente de volumen.
La fase de ataque es la primera. Determina cuánto tiempo tarda el sonido en alcanzar su nivel máximo. El piano, por ejemplo, tiene una fase de ataque muy corta, ya que su sonido se produce al golpear las cuerdas con un mazo. Piense en el sonido de otros instrumentos y trate de imaginar cómo será su fase de ataque.
La fase de sostenimiento mantiene más o menos constante el volumen del sonido. En la fase de caída el volumen se va reduciendo paulatinamente hasta cero. En la figura 7.3 se ilustran estas tres fases.
Fig. 7.3 Las tres fases de un sonido.
El generador de sonido del Amstrad no puede producir buenas imitaciones de los instrumentos musicales, ya que el tono que genera no es una onda sinusoidal pura, sino una onda cuadrada con sus armónicos inherentes. Pero no se desanime. Se pueden conseguir aproximaciones aceptables mediante el juicioso control de las envolventes de tono y de volumen. Tras cierto trabajo experimental, el lector podrá ir formando su sonoteca de instrumentos musicales.
Así quedan explicadas las principales instrucciones que intervienen en la generación de sonido en el ordenador Amstrad. En los capítulos que siguen continuaremos explorando el generador de sonidos en busca de todo tipo de efectos, desde música hasta invasores extraterrestres.
- 1. ¿Qué voy a aprender?.
- 2. Introducción al sonido.
- 3. Sonilandia.
- 4. Interludio musical.
- 5. El sonido de la música.
- 6. La envolvente de volumen.
- 7. La envolvente de tono.
- 8. Efectos especiales.
- 9. Música, maestro.
- 10. Ritmo.
- 11. Campanas y silbidos.
- Apéndice A: Palabras reservadas del BASIC de Amstrad.
- Apéndice B: Los parámetros de SOUND.
- Apéndice C: Parámetros de la envolvente de volumen.
- Apéndice D: Parámetros de la envolvente de tono.
- Apendice E: Tabla de notas, frecuencias y números de tono.
- Apéndice F: El generador de sonido: notas técnicas.
- Programas.