How Ableton left the back door open

Introducing Ableton and Control

Ableton Live is a loop-based software music sequencer and DAW for Mac OS and Windows by Ableton. The operator works with many forms of audio, therapy
instruction, and and programming. Audio data  such as *.wav, *.aif(f), *.mp3 files. Instructions via MIDI and Max (and Max for Live), and APIs (Application Programming Interface) for various types of communication.

The graphical user interface is logical, offering grid type organization and a timeline. Each of which can operate independently or in unison. In the past few years, Ableton has gained maturity as a platform and has become recognized as an interface that plays well with others. Some of the contemporary programs that operate in conjunction with Ableton include Reason, Serato, Traktor, Max, plus MIDI and beyond.

Controller-ism

“Controllerism is the art and practice of using musical software controllers (e.g. MIDI, OSC, Joystick, etc.) to build upon, mix, scratch, remix, effect, modify, or otherwise create music, usually by a Digital DJ or “Controllerist”. (wikipedia)

Ableton Live is a controller(-ism) heavy application communicating via MIDI bi-directionally to provide both control and visual feedback (such as turning LEDs on and off relative to the current state of the GUI).   Ableton Live (version 8) introduced a new level of native control with the Akai APC40 and soon after the Launchpad by  Novation.

Both of these devices allow for absolute and relative mapping of control for audio and functions inside the Ableton environment.  These products mark the introduction of consumer level relative mapping as a element of native control (via API) in Ableton. To understand relative mapping it is important to understand how it compares to absolute mapping.

A Dichotomy of Control :  Absolute versus Relative

Mapping is how you define the relationship of a controller, often hardware, to software such as Ableton.

It is common to find hardware and software are mapped in an absolute or static fashion.  Using a piano as an example, the keys are the controller and they are absolutely mapped to the notes.  There are 88 buttons/keys triggering 88 sound/notes allowing you to access all of the sounds in the piano.

In the above image all of the notes would be accessed because we are using 1 button/key for each note in the piano system.

With relative control we still have 88 sounds/notes on our piano but only 14 buttons/keys.  To access all of the notes we need to introduce the concept of a focus (area) and navigation. We dedicate 12 buttons/keys to playing notes in our focus area. The 2 other buttons/keys are used to navigate the focus area to the left and right putting the notes available in the focus area where button/key #1 always triggers the sound/note directly below. The sound/note changes as the focus area moves. The next 2 images show the same piano buttons/keys under our focus area where we move to the left and right to gain access to more  notes.


The above image shows us our focus area (the bright spot) over the keys while the next image shows the position of the focus area after it is moved (navigated) to the left a few notes on the piano.

It would be rather difficult to play some Mozart with only 12 notes accessible at one time, but this very helpful in Ableton where hundreds of clips of audio are ready but only 10 or 15 may need to be used at any given point.

Take a look at this  video on YouTube demonstrating the APC40’s interaction with Ableton.  There is a red box on the computer screen showing what clips are in focus and directly correspond to the buttons on the controller. This is a relative map representing Ableton information that the operator puts in focus through methods navigating the “red box”.

Brilliant!

Relative control, the ring, or the “Red Box” is the game changer.  Suddenly an Ableton performer can quickly and easily work with huge canvas of audio data. An entire evening’s program (or even a life’s worth of music production) can be contained in an Ableton set and performed using this type of relative control and navigation.

This mapping and navigation introduced new ideas, modes of expression, and organizational patterns.  There was one problem: access to this advanced control was pretty fuzzy as only the APC40 communicated at this level (on the Python.org site this API implementation if referred to as “experimental”). It was not looking good when you consider that the Akai APC40 and the Launchpad were explicitly a collaboration between the closed Ableton system  and Akai / Novation.

Or so we thought

In May of 2009, the APC40 is released and opened the doors to new ideas in performance and audio control.  The APC40 and Launchpad quickly gained a de facto status as controllers in various circles of music production and performance.  These controllers are fundamentally solid and easy to manage via a plug and play environment.

Personally, I got bored using my APC40 and 6 months later I purchased a Livid OHM64. Fast and slick, the OHM64 was low latency, infinitely programmable, and exactly what I needed. But no red box.

With a fancy new OHM64 delivered to my doorstep I soon began to miss the red box. Buyer’s remorse, possibly, but missing this element led to new and exciting possibilities elsewhere in Ableton.

Moving on with my work it was May 2010 when the folks over at Max4Live.info released the script to interface the OHM64 to Ableton with the “Red Box”, relative mapping capabilities with navigation.

Control via the API was now in the process of being mapped and documented.

Victory!

Ableton is a smart company and provides access to this control and navigation by means of a folder called “MIDI Remote Scripts”.  This script folder is an Ableton API written for Python scripts that is slowly getting cracked open despite having no access to debugging scripts in Ableton.

So we celebrate as the resources grow yielding tutorials, documentation, forums, code, and hacks.  For many electronic musicians, music producers, DJs, and Ableton artists this is a very exciting time.  Stoke the fire of excitement even further as “The Bridge” should release soon making the line between DJ and other electronic music  freshly blurred.

WTB PY SCRIPT 2 PWN LED SQRS

The exact thinking behind Ableton leaving the door open to advanced control via a Python API is not totally clear.  For those interested, start your journey at the Python site where there is an Ableton listing. Regardless of the exact reason, thanks guys! The controller-ism genre is growing rapidly as large and small companies are supplying the market with new controllers, quality ideas, and the knowledge necessary to introduce a new type of instrument and professional. The luthier of electronic music control is rising where custom solutions, made to order control, and experimental variations are available.

Ableton as a program added mass to the controller idea for just showing up. Now they left the door to the Python API open allowing things to get crazy.

Enjoy the ride and don’t forget about all the hard work that preceded our glorious mastery of audio and technology. More to come and thank you.

Leave a Reply

Your email address will not be published. Required fields are marked *