ableton-extensions
Write Ableton Live extensions in Python, on top of Ableton's official Extensions SDK.
Add right-click menu actions, read and write the Live Set (tracks, clips, notes, scenes, devices,
parameters, racks, take lanes, cue points), show modal dialogs and progress bars -- all from Python.
When you are done, build a single .ablx that installs on Windows and macOS with no Python on the
user's machine.
Beta. MIT-licensed. Not affiliated with or endorsed by Ableton AG.
Install
pip install ableton-extensions
Write an extension
from ableton_extensions import Extension, MidiClip
app = Extension("My Tool")
@app.context_menu("MidiClip", "Humanize")
def humanize(clip: MidiClip):
notes = clip.notes
for n in notes:
n.velocity = max(1, min(127, (n.velocity or 100) + 5))
clip.notes = notes
if __name__ == "__main__":
app.run()
Develop, then ship
ableton-ext install-bridge # writes a small bridge .ablx -- drag it into Live once
ableton-ext run my_ext.py # fast loop: right-click a MIDI clip -> "Humanize"
ableton-ext build my_ext.py # -> one universal .ablx (~6 MB) to give to users
Your user drags the built .ablx into Live -> Settings -> Extensions. No Python, no Node, no
Developer Mode, no native binary -- the Python runs as WebAssembly inside Live, so the same file
works on Windows, Intel Mac, and Apple Silicon.
Limits
Request/response only: no observers, no transport/playback, no automation; device parameter values are raw internal numbers. The SDK can only do what Ableton's official Extensions SDK exposes.
Links
- Documentation and examples: https://github.com/XTERMINATORAPPS/ableton-python-sdk
- Homepage: https://www.xterminatorapps.shop
Metadata
Release files for ableton-extensions 0.0.4
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| ableton_extensions-0.0.4-py3-none-any.whl | Python 3 | none | any | Details |
Release files / ableton_extensions-0.0.4-py3-none-any.whl
| Download URL | ableton_extensions-0.0.4-py3-none-any.whl |
|---|---|
| Size | 6.5 MB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
b8fccf7dc3e96f3e7cd57be8c206c0c788d0e85cc59fbf13b122eee2a9a53401
|
|
BLAKE2b-256 checksum How to use checksums |
df7cdbf3921bf78f382537d3f84bc8af880153479a188a0d447bf1fdfb23fff6
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.14.0
|