Rack macro parameters not correctly captured in a reaction with listener “script is initialised”

80 viewsCSS Questions
0

Hi,
I´m working on a “reaction” that analyses all rack devices in all tracks (see attachments).
Results are written to a file in the css script directory.

The device parameters I´m interested in are:
Name (string), Type (string), Class Name (string), Class Display Name (string), collapsed (boolean), Chains (no. of), has macros (boolean), macros mapped (list of boolean), macros visible (no. of), macro parameternames (list), orig. parameternames (list), macro values (list), macro default values (list), Variations (no. of), Device path (str).

The data file should be created once a live set is loaded, so I take “script is initialised” as listener of the reaction “songs device macros list”.
But when the live set is loaded some data is wrong. Let´s look at the attached example live set (macrotestx.als) with 2 tracks each containing a rack device with macros.
The device in track 0 contains “Analog” and has 7 mapped macros, the device in track 1 is the Ableton instrument preset “Poly Synth Brass” with 8 mapped macros.

After loading the live set the file “songsdevicesmacroslist.txt” is written.
The output shows some surprises (no errors in Ableton log file):
Track 0:
– “has macros” is “False”, what is definitely not the case, because the mapped macros list is correct!
– macro parameter names are not taken over
– current macro parameter values are all zero
– also macro parameter default values are all zero
Track 1:
– “has macros” is “False”, what is definitely not the case, because the mapped macros list is correct!
– current macro parameter values are all zero
+ macro parameter names are correct and also their default values! May be because it´s an Ableton preset??

When I add “song´s selected track has changed” as second listener, load the set again (which leads to the same results as above) and than select a different track “magically” all parameters are correct!
I would like to know, what´s the reason for this behaviour. Why are the parameters not correctly read out at initialisation of the script?

Any hints welcome,
regards Dieter

Zip-file contains :
– macrotestx.als : Live set
– macros set.json: CSS script (controller is a dummy controller with button 2, MIDI Channel 1 Value 2 on/off )
– songsdevicesmacroslist.txt: parameter data

admin Changed status to publish May 22, 2024
Attached Files:
0

I don’t know why you’re seeing this, it could be that the script is initialised by Ableton before the devices are properly setup in the session…
Have you tried selecting the script in Live’s preferences > midi section in order to initialise it that way?

admin Changed status to publish May 22, 2024
Attached Files:
0

Hi John,

thanks for your reply. During the tests, this script was the only one in Ableton. So I activated two other scripts in the preference list before my script, but with same results. When I deselect my script in the preferences and insert it again than it works as desired!
I agree with you that we may have a synchronisation problem. But why is the result different when one device is a preset ????? This “mystery” can probably only be answered by the guys from Ableton……
Do you have any other suggestions?

Regards
Dieter

admin Changed status to publish May 22, 2024
Attached Files:
0

It sounds like some sort of ordering issue within Ableton itself then.
I can’t think of anything else to suggest from our end, best to take it up with them 🙂

admin Changed status to publish May 22, 2024
Attached Files:
0

…..best to take it up with them 🙂

Well, I will give it a try. Keep you informed.
Dieter

admin Changed status to publish May 22, 2024
Attached Files: