From CSWiki
Revision as of 22:42, 12 May 2008 by Bwasserm (talk | contribs) (Ben's Final Project: New Look => Same Great Notes!)

Jump to: navigation, search

Ben's Final Project: New Look => Same Great Notes!

Exploring 2D musical space, armed with sixteen square waves and a saw.

Take a look at New Look

Is that a Honeycomb or a Musical Instrument?

The short answer is, both. But the bees are dying, leaving behind only their tiny apian instruments, expertly hewn from multicolored beeswax and (lucky for us) MIDI-enabled.

The Concept

The instrument's design is adapted from the Axis MIDI controller, which has a unique key layout based on a musical geometry that the designers call the “harmonic table.” The keys are arranged as a hexagonal lattice with vertical rows. Along the 30 degree axis the notes ascend by major third, along the 150 degree axis the notes ascend by minor third, and along the 90 degree (vertical) axis the notes ascend by a perfect fifth. This two-dimensional layout can make playing scales a little cumbersome, but it offers an interesting and intuitive way to visualize chord structures and harmonic relationships. Tertial chords are particularly easy to see and play on this layout. For instance, any three keys forming a rightward-pointing triangle form a major triad, while the overlapping leftward-pointing triangle below forms the relative minor triad.

I added flexibility and interest to the instrument by allowing the user to change the musical geometry on the fly. Stepwise intervals along the 30 degree and 150 degree axes can be defined between 1 and 11 semitones, ascending or descending. The vertical axis is always the sum of the two defined intervals (this is required to tessellate the pattern of intervals across the lattice). The range of the instrument is also adjustable on the fly, and can slide up or down by semitones.

How to Run

You will need Processing and the latest version of ChucK, preferably the special PLOrk edition if available. To run New Look => Same Great Notes! simply run the Processing sketch and the ChucK code in either order. If you encounter misaligned text in the GUI, try closing the window and running the sketch again.

Changes for Future Versions

  • General:
    • Ability to select which note remains unchanged when intervals are updated (is currently upper left)
    • Greater control over parameters of the sound synthesis (my emphasis thus far has been on the GUI and note control)
    • Perhaps a fun rolling ball mode to trigger keys (controlled by motion sensors or just arrow keys)
    • More intelligent gliding (i.e. glide only when pressed notes are moved, not when there is separation between triggered notes)
  • In Toggle mode:
    • Ability to store and recall chord patterns, selectable on the fly with a single keystroke
  • In Sequence mode:
    • Ability to change sequences on the fly
    • Ability to assign relative durations to individual notes in a sequence
    • Ability to store and recall sequences
    • Multiple voices with different sequences