i'm sure you can do anything you want in C#... just need the libraries to do some of the interfacing.Coupe70 wrote: and if possible can you do this in c# ?
Who wants access to Ableton's Python API? .. You? .. Ok!
IT WORKS!!!
IT WOOOOOOOOORKS!
so, here is my contribution. the top two buttons in the last row function the same. ie. they control banks. the next 5 buttons change
the quantization. the last button stops all clips.
i'm living the dream.
http://post.monome.org/?PostBackAction= ... mentID=865
IT WOOOOOOOOORKS!
so, here is my contribution. the top two buttons in the last row function the same. ie. they control banks. the next 5 buttons change
the quantization. the last button stops all clips.
i'm living the dream.
http://post.monome.org/?PostBackAction= ... mentID=865
this is phortran, i found a way to make this work but had to modify the api slightly. specifically the LiveOSCCallbacks.py. see here:Surreal wrote:from phortran "Due to limitations in Ableton's exposed Python API, clipslots can't be triggered for recording directly via Python (at least as far as I could tell). "
http://code.google.com/p/monome-pages/downloads/list
the LiveOSCCallbacks.py for download there has a slightly extended OSC API that includes a /live/play/clipslot command. this will trigger clipslots and allow audio or midi clips to be recorded on the fly.
edit: figured i'd include the function here, it's short:
def playClipSlotCB(self, msg):
"""Called when a /live/play/clipslot message is received.
Messages:
/live/play/clipslot (int track, int clip) Launches clip number clip in track number track
"""
if len(msg) == 4:
track_num = msg[2]
clip_num = msg[3]
track = LiveUtils.getTrack(track_num)
clipslot = track.clip_slots[clip_num]
clipslot.fire()
Julien Bayle
Art + Teaching/Consulting
Ableton Certified Trainer
Max Certified Trainer
Structure Void / Ableton Certified Training Center
Art + Teaching/Consulting
Ableton Certified Trainer
Max Certified Trainer
Structure Void / Ableton Certified Training Center
Thank you queglay! Thank you very much!
Thank you very much for this! I have been searching for a way to read out clips' names using OSC for several weeks. I had no idea what was wrong initially. Then I managed to stop, and play the song, and set and get tempo. But names of clips didn't work. The last thing that stood in the way when I already started testing your version of LiveAPI, was the Vista UAC. http://www.clipboardextender.com/off-to ... e-and-seekqueglay wrote:so here is an unoficial release from me of the api. i had to change a few things to get some of the osc functionaily to work for me. all i've done is alter some of the functionality for returning live clip and scene names via osc. i can't remember everything i did, but with the clip name callback i first created a conditional statement that checks if a clip is in the cell. if there isn't it returns empty for that cell destination. also all text strings are converted using str().
these are all the files i needed to alter to get it working for me. i also altered the instructrions a little to explain what i did to get it working.
http://www.theoriginalqueg.com/forum/Li ... 060208.rar
please read the instructions included very carefully.
i also included a max test patch for those familiar with it for testing purposes.
just remember though, because i got it working, it doesn't mean its going to work for you guys too.
This is not an official release from nathan's project. but when i downloaded the files as is from hise google code site they didn't work for me for the reasons that i modified them here.
please don't send me private messages if you can't get this to work. use the forum. not only am i really busy and wont respond, at least this way theres a record of how people are solving their problems.
it would be great if there was some free forum someone could create where we can all deal with this one. its a shame the original liveapi forum never got replaced. makes it that much harder to solve things.
good luck with it!
Vista UAC is a nightmare.
Anyway, now I got it working! Thanks again!
PS: I can't believe there's so few people interested in using OSC to access LiveAPI that the original unfixed file survived for so long on the assembla site!? Nobody else noticed the issue which you fixed? I first found your post at http://forum.jazzmutant.com/viewtopic.p ... e1db56ee06
It's a difference of one month between your question on jazzmutant forum and your solution posted here: Feb 04 2008 - Mar 04 2008

i integrated his patch as soon as i found the time but as you noticed the number of people using OSC and LiveAPI is by the looks of it about 5 at most.
I think part of that has to do with the fact it didnt work on OSX for a long time and the other part is that I think for each individual they have different requirements which generally means programming and so the number of people who
A: are interested in the LiveAPI
B: are interested in using it with OSC
C: can or want to program in python
is very small. probably either 1 or 2.
feel free to write up how you got your setup working and what you are doing on the assembla site, one sure fire way of getting more people involved is by showing them what is possible and a way to get things running.
BTW, for anyone else reading the LiveAPI project is alive and well, there is a google group here :
http://groups.google.com/group/liveapi?hl=en
and a development site here :
http://www.assembla.com/wiki/show/live-api
there is some interesting new code found in the 7.0.12 (and later) releases (_Framework) which seems to hint at something LiveAPI related coming soon from Ableton.
Im guessing its some kind of controller based on the monodeck idea, but thats just a guess

I think part of that has to do with the fact it didnt work on OSX for a long time and the other part is that I think for each individual they have different requirements which generally means programming and so the number of people who
A: are interested in the LiveAPI
B: are interested in using it with OSC
C: can or want to program in python
is very small. probably either 1 or 2.
feel free to write up how you got your setup working and what you are doing on the assembla site, one sure fire way of getting more people involved is by showing them what is possible and a way to get things running.
BTW, for anyone else reading the LiveAPI project is alive and well, there is a google group here :
http://groups.google.com/group/liveapi?hl=en
and a development site here :
http://www.assembla.com/wiki/show/live-api
there is some interesting new code found in the 7.0.12 (and later) releases (_Framework) which seems to hint at something LiveAPI related coming soon from Ableton.
Im guessing its some kind of controller based on the monodeck idea, but thats just a guess

Re:
Is this still the case? The MIDI API works for 90% with Live 8. It just doesn't give the clip status updates. Does anybody have an idea what changed?mdk wrote:BTW, for anyone else reading the LiveAPI project is alive and well
I understand that you might want to wait for the official API. But keep in mind that this hack does not require 500$ software. It just needs an update.
Re: Who wants access to Ableton's Python API? .. You? .. Ok!
I've been trying to piece the changes together and updating the python end of the API MIDI-Demo-6, but no luck so far.
Some helpful people have been able to log some changes though. The Monome community already has their software updated for the latest versions. People who used the MIDI API to design hardware and software around it are a tad screwed though.
From what I understand, the command "add_playing_listener()" changed to "add_playing_status_listener()".
I tried changing these lines in the clip.py file, to no avail. I even broke other stuff in the process.
Here's a document with the changes to the Clip object: http://post.monome.org/?PostBackAction= ... entID=1092
Taken from this thread: http://post.monome.org/comments.php?Dis ... 926&page=7
I've asked around to what exactly was changed, but nobody can really give anything more specific than that the clip object has some changes. Since I'm not a python developer, it makes it very hard to debug this.
Is anybody running an up to date version of this script? With up to date I mean: You're able to get Clip Status info from the scripts in Live 7.0.14 and Live 8.
Cheers
- Bjorn
Some helpful people have been able to log some changes though. The Monome community already has their software updated for the latest versions. People who used the MIDI API to design hardware and software around it are a tad screwed though.
From what I understand, the command "add_playing_listener()" changed to "add_playing_status_listener()".
I tried changing these lines in the clip.py file, to no avail. I even broke other stuff in the process.
Here's a document with the changes to the Clip object: http://post.monome.org/?PostBackAction= ... entID=1092
Taken from this thread: http://post.monome.org/comments.php?Dis ... 926&page=7
I've asked around to what exactly was changed, but nobody can really give anything more specific than that the clip object has some changes. Since I'm not a python developer, it makes it very hard to debug this.
Is anybody running an up to date version of this script? With up to date I mean: You're able to get Clip Status info from the scripts in Live 7.0.14 and Live 8.
Cheers
- Bjorn
Re: Who wants access to Ableton's Python API? .. You? .. Ok!
Hi Bjorn
I did some hacking yesterday. a very painfull excercise for a java nut..
https://www.assembla.com/spaces/live-ap ... Demo-7.zip
APIMidi should work now on OSX, Tested with the Live 7.14+8b and Max4.6.x+5
good luck
martin
I did some hacking yesterday. a very painfull excercise for a java nut..
https://www.assembla.com/spaces/live-ap ... Demo-7.zip
APIMidi should work now on OSX, Tested with the Live 7.14+8b and Max4.6.x+5
good luck
martin
Re: Who wants access to Ableton's Python API? .. You? .. Ok!
I guess I should have posted my progress here too.t0gg1e4u wrote:Hi Bjorn
I did some hacking yesterday. a very painfull excercise for a java nut..
https://www.assembla.com/spaces/live-ap ... Demo-7.zip
APIMidi should work now on OSX, Tested with the Live 7.14+8b and Max4.6.x+5
good luck
martin
Did you make any changes to the python scripts beyond just the _playing_status_listener line?
I got it working again by just changing those lines, but that broke other stuff it seems.
I currently got a patch going which eliminated all of the Java (which crashes Max a little too often).
Its a bit more convoluted than just lines of code, but it does open up this hack for people who know Max but not Java.
I still have lots of errors (in the log) though.
At any rate, I just finished the OSX API to Lemur today. It works, so I'll wait to install your code until I released this hack.
Thanks for looking into this. Any notes on what changed in the python script would be very appreciated.
Cheers
- Bjorn
Re: Who wants access to Ableton's Python API? .. You? .. Ok!
the number of times Java was crashing Max for me was putting me off this... so I'll watch with interest