Live 9 MIDI Remote Scripts revealed...

Discuss music production with Ableton Live.
Hielo Patagonia Sounds
Posts: 95
Joined: Fri Sep 17, 2004 11:47 am
Location: Reykjavik, Iceland
Contact:

Re: Live 9 MIDI Remote Scripts revealed...

Post by Hielo Patagonia Sounds » Sat Dec 28, 2013 5:14 am

Hi Julien, (Salut !)

I'm trying to find my way in learning how to build custom remote scripts. I've download your last "decompiled MIDI remote script" archive from Github. As a test and example, I've tried to replace the compiled script of the VCM600 with the uncompiled one. Live 9.1 compiled them again, but these newly recompiled scripts are not working. It seems that decompiled and then recompiled scripts are not working any more ...

:(

Is it a new limitation of Live 9.1 ? :? :cry:

ps: I'm on Mac OSX 10.6.8 - btw, the factory compiled VCM600 scripts are perfectly working.

Thanks !

H.

mbakirov
Posts: 172
Joined: Sat Jul 07, 2012 5:55 am

Re: Live 9 MIDI Remote Scripts revealed...

Post by mbakirov » Sun Dec 29, 2013 10:48 am

thee scripts are buggy.
check the ableton log.
I had to do a lot to make the impulse script work.

Hielo Patagonia Sounds
Posts: 95
Joined: Fri Sep 17, 2004 11:47 am
Location: Reykjavik, Iceland
Contact:

Re: Live 9 MIDI Remote Scripts revealed...

Post by Hielo Patagonia Sounds » Sun Dec 29, 2013 3:52 pm

I've ended up using these scripts for the FCB1010, made by Hanz Petrov. They are very well documented and have been recently updated for Live 9. It's a very good starting point.

http://remotescripts.blogspot.com/2010/ ... ses-4.html

:D

H.

tdmusic_
Posts: 17
Joined: Thu Nov 22, 2012 5:56 pm

Re: Live 9 MIDI Remote Scripts revealed...

Post by tdmusic_ » Sun Jan 05, 2014 2:08 pm

queglay wrote:i wonder why uncompyle2 (the python decompyler) produces these raise/assert errors in the decompiled files.
I've been doing some work on this recently, the problem is that uncompyle2 is a Python 2.7 program, while Ableton runs Python 2.5 internally... uncompyle2 has the ability to decompile Python 2.5 bytecode, but it converts it back into Python 2.7 code. Normally this isn't an issue, but there are a few new language features in 2.7 which it tries to use which don't exist in 2.5 - in this case, in 2.7 you can say:

Code: Select all

raise variable == True or Exception
and it will evaluate the expression "variable == True" - if the result of that is true, it won't do anything, if it is false, it will raise the exception. However, 2.5 didn't support this shorthand, so that same code converts to something like:

Code: Select all

if not variable == True:
    raise Exception
I found another decompiler: https://github.com/zrax/pycdc, which seems to output Python 2.5 code, but the code this produced was also buggy in different ways (and I couldn't get it to work properly even when I fixed the syntax errors). In the end, I managed to get a pretty much entirely working BrowserComponent.py by using the output from uncompyle2, but where there were any errors, looking at the pycdc output for that line and copying chunks over.

The chunk you are talking about ends up looking like this, which I found in the pycdc output:

Code: Select all

if children and is_folder or level < 1:
                    self._fit_content_lists(level + 2)
                    (child_contents, _) = self._contents[level + 1]
                    child_contents.assign_items(children)
I'm not sure if the code output by uncompyle2 would work properly in Python 2.7 or if it is buggy, I've not looked at it properly.

I'll share my file soon, along with some pretty exciting (I think :)) Push hacks I've developed :D

Would be great if we can find a proper Py2.5 decompiler (I notice there's a web based service at http://www.crazy-compilers.com/decompyle/, apparently this is what https://github.com/tswr/UnPyc became - obviously the author realised open source isn't that profitable ;)) - I have tried all the ones I could find and none worked properly, however the combo of uncompyle and pycdc will do for now. It would be even cooler if we could hack Ableton to run Python 2.7 internally... and even cooler still if Ableton just released the source PY files ;)!

mots
Posts: 230
Joined: Fri Nov 17, 2006 9:07 am

Re: Live 9 MIDI Remote Scripts revealed...

Post by mots » Mon Jan 06, 2014 5:53 pm

hello

i use this with some success !
https://github.com/Mysterie/uncompyle2

cheers,

mots

tdmusic_
Posts: 17
Joined: Thu Nov 22, 2012 5:56 pm

Re: Live 9 MIDI Remote Scripts revealed...

Post by tdmusic_ » Tue Jan 07, 2014 2:14 pm

mots wrote:hello

i use this with some success !
https://github.com/Mysterie/uncompyle2

cheers,

mots
Yep, that's what I've been using too. Seems to output Python 2.7 code as I describe above, but works well enough :)

Post Reply