![header-DMI](https://hackmd.io/_uploads/H1OPdSHg1l.png) <br> # Diseño de Medios Interactivos Este curso está diseñado para explorar la programación creativa desde su propia estética, entendiendola no solo como un medio, sino como su capacidad expresiva. El objetivo del curso consiste en desarrollar los conocimientos necesarios para realizar un proyecto de arte digital que utilice la algorítmica básica. Para ello, se deberán aprender las bases de la programación creativa a través de Pure Data y conocer los principales protocolos de comunicación software-hardware utilizados habitualmente en el arte. </br> <div style="text-align: center;"> [![PureData Logo](https://hackmd.io/_uploads/rJCVilVR0.png =100x90)](https://puredata.info/downloads) [Link a la descarga](https://puredata.info/downloads) </div> </br> Para el desarrollo del curso see utilizará Pure Data; un entorno de programación visual que funciona en forma de circuito. Pure Data permite: - Programar de manera visual, con una interfaz intuitiva y fácil de aprender - Es un software OpenSource de nivel intermedio - Procesar imágenes y sonido en directo - Comunicar mediante OSC, MIDI (y ~DMX) <br> ## Sesiones del curso [**Sesión 1: Introducción a Pure Data**](https://hackmd.io/hePUOkplTqGtl5u4OEs6-Q) Introducción básica a Pure Data. Se revisarán las principales herramientas que contiene, la dinámica básica del software y algunas de sus funciones para realizar operaciones. Introducción a la **GUI (Graphic User Interface)**, los **[objetos]**, así como sus **Inlets** (**Hot** & **Cold**) y **Outlets**. [**Sesión 2: Circuitos Básicos**](https://hackmd.io/Ep1H3wYsQ2OsAI0BGqFtBw) Revisión de funciones temporales como **[metro]**, funciones de selección como **[random] [sel] [spigot]** y herramientas de reproducción de archivos de sonido como **[readsf] [~dac]**. [[**Sesión 3: Circuitos, conexiones y GUI**]](https://hackmd.io/@FvMTRdPQSeqhA0pGgMQEWg/B1bnld5kJe) Se trabajan funciones como **[send] y [return]**, que sirven para mantener el flujo de datos lo más ordenado posible. También se revisan cómo crear subpatches a través de **[inlet]** y **[outlet]** y cómo utilizar las funciones avanzadas de creación de **GUI**. [[**Sesión 4: Comunicación I: MIDI**]](https://hackmd.io/pjc8A_sIQdOd4T2tV775nA) Se introduce la comunicación vía **MIDI** a través de interfaces físicas (**AKAI LPD8 MKII**) y digitales (**LoopMIDI**). Se introducirá al protocolo MIDI a través de las notas y los controladores, aprendiendo a separar y recibir los distintos datos MIDI en Pure Data con los objetos **[notein]** y **[ctlin]**. [[**Sesión 5: Variables y expresiones**]](https://hackmd.io/@FvMTRdPQSeqhA0pGgMQEWg/HykjcvCgke) Durante esta sesión se introducen las **variables globales** con el objeto **[value]** (abreviado como **[v]**) y las **expresiones** con el objeto **[expr]**. [[**Examen: Mr. Potato Generator**]](https://hackmd.io/@FvMTRdPQSeqhA0pGgMQEWg/SyH_RU8byl) [[**Sesión 6. Comunicación (II) MIDI to Blender**]](https://hackmd.io/@FvMTRdPQSeqhA0pGgMQEWg/SJAQIouzyg) [**Sesión 7: Control GEM**] **(Manipulación Sonora)** [**Sesión 8: Comunicación Serial**] [**Sesión 9: Comunicación OSC**] [**Sesión 10: Comunicación DMX**] [**[Seguimiento de proyectos]**](https://hackmd.io/@FvMTRdPQSeqhA0pGgMQEWg/Sy06Z_Nmke) </br> ## Documentación **[Documentación oficial de Pure Data](https://pd.iem.sh/)** --- **[Pure Data](https://www.youtube.com/embed/1o5Wasmd8yU?si=V3TgoUWzgNe-CiSK)** (35 video playlist) by **cheetomoskeeto** <iframe width="560" height="315" src="https://www.youtube.com/embed/rtgGol-I4gA?si=Ei9XGjXexvupqLcZ" title="YouTube video player" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share" referrerpolicy="strict-origin-when-cross-origin" allowfullscreen></iframe> <br> <br> **[Let's Learn Pure Data! (26 video playlist)](https://www.youtube.com/embed/1o5Wasmd8yU?si=V3TgoUWzgNe-CiSK)** by **Sound Simulator** <iframe width="560" height="315" src="https://www.youtube.com/embed/1o5Wasmd8yU?si=V3TgoUWzgNe-CiSK" title="YouTube video player" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share" referrerpolicy="strict-origin-when-cross-origin" allowfullscreen></iframe> <br> <br> **[Real-time Music and Sound with Pure Data (65 video playlist)](https://www.youtube.com/embed/SLx7kjuFheY?si=NTSW26Wz_dSgtmNk)** by **QCGInteractiveMusic** <iframe width="560" height="315" src="https://www.youtube.com/embed/SLx7kjuFheY?si=NTSW26Wz_dSgtmNk" title="YouTube video player" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share" referrerpolicy="strict-origin-when-cross-origin" allowfullscreen></iframe> <iframe width="560" height="315" src="https://www.youtube.com/embed/m4bxWPwXxM0?si=65lOtxqqAHO3FuNd" title="YouTube video player" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share" referrerpolicy="strict-origin-when-cross-origin" allowfullscreen></iframe> <iframe width="560" height="315" src="https://www.youtube.com/embed/lOE69cMv408?si=kU3AkQoV5iAo06no" title="YouTube video player" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share" referrerpolicy="strict-origin-when-cross-origin" allowfullscreen></iframe>