While seeing people making 4 operators FM and posting different algorithms separately while back.
I was thinking: Is it possible to make a FM module which has an ability to let user to define their own algorithms, to make some complex sound design or provide an easy way to explore FM synthesis?
Yes, there are a few ways! However, I found that using the modulator do have a problem, which the modulation result of a lower octave sounds too gentle, while too harsh on the higher octaves. On the other hand, using Generators with FM input will giving the total opposite result, harsh on low end, but too soft for the high end, making some sound design not consistent.
And here it is, introducing the OP(Operator) Blocks, which was used for the bass of the Compo Entry! OP Block doesn't sound OP on its own unless you chain them. It has a major features, which regulates the loudness of the modulation signal by pitch, making the modulation level of different octave being more even. (Loud volume alert)
Thanks to the delay now have an ability to passing midi note, you can now define your own FM algorithm by linking multiple of them, to making some classic FM sounds (Ah yes, a horrible version of the game ranger x/ Ex ranza theme). Not only to the op blocks itself, but you can also be creative by linking some LFO to do some wobble bass where the op block can reset the phase of the LFO, or you can change the waveform to do a very consistent Sync Effect, or you can even put some 2nd order karplus-strong to modulate the signal of the OP Blocks.
Then here is the module:
https://warmplace.ru/forum/viewtopic.php?p=23112#p23112
There are some limitations for this module [Updated]:
1. It is confirmed that the modulator inside the OP Block might produce unpleasant noise by chaining multiple of them. There are 2 work arounds to solve the issue:
- Set the "Source - Operator Mode Ratio" to 0 to Skip the main modulator when an OP Block is in source mode
- Use the "Key Tracking Filter" I have created earlier (https://warmplace.ru/forum/viewtopic.php?f=11&t=5721)
2. Missing "Draw Spline" which is used for the song Mech Haven
- OP Block Interface, the FMX based version, have such waveform recorded inside the custom waveform.
3. The module is monophonic
- You have to use multiple instance of it. You may define an algorithm first the use the "Make MetaModule" options, and copy that MetaModule.
MECΗ HΛVEΠ: Behind the sense 0002 - OP Blocks [FMX update]
- Logickin λ
- Posts: 169
- Joined: Sat Sep 08, 2018 8:31 pm
- Contact:
MECΗ HΛVEΠ: Behind the sense 0002 - OP Blocks [FMX update]
Last edited by Logickin λ on Sat Sep 02, 2023 7:11 pm, edited 5 times in total.
- AutumnCheney
- Posts: 504
- Joined: Sun Dec 29, 2019 8:16 am
- Location: tahlequah, ok, usa
- Contact:
Re: MECΗ HΛVEΠ: Behind the sense 0002 - OP Blocks
amazing! this is a truly modular approach to fm that modules like mine fail to implement
i modified your synth a little by changing the generator to an analog generator - i think this works better, and it allows for more waveforms
i modified your synth a little by changing the generator to an analog generator - i think this works better, and it allows for more waveforms
- Attachments
-
- Logickin OP Block.sunsynth
- (25.37 KiB) Downloaded 216 times
- Logickin λ
- Posts: 169
- Joined: Sat Sep 08, 2018 8:31 pm
- Contact:
Re: MECΗ HΛVEΠ: Behind the sense 0002 - OP Blocks
There was a reason to not use the analog generator, since analog generator has a relative low cutoff frequency for the anti-alising filter which start attenuating in volume on higher pitch from around A6. The attenuation is not a bad thing initially, but it makes the modulation result less consistent. As a result, standard generator is used.
Perhaps I will update this module in the future with a bit optimization before release to the SunVox Synth Post.
I will include A type(Analogue generator) and D type(Standard generator) as well, so you can choose either using the extra filter noise from analog generator or using that unique duty cycle sine wave from the original generator.
Perhaps I will update this module in the future with a bit optimization before release to the SunVox Synth Post.
I will include A type(Analogue generator) and D type(Standard generator) as well, so you can choose either using the extra filter noise from analog generator or using that unique duty cycle sine wave from the original generator.
Re: MECΗ HΛVEΠ: Behind the sense 0002 - OP Blocks
Amazing Job, I will experiment with this block soooo much!
You can download my exclusive Sunvox-Metamodules here: https://label.weddinger-schule.de/category/tools/
- Logickin λ
- Posts: 169
- Joined: Sat Sep 08, 2018 8:31 pm
- Contact:
Re: MECΗ HΛVEΠ: Behind the sense 0002 - OP Blocks [v2.0.0 Update]
There is a big update for OP Blocks!
- Reworked architecture, with less unnecessary parts.
- Source mode and operator is replaced by a parameter, Source - Operator Mode Ratio.
(0 = source mode -> something in between -> 32768 = Operator Mode)
- Bypass modulation intensity regulator
- Now OP Block type A is back!
- Reworked architecture, with less unnecessary parts.
- Source mode and operator is replaced by a parameter, Source - Operator Mode Ratio.
(0 = source mode -> something in between -> 32768 = Operator Mode)
- Bypass modulation intensity regulator
- Now OP Block type A is back!
- Attachments
-
- Logickin OP Block Type D v2.0.0.sunsynth
- (21.99 KiB) Downloaded 227 times
-
- Logickin OP Block Type A v2.0.0.sunsynth
- (22.22 KiB) Downloaded 220 times
- Logickin λ
- Posts: 169
- Joined: Sat Sep 08, 2018 8:31 pm
- Contact:
Re: MECΗ HΛVEΠ: Behind the sense 0002 - OP Blocks [v2.0.0 Update]
Now this module has its own page! Get the latest, FMX based version! I have been using this version for awhile, it is more stable and much smaller in size!
https://logickin.net/modules/op-block/
https://logickin.net/modules/op-block/
- AutumnCheney
- Posts: 504
- Joined: Sun Dec 29, 2019 8:16 am
- Location: tahlequah, ok, usa
- Contact:
Re: MECΗ HΛVEΠ: Behind the sense 0002 - OP Blocks [FMX update]
it just occurred to me: this is awesome, but it'd be even better if you could add some implementation of this: https://warmplace.ru/forum/viewtopic.php?p=22452#p22452
it would make sense since operators are being handled low-level with this module, so a way to easily add custom waveforms would be relevant to add
it would make sense since operators are being handled low-level with this module, so a way to easily add custom waveforms would be relevant to add
- Logickin λ
- Posts: 169
- Joined: Sat Sep 08, 2018 8:31 pm
- Contact:
Re: MECΗ HΛVEΠ: Behind the sense 0002 - OP Blocks [FMX update]
Sure! Considering I also want to make some updates to the module for extra functionalities.AutumnCheney wrote: ↑Sun Sep 17, 2023 1:43 am it just occurred to me: this is awesome, but it'd be even better if you could add some implementation of this: https://warmplace.ru/forum/viewtopic.php?p=22452#p22452
it would make sense since operators are being handled low-level with this module, so a way to easily add custom waveforms would be relevant to add
Thanks for your example about loading custom waveform! This not only help me to improve the OP-block, but it also solves one of the problems for my upcoming project which requires a perfect FMX sample!