Chance Based System with Colors!

More progress made today!

So I’ve been playing around with values from a forward FFT of the music data.

Here is my first attempt with calculating the colors from the FFT. Red is dependent on the amplitude of the first frequency band, green on the second, and blue on the third. The first three bands are the lowest frequencies, and thus generally have the greatest amplitudes. Although the colors were nice, everything was leaning heavy on the bluer side.

Chance Based System, Iteration III, Gorillaz, “Feel Good Inc”
Chance Based System, Iteration III, Gorillaz, “Feel Good Inc”
Chance Based System, Iteration III, Kishi Bashi, "Manchester"
Chance Based System, Iteration III, Kishi Bashi, “Manchester”

I realized that this was because the values for the RG channels were completely getting out of bounds. I adjusted the values with a scalar constant. The results were much much too dark and almost eerie:

Chance Based System, Iteration IV, Gorillaz, “Feel Good Inc”
Chance Based System, Iteration IV, Gorillaz, “Feel Good Inc”
Chance Based System, Iteration IV, Kishi Bashi, "Manchester"
Chance Based System, Iteration IV, Kishi Bashi, “Manchester”

I ended up fixing this by inverting the color of the stroke. Much better!

Chance Based System, Iteration V, Gorillaz, “Feel Good Inc”
Chance Based System, Iteration V, Gorillaz, “Feel Good Inc”
Chance Based System, Iteration V, Kishi Bashi, "Manchester"
Chance Based System, Iteration V, Kishi Bashi, “Manchester”

Alright, now at this point, the line opacity was at a constant 0.5. I decided to play with this value as well, making it proportional to the average amplitude of the frequency in the spectrum. I am very pleased with how this is turning out. I feel like the images actually capture their respective song quite well. I included two other output images of Ella Fitzgerald’s “Lullaby of Birdland” and Snoop Dogg’s “Gin and Juice” for additional contrast. I am excited that the differences in the song can also be seen visually through my system.

Chance Based System, Iteration VI, Gorillaz, “Feel Good Inc”
Chance Based System, Iteration VI, Gorillaz, “Feel Good Inc”
Chance Based System, Iteration VI, Kishi Bashi, "Manchester"
Chance Based System, Iteration VI, Kishi Bashi, “Manchester”
Chance Based System, Iteration VI, Snoop Dogg, "Gin and Juice"
Chance Based System, Iteration VI, Snoop Dogg, “Gin and Juice”
Chance Based System, Iteration VI, Ella Fitzgerald, "Lullaby of Birdland"
Chance Based System, Iteration VI, Ella Fitzgerald, “Lullaby of Birdland”

Thinking about differences actually led me to think about similarities. I decided to test this out by pulling two more songs off of Kishi Bashi’s album “151A” to see how they would compare. I have included the “Manchester” image again for reference.

Chance Based System, Iteration VI, Kishi Bashi, "Manchester"
Chance Based System, Iteration VI, Kishi Bashi, “Manchester”
Kishi Bashi, "I am the Antichrist to You"
Chance Based System, Iteration VI, Kishi Bashi, “I am the Antichrist to You”
Kishi Bashi, "It All Began With a Burst"
Chance Based System, Iteration VI, Kishi Bashi, “It All Began With a Burst”

Chance Based System Progress

So, I got started in Processing today! The Minim library makes it very easy to incorporate music as an input.

My first test was just to read in a music file and display the sound waves. The following images shows both the left and right channels.

test01_waves

This immediately reminded me of A. Michael Noll’s “Gaussian Quadratic,” so I turned the waves forms to display vertically.  I also disabled the reset background line of code and adjusted the opacity of the line stroke, so that you can still see the previous wave forms.

test02_vert

test03_black

Next, I started playing around more with color and the line stroke. The color, as of now, is completely randomized for each new wave form.  This is a combination of the left and right channels:

test04_comb

I decided to enlarge part of the wave form, making the lines more linear.

test05_linear

At this point, I decided to use the strokeJoin() along with the start/endShape() to avoid the dots caused by the end and start of a new line. I also  adjusted the starting x-position of the wave form based on the ending x-position of the previous wave.

test06

After some time I decided I much preferred the curved shapes given by the wave form.

Time to let a whole song play through! For testing purposes, I chose two different songs: Gorillaz – Feel Good Inc and Kishi Bashi’s – Manchester. Two main things stood out from this iteration that I disliked: (1) the straight vertical lines caused by the silences at the beginning and the end of each song, and (2) there wasn’t a whole lot of variation between the two songs.

Chance Based System, Iteration I, Gorillaz, “Feel Good”
Chance Based System, Iteration I, Kishi Bashi, “Manchester”

To resolve these issues, in my second iteration I incorporated the BeatDetect class (also from the Minim library), which allowed me to analyze the song for rhythmic onsets. I restricted my program to draw a line only if a beat was detected. This took care of the straight lines created during the fade in/out at the beginning/end of a song. It also allowed more visual differences between “Feel Good Inc” and “Manchester.” Since “Feel Good Inc” has a higher BPM, there are more wave forms filling up the space.

Chance Based System, Iteration II, Gorillaz, “Feel Good Inc.”
Chance Based System, Iteration II, Kishi Bashi, “Manchester”

I am very happy with the direction my project is heading in. Since the color is currently random, I would like to start experimenting with color and FFT song data next.

Chance Based Systems Project Brainstorming

Starting some work in my Generative Art class!

I am still in the process of determining what direction I want to go in for creating a chance-based system. But I figured it would be good to get my thoughts down in writing to help organize my ideas.

I am definitely intrigued with using music as a data input to guide each art piece. I think it would be interesting to see what my favorite songs of various genres produce.

After today’s lecture, the following works of A. Michael Noll and Ellsworth Kelly stood out to me.

Ellsworth Kelly, “Spectrum Colors Arranged by Chance II”
A. Michael Noll, “Gaussian Quadratic”
Piet Mondrian, “Composition in Color B”

I’ll be playing around more with how I could potentially combine these with music. I’m planning on using Processing for this project. I am pretty new to it, so I will have to do further research on the various information I can extract from a music file to feed into my system.