PDA

View Full Version : For rubberfilter users



gdougherty
08-20-2009, 05:48 PM
Christian Budde (one of the codevelopers of Rubberfilter) and I have been working on a related plugin with Linkwitz-Riley filters instead of Butterworth filters. Really, I've been giving input and specs and he's been developing it. I have yet to pass audio through the latest iteration because I'm without an interface to do so at the moment, but the interface looks very usable and it eliminates the need to cascade Rubberfilter instances. He has some optimizations to complete and some phase issues to correct that are inherent to odd order L-R filters as I understand it. As is, it should work perfectly with a 48db/octave slope.

I'm footing the small bill for the work and he'll make the result available for free on his website.

Very talented developer, and I've had some informative discussions with him around all this.

He's off for the weekend and may have things completed by early next week. I'll post once things are publicly available.

Jeff Scott
08-20-2009, 05:58 PM
I'll be selling off my Driverack 260 if this keeps up (lol). Thanks for your efforts...

Wink0r
08-20-2009, 05:59 PM
Thanks for the information and the contribution!

gdougherty
08-20-2009, 08:02 PM
I'll be selling off my Driverack 260 if this keeps up (lol). Thanks for your efforts...

Welcome. Depending on your setup you might want to keep the Driverack handy. I've cut mine back to two configurations and still need the DCX2496 for one of them since my snake only has 4 returns. I've been thinking about selling the 16x4 and picking up a 24x8 so I can run everything off SAC on the laptop and the rackmount setup. Laptop has no networking when it's the host, so I still need a snake. Need to find a better laptop...

gdougherty
08-20-2009, 08:16 PM
Okay, this is not final, not optimized, not recommended for live use. Feel free to check it out and give feedback on the UI or functionality. At this point it meets my goals of elminating the need for dual Rubberfilter plugins and allows for the three major crossover filter types. I don't think there will be any major changes unless you want to contribute to the cost of development.
While you see both terms in places, I personally prefer the "cut" terminology used here over the "pass" terminology used elsewhere.
http://cid-2b3910b45e4d2b22.skydrive.live.com/browse.aspx/.Public/Audio/Plugins
Edit: fixed link. Download the 7z file, you'll need the 7zip utility.

Brent Evans
08-20-2009, 08:31 PM
Bad link.

Edit:
N/M. Clicked around a bit and found the files, but that link doesn't go straight to them. Also, the direct download for the DLL is broken, the 7z file works fine.

Brent Evans
08-20-2009, 08:46 PM
Looks nice and clean, apparently low CPU usage (didn't really test it much, will do that tomorrow).

Only beef I have with the interface is the same thing I don't like about RF, you can't zero in on a frequency. A type-in frequency box would be nice, but other than that, tis' bien.

JHaskill
08-20-2009, 09:21 PM
Hey thanks for the help with this.

Agree with Brent on this....I really would love to have the ability to simply type in a freq, instead of trying to spin the dial perfectly. Not a huge deal but seems like it would be pretty easy to allow this.

Thanks again.

gdougherty
08-20-2009, 10:36 PM
Bad link.

Edit:
N/M. Clicked around a bit and found the files, but that link doesn't go straight to them. Also, the direct download for the DLL is broken, the 7z file works fine.

Yeah, I put the dll up, then discovered Skydrive won't let you download a dll. I deleted it off skydrive through a local utility, but for some reason it still shows on the website.

gdougherty
08-20-2009, 11:21 PM
Wow, digging into LR crossovers and starting to understand the phase issues. I'm almost at the point where I'd just tell him to set 8th order or 48db/octave slopes as a fixed parameter.

Rane has a primer on Linkwitz-Riley crossover networks that's quite informative. http://www.rane.com/note160.html
Each order adds plus and minus 45 degrees of phase shift on either side of the crossver point. For some, like the 1st order, the result is no phase shift and everything in phase with the original signal. For others, like the 2nd order, you need to shift the phase 180 degrees on one side in order to sum correctly without severe cancellations. The 4th order ends up in phase on either side, but 180 degrees out of phase with the original signal. The 8th order behaves properly with 360 degrees of phase shift and everything as it should be.

A multi-output crossover plugin can solve this by maintaining proper phase relationships between all the outputs it controls and knows about. The plugin here doesn't know how the other side of the crossover network is set, so you can really screw things up with the wrong assumptions. Thankfully, my preference for 48db/oct filters has kept me out of trouble with Rubberfilter.

One solution, which I already know isn't a possibility, is to redevelop the plugin as SAC native so multiple instances are aware of each other within SAC and each instance then defines itself as the apropriate frequency band. The proper phase corrections can then be made based on the combined network. Christian's code for the filter processing is supposedly open source, so a particularly ambitious developer could tackle that if they wanted. That person isn't me.

The easiest solution, if selectable slopes are left intact, is to leave it up to the user by providing a phase shift toggle. This allows manual correction of crossover networks like the 2nd order. The manual can mention when phase correction is necessary and it's all resolved. If you didn't RTM and know that your 12db/oct slope is causing problems, that's your fault.

I personally use and recommend the 8th order filters so I'd be perfectly happy with cutting the list of available slopes down to only those that behave properly without correction. That leaves 1st order, maybe 4th order, perhaps another few somewhere in there, and 8th order. Above 8th order slopes aren't typically recommended due to increasing issues with group delay so those could be dropped as well.

Another thought I had was to assume a corresponding matching crossover on the other side, and always correct the same side of the network. As an example, the low cut side could always reverse and the high cut side could always remain as-is. If a user choses to use a 2nd order on the low cut and a 4th order on the corresponding high cut, you'll have things screwed up. Of course, no matter what, you'd have things screwed up since the phase response of both filters would never sum properly.

Any thoughts?

gdougherty
08-20-2009, 11:28 PM
Hey thanks for the help with this.

Agree with Brent on this....I really would love to have the ability to simply type in a freq, instead of trying to spin the dial perfectly. Not a huge deal but seems like it would be pretty easy to allow this.

Thanks again.

Me too. I think direct input (or selection lists like Bob uses on EQ's) would be really handy. The only thing I've seen developers grip about (Bob is one of them) is that with direct input you need validation code on the UI to ensure that only valid numbers are entered or that invalid numbers are ignored. Direct user input also opens things up to bugs if you neglected to consider something particularly dumb that a user might do. I'd thought about requesting it snap to nearest even values of 10Hz. Does that sound usable? I tend to increment by 10Hz anyway in the lower frequencies.

JHaskill
08-21-2009, 07:12 AM
10Hz would be fine for me, or maybe 5. Also wouldn't mind if it was a tad larger UI. Going blind in my old age...

I must have bad motor skills too or a mouse with bad precision as it takes me way to much time to dial that sucker in now. :)

Really looking forward to using this plug. Of course I am sure Bob will have this built in at some point. Maybe Bob and this developer can hook up and introduce the code :D

Thanks again for your help on this. Greatly appreciated!

Brent Evans
08-21-2009, 07:54 AM
10hz snaps would be great, with a selection box.

As far as eliminating filters that don't work, it might be OK, or relegate them to an advanced mode with a warning.

Trackzilla
08-21-2009, 07:45 PM
Very nice. I won't get a chance to test in the real world til next weekend as I'm doing a salvo of house gigs this next week, but I am a fan of Christian's other work & use Rubberfilter currently. Thanks for taking upon yourself to bring this to the community.

gdougherty
08-21-2009, 09:10 PM
Okay, so I'll request snapping to nearest 10Hz on the frequency knob and suggest leaving the phase correction up to the user. I'll be writing the manual (it'll be a small verbose novella I'm sure) and I'll just recommend the use of 48db/octave slopes for the tightest integration and best phase behaviour.

gdougherty
08-21-2009, 09:11 PM
Very nice. I won't get a chance to test in the real world til next weekend as I'm doing a salvo of house gigs this next week, but I am a fan of Christian's other work & use Rubberfilter currently. Thanks for taking upon yourself to bring this to the community.


Very welcome. I'm a fan as well after using Rubberfilter and the Electri-Q. I'm also toying with the lightweight limiter and a few other plugs to have an efficient output limiter.

Also, not really recommended for real world use yet. I don't know, it may be stable, but this is just a quick Alpha at the moment.

Bob L
08-21-2009, 10:07 PM
You might want to try my Levelizer for one of the most efficient and smooth sounding audio limiter options... just use the Compressor set at inf ratio... adjust the attack for a natural transient response while still clamping down hard on the output....

Bob L

gdougherty
08-21-2009, 10:32 PM
You might want to try my Levelizer for one of the most efficient and smooth sounding audio limiter options... just use the Compressor set at inf ratio... adjust the attack for a natural transient response while still clamping down hard on the output....

Bob L

I'll have to compare it for CPU load and sound quality. The biggest deal for me is the price tag. I'd be more inclined to pick them up at half price or in a heavily discounted collection but realistically, the combined cost is intimidating at the moment.

Bob L
08-22-2009, 01:35 AM
What... $100 is intimidating?

Am I missing something?

Bob L

gdougherty
08-22-2009, 07:41 AM
What... $100 is intimidating?

Am I missing something?

Bob L

Yeah, the budget where just a hundred or two a month covers fuel, vehicle maintenance and new equipment. Without the sale of a mixer for $2k, which was a free gift in the first place, I wouldn't be running SAC. Yes, the cost in comparrison to a piece of hardware is nothing, especially considering the ability to have multiple instances. However one of the big bonuses for me was all the free vst plugins. I'm compensating Christian just a hair over free and spending most of my leftover budget for the month doing it. There isn't anything free that really takes care of it so it seems worthwhile. I'd love to have a casino sized budget, but mine is just a pauper sized budget. What I do get is all from small donations and a handful of paid gigs during the year. I could work more, but my stated mission is to support Christian ministry at no cost and I've learned over the years to keep the schedule open for last minute requests. It's not good to cancel on paid gigs so I can do what I'm supposed to be doing in the first place. I have a lot of fun and work with great people which is plenty of compensation for me.

gdougherty
09-02-2009, 10:38 AM
I'll be "compensating" Christian Budde with $20 for these major changes to his Linkwitz-Riley filter. He's put about 100 euro's worth of effort into the plugin so far. I told him as a thank you for the effort I'd solicit other "thank you" contributions for this useful plugin. Please indicate your support specifically for this plugin. Dual Linkwitz-Riley filters
Donations page:
http://www.savioursofsoul.de/Christian/?page_id=665

Proposed final feature list:
Stereo operation
Mouseover display of curent values for the knobs
Highcut/Lowcut filters 12db/oct-192db/oct selectable
Linkwitz-Riley filters for flat summing between drivers
Consistent and matching values between highcut and lowcut frequency selections.
Shift key modifier for fine adjustment of frequency
Phase correction switch for filter slopes that require correction between drivers.

Ogmeister
09-02-2009, 10:41 AM
I'll be "compensating" Christian Budde with $20 for these major changes to his Linkwitz-Riley filter. He's put about 100 euro's worth of effort into the plugin so far. I told him as a thank you for the effort I'd solicit other "thank you" contributions for this useful plugin.
Donations page:
http://www.savioursofsoul.de/Christian/?page_id=665

Proposed final feature list:
Stereo operation
Mouseover display of curent values for the knobs
Highcut/Lowcut filters 12db/oct-192db/oct selectable
Linkwitz-Riley filters for flat summing between drivers
Consistent and matching values between highcut and lowcut frequency selections.
Shift key modifier for fine adjustment of frequency
Phase correction switch for filter slopes that require correction between drivers.

Ok sign me up! I want to get this going too.
Can not wait to see the final result.

OGO

gdougherty
09-03-2009, 09:51 AM
Slight delay in Christian's schedule. Silly guy decided to get married and decided not to postpone the ceremony until after he's got this completed. Go figure ;)

gdougherty
09-21-2009, 04:48 PM
Woot, woot!

After lots of back and forth. Ahem, and a few emails between myself and him, we seem to have a finished product. I've tested it in SAC and presets, saved channels and retaining settings in sessions all work nicely. The audio processes correctly as far as I've seen, and there are a bunch of nifty new features since the first preview I shared.

Cool items

Right-click for a frequency popup with ISO standard points
[ALT] drag for whole number values, [SHIFT] speed modifier works in conjunction as well
Right-click the filter labels to display a Load/Store menu for 6 memory presets (saved to the Registry) to quickly create matching crossover points.
Auto-corrected phase relationships for simple crossovers using odd order filters
Two filter instances of the plugin on my 2.4GHz E6600 desktop and nothing else running registers a 2***37; load to create a 2-way system with 48db/oct crossover and 24db/oct highpass protection at 45Hz on the subs.
You can download the plugin from Christian's website HERE (http://www.savioursofsoul.de/Christian/?page_id=712#DualLR).

I wrote the bulk of the manual and after two revisions, it is finished; I think. It may not be integrated into the packaged version until a few days from now since he's back at work programming for Airbus. If you'd like it before then, you can get it from my Skydrive space HERE (http://cid-2b3910b45e4d2b22.skydrive.live.com/self.aspx/.Public/Audio/Plugins/Dual%20Linkwitz-Riley%20Filters%20Manual.pdf). It's worth the read, especially the slope section for things to be aware of in terms of phase if you're using it for 3+ way speaker configurations.

Again, if you find this useful and will be using it as much as I will, I'd strongly encourage you to support his new family and thank him monetarily HERE (http://www.savioursofsoul.de/Christian/?page_id=665).

Jeff Scott
09-21-2009, 06:15 PM
Thanks so much for doing this. It's downloaded and a contibution to Christian has been sent. Finally..my Driverack 260 is "redundant". Actually...we installed it as the Speaker processor in our new Sanctuary last Friday. It's going to good use....Too late to install SAC...but you never know. Anyone need a 1 week old Yamaha LS9-16? (laughing)..

gdougherty
09-21-2009, 09:18 PM
Welcome Jeffsco. It's so nice to have this plugin and the features, while simple, are slick and user friendly. Christian really did a superb job with it. I'd be mildly tempted to keep using a DR260, but I'm glad to be rid of my DCX2496 and its noises.
One nice thing about writing the manual was being able to plug SAC in the plugin description section :)
I'm sure you could find a buyer for that LS9-16. I'm starting to be less aprehensive about other users and SAC the more people play with it. I had a fairly novice user run the system at church with only 1 minute of brief overview. Having preset scenes that handled major changes made life much easier for her. I then loaned my SAC rig to another competent sound guy for a brief Sunday gig with only an hour of introduction the Saturday before. Most of that hour was spent training him on how to assemble the rest of my setup. I dropped by to help and pack up the system Sunday after he and another engineer set things up. I got an earful of amazed and positive feedback about the software and that from weekly users of a Yamaha M7CL and Mackie TT24 console. When I pulled out the laptop and let them wander around mixing with it, they were even more impressed.

dbarrow
09-22-2009, 10:24 AM
Very welcome. I'm a fan as well after using Rubberfilter and the Electri-Q. I'm also toying with the lightweight limiter and a few other plugs to have an efficient output limiter.

Also, not really recommended for real world use yet. I don't know, it may be stable, but this is just a quick Alpha at the moment.
Will Electir-Q work with SAC? It seems like I tried it a while back and it either had too much latency or was too CPU intensive. I thought it was very cool other than that.

gdougherty
09-22-2009, 03:59 PM
Will Electir-Q work with SAC? It seems like I tried it a while back and it either had too much latency or was too CPU intensive. I thought it was very cool other than that.

I was using the poshifopit free version and had no problems with it. The CPU load wasn't too bad. I ended up using the Native Studio EQ for most of my EQ needs just because it's lighter and doesn't translate the audio stream to floating point for VST use. Of course I'm using a VST plugin for crosover now and a limiter, so it's not that big a deal. I really liked the Electri-Q interface though. It was easy to use and simple to see the overall curve plus what each filter was contributing to the final result.