Old 09-29-2008, 03:07 AM   #1
liteon
Human being with feelings
 
liteon's Avatar
 
Join Date: Apr 2008
Posts: 510
Default JS LOSER: StereoEnchancer question.

Hi fellas ,

I find the stereoEnchancer plugin very useful for removing stereo material from the bottom end, however there is something that can make the plugin even better.
Did some tests yesterday with it and I think it will be a cool thing to add another slider controlling the slope around the crossover freq. So basically this control will be able to make the slope more or less steeper.

I have a lot of experience with programming but there are some lines in here (generally involving math lol) that I can't really understand.



The bottom two diagrams shows what I mean spectrum wise.

Does anyone have any idea what to change in the code?
BTW implementing the stereo image (EQ) feature in FIR would be awesome too

Cheers
Liteon
liteon is offline   Reply With Quote
Old 10-10-2008, 03:40 AM   #2
LOSER
Human being with feelings
 
Join Date: May 2006
Posts: 2,373
Default

Quote:
Originally Posted by liteon View Post
Does anyone have any idea what to change in the code?
Yep, replace this...
Code:
spl0 = (tmpl = a0*spl0 - b1*tmpl + cDenorm);
spl1 = (tmpr = a0*spl1 - b1*tmpr + cDenorm);
...with your own low-pass code. So spl0 and spl1 hold a lowpassed signal.

Anyway what I want to say is, it isn't as easy as changing that one line you marked, that's only the cut off frequency, but the steepness of a 1st order RC filter will always be 6db/oct. So change you need to change the filter entirely.
LOSER is offline   Reply With Quote
Old 10-13-2008, 03:29 PM   #3
Mercado_Negro
Moderator
 
Mercado_Negro's Avatar
 
Join Date: Aug 2007
Location: Caracas, Venezuela
Posts: 8,676
Default

If you accomplish that please share it... it would be nice to see this improvement on that amazing JS
__________________
Pressure is what turns coal into diamonds - Michael a.k.a. Runaway
Mercado_Negro is offline   Reply With Quote
Old 10-14-2008, 01:39 PM   #4
liteon
Human being with feelings
 
liteon's Avatar
 
Join Date: Apr 2008
Posts: 510
Default

Quote:
Originally Posted by LOSER View Post
Yep, replace this...
Code:
spl0 = (tmpl = a0*spl0 - b1*tmpl + cDenorm);
spl1 = (tmpr = a0*spl1 - b1*tmpr + cDenorm);
...with your own low-pass code. So spl0 and spl1 hold a lowpassed signal.

Anyway what I want to say is, it isn't as easy as changing that one line you marked, that's only the cut off frequency, but the steepness of a 1st order RC filter will always be 6db/oct. So change you need to change the filter entirely.
Thanks for the reply man.
The "first order RC filter" makes sense to me (sort of ) but it seems I can't do better than that. Here's what I've managed to do so far. Basically its not a much better filter than the one you've originally implemented with the "StereoEnhancer". I've tried to add some other algorithms but I really get kinda lost in all the math so I've copied the filters/lowpass formula and adapted it for the stereo enhancer. But this way - while making the slope more steeper its also adding resonance at the selected frequency.

[IMG]http://img369.**************/img369/2418/lpdc0.jpg[/IMG]

I'm looking for a 24db LP filter formula with adjustable slope and not much resonance.
Took a look at sstillwell HP/LP (based on RBJ Filter Cookbook) but the filters were still 6db imho.

Will continue to try to match Nugen's Monofilter
If someone has a filter algorithm ready for JS (b2b knowledge) please post some advices in here.

Cheers
Liteon
Attached Files
File Type: txt stereoEnhancer_LP.txt (1.9 KB, 248 views)

Last edited by liteon; 10-14-2008 at 01:48 PM.
liteon is offline   Reply With Quote
Old 10-14-2008, 02:10 PM   #5
LOSER
Human being with feelings
 
Join Date: May 2006
Posts: 2,373
Default

Quote:
Originally Posted by liteon View Post
Took a look at sstillwell HP/LP (based on RBJ Filter Cookbook) but the filters were still 6db imho.
RBJ filters are so called biquads, or 2 pole, 2 zero 2nd-order linear IIR filter, which is 12dB/oct.

For a 24dB/oct roll-off you need a 4th-order filter, something like butterworth (no resonance, no ripple).
LOSER is offline   Reply With Quote
Old 10-15-2008, 08:52 AM   #6
liteon
Human being with feelings
 
liteon's Avatar
 
Join Date: Apr 2008
Posts: 510
Default

Quote:
Originally Posted by LOSER View Post
RBJ filters are so called biquads, or 2 pole, 2 zero 2nd-order linear IIR filter, which is 12dB/oct.

For a 24dB/oct roll-off you need a 4th-order filter, something like butterworth (no resonance, no ripple).
Thanks for the reply. Started to get my head around some filter algorithms and the JS syntax.

"Ported" a Moog filter into JS today here is a link.
http://forum.cockos.com/showthread.p...715#post243715

But again when - HPing the signal (case low end of the stereoEnchancer) plugin I get a very large slope.

Will try working on another filter for the stereoEnchancer + improving the Moog.

Liteon

Last edited by liteon; 10-15-2008 at 08:35 PM.
liteon is offline   Reply With Quote
Reply

Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump


All times are GMT -7. The time now is 04:06 AM.


Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2024, vBulletin Solutions Inc.