An exciting Dynamic Peaking EQ filter schematic in Flowstone

DSP, Plug-in and Host development discussion.
User avatar
KVRian
940 posts since 7 Apr, 2019 from Canada

Post Thu Oct 21, 2021 6:38 pm

Flowstone's nice for jotting down DSP ideas. I thought this idea was worthy of sharing. Here's the dl:
https://dspplug.com/?download=1&kccpid= ... mark11.fsm
---
mark11.jpg
Zoom In

Here's the explanation and demo:
https://youtu.be/iSGHJ0u5MSc
You do not have the required permissions to view the files attached to this post.
Last edited by kingozrecords on Sun Oct 24, 2021 9:56 am, edited 3 times in total.
DSPplug Products https://www.kvraudio.com/marketplace/dspplug
DSPplug Linktree https://linktr.ee/dspplug
Voiceover, Design, Ghost Production, Ghost Writing services.

User avatar
KVRian

Topic Starter

940 posts since 7 Apr, 2019 from Canada

Post Fri Oct 22, 2021 8:54 am

Updated to a version with a good, solid compression and expansion ratio. i derive the factor for the dynamic by adding and subtracting a base 10 dbfs and then I divide by the threshold to decide the dynamic gain or subtraction.

The ratio is now behaving like you'd expect and even without crossover this filter is now much like any filter of the like with crossover. A bit of a trick and I'm glad I became to understand the idea.

Later today I will replace this version with a filter that has optimized math, so that the code need not process any math, also I avoid any division beyond that of 1 divided by. This way a multiplier can be relied upon and the asm can operate with less latency.

I'll make sure in the final to have replaced the code with asm also (with the original provided for reference). Here's a visual example of the unfinished with any trig done in float math and provided to the filter.

Edit: 24/10/2021 - Updated to final which has GR out.

Edit: 26/10/2021 - Here's what I'm making with this new filter (the mockup of the graph line is dodgy but suffices):
Titan.jpg
Zoom In

But there's a lot involved, by merely looking at the meter to the right, you realize that there's a lot involved. It will have all of the bells and whistles and I will provide all of the code and the flowstone schematic with which I create an interface.

I was testing code by a skilled developer and mathematician, Martin Vicanek. I've been optimizing and looking into making an intersample peak detection algorithm so that it can support more sample rates than merely 44100. My guess is that the lowpass might deviate by about 150 - 300 hz because I'm not employing a logarithm; but it may be sound.
updated true peak.jpg
Zoom In

Download ASM optimized: https://dspplug.com/?download=1&kccpid= ... imized.fsm

In flowstone there are objects known as primitives, sometimes that provide a means to interact, like with a mouse or a mousewheel. In the example I will provide, the only primitives used will be the mousexy for the eq bells because they've proven more reliable. There will be only one instance of ruby and I shall not rely on vectors to create the slider knobs or eq bells because I can use one image to for the three instances accordingly.

With that said, I've found it hard to avoid the C6 methodology because it's straightforward. I guess I can just mention that it's a careful re-creation and re-definition of capability (expecially being that the peaking filter dynamic is less pervasive than that affecting a portion of crossover). Besides which I'm releasing the entire code base open source albeit.

Edit: 27/10/2021 7:10pm

Edited the fsm and added the function to finitely ensure that the frequency response is accurate. The code works in a way I have not seen before, something foreign of most methods concerning sample rate and logarithm, almost like it is linear; which I suppose is possible.

At any rate, accurate enough now; though maybe in time I may find a more efficient means to do the same.
You do not have the required permissions to view the files attached to this post.
DSPplug Products https://www.kvraudio.com/marketplace/dspplug
DSPplug Linktree https://linktr.ee/dspplug
Voiceover, Design, Ghost Production, Ghost Writing services.

User avatar
KVRian

Topic Starter

940 posts since 7 Apr, 2019 from Canada

Post Wed Oct 27, 2021 6:12 pm

https://youtu.be/giM7HF16G58

Updated the true peak detector, here's the results.

Edit 28/10/2021 1:46pm Reduced fsm filesize by 50%, reduced DSP cpu usage by 1% (Using roughly 1.3% on a 4ghz 8 core amd processor - without graphing and visuals).
DSPplug Products https://www.kvraudio.com/marketplace/dspplug
DSPplug Linktree https://linktr.ee/dspplug
Voiceover, Design, Ghost Production, Ghost Writing services.

Return to “DSP and Plug-in Development”