From CSWiki
Revision as of 01:04, 12 May 2009 by Abourque (talk | contribs) (ChucKBass)

Jump to: navigation, search


I'm ChucKBass.


I created an instrument to play bass along with a performer. After taking the fast Fourier transform of the audio input from the performer a feature (the peak of the spectrum) is extracted that determines the pitch that ChucKBass plays. ChucKBass plays with a regular rhythm, but the note duration can be changed (you can think of them as whole notes, half notes, quarter notes, eighth notes). I decided to keep all the pitches within a pleasant and audible two octave range. For a little extra color and texture I added an upper voice that arpeggiates chords determined by the bass note and randomly stacked minor and major thirds.

How To Play

Once the program is running, you press [ + ] to fade in the bass and [ - ] to fade out. The default note duration for each bass note is 2 seconds, but you can make the bass play once per second by pressing [2], twice per second [3], four times per second [4], and you can go back to the default with [1]. The bass notes are determined by the sounds you make (and whatever else your mic picks up in the room). You fade in the upper voice in with [ } ], and fade out with [ { ]. You can hear the arpeggios a little after two thirds into my demonstration linked below.

In Action

You can hear me playing saxophone with ChucKBass here


You can find the code here. I encourage you to play around with ChucKBass while playing your own instrument.

Additional Notes

I opted to allow the performer to change the note durations instantly but otherwise keep the rhythm regular. If you'd prefer ChucKBass to play some specific rhythms or maintain a certain three or four beat pattern or something you could create arrays of note values and switch between rhythms by pressing keys on the keyboard.

~ This project represents my own work in accordance with University regulations. ~