Making Music with Extempore, OSC, and SuperCollider in LFE/OTP
About ↟
This is a project for making music in LFE, with support for MIDI, audio
processing, Open Sound Control, and more. The undertone
project relies
heavily upon the phenomenal work of Andrew Sorensen
et al in the Extempore project,
essentially having the aim of providing an LFE DSL for BEAM-native, distributed
interaction with Extempore.
SuperCollider support is currently limited to basic OSC operations. Features for that or other backends or adding new backends to undertone will be prioritised based upon time and interest.
Backend and OSC server versions tested against:
- Extempore 0.8.7
- SuperCollider 3.11.2
- Erlang OSC server 2.0 and 2.1
- Ardour 5 and 6
Status ↟
Caution: This is a work-in-progress under active development in the very early stages of sound-systems integration in LFE: you have been warned! Loss of limb or sanity are not the responsbility of the project nor the maintainers.
Current state of undertone
:
- An OTP release-based project that automtically runs in the LFE REPL
- A fully functional Extempore REPL (any encountered issues are bugs -- file a ticket!) with an automatically reconnecting TCP client
- Basic Open Sound Control support (SuperCollider, the Ardour DAW)
For the current list of open tickets and the views by milestone, see the following:
Presentations & Demos ↟
https://undertone.lfe.io/presentations/
Build and Test ↟
$ rebar3 compile
$ rebar3 ltest # this step is optional
$ rebar3 release
Usage Overview ↟
For the examples below, start the REPL:
$ rebar3 repl
Note that, while under active development, the undertone logging level will be
set to debug
. If that's too much for you, before you start the REPL edit the
./config/sys.config
file and change level => debug
to notice
or
warning
.
Usage examples have been moved here, due to the rapid accretion of content:
Architecture ↟
Documentation ↟
There is an early-stage documentation effort for this project, with draft content published at undertone.lfe.io/book.
License ↟
Apache License, Version 2.0
Copyright © 2020, Duncan McGreggor [email protected].