Tags: posts polarity-music Bitwig Audio-FX Delay Modulators Interface Tutorial

Creating a Multi-Band Delay Effect with a Synthesizer in the FX Grid

Tutorial | Sep 18, 2023

In today's video, I show how to create a multi-band delay effect using the polymer synthesizer as input. I demonstrate how to use the FXgrid, filters, and a mod delay to create the effect. I also implement macros for resonance, feedback, and filter cutoff. To make changing the delay timings easier, I use a step mode interface. I explain the logic behind it and how to map it to each delay. I discuss the limitations of the grid for creating interface controls and the need for better interfaces. I give examples of how the effect sounds and suggest adding a convolution reverb. I also mention the possibility of using pitch quantization and panning for more control. Overall, it's a creative way to achieve a multi-band delay effect with a flexible interface.

You can watch the Video on Youtube - support me on Patreon

Questions & Answers

Maybe you dont watch the video, here are some important takeaways:

4 Questions for the Video: Creating a Multi-Band Delay Effect

Question 1: What is a multi-band delay effect?

A multi-band delay effect is an audio effect that applies delay to different frequency bands individually. Unlike a regular delay effect, which applies the same delay to the entire audio signal, a multi-band delay allows for more precise control over the delay timings for specific frequency ranges. This can create interesting and unique effects by delaying certain frequencies while leaving others unaffected.

Question 2: How can I create a multi-band delay effect?

To create a multi-band delay effect, you will need a synthesizer as the input source. In the video, the polymer synthesizer is used. The effect is built using the FXgrid module in the software. Inside the FXgrid, filters are implemented to separate the audio signal into different frequency bands. A bandpass filter is used, and the number of bands and the slope of the filter can be adjusted. The mod delay module is then used to introduce the delay. Macros are implemented to control parameters such as resonance, feedback, and filter cutoff. The root pitch can also be defined to control the filter cutoff frequency. The video provides a step-by-step guide on how to set up this multi-band delay effect.

Question 3: What is the challenge with the interface of the delay timings?

The challenge with the interface of the delay timings in this setup is that changing the delay timings for each band requires manually adjusting each delay individually. This can be time-consuming and cumbersome, especially when trying to experiment and explore different delay timings. The video acknowledges that the grid module needs improvement in terms of providing a more user-friendly interface for controlling multiple values simultaneously.

Question 4: How can the delay timing interface be improved?

In the video, a workaround is presented to improve the interface for changing the delay timings. By using a step mode setup with a clock module, the delay timings can be easily adjusted by drawing in values rather than manually adjusting each delay individually. This simplifies the process and allows for greater flexibility in experimenting with different delay timings. While this workaround is effective, the video highlights the need for better interface options within the grid module to optimize the workflow for creating multi-band delay effects.


This is what im talking about in this video. The text is transcribed by AI, so it might not be perfect. If you find any mistakes, please let me know.
You can also click on the timestamps to jump to the right part of the video, which should be helpful.

[00:00:00] So in today's video it's about how to create a multi-band delay effect.
[00:00:06] We need probably some kind of synthesizer as an input. So here I take the polymer.
[00:00:13] [Music]
[00:00:16] That's okay so far. Then we need an FXgrid of course.
[00:00:22] Inside of Xgrid we want to implement some filters. So we use let's say a selling key filter.
[00:00:30] Bandpass, 8 maybe. You can also go 2 or 4 12 dB per octave.
[00:00:41] But I start here with 8. I disable the pre-chord, the pitch pre-chord.
[00:00:47] And we want to connect to the input and output of course.
[00:00:53] And we want to implement the delay. In our case here mod delay.
[00:00:59] We switch this to milliseconds timing. And we implement some macros.
[00:01:05] The first one here is for the resonance of course.
[00:01:09] You can change the resonance with all, yeah on all bandpass filters at the same time.
[00:01:16] We also implement a macro for the feedback here.
[00:01:21] And maybe a macro for the filter cutoff here. Or the delay cutoff.
[00:01:29] This is nice. We need an pitch input here.
[00:01:34] So we can define the root pitch. This goes straight into the selling key filter.
[00:01:38] Because we double clicked on this here and snap this to C3.
[00:01:42] We can pull this all the way up and now we can define it filter cutoff frequency with this input.
[00:01:50] And then in between that we use a ratio.
[00:01:54] And for the first filter here we use 1 1 of course. Which is just you know the root key or the root frequency.
[00:02:04] And what else do we need? So we can change the feedback here. We can change the resonance.
[00:02:09] Maybe you can also define the other filter if you want to.
[00:02:14] Let's say this pull this up. This goes to HP1, VP6, VP4, VP2.
[00:02:25] So minus minus 3 goes all the way from VP8 to VP2.
[00:02:36] Let's say this. It's VP2. Let's go to minus 4.
[00:02:44] This is LP8. So 3 is enough. Minus minus 3.
[00:02:51] So now that we have this we can start duplicators.
[00:02:58] So that's the second one here. We also need an output.
[00:03:02] So yeah I'm just a bit lazy. I don't use a mixer and then go in one output.
[00:03:07] I just use multiple outputs here because it's easier to clone.
[00:03:11] It's the same thing. It's close to 3, 4, 5, 6.
[00:03:25] Now go up to 10.
[00:03:29] You can go up to maybe 20 if you want to. But you have to keep in mind the CPU usage also goes up.
[00:03:41] 10. Okay nice. So we can define here the root pitch
[00:03:46] and all the ratios here then accordingly change the frequency.
[00:03:52] And we can change the resonance on multiple bandpass filters.
[00:03:55] In fact on all of them. Okay so now that we have this we have already implemented
[00:04:02] basically a multi-band delay effect. The only problem now is that to change
[00:04:08] delay timings on each of these bands here we have to go to each of these delays and change it.
[00:04:15] Which is okay.
[00:04:19] Maybe use a key limiter here at the end.
[00:04:31] So it kind of works but the interface to these delay timings here is a bit
[00:04:35] bad in my opinion. So it's not fun to play around with the delay timings.
[00:04:40] So this is why I also say that the grid needs some kind of interface stuff.
[00:04:47] Because you can build all these nice devices pretty easily
[00:04:50] but the interface is always a problem. So you have to change the delay timings of
[00:04:55] all of these devices better or more easily. I go for a step mode here.
[00:05:03] When the steps mode goes to step count is 10 because we have 10 bandpass filters here.
[00:05:11] And what I want to do is basically I want to change the delay timing with this
[00:05:15] with this interface. So I want to say here this is the first first delay.
[00:05:19] I want to change the delay timing from zero to maximum here.
[00:05:24] So I can paint in here the delay timings or delays at the same time.
[00:05:30] So the interface is better. I just draw in stuff and then I have set basically all delays differently.
[00:05:38] So how do we do this? Pretty easy actually.
[00:05:41] Oh it's not that hard. We use a value here and we disable the pre-court so it stops playing.
[00:05:48] We use this fake face input here. We can change delay
[00:05:52] or the play head inside of the pattern. And what we do is we use readout also here
[00:06:00] just to show you this what exactly happens. So here the value output some kind of value.
[00:06:06] So zero is the first bar right and then we step here to 0.1 which is the first bar.
[00:06:14] 0.2 then the third bar begins. And the way it basically works is
[00:06:21] because we have exactly 10 bars here and the value or the face value is between zero and one.
[00:06:30] You just divide one by 10 so you have 0.1, 0.2 and so on for each bar.
[00:06:37] So we use a bit of logic and say when the face signal is at zero.
[00:06:45] Let's go for constant here. You just can leave this empty here but for the sake of having it's
[00:06:55] yeah so it looks consistent. Just take your constant input. We use a sample and hold
[00:07:02] and we hold the value the output here of the mod of the mod the steps mod.
[00:07:12] So we hold this here and we go into modulator out of course.
[00:07:20] And then we duplicate this and say here the second bar is actually 0.1 and the third bar is 0.2.
[00:07:29] So when you change the value in step through this and we switch it to the second bar
[00:07:36] we only update basically the sample and hold because the value is exactly like 0.1 and then
[00:07:43] we fire out here a gate the gate holds then the value until it gets a different value and
[00:07:49] a different hold. So this way we can get these values here for different points in this pattern.
[00:07:58] Zero to three
[00:08:01] four five. You can see it's a bit cumbersome to implement this
[00:08:15] but the grid is not really made for this stuff. You can do it but it's not really optimized for
[00:08:20] this kind of stuff. It's more like for instruments you want to build on the fly
[00:08:24] and this is more like here creating a special effect.
[00:08:29] I think that's okay so far. So now we need to map this here to each delay.
[00:08:42] Yeah so this is the first one here. Second one.
[00:08:53] Just need one more.
[00:09:09] This goes to 0.99 or one but this case here just stick with 0.99.
[00:09:17] So now you can see when I skip here or scan through this step mode pattern here we update
[00:09:27] all the modulation values here. So I can draw in something different nothing happens but then I have
[00:09:33] to update here basically each value. You can see it changes. So instead of using this manual knob
[00:09:45] here and scanning through that I'm just using a clock and use a bit higher frequency maybe five
[00:09:53] or six something like this. So now I just draw in stuff and you can see everything updates here on
[00:09:58] the left side on the right side. So now everything is at zero. You can see every delay time is at
[00:10:06] zero. This is max. Everything is on max here and you can draw in whatever you want and have different
[00:10:12] delay timings. This is my go-to setup for this kind of stuff and I need better interfaces for
[00:10:21] multiple values and I just want to use my drawing abilities here to draw in different values.
[00:10:28] But it takes a lot of CPU power actually to use here multiple of these modules and
[00:10:37] virus and so on. Like I said we need something for interfaces. Okay so now we can do this. Let's see
[00:10:46] how it sounds.
[00:10:48] Let's change the root pitch here.
[00:11:04] It's almost like a granular effect in my opinion.
[00:11:16] So this is without and this is without delay.
[00:11:32] Yeah and then you can start bringing in the dry signal and you maybe can introduce your
[00:11:40] convolution reverb in the pre-fx box. So before you go into these bandpass filters here.
[00:11:47] This could be a nice idea to actually modulate this. Let's use a macro here.
[00:12:15] Let's say 64 68.
[00:12:18] Let's go for 64. Let me do a step mode here.
[00:12:28] Step mode gets randomized values and then we change the root pitch here.
[00:12:34] Maybe a bit faster. Then we can hit play.
[00:13:06] So yeah it's actually not that hard to implement. It's just a bit of setup like I showed you here.
[00:13:12] You can also use multiple of these then and say
[00:13:18] maybe in parallel or on serial. So just duplicate this here and then you
[00:13:27] start in a bit of different pitch setting here. Then you combine this and that.
[00:13:33] What you also can do is to pitch quantize here the inputs. Then just use
[00:14:00] pitch quantize module here and then dial in your specific notes you want to allow for certain
[00:14:08] bandpass filters. You have to do this sadly for all these bandpass filters. So you have to use
[00:14:14] one pitch quantize here right here and so on. But that's how it is. At least it's possible to do.
[00:14:23] So you can then have a more like musical fitting context for all these partials.
[00:14:30] I don't know if it makes sense but you can try it out. I just want to give you some inspiration
[00:14:39] here what you can try out with this. Yeah so this is basically my idea for a multi-band delay
[00:14:48] with a nice interface for the delay timings. You can also duplicate this here and maybe introduce
[00:14:55] a pan knob here for each partial and then say here this one's with right this one's left and so on.
[00:15:05] So you do the same interface here again just for these pan knobs and then you can also change
[00:15:11] basically the panning for each partial separately with this drawing knob here drawing a step mode.
[00:15:18] Yeah get some different results or nice effects on that right. I think that's it for this video.
[00:15:25] I put the patch into the description below. It's completely free, downloaded, have some fun and
[00:15:32] maybe you'll learn something new. If you like the video leave a like. Thanks for watching see you
[00:15:36] next time. Bye.