Midi Mapping

Default Midi Setup

There are a vast amount of available midi controls in VIDIFOLD. You can build your own midi mapping via the edit options. There are extensive midi input mapping options and and reasonable set of midi output mapping options.

detected midi devices

The detected midi devices can be found in the 'Externals' tab, under Midi section.

The gold item is a custom full integration device, in this case, VIDIFOLD and a APC40mk2 which have fully synchronised interfaces.

You can toggle each device enabled state with the 'On'  button and configure them by clicking on the '?' button. This will then display the Midi Mapping Dialog.

The bottom half of the dialog has basic management of midi configuration setups and lists the currently selected configuration details.


The management buttons are self explaining.  Tip: When you start a new setup, make sure you have enabled the device in the previous mentioned midi section.

After clicking "New" and setting a name, you can then assign midi commands to any of the available actions shown in the top part of the dialog.

To aid assignments, the midi actions have been set out in a hierarchy.



For instance here's an example of how to assign a midi keyboard note to Slot 1 in Bus A using midi learn.


The list of available actions is changing/expanding as development continues.

There is also a default mapping as described below:

NOTE: some software/devices use a different offset for 0(zero) VIDIFOLD starts at Channel 1, and note C-0 for its lowest values.

Slot in Rack

These are the Trigger Start/Stop events.

(note: layers in the rack are arranged : Layer 1 = Top layer  to  Layer 4  = Bottom layer)

Midi: Channel 0 (note On/Off events)

Layer 1 C-0 to G-0 Layer 1 C-4 to G-4
Layer 2 C-1 >to G-1 Layer 2 C-5 to  G-5
Layer 3 C-2 to G-2 Layer 3 C-6 to G-6
Layer 4 C-3 to G-3 Layer 4 C-7 to G-7

Slot FXStack

These are the FX Triggers Enable/Disable events (note On/Off events).
Each layer uses the following groups of notes C-0 to G#-0, C-1 to G#-1, ... C-7 to G#-7, these represent the 8 FX Slots, per Slot in the layer, and each layer is assigned to its own channel for these groups.

Bus A : Layer 1 (Midi Channel 1) C-0 to G#7
Bus A : Layer 2 (Midi Channel 2) C-0 to G#7
Bus A : Layer 3 (Midi Channel 3) C-0 to G#7
Bus A : Layer 4 (Midi Channel 4) C-0 to G#7
BUS A SLOT (Midi Channel 5) C0 to G#0
Bus B : Layer 1 (Midi Channel 6) C-0 to G#7
Bus B : Layer 2 (Midi Channel 7) C-0 to G#7
Bus B : Layer 3 (Midi Channel 8) C-0 to G#7
Bus B : Layer 4 (Midi Channel 9) C-0 to G#7
BUS B SLOT (Midi Channel 10) C-0 to G#-0
OUTPUT 1 (Midi Channel 11)  C-0 to G#-0
OUTPUT 2 (Midi Channel 12)  C-0 to G#-0
SELECTED SLOT (Midi Channel 13) C-0 to G#-0

FX Drivers Controls

These are mapped to the 4 assignable drivers per FXStack.

The Midi channels are mapped by column and the controllers are offset per layer.

Bus A : Columns use Midi Channels 0 to 7
Bus A : Layer 1 Midi CC 80-83
Bus A : Layer 2 Midi CC 90-93
Bus A : Layer 3 Midi CC 100-103
Bus A : Layer 4 Midi CC 110-113
BUS A SLOT : Midi Channel 5 (same as FX Triggers) Midi CC 70-73
Bus B : Columns use Midi Channels 8 to 15
Bus B : Layer 1 Midi CC 80-83
Bus B : Layer 2 Midi CC 90-93
Bus B : Layer 3 Midi CC 100-103
Bus B : Layer 4 Midi CC 110-113
BUS B SLOT : Midi Channel 10 (same as FX Triggers) Midi CC 70-73
OUTPUT 1 (Midi Channel 11)  Midi CC 70-73
OUTPUT 2 (Midi Channel 12)  Midi CC 70-73
SELECTED SLOT (Midi Channel 13) Midi CC 70-73


VIDIFOLD has the ability to closely integrate with the APC40 Mk2,  happens to be a midi controller I have access to. All controls have live visual feedback, changes made in the software and on the APC40 are reflected in each other. The mapping described below is for VIDIFOLD  v0.16.4 and above.

This is a little out of date

apc40 integration


1: Global controls

1a Master Level, Global Speed Offset, TX Speed

1b Bus Xfade

1c Cycles through Rack RT1, RT2, RT4, RT8, RT off

1d Toggles AS

1e Toggles KU

1f Toggles  XKU

2: Page Selection

Page 1 : Bus A Rack state, this indicates slot states and can be used to trigger the relative slots

Page 2: Bus B Rack state, this indicates slot states and can be used to trigger the relative slots

Page 3: Aux Rack state, this indicates slot states and can be used to trigger the relative slots

Page 4: Current Slot status and controls, inc slot percentage playback position display, and can be used to scratch/jump playback.

Page 5: Buses and Aux Rack options, has pads layout and coloured matching the aux rack options

Page 6: TX Beat options, Hot cue controls

3: FXStack Controls

3a FX Stack state, indicates FX  slot states, also used for FX triggering

3b Current assigned controls

4: Rack

4a Depends on current Page, mostly relates to Bus/Aux Rack slot states, and triggering

4b/c/d/e Select BusA, BusB, Out1, Out2 slots

5: Aux Controls

Used to control up to 2 FX bundles, ie (2 of the A/B/C/D if running in 4Chn Aux Mode)

5a the FX bundle for the Top row is selected via the Top row buttons

5a the FX bundle for the Bottom row is selected via the Bottom row buttons

6: Tape Loop Controls

6a Large button lit when loop is running

6b Number button, and acts as rec/play button

6c AB button, lit when tape has content and acts as stop/clear button

6d S button, undo option

6e Rec button, lit when tape in recording state

7: Layer level faders

1-4 Bus A layer levels Top > Bottom

5-8 Bus B layer levels Top > Bottom