2. Crear amb codi

2.2. Eines de programació creativa

2.2.4. MaxMSP/PureData

MaxMSP i PureData són dues eines desenvolupades per Miller S. Puckette, un investigador interessat en la música per ordinador. Puckette crea en els anys 80 el programari Max com a part del seu treball de recerca en música electroacústica a l’IRCAM (Institut de Recherche et Coordination Acoustique/Musique) de París i, de fet, bateja el programari en honor a Max Vernon Mathews, pioner de la música per ordinador. El programari, creat per MacOS, és àmpliament utilitzat i es desenvolupa posteriorment en diverses versions, des de la que va dissenyar IRCAM el 1989 per a NeXT, Silicon Graphics i Linux, coneguda com a Max Faster Than Sound (Max/FTS) fins a la versió comercial (Max), ampliada per David Zicarelli, que distribueix la seva empresa Cycling’74 des de 1999, juntament amb altres versions com Max/MSP, que introdueix el 1997 la possibilitat de manipular senyals d’àudio digital en temps real, o nat.0+55, creada per Netochka Nezvanova, que permet controlar vídeos en temps real i ha estat molt popular entre els artistes de nous mitjans fins al començament de l’any 2000. D’altra banda, Puckette també ha desenvolupat una versió completament nova de Max, anomenada Pure Data, que s’ha consolidat com una alternativa de codi obert a Max/MSP.

Per tant, no són simples editors d’àudio o vídeo, sinó que duen a terme tots els seus processos en temps real, a la manera d’un instrument que es pot ampliar de diverses maneres. Per exemple, Max/MSP es pot connectar amb altres sistemes i dispositius com ara un controlador MIDI (amb què es poden executar accions mitjançant botons, dials o teclats), una placa Arduino (que permet interactuar amb sensors electrònics, motors i altres components), sintetitzadors, sistemes d’il·luminació interactius i reactius (que responen a la música), projectors de vídeo, instruments musicals, micròfons i un llarg etcètera. Actualment, Max és compatible amb MacOS X i Windows, mentre que Pure Data es pot instal·lar en els sistemes operatius MacOS X, Windows i Linux.

Max/MSP

Max es divideix en diverses parts:

  • Max: operacions de càlcul i MIDI.
  • MSP: processament de senyals i àudio.
  • Jitter: manipulació de vídeos i gràfics.

Quan obrim l’entorn de programació, creem un programa (patch), en què s’agrupen les diferents instruccions que haurà d’executar la màquina, sia per a produir so, manipular senyals de vídeo o produir una determinada interacció. Aquest programa es presenta com un full en blanc en què es van afegint objectes amb diferents funcions. Aquests objectes es connecten entre si per mitjà de línies que s’estenen des d’un dels enllaços de sortida d’un objecte a un enllaç d’entrada en un altre, establint una relació unidireccional de control o transmissió de dades.

La interfície visual permet aquí manejar els diferents elements de manera més intuïtiva i examinar com s’ha construït el procés que genera el programa per a modificar-lo o corregir errors.

La flexibilitat d’aquest sistema permet construir el que es pot considerar com un instrument, que es pot executar en temps real, la qual cosa permet efectuar canvis i conèixer els resultats de manera immediata. Així, és possible crear una composició d’àudio o vídeo que es crea automàticament a partir de determinats inputs, com ara dades recollides en temps real de diverses fonts, amb la qual cosa s’obté una peça generativa o interactiva. Per exemple, a Synaesthetic Object (Coltrane), l’artista R. Luke Dubois (cocreador de Jitter), crea una performance audiovisual emprant una anàlisi computeritzada de l’àlbum Ascension (1965) del músic John Coltrane per a generar una forma en 3D en temps real. Controlant diversos paràmetres, l’artista manipula la forma en 3D, que al seu torn genera diferents sons en funció de la seva contínua alteració de l’aspecte.

A més de la seva capacitat per a treballar amb continguts generats en temps real, Max/MSP destaca per la seva capacitat per a connectar diversos objectes entre si i controlar diferents dispositius. ReacTIVision és una eina de codi obert que, combinada amb Max/MSP, permet captar la posició d’objectes dotats de marcadors per mitjà d’una càmera, de manera que és possible manipular-los per a modificar una composició en temps real o obtenir una instal·lació interactiva. Un altre dispositiu compatible amb Max/MSP que ha estat molt popular és Xbox Kinect, ideada per a la consola de videojocs de Microsoft. Aquesta càmera amb sensors de moviment permet seguir amb precisió els moviments de les diferents parts del cos. També és possible emprar les plaques Arduino, que permeten crear instal·lacions interactives i incorporar nombroses funcions a objectes i sensors.

Pure Data

Pure Data (Pd) és bàsicament la versió gratuïta i de codi obert de Max/MSP, escrita principalment pel seu creador Miller S. Puckette. També està pensada perquè els artistes visuals i músics puguin crear programari sense escriure codi a fi de processar i generar so, vídeos, gràfics 2D i 3D, interfícies i MIDI. Pd es distribueix en dues versions:

  1. Pd vanilla: centrat en senyals d’àudio i processos MIDI.
  2. Pd extended: inclou un gran nombre de llibreries escrites per la comunitat de col·laboradors i es pot emprar per a processar gràfics, streaming audiovisual, ús de sensors, etc.

Cada objecte executa una tasca específica, des d’operacions aritmètiques a funcions complexes d’àudio o vídeo com ara descodificació de vídeo o reverberació. Pd es beneficia dels nombrosos programes que han creat els desenvolupadors i artistes que l’empren, la qual cosa permet treballar amb qualsevol d’aquests patches i aplicar-ho, amb o sense modificacions, en un projecte nou.

Més enllà dels recursos facilitats en els llocs web de Max/MSP i Pure Data, la millor manera de conèixer aquests programes és explorar els usos que fan d’aquests els artistes visuals i músics en els vídeos sobre Pure Data penjats a Vimeo i YouTube i els recursos «Made with Max» i «Projects» al web de Cycling’74.