Both routes listed above are good, for different reasons.
I tend towards demultiplexing when turning on/off chains in QC. It seems to consistently lead to better performance.
That said, you may want to investigate a couple of other options:
Look at the composition importer patch, and feeding file path strings to it, to load your patches. That's pretty darn good, and may actually help workaround some issues with 3rd party plugins that the composition may load that don't "do the right thing" and don't cleanup state correctly, sometimes.
Look at the stock timeline patch, as this will let you trigger events at anytime. Interpolate and friends tend to be better when each event lasts the same amount of time.
You can connect every consumer to a patch time, and use conditionals to turn stuff off and on... this is what I used to do before there was a demultiplexer (I think?).
Kineme's Value Historian patch is really useful for this stuff as well- if you have a multiplexer/demultiplexer, or filepaths, you can just enter in what you need at the correct time, while in record, switchover to playback, and your events will playback.
There could well be other ways of doing it more efficiently but here's something I rustled up.
It uses an interpolation to index through a virtual multiplexer so that each patch is indexed in turn. Edit as required.
Heres the same concept using a demultiplexer. the interpolation still controls the index.
Both routes listed above are good, for different reasons.
I tend towards demultiplexing when turning on/off chains in QC. It seems to consistently lead to better performance.
That said, you may want to investigate a couple of other options:
Look at the composition importer patch, and feeding file path strings to it, to load your patches. That's pretty darn good, and may actually help workaround some issues with 3rd party plugins that the composition may load that don't "do the right thing" and don't cleanup state correctly, sometimes.
Look at the stock timeline patch, as this will let you trigger events at anytime. Interpolate and friends tend to be better when each event lasts the same amount of time.
You can connect every consumer to a patch time, and use conditionals to turn stuff off and on... this is what I used to do before there was a demultiplexer (I think?).
Kineme's Value Historian patch is really useful for this stuff as well- if you have a multiplexer/demultiplexer, or filepaths, you can just enter in what you need at the correct time, while in record, switchover to playback, and your events will playback.
Thank you Andrew, Shayne and George for the comps and the explanations. I love this forum!