-
Notifications
You must be signed in to change notification settings - Fork 0
Phase Linearization
Stuff in the real world tends to be minimum phase systems. Music sources, preamps, power amplifiers, crossovers (whether passive, active analog, or digital using forward time IIR filters), speakers, and microphones all exhibit minimum phase behavior. A corollary of this property is the usual forward time IIR equalization to correct sources, preamps, power amps, speakers, and microphones for a flat SPL response also corrects the phase error associated with the deviation from flat. Additional phase linearization through time reversed IIR (or other methods) is needed only when magnitude deviations are unavoidable. This occurs in three cases. Low frequency rolloff below a driver or microphone's Fs, high frequency rolloff as a driver or microphone becomes acoustically large, and compensating for phase shift created by crossovers.
In the acoustically large case phase linearization is usually unhelpful as the required correction varies with spatial direction, causing benefit from reducing error in one direction being overwhelmed by increased error in other directions. Additionally, human hearing has limited phase perception above 10kHz. Available evidence indicates, however, a majority of listeners can reliably discriminate between playback with typical crossover phase errors (warped phase) and the linear phase playback which occurs when these phase errors are corrected. Similar discrimination occurs for drivers' low frequency rolloff and, in both cases, the linear phase version is usually found to be subjectively preferable. So it's worth the effort to implement linear phase in a high fidelity system.
Digital processing offers three linear phase options, all more convenient than approaches relying on first order crossovers (Dunlavy) or filler drivers (Duelund). Two of these are time reversed IIR filters and FIR filters, which offer the tradeoffs discussed on this wiki's home page. The third option is to perform an FFT, apply filtering in the frequency domain, and obtain the output by IFFT. The FFT approach is unattractive as it combines the filter synthesis complexity of FIR filters with the same block based difficulties time reversed IIR when used in real time. In addition, it's difficult to flow real data through the complex FFT and IFFT needed to perform phase correction.
Time reversed IIR is used in conjunction with forward time filtering. The magnitude changes from forward and reverse time processing add but, as time is reversed, a stable reverse time filter exhibits leading phase. If forward and reverse are properly matched, the lagging phase response of stable forward time filters is cancelled by leading phase from the reverse time, resulting in a linear phase output. Such cancellation can be achieved in many ways but it's usually simplest to perform all magnitude manipulations in forward time. Since forward and reverse time magnitude changes add, this means reverse time processing should manipulate only phase and is therefore performed with allpass filters. Such inverse allpass filters are attractive because a single offline filtering pass can correct the phase errors from multiple crossovers, low frequency driver roll offs, and dipole roll offs and yields a two channel output which can be stored and played as a normal audio track. Inverse allpasses are identical to forward time allpass filters in their synthesis and behavior---the inverse in the name simply denotes reverse time use to obtain leading phase.
Minimum phase filters, such as the lowpass and highpass filters in a crossover, introduce 90 degrees of phase shift per order. Allpass filters introduce 180 degrees of phase shift per order. So a first order inverse allpass (A1) cancels the phase error created by a second order Linkwitz-Riley crossover (LR2), an allpass biquad (A2) cancels a fourth order Linkwitz-Riley (LR4), and so on. The slope of a driver's low frequency roll off is second order and its induced phase can is cancelled with an A1. In ported speakers the roll off is fourth order and cancelled by an A2. This is summarized in the table in the user documentation.
Home audio typically uses ported speakers with LR2 crossovers, so the default configuration for phase linearization is a low frequency A2 at the port's tuning frequency and an A1 at the crossover frequency. In pro audio LR4 crossovers are common so the A1 becomes an A2. This approach generalizes to most three way systems with a low frequency allpass for bass correction and two more allpasses, one at each crossover frequency
Dipole rolloff is typically equalized using Siegfried Linkwitz's shelving filter approach, often also with Linkwitz's rumble filter (a highpass filter in the deep bass) to reduce driver excursion. A simpler approach less demanding of the drivers is a peaking filter with Q around 0.5 and center frequency just enough below the driver's lower crossover frequency for the crossover to sum flat. This produces a fairly flat magnitude response which can be fine tuned with additional peaking filters with minimal excursion demand. In the case of subwoofers (or a woofer with no subwoofer below it there) is no lower crossover it's generally best to center the peaking filter near the driver's Fs as most drivers exhibit second order SPL rolloff below their Fs.
This dipole equalization approach produces roughly fourth order highpasses due to the summation of the peaking filter and the driver's Fs roll off. This phase shift is usually well corrected by a second order inverse allpass of Q around 0.7 and centered near peaking filter. The Q can be tuned or the correction split into two first order inverse allpasses for better results but the difficulty of acquiring good phase data below a room's Schroeder frequency means this default is often accurate within measurement limits.
If the speaker's crossover frequencies are sufficiently far apart to avoid their phase responses overlapping nothing special need be done for the lowest frequency inverse allpass for dipole correction. For all other drivers, the dipole equalization falls into the passband of the next driver down. Since peaking filters are typically applied on a per driver basis in multichannel forward time processing there's no difficulty with corrections spilling over from one driver to another. However, as Cross Time DSP operates before crossovers are applied the inverse allpass which provides the phase correction for the peaking filter and the driver's Fs does spill across drivers. This means, for example, the dipole inverse allpass for the midrange in a three way shifts the phase of the frequencies played by the subwoofers. The solution is to apply the same allpass to the subwoofer channels in forward time. This cancels the portion of the inverse allpass the subs inherit from the midwoofer, resulting in correct phase both at the top of the subs' passband and at the bottom of the mids' passband.