rePhase, a loudspeaker phase linearization, EQ and FIR filtering tool

Isn't the polarity reversed in that measurement?...

Anyway, if you want a 48dB/oct LR you simply need to stack two 24dB/oct Butt. And in turn each 24dB/oct butt can be obtained by stacking two 2nd order filters, one with Q=054 and the other with Q=1.31.

Similarly a 96dB/oct LR is obtained by stacking two 48dB/oct Butt filters. Each 48dB/oct Butt is obtained by stacking four 2nd orders filters, with Q values of 0.51, 0.60, 0.90, and 2.56.

So you need 4 biquads to emulate a 48dB/oct LR and 8 for a 96dB/oct one.

Thank you for the biquad building info. I didn't know that stacked Q's would need to be different, and would have spun my wheels a lot, until finding this out...

Yes, polarity reverses with the addition of the ICE filters.
I have to invert polarity on the mid somewhere in the signal chain....
The speaker threw me for a loop for a while...the mid section is both horn loaded and ported. The path from the ports is shorter than the horn path.


So I'm telling myself that is why I get an inverted looking impulse with a verified positive signal.....
I tell myself that the ports arrive early, pretty strong but weaker than the horn. Does this make sense? :eek:

Impulse, polarity normal, that goes with curve I posted above, is first one. Second impulse is with phase correction in ICE amp and inversion.
These impulses are just the mid section, of course.
 

Attachments

  • Mid DRC only.jpg
    Mid DRC only.jpg
    67.9 KB · Views: 286
  • Mid DRC and ICE.jpg
    Mid DRC and ICE.jpg
    61.8 KB · Views: 290
  • Mid port r.jpg
    Mid port r.jpg
    239 KB · Views: 259
Not sure what your EQ process is, but you should aim for flat 0° phase (ie positive impulse peak) and complementary filter slopes for all your sections, regardless of the technologies (ported, horn loaded, or a combination, etc.).

Anyway, if you want a 48dB/oct LR you simply need to stack two 24dB/oct Butt. And in turn each 24dB/oct butt can be obtained by stacking two 2nd order filters, one with Q=054 and the other with Q=1.31
Please read 0.54 here
 
mark100,

On old laptop from spring 2010 tried run whoopee FIR LR32 100Hz (196dB/oct) into JRiver DSP, platform CPU is Intel Core I3 330M family just before Sandy bridge got released, admit Win7 on that computer is optimized for audio but cant you simply do close to same setup with your 4 or 8 track behringer interface connected and then steer both sub plus midwoofer horn via that route.
 

Attachments

  • 1.PNG
    1.PNG
    119.3 KB · Views: 261
  • 2.png
    2.png
    584.4 KB · Views: 242
Thank you BYRTT !

This is exactly what I've been looking into today....with all the discussion about PC FIR going on.....
I use JRiver, but so far just as a simple music server feeding a few of JR's ID NUC boxes. Never really looked into DSP studio's capabilities.

Would JR be able to split L and R into 3 channels for each side (sub, mid, and high) and then allow me to independently assign a FIR filter to each of those 6 channels ?

If so, I really should try this. I've already checked that JR sees all 8 channels of the UMC 1820, and at least 8 on the x-32.....I'll just have to map them out..

What would be super, is if an ID could handle the 6 channels. I'd love to try this...the JR forums said the ID would do convolution, ....just don't know about 6 channels...

Oh, do you know how fine JR's channel delay capability is?
 
mark100

Yes JRivers 64bit engine can make complicated route tricks think what ever one wants and also run hundreds of IRR plus one FIR per channel as native build in, but if you add third party plugins it can run multiple FIRs per channel.

My own speaker system is managed by JRiver on dedicated computer listening analog 192kHz and have 8 channel 192kHz outputs over a ASUS soundcard ESSENCE STX II 7.1, because its feeded analog and not used as player is to have reconstruction filters right for tracks native sample rate, that cost me a DAC/ADC conversion but its worth it because the two PCM1792A and six PCM1796 DACs sound pretty good running full throttle and at same it opens up for making filters up high above normal audio band.

How much CPU power you need to run the full system i don't know but made the test on old hardware to prove that is good enough to take sub and mid-woofer band-passes under 44 or 48kHz and at same thought was that maybe you want coaxial horn to run via other boxes with better DACs so to get around those irritating looking ringing filters as use for your HF section.

As i see it PER-CHANNEL you can either set all the IRR filters plus delays plus a convolution FIR filter correcting time domain, or you can simply load one convolution filter involving both IRR and FIR correction and maybe also delay, but think delay is so more flexible and easy to adjust on the fly in the PEQ container.

It probably takes some learning curve to learn adjust JRiver but its so power full and think should be no problem if interest is there, below is to quickly explain some, at left is some containers and understand that sound route starts from top going down so if you want "Convolution" container before "PEQ" container simply on the fly even with music playing drag it upwards with mouse. Same downward route is rule at right where we see active and non active filters in the PEQ container marked over at left, and if you look there's a "Channels" field that can set if highlighted filter shall work for what channel and this is where you select which particular channel on the sound interface highlighted filter shall work. Over at right is the build in filters to pick from and the one named "Mix channel" can make complicated internal digital routing. Convolution filter is pretty easy to load/unload for 2 channel sound cards simply point to a file made in Rephase as "32 bits LPCM stereo (.wav)" but with more channels one shall point to a config (txt) file that then again points to different wav files belonging to each channel and these shall be created in Rephase as mono files "32 bits LPCM mono (.wav)". There is good help to create config file over at JRiver forum, also if sample rate is not fixed there's help how to get engine to automatic shift convolution filter to one with other right sample rate.
 

Attachments

  • 2.PNG
    2.PNG
    234.6 KB · Views: 132
Last edited:
I wish someone would write up a definitive guide to how REW handles timing.

I get the logic behind the starting loopback and acoustic reference timings......but exactly WHAT POINT in frequency /time space are these times relative to ?

And how does Estimated IR delay overlay on top of either of the starting time references?

And why doesn't Estimated IR delay locate 0 timing at impulse peak?
Maybe because it's estimated against a calculated minimum phase curve, which is different than measured curve? (just guessing here..)

In trying to align multiple drivers, REW has driven me near crazy lol
SmaartLive is soooo much easier for this ...albeit so much more $ too...

I have found at neat trick to time align the drivers.

In Jriver go to Tools => Advanced tools => Audio Calibration => Start at pink noise test for the number of channels you are using.

Now go to REW => start Real Time Analyser (RTA).

You start so that your speakers have the right polarity ie the sum flat. Now inverse one of your speakers units so that the play in incorrect phase. (You can do it on the fly in Jriver)

Then in Jriver under DSP settings, open a new "delay" and assign some delay to the speakers that needs to be delayed. (ex the tweeter). Then you gradually add delay to that speaker.

In REW you can now see that the negative notch around the crosspoint becomes steeper and stepper. The steepest point is where the speakeres are time-aligned.

In Jriver you can now turn off the reverse polarity, and the speakers should sum flat.

You may need to measure relatively close to start with (1-2 meter). Also take in mind, that between mid and tweeter, small changes in where you place your microphone affects your measurement.

this is also at good source to start with:

https://www.minidsp.com/applications/dsp-basics/time-alignment
 
Member
Joined 2009
Paid Member
You may need to measure relatively close to start with (1-2 meter). Also take in mind, that between mid and tweeter, small changes in where you place your microphone affects your measurement.

Given you have access to microphone and analyzing tools, fastest most accurate method is the one decribed here.

Time-Alignment

As you don't move microphone you don't have to worry about measurement (all artefacts are minimum phase in this case.
 
BYRTT, that was a VERY helpful post, thank you !!

I've made some progress i think....the JRiver ID now has 8 channels in DSP studio, where L copies to 4 channels as does Right. I've mapped the 8 channels into a x-32 mixer via its USB card, with the idea the x-32 will be my 8 channel DAC at least thru testing. The x-32 is a great testing / setup platform with its multiple meters and super routing capability.

So now I'm studying how to write the config txt file to map the driver FIR files into DSP studio, output by output. Doesn't look toooo tricky, but I'm sure it will take a few iterations to get right.

I figure it's 'who knows' if the ID NUC has the processing power to handle the channels/taps....but one way to find out :D

Thx again, your clear writing helps motivates a computer illiterate like myself !
 
Not sure what your EQ process is, but you should aim for flat 0° phase (ie positive impulse peak) and complementary filter slopes for all your sections, regardless of the technologies (ported, horn loaded, or a combination, etc.).

Hi POS, yep, I always aim for 0 flat phase and complementary crossover.

Sorry if I rambled about the ported / horn loaded combination..
What I was really trying to say, is when measuring, that combination's highest positive peak(100% FS) is always preceded by a heck of strong negative peak (76% FS).
Maybe that's a common phenomenon, but it had me scratching my head for a while...as I've always kinda pictured the strong positive peak as a first arrival.

My eq process is driver by driver. In order: Minimum phase EQ, filter's linearization, para phase, then apply linear phase x-overs. Time align and final level adjustments external to FIR builds. That OK or better way ??
 
BYRTT: Do you have a good "how to" to optimize a laptop with win 7? I find it very difficult to get at stable low latency. I know that there can be a whole bunch of things that can cause the problem.
For instance, do you have your wifi off ie using lan instead.

Unfortunate have no how to document laying around but most often find it possible to enhance a particular hardware platform to perform very good audio quality running Win7 without going nuts as compared to former MS versions, probably also Win8.x/Win10.x is useable but man they too dynamic updated for MS intensions of other features and business that its hopeless get steady sound performance unless freeze it (isolated from update servers) that then hinders one to use computer for any other daily use.

Don't think Win7 have any issues also running Wifi as example that 2010 old Dell laptop from post 1584 had spikes in DPC Lantency Checker up in 2mS area for Intel Wifi mini PCIe card with whatever driver offered from Dell, but with use of new driver from Intel we got down to a steady 500uS, then improved computer further installing my own clean Win7 image and other small stuff changes so it now hover around 100uS. In general find not laptops good for audio compared to desktops, there's probably too much smart stuff features plus active sensors and management running as default.

No gurantee it would work but in hunt to get stable low latency maybe try exercise on another hardware platform where its possible to have audio hardware get direct CPU access, meaning not via the southbridge that share most of computers I/O's via 4x PCIe lanes connected to CPU. For example platform writing this message have 16 lanes with GPU direct to CPU but also have a 4 lanes slot direct to CPU where a PCIe one lane soundcard could fit or if its USB soundcard then place USB3.x 1 lane PCIe card in that slot, also platforms that run CPU's build in graphics there is often a 16 lanes PCIe free to try.
 
Hi Mark100, No problem, hope it will be helpful :)

Up until now I have not been able to get either the loopback or timing reference to work. It bothers me, because I am not able to sede my steprespons. Im able to see my "phase", when Im using a gating in REV - For instance 40 ms (so the room is neglegted in the the measurement). If I measure to far away from the speakers ie 2,5 meters, the room influences a lot, so the phase is not clean. When I measure close, the phase is very linear (using Rephase) - Shown in REW.

I would say that my presented method is the "idiot proff" way to do" (I may be one :-D) . I would say though, that it is very accurate. If for instance the drivers is not time aligned, there is clear evidence in my measurement, that the phase goes crasy around the crosspoint.
 
BYRTT

Thank you for your answer.

I have thought about a desktop for audio, but I do not find it easy to find one relatively cheap. I also thought about an intel nuc, though I would still be limited to USB - Also I have read some about that USB 3.0, even though in theory it can be used with usb 2.0, some devices misbehave. I guess all usb ports in my laptop, shares the same platform ?

Right now Im using an old Thinkpad T410, which I really like 1) Its cheap 2) The keyboard is probable the best out there. It is PLENTY powerfull for active crossover, but it heat up some, when watching 720p videos on youtube. I control the fan via TP-Fantrol. The CPU temperature howers around 60 C, and around 65-73 while watching videos - This is via Youtube. It has done so for almost two years :D - If I do not watch videos it is almost "dead silent". I cannot stand fan noise.

For some reason I cannot get Spotify to run without glitches, very irritating. I have thought about buying an ESI u24 xl, then going digital in with that card. It is old though, but my ESI Gigaport HD+ runs extremely well - And sounds very good: "lifelike" and not harsh at all.

Yesterday I spend some hours on google trying to find sources on optimizing windows.
I changed: Under computer => properties => Advanced system properties => Advanced. I changed priority from "programs" to "background services".
Then I turned of my wifi and instead went the LAN way. Now DPC latency checker howers around 100 us - With maximum around 300 us. But mostly around 100 - Which I have read is close to optimum. This is even when I stream videos on youtube. No random spikes. Im almost certain that turning of my WIFI solved most of the problems. I have not seen odd crasy spikes since.

I have also found a free program called WLAN Optimizer, that works with Win7. To my understanding, it forces the WLAN card not to try to connect to the router more than nessesary. I may be worth a try. It does not work via LAN.

If you have a good cheap solution for a desktop, I would like to hear.

Sorry if this is too off-topic
 
Last edited:
Rokytheman,

Sounds great but not shure if CPU role "Programs" verse "Background Services" does change anything into DPC bencmarks but it changes sound quality for computers where there is a difference in sound quality if example player is in focus or minimized, in that case "Background Services" role ensure uniform quality.

Changing that setting into Win7 GUI toggles between setting "26" (Programs) and "18" (Background Services) into "regedit" key seen below, so if you play loud and and on the fly change key directly in "regedit" its possible to notice little bit of sound quality change. There is more switches as seen in blue scheme and on my systems "14" and "24" sounds best, but watch out it seems that if one ever take a look and enter the GUI then Win7 switches back to either of defaults "18" or "26" so therefor check in "regedit" what real setting is if other than defaults is preferred.

attachment.php


Also better and uniform sound quality in Win7 is up clock frequency and resolution, tool to test clock search for "WinTimerTester 1.1", note up clock frequency and resolution drain faster battery powered devices and probably develop bit more heat. To up motherboard timer frequency turn on HPET via command prompt as ADMIN "bcdedit /set useplatformclock true" then restart and should it be a wish to turn off again command is "bcdedit /deletevalue useplatformclock". To get Win7 run up in 0.5mS highest timer resolution have this cheap utility from Lucas Hale (link: Timer Resolution – Lucas Hale) else alternative is to have always DPC running minimized which will force 1.0mS timer resolution.
 

Attachments

  • 3.png
    3.png
    77.7 KB · Views: 316
Last edited:
Hi Mark100,
Up until now I have not been able to get either the loopback or timing reference to work.

Hi Rokytheman,

Have you tried using the acoustic timing reference, and putting the exact time delay given in the measurement tab, in as an impulse offset adjustment? Without using Estimate IR delay.

This has become my preferred method for working out phase. (It works for loopback same way.)

If you use whatever time delay is measured for a full range speaker, as the impulse offset on a sub's measurement, it will give the subs phase relative to the full range. Same principle applies using HF driver delay time for lower freq drivers, if you're aligning a multiway.

Hope that made sense.. :)
 
Here's a step-by step guide how to optimize windows 7 for low latency. There are three levels of optimization you can choose "Safe", "Tweaked" and "Bare Bones". There are also guides for other Windows OSs including Win 10. I followed the "Bare Bones" (most aggressive optimization) for my Win 7 x64 Dell M4600 laptop which is dedicated for testing only. It did wonders for my latency problems. I also recommend using Latency Monitor Home Edition (free download) to monitor latency. It monitors page fault delays in addition to the usual interrupt and DPC delays.

Black Viper’s Windows 7 Service Pack 1 Service Configurations – Black Viper | www.blackviper.com

Latency Monitor:

Resplendence Software - Free Downloads



BYRTT: Do you have a good "how to" to optimize a laptop with win 7? I find it very difficult to get at stable low latency. I know that there can be a whole bunch of things that can cause the problem.
For instance, do you have your wifi off ie using lan instead.
 
I can understand the concept and advantages of turning a PC into a headless linux box dedicated to filtering and possibly streaming only, but I must admit the idea of using a tweaked-to-the-bone "home PC" running windows and doing all sort of things (media player, video, web and apps, etc.), as well as acting as an active crossover is not something I feel confortable with :gasp: