composable effects chains (macro effects)

Bug #1656189 reported by Be
8
This bug affects 1 person
Affects Status Importance Assigned to Milestone
Mixxx
Won't Fix
Wishlist
Unassigned

Bug Description

Being able to chain 3 effects creates a lot of interesting possibilities and it would be fun to be able to make longer chains. To make this practical to use, it must be able to be intuitively controlled by the typical setup of 3 effect knobs on controllers. To implement chains of arbitrary length and keep it usable, I propose that the current effect chains exposed to skins and controllers remain with 3 fixed effect slots. What could change is that those effect slots would be able to load a chain of arbitrary length instead of a single effect. A tentative name for these arbitrarily complex chains could be "macro effects" (please suggest alternate name possibilities if you can think of them). These would work a bit like the macro effects in Traktor, but they would be composed of chained ordinary Mixxx effects with whatever superknob linking the user desires. Skins would not need to show the details of the macro effect; they would only expose the macro effect's superknob as the metaknob of the outer chain's effect slot.

As an example use case for this feature, I like to have a low pass filter after a bitcrusher in a chain. The low pass filter is used in a set-and-forget manner whereas the bitcrusher is what I am interested in manipulating while mixing. It would be great if I could combine the bitcrusher and filter effect into a macro effect, so I could free one of my 3 effect slots and its metaknob for a different effect that I am interested in changing while mixing. In the macro effect, I would set the filter effect's LPF parameter to my liking then unlink all the filter effect's parameters from the macro effect's superknob, so turning that knob only manipulates the bitcrusher.

Designing an intuitive GUI for this will be tricky.

Tags: effects
Revision history for this message
Daniel Schürmann (daschuer) wrote :

We have this already in the engine.
You just need to shift you mind one point up.

You propose to rename "effects" to "macro effects", which can consist of more than one lets say "atomic effects".

So we will finally have
- EffectRack -> Effect Unit -> Macro Effect -> Atomic Effect.

EffectRack is unused and the Effect Unit N channel capacity is also not used.

This means we have to get back to the LateNight effect usage where we switch effect chains instead of single effects and introduce 3 Effect Units per Deck.

We have to also rethink your latest meta knob changes. From this point of view we need a meta knob at the EffectRack level.

Revision history for this message
Daniel Schürmann (daschuer) wrote :

An other alternative target you use case is a super to meta mapping enables witch + some more effect slots.

Revision history for this message
Be (be.ing) wrote :

EffectRack doesn't really do anything in the engine, so no, we don't already have this. I am not proposing to make use of the "EffectRack" naming. IMO it should be deprecated and EffectRack1_X should be aliased to just X.

Macro effects would not have the same mix and dry/wet controls that EffectUnits have, they'd just have their superknob exposed as the metaknob of the effect slot. Perhaps we could allow the macro effect to choose specific parameters of effects within it to expose, but that wouldn't really be necessary.

> the Effect Unit N channel capacity is also not used.

I don't understand this.

> This means we have to get back to the LateNight effect usage where we switch effect chains instead of single effects and introduce 3 Effect Units per Deck.

Kind of, but instead of switching the whole EffectUnit, effect chains would be able to be switched out within an EffectUnit's chain.

> An other alternative target you use case is a super to meta mapping enables witch + some more effect slots.

My initial idea was to make EffectUnit chains arbitrarily expandable and let the user hide specific effects so only 3 were showing. (That would not require a new super-meta enable switch; users would just have to unlink hidden effects' parameters if they wanted to set and forget them.) However, this would not make it as easy to reuse and rearrange specific sequences of effect chains.

Be (be.ing)
tags: added: effects
Be (be.ing)
Changed in mixxx:
importance: Undecided → Wishlist
Revision history for this message
Be (be.ing) wrote :

I think after saving and loading effect chains is implemented (Bug #1707961), I may not care about implementing this really complicated idea anymore. We can already extend effect chains by assigning a channel to multiple effect units.

Be (be.ing)
Changed in mixxx:
status: New → Won't Fix
Revision history for this message
Swiftb0y (swiftb0y) wrote :

Mixxx now uses GitHub for bug tracking. This bug has been migrated to:
https://github.com/mixxxdj/mixxx/issues/8753

lock status: Metadata changes locked and limited to project staff
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.