Tool to control Renoise via MIDI
-- maps MIDI messages to Renoise keystrokes
Introduction
This application is a quick hack to enable sending keystrokes to the Renoise
tracking software triggered by MIDI-CC messages and MIDI-MMC commands. In this way
you can send to Renoise commands via MIDI, which are mapped to keyboard shortcuts.
The app was written for the KORG nanoKONTROL MIDI controller,
however it should also work with other MIDI controller hardware.
Screenshots
Map MIDI-CC messages and MIDI-MMC commands to the KORG nanoKONTROL knobs, buttons and faders:
Map Renoise keystrokes to MIDI-CC messages and MIDI-MMC commands:
Toggle Skin (black and white):
More screenshots of nanonoise and pictures of the KORG nanoSeries MIDI gear at my Picasaweb pages.
Features
- Maps MIDI-CC messages and MIDI-MMC commands to Renoise keystrokes
- Sends a key press event triggered by a MIDI-CC message with the value 127.
- Sends a key release event triggered by a MIDI-CC message with the value 0.
- Sends a key press- and release event triggered by a MIDI-MMC command.
- Parses your most recent ~/.renoise/V??????/KeyBindings.xml to get the
knowledge about Renoise keystroke actions.
- Virtual MIDI output port
- Forwards only MIDI-CC messages which are not mapped to trigger keystrokes.
Select this virtual MIDI output port as a Renoise MIDI input port. In this
way you can still map non-keystroke-triggering buttons, sliders and knobs
in Renoise.
- Virtual MIDI input port
- Recives MIDI messages of other MIDI gear connected to this port. In this
way you can attach additional MIDI controller hardware to the application.
- Support for MIDI controller hardware:
- nanoKONTROL - Scene switch support. Scene switch is triggered by the
nanoKONTROL's scene switch sysex message.
- Support for additional MIDI controller hardware can be added to the source code. Send your patches, please.
Download
Download the application's source code from the github.com repository.
$ git clone git://github.com/koppi/nanonoise.git
This will create the directory nanonoise/. Now you have two options. You can:
- manually compile and install nanonoise, or
- create a Debian/Ubuntu package (see below)
Install - manually compile and install nanonoise
Install the header files of the needed libraries.
$ sudo apt-get install libqt4-dev libasound2-dev libx11-dev libxtst-dev
Change into the nanonoise/-directory and compile the source code:
$ cd nanonoise
$ qmake && make
Install and run the application:
$ sudo make install
$ nanonoise &
Install - create a Debian/Ubuntu package (optional)
To build and install a Debian/Ubuntu package simply call:
$ cd nanonoise/
$ debuild
$ sudo dpkg -i ../nanonoise*.deb
Please contact me, if you're a Debian or Ubuntu package maintainer and know, how to push this package into the distribution.
Supported operating systems
- Linux - Debian (tested: 4.0, 5.0, sid):
- alsa, Xtst, libqt4 (tested to work with qt4.2, qt4.3, qt4.4.3 and qt4.5.1), thanks to MarvelousMarvin and Suva for beta-testing.
- Linux - Ubuntu (tested: 8.10):
- OSX - (not tested so far, OSX-Programmer wanted!):
- Windows - (initial port, beta testers wanted):
- Still needs a bit of tweaking in the source code. Any kind of feedback is greatly appreciated.
License
LGPL
Authors
Jakob Flierl (jakob.flierl@gmail.com)
Contact
Thanks
- to renoise.com for porting Renoise to Linux.
- to Jordan Sissel for xdotool
- to Rui Nuno Capela for qtractor
- to Prof. Gary P. Scavone for RtMidi
- to trolltech.com for Qt
- to github.com for a smooth git experience, free filespace, website hosting and backup
Download
You can download this project in either
zip or
tar formats.
You can also clone the project with Git
by running:
$ git clone git://github.com/koppi/nanonoise