AUTOMATION & RECORDING

Linking & Using External Hardware Controllers

Most features on the FL Studio interface (knobs/sliders, etc.) can be linked to internal or external controllers. 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:

Connecting a hardware controller to FL Studio

For information on setting up a hardware controller see the section on F10 > MIDI Settings options.

Linking to internal controllers

For information on linking to internal controllers see this page.

Local Temporary Links

The links made with the methods in this section are local and temporary, remembered only for the current session/project. These links are saved with the project and will re-establish when you open the project again. They will temporarily override any Global links, until the project is closed and another project (without Local Temporary Links) is opened where any Permanent Global Links will be re-established. In this way you can save Local Temporary Links to project templates so you can have multiple custom controller assignments for specific project applications.

FL Studio interface & native plugin 'quick link' procedure:

  1. Right-click the knob/slider you wish to control.
  2. From the pop-up menu select 'Link to Controller' to open the Remote Control Settings dialog.
  3. The remote control settings will open allowing you to modify the nature of the link. These are optional settings (see below).
  4. Move the physical knob/slider on the external controller and the link is automatically made. Alternatively:

VST plugin quick link procedure:

  1. Tweak one or two VST interface targets with your mouse (a tweak is a small movement).
  2. 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.
  3. The remote control settings will open allowing you to modify the nature of the link. These are optional settings (see below).
  4. Move the physical knob/slider on the external controller and the link is automatically made. Alternatively:

Global Permanent Links

After a permanent link is made, your controller will automatically link to the desired control/s of the FL Studio or plugin interface each time it is focused (click on the interface window to focus it). Global Permanent Links, called 'generic links', persist across FL Studio sessions and projects. They are always available unless a Local Temporary Link replaces 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:

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). Generic override link video tutorial here.

  1. Select the Multi-link controllers switch on the Recording panel.
  2. Tweak the software-user interface controls you want to link with your mouse (a tweak is any small movement of the control).
  3. Right-click the Multi-link controllers switch on the Recording panel and select 'Override generic links'.
  4. The 'Generic Link' window will open.
  5. 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.
  6. 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:

  1. Tweak the user interface target (FL Studio, Plugin or VST) with your mouse (a tweak is a small movement).
  2. Open the Tools Menu and select 'Last tweaked > Override volatile link' to initiate the volatile-link process.
  3. The Generic link settings window will open, make sure the Auto detect switch is selected.
  4. Move the physical knob/slider/jog on the external controller and the first volatile-link is automatically made.
  5. 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.

Delete or backup permanent global links

The simplest method of deleting a few links is to reassign the offending links. However, if everything has gone seriously pear-shaped and your controllers seem to be changing the channels on your neighbors TV rather than doing what they are supposed to in FL Studio, you may need to completely delete all global links. Alternatively you may want to back the data files up (to copy it to a new FL Studio installation). In either case, the link data files are stored in the FL Studio installation folder:

BY CONTROLLER - you will find sub-directories for each controller used, (generic controller) being the default. If deleting, you have the option of deleting the individual 'BY TARGET.flmapping' files (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 '*.flmapping' files 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

MIDI Controller

These controls allow customization of the MIDI link.

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 -

Saving MIDI/CC control assignments - This method creates a project template with the MIDI assignments saved in the project.

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.

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 operators click here.

Useful FormulaResult
1-Min(Round(Input*2),1)
ifg(input,0.25)+ifl(input,0.5)-1
ifg(input,0.5)+ifl(input,0.75)-1
Max(Round(Input*2),1)-1
int(Input*9)/8
Input*2-1
1-(Max(Input,0.5)-Min(Input,0.5))*2
1-Cos(Input*Pi)*0.5-0.5
Max(Input,0.25)-Min(Input,0.25)
Max(Input,1)-Min(Input,0.5)
Max(Min(Input,0.75),0.5)
Max(Min(Input+0.25,1),0.5)*2-1
Sin(Input*Pi)
Sin(Pi*0.5-Input*Pi*2)*0.5+0.5
1-Input*0.5-0.5
1-Input*0.5

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.

Action Buttons

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.

Action buttons