Live 9 MIDI Remote Scripts revealed...

Discussion of music production, audio, equipment and any related topics, either with or without Ableton Live
julienb
Posts: 1795
Joined: Sat Oct 29, 2005 1:15 pm
Location: France
Contact:

Re: Live 9 MIDI Remote Scripts revealed...

Post by julienb » Thu Mar 07, 2013 1:32 pm

f.poce@tiscali.nl wrote:To whom it may concern, I posted an updated version of Hanz Petrov's APC_64_40 compatible with Live 9 (new surface name "APC_64_40_9").
Please be aware this version works only with Live 9 as it makes use of the new _Framework. It does not work in Live 8 (the original does).

You can find it here as a free download: http://www.fabriziopoce.com/download.html

PS: Hanz knows about this update.

Cheers
Fabrizio

+++

#1thelark
Posts: 985
Joined: Thu Nov 05, 2009 4:06 pm

Re: Live 9 MIDI Remote Scripts revealed...

Post by #1thelark » Thu Mar 07, 2013 3:18 pm

julienb wrote:Some News.

2/ Native Scales of Push Scripts

MUSICAL_MODES =
['Major', [0,2,4,5,7,9,11],
'Minor', [0,2,3,5,7,8,10],
'Dorian', [0,2,3,5,7,9,10],
'Mixolydian', [0,2,4,5,7,9,10],
'Lydian', [0,2,4,6,7,9,11],
'Phrygian', [0,1,3,5,7,8,10],
'Locrian', [0,1,3,4,7,8,10],
'Diminished', [0,1,3,4,6,7,9,10],
'Whole-half', [0,2,3,5,6,8,9,11],
'Whole Tone', [0,2,4,6,8,10],
'Minor Blues', [0,3,5,6,7,10],
'Minor Pentatonic', [0,3,5,7,10],
'Major Pentatonic', [0,2,4,7,9],
'Harmonic Minor', [0,2,3,5,7,8,11],
'Melodic Minor', [0,2,3,5,7,9,11],
'Super Locrian', [0,1,3,4,6,8,10],
'Bhairav', [0,1,4,5,7,8,11],
'Hungarian Minor', [0,2,3,6,7,8,11],
'Minor Gypsy', [0,1,4,5,7,8,10],
'Hirojoshi', [0,2,3,7,8],
'In-Sen', [0,1,5,7,10],
'Iwato', [0,1,5,6,10],
'Kumoi', [0,2,3,7,9],
'Pelog', [0,1,3,4,7,8],
'Spanish', [0,1,3,4,5,6,8,10]]

Basically, you can add scales and use them with Push :D
I have a question: can I use Automap to do a LP-mapping with the Push-scale-layout and add a midirack with several scale plugins to give my LP Push-style-keyboard feel? Or do I need something else?

julienb
Posts: 1795
Joined: Sat Oct 29, 2005 1:15 pm
Location: France
Contact:

Re: Live 9 MIDI Remote Scripts revealed...

Post by julienb » Thu Mar 07, 2013 4:20 pm

#1thelark wrote:
julienb wrote:Some News.

2/ Native Scales of Push Scripts

MUSICAL_MODES =
['Major', [0,2,4,5,7,9,11],
'Minor', [0,2,3,5,7,8,10],
'Dorian', [0,2,3,5,7,9,10],
'Mixolydian', [0,2,4,5,7,9,10],
'Lydian', [0,2,4,6,7,9,11],
'Phrygian', [0,1,3,5,7,8,10],
'Locrian', [0,1,3,4,7,8,10],
'Diminished', [0,1,3,4,6,7,9,10],
'Whole-half', [0,2,3,5,6,8,9,11],
'Whole Tone', [0,2,4,6,8,10],
'Minor Blues', [0,3,5,6,7,10],
'Minor Pentatonic', [0,3,5,7,10],
'Major Pentatonic', [0,2,4,7,9],
'Harmonic Minor', [0,2,3,5,7,8,11],
'Melodic Minor', [0,2,3,5,7,9,11],
'Super Locrian', [0,1,3,4,6,8,10],
'Bhairav', [0,1,4,5,7,8,11],
'Hungarian Minor', [0,2,3,6,7,8,11],
'Minor Gypsy', [0,1,4,5,7,8,10],
'Hirojoshi', [0,2,3,7,8],
'In-Sen', [0,1,5,7,10],
'Iwato', [0,1,5,6,10],
'Kumoi', [0,2,3,7,9],
'Pelog', [0,1,3,4,7,8],
'Spanish', [0,1,3,4,5,6,8,10]]

Basically, you can add scales and use them with Push :D
I have a question: can I use Automap to do a LP-mapping with the Push-scale-layout and add a midirack with several scale plugins to give my LP Push-style-keyboard feel? Or do I need something else?
No need of the Scale device.
The "conversion" between what you push on the pads and the "scaled" notes occurs in the Python.

mynp
Posts: 4
Joined: Wed Mar 06, 2013 3:49 pm

Re: Live 9 MIDI Remote Scripts revealed...

Post by mynp » Thu Mar 07, 2013 5:18 pm

julienb wrote:
I should use the same folder name and more rename PushOld and use Push as the test running one.
I did that only and that works.

Let me know ..
i'm not shure of what you mean but
the original Push remote script works, because the red box appear and there are no errors on the Log.txt file.

Pasting the uncompiled folder in the "remote midi script" folder and then re-run Live 9 causes the errors i've posted before on the log file and no red box.

for example:
I made a comparison between the original __init__.pyc and the one compiled starting live, with the command:
cmp __init__.pyc __init2__.pyc
and causes the output : __init__.pyc __init2__.pyc differ: char 5, line 2

the files are different.

I don't know if i miss something...
thank you for your help!

julienb
Posts: 1795
Joined: Sat Oct 29, 2005 1:15 pm
Location: France
Contact:

Re: Live 9 MIDI Remote Scripts revealed...

Post by julienb » Thu Mar 07, 2013 5:30 pm

mynp wrote:
julienb wrote:
I should use the same folder name and more rename PushOld and use Push as the test running one.
I did that only and that works.

Let me know ..
i'm not shure of what you mean but
the original Push remote script works, because the red box appear and there are no errors on the Log.txt file.

Pasting the uncompiled folder in the "remote midi script" folder and then re-run Live 9 causes the errors i've posted before on the log file and no red box.

for example:
I made a comparison between the original __init__.pyc and the one compiled starting live, with the command:
cmp __init__.pyc __init2__.pyc
and causes the output : __init__.pyc __init2__.pyc differ: char 5, line 2

the files are different.

I don't know if i miss something...
thank you for your help!
I totally understand what you mean, but in my case it works...
weird.

As I wrote, the only difference is I don't use a new name for the folder (that shouldn't matter...) si I suggested to test in the initial Push folder.

digging...

mynp
Posts: 4
Joined: Wed Mar 06, 2013 3:49 pm

Re: Live 9 MIDI Remote Scripts revealed...

Post by mynp » Thu Mar 07, 2013 5:52 pm

julienb wrote: As I wrote, the only difference is I don't use a new name for the folder (that shouldn't matter...) si I suggested to test in the initial Push folder.
digging...
Hmm ok
i've tried to put all the .py files in the push folder with the original .pyc files but no red box and a lot of errors on the log.

Can be something related to my compilers library? typing python i get the output:
Python 2.7.3 (v2.7.3:70274d53c1dd, Apr 9 2012, 20:52:43)
[GCC 4.2.1 (Apple Inc. build 5666) (dot 3)] on darwin

julienb
Posts: 1795
Joined: Sat Oct 29, 2005 1:15 pm
Location: France
Contact:

Re: Live 9 MIDI Remote Scripts revealed...

Post by julienb » Thu Mar 07, 2013 6:00 pm

mynp wrote:
julienb wrote: As I wrote, the only difference is I don't use a new name for the folder (that shouldn't matter...) si I suggested to test in the initial Push folder.
digging...
Hmm ok
i've tried to put all the .py files in the push folder with the original .pyc files but no red box and a lot of errors on the log.

Can be something related to my compilers library? typing python i get the output:
Python 2.7.3 (v2.7.3:70274d53c1dd, Apr 9 2012, 20:52:43)
[GCC 4.2.1 (Apple Inc. build 5666) (dot 3)] on darwin
I guess it cannot be the problem: Live doesn't require Python external lib. It can compile Scripts by itself..


(still) digging trying to reproduce the problem...

metastatik
Posts: 318
Joined: Tue Mar 13, 2007 3:28 pm

Re: Live 9 MIDI Remote Scripts revealed...

Post by metastatik » Thu Mar 07, 2013 6:26 pm

mynp wrote:i've tried to put all the .py files in the push folder with the original .pyc files but no red box and a lot of errors on the log.
I haven’t messed around with it since the beta, but I was running into the same errors you are when trying this. It appears that there are parts of the Push script that Live’s built-in compiler won’t/can't compile. If your aim is to just modify parts of the script, I’d suggest that you find the .py file(s) associated with the parts you want to modify and just place those in the original Push folder instead of placing all the .py files in the Push folder.

You may still run into errors, but then you’d only have to fix them in the .py file(s) you actually need to modify. For example, the error shown in your first post in this thread could probably be fixed by replacing the offending line with a typical assert or just removing it altogether.

For those just looking to emulate Push with other controllers, there’s a much easier way to do it that’s described here.

julienb
Posts: 1795
Joined: Sat Oct 29, 2005 1:15 pm
Location: France
Contact:

Re: Live 9 MIDI Remote Scripts revealed...

Post by julienb » Fri Mar 08, 2013 8:32 am

More how tos about Remote scripts, debug and stuff.
http://julienbayle.net/ableton-push/#howtos

A metastatik wrote, putting ALL modified (or even just decompiled) stuff in the folder can be a pain to debug.
I altered some parts, progressively, everything works fine.
Changed colors, added some texts..

mynp
Posts: 4
Joined: Wed Mar 06, 2013 3:49 pm

Re: Live 9 MIDI Remote Scripts revealed...

Post by mynp » Fri Mar 08, 2013 10:13 am

Thanks for all the answers.
I think that it's a tipycal situation when a software is "too fresh" .Problems with small parts of software will always pop up on the first weeks...

Anyway, i just want to add the last input to try to solve my problem:

I have a pending verification on my educational status so my copy of live is still unauthorized.
Can be this the real problem?

thanks again.

julienb
Posts: 1795
Joined: Sat Oct 29, 2005 1:15 pm
Location: France
Contact:

Re: Live 9 MIDI Remote Scripts revealed...

Post by julienb » Fri Mar 08, 2013 10:29 am

mynp wrote:Thanks for all the answers.
I think that it's a tipycal situation when a software is "too fresh" .Problems with small parts of software will always pop up on the first weeks...

Anyway, i just want to add the last input to try to solve my problem:

I have a pending verification on my educational status so my copy of live is still unauthorized.
Can be this the real problem?

thanks again.
I don't think that's the problem.
But actually, I don't know.

djlimbs
Posts: 143
Joined: Wed Dec 12, 2007 12:07 am

Re: Live 9 MIDI Remote Scripts revealed...

Post by djlimbs » Fri Apr 05, 2013 3:41 pm

So I've been noodling around w/ this and finally found a way to decompile the files (since it seems Ableton changes them quite a bit with each release). I've been working with BrowserComponent.pyc as I think that can enable subfolders and other goodness with Drum Hits. For some reason though, even with a straight decompile, I come across a bunch of AssertionError problems in the log file. I don't know much about Python but I assume that means the decompiler isn't 100% accurate? I dont know if I have the chops to figure out the differences and fix them, but it's been my most recent obsession (for the past two days!)

Any insight about how Python decompilers work Julien?

edit - update

So I was able to get by the AssertionErrors by turning all those lines into just asserts. Now I'm having issues with an IndexError in self._contents[level + 1].

Anyways, hopefully I'll figure somethin useful out by the end of the day. Thanks Julien for all the info you've posted so far!!

Esben
Posts: 1
Joined: Wed Apr 17, 2013 2:28 pm

Re: Live 9 MIDI Remote Scripts revealed...

Post by Esben » Wed Apr 17, 2013 2:34 pm

I am working with the Remote SL, and all files but the DisplayController.py compile nicely.

When I try to compile that certain file I get this error message in the log (I have not altered anything in the files - also the folder name is still RemoteSL)

Code: Select all

7673 ms. RemoteScriptError: Traceback (most recent call last):

7673 ms. RemoteScriptError:   File "MIDI Remote Scripts/RemoteSL/__init__.py", line 15, in create_instance

7673 ms. RemoteScriptError:   File "MIDI Remote Scripts/RemoteSL/RemoteSL.py", line 33, in __init__

7673 ms. RemoteScriptError:   File "MIDI Remote Scripts/RemoteSL/EffectController.py", line 51, in __init__

7673 ms. RemoteScriptError:   File "MIDI Remote Scripts/RemoteSL/EffectController.py", line 232, in __reassign_strips

7673 ms. RemoteScriptError:   File "MIDI Remote Scripts/RemoteSL/DisplayController.py", line 30, in setup_left_display

7674 ms. RemoteScriptError:     
7674 ms. RemoteScriptError: raise len(parameters) == NUM_CONTROLS_PER_ROW or AssertionError

7674 ms. RemoteScriptError: TypeError
7674 ms. RemoteScriptError: : 
7674 ms. RemoteScriptError: exceptions must be classes, instances, or strings (deprecated), not bool
7675 ms. RemoteScriptError: 

7675 ms. Exception: Script could not be loaded.
7675 ms. Exception: Stack trace format version: 1 (Mac)
Any ideas?

queglay
Posts: 522
Joined: Wed May 03, 2006 7:15 am

Re: Live 9 MIDI Remote Scripts revealed...

Post by queglay » Tue May 28, 2013 9:24 am

djlimbs wrote:So I've been noodling around w/ this and finally found a way to decompile the files (since it seems Ableton changes them quite a bit with each release). I've been working with BrowserComponent.pyc as I think that can enable subfolders and other goodness with Drum Hits. For some reason though, even with a straight decompile, I come across a bunch of AssertionError problems in the log file. I don't know much about Python but I assume that means the decompiler isn't 100% accurate? I dont know if I have the chops to figure out the differences and fix them, but it's been my most recent obsession (for the past two days!)

Any insight about how Python decompilers work Julien?

edit - update

So I was able to get by the AssertionErrors by turning all those lines into just asserts. Now I'm having issues with an IndexError in self._contents[level + 1].

Anyways, hopefully I'll figure somethin useful out by the end of the day. Thanks Julien for all the info you've posted so far!!
this thread is golden for me. i can see you fixed a bit of code in BrowserComponents.py with -

Code: Select all

if (children or is_folder or level < 1):
Why did you do that and how did you know to do it?

i wonder why uncompyle2 (the python decompyler) produces these raise/assert errors in the decompiled files.
Load VST Presets from Push's Browser!
http://www.audiomodder.com


Post Reply