Looking Outwards: 04

AIVA is a software that aims to create AI-generated music. It gives its users the chance to select from a preset of tools or import their own inspiration in order to create a unique song or beat of their own. The creators aim for AIVA to be used as a supplement to other projects. Game developers, composers, and more can use AIVA to add an emotional supplement to the creative process. As someone who loves music, this project is especially interesting to me as I feel as if music is very key to the emotional experiences we find in other forms of entertainment. Many of these aspects intersect, creating a very personal experience for the consumer. What is different about AIVA, though, is that this experience can be created by an everyday person who might not be too versed on how to compose such music for themselves. This allows those who wish to experiment, and gives those who are using it for professional purposes to buy the copyright to the music that is created, which is something not usually seen in apps like these.

Project 04: String Art Pizza

I made a pizza, a box, and a sun. I’m not really sure where I was going with this but I ate pizza.

sketch
//Kaitlyn Chow
//kachow
//Section A

var dx1;
var dy1;
var numLines= 20;
var starLines= 8;
var angle=0;
var boxLines=40;



function setup() {
    createCanvas(400, 300);
    background(220);
    dx1= (30-50)/ numLines;
    dy1= (150-50)/ numLines;
    dyBox= (100)/ boxLines;


}

function draw() {
    //Shape 1 pizza: Lines from pizza left to the point (200, 170)
    stroke(250, 245, 202);
    line(50, 50, 30, 150);   //pizza left side
    line(30, 150, 200, 160); //pizza right bottom
    line(200, 160, 50, 50);  //pizza right top
    var x1= 50;
    var y1= 50;
    for(var p=0; p<= numLines; p+=1){
        line (x1, y1 , 200, 160);
        x1+= dx1;
        y1+= dy1;

    }
    //crust & toppings
    stroke(183, 137, 70);
    strokeWeight(5);
    line(50, 50, 30, 150);

    noStroke();
    fill(255, 0, 0);
    circle (75, 100, 20);
    circle (75+20, 140, 20);
    circle (75+20+30, 120, 20);



    //shape 2 sun: each time, line x and y position changes
    stroke(1);
    strokeWeight(1);
    var xStar= 300;
    var yStar= 50;
    for(var s=0; s<=starLines; s+=1){
        push();
        translate(300, 50);
        rotate(radians(angle));
        angle+=2
        line(s, 0, s, 50);
        pop();
    }


    //shape 3 pizza box:
    noFill();
    push();
    translate(200, 175); //location of box
    rect(0, 0, 100, 100);
    //left side(0, 0, 0, 100);
    //right side(100, 0, 100, 100);

    //box design
    stroke(78, 52, 46);
    var x1Box=0;
    var y1Box=0;
    var x2Box=100;
    var y2Box=100;
    for(var a=0; a<=boxLines; a+=1){
        line(x1Box, y1Box, x2Box, y2Box);
        y1Box+=dyBox
        y2Box-=dyBox

        //line colors
        if(a%2==1){
            stroke(78, 52, 46); //dark brown
        }
        else{
            stroke(156, 90, 5); //caramel brown
        }

    }

    pop()





}

LookingOutwards-04 (Section A)

I was interested by the “Mozart style Sonata 3-3” by David Cope. I find it interesting how a computer can create music that actually sounds like music to people– opposed to just having random notes played. Originally, I thought Cope had coded all the of the music just through code and I was really impressed. Cope’s artistic sensibilities are revealed because he would have to understand music theory to be able to produce music. At the same time, he would also have to understand Mozarts style very well to be able to create code that produced music that was similar.

However, I as was looking into how it was made, I read comments that said that it seemed like just a mash up of many of Mozart’s Sonatas. In this case, his code may just be taking parts of Mozart’s Sonatas and having the computer put it togther. If this is the case, this is not quite as advanced as I thought but I still think the music is pretty cool!

I’m not sure which one it is. If Cope was really able to code all of the music to sound like Mozart and the computer generated all of it, that is really impressive but either way, it is interesting how computers can create music which is usually thought to be very human.

Here is the link by David Cope. 2013. “Mozart style Sonata 3-3.”

Project-04: String Art-Pineapple

Although it’s a bit abstract, but it is a pineapple. Everything is made by “string”.

sketchDownload
/* Jiayi Chen
   jiayiche    Section A */
function setup() {
    createCanvas(300, 400);
    background('yellow');
}

var numLines = 50;
var dx1;
var dy1;
var dx2;
var dy2;

function draw() {
    // percentize width and height
    var w= width/100;
    var h= height/100;

    //body of pinapple
    //diagonals(*w,*h,*w,*h,*w,*h,*w,*h) general formula
    diagonals(0*w,0*h,0*w,100*h,0*w,100*h,100*w,100*h); //left outside
    diagonals(100*w,0*h,100*w,100*h,100*w,100*h,0*w,100*h); //right outside
    diagonals(0*w,100*h,0*w,30*h,0*w,30*h,100*w,30*h); //left inside
    diagonals(100*w,100*h,100*w,30*h,100*w,30*h,0*w,30*h); //right inside
     //smooth the vertexes of pinnaple
    diagonals(10*w,80*h,50*w,95*h,50*w,95*h,90*w,80*h); //bottom
    diagonals(10*w,50*h,50*w,35*h,50*w,35*h,90*w,50*h); //top
    diagonals(40*w,30*h,10*w,60*h,10*w,60*h,40*w,90*h); //left
    diagonals(60*w,30*h,90*w,60*h,90*w,60*h,60*w,90*h); //right
    //Green Hair
    push();
    stroke('green');
    strokeWeight(2);
    diagonals3(15*w,20*h,30*w,45*h,70*w,45*h,80*w,20*h);//sides
    diagonals3(30*w,45*h,50*w,15*h,70*w,45*h,50*w,15*h);//middle
    diagonals3(30*w,45*h,50*w,15*h,50*w,15*h,70*w,45*h);//upper middle 
    pop();
    //background
    diagonals3(0*w,0*h,0*w,30*h,100*w,0*h,100*w,30*h);
    //texture
    diagonals2(25*w,60*h,40*w,58*h,40*w,58*h,50*w,45*h);//left
    diagonals2(25*w,60*h,40*w,58*h,40*w,58*h,50*w,75*h);
    diagonals2(75*w,60*h,60*w,58*h,60*w,58*h,50*w,45*h);//right
    diagonals2(75*w,60*h,60*w,58*h,60*w,58*h,50*w,75*h);
    diagonals2(50*w,75*h,30*w,80*h,30*w,80*h,35*w,85*h);//bottom left
    diagonals2(50*w,75*h,70*w,80*h,70*w,80*h,65*w,85*h);//bottom right
    noLoop();

}


function diagonals(x1,y1,x2,y2,x3,y3,x4,y4){ //diagonal/straight lines between 2 lines
    line(x1,y1,x2,y2);
    line(x3,y3,x4,y4);
    dx1=(x2-x1)/numLines;
    dy1=(y2-y1)/numLines;
    dx3=(x3-x4)/numLines;
    dy3=(y3-y4)/numLines;
    for (var i = 0; i <= numLines; i += 1) {
        line(x1,y1,x3,y3);
        x1 += dx1;
        y1 += dy1;
        x3 -= dx3;
        y3 -= dy3; 
    }
}

function diagonals2(x1,y1,x2,y2,x3,y3,x4,y4){ //less lines
    line(x1,y1,x2,y2);
    line(x3,y3,x4,y4);
    numLines=20;
    dx1=(x2-x1)/numLines;
    dy1=(y2-y1)/numLines;
    dx3=(x3-x4)/numLines;
    dy3=(y3-y4)/numLines;
    for (var i = 0; i <= numLines; i += 1) {
        line(x1,y1,x3,y3);
        x1 += dx1;
        y1 += dy1;
        x3 -= dx3;
        y3 -= dy3; 
    }
}

function diagonals3(x1,y1,x2,y2,x3,y3,x4,y4){ //less lines second version
    line(x1,y1,x2,y2);
    line(x3,y3,x4,y4);
    numLines=30;
    dx1=(x2-x1)/numLines;
    dy1=(y2-y1)/numLines;
    dx3=(x3-x4)/numLines;
    dy3=(y3-y4)/numLines;
    for (var i = 0; i <= numLines; i += 1) {
        line(x1,y1,x3,y3);
        x1 += dx1;
        y1 += dy1;
        x3 -= dx3;
        y3 -= dy3; 
    }
}

Blog 4

Don Ritter’s piece, Intersection creates an experience that truly tests and separates the sense of hearing from the others. In a pitch dark room, the participant is to walk into a room with nothing but sounds. Sounds of cars passing by, as if you were in the middle of a busy intersection. This experience that lacks sight, and essentially all three other senses as well really gets the participant to listen. I assume the purpose is to create an experience that evokes anxiety and fear, scared that a car is approaching but not knowing from where. Like many other projects of his, like These Essences, aims to unsettle viewers with extremely vivid sounds that are in some cases assisted with very unusual and textural images. The combination of two and sometimes just the sound creates sounds that are beyond just sound, but enough to very effectively penetrate the visitors’ mind through sound. The way these sounds are created are likely using visuals that accompany the sounds to engineer the sounds so that just the sounds alone can paint or evoke the feelings of the visuals much more powerfully than the image can. I think it is a combination of AI that understands sounds and codes that amplifies certain patterns of sound that we are sensitive to.

https://aesthetic-machinery.com/compilation.html

project 4

sketch
//Keng Pu (Paul) Li
//section A 
//9/24/22

var numLines = 50;
var dx1;
var dy1;
var dx2;
var dy2;
var dx3;
var dy3;
var dx4;
var dy4;
var dx5;
var dy5;
var dx6;
var dy6;

function setup() {
    createCanvas(300,400);
    background(220,50,100);
//triangle
    dx1 = 5;
    dy1 = 5;
    dx2 = 10;
    dy2 = 10;
//most left
    dx3 = 5;
    dy3 = 1;
    dx4 = 5;
    dy4 = 5;
//blue
    dx5 = 7;
    dy5 = 1;
    dx6 = 5;
    dy6 = 5;
//dark blue line
    dx7 = 5;
    dy7 = 1;
    dx8 = 15;
    dy8 = 15;

//very dark
    dx9 = 10;
    dy9 = 7;
    dx10 = 20;
    dy10 = 5;
}

function draw() {
    background(220,50,100);
//most left 
    x3 = 0;
    y3 = width/2+100;
    x4 = width/2;
    y4 = width/2+100;
    for(var i = 0; i<40; i++){
        strokeWeight(2);
        stroke(200,90,180);
        line(x3,y3,x4,y4);
        x3 += dx3;
        y3 += dy3;
        x4 -= dx4;
        y4 += dy4;
    }
    //triangle
    x1 = width/2;
    y1 = width/2+100;
    x2 = width/2;
    y2 = width/2+100;
    for(var i = 0; i<100; i++){
        strokeWeight(3);
        stroke(0,20,20,70);
        line(x1,y1,x2,y2);
        x1 += dx1;
        y1 += dy1;
        x2 -= dx2;
        y2 += dy2;
    }
 //dark blue line
    x7 = width-170;
    y7 = 50;
    x8 = width/2+70;
    y8 = width;
    for(var i = 0; i<100; i++){
        strokeWeight(1);
        stroke(50,10,190);
        line(x7,y7,x8,y8);
        x7 += dx7;
        y7 += dy7;
        x8 -= dx8;
        y8 += dy8;
    }

//blue line
    x5 = 0;
    y5 = width/2;
    x6 = width/2+50;
    y6 = width;
    for(var i = 0; i<90; i++){
        strokeWeight(0.5);
        stroke(110,110,255);
        line(x5,y5,x6,y6);
        x5 += dx5;
        y5 += dy5;
        x6 -= dx6;
        y6 += dy6;
    }


    //very dark lines
    x9 = width/2+50;
    y9 = -100;
    x10 = width;
    y10 = height;
    for(var i = 0; i<100; i++){
        strokeWeight(0.5);
        stroke(50,10,90);
        line(x9,y9,x10,y10);
        x9 += dx9;
        y9 += dy9;
        x10 -= dx10;
        y10 += dy10;
    }
}

Looking Outwards-04

The Project I choose is “Light & Sound Synthesis: In conversation with Amay Kataria”. This is an interactive art device.
With the incorporation of a custom program, the audience will become part of the exhibition, and they can control light and sound with their own opinion.
The most interesting part of this project is the creator uses light and sound to create a connection between space, art, and the human mind.
The program and digital interface are able to store every different visitors’ thoughts when they are experiencing the project, and the stored data also influence the surrounding environment.
I also admire that the author tried to think about what is the maintenance of thoughts.

here is the link: https://www.creativeapplications.net/environment/light-sound-synthesis-in-conversation-with-amay-kataria/

Project 4

this is my project 4

sketch
var dx1;
var dy1;
var dx2;
var dy2;
var distance = 5
var numLines = 35;

function setup() {
    createCanvas(400, 300);
    background(0);
    line(250, 0, 25, 25); //top-left
    line(25, 25, 0, 250);
    
    dx1 = -225/numLines;
    dy1 = 25/numLines;
    dx2 = -25/numLines;
    dy2 = 225/numLines;

    line(150, 300, 375, 275);  // bottom right
    line(375, 275, 400, 50);

    bx1 = 225/numLines;
    by1 = -25/numLines;
    bx2 = 25/numLines;
    by2 = -225/numLines;

}

function draw() {

    //top left part
    var x1 = 250;
    var y1 = 0;
    var x2 = 25;
    var y2 = 25;

    stroke(0, 50, 233);

    for (var i = 0; i <= numLines; i += 1) {
        line(x1, y1, x2, y2);
        x1 += dx1;
        y1 += dy1;
        x2 += dx2;
        y2 += dy2;
    }  

    //bottom right
    var a1 = 150;
    var b1 = 300;
    var a2 = 375;
    var b2 = 275;
    for (var i = 0; i <= numLines; i += 1) {
        line(a1, b1, a2, b2);
        a1 += bx1;
        b1 += by1;
        a2 += bx2;
        b2 += by2;
    }

    //circular shape
    push();
    translate(width/2, height/2);
    var x = 200
    var y = 100;

    //pink
    for(y = 10; y <= 500; y += 3) {
        rotate(radians(175));
        strokeWeight(1)
        stroke(244, 82, 255);
        line(x, y, 10, y)
    }
    //blue
    for(y = 40; y <= 400; y+=0.5) {
        rotate(radians(35));
        strokeWeight(0.8)
        stroke(81, 211, 255, 70);
        line(150, y, x+distance, y+distance)
        distance -= 5;
    }

    pop()

    noLoop();
}

Project 4: String Art

/*
 * Andrew J Wang
 * ajw2@andrew.cmu.edu
 * Section A
 *
 * This program draws line arts
 */

var maxNum = 30;


function setup() {
    createCanvas(400, 300);
    background(0);
}

function draw() {
    background(0);
    //using the 3 functions for 3 different shapes
    backgroundStrings (50);
    stroke(255);
    circleStrings(200,150,200,500);
    stroke(255,0,0,255);
    circleStrings(200,150,100,58);
    push();
    fill(255);
    ellipse(200,150,100);
    pop();
    stroke(255,0,0,255);
    hexagonStrings(200,150,100,5,10);
    
}

function circleStrings(Cx,Cy,Cd,Cl) {
    for (var k = 0; k < maxNum; k++)
    {   
        //grabing points on the circle
        y=sin((k*(360/maxNum))*Math.PI/180)*(Cd/2)+Cy;
        x=cos((k*(360/maxNum))*Math.PI/180)*(Cd/2)+Cx;
        //making lines that is perpandicular to the radius with adjustable lengths
        p1X = x + cos(-(Math.PI/2-(k*(360/maxNum))*Math.PI/180))*Cl;
        p1Y = y + sin(-(Math.PI/2-(k*(360/maxNum))*Math.PI/180))*Cl;
        p2X = x - cos(-(Math.PI/2-(k*(360/maxNum))*Math.PI/180))*Cl;
        p2Y = y - sin(-(Math.PI/2-(k*(360/maxNum))*Math.PI/180))*Cl;
        line (p2X,p2Y,p1X,p1Y);
    }
}


function hexagonStrings(Hx,Hy,Hd,num,seg) {
    //make arrays
    const array = [];
    var angle = 360/num;
    for (var k = 0; k < num; k++)
    {   
        array[k] = new Array();

        y=sin(-Math.PI/2+(k*angle)*Math.PI/180)*(Hd/2)+Hy;
        x=cos(-Math.PI/2+(k*angle)*Math.PI/180)*(Hd/2)+Hx;
        line (Hx,Hy,x,y);
        
        for (var s = 0; s<seg; s++)
        {   
            //3D array grabing every points on the line of the star
            array[k][s] = new Array();
            var y1=sin(-Math.PI/2+(k*angle)*Math.PI/180)*(Hd/2)*s/seg+Hy;
            var x1=cos(-Math.PI/2+(k*angle)*Math.PI/180)*(Hd/2)*s/seg+Hx;
            array[k][s][0] = x1;
            array[k][s][1] = y1;

        }
    }

    //cross connecting those lines using for loop
    for (var k = 0; k < num-1; k++)
    {
        for (var s = 0; s<seg; s++)
        {
            line(array[k][s][0],array[k][s][1],array[k+1][seg-1-s][0],array[k+1][seg-1-s][1]);
        }
    }
    for (var s = 0; s<seg; s++)
    {
        line(array[num-1][s][0],array[num-1][s][1],array[0][seg-1-s][0],array[0][seg-1-s][1]);
    }

}

function backgroundStrings (num) {
    for (var k=0; k<num; k++)
    {
        //cross connecting with for loop
        stroke(255/num*k,0,0,255);
        line (k*width/num,0,width,k*height/num);
        line (width-k*width/num,height,0,height-k*height/num);
        line (k*width/num,height,width,height-k*height/num);
        line (width-k*width/num,0,0,k*height/num);
    }
}

LO 4 – Sound Art

I really like the albums that the Fat Rat, a music producer, made because I really like his style and his unique use of those special sound effects. (I’ll put a link for one of the songs he made (Unity) here) Most digital music producers always use a DAW (digital audio workstation) to make their music, and I would briefly explain how those producers use a DAW to make their music. First, they put down chords on some specific track lists (that look like a timeline) using pre-recorded chords of different instruments (which the Fat Rat mostly uses pre-recorded game sound effects, usually electronic music using programmable sound generator sound chips) in order like building blocks and then, they arrange those musical sentences (chords) so it all fits together to form a rhythm. After arranging those notes, producers have to adjust the audio levels of each track list (usually different instruments) to make them sound right, and this process is called the mix stage. In between the stages, the producer can easily add effects or change chords (like laying on top of the base note), making the music original and flexible to changes. 

One example of a DAW Program – Cubase