¿Qué tal? En este video hablaremos de cómo componer formas de onda en Pure Data. Para ello, es importante entender que en el mundo físico son muchos los factores que determinan la forma de una onda. Si pensamos, por ejemplo, en el sonido de un violín, todos los factores organológicos entran en juego. ¿Con qué materiales está construido? ¿de qué material son las cuerdas y las cerdas? etcétera. A esto habría que sumar además las características del espacio donde el violín es interpretado, y también por supuesto la técnica del violinista. Imagínense entonces lo difícil que sería diseñar formas de onda cuadradas, triangulares o dientes de sierra puras y por supuesto, no nos vamos a meter nosotros en esas complejidades. En cambio, en el mundo digital tenemos herramientas hasta cierto punto estandarizadas, para generar ondas como las que vimos ya. De hecho, hemos visto ya cómo generar ondas senoidales con el objeto osc~, que hemos venido trabajando en videos anteriores. Nuestro objetivo ahora será aprender a diseñar formas de onda triangulares, cuadradas y dientes de cierre, y es justamente lo que haremos ahora. En el caso de la onda diente de sierra tenemos también un objeto disponible en Pure Data, que en este caso se denomina Phasor. De modo que para diseñar una onda de este tipo, simplemente tenemos que sustituir la instrucción osc~ por la palabra phasor~ y mantener las demás conexiones de manera idéntica. Con una simple sustitución de objetos, tenemos una forma de onda distinta. Sin embargo, esta onda tiene una particularidad importante, y es que solo nos devuelve valores positivos. Por esta razón, veremos en el arreglo que esta onda solo abarca valores por encima del cero. Las formas triangular y cuadrada por su parte, no cuentan con objetos prediseñados en Pure Data, de manera que tenemos que modelar las ondas nosotros mismos. Pero antes de entrar de lleno en el modelado de las ondas, es importante explicar una serie de elementos, que serán necesarios para entender a cabalidad lo que estamos haciendo. En primer lugar hay que explicar que los objetos osc~ y phasor~ tienen la posibilidad de cambiar la fase de las ondas que generan, para lo cual necesitamos sencillamente introducir en la entrada derecha de los objetos un nuevo argumento, cuyo valor se encuentre dentro del rango de cero a uno. En el ejemplo en pantalla podemos ver cuatro ondas senoidales que tienen la misma frecuencia y la misma amplitud, pero que tienen diferentes fases, en función del valor que se asigne en el argumento correspondiente. El segundo elemento que necesitamos revisar es el objeto de suma o resta de señal. Cuando a una señal de audio le sumamos o restamos un valor, lo que estamos haciendo es desplazar la señal hacia arriba o hacia abajo en relación con el valor de amplitud cero. Esto tiene que ver con lo que en electrónica se conoce como DC offset o compensación por corriente directa. En el ejemplo en pantalla vemos, cómo al sumar valores de audio las ondas se desplazan en relación con su centro. Recuerden que como estamos hablando de objetos de audio, las sumas y restas deben ir acompañadas de su tilde. En tercer lugar, hace falta explicar el objeto clip~, cuya función es limitar una señal de audio dentro del rango de amplitud que indiquemos y recortar todo aquello que exceda dicho rango. Vemos en pantalla dos ondas, una que incluye un objeto clip~ que limita la señal entre los valores de menos uno y uno, y la otra que no lo tiene. En el primer caso tenemos una onda que excede el umbral de saturación, y en el segundo caso tenemos una onda que se recorta sin salirse de la tabla. Por supuesto es posible cambiar los rangos de limitación por valores distintos, y hay que recordar que este objeto, como los anteriores, debe ser acompañado de su tilde. Por último, quisiera señalar una particularidad de las ondas asimétricas, como es el caso de la diente de sierra. Como las rampas de estas ondas tienen una única dirección, cuando convertimos su frecuencia a valores negativos multiplicándola por menos uno, es posible invertir la dirección de dichas rampas. Aunque en términos acústicos es difícil entender qué significa una cantidad negativa de ciclos por segundo, en el mundo digital es posible hacer este tipo de trucos para obtener el sonido que queremos. Muy bien, si entendimos lo anterior, estamos listos para modelar ondas triangulares y cuadradas. Empecemos con las primeras. Tanto las ondas triangulares como las cuadradas serán modeladas en Pure Data a partir de ondas diente de sierra. Entonces, en primer lugar necesitamos tener dos generadores de ondas phasor~ y requerimos multiplicar la frecuencia de uno de ellos, para que la dirección de sus rampas se invierta. Después haremos una resta de señal para desplazar cada onda hacia abajo, de modo que ambas tengan el cero como centro. Ya que hicimos eso, multiplicaremos por dos la amplitud de ambas ondas, para que cubran el rango de amplitud completo. Luego necesitamos aplicar un limitador para quedarnos únicamente con los valores positivos de la señal, y bien, como si fuera magia, al momento de sumar las rampas de ambas ondas tenemos una forma triangular. Ahora simplemente tenemos que aplicar una resta de señal, para hacer la compensación de corriente y centrar la onda triangular en cero. Si trasladamos el proceso anterior a Pure Data, tenemos lo siguiente: aquí podemos ver las dos ondas phasor~, una con la frecuencia invertida. Como en este caso es fundamental que ambas ondas tengan la misma fase, agregaremos en ambas un mensaje de fase cero que se active cada vez que cambie la frecuencia. Después de ello hacemos las restas de señal correspondientes. Después multiplicaremos por dos la amplitud de cada señal, y después agregaremos nuestro objeto clip~ para quedarnos solamente con los valores positivos de las ondas. El objeto de suma de señal que vemos aquí tiene la función de sumar ambas señales. En cambio, la resta de señal que vemos a continuación, tiene la función de compensar la onda triangular para centrarla en el valor de cero. Lo demás, ya lo conocemos. Por último hablaremos de las ondas cuadradas, que se diseñan de una manera bastante similar a las ondas triangulares, con la importante diferencia de que en este caso tenemos un desplazamiento de fase. Al igual que en las ondas triangulares, tenemos dos ondas phasor~, una de ellas invertida y ambas con una resta de señal de cinco décimas. Ahora desplazamos a la mitad la fase de una de las ondas, y después sencillamente las sumamos, logrando con esto una serie de cancelaciones de onda que dan lugar a la forma cuadrada. Así se ve lo anterior en Pure Data, a estas alturas no hace falta explicarlo, sino pedirles que lo analicen con atención y saquen sus propias conclusiones. Si alguno de ustedes siente que no entendió completamente lo que vimos, no se preocupe. Este es un tema relativamente complejo, y solamente la práctica podrá hacer que las cosas se comprendan a cabalidad. Para apoyarlos, incluímos a continuación una serie de documentos, donde se hace un repaso por escrito de lo que hemos visto, que seguramente le será muy útil para que practiquen en Pure Data. Nos vemos en el próximo.