[MÚSICA] Hola. Me da mucho gusto saludarles en el inicio de este cuarto módulo. Quienes han llegado hasta acá tienen you bastantes herramientas y seguramente están familiarizadas y familiarizados you con el lenguaje de Pure Data. De manera más especÃfica, saben you cómo trabajar con archivos de audio para editarlos, procesarlos, etcétera, y conocen you las principales herramientas de sÃntesis de este lenguaje. Ahora, lo que nos queda por revisar es cómo optimizar la plataforma de trabajo para que esta sea más eficiente al momento de correr nuestros patches. Me refiero a la manera que tendremos para optimizar nuestras cajas de objeto, nuestros cables, etcétera, al interior de nuestro espacio de programación. Además, veremos en este módulo cómo conectar Pure Data con otros lenguajes de programación y otros software, lo que les será bastante útil para generar sistemas interactivos en el futuro. Empezaremos entonces en este primer video viendo algunos aspectos de la optimización de objetos en Pure Data. Comenzaremos nuestro módulo hablando de cómo optimizar nuestro espacio de trabajo. Es decir, cómo hacer que nuestro entorno de programación y ejecución sea óptimo para los fines que buscamos, sobre todo previendo que nuestros patches tendrán cada vez más elementos y que una mala organización de estos elementos puede hacer ineficiente nuestro trabajo. Entonces, lo primero que tendremos que saber es que Pure Data nos permite cambiar la fuente de programación para que nuestros objetos aparezcan más pequeños o más grandes. Esto se logra dando clic en el menú Edit y seleccionando la opción de Font. Cabe decir que algunas versiones de Pure Data permiten también agrandar o achicar nuestra ventana utilizando la combinación de teclas Ctrl + o Ctrl -, pero hay también versiones que no tienen esta función. Es cosa de que revisen las funciones de la versión con la que estén trabajando. Ahora bien, independientemente del tamaño de la fuente, a veces queremos que nuestros botones, sliders, interruptores, cajas de número o tablas cambien de tamaño y para ello es posible configurar cada uno de estos elementos por separado. Simplemente tienen que dar clic derecho sobre el objeto que quieran modificar y abrir la ventana de propiedades. Ahà pueden modificar el tamaño de cada uno y, de hecho, pueden también asignarle colores y etiquetas. En el caso de las gráficas generadas con arrays, es importante distinguir la ventana de configuración del array propiamente de la ventana de configuración del marco de la gráfica. Es en esta última ventana donde pueden modificar el tamaño del recuadro que aparecerá efectivamente en la ventana de programación de su patch. Otra herramienta que puede ser bastante útil para optimizar su espacio de trabajo son los lienzos, que en inglés se traducen como canvas. Estos lienzos permiten delimitar áreas de trabajo, lo que puede ayudar de manera considerable a que nuestros patches se vean más ordenados y más sencillos de ejecutar. Para agregar un lienzo, simplemente tenemos que elegir la opción de Canvas en nuestro menú Put y una vez que el lienzo aparezca en la pantalla, necesitamos ingresar en su ventana de configuración para elegir su tamaño y color. Es importante decir que cuando añadimos un nuevo lienzo, este se superpondrá a los objetos que tenÃamos antes en nuestro patch. Para mandar al lienzo al fondo de nuestro entorno y conseguir que los objetos aparezcan encima de este, lo que tenemos que hacer es cortar y pegar dichos objetos para que el programa los considere frontales respecto al lienzo. En algunas versiones de Pure Data es también posible dar clic derecho sobre el lienzo y elegir la opción correspondiente para enviarlo al fondo de nuestra pantalla. you que sabemos cómo delimitar nuestro espacio de trabajo a través de lienzos y cómo modificar el tamaño de nuestras fuentes, aprenderemos cómo conectar nuestros objetos de manera inalámbrica, es decir, sin utilizar conexiones cableadas que muchas veces ensucian visualmente nuestros patches. Para ello necesitamos presentar los objetos Send y Recieve, que sirven respectivamente para enviar y recibir datos. Por ejemplo, si yo escribo un objeto que se llame send number y otro que se llame recieve number, los números que ingresen a la primera caja serán recibidos por la segunda, obviamente cuidando que la etiqueta que pongamos en cada caso sea idéntica. En caso de que queramos enviar señales de audio, simplemente tenemos que agregar nuestra tilde a los objetos send y receive y automáticamente estos serán capaces de transportar información de señal. Por cierto, en caso de que queramos ahorrar caracteres, estos objetos funcionan también utilizando la abreviatura S para send y R para receive. Solamente tienen que cuidar que la tilde esté presente cuando quieran transportan información de audio y ausente cuando se trate de datos de control. Es importante decir que para cada objeto de envÃo pueden agregar múltiples receptores. Por ejemplo, yo puedo enviar un mismo valor de frecuencia para que sea recibido por distintos osciladores. En cambio, cuando lo que quiero es lograr que diversos objetos envÃen información a un único destino, necesito utilizar una combinación de objetos diferentes. En este caso, tendrÃa que utilizar el objeto Throw y conectarlo a la salida de todos los envÃos y usar el objeto Catch para que reciba los datos o señales. Para ilustrar lo anterior, vemos en pantalla tres osciladores distintos que envÃan sus señales a un único objeto dac y que utilizan los objetos throw y catch para ahorrarse las conexiones cableadas. Con estos nuevos elementos podremos optimizar mucho mejor nuestro espacio en Pure Data. Lo que falta por ver en el siguiente video es cómo generar patches adentro de otros patches. Dejo a Hernani para que les explique esto.