Project 2 Hypnotic Style (Michael Frankfort)

For the second project, we were asked to create a mixed video, containing external input, with a focus on portrayal of internet memes. My interpretation of the project specifications brought me to comment on the most recent pop culture craze, Gangnam Style by Psy. In general, I feel that most pop music is made popular through incredibly catchy rhythms and a steady beat, and in this case, Gangnam Style is no exception. The first time I listened to Korea’s most popular song, I became almost hypnotized with the overarching melody, so I wanted to make a Pure Data patch that reflected this as closely as possible.

I started off by using some of the links in class to get the music video of Gangnam Style, along with a hypnotic spiral also found on Youtube. As I learned in class, the actual .wav of the music video had to be extracted separately because pure data doesn’t play the accompanied sound when using the video mixing objects. After importing all of the video and music files, I used the patch to mix two separate videos together as a starting point. I then took the simple sound recorder patch in order to load the Gangnam style .wav file. However when loading the file for some reason the music was played in 2x speed, which made the video and music completely out of sync. I found another tutorial on youtube that imported files a different way in order to try and alleviate the problem. However even after this modification, the file still played in 2x speed. After much research, I found out that Pure Data does not interpret files over a certain capacity, and will try to compress to music in anyway possible. In order to fix the issue, I took the music file, cut out most of the chorus, and edited the music video to match.

After finally getting the music and video to be in sync, I realized that every time I closed the patch, I had to load the files and press about ten different toggle switches in the right order all to get the components working correctly. After a little more research, I found the load bang object which would preset all of my data so that the entire patch could be played just by opening the gem window. To complete the input device portion of the project, I took an Xbox360 controller and wrote a subpatch to get all of the input from the device. I really wanted to change the pitch of the audio in realtime using the controller but it seemed that there was no built in object that could be placed before the dac~ object. Luckily there was a tutorial on how to create such a patch from a preexisting pure data example, which I modified in order to fit into my main patch.

At this point I had my left joystick controlling the pitch of the audio, (as well as the mixing between my two music videos), and my right joystick controlling the phaser, which is a built in audio plugin that creates a reverberation effect. Finally I wanted a way to incorporate transmission of information from Processing to Pure Data. In order to satisfy this, I created a random number generator inside the draw function of my processing patch. I then changed the frame rate so that it would send a value to pure data once per second. Finally I took this value, did some math operations and plugged those values into a delay object which creates a small echo effect randomly in the audio which is more heavily weighted when the hypnotic video is more defined.

This project in general introduced me into many new pure data objects as well as the powerful effect that can occur when linking two different programs together that both have different strengths. Below is a link to a video I made of the patch in action:
http://youtu.be/58u2kSjGoj0

Leave a Reply