Tech Note:MIDI Bindings: Difference between revisions
mNo edit summary |
|||
| (11 intermediate revisions by the same user not shown) | |||
| Line 20: | Line 20: | ||
Normally, if you map tap and hold and/or double-tap to the same controller, the tap binding will be triggered immediately when the "on" message is received. This means that on a double-tap or hold, the tap binding will be triggered in addition to the double-tap or hold. This is unavoidable if you need immediate response to a single tap with no latency. | Normally, if you map tap and hold and/or double-tap to the same controller, the tap binding will be triggered immediately when the "on" message is received. This means that on a double-tap or hold, the tap binding will be triggered in addition to the double-tap or hold. This is unavoidable if you need immediate response to a single tap with no latency. | ||
The ''Preempt Other Actions'' discussed further down the page is also relevant as it can allow a double-tap or hold action to be triggered on a tap. | |||
===== Avoiding False Triggers - Defer Other Actions ===== | ===== Avoiding False Triggers - Defer Other Actions ===== | ||
| Line 31: | Line 33: | ||
'''Double-tap delay time'''. If tap and double-tap are mapped to the same MIDI message, Loopy Pro waits 250 ms after the on message for a double-tap's second on message. | '''Double-tap delay time'''. If tap and double-tap are mapped to the same MIDI message, Loopy Pro waits 250 ms after the on message for a double-tap's second on message. | ||
'''TOUCH NOTE:''' when using touch rather than MIDI, Loopy Pro always delays processing the tap if there are double-tap or long-press gestures defined. It essentially always uses ''Defer Other Actions'' when processing touches. | |||
===== Strategies When Not Deferring Actions ===== | ===== Strategies When Not Deferring Actions ===== | ||
You may sometimes need immediate response to the on action but want to avoid the consequences of the false trigger when a double-tap or hold occurs. To do this, you add an action as the start of your double-tap and hold bindings to undo the falsely started action. | You may sometimes need immediate response to the on action but want to avoid the consequences of the false trigger when a double-tap or hold occurs. To do this, you add an action as the start of your double-tap and hold bindings to undo the falsely started action. | ||
Let's say you want tap to toggle record, double-tap to peel (undo) the last overdub and hold to stop. Your bindings would look something like this: | Let's say you want tap to toggle record, double-tap to peel (undo) the last overdub and hold to stop. You need to undo/stop the falsely triggered record action (which Loopy will further undo when it realizes that the double-tap or hold was triggered). Your bindings would look something like this: | ||
* Tap: record/stop selected clip | * Tap: record/stop selected clip | ||
* Double-tap: stop record (selected clip) | * Double-tap: | ||
* Hold: stop record (selected clip) | ** stop record (selected clip) to stop the recording triggered by the tap | ||
** peel (selected clip) | |||
* Hold: | |||
** stop record (selected clip) to stop the recording triggered by the tap | |||
** Stop (Play) (selected clip) | |||
'''See''': [[Templates:One Button Record, Peel, Stop]] for a downloadable example and demonstration. | |||
==== Preempt Other Actions ==== | |||
[[File:Preempt other actions.jpg|thumb]] | |||
Recording and play actions have an option called ''Preempt Other Actions'' in MIDI Bindings. By default, this option is on, but you often need to turn this off. ''Preempt other actions'' lets that binding kick in on a single tap even though it is set up as a double-tap or hold. While this behavior is sometimes desirable, it can cause double-taps and holds to kick in prematurely. | |||
[[Category:Tips and Tricks]] | [[Category:Tips and Tricks]] | ||
[[Category:Tech Note]] | [[Category:Tech Note]] | ||
Latest revision as of 05:29, 7 May 2026
This page covers helpful details of Loopy Pro's MIDI bindings. MIDI Bindings are what binds (maps) a MIDI Command with the actions triggered by the commands. MIDI Bindings are created when you use MIDI Learn and can be created manually.
Bindings and Profiles
MIDI Bindings are stored in profiles that are listed in the Control Settings panel. Profiles are either local to the project or global. Local/project profiles are stored in the project itself. Global Profiles are stored in the Loopy Pro folder. MIDI bindings can be created manually or with MIDI Learn.
MIDI Learn and Profiles
When you MIDI Learn, you choose what profile the binding is stored in by using the popup available in the upper-left of the screen.

Editing and Viewing Profiles
Choose Control Settings to see a listing of the available profiles, both local and global.

Tap on a profile so see the bindings that it contains. Bindings are grouped by the controller to which the actions are bound. Tap Clear to clear all of the bindings for the controler. Tap Transfer to copy or move the bindings to another controller. Tap Edit to enter list-edit mode where you can delete individual bindings. You can swipe left on a binding to delete it.

Additional Binding Topics
Binding Tap/Hold/Double-Tap to the same message
Loopy Pro allows tap, hold and double-tap of the same MIDI message (such as a MIDI CC or MIDI note) sent from a controller.
Normally, if you map tap and hold and/or double-tap to the same controller, the tap binding will be triggered immediately when the "on" message is received. This means that on a double-tap or hold, the tap binding will be triggered in addition to the double-tap or hold. This is unavoidable if you need immediate response to a single tap with no latency.
The Preempt Other Actions discussed further down the page is also relevant as it can allow a double-tap or hold action to be triggered on a tap.
Avoiding False Triggers - Defer Other Actions
There is an option that avoids triggering the tap action when double-taps or holds happen. In order to do this, Loopy Pro needs to wait a short while to be sure that a hold or double-tap isn't in process. Double-tap and hold bindings have an option Defer Other Actions that ensures that the tap will not be triggered if the interaction is a hold or double-tap. This can be turned on in the binding's trigger settings. When actions are deferred, Loopy Pro will try to compensate for the delay. For example when tap is set to record and hold is set to something else, the recording will end up being the same as if there was no delay when deferred action is on even though the on-screen animation is delayed. While the recording will be the same as if the action had not been deferred, playback of the first loop will start from a point that is slightly delayed (the point where Loopy recognized no hold was going to happen).
To access the Defer Other Actions option, tap on the Trigger section of the binding.


Hold delay time, If there is only a tap and a hold binding, the tap is deferred until the off message is received or until 500 milliseconds have passed. By making short taps, the delay is minimal. The 'on' is processed as soon as you release the trigger (such as footswitch or MIDI pad).
Double-tap delay time. If tap and double-tap are mapped to the same MIDI message, Loopy Pro waits 250 ms after the on message for a double-tap's second on message.
TOUCH NOTE: when using touch rather than MIDI, Loopy Pro always delays processing the tap if there are double-tap or long-press gestures defined. It essentially always uses Defer Other Actions when processing touches.
Strategies When Not Deferring Actions
You may sometimes need immediate response to the on action but want to avoid the consequences of the false trigger when a double-tap or hold occurs. To do this, you add an action as the start of your double-tap and hold bindings to undo the falsely started action.
Let's say you want tap to toggle record, double-tap to peel (undo) the last overdub and hold to stop. You need to undo/stop the falsely triggered record action (which Loopy will further undo when it realizes that the double-tap or hold was triggered). Your bindings would look something like this:
- Tap: record/stop selected clip
- Double-tap:
- stop record (selected clip) to stop the recording triggered by the tap
- peel (selected clip)
- Hold:
- stop record (selected clip) to stop the recording triggered by the tap
- Stop (Play) (selected clip)
See: Templates:One Button Record, Peel, Stop for a downloadable example and demonstration.
Preempt Other Actions

Recording and play actions have an option called Preempt Other Actions in MIDI Bindings. By default, this option is on, but you often need to turn this off. Preempt other actions lets that binding kick in on a single tap even though it is set up as a double-tap or hold. While this behavior is sometimes desirable, it can cause double-taps and holds to kick in prematurely.