Hey pythonistas,

Today I’ve released a library for syncing Python code to an Ableton Link session with alignment to Link beat timeline.

It is loosely based on norns clock module (which in turn is based on pymonome-apps old MIDI clock syncing mechanism) and works in a very similar way. Awaiting for link.sync(n) from a coroutine synchronizes code to the beats in a Link session with or without other peers on the network.

With Python’s await syntax it’s a bit more powerful - it’s possible to chain synced coroutines together or program task cancellation behavior, for instance, but the overall functionality is very similar to norns clock.

There’s no MIDI sync support (or other sync sources), as platform specifics of MIDI handling are wildly different on Windows, Mac, and Linux, and I would like to keep this module minimal and simple to use.

It has been a part of my own live setup for a while and I’m super happy to finally release it. Please feel free to use, share and send comments, suggestions and bug reports :slight_smile:

6 Likes