Archive for the 'Programming' Category

Zach Lieberman en Barcelona.

Wednesday, November 16th, 2005

Bueno casi, en Sabadell.

El viernes por la tarde, Zach Lieberman estará dando una charla-muestra de trabajos en el ESDI. Desde el lunes está dando un taller de procesado de imagen y visión por ordenador con processing que un servidor (no un servidor web, sino yo) está devorando con fruición y tratará de volcar aquí una vez haya digerido.

Si no sabes quien es, igual has visto alguna vez trabajos suyos, como Messa di Voce, Manual Input Sessions, re:mark y algunas más; si no las conoces (y no te has quedado boquiabierto), igual te suena Golan Levin, con quien colabora habitualmente; o has oido hablar de festivales de arte electrónico como Ars Electronica, Ultrasound o el Sonar, donde suele dejarse ver. Si no es suficiente con eso para cancelar cualquier plan que tuvieras ¿qué haces leyendo este blog?

un momento de messa di voce, donde la voz del cantante es visualizada con burbujas

La charla-muestra será el Viernes 18 de Noviembre a partir de las 4 4:30 de la tarde (aunque es posible que lo cambien a las 5 para que vaya más gente, lo diré por aquí si es así) en el ESDI en Sabadell (en la página del evento puedes ver el programa). Es completamente gratuita y estoy seguro de que será increíblemente interesante. Si necesitas datos sobre como ir o cualquier cosa no dudes en comentar por aquí o mandarme un mail.

Nos vemos allí.No pude ir. :(

tags:No tags

No me usen tanto el random.

Monday, November 14th, 2005

No pude evitar una sonrisita cuando leí en creative code que maeda, observando que los trabajos iniciales de sus alumnos del aesthetics + computation group se apoyaban demasiado en el random, prohibió el uso de la aleatoriedad en todos los ejercicios subsiguientes. Fue después de haber leído en el mismo libro el artículo en el que joshua davis nos canta por enésima vez las virtudes de su dynamic abstraction machine (nombre insoportablemente pedante para un programa que lo único que hace es distribuir aleatoriamente en pantalla los gráficos cada vez que pulsa la barra espaciadora) entre referencias a su adorado pollock y al manido “beautiful accident”.

Portada del libro creative code

Por lo demás, un libro muy recomendable (que a mi me regalaron jose y ana, muchísimas gracias) con unos cuantos buenos artículos de consagrados de la creación digital, muchas reflexiones profundas del maestro y un considerable listado de nombres (los alumnos del aesthetics + computation group) que investigar.

tags:No tags

ChucK suena…

Friday, September 2nd, 2005

Esto:


//connect
sinosc s1 => JCRev r1 => dac;
sinosc s2 => dac;
sinosc s3 => dac;
// adjust gains
.3 => s1.gain;
.2 => s2.gain;
.2 => s3.gain;
// scale array
//int scale [7];
[0, 2, 4, 5, 7, 9, 11] @=> int scale[];
60 => int baseNote;
// notes
std.mtof(baseNote) => s1.freq;
std.mtof(baseNote) => s2.freq;
std.mtof(baseNote) => s3.freq;
while (true) {
	std.rand2(0, (scale.cap()-1)) => int noteNow;
	scale[noteNow] => int noteInScale;
	std.mtof((baseNote) + noteInScale) => s1.freq;
	if (maybe) {
		std.mtof(baseNote + noteInScale) => s2.freq;
	}
	if (maybe) {
		std.mtof((baseNote - 12) + noteInScale) => s3.freq;
	}
	.3::second => now;
}

suena así en ChucK.

Otro ejemplo, esta vez usando samples en vez del motor de audio interno (el código está bastante feo como para compartirlo).

Y como me temo que va a haber más posts de estos, inauguramos categoría: ChucK

tags:No tags

ChucK vs Supercollider

Monday, August 29th, 2005

Más anuncios, más ChucK, más Toplap:

Raging Code; The Battle of Barcelona

Dos miembros del colectivo toplap, Ge Wang y Nick Collins nos van a hacer bailar al son de su código en el marco del OFF-ICMC, la sección de actividades paralelas (y gratuitas) de la International Computer Music Conference que se celebrará en barcelona del 4 al 10 de Septiembre de este año.

El concierto tendrá lugar en el metrònom el miércoles día 7 a las 23:15. De todos modos, durante toda la semana hay muchas propuestas muy interesantes.

Actualización: Finalmente estuve y me encantó. Si quereis ver un par de videos y leer una breve crónica en gallego, hacedlo en alg-a

tags:No tags

chuck ya es 1.2

Friday, August 26th, 2005

Otro de esos anuncios que no puedo evitar. El lenguaje de programación musical chuck ha pasado de la versión 1.1.5.6 (nombre en clave frankenstein) a la 1.2 (dracula).

Para quienes no lo conozcan:

ChucK is a new audio programming language for real-time synthesis, composition, and performance, which runs on MacOS X, Windows, and Linux. ChucK presents a new time-based concurrent programming model, which supports a more precise and fundamental level of expressiveness, as well as multiple, simultaneous, dynamic control rates, a precise and straightforward concurrent programming model, and the ability to add, remove, and modify code, on-the-fly, while the program is running, without stopping or restarting. It offers composers, researchers, and performers a powerful and flexible programming tool for building and experimenting with complex audio synthesis programs, and real-time interactive control.

Básicamente es un lenguaje que te permite programar música en directo (al estilo del colectivo toplap). Llevo algún tiempo experimentando con el y es divertidísimo (una vez que te haces con la sintaxis, un poco marciana para mi gusto).

Aunque el cambio de versión (1.1.5.6 a 1.2) pueda parecer trivial, le han añadido algunas cosas imprescindibles, como arrays (¡no tenía!) o una especificación del lenguaje decente y muchas interesantes, como soporte para OSC, clases y objetos…

El fin de semana se presenta jugoso. A ver si soy capaz de tener algo audible para el lunes :)

via Beginning chuck

tags:No tags

OpenSound Control: Recopilacion de recursos.

Wednesday, August 17th, 2005

Si quisieras, por ejemplo, hacer que processing leyera el input de tu tableta wacom o tu webcam y max/msp lo tradujera a sonidos, o que un ordenador estuviera recibiendo información de sensores y otro (ya sea en una red local o en internet) estuviera generando cualquier output (visual, sonoro, …) de acuerdo con los datos recibidos, tarde o temprano te toparías con que la comunicación entre programas, sensores y/o ordenadores la realizaría un “algo” llamado OpenSound Control (”OSC”), pues:

OpenSound Control (”OSC”) is a protocol for communication among computers, sound synthesizers, and other multimedia devices that is optimized for modern networking technology and has been used in many application areas.

Genial. Es lo que necesito para desarrollar alguna cosilla que me ronda la cabeza últimamente. Pero… al buscar algo de documentación (”beginner’s-friendly” por favor), me he encontrado que no hay casi nada al respecto y lo que hay está muy disperso.

Es por eso que he pensado en recopilar los (escasos) recursos útiles que me he encontrado:

Open Sound Control: State of the Art 2003
Aparentemente todo lo que necesitas saber sobre OSC, incluyendo una descripción de sus componentes, las principales implementaciones (Max/MSP, SuperCollider, Reaktor, Pure Data…) y una relación de beneficios.
Open Sound Control, An Overview
Explicación de la gente de ixi-software, creadores, por ejemplo de Picker y SpinOSC. Una introducción a OSC más general y menos académica que la primera. Probablemente mejor para empezar si no tienes ninguna idea.
OpenSound Control Specification
La especificación completa. Yo empecé por aquí y no lo recomiendo, aunque siempre conviene tenerla a mano. Especialmente útiles los ejemplos
Capítulo sobre OSC en el manual de OSW
Open Sound World es un entorno de programación extensible creado por los mismos que el protocolo OSC (el CNMAT), de funcionamiento parecido a Max/MSP y otros lenguajes de “cableado”. Aunque esta es la descripción de una implementación específica, los ejemplos provistos ayudan a comprender el funcionamiento general del invento.
OpenSoundControl Application Areas y Managing Complexity with Explicit Mapping of Gestures to Sound Control with OSC
Para que veas lo que se puede hacer

Si alguien tiene algún otro recurso que compartir, coméntelo y lo añado a la lista.

tags:No tags

If you like this, you’ll probably enjoy…

Monday, July 25th, 2005

Algunas lecturas veraniegas para todo aquel interesado en las intersecciones entre la programación y la creación (visual, sonora, conceptual…):

  • Computer Vision for Artists and Designers: Pedagogic Tools and Techniques for Novice Programmers, de Golan Levin
  • Completísimo ensayo teórico-práctico sobre visión por ordenador para los que no somos programadores de verdad (lease ingenieros). Con gran cantidad de referencias a otros recursos e incluso implementaciones de algunas técnicas en… ¿lo adivinan? Claro que si.

  • {Software} structures, de Casey Reas
  • Un interesante escrito que relaciona el arte producido con software con la obra del artista conceptual Sol Lewitt. Acompaña a la exposición del mismo nombre comisionada por el portal de net art whitney artport.

  • LivecodingGrades, del colectivo Toplap
  • Tal y como su nombre indica, el livecoding es el arte de programar (y obtener resultados) en directo. Toplap son un interesantísimo colectivo dedicado a esta disciplina. La mayoría hacen música aunque también los hay que producen visuales. Estos livecoding grades son los hipotéticos ejercicios que tendría que efectuar un estudiante para convertirse en livecoder. Obviamente están bromeando, pero tiene mucha gracia. (Sobre este grupo espero publicar pronto una prensentación en profundidad).

tags:No tags