Archive for the ‘PComp’ Category

Vocal Harmonizer Glove PComp Final

Wednesday, December 22nd, 2010

My vocal harmonizer glove turned out pretty much how I envisioned it, it sounds great, and I’m stoked!

I sewed the glove myself, which took forever and was probably a huge waste of time, as I could have bought the exact same thing – but not in silver spandex I tell myself. I soldered my first perf board, and attached it and a Lilypad to the under side of the glove. I was thinking about the sculptural quality of the wires wrapping around to the top of my arm, not about the FTDI cable that would have to connect the glove to the computer – so this is a little problematic (I have to wrap it around my thumb to support it). In the future, I’m going to pursue a bluetooth option.

Three flex sensors and one switch are attached to the Lilypad. The first flex sensor controls the first harmony, which is pitch shifted down from the incoming signal. The second controls an upshifted harmony. The third controls the decay time on a reverb (standard yafr~) which is applied to all the vocal lines. The switch toggles between 4 states:

1. no harmonies (passes through the signal)

2. original signal with one harmony (shifted down)

3. original signal with one harmony (shifted up)

4. original signal with two harmonies (three voices)

I demonstrate these in the video at the bottom….

This is my messy messy main Max patch. The subpatches are as they were in the previous post.


Vocal Harmonizer Glove – PComp Final Proposal

Wednesday, December 8th, 2010

At the beginning of the year, my advisor told me to expect that I would begin many projects, and finish none in this first semester. She said this was a semester of exploration and not one for completed fabrication. This is something I’m not used to, so I’m not accepting it.

For my Stupid Pet Trick, I began working on the idea of a dynamic pitch shifting interface. I wanted to make a glove, but I got bogged down in the logic of the thing. I managed to get a potentiometer to control a real time pitch shifter, but I didn’t complete the project. This is an item that I want, that I’ve been thinking about for a while now, that I can make, and I’m going to make it for real for my final.

I have classical musical training, which probably informs the way that I write vocal harmonies. I write counter melodies, instead of having the harmony run parallel to the original line. And I frequently write in three part harmony. This is great, and easy if you’re recording. But how do I capture this live as a solo performer, without resorting to backing tracks?

I believe that there is something to be said for virtuosity. Seeing is believing. I like dance and electronic music – a lot actually – but when all a performer is doing is pushing a button or twisting a knob with no perceivable sonic result, there’s a level of disconnect.

So, two brief side stories which inspired this project, among others….

Laurie Anderson has been my idol since I was about 12. It makes sense, we both play violin, and create live performances. I saw Home of the Brave at some point and was really excited about her drum machine suit.

Just love that suit. I thought about making a pair of shoes, or pants, that accompanied you when you danced. But I was 12 and didn’t know how to.

A few years later, I heard about Laetitia Sonami while studying electronic music composition as an undergrad. At the time I was not so impressed with the music, but was really excited about her glove:

Laetitia performing with the glove:

Laetitia Sonami and Sue-C at SFMOMA from R Sitoy on Vimeo.

Weird noises and wild gestures. I didn’t have any idea how to construct something like this – but now with the power of PComp, I do!

So, a glove is no revolutionary idea in the world of musical interfaces (I’m sure there have been about a billion in NIME), but it just makes sense. As a musician, I have trained my left hand to have dexterity and precision. It’s also hardwired in to pitch. When I think of the 1st F# above middle C, I bring my middle finger to my thumb. That’s the finger I play it with on the violin, and that’s how I’m wired.

My glove will be made out of three flex sensors and a Lilypad Arduino. The serial data from the sensors is parsed in Max/MSP where the pitch shifting takes place. The first two sensors (on my index and middle fingers) will control two harmony lines (one shifts up in specified intervals, the other down – or at least that’s how it’s programmed now). The third will either control the volume of the harmonies, or be connected to a delay function. I may put a switch on the glove that just turns a delay off and on.

The thing I really want to do with this version of the project, is finish it beautifully. I want this to be something that I can just plug into the computer and use in a performance. No clunky breadboards, no jumper wires. I’m sure I’ll make several iterations of the project before I get the design just right. My intuition is that I will be able to perform with this instrument with a little practice because the motion of bending my fingers is something I can do with acquired coordination. If I practice enough, it will be like playing any other instrument.

My hope is that I will be able to practice enough to perform a song I have written for the class. I’ve actually got a couple in mind, depending on how ambitious I get .

One and Dream Chairs: Physical Computing Media Controller

Monday, November 15th, 2010

For our media controller project, Becky, Roy and I created a beautiful purple chair that transports the sitter, and anyone in the room with them, to a magical land.

A pressure sensor embedded in the seat of the chair controls the playback speed of an animation in Processing. When you sit, it plays forward – the chair grows into a tree. When you stand, it plays backwards, returning to it’s original appearance. Becky made the animation in Flash.

We made capacitive touch sensors from aluminum foil and attached them to the arms of the chair. The sensors use the capacitance of the human body in a circuit. When you place your hands on the arms of the chair, the value returned by the capacitive sensors is higher than when untouched. While skin is in contact with the sensors, a counter variable increments in Processing. This counter controls the volume of an audio file – the longer you sit in the chair, the louder the audio environment becomes. When you remove your hands, the sound slowly fades. I made this soundscape in Protools and used Soundhack for some signal processing. I used field recordings, some convolved with chords from the Ravel Piano Trio to make the tonal elements, and mixed these with a recording of a Pine Forest filled with birds.

Roy made a housing that attaches to the bottom of the chair where the Arduino lives, with wires neatly packaged.

It was important to us that the physical interaction be organic. That is, this event happens when you use the chair as a chair should be used. You don’t have to press buttons, or turn knobs, you just have to sit and wait.

The animation is played over a live capture of the chair and the sitter – both feeds partially transparent. In our first staging, the video and animation were projected on a screen next to the actual chair. In the future, we want to experiment with projecting directly onto the chair and sitter. The documentation shown here is a movie captured from the Processing sketch. The lighting in the room we were working in made it difficult to capture the effect of the projection.

Processing source code

Stupid Pet Trick

Sunday, November 14th, 2010

I’m a little late documenting this, but I’m thinking about it again because I would like to fully execute the idea for my final project in Physical Computing. The original idea was to make a better vocal harmonizer that you can play with your fingers the way you play any other instrument. You can control the interval between the note you are singing and the shifted note by bending your fingers. I made a glove and intended to use flex sensors to do this, though I didn’t get to fully realize the physical aspect of this project due to late ordering.

I did get far enough to control the interval of the shift with a potentiometer communicating through my Arduino to Max/MSP. I used the Gabor library for real time frequency analysis and synthesis. Here is my Max patch and all its subpatches:

The main patch takes an audio signal from a microphone, and serial data from the potentiometer. The serial data is sorted to determine how to shift the pitch of the audio signal. The shifted and original audio signals are played back in real time.

The serialread subpatch takes data from Arduino – the analog values determined by the potentiometer (between 0-255) – and passes it to sortit.

The sortit subpatch takes the analog values from the potentiometer and sorts them into 10 ranges. Each range corresponds to a specific interval. The Gabor synthesis function takes intervals in cents (1 semitone~100 cents). The ranges I specified shift the incoming signal up or down a minor third (300 cents), major third (400 cents), perfect fourth (500 cents), perfect fifth (700 cents), or major sixth (900 cents).

The analysis and synthesis functions are included in the Gabor library. They performs a frequency analysis on the incoming signal, and synthesize a new signal with the attributes of the original, but with a shifted frequency spectrum.

It’s not perfect, but here’s what it sounds like now:

-> prroof <-

PComp Serial Communication with Multiple Inputs

Thursday, October 28th, 2010

I setup my Arduino to send information from a flex sensor, pressure sensor, and push button switch to Processing. The analog sensors controlled the x and y coordinates of a circle, and the switch determined the color.

drawing with multiple sensors

I was confused as to why the circle and background were the same color in the code so I switched the background color to a lovely mustard. I guess the switch was supposed to make the circle appear and disappear.

It was pretty difficult to produce continuous movements using these sensors so I swapped the flex sensor for a potentiometer and wrote a program that allowed me to control the playback speed of a short video clip using the pressure sensor, and the tint with the potentiometer. The switch pauses the video. This helped a good deal with my media controller project.

PComp serial communication lab 1

Thursday, October 21st, 2010

I did this lab a couple of weeks ago to help me figure out my stupid pet trick – communicating with Max/MSP from Arduino. Here, Processing is graphing values sent from a potentiometer attached to my Arduino. I recently got some new glasses which have been influencing my color choices for the funkier. I’m likin’ these.

Out-of-towners can’t swipe their metro cards

Thursday, October 21st, 2010

Right after I left class last Friday, I found a crowd of people waiting at the subway entrance right across from Tisch. There was a German couple swiping and swiping – methodically, frustratedly – while the crowd rolled it’s eyes. I went up to try to help them. We all know there’s a sweet speed that gets these babies to open up. If you go too fast – it tells you to swipe again. If you go too slow – it tells you to swipe again. I told them to go a little faster, and it accepted the swipe. Unfortunately the man grabbed the bars behind him and swang it through, intending to walk through in the next section. The entrance is this kind:He didn’t realize that each successful swipe allows you to turn the turnstile 1/3 of a rotation. I coached them to get another swipe in and both squeeze through on the next turn. But their card was empty. I’m guessing that they had been swiping and turning the turnstile for some time, throwing away their train fair each time it said to go.

Get Text Messages from you Cat!

Thursday, September 23rd, 2010

My fantasy device will allow people to communicate with their pets remotely. It consists of an accelerometer, a speaker, a laser pointer, a battery, a microcontroller and an automated sms. When you ping your pet, based on their motion, you get a text back with a funny message like, “I’m sooooo sleepy”, or, “I’m going nuts where are you SO BORED”. If they’re sleeping, you can send them a blast of noise to wake them up and annoy them from afar. If they’re playing, you can activate the laser pointer and they can keep themselves entertained for hours. You could even record messages to play over their speaker to confuse them into thinking you’re at home.

PComp Lab 2 – more Arduino success

Thursday, September 23rd, 2010

I’m really enjoying my Arduino – so much instant physical gratification.

pcomp lab2.1

Then I made this. The girl next to me got a migraine, but I couldn’t stop playing with it – I was just so proud.

pcomp lab2 strength test

source code

Sensor Hunt

Wednesday, September 15th, 2010

So I went on a hunt for sensors in my neighborhood. I live in a residential, fairly low tech area in Brooklyn, and I got pretty much what I expected in terms of interactions with sensors. I was surprised, however, to realize that almost every building I walked past had a camera or two trained on the sidewalk. In crime shows, they’re often able to pull up videos of crime in action from ATM cameras and it’s kind of weird to realize how possible that is. I felt a little uncomfortable taking picture of people’s doors and things on the street thinking about all the cameras catching me in the act. Especially the door in the first picture, with a combination lock. There are signs all over this entrance warning that you’re being filmed and that there are attack dogs inside. The windows are blacked out and I have never seen anyone go in or out. I know some creeper is in there watching, and has now flagged me because I photographed their lock.

I encountered an ATM, many doorbells, and several intersections with motion sensors and buttons for activating walk signal. The third picture is of a structure that’s only function is to call the police or fire department. It was a large, red, old-fashioned, streetlamp-looking thing connected to the telephone line from it’s tip. I also noticed an automatic door at the grocery store, a couple of thermometers in the meat refrigerator, automatic flush/sink/hand drier in the pizza shop bathroom, an antique store with all kinds of typewriters and calculators in the window, an emergency exit paddle in the key maker’s store, and ezpass transponders in car windows. And it was a beautiful day.