Códigos

Creación de código en software libre para generar la pieza sonora de Ernesto Romero

Pluck tweet
El siguiente código genera el sonido y su desarrollo:
{a=(1..7)/999;Splay.ar(Pluck.ar(Saw.a r, S a w. k r ( 2 * * ( 1 . . 7 ) / 8 ) , 1 / 2 2 0 , 1 / (440*([0,2,3,5,7,9,11]+LFPulse.kr(a,mul:[-12,0,12])).midiratio),99,LFTri.kr(a),1/32))}.play


Programación realizada por Minerva Hernández para generación de paisaje visuales


Programación realizada por Nicolás Ortega  en el marco de la Tesis de Grado para la Licenciatura en Música y Tecnología de IMD+GeM, un instrumento musical digital basado en un guante para utilizar la gestualidad de las manos en la composición de música electrónica y el procesamiento de audio digital en tiempo real.


Programación en Isadora de Maximiliano Wille  para generación de paisajes visualen el Nodo Argentina


Código de programación realizado por Cristian Delgado para dispositivo con 4 sensores de pulso con el fin de obtener un puslo promedio colectivo trasducido en 7 colores.

A(pin2),B(pin3),C(pin4) y D(pin6), La calibración se hace midiendo la entrada del sensor durante 5 segundos, en los cuales se mide el valor máximo y el mínimo obtenido Los bpm se miden dentro de la función getPulse, dentro de la cual se toma un valor para tstart cuando el pin correspondiente tiene señal y se le resta tend cuando termina la lectura con los siguientes valores:

Sabiduria 80-90 ppm, morado.
Intuicion 91-100 ppm, azul
Comunicacion 101-110 ppm, celeste
Equilibrio 111-120 ppm, verde
Inteligencia 121-130 ppm, amarillo
Alegria 131-141 ppm, naranja
Vitalidad 141-150ppm, rojo

short lr_1=3,lg_1=5,lb_1=2,lr_2=6,lg_2=9,lb_2=7,lr_3=10,lg_3=11,lb_3=12,sensor1=0,sensor2=2,sensor3=4;
unsigned long t11=0,t12=0,t13=0,t21=0,t22=0,t23=0;
int i1=0,j1=0,i2=0,j2=0,i3=0,j3=0,d1,d2,d3;
int pulso=1000,r,g,b;
int a,c,d;

void setup() {
// put your setup code here, to run once:
Serial.begin(9600);
pinMode(lr_1,OUTPUT);
pinMode(lg_1,OUTPUT);
pinMode(lb_1,OUTPUT);
pinMode(lr_2,OUTPUT);
pinMode(lg_2,OUTPUT);
pinMode(lb_2,OUTPUT);
pinMode(lr_3,OUTPUT);
pinMode(lg_3,OUTPUT);
pinMode(lb_3,OUTPUT);
}

void LED1() {
// if(pulso>1000) {
// r=117;
// g=42;
// b=1;
// } // indigo
// else if((pulso>850)&&(pulso<1001)) {
// r=0;
// g=0;
// b=1;
// } // azul
// else if((pulso>700)&&(pulso<851)) {
// r=0;
// g=234;
// b=1;
// } // turquesa
// else if((pulso>650)&&(pulso<701)) {
// r=0;
// g=255;
// b=0;
// } // verde
// else if((pulso>600)&&(pulso<651)) {
// r=255;
// g=255;
// b=0;
// } // amarillo
// else if((pulso>450)&&(pulso<601)) {
// r=255;
// g=138;
// b=0;
// } // naranja
// else if((pulso>300)&&(pulso<451)) {
// r=255;
// g=0;
// b=0;
// } // rojo

analogWrite(lr_1,r*i1);
analogWrite(lg_1,g*i1);
analogWrite(lb_1,b*i1);

}

 

void loop() {
// put your main code here, to run repeatedly:
a=analogRead(sensor1);
if(a>=500)
{
//i1=1;
//t11=millis();

digitalWrite(lr_1,HIGH);
digitalWrite(lg_1,HIGH);
digitalWrite(lb_1,HIGH);

}

if(a<150)
{
// i1=0;
// t12=millis();
// pulso=(t12-t11)*2;
// LED1();
digitalWrite(lr_1,LOW);
digitalWrite(lg_1,LOW);
digitalWrite(lb_1,LOW);

}
c=analogRead(sensor2);
if(c>=500)
{
//i1=1;
//t11=millis();

digitalWrite(lr_2,HIGH);
digitalWrite(lg_2,HIGH);
digitalWrite(lb_2,HIGH);
}

if(c<150)
{
// i1=0;
// t12=millis();
// pulso=(t12-t11)*2;
// LED1();

digitalWrite(lr_2,LOW);
digitalWrite(lg_2,LOW);
digitalWrite(lb_2,LOW);
}
d=analogRead(sensor3);
if(c>=500)
{
//i1=1;
//t11=millis();

digitalWrite(lr_3,HIGH);
digitalWrite(lg_3,HIGH);
digitalWrite(lb_3,HIGH);
}

if(c<150)
{
// i1=0;
// t12=millis();
// pulso=(t12-t11)*2;
// LED1();

digitalWrite(lr_3,LOW);
digitalWrite(lg_3,LOW);
digitalWrite(lb_3,LOW);
}
delay(50);
}