MIDI Mapping: Difference between revisions
imported>Achenar No edit summary |
imported>Achenar No edit summary |
||
Line 97: | Line 97: | ||
[[Image:vvoois_renoise_midi_mapping_list.png]] | [[Image:vvoois_renoise_midi_mapping_list.png]] | ||
* '''[Trigger]:''' Whenever your controller sends a command to Renoise, ignoring any values or states from the MIDI messages. This is, for example, used for things like "Start Playing" or "Stop Playing". | |||
* '''[Toggle]:''' Allows the controller to only change an On/Off value, ignoring any values or states from the MIDI messages. | |||
* '''[Set]:''' Allow the controller to specify exactly when something is On or Off, giving it total control. | |||
To understand the difference between [Toggle] and [Set] better, let's take a look at what commands MIDI controllers may send out. Here is an example for a button that sends a MIDI controller change message: | |||
'''''A)'''''<br> | |||
''Button Pressed:'' Controller with Value 127 (or something above 64) is sent.<br> | |||
''Button Released:'' Controller with Value 0 (or something below 64) is sent.<br> | |||
''Button Pressed again:'' Same as before.<br> | |||
''Button Released again:'' Same as before.<br> | |||
'''''B)'''''<br> | |||
''Button Pressed:'' Controller with Value 127 (or something above 64).<br> | |||
''Button Released:'' Nothing.<br> | |||
''Button Pressed again:'' Controller with Value 0.<br> | |||
''Button Released again:'' Nothing.<br> | |||
'''''C)'''''<br> | |||
Button Pressed: Controller with Value 127 (or something above 64) | ''Button Pressed:'' Controller with Value 127 (or something above 64).<br> | ||
Button Released: Controller with Value | ''Button Released:'' Nothing.<br> | ||
''Button Pressed again:'' Controller with Value 127 is sent again.<br> | |||
Button Released again: | ''Button Released again:'' Nothing.<br> | ||
B | Some controllers may use use protocol A, others B or C, or even other non-listed combinations. Renoise needs to deal with all of these possibilities, which is why the [Toggle] and [Set] options exist. | ||
Now let's say you want to set something On or Off in Renoise. You have to tell Renoise how it should deal with the incoming messages. Take the global ''"Edit Mode"'' as example: | |||
There are two variants for the ''"Edit Mode"'' in the list of available MIDI mappings: | |||
* '''Edit Mode [Toggle]:''' Will ignore Controller Values of 0, so you can use controller protocol A or C. | |||
* '''Edit Mode [Set]:''' Will not ignore Controller Values of 0, but will instead interpret them as ''"state"'': CC value > 64 On, CC value < 64 Off, so you can use controller protocol B or encoders or faders. | |||
If you are unsure what the right mode is for your controller, simply try out both variants. If this works, then select that variant for the other mappings, because it's very likely that the controller sends MIDI in the same manner for other buttons too. Note that Renoise will always choose the [Toggle] variant when executing MIDI ''"Learn Mode"''. | |||
Automatically choose [Set] or [Toggle]: | |||
When clicking on something in the Renoise GUI to create mappings, the ''"Prefer to Setting instead of Toggling"'' option in the MIDI mapping dialog defines which mappings should be used for your controller. [Set] will be selected when the option is enabled, otherwise [Toggle] is used. This way you only have to decide which type of mapping you want and can quickly create the mapping without using the ''"Available And Active Mappings"'' list. | |||
When clicking on something in the Renoise GUI to | |||
Revision as of 18:38, 1 March 2010
MIDI Mapping
Via MIDI Mapping you can remotely control Renoise from your external MIDI controller or master keyboard. Nearly everything you can do in Renoise with the mouse or the keyboard can also be done from an external MIDI controller.
MIDI mappings are saved along with your song, unlike the keyboard mappings in the preferences. This way you can create unique MIDI mapping sessions for every song and also share the settings by either using Template Songs or by importing/exporting common MIDI mappings in the MIDI dialog (see below).
Renoise will never automatically detect your MIDI controller and configure the mappings for you. You have to manually (at least once for a Template Song) set up the controller.
MIDI Device Setup
First make sure Renoise knows which device you want to use for MIDI mapping by setting it in the "Edit -> Preferences -> MIDI" panel.
Opening the MIDI Mapping Dialog
The MIDI Mapping dialog box can be opened with the "Options -> MIDI Mapping..." option in the main menu (or by pressing "Control/Command + M"):
File:Vvoois renoise midi mapping 1.png
It can also be opened by clicking the "MIDI Map" button to the right of the VU meters at the top of the Renoise interface:
File:Vvoois renoise midi mapping 11.png
Next to the "MIDI Map" button you will also find two small LEDs which show the MIDI input/output that Renoise receives/sends. If you are in doubt about whether your MIDI controller is set up and connected correctly to Renoise, then watch the green LED, the input, which should blink when you use the controller.
File:Vvoois midi led indicators.gif
- Left: MIDI Clock (if enabled in the MIDI Preferences)
- Right: General MIDI input and output
The MIDI Mapping Dialog at a Glance
File:Vvoois renoise midi mapping 2.png
- Learn Mode:
- Highlights all the parts of Renoise available for MIDI Mapping (see image below). Select a highlighted button or parameter, then press a note or move a controller to assign.
- When clicked, "Learn Mode" will become "Test Mode", which allows you to test out what you've just mapped without having to close the MIDI Mapping dialog.
- Available & Active Mappings: Clicking the arrow will unfold a list of the currently available and active mappings.
- Selected parameter: Displays the currently mapped parameter in Renoise.
- Channel: The MIDI channel currently mapped from your controller.
- CC No: The CC number currently mapped from your controller.
- CC Type:The type of MIDI CC controller.
- Absolute 7 bit: Use the CC value as an absolute value.
- Relative signed bit: Increase at [065 - 127], decrease at [001 - 063].
- Relative signed bit 2: Increase at [001 - 063], decrease at [065 - 127].
- Relative bin offset: Increase at [065 - 127], decrease at [063 - 000].
- Relative two's comp: Increase at [001 - 64], decrease at [127 - 065].
- Min: When mapping, for example, a MIDI fader or encoder to an effect parameter in Renoise, this allows you to set up the lower boundary of the controller.
- Max: This allows you to set up the upper boundary of the controller in Renoise. Tip: Swap min and max values to reverse the controller.
" Prefer to Set instead of Toggling: Specify how the controller should change things that are turned On/Off in Renoise. See #Set, Trigger and Toggle Mappings for a detailed description.
- Allow mapping the same Note/CC more than once: When enabled, you can assign the same controller button or fader (the same MIDI message) to multiple things in Renoise. As an example, this could be used for cross-fades of two track volume parameters.
- Record MIDI mapped parameters to automation: When enabled, any parameter changes you make with the MIDI controller will be recorded into either the Pattern Editor or Automation Editor. This only applies when Edit Mode is enabled.
Note that the highlighted colour may vary according to the current theme:
Create Mappings
- Click on a highlighted parameter or button.
File:Voois renoise midi mapping 5.png
- Send MIDI from your controller (press a key, push a button, move a fader etc.)
File:Vvoois renoise midi mapping 7.png
Renoise will automatically map the selected parameter to the chosen key/button/fader of the controller.
Note: When using endless encoders, which may send one of the relative CC modes noted above, slowly turn it to the left in order to map it. This allows Renoise to estimate how the encoder works (guess the relative CC modes). This you won't have to keep manually resetting the mode.
Remove Mappings
To remove a mapping, open the MIDI Mapping dialog and click on the mapped part of the Renoise GUI. Then hit the Backspace or Delete key on your keyboard. Alternatively, press the "Clear" button next to the parameter description:
File:Vvoois renoise midi mapping clear param.png
To clear all of the mapped parameters, click the "Clear" button at the top of the dialog (next to the load and save buttons).
Import/Export Mappings
If you want to share MIDI mappings you've set up, you can do so by importing/exporting them. To export, click on the "Save" button at the top of the dialog. This will prompt you for a file name and a location to save the mappings to. Exported settings can be imported by clicking the "Load" button and selecting a file.
Note that Renoise will not import/export parameter mappings as these are specific to Track DSP effects and so will be completely different for every song. What is imported/exported though, are the parameters founnd under "Global Mappings" in the "Available and active mappings" list, such as Start/Stop, select/trigger sequences etc.
If you want to repeatedly use the same mappings for your songs, then it might be useful to create a Template Song. Because all mappings are saved with a song, you can set up your favourite mappings in a blank song and save this as a template, enabling them by default for every new song.
Set, Trigger and Toggle Mappings
The list of "Available and active mappings" shows you all the possible parameters and functions that can be mapped in Renoise. This list contains far more entries than what is shown highlighted in the GUI. For example, there are mappings to select the currently active track, to control the selected Track DSP effects and much, much more.
Further, many things can be mapped in more than one way. Note the postfix of the mapping names in the list: [Trigger], [Toggle] or [Set]
File:Vvoois renoise midi mapping list.png
- [Trigger]: Whenever your controller sends a command to Renoise, ignoring any values or states from the MIDI messages. This is, for example, used for things like "Start Playing" or "Stop Playing".
- [Toggle]: Allows the controller to only change an On/Off value, ignoring any values or states from the MIDI messages.
- [Set]: Allow the controller to specify exactly when something is On or Off, giving it total control.
To understand the difference between [Toggle] and [Set] better, let's take a look at what commands MIDI controllers may send out. Here is an example for a button that sends a MIDI controller change message:
A)
Button Pressed: Controller with Value 127 (or something above 64) is sent.
Button Released: Controller with Value 0 (or something below 64) is sent.
Button Pressed again: Same as before.
Button Released again: Same as before.
B)
Button Pressed: Controller with Value 127 (or something above 64).
Button Released: Nothing.
Button Pressed again: Controller with Value 0.
Button Released again: Nothing.
C)
Button Pressed: Controller with Value 127 (or something above 64).
Button Released: Nothing.
Button Pressed again: Controller with Value 127 is sent again.
Button Released again: Nothing.
Some controllers may use use protocol A, others B or C, or even other non-listed combinations. Renoise needs to deal with all of these possibilities, which is why the [Toggle] and [Set] options exist.
Now let's say you want to set something On or Off in Renoise. You have to tell Renoise how it should deal with the incoming messages. Take the global "Edit Mode" as example:
There are two variants for the "Edit Mode" in the list of available MIDI mappings:
- Edit Mode [Toggle]: Will ignore Controller Values of 0, so you can use controller protocol A or C.
- Edit Mode [Set]: Will not ignore Controller Values of 0, but will instead interpret them as "state": CC value > 64 On, CC value < 64 Off, so you can use controller protocol B or encoders or faders.
If you are unsure what the right mode is for your controller, simply try out both variants. If this works, then select that variant for the other mappings, because it's very likely that the controller sends MIDI in the same manner for other buttons too. Note that Renoise will always choose the [Toggle] variant when executing MIDI "Learn Mode".
Automatically choose [Set] or [Toggle]:
When clicking on something in the Renoise GUI to create mappings, the "Prefer to Setting instead of Toggling" option in the MIDI mapping dialog defines which mappings should be used for your controller. [Set] will be selected when the option is enabled, otherwise [Toggle] is used. This way you only have to decide which type of mapping you want and can quickly create the mapping without using the "Available And Active Mappings" list.
Dynamic Mappings
In the list of "Available and Active Mappings", you will find much more options than things you can click on in Renoise. Here are some examples. Feel free to explore the list by your own to find more options that may be useful for you.
Selected Track Mappings
- 'Global Mappings/Navigation/Tracks'
allows you to switch over the next or previous track in Renoise. This alone is not yet that interesting, but it will be with the following examples, which all use the selected track as base:
- 'Global Mappings/Track Muting/Current Track'
allows you to mute/unmute the currently selected track
- 'Global Mappings/Track Levels/Volume/Current Track'
allows you to control the volume selected track and
- 'Global Mappings/Track Levels/Panning/Current Track'
the panning of the current track.
this way you can control every track in all songs with a few buttons and faders on your controller.
Selected DSP FX Mapping
Same is possible for Track DSPs:
We already mapped track selection, now we also map selection of DSPs via:
- 'Global Mappings/Navigation/Track DSPs/Select'
and can control up to 32 parameters with
- 'Global Mappings/Track DSPs/Selected FX/Parameter #XX
via
- 'Global Mappings/Track DSPs/Selected FX (Mixer Subset)/Parameter #XX'
we can control only the parameters which are seen in the mixer for a DSP. The great thing about this is that you can customize which parameters are seen by your own (right click on the FX in the mixer, Show Sliders). This way you can for example control and navigate through a small subset of parameters in a live performance. Prepare which parameters you would like to change and which not...
Just like the track and DSP effects, the sequencer can be controller as well in a dynamic manner. I leave this for you to explore by your own, just like other things in the mappings list.