Live coding with the piano as interface.
An open source project by Felipe Ignacio Noriega and Anne Veinberg. Supported By Stimuleringsfonds Creatieve Industrie NL and other sponsors.
CodeKlavier development started in April 2017 and currently has four prototypes (newest on top):
- Ckalcuλator (Lambda-calculus with the piano!)
- Hybrid (switching between the two prototypes and includes a custom code display via udp sockets)
- Motippets (coding via pianistic gestures/motifs)
- hello world (proof of concept prototype, with 1-1 mapping of piano keys to alphanumeric characters)
More information about the specific prototypes can be found in their respective directories.
An acoustic-MIDI piano such as a Disklavier, any piano fitted with a silent system or an acoustic intrument in combination with a MOOG piano bar or other MIDI keyscanner. If an acoustic-MIDI piano is not available, any 88-key MIDI keyboard will suffice providing this instrument is of suitable sensitivity for the pianist.
MIDI interface (if not integrated in the piano)
Install with pip3
- python-osc (if you want to use the AR module and Caffeine Extension)
- websockets (idem)
pip3 install -r requirements.txt to install the required libraries.
For this version please add the CodeKlavier directory to your sys.path so the CK modules are recognized
You can run the
setPythonPath.sh every time you start a new shell (type
. setPythonPath.sh - not the dot-space before the command), or put the following lines in your
~/.bashrc or equivalent add the following lines (make sure you have the correct path!):
# Modules for the CodeKlavier
As an example, the path to the Codeklavier in my system looks like this:
Use the Codeklavier to code electronic music. This is our default, built-in extension. We will release it as a Quark soon. Please install the latest release of SuperCollider
After installing the libraries, plug in your midi device and run the miditest by
python3 miditest.py. After you complete the setup and configuration, you will see the midi messages on the screen. After that: try playing a
hello world piece. Move into the
hello world directory and run
Be sure to setup the correct port and device ID via
Coding with a Piano: The first phase of the CodeKlavier’s development, International Computer Music Conference 2018
This project is made possible by the Creative Industries Fonds NL, our angel sponsor and the festivals and venues that book us for paid concerts. However, our funding will soon run out so if you believe in the project and would like to support it, please consider “buying us a coffee”. Every little bit counts and we greatly appreciate your support!