From the original SynthMaker forum (2004–2014), with its members’ names and dates.
acg2010 ·
After seeing the vst plugin effect by Arctican called the "Pilgram", I thought I would try and create a similar effect in SynthMaker. I like the Pilgram's simplicity with just one knob controlling the filter. It is a combination low pass - high pass filter with a dry/wet mix knob.
My first version had just static values for the resonance of the low and high pass filters, but on the high pass setting, the volume drop was substantial. I made it such that the resonance increases as the filter cutoff increases. However, sound output on the high pass filter setting was still low. Therefore I added a VCA, however, this lead to amplifying the low pass filter setting when not needed. Also, due to the dry/wet knob, sound was amplifyed even when the effect was turned off (by-passed). I finally had to go with a series of selectors and switch logic to make everything work out right. My version has a by-pass switch, LED "On" indicator, and label changes as knob settings are moved through. The schematic is a bit of a mess (did not make sub-modules, or spread modules out). The knobs are from someone here on the forum but I do not recall at the moment who.
If you have some suggestions for improvement and maybe how to compensate for the sound level drop on the high pass filter setting, I would appreciate hearing from you. 🙂 A pic and the osm are below.
infuzion ·
Auto-gain? That is the nature of filters; you tend to cut out sound.
Nice knobs BTW, make them yourself?
cyto ·
After a cursory glance over the schematic, here are a couple ideas to improve this:
I notice this is a mono effect, but there are some stereo modules in there. You don't need to use both "sides" of them: just use either the left or the right I/Os. This'll cut down on some processing.
The "denormal removers" are set in "noise" mode. This is fine. But you'll need to put them in front of the filters to get the benefit. In fact, I'd recommend just putting one at the very beginning of the schematic (right after the IN) and you'll be set. No need to use three. Again, you'll cut your processing requirements significantly.
If you're real adventurous 🙂 , you can move the coefficient calculations for the filters outside of the code boxes. In static filters like these, no need to waste precious CPU cycles on calculating them every sample. (search the forum for RBJ filter coeffs in "green" or do a google search for "biquad filter cookbook" to find the musicdsp.org paper).
One last thing. I notice you knob returns "normalized" values for the filter cutoffs. That will make the filters sound different at different sample rates. The "HZ to 0-1" module is your friend here.
The switching logic is very cool! I've always liked "minimal" designs. In fact, one of my goals in SM is to create a "one-knob" synth. To pull that off with and still be able to offer the flexibility and expressiveness of the semi-modular behemoths that people churn out around here I think would be quite a rewarding challenge. (but I digress)
-cyto
acg2010 ·
Thanks cyto and infuzion for the suggestions. I will try them out. I did not make the knobs, they are from a forum posting, I can't remember who.
-Ph D(J) acg2010
infuzion ·
acg2010 wrote: Thanks cyto and infuzion for the suggestions. I will try them out. I did not make the knobs, they are from a forum posting, I can't remember who.
Welcome!
When I download OSMs, samples, etc, I either put them in a folder with the user's/website name, or put that info in the filename at the end.
acg2010 ·
Thanks infuzion. Excellent suggestion to keep osm files and GUI parts organized and easy to trace to creator/developer. Unfortunately, I did not do that for this knob. I was originally going to try and create a steam punk look to the LoHi Filter GUI and had spent a lot of time trying to create a knob in Knobman, but my graphics skills are not the best. I finally resorted to finding one from someone else.
I will try and track it down and post who so they receive credit.
-Ph D(J) acg2010
acg2010 ·
Infuzion - if you are still interested, to the best of my knowledge, it looks like Hlis93 is the creator of the knob that I used in the Lo Hi Filter. It took me a long time to tract it down. First, I found the knob file I used as a recent file in Knobman. It was a T2b knob. There I searched the internet (KVRaudio and elsewhere) with no luck, then went thru all my files till I found it. It was part of a file called " Knobman examples part 3.zip" and the T2B knob was in knobman format, not osm. I then went back and searched thru all the graphic forum files till I found a posting by Hlis93 here: Knobman control by BASE designs
The interesting thing is that the posting there is an osm, not a knobman file and I had actually previously tried to contact Hlis93 both on this forum and on the KVRaudio forum to ask permission to use one of his other vintage knobs, however, he never responded and it looks like he has removed all his postings at KVR as well.
Sorry to bore you with this long story, but shows the effort I went to and the lesson I learned to make sure and doument the source of the material in the future.
Hlis93 - if you are still around and do not wish to let me use the knob, let me know and I will remove it - Thanks.
-Ph D(J) acg2010
infuzion ·
That's cool you took the time & effort in trying to contact the author!
attic ·
The logic in it is cool. One thing I noticed is passing that halfway point can be pretty jarring maybe you could smooth that.
acg2010 ·
Using cyto's and infuzion's suggestions, I changed the location of the denormal module and number to just one, changed all stereo connections to just mono. I also added de-zippers to the cutoff of each of the filters. Then following attic's suggestion, I added Shifrin's SelSmooth module to all selector connections in an attempt to remove or at least decrease the distortion/pop when changing the filter knob at the top from low to high pass. It seems to have helped, at least as tested in SynthMaker. I will try it out in my DAW (Sony Music Studio 7) and see if it helps.
Here is version 2
Thanks cyto, infuzion, and attic for your suggestions and help.
-Ph D(J) acg2010 🙂
infuzion ·
acg2010 wrote: Using cyto's and infuzion's suggestions, I changed the location of the denormal module and number to just one, changed all stereo connections to just mono.
I don't remember giving your audio suggestions in this thread, but I will now! Perhaps you are prophetic?
1) Should be Pack4-stereo. A VSTe is usually inserted in a stereo track. If you are placing this inside a synth, then often (not always) the synth's signal is mono until stereo delay/reverb.
2) Messy to read fully, but IMHO you should have only 1 audio-Selector for the on-off.
3) Denormal Removers are usually for inside a filter or reverb/echo (anything with feedback). You are only cutting off the almost-quiet sound from the input, useful sometimes but not here. SM's Denormal Remover is also inefficient.
Any more advice at once I'll have to charge you for 😉 😇
acg2010 ·
infuzion wrote: Auto-gain? That is the nature of filters; you tend to cut out sound.
Nice knobs BTW, make them yourself?
Infuzion, I took your comment as a suggestion to try and add autogain, that's why Imentioned you. Haven't accomplished that though. Thanks for the additional suggestions as well. Do you take IOUs for additional advice? 😀 Just kidding, I really appreciate your help. I will continue to work on this project and post updates.
Thanks,
-Ph D(J) acg2010
acg2010 ·
Here is version 3 of the LoHi Filter configured for stereo and simplified and with modules cleaned up some. I also have a mp3 of a Katy Perry acappella with first no filter effect, then highpass, then lowpass done in Sony Music Studio 7. Volume on high and low pass was manually increased. I think the Dry/Wet knob and settings needs some adjustment/changes because only a slight change of the knob setting from full Wet to Wet/Dry mixes in much more of the Dry signal than I think It should.
Ph D(J) acg2010
acg2010 ·
Here is my final version of the Lo Hi Filter. Changed Filter Knob math so highest cut off value for Low pass filter is at lowest knob setting, thus making the transition from low to high, a little smoother. Added denormals after filters and a stereo clip module at signal out (not really sure I need this, can't tell if it makes a difference or not). Also tried to attenuate the dry/wet knob so less of the dry is present until closer to the 50% range on the mix knob. When you hook up a mono readout module to various locations in the schematic, you observe rapidly changing small numbers and some negative even when not connected to anything. Have not been able to increase the volume/amplitude of the highpass filter to compensate.
-Ph D(J) acg2010
Mo ·
Hi acg2010,
It seems you connect mono directly to poly which is no good. Also old de-zippers, added noise that is not removed and lot unnecessary switch and multiplexers. I don't even detect denormals so why try to remove it?
Here's a fixed rebuild example using 90% less CPU:
attic ·
Also old de-zippers, added noise
Are there new de-zippers? Could someone add something to this comment and help me fill in the knowledge gap?
Thanks
Mo ·
attic wrote: Could someone add something to this comment and help me fill in the knowledge gap?
Before the real de-zip primitive there was a de-zip module. Looks like this:
acg2010 ·
Thank you Mo, your version is better and much more simplified. Use of Pack4-stereo was also suggested by infuzion as well. Don't shoot me for saying so but I am using SynthMaker CM 😉 and so can't code or use more recent modules (SynthMaker CM limitations). I do have the most recent demo version of SynthMaker on a separate computer so I can look at newer modules and examples and see how they are put together and when there are no code modules, I try and rebuild it in SynthMaker CM. Also I am still learning how things go together in SynthMaker.
Again, thank you for your optimized version.
-Ph D(J) acg2010
acg2010 ·
Mo - after looking over your optimized version in SynthMaker ver 2.0.5, I tried hooking up a simple vsti. However, when switching between the highpass setting and the lowpass setting, there is a pop and the no sound comes out. To reset, I have to disconnect the DS out and reconnect. I don't see any problem with the module connections and the only other change is the use of stream in coded RBJ High/low pass filters. Maybe something left out in your optimized version?
acg2010 ·
Mo - not sure if this has anything to do with the issue I am experiencing but when the filter knob is at lowest setting (i.e. furthest left), the highpass filter receives a negative value to the Res input. Likewise, when the Filter knob is at the highest setting (furthest right) both the lowpass filter cutoff and res are receiving negative values. Maybe just a math thing.
acg2010 ·
I put back in the multiplexer I had after the filter knob in the original schematic and that seems to have fixed the problem by switching the lowpass/highpass before they receive negative values. Probably could be corrected in the math. Here is the revised osm:
Mo ·
Yep, i did not test it before posting. 😊
Now i tested it, the math seems wrong also in your last post. I fixed it but when switching between two filters it seems difficult to make a smooth transition. I tried make the transition as smooth as possible but maybe it would be better to build it like the frequency splitter.
However here's the fix:
attic ·
Before the real de-zip primitive there was a de-zip module. Looks like this:
Mo Thank You! I was using the old de-zip module and had clicks. I didn't realize there was a primitive or the difference. The clicks seem to be much less with the swap. 🙂
Mo ·
attic wrote: I was using the old de-zip module and had clicks. I didn't realize there was a primitive or the difference. The clicks seem to be much less with the swap.
Yep, the old de-zippers are not working well in newer SM and also more cpu consumption.
infuzion ·
Mo wrote:
attic wrote: I was using the old de-zip module and had clicks. I didn't realize there was a primitive or the difference. The clicks seem to be much less with the swap.
Yep, the old de-zippers are not working well in newer SM and also more cpu consumption.
+ they have issues in some hosts (Cubase IIRC)
acg2010 ·
Thanks Mo, I learned a lot from studying your revisions to my filter.
Ph D(J) acg2010
Wrote something here? To have a post removed or your name hidden, write to [email protected].