OpenScofo
Score following for contemporary music.
OpenScofo is a score follower designed for contemporary music, synchronizing live electronics with a performer by tracking their position and tempo in a musical score in real time.
Listen and follow the score
This demo plays a microphone recording of Cassia Carrascoza’s performance. OpenScofo processes the recording live as it plays and follows the score in real time. Everything runs in your browser using pd4web, which runs Pure Data on the web.
Flute player?
Play these Miniaturas online using the link.
Music score
OpenScofo code
SR 48000
FFTSIZE 2048
HOPSIZE 512
ONNXMODEL "./flute.onnx"
BPM 100
// Measure number 1
UTECH jet_whistle 1
REST 0.5
NOTE Bb4 1.5 // tied
NOTE A4 0.5
REST 0.5
// Measure number 2
UTECH jet_whistle 1
REST 0.5
NOTE Bb4 1.5 // tied
NOTE A4 0.5
REST 0.5
// Measure number 3
PTECH pizzicato D4 0.5
PTECH pizzicato A4 0.5
REST 0.5
PTECH pizzicato D4 0.5
PTECH pizzicato A4 0.5
REST 0.5
PTECH pizzicato D4 0.5
PTECH pizzicato A4 0.5
// Measure number 4
REST 0.5
PTECH pizzicato D4 0.5
PTECH pizzicato A4 0.5
REST 0.5
UTECH jet_whistle 1
REST 1
// Measure number 5
PTECH pizzicato D4 0.5
PTECH pizzicato A4 0.5
REST 0.5
PTECH pizzicato D4 0.5
PTECH pizzicato Bb4 0.5
REST 0.5
PTECH pizzicato D4 0.5
PTECH pizzicato B4 0.5
// Measure number 6
REST 0.5
PTECH pizzicato D4 0.5
PTECH pizzicato Bb4 0.5
REST 0.5
UTECH jet_whistle 1
UTECH jet_whistle 1
// Measure number 7
UTECH jet_whistle 1
REST 3
// Measure number 8
NOTE D4 2
REST 2
BPM 70
ONNXMODEL "./flute.onnx"
NOTE A5 1
NOTE Eb5 1
NOTE C5 1
REST 1
NOTE A5 1
NOTE Eb5 0.5
NOTE D5 0.5
NOTE C5 0.5
NOTE F#4 0.5
REST 1
REST 1
NOTE G5 0.5
NOTE F5 0.5
NOTE Eb5 0.5
NOTE Db5 0.5
REST 1
REST 1
NOTE Eb6 0.5
NOTE D6 0.5
NOTE C6 0.5
NOTE F#5 0.5
REST 1
NOTE A5 1
NOTE Eb5 0.5
NOTE D5 0.5
NOTE C5 0.5
NOTE F#4 0.5
REST 1
REST 1
NOTE G5 0.5
NOTE F5 0.5
NOTE Eb5 0.5
NOTE Db5 0.5
REST 1
REST 1
NOTE Eb6 0.5
NOTE D6 0.5
NOTE C6 0.5
NOTE F#5 0.5
REST 1
NOTE C5 2
REST 2
NOTE A5 1
PTECH pizzicato Eb4 0.5
NOTE D5 0.5
NOTE C5 0.5
NOTE F#4 0.5
REST 1
NOTE A5 1
PTECH pizzicato Eb4 0.5
PTECH pizzicato D4 0.5
NOTE C5 0.5
NOTE F#4 0.5
REST 1
NOTE A5 1
PTECH pizzicato Eb4 0.5
PTECH pizzicato D4 0.5
PTECH pizzicato C4 0.5
NOTE F#4 0.5
REST 1
NOTE A5 1
PTECH pizzicato Eb4 0.5
PTECH pizzicato D4 0.5
PTECH pizzicato C4 0.5
PTECH pizzicato F#4 0.5
REST 1
PTECH pizzicato A5 1
PTECH pizzicato Eb4 0.5
PTECH pizzicato D4 0.5
PTECH pizzicato C4 0.5
PTECH pizzicato F#4 0.5
REST 1
NOTE A5 1
PTECH pizzicato Eb4 1
PTECH pizzicato C4 0.5
PTECH pizzicato F#4 0.5
REST 1
NOTE A5 1
PTECH pizzicato Eb4 1
PTECH pizzicato C4 1
REST 1
NOTE A5 1
PTECH pizzicato Eb4 1
NOTE C5 2
Create actions from the score
See Actions to learn how to trigger actions when score events are detected.
Download
- Installer automatic install all the enviroments (Pd, Max, Csound, etc...);
- Emscripten is the binary for Web;
- Python is the wheel (is better to install using
pip);
See also: Computer Actions.