Keyboard Controls to Adjust Transposition in GMS

I have recently added keyboard controls to dynamically set the transposition in my Gestural Music Sequencer. I set it up like a piano keyboard, so that “Q” is the key of C, “2” is C sharp and so on. In this example I have the application set to to play a minor pentatonic scale. This makes it quite clear when the key changes. In this case I’m modulating between C and F sharp. I also started with a slower note duration, then switched to a faster one. I would not classify this as a very musical performance. This was part of a test to make sure that all of the transposition key controls were operating properly.

Transposition Controls (C to F# Modulation)

Minor Pentatonic Pattern in GMS

As I mentioned before I have GMS setup to produce specific scales. At this stage they are all based on the key of C. Eventually I’ll set up the application so that the key and scale are dynamically adjustable. I will also include a wider variety of scales, including all the modes, diminished, whole tone, and more.

One thing I haven’t decided on how to approach is timing and tempo. The way it works at the moment is that the tempo is determined by applying a multiplier to the frame rate. In this example I’m dynamically changing the multiplier using the arrow keys to achieve different note durations.

GMS Pentatonic Scale

GMS Producing a Major Scale Pattern

The intervals in a major scale are really the same as a minor scale. What’s different is the starting point. All the pitches in a major scale are the same as its relative minor, which is down a minor third. So the difference between a melody in a minor key and a major one is the root note. The same melody can be minor or major depending on the perspective of the listener. The last pattern I posted is only in a minor key if you consider C the root. If you consider E flat the root, then the melody is in a major key with C being its relative minor. In this case, the pattern is in C major, so if you listen with an A (the relative minor of C) in mind you’ll hear it in a minor scale.

GMS Major Scale

Gestural Music Sequencer Generating a Minor Scale

In my previous example of audio created with my gestural music sequencer, that I’m tentatively naming GMS, I presented a pattern of sampled Rhodes notes in a chromatic scale. One of the functions I’ve built into the application is the capability of switching scales. Currently the available scales are major, minor, pentatonic minor, and chromatic. Here’s an example of the application producing notes in a minor scale. One thing you may notice is the dynamic range. By gesturing lower within the Y axis the notes get quieter, while gesturing near the top of the screen makes notes that are louder.

GMS Minor Scale

Gestural Music Interface in Processing

A big thanks goes out to Jason Striegel and Nick Watts for inviting us to perform at Make: Day at the Science Museum of Minnesota. I performed with my group Keston and Westdal. Other performers included Savage Aural Hotbed and Tim Kaiser. Besides the performances there were some excellent presenters. Myself, Nils Westdal, our drummer Graham O’Brien, and our intern, Ben Siegel greeted visitors at our table. We presented bits and pieces that Graham used with his drums including sticks, pencils, and a chain. We also showed materials from Unearthed Music, Audio Cookbook, and I revealed a gestural music sequencer (GMS) I developed in Processing.

I was really excited to see the reaction to the sequencer. The application samples video and displays it inverted so it looks as though you’re looking into a mirror. Each frame is analyzed for brightness, then the X and Y data of the brightest pixel is converted into a note. The X axis is used to select a pitch, while the Y axis determines the dynamics. As visitors moved, danced, or gestured in front of the camera notes were generated based on a predetermined scale. Here’s a short sample of what the GMS can produce. I’ll post more about this soon.

Gestural Music Interface