Most features on the FL Studio interface (knobs/sliders, etc.) can be linked to an external controller. Once linked, controller movements can be recorded in real-time
(make sure the recording filter is set to accept 'Automation' data). The movements will then be reproduced exactly the next time the project is played. There are two classes
of links:
Temporary local links - are per-session, per-project links. They have the highest priority and override Global generic links. Use these to link controllers to plugin and/or FL Studio interface
targets that will be used infrequently.
Permanent global links - persist across Projects and FL Studio sessions. Once made, the links will always be available unless overridden by a Temporary Local Link. Use these to link controllers
to your favorite plugin and/or FL Studio interface targets. Next time you open the particular plugin or focus the particular part of the FL Studio interface, a link between your controller
and the target will be automatically established.
For information on linking to internal controllers see this page.
Temporary Local Links
The links made with the methods in this section are local and temporary, remembered only for the current session/project. They will temporarily override any Global links, until the project is closed
and re-opened, where any Permanent links will be re-established.
FL Studio interface & native plugin 'quick link' procedure:
Right-click the knob/slider you wish to control.
From the pop-up menu select 'Link to Controller' to open the Remote Control Settings dialog.
The remote control settings will open allowing you to modify the nature of the link. These are optional settings (see below).
Move the physical knob/slider on the external controller and the link is automatically made. Alternatively:
Multi-link - To link multiple controls in one session, use the Multi-link option on the recording panel. Select the switch, tweak all the target controls, then tweak
the same number of knobs on your hardware controller and turn off the switch (most people can remember about 7 links, how good is your memory?).
VST plugin quick link procedure:
Tweak one or two VST interface targets with your mouse (a tweak is a small movement).
Open the Tools Menu and select 'Last tweaked > Link to controller' to link the last tweaked parameter or Before last tweaked > Link to controller
to link to the first of a tweaked pair. NOTE: the names of the 'last tweaked' and 'before last tweaked' parameters will show at the top of the Last tweaked parameters sub-menus.
The remote control settings will open allowing you to modify the nature of the link. These are optional settings (see below).
Move the physical knob/slider on the external controller and the link is automatically made. Alternatively:
Multi-link - To link multiple controls in one session, use the Multi-link option on the recording panel. Select the switch, tweak all the VST target controls,
then tweak the same number of knobs on your hardware controller and turn off the switch (most people can remember about 7 links, how good is your memory?).
Permanent Global Links
Global 'generic' links persist across FL Studio sessions and projects. They are always available unless a temporary local link supersedes them. Generic links only need to be set once, usually at the
initial FL Studio installation or when a new controller is added to your kit. Notes about generic links:
Formulas & smoothing - Generic linking does not support mapping formulas & smoothing.
Temporary local links have higher priority and will replace the generic links for the current session/project.
Controller types - Links made with the multilink function will only work as expected from a controller of the same type. Selecting a new controller may result in
unexpected links between the controller, FL Studio & plugins.
MIDI channels - Up to 16 separate MIDI controllers can be used simultaneously. To link multiple controllers select unique MIDI channels for each controller prior to initiating the multilink process
(don't forget to enable each controller in the MIDI settings). The multilink process remembers both the MIDI CC and MIDI channel that was used to make the link.
Generic permanent linking procedure:
Global generic links are window/plugin-specific, this means the same knobs/sliders/jogs on your controller can be used to control any number of user interface targets throughout FL Studio and plugins. The focused
window or plugin controls the global link/s that are active (focusing is the act of clicking on the window with your mouse).
Tweak the hardware - knobs/sliders/jogs you want to link to those software targets. The links will be made in the same order the software targets were tweaked. The process will auto-close once the
number of hardware controls tweaked equals the number of software targets.
Next time the same plugin or window is focused, these links will be automatically re-established.
NOTES: You can repeat this process as many times as required, there is no need to link all your software targets and controllers in one session. To use multiple hardware controllers
each controller must be set to a unique MIDI channels prior to initiating the multilink process. FL Studio will use this MIDI channel to identify what controller is linked to what target (don't forget to
enable each controller in the MIDI settings).
Generic volatile linking procedure:
These links assign a specific controller knob, slider or jog-wheel so that it automatically links to the last user interface parameter moved by the mouse. These links are volatile as they continually
change focus to the last touched control on the user interface. Global volatile links are global, that is they will persist across projects and FL Studio sessions. To set up a volatile link:
Tweak the user interface target (FL Studio, Plugin or VST) with your mouse (a tweak is a small movement).
Open the Tools Menu and select 'Last tweaked > Override volatile link' to initiate the volatile-link process.
The Generic link settings window will open, make sure the Auto detect switch is selected.
Move the physical knob/slider/jog on the external controller and the first volatile-link is automatically made.
Tweak a new user interface target with your mouse and the controller will now control that target, and so on...
NOTE: Controller knobs/sliders that have already been linked to specific targets will not respond to volatile linking until the original link is cancelled. Two knobs? By creating a volatile link to one controller knob using
the Last tweaked > Override volatile link and then a different controller knob using the Before last tweaked > Override volatile link, you will then have the last two tweaked user interface parameters at your
'volatile' command.
Deleting or Backup of permanent global links
The simplest method of deleting a few links is to reassign the offending links. However, if you need to completely delete all global links or back the data file up (to copy
it to a new FL Studio installation), the link data file is stored in the FL Studio installation directory:
If deleting, you have the option of deleting the 'channelsettings.flmapping' file (deleting recommended) OR editing out the links you don't want in a text editor. Each link is bound by the <link> and </link>
identifiers.
WARNING: You realize that mucking about with FL Studio installation files can cause FL Studio instability, global warming and rust. Worse case, you will need to swim to your PC (due to the
melted ice-caps) and delete the 'channelsettings.flmapping' file on your now rusting PC to start again. By the way, while you are poking about in the FL Studio installation, don't start editing any other files, we
realize that success here may lead you to think you are some kind of coding guru. Don't let it go to your head.
Remote control settings
There are a number of options on the Remote control settings dialog (below) that can modify the linked relationship.
Note that the Wrapper Menu also has several important functions (Link all parameters and Browse parameters) to make links between
plugin parameters and internal/external controllers. The Remote control settings dialog options are as follows:
Link Assignment
Link menu - Showing 'New Link' above. Use this menu to link several external MIDI controllers to the same internal target. By default the dialog assumes a new link
is to be made.
Remove Conflicts - When selected, any new link will replace any previous link relationships made to the target controller.
MIDI Controller
These controls allow customization of the MIDI link.
Channel - Choose a MIDI channel to link the control to.
Controller - Choose a controller number to link the control to.
Auto Detect - Very useful option that will detect and set the MIDI controller automatically - all you need to do is just
tweak the desired control on your MIDI controller.
Omni - Decides if the link is channel specific. OFF - If a MIDI controller knob is linked to a channel volume, the MIDI knob will control only that specific channel volume.
ON - The MIDI controller knob will no longer be tightly bound to a specific channel volume, but will control the volume of any channel selected. For example, if you linked to the volume of a 'kick'
channel and then selected the 'clap' channel, the MIDI controller knob will also control the clap channel volume.
Omni and VSTi/DXi Control
Use the Omni mode to set your MIDI controller to control the same target in any selected channel. This section describes this process in more detail for 3rd Party plugins and a
method for saving controller assignments for future quick recall.
Omni CC Links - If you want to use the Modwheel (CC1, for example) on your controller, so the mod wheel controls the CC1 parameter of any instrument in an active channel and also to save controller assignments
for future use -
1. Create an instance of your desired VSTi/DXi instrument.
3. From the control options list, scroll down and right-click "MIDI CC#1" to open the pop-up menu. MIDI CC's are usually toward the bottom.
4. Select the 'Link controller' option, enable Omni on the Remote control settings and move your Modwheel (or use the selector pad to manually select the number 001).
You can do this for all 128 CCs or you can selectively choose which CCs to use. These links will stay active until manually disabled (even if every instance of a VSTi or DXi is deleted), see below.
Saving MIDI/CC control assignments - This method creates a project template with the MIDI assignments saved in the project.
1. Follow the steps above to create your desired MIDI controller assignments to plugin controls.
2. Delete the plugin/s.
3. Save the project as your default.
4. If you start future projects with this template your favorite MIDI controller assignments will be automatically available when you load compatible plugins.
Internal controller
See the section on Internal controllers for more detail. NOTE: This section of the dialog will only be visible if there are internal controller sources in the project.
Mapping formula - Menu
This menu provides some pre-defined mapping relationships between the controller and the target control.
Linear (absolute): For use with standard range-limited controllers.
Default - The controller changes the target with a 1:1 relationship.
Inverted - Increases in the controller value decreases the target controller and vice versa.
Log scale - Sensitive in the low range less sensitive in the upper range of the controller.
Inverted log scale - Less sensitive in the low range more sensitive in the upper range of the controller.
Switch - Once the input value passes the 50% point the output changes from 0% to 100%.
Steppy - Stepped output in the face of smooth input.
Steppy (cents to semitones) - When linked to a master pitch control the output is incremented in semitones.
First half - Output varies from 0% to 50%.
Last half - Output varies from 50% to 100%.
Incremental (relative): These settings are to be used with 'Endless controllers' (knobs/wheels that have no end-stops). If an endless knob moves the target too slowly try Input*2 or 1/10.
Similarly endless knobs with around 200 steps (usually endless knobs are ticky), each step can be set to output increment unit, try 1/50,1/20,1/10 settings.
Default increment - The controller changes the target with a 1:1 relationship.
Inverted increment - Increases in the controller value decreases the target controller and vice versa.
4x, 2x smaller increment - Output is divided by 4 and 2 respectively.
4x, 2x bigger increment - Output is multiplied by 4 and 2 respectively.
1/50,1/20,1/10 increment - Output is restricted to 2%, 5% and 10% of the input range.
User Defined Formula
Enter a custom formula to alter the default 1:1 mapping. For example: 'Input*2' multiplies the controller value by 2. After you enter an expression, press Enter.
If you see message "Compiled OK" the formula was successfully compiled and you can press the OK button to apply it to the linked control. If a red text appears below, the formula
is wrong (usually syntax error or unsupported variable/function was used). Correct the error and press Enter again.
For a full list of supported variables, functions and operatorsclick here.
Smoothing:
This feature allows you to smooth the motion produced by the remote control hardware and/or internal plugin. This reduces the need to manually refine recorded
automation after live sessions and ensures proper ramping of the control motion to avoid abrupt changes.
Time - The amount of smoothing applied to the remote control input. The longer the time, the smoother the motion.
Action Buttons
Reset - Click this button to reset the remote control settings, including mapping formula & smoothing.
Accept - Saves the dialog settings.
Generic link settings
This link dialog is associated with 'Generic' and 'Volatile links'. The options are as follows:
MIDI Controller
These controls allow customization of the MIDI link.
(generic controller) - Is the default setting for a drop-down menu. Select your controller here if you plan to manually set up a link.
Channel - Choose a MIDI channel to link the control to.
Controller - Choose a controller number to link the control to.
Auto Detect - Very useful option that will detect and set the MIDI controller automatically - all you need to do is tweak (move) the desired control on your MIDI controller.
Action buttons
Reset - Click this button to reset the remote control settings, including mapping formula & smoothing.