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

Once you get your measurements properly aligned (polarity and time offset)

Of course you need to go back and forth between these steps for adjustments, including measurement time offset.

Hi Pos,

I wanted to understand "time offset" clearly.

When measuring at 1m on axis from a multi-driver speaker, different drivers have slightly different arrival times to the mic, based on their distance and also the physical offset of their centers from the baffle plane. Is this the offset you refer to?

I get time delay from REW when using loopback timing reference. From this it is easy to compute the relative delay on each driver to align thier acoustic centers. Is this the value to be used as "time offset" for each driver?

Should this delay be first applied in rePhase before staring the amplitude/phase corrections for a driver? Where exactly is this timing offset specified?

Once the filter is created with approach, is the delay built into the generated filter? What I mean is, does the relative alignment delay need to be specified in Jriver again (btw, this is all i do currently for time aligning the drivers)

Thanking you for the software and clarifications you offer.

J
 
Regarding this second highpassfilter to add wih the compensate, in case of LT for a closed box.
Any recommendation of the steepnes / slope of this filter? Let’s say I want full output to 20Hz. Then I want to reduce everything below 20Hz as much as possible, without degrading sound. Ringing a concern here?
Minimum-phase or linear phase recommended for this highpassfilter?
 
Last edited:
J, you can do as I do.
Generate with Audacity some sine tone at crossover frequency. Say 3 cycles. Then, with Audacity, record with the microphone this wav played in your foobar player. I delay one of the drivers 100ms to see clearly the 2 impulses. Then you select the distance between the cycles and you calculate the delay based on the selection samples length. 1000ms/44100 * selection sample length = true delay (ms). Then you adjust the delay and record again. The 3 cycles should appear nice.
Do the filters with the same setting, the delay is the same then for all channels, just the physical delay must be set then.
 
Hi Pos,

I wanted to understand "time offset" clearly.

When measuring at 1m on axis from a multi-driver speaker, different drivers have slightly different arrival times to the mic, based on their distance and also the physical offset of their centers from the baffle plane. Is this the offset you refer to?

I get time delay from REW when using loopback timing reference. From this it is easy to compute the relative delay on each driver to align thier acoustic centers. Is this the value to be used as "time offset" for each driver?

Should this delay be first applied in rePhase before staring the amplitude/phase corrections for a driver? Where exactly is this timing offset specified?

Once the filter is created with approach, is the delay built into the generated filter? What I mean is, does the relative alignment delay need to be specified in Jriver again (btw, this is all i do currently for time aligning the drivers)

Thanking you for the software and clarifications you offer.

J

Anyone? If there is a pointer to this earlier in the thread that would help too.

thanks.
 
J, you can do as I do.
Generate with Audacity some sine tone at crossover frequency. Say 3 cycles. Then, with Audacity, record with the microphone this wav played in your foobar player. I delay one of the drivers 100ms to see clearly the 2 impulses. Then you select the distance between the cycles and you calculate the delay based on the selection samples length. 1000ms/44100 * selection sample length = true delay (ms). Then you adjust the delay and record again. The 3 cycles should appear nice.
Do the filters with the same setting, the delay is the same then for all channels, just the physical delay must be set then.

Thanks. Will go through this.
 
Hi Pos,

I wanted to understand "time offset" clearly.

When measuring at 1m on axis from a multi-driver speaker, different drivers have slightly different arrival times to the mic, based on their distance and also the physical offset of their centers from the baffle plane. Is this the offset you refer to?

I get time delay from REW when using loopback timing reference. From this it is easy to compute the relative delay on each driver to align thier acoustic centers. Is this the value to be used as "time offset" for each driver?

Should this delay be first applied in rePhase before staring the amplitude/phase corrections for a driver? Where exactly is this timing offset specified?

Once the filter is created with approach, is the delay built into the generated filter? What I mean is, does the relative alignment delay need to be specified in Jriver again (btw, this is all i do currently for time aligning the drivers)

Thanking you for the software and clarifications you offer.

J
The measurement you import into rephase already has (or should have) some sort of travel delay compensation to make it close to its minimum-phase behavior.

The good news is that you don't need to worry about all this until the very last part of the crossover process, ie when actually attempting to sum the drivers :)
The needed delays will not be the same with a corrected and uncorrected driver, so no need to worry at this stage.

When analyzing a full range measurement, most of the time you want to ignore the low pass (20kHz-ish), as you will not (and should not!) attempt to correct its phase.
So in this situation the best approach is to center the measurement impulse on the first positive peak (and of course you want this peak to be positive, or you need to switch polarity), which results in a phase curve reaching 0° near the low pass (and possibly falling apart afterward)
This is what HOLM will do automatically for example, but you can also adjust this in the measurement tab in rephase, possibly after some minimum-phase EQ, to still get that "lazy" 0° target.

Now when dealing with an active crossover the situation is different, as you cannot ignore the phase behavior of the low pass of a driver that you will have to integrate with another one, ie integrate that "natural" low pass in a crossover.
If the low pass is well defined you can sometime "guess" what the proper offset should be to get the textbook phase behavior, but this can be complicated.
In this situation, the easiest approach is to start with the "positive peak" centering trick (as above) and then apply the compensation (and minimum-phase EQ) so that you get a flat magnitude response deep into the low pass stop band (up to the noise floor "wall"), and then play with the measurement time offset to get a flat phase curve in that same area (note that if you then undo your compensation correction you will see what the real minimum-phase response of your measurement looks like).
You can then build your correction, including linear-phase filters, and you should not need any phase EQ to get a flat phase (in fact if you need some this means that you failed at the above step).

Now, once everything is corrected (ie acoustical crossover are well matched across drivers), all you need to do is enter the appropriate delay into your crossover (including possible differences in FIR length and delays) to get a proper summation.
If everything is done correctly your offset differences should be very close to the geometrical distance differences from the drivers' emitting surfaces.
So you start with that, and adjust carefully with measurements (at a proper distance, ideally the listening position(s)), with one driver in reversed polarity, seeking for the deepest null (well known trick that gets the job done!)...

Hope this helps :)
 
Regarding this second highpassfilter to add wih the compensate, in case of LT for a closed box.
Any recommendation of the steepnes / slope of this filter? Let’s say I want full output to 20Hz. Then I want to reduce everything below 20Hz as much as possible, without degrading sound. Ringing a concern here?
Minimum-phase or linear phase recommended for this highpassfilter?

You can try that recipe its fun enough the freedom with this tool and see how it sounds but if you ask me most rooms adds about a 2nd order boost curve like Rephase compensate mode can do and if room is very small it can happen up at 90-100Hz area so in that case we probably want speaker also to 2nd order roll off up there, so unless your room is enorm you don't want have speaker go linear down to 20Hz. How to find rooms gain curve i can think of some Jeff Bagby spreadsheet and also ScanSpeak website have a free spreadsheet, and to fine tune system i play music and sit sweep a LT filter in Jriver up and down one hertz at a time until bingo now it sounds as in good head phones, also discovered over time that first 16 seconds of Michael Jackson track "Dirty Diana" can be use to tune knee for speaker system high pass in lets say you tune to 20Hz and room boost at 66Hz then this tracks first 16 seconds will sound nasty hot and boomy plus walls will probably feel like rattle a bit and then one can high pass speaker 2nd order going higher and higher in frq until it starts sounding natural and walls don't rattle. I don't know about the SS spreadsheet but the Jeff Bagsby one can export frd files so if one import in Rephase we can inverse and compensate that or just high pass it to find the inverse roll off for speaker system, also for planning and fun suggest use "All SPL" tab in REW to command plus/minus/times/over with various curves to get a overview and find solutions.

About minimum and linear phase corrections to correct direct sound for a speaker use always minimum phase correction all over in that band pass devices are of minimum phase type, well even reflections and diffraction are also minimum phase at the position where they occurs so if they close to direct sound stream and non delayed we in minimum phase domain, the real hard part in acoustic domain when we in a room enviroment is get measurements filtered with the right window to base our correction and get it right, make measurement then correct it then re-measure and check waterfalls clean up and stuff as "Generate minimum phase" curve starts to look like absolute measured phase curve then we on track. Linear phase filters should be used only to correct for XO points and maybe some room errors her and there can successfully be corrected, but of course we can experiment and try out ideas how they sound but think you will agree in the end that for example use linear phase all the way down to DC potential spoil rhythm in played material.
 
Last edited:
Regarding this second highpassfilter to add wih the compensate, in case of LT for a closed box.
Any recommendation of the steepnes / slope of this filter? Let’s say I want full output to 20Hz. Then I want to reduce everything below 20Hz as much as possible, without degrading sound. Ringing a concern here?
Minimum-phase or linear phase recommended for this highpassfilter?
The steeper the filter the longer the (pre or post) ringing, so you need to pick your poison here ;)
Looking at the excursion curve is generally a good way of choosing the steepness: no need to go overboard, especially considering the actual content in the <20Hz range.
 

TNT

Member
Joined 2003
Paid Member
I never understod that ”an additional filter...” was an high-pass. I was stuck in thinking about the extra shelfing for the bass I want. Compensate + shelf, not compensate + high-pass + shelf. Do you see? You’re with stupid.

Why is this a "high-pass" filter? The function makes things flat. Then, if you don't want it flat you add an additional filter which can be anything you like - thats how I understand it?

The "high-pass" referenced above was just an example for an other user - there is no mandatory "high-pass" to be added as additional filter.

Right?

//
 
Think the "WHY" is because else you ask for non practicable real world boosts in compensate mode, below blue is 66Hz sealed box compensate and at DC potential it will ask for +70dB :p then the red one is a little more practical asking for 21dB boost rolling that sealed box system off at a BW2 20Hz.


attachment.php
 

Attachments

  • 3003.png
    3003.png
    7.8 KB · Views: 722

TNT

Member
Joined 2003
Paid Member
Think the "WHY" is because else you ask for non practicable real world boosts in compensate mode, below blue is 66Hz sealed box compensate and at DC potential it will ask for +70dB :p then the red one is a little more practical asking for 21dB boost rolling that sealed box system off at a BW2 20Hz.


attachment.php

Fair enough. But is that "shelf" realized with a HP?

//

hmm, maybe it is - yes...
 
A filter with minimum ringing in time response has Q of 0.5
The good old record player rumble filters had 12 or 24dB/oct.
A IIR in front of all FIR filters should be considered. But even such filter will have delay as groupdelay

So IIR low pass & high pass, record with REW the response and then FIR to flatten the phase and SPL dips/spikes in the intended usable range? Is this what you are thinking?

Yes, if you ask me:)
Nowadays in digital domain LP filter is optional:)

:scratch1:...think above points in all directions and is very hard to interpret and understand, is it encrypted : )
 
I endorce your solution, Byrtt to straighten out the curve.
Actually just trying to point out that a 20Hz HP filter has been used for a long time to protect bass element from rumble. 12 to 24 dB/oct filter is common.
I forgot to mention the 0.5 Q applies to the IIR filter.
Use of IIR in low frequency is just to save latency. If the FIR filter is 200ms it is no need to bother with IIR in front.

The LP comment is just a comment about filtering RF pollution in analog domain. And certanly out of topic. Sorry