Intro 🎵
Snapback & Auto ArmI've been producing and performing with Ableton Live
The Snapback Issue 🔴
Performing live with Ableton Live
If you stop recording a clip just a millisecond too late, it will always keep recording until the next bar.
There is no way to change this behavior. This can be incredibly frustrating and throw off your entire performance. Snapping to the nearest bar is absolutely essential in my opinion and the default on hardware loopers such as the Boss RC-505
The Auto Arm Issue 🟥
Another issue I've encountered is the need to manually arm MIDI tracks. Say you're playing live and want to switch to a different instrument. You have to manually arm and disarm the MIDI tracks, which can be a hassle and disrupt your flow. Some MIDI controllers have a feature that automatically arms the track when you select it, but not all do. I wanted to have this feature available at all times.
There is an auto arm feature you can enable using "the Secret Options File"
The Solution 🎉
I decided to build a plugin that solves both of these issues. I called it Snapback & Auto Arm. It's a simple plugin that snaps the end of recorded clips to the nearest bar and permanently enables auto arm for MIDI tracks. It's a small quality-of-life improvement that makes a huge difference in my live performances.
It's available for purchase on Gumroad
How I Built It 🛠️
The plugin registers itself as a MIDI Remote Script in Live. These usually define and implement the behavior of MIDI controllers, but they can also be used to add custom functionality.
They're written in Python and use an undocumented proprietary API. Ableton Live ships with all of it's MIDI Remote Scripts as .pyc
files, which are compiled Python code. I decompiled these files using decompyle3