In general, I think that modularity should be the vision for a future major release of Gig Performer. It could happen on a few levels, depending on where the developers want to take it.
Here are a few examples:
- Modules, Devices, or Units - When you buy a new hardware device or effects unit, it has connectors in the back and controls on the front. (Maybe it has a remote control panel, but same idea.) You bolt it in, connect it up, turn it on, and the controls are right there. Maybe you move it up or down your rack, but you don’t move its fader onto your power amp or wireless receiver. The controls are a package deal.
The equivalent in Gig Performer would be to drop a module/device/unit onto your panel view (bolt the unit into your rack) and the associated plugin block would be added to the wiring view. All the knobs are ready to go and already connected to the plugin. You can move the UI as a group, but its layout and design are fixed. To change it, there would need to be a module editor. Update the module and all of the instances of that module gets the update. Want this module to be unique? Copy and paste it with a new name to create a different, custom UI for the same plugin block.
-
Module Groups - This is like the suggestion of the original post. Combine it with the above concept, and you can drop a UI onto the panel view that also loads multiple plugin units onto the wiring page with their internal routing already wired. For mixing, it you could have a custom channel strip. A guitarist might have a favorite pedalboard and amp combination.
-
Multiple Racks - This could be like multiple instances. (And this might be available only in a step up “Gig Performer Pro” or “Gig Performer Emnsemble” product. It’s not needed for a pedal board or synth selector/controller application.) This version would have a mixer layer and a layer for players. These would be like multiple instances that support multiple cores. There is one Setlist/Song/Part at any one time, and you can mix and match Rackspackes for the various players.
For instance, one song might use a Rock Kit drum library with a given sound, an Ampeg Bass amp, a Marshall amp with a small pedal board, piano, and a standard vocal chain. In the next song, everything stays the same, except it uses a Rhodes. The following song has a phone booth effect on the vocal. If one were to make Rackspaces with unique combinations for each song, it’s a lot of work, but by having independent racks for each player, you can build the overall setup by just associating different sets of Rackspaces for each Song.
The two use cases are where a whole band shares a single computer/Gig Performer setup, or when a solo or duo act with multi-instrumentalists does their thing. In my case, I do this with multiple instances today. I sing, play guitar and keyboards, and I have a Zendrum controller. I use MIDI libraries for all sounds, so I can either have it played by the MIDI File Player, or I can play it live - and the sounds are consistent between live and MIDI playback parts. As an example, I can play things, loop them, and get into the main verse, but MIDI playback can then take over to do the chorus or bridge. This means that I’m not stuck in a repetitive loop, and the sounds will be identical between live and playback.
Multiple instances do the trick for me, but an integrated approach could have benefits. First, it would be easier to set up, with no loopbacks needed, no separate applications, etc. Second, I could have both independent panel UIs (which I have now), and an integrated UI that controls things across the independent racks. For example, I could put the channel strips into the players’ Rackspaces wiring spaces and the submixes, effects busses, etc into the mixer level, but I could have a single, integrated mixer UI for live use.
A cool advantage is that I might get a better Marshall Stack plugin. I replace the old one once, and now all of my songs that use the Marshall get the update. Same thing with a Piano VST upgrade, etc. To be safe, I could save the previous Rackspaces and continue to use the old one on the songs where it was the better match.
Overall, Modularity can make Gig Performer much more efficient for the end user. We could make a UI set one time, and drop it into our Gigs. We could update that UI set one time and enjoy the update across all of our Rackspaces and Songs. We could avoid the tedious work of connecting UI elements to plugins over and over. We could use the power of multiple cores, but have the integration of one app instance and a unified UI.
We can (and should) leave the specifics to the developers. But the concepts of modularity, reuse, and working across cores (in a pro version) would be excellent goals for Gig Performer 5.0. It could retain the flexibility of Gig Performer, but reduce the repetitive tasks and ease maintenance for users. The more levels of modularity and reuse, the better!