Tools for Real-Time Notation

The sample code and links below accompany an article in Contemporary Music Review:

J. Freeman and A. Colella. "Tools for Real-time Notation." Contemporary Music Review, 2010 (forthcoming).

lilypond

maxscore

ensemble1

ensemble2

htmldisplay

Sibelius

ManuScript language has limited support for real-time notation.

Max5

Max supports real-time notation through Jitter (general graphics), MaxScore, and command-line tools such as Lilypond.

Flash

Flash has no specific tools for real-time notation but has been used in real-time notation works by several composers.

Processing

Processing has no specific tools for real-time notation but has been used in real-time notation works by several composers.

ABC

ABC is an open text-based notation format which can be dynamically created and rendered using a variety of tools.

MusicXML

MusicXML is an open xml-based notation format which can be dynamically created and rendered using a variety of tools.

GUIDO

GUIDO is an open text-based notation format which can be dynamically created and rendered using a variety of tools.

Lilypond

Lilypond is an open text-based notation format and rendering engine that can be adapted to real-time use.

JFugue

JFugue is a Java API that can export MusicXML files (among other things).

Abjad

Abjad is a Python library for generating music notation in Lilypond.

JMSL

JMSL is a Java API for music notation that includes its own notation rendering engine.

MaxScore

MaxScore, based on JMSL, is a music notation API for Max.

Common Music Notation

Common Music Notation is a music notation API for Lisp.

PWGL - ENP

PWGL's ENP package handles the programmatic creation, rendering, and display of music notation.

Quintet.net

Quintet.net is a networked performance environment, created with Max and MaxScore, that includes real-time notation features.

abcjs

abcjs is a Javascript library for editing and rendering ABC notation files in any HTML5-compliant browser.

RealVNC

RealVNC is a commercial VNC screen-sharing client that includes advanced features such as zooming.

TeamViewer

TeamViewer is a free VNC screen-sharing client that includes the option to view only a single window of the remote machine's display.

Mocha VNC

A VNC client for Blackberry, Windows Mobile, Palm OS, iPhone OS, and Android devices.