-
Notifications
You must be signed in to change notification settings - Fork 385
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We鈥檒l occasionally send you account related emails.
Already on GitHub? Sign in to your account
Nodal routing for filter configuration #4355
Comments
I'm having second thoughts about "then reproduce original filter routings (AND the weird and almost-buggy-if-not-unexpected filter balance behavior) and have them as default presets" part. The thing is just too buggy to replicate, it's probably better to have a hard switch between legacy mode and new mode that would be the default. |
We will know when we code it |
Mockup (WIP): 1 and 2 are (stereo) inputs to the filter config. F1 and F2 are obviously the two filters. Curvy thing is waveshaper (but can be any other voice insert FX we want to add), X thing is ring mod (but can be any other voice insert FX we want to add). FB is an explicit unit delay block. Everything going into the final (stereo) amplifier. Dragging more than one wire from one port creates a copy of the signal. Sinking more than one wire into one port sums those signals. Icons in curvy or X thing would change depending on which voice insert FX is loaded. |
Newer mockup: Inputs 1 and 2 are as mentioned before, inputs into the filter config from the mixer's ROUTE knobs. The other two inputs are direct connections from oscillators, ringmods, noise or audio input. I1/I2 are voice-level insert effects. Balance knob will only crossfade outputs of F1 and F2 blocks, no matter what they are hooked up to. |
Hey, just wondering about the progress on this. Is it something that is still quite far off? |
yes |
@TheGuyWhoo Anything that is tagged as "Breaking Change" you can expect to be a more long term thing (think 1-2 years, and also not a part of Surge XT 1.x release cycle). |
The feature request is quite simple, but the work needed is probably not. 馃檪
Basically, rather than having fixed filter configurations, make it so that we can route the filters, waveshaper and ring modulator freely, and tap the feedback from any output point among those blocks, and return it to any input point among those blocks.
Additionally: consider updating the ring mod block (only ever used in Ring filter config) to be an effect we can insert anywhere in the chain. Could be a second waveshaper, an EQ, an additional comb filter, Treemonster, whatever we want. This is #6015.
Example from Massive X:
You can see FB blocks that are used to tap out the signal into the feedback bus, then return it to whichever block in the structure. Oscillators are also freely routable, but without a level mix to each of the filters, so I would eschew this from our implementation - still have the filter 1/2 mix parameters in the oscillator mixer instead. A, B and C are insert effects that can be added and routed however. Let's consider A is our waveshaper and B is ring modulator (that might just become more flexible eventually).
Lots of work, sure. Benefits? Huge!
The text was updated successfully, but these errors were encountered: