ideoforms / pylive

Query and control Ableton Live from Python
505 stars 66 forks source link

Accessing unofficial Live API's functionalities through pylive #22

Closed lorenzoPazuzu closed 1 year ago

lorenzoPazuzu commented 3 years ago

Hi everybody,

I'm wondering if and how it's possible to access some functionalities exposed by the unofficial Ableton Live API, maybe through pylive or other means; https://julienbayle.studio/PythonLiveAPI_documentation/Live10.0.1.xml

I'm not looking for an offline MIDI controller mapping, rather for a deeper control of Live functionalities, which I don't see supported so far by the LiveOSC mapping (am I wrong?); specifically, I need to access to the Wavetable's modulation matrix, which is apparently possible thanks to the API.

I guess I could do that with Max's LOM but I would prefer to do it with some solid python code.

Thanks in advance!

ideoforms commented 3 years ago

Hi Lorenzo.

You're right that this functionality is not currently exposed by LiveOSC or (as far as I know) any other third-party Live interface. I am presently looking at a Live 11 compatibility issue which I'm also using an opportunity to consider exposing additional functionality via pylive. It would be awesome to be able to access the full Live API - but, it would also be a vast undertaking!

There may eventually be some way to automatically introspect into the class tree, which might open the possibility of accessing all kinds of internals. But my main priority right now is getting the core working again in Live 11, so this may be some time off into the future...

ideoforms commented 1 year ago

Since this last message, I've re-implemented the underlying API in a way that is designed to be ultimately able to expose all of this functionality - see AbletonOSC. I hope to eventually map all of this in pylive, so that the same functionality is exposed there.

However, Wavetables are a particularly deep part of the API that will be further down the roadmap. I will close this ticket for now, but @lorenzoPazuzu if this is still of interest, please open a separate ticket on the AbletonOSC repo.