GarageBeats

From vjmedia

GarageBeats

MU3612 Final Project: GarageBeats

This project incorporates multi-track rhythm generation, analysis, display, editing, practice, and output. Rhythm tracks are input and displayed in a step sequencer for editing, and then the user can play/loop the tracks while following along on the keyboard. The goal is to set up an environment that makes it easy for someone to practice several rhythms that might be difficult to play at once, such as cross-rhythms where measures are divided into unequal sets of beats played against each other (this is more common in certain kinds of African music, for example).

The Main Program:

The main program provides several ways to input rhythm, at first an option to select a regular rhythm for each track (such as a beat every other quarter note for one track and a beat every 5 quarter notes for another track), and an option to generate a random rhythm. These rhythms can be changed in the step sequencers that display the tracks. A key is automatically mapped to each track, and the user can then click on a toggle to play/loop these rhythms, and press the keys corresponding to each track on the right beats. The rhythm itself will be output to the speakers as it is played, and the user’s performance will be output at a louder volume, so the user can tell how closely they are matching each rhythm. Additional features include: 1. Real-time feedback. If the user gets something wrong or is right on target with the rhythm, the graphical display updates accordingly, with red or green coloring depending on the user’s accuracy. 2. Support for an alternative form of input, namely color tracking from video input through a webcam. 3. Customization. The user can select the tempo, instruments used, rhythm data for each track, and the keys and colors currently mapped to the tracks, among other things.

The deliverable is a Max Patch that will allow the user to practice their sense of rhythm. It includes 2 other patches (used internally by the main interface), and a basic demo video.

Thanks to V.J. Manzo for providing the platform detection object to support capturing video on both Mac and PC. This is part of the EAMIR SDK and is available here.

Demo Video

The media player is loading...

NOTICE: If above video does not appear, try switching web browsers. This type of media file has been found to conflict with Google Chrome and other browser types.