Welcome, Guest
Username: Password: Remember me
All tutorials related to equalization of a system with miniDSP platforms.

TOPIC: FIR taps, resolution & undesirable artifacts

FIR taps, resolution & undesirable artifacts 5 months 1 week ago #29858

  • perrymarshall
  • perrymarshall's Avatar
  • Offline
  • Fresh Boarder
  • Posts: 10
  • Thank you received: 3
  • Karma: 0
Is there an inherent advantage in using more taps? For a tweeter for example: for a given target response, 300 taps might do the job, but will 600 sound better? Perhaps for the same reason 24 bits sounds better than 16?

Everybody who uses FIR filters quickly figures out that the # of available taps strictly limits filtering of low frequencies. And in any given situation you can use more or less taps to achieve an acceptable result. But are there advantages in using more taps than you absolutely need?

I'm not asking from the standpoint of FFT frequency / EQ resolution or hitting an exact target response curve. I mean from the standpoint of problems related to the inherent limitations of the FIR filters themselves. I always try to achieve as much as humanly possible with minimum phase IIR filters first before invoking FIR. A minimalist approach, not using FIR as a cure-all. What experiences do y'all have?
Last Edit: 5 months 1 week ago by perrymarshall. Reason: typo
The administrator has disabled public write access.

FIR taps, resolution & undesirable artifacts 5 months 1 week ago #29876

  • devteam
  • devteam's Avatar
  • Offline
  • Administrator
  • Posts: 5648
  • Thank you received: 692
  • Karma: 130
Hi Perry

A great topic of discussion! We look forward to hopefully some community members sharing their experience on this!
Pre-ringing is always the comment that comes up when one talks about FIR (www.gearslutz.com/board/mastering-forum/...-audio-examples.html)..

DevTeam
MiniDSP, building a DIY DSP community one board at a time.
The administrator has disabled public write access.

FIR taps, resolution & undesirable artifacts 5 months 1 week ago #29973

  • eclipseaudio
  • eclipseaudio's Avatar
  • Offline
  • Senior Boarder
  • Posts: 46
  • Thank you received: 44
  • Karma: 7
Hi Perry, et. al.,

Here are a few comments/thoughts on the topic, although maybe not as definitive as you would like.

As you mentioned longer filters are needed to effect filtering at lower frequencies. Also, filter responses that have higher magnitude and/or phase slope - i.e. higher Q regions - require longer filters. In my mind correcting higher Q anomalies in a loudspeaker response should be done with care, since the fine details may vary significantly with level, temperature, time, age and even content. Fine detail, provided it's not too varied in level, doesn't tend to result in long filters. It's usually the crossover HP and LP filters, and high-slope phase correction, that result in long FIR filters.

[Other than spatial averaging, one of the reasons for creating the Averaging tab was so users could measure at different levels (and maybe at different temperatures) and average everything to get a correctable response that is fairly consistent.]

On the topic of pre-ringing, linear-phase crossovers have been used for years in some touring and install systems, including crossovers with 60 dB to 90 dB per-octave slope that have pre-ringing in the multiple 10's of milliseconds.
See this documents describing the Lake linear-phase FIR crossovers
dolby.invisionzone.com/index.php?app=cor...n=attach&attach_id=7
dolby.invisionzone.com/index.php?app=cor...n=attach&attach_id=8

I've never heard of audible problems with these crossovers; I think because the (HP and LP) pre and post ringing essentially cancels. The cancellation is less at higher levels, as the drivers become more non-linear and deviate from being matched, but in these systems, the drivers tend to be selected to match fairly well with level. (I suspect at these levels, driver non-linearities are more audible than the filters.) Also, some of the better systems provide linkage between the output limiters; i.e. cross-blending of the limiter side-chain signals, or splitting the higher crossover into lower order sections and running some of the crossover filters before, and some after, the limiters.

I use the Lake linear-phase brick wall crossovers, on some systems, to minimise off-axis lobing in the crossover frequency range. The only gotcha is that the filter delay (pre-ringing) can be longer than the distance from stage to the PA - thus putting the stage sound ahead of the PA - so some planning of PA position is necessary.

W.r.t. FIR filter precision and whether higher precision sounds "better" than lower precision. Precision simply determines how accurately the final filter matches the intended filter. I don't have numbers on filter response error as a function of bit depth, but you've made me think that I could add an option (on the Export tab) to simulate bit-depth truncation effects according to the selected export file format.

IMO the main issue affecting how the filter sounds is its noise performance, and the noise comes from the FIR implementation in the processor; and not the coefficients themselves.

IIR filters - particularly direct-form 32bit floating-point biquad implementations - have surprisingly high noise, due to the inherent feedback in the filter structure.

[Dave McGrath (Dolby) has a nice AES paper describing noise in IIR filters and the benefits of using state-space biquads.]

FIR filters, generally, have lower noise since there's no feedback or recirculation of the truncated filter output.
- Fixed-point time-domain FIR: There's close to no noise since the only noise source is the final accumulator unload; assuming a sufficiently large enough accumulator for the overall filter length.
- Floating-point time-domain FIR: Some noise is injected at every multiply-accumulate step (MAC), but it's usually low enough not to be of any consequence. To absolutely minimise noise, FIR filter coefficients can be MAC'd in order from the smallest to the largest coefficient. However, the roughly random memory accessing can be too costly to be worth the hassle.
- Floating-point block FFT convolution methods: Predicting noise is more difficult, but again, it's generally low enough to not be a concern.
- Fixed-point block FFT convolution: These implementations require care in internal FFT gain scaling, to avoid significant noise.
(Just judging by length, I suspect the majority of real-time FIR implementations use time-domain, and not block FFT, methods.)

So, noise issues aside, I keep coming back to the measurements as the primary determinant of how the FIR filter will sound. Good measurements that are representative of the loudspeaker within its coverage angle and at various levels.

I hope this is useful.

Kind regards,
Michael
Eclipse Audio
Maker of FIR Designer, a filter design tool for loudspeakers.
www.eclipseaudio.com.au
Last Edit: 5 months 1 week ago by eclipseaudio.
The administrator has disabled public write access.
The following user(s) said Thank You: devteam, DownUnderGaza
Time to create page: 0.102 seconds