Skip to content

Automatic FX-mixer strip management #1215

@unfa

Description

@unfa

The problem
Right now, to use the FX-mixer the user has to manually add, assign and rename strips, before he can use the mixer. I've got used to do this, and I use minimal instrument names ("K" for "Kick" etc.) to cut down the time I spend just getting the mixer up and running. I think many operations can be automated and the user could just use the mixer creatively, not wasting time on setting it up every time from scratch.

The solution
The idea is to create, assign and rename one FX-mixer channel for every instrument the user adds. Since we have two instrument spaces (B+B and Song) I advise to make it first B+B instruments, then the Song instruments. Possibly we could use the colors to indicate the type of mixers strips (see #1214).

All strips should have an "automatic" flag (a boolean property). None of the automatic functions below should work if the strip has the "automatic" flag FALSE (manually created or modified strips should be kept intact).

  1. When the user adds an instrument, create an FX-mixer strip and connect it with the created instrument; set the "auto" flag TRUE.
    If the instrument is added into B+B editor, scan the mixer to find the first Song instrument strip, and insert the new strip before it (shift all other strips). If the instrument is added into Song editor, add it at the end of the mixer.
  2. When the user renames an instrument, rename the FX-mixer channel that it's connected to;
  3. When the user moves an instrument, move the FX-mixer channel accordingly so the orders match in Sequencers and Mixer;
  4. If the user deletes an instrument, delete the corresponding channel strip.
  5. If the user creates or modifies (rename, move) a mixer strip, set the "automatic" flag to FALSE; Muting, moving the fader, modifying strips sends, and modifying the effects stack should not remove the "automatic" flag.
  6. Let the user right click on a strip and set/unset the "automatic" flag so he can manually re-enable auto or disable it if he wants.
  7. Let the user disable/enable this system in the options immediately (no restart required) possibly with a on/off button in the FX-mixer window.
  8. If the system is enabled while the session is not empty, flag all channels as "manual" and only manage channels for new instruments.
  9. Mark the automatically created and managed channels visually in the FX-mixer window, so the user knows what is what.

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions