Pure Data
Programacion con Bloques

Es así como una cadena de bloques unidos entre si crean sonido & audiovisual.

Como muestra en la imagen, el ultimo bloque se llama dac, que hace referencia a una salida de audio.

Pure Data

Pure Data (o simplemente Pd) es un lenguaje de programación visual de código abierto para multimedia. Su distribución principal (también conocida como Pd Vanilla) es desarrollada por Miller Puckette en el año 1996.

Pd permite a los músicos, artistas visuales, intérpretes, investigadores y desarrolladores crear software gráficamente sin escribir líneas de código. Pd se puede utilizar para procesar y generar sonido, video, gráficos 2D / 3D y sensores de interfaz, dispositivos de entrada y MIDI. Pd puede trabajar fácilmente en redes locales y remotas para integrar tecnología portátil, sistemas de motor, equipos de iluminación y otros equipos. Es adecuado para aprender métodos básicos de procesamiento multimedia y programación visual, así como para realizar sistemas complejos para proyectos a gran escala.


¿Por qué el PURE-DATA?

Para las computadoras reproducir un archivo de sonido es bastante fácil, tanto que pueden reproducir varios en simultaneo y sincronizadamente, también dentro de determinadas condiciones ir de un archivo a otro sin que se escuche o exista un lapso entre ellos.

Todo esto se puede utilizar como un medio para ejecutar música aleatoria.
La música aleatoria no es una novedad, pero si es novedad que exista la posibilidad hogareña o electro-domestica de recrear el factor aleatorio de una obra e interpretarla.


Pure-Data es software libre, esta cuidado y mantenido por gente que entiende mucho del tema, hay versiones para windows, mac y linux. que, a diferencia de los lenguajes tradicionales de código secuencial, trabaja a partir de objetos gráficos con forma de pequeñas ¨cajitas¨ que se conectan entre si a través de cables virtuales. Otra diferencia entre Max o Pd con los lenguajes como C, C++ o Java es que la programación está orientada a flujo de datos. Esto permite trabajar más fácilmente con procesos en paralelo y la la dirección de los datos al determina, en principio, la conexión entre los objetos a través de los cables.

Al abrir el programa PD, lo primero es configurar la tarjeta de sonido en donde vendrán las entradas y salida de audio en la pestaña: PD / Preferencias / Audio.
Luego configurar Midi, en Mac tienes que crear un puerto midi virtual en las configuraciones de Midi (No es necesario Loop midi) y en windows instalar el programa Loop Midi el cual creas el puerto midi virtual. Con esta última configuración podrás enviar mensaje midi desde PD a cualquier otro DAW y Receptor Midi (input Midi de un sintetizador o secuenciador). Pestaña de: PD / Preferencias / Midi

Crea un nuevo directorio, en donde podras administrar todos tus proyectos PD en una carpeta llamada Parche (patches) y otra sonidos (si trabajas con sonidos importados y/o Grabaciones de origen PD. La extension del Parche es.PD


Pd tiene dos modos, el de edición y el de ejecución. El primero de ellos se utiliza para cambiar los objetos, arrastrarles, armar o cortar conexiones entre objetos a través de los cables, etc. En el modo ejecución se pude enviar los los mensajes, cambiar números en las cajas de numero, ejecutar toggles, bangs, escuchar el audio, etc.

Los modos pueden intercambiarse desde el menú Edit, o con cmd + e (mac) o ctrl + d (win).

ARGUMENTOS

La mayoría de los objetos admiten argumentos luego del nombre del objeto. Los argumentos son valores iniciales, o por defecto, que determinan el comportamiento del objeto. Por ejemplo indicar la función que cumplen los objetos en un argumento aledaño es: En Mac (cmd + 5), Win (ctrl + 5)

Muchas veces las entradas del objeto sirven para modificar el valor inicial del argumento. En ese caso el dato que vale es el último que entró y el argumento queda sin efecto.


AYUDA

Al hacer click con el botón derecho del mouse sobre cualquier objeto se despliega un menú desde donde podemos acceder al "help" del objeto en cuestión. Allí encontramos la descripción de sus funciones y un pequeño ejemplo de programación.

También es posible hacer lo mismo sobre el canvas (el fondo de la pantalla de programación) para obtener una lista completa de los objetos de pd.

PROPIEDADES

Muchos objetos poseen propiedades que determinan su comportamiento y su aspecto en pantalla. Estas propiedades pueden verse y editarse en el menú "properties" al que se accede clickeando con el botón derecho del mouse.

Parra ello vamos al menú Poner (Put)

INLETS y OUTLETS

Los objetos para conectarse entre si poseen entradas y salidas (llamados inlets y outlets respectivamente) que permiten que la informacion pase de un objeto a otro/s. Solo es posible conectar un outlet de un objeto con un inlet de otro/s (o incluso uno propio) y viceversa. No es posible conectar inlets entre si u outlets entre si. Para realizar las conexiones se utilizan cables que se crean clickeando sobre un outlet y arrastrando hasta un inlet.

Para la mayoría de los objetos la entrada de la izquierda es la "hot inlet", debido a que el objeto solo devuelve información cuando recibe algo en esta entrada. El resto de las entradas, por lo general, solamente guardan los datos a ser procesados, pero la operación solo se resuelve en el momento en que la entrada izquierda es activada.

ELEMENTOS DE PROGRAMACION

Haciendo una comparación con los lenguajes de programación orientados a objetos, las cajitas son en realidad objetos o funciones implementados dentro de un objeto gráfico. Por lo tanto, dependiendo de las características particulares, se les puede pasar información a través de sus entradas y devolver resultados a través de sus salidas.
Importante: el flujo de datos es siempre de arriba hacia abajo. Es decir, en la parte superior de los objetos se encuentran las entradas, y por debajo las salidas. Solo puede conectarse una salida con una entrada.

Los elementos que utiliza pd para la programación son:

.- objetos
.- mensajes
.- números
.- símbolos
.- comentarios
.- los objetos gráficos (Proyectos Audiovisuales (GUI))

Make your own site - Check it