YouTube viewer "You & We" asked if there was a way to use this as a frequency crossfader. This was a great way to think about the device, and something that I wanted to try. The way we are going to approach is is to make the 8BandMix device into a "Master", and then create a "Slave" device that will receive changes from the Master and either match or invert the results to create either a second mixer or a crossfader.
The first thing we have to do is change the 8BandMix device. This is going to be pretty easy - all we have to do is to take the necessary data (the slider and crossover values) and send them globally to any receiving device:
We use the send object with a name "global8BandMixControl" - without the leading "---" - in order to have this named the same for every device in the system. This gives us access to the values that we will use in our slave device.
Now, we can create a second device that contains much of the "guts" of the 8BandMix device, but doesn't interface with the Push - and doesn't provide access to controls that will be managed by the master device.
You will notice that we receive the data from the master, then propagate it to the places it needs to go. From there, we have to allow this device to either mirror the master (Normal mode) or flip/crossfade the master (Inverted mode). To accomplish this, we use a ggate object to determine if a calculation occurs, then that result is sent to the slider system.
Other than that, we should be good to go...
There are a few limitations to using send objects in this way:
Hopefully this device is still useful, or maybe you'd like to eliminate some of the problems (using speedlim and metro to resolve some of these issues); in any case, I hope this has been an interesting experiment.