string roll

a new music notation system for digital composition with string instruments

try it out · read the paper

When music producers write string music, they use the piano roll editor that comes standard with all digital audio workstations (DAWs). While this is good for most music, it leaves something to be desired for strings, so composers often turn to techniques like key-switching that rely on the digital instrument to convey meaning rather than the notation.

Addressing these issues was the final project for my degree, so I'll update this page with my mark and any feedback when I receive it.

String Roll represents pitch over time as a line, with the ability to snap to user-specified scales. This allows the notation to represent the continuous nature of string pitches. Notes can either be connected (slurred) or not, similar to bow changes. Additional techniques such as vibrato, bow speed and pressure can also be represented via somewhat skeuomorphic annotations.

To allow me the greatest control but the easiest platform to experiment with, I used the web Canvas API. This means I didn't have to deal with the assumptions of any higher-level libraries.

Each note is modelled by a pitch (Hz), length (beats), delay from previous note (beats), whether it is connected to the previous note and various expressive variables. This means that the visual notation can be easily converted to MIDI or equivalent machine-oriented formats (probably).