https://github.com/danielbayley/ableton-live-tools
A collection of useful additions to @Ableton Live, including better @Git integration.
https://github.com/danielbayley/ableton-live-tools
ableton ableton-live audio daw git music production sound version-control versioning
Last synced: 2 months ago
JSON representation
A collection of useful additions to @Ableton Live, including better @Git integration.
- Host: GitHub
- URL: https://github.com/danielbayley/ableton-live-tools
- Owner: danielbayley
- License: mit
- Created: 2015-02-10T08:12:06.000Z (over 10 years ago)
- Default Branch: master
- Last Pushed: 2017-09-16T00:52:18.000Z (almost 8 years ago)
- Last Synced: 2025-04-09T22:17:22.110Z (2 months ago)
- Topics: ableton, ableton-live, audio, daw, git, music, production, sound, version-control, versioning
- Language: Shell
- Homepage: https://ableton.com/live
- Size: 76.2 KB
- Stars: 339
- Watchers: 20
- Forks: 26
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE.md
Awesome Lists containing this project
README

[Ableton Live] Tools
====================
Live tools is a collection of useful additions to the excellent [Ableton Live] [DAW]. Currently, it improves integration of Live with other tools, but useful devices, racks and templates will be added in future for various audio tasks. [Contributions](#Contributing) are welcome.Instant Setup
-------------
If you just want to get started immediately on a project with version control, you can just run (open) the `SETUP.command` to clean up and use this repository as the basis for a project. Easy.---
macOS [Services]
----------------
Live Tools includes a few handy services for Live users wise enough to be running macOS.They are easy to use, simply open a `.workflow` file and choose the option to install. This just moves that workflow to your `~/Library/Services` folder which makes it available from the `Services` menu, in this case from within Live.

Note that due to security measures on macOS, permission must first be granted to Applications before they can be manipulated from scripts and services.
Open System Preferences and navigate to `Accessibility` under `Security & Privacy`. Click on the padlock icon and enter your admin password to access the list. Make sure Live is listed and enabled (you can just drag in `Live.app` from Finder if it isn't on the list). You might also want to grant access to System Events and Automator here. This only needs to be done once.
#
### Git integration
`Save Live Set as XML.workflow` will automatically uncompress `.als` files in the current project so that they play nice with Git, since a Live set is actually [just gzipped XML].If you specify `⌘S` as the keyboard shortcut under `App Shortcuts` rather than `Services` this will actually override the native `Save Live Set` command so that now Live will in effect always save uncompressed `.als` files. Live has no problem opening these, so no need to worry about having to re-compress anything.
Return to System Preferences and under `Keyboard` then `Shortcuts`, add (`+`) a new shortcut and choose Live as the application. Enter `Save Live Set as XML` for the menu title (or whatever you want, providing this exactly matches the name of the `.workflow` file, should you decide to alter it).
#
### Pre-commit [hook]
While the above service works by uncompressing sets every time you save from Live, an even better method is to implement this as a `pre-commit` [Git Hook][hook].If you use this repository as the basis for a project as mentioned above, then all you have to do is run (open) the `SETUP.command`. This just adds the `pre-commit` hook and will clean out the repository ready for your Live project.
Alternatively, you could setup a [Git template] including the hook which would apply it to any future repository using `git init`. Doing this on an existing repo will also work, and without overwriting anything.
~~~ bash
cd ~/path/to/project
mkdir -p ~/path/to/template/hooks &&
cp pre-commit ~/path/to/template/hooks
git config --global init.templatedir ~/path/to/template
~~~### Commit
`Commit Live Project.workflow` will first ensure any `.als` files are uncompressed as above, but then also either open the current project in [GitHub Desktop], _[GitKraken]_ or _[Tower]_ depending on which is installed, or otherwise prompt for a commit summary.### Export ALAC (`.m4a`) audio
`Export ALAC audio.workflow` essentially adds the option of exporting [Apple Lossless Audio Codec][ALAC] files straight from Live. These have the advantage of lossless compression and metadata support including artwork.It works by automatically converting the latest `.wav` or `.aif` output from Live (providing you save to the current project folder). It will also rename any accompanying `.*.asd` [analysis file] to `.m4a.asd` as appropriate.
---
[Makefile]
----------
There's also a simple `makefile` [included] if you're into those.
`make watch` will watch for changes in the project folder and automatically emulate the above workflows.---
# Collaboration
In the spirit of collaboration, which hopefully this project will aid, there are a few nice online tools for sharing Live sets which are appropriately listed here.- [Blend]
- [Splice]---
Alternate Live icon
-------------------
Also thrown in is an alternative icon for Live, if you prefer. This can be applied by choosing `Get Info` from the contextual menu in Finder with `Live.app` selected, and dragging the `Live.icns` file over the existing icon in the top left corner. [LiteIcon] is free and recommended for managing icons on macOS, if you find yourself doing this kind of thing often.
---
License
-------
[MIT] © [Daniel Bayley][MIT]: LICENSE.md
[Daniel Bayley]: https://github.com/danielbayley[Ableton Live]: http://ableton.com/en/live
[DAW]: http://en.wikipedia.org/wiki/Digital_audio_workstation[services]: http://macosxautomation.com/services
[ALAC]: http://en.wikipedia.org/wiki/Apple_Lossless
[analysis file]: http://ableton.com/en/manual/managing-files-and-sets/#analysis-files-asd
[just gzipped XML]: http://crooked-hideout.blogspot.co.uk/2012/01/ableton-live-set-is-gzipped-xml-ruby.html[makefile]: http://gnu.org/software/make/manual/make.html#Introduction
[included]: Makefile[git template]: http://git-scm.com/docs/git-init
[hook]: http://git-scm.com/book/en/v2/Customizing-Git-Git-Hooks
[GitHub Desktop]: http://mac.github.com
[GitKraken]: http://gitkraken.com
[tower]: http://git-tower.com[liteicon]: http://freemacsoft.net/liteicon
[blend]: http://blend.io
[splice]: http://splice.com