yastefan / grandMA3-Chataigne-Module

A Chataigne module to control grandMA3 via OSC
GNU General Public License v3.0
23 stars 7 forks source link

Executors Sync Feature #12

Closed hepiyellow closed 11 months ago

hepiyellow commented 1 year ago

Hi,

First, I didn't really understand how to use this feature. How do I add executors to the sync list? I see the is a "Add Executor ToSync List" command. Should I add an action in a StateMachine with "Add Executor ToSync List" command, and then trigger it once?

Second, I think this feature should not be implemented in Chataigne at all. It can and should be a MA3 Plugin, since it is unrelated to external control. It is useful also with a console (without using MIDI controllers at all). Of course the grandMA3 Chataigne module can have a predefined command that send the plugin a sync action. (Or the user can simply create a Macro that calls the plugin's sync action, and trigger this macro using grandMA3 Chataigne module.)

japalie commented 12 months ago

You can have a Look at my Plugin gor MA3: https://drive.google.com/file/d/1j_2l9hJDk8M7NG22lkC0bT-PcbLSc84g/view?usp=drivesdk

may it helps you. I trigger it via a Button on my MIDI controller and on Software start it wilö then run in Background of the MA3 and sends updates.

Edit: Some parts were already programmed by someone else. I changed it to my needs.

yastefan commented 12 months ago

Hello, nice to see that there is interest in the plugin. I'll try to be clear about the sync feature. For a club setup, I wanted beat sync between the Pioneer CDJs, or Ableton and GrandMA. For the CDJs I use BeatLinkTrigger [1] with the Ableton link output. This way I can link the CDJs as well as sync with Ableton during a live session without changing anything in the mapping.

For the tempo this works without detours, but I also want the lamps to turn on on the kick (on the beat). So I had to find a way to restart a cue in a sequence on a beat time (1, 2, 3, 4) so that, for example, the first step of a phaser triggers on the beat. On the midi controller I can now decide for each executor on which beat it starts.

For me, this feature also belongs in any case in the plugin, because I can thus also determine for other software (Resolume, HeavyM, etc.) when an effect jumps over and that is in synchronization with the light.

Hope I could provide a little clarity and am of course open to improvements :)

[1] https://github.com/Deep-Symmetry/beat-link-trigger

yastefan commented 12 months ago

The usage looks like this. You add an executor to a synclist (for example, 1 for Beat 1) and then execute SyncExecutors when the trigger for Beat 1 comes from Ableton Link.

Of course, the feature is also interesting for consoles, but you need a PC anyway to get the beat signal from the CDJs, Ableton or other tools