⚙️ ENGINEER LEVEL: Advanced DSP Theory
Minimum Phase vs Linear Phase
Minimum phase system:
Magnitude and phase responses related by Hilbert transform.
Properties: - Minimum group delay for given magnitude response - Causal (doesn't predict future) - Most analog filters are minimum phase
Phase response:
φ(ω) = -imag[H(ln|H(jω)|)]
Where H = Hilbert transform
Linear phase system:
Properties: - Constant group delay: τ_g = constant - No phase distortion - Preserves waveshape - FIR filters can achieve linear phase
Phase response:
φ(ω) = -ω × τ_g
Comparison:
Minimum phase EQ: - Lower latency - Phase shifts with magnitude - Can cause pre-ringing (minor) - IIR implementation (efficient)
Linear phase EQ: - Higher latency - No phase distortion - Can cause pre-ringing (more severe) - FIR implementation (CPU intensive)
For car audio:
Minimum phase generally preferred: - Lower latency - More efficient - Phase effects inaudible for typical EQ
Linear phase for: - Mastering/production - Critical listening - If CPU allows
Psychoacoustic Optimization
Critical bands:
Human hearing analyzes sound in ~24 critical bands (Bark scale).
Bandwidth increases with frequency:
| Center Freq | Bandwidth | Equivalent Q |
|---|---|---|
| 50 Hz | 50 Hz | 1.0 |
| 500 Hz | 100 Hz | 5.0 |
| 5000 Hz | 1100 Hz | 4.5 |
| 15000 Hz | 3500 Hz | 4.3 |
Implication for EQ:
Optimal Q matches critical bandwidth:
At 100 Hz: Q = 1-2 At 1000 Hz: Q = 3-5 At 10 kHz: Q = 3-5
Audibility of EQ:
Just Noticeable Difference (JND): - Midrange: ~1 dB - Bass/Treble: ~2-3 dB
Below JND: Won't hear difference (don't bother) At JND: Subtle but audible 2× JND: Clearly audible
Masking effects:
Loud sound masks nearby frequencies: - ±1/3 octave for narrowband masker - ±1 octave for broadband masker
Implication: EQ changes in masked regions may be inaudible!
Time/Frequency Uncertainty
Heisenberg uncertainty principle applies to audio:
Δt × Δf ≥ 1 / (4π)
Cannot have perfect time AND frequency resolution simultaneously.
Short time window: - Good time resolution - Poor frequency resolution - Good for transients
Long time window: - Poor time resolution - Good frequency resolution - Good for steady-state
For crossovers:
Sharp frequency cutoff (high Q) creates time smearing.
Example: 80 Hz crossover, Q = 15
Frequency resolution: ±5 Hz (very precise) Time resolution: 1/5 = 0.2 seconds (very smeared!)
Trade-off:
Steep crossover: - Excellent frequency separation - Time smearing (minimal impact below ~200 Hz)
Gentle crossover: - More frequency overlap - Better time domain
Practical implication:
Below ~150 Hz: Steep crossovers okay (wavelength long, time resolution less critical)
Above 2 kHz: Consider gentler slopes (time resolution matters more)
FIR Filter Design Methods
Window method:
Process: 1. Define ideal frequency response H_ideal(ω) 2. Inverse FFT to get impulse response h[n] 3. h[n] is infinite - must truncate 4. Apply window function to taper ends
Window functions:
Rectangular: - No tapering - Sharpest frequency response - Worst sidelobes (-13 dB)
Hanning: - Cosine taper - Good compromise - Sidelobes: -31 dB
Blackman: - More gradual taper - Excellent sidelobes (-58 dB) - Wider main lobe
Kaiser: - Adjustable parameter β - Trade-off between main lobe and sidelobes - Optimal for many applications
Frequency sampling method:
Process: 1. Sample desired H(ω) at N points 2. Inverse DFT gives h[n] directly 3. N taps, length N filter
Advantage: Direct control of frequency response
Disadvantage: Frequency resolution = f_s / N
Optimal (Parks-McClellan) method:
Equiripple design: - Minimizes maximum error - Optimal in minimax sense - Remez exchange algorithm
Results: - Shortest filter for given specs - Equal ripple in passband and stopband - Industry standard
Software: MATLAB firpm(), scipy.signal.remez()