Jump to content

FIR Room Correction


SME

Recommended Posts

Even though this is a bass forum, I don't mean the scope of this topic to be limited to bass.  In fact, FIR filters are generally more effective with higher frequencies because of their fixed frequency resolution versus size and compute requirements.

 

This thread is intended as a potential continuation of a conversation started on this thread.

Link to comment
Share on other sites

maxmercy wrote:

 

I would be very interested to find if you can hear a difference between a well implemented IIR vs FIR setup, given the same starting conditions, and correcting for a multi-seat area.

There are many ways to correct for a multi-seat area, whether using IIR or FIR filters.  Theoretically speaking, one can probably achieve the same target response using either IIR or FIR filters.  In reality, your filtering capability is limited by your hardware and your ability to program it.  I believe many room correction systems like Audyssey and Dirac rely on neither FIR or IIR filters but hybrids of various kinds designed to maximize performance for a given DSP architecture.  Some of filter methods may be patented.  Others may simply be exotic.  I'm a but disappointed that MiniDSP and others don't offer solutions in which the DSP is actually programmable with open standards like phones or PCs, but as I understand it, many DSP manufacturers don't even expose the low level software architecture to their industrial clients.

 

As far as what is easy to buy off-the-shelf, options are more limited.  IIRs are pretty easy to compute, so in principle, it would be possible to sell a device that allows many such filters to be programmed.  As best as I can tell, however, most implementations only offer a small number of IIR filters.  A likely reason for this is that the filters are usually input by the user at a high level such as in a PEQ.  The MiniDSP devices are more flexible in that they allow raw biquad input, but they still limit the number of filters to a small number relative to what a decent FIR filter is capable of.

 

An FIR filter requires convolution to evaluate, and this is very CPU demanding.  The CPU requirement scales with sampling rate and the number of taps.  The number of taps effectively sets the minimum feature width in the frequency domain (width ~= sample_rate / taps).  Because we mainly care about frequencies in a logarithmic sense, the number of taps primarily limits what we can achieve in the low frequencies.  For this reason, IIR filters are frequently preferable for low frequency corrections that require high resolution such as narrow room modes.  For perspective, the MiniDSP OpenDRC series provides 12288 taps shared between one or two channels, which is very sufficient for mid and high .  PCs are powerful enough to process fairly large FIR filters.

 

The MiniDSP OpenDRC provides plenty of taps for mid and high frequency processing.  Where one desires more frequency resolution in the bass, when treating narrow room modes as an example, the IIRs offered by these units offer very complementary functionality.  It would be tough for me to choose one over the other here.  The IIRs might win because the bass is so important to get right.  With a PC convolver, many more taps are available, and it's feasible albeit inefficient to treat everything with an FIR.

 

Now, whether you use IIRs, an FIR, or both, the actual filter design is very important to how they will sound.  There are many ways to derive correction filters from single measurements or multiple measurements.  Methods that use multiple measurements have the potential to yield better results than methods relying on only a single measurement, even if all the measurements are taken within a small region of space.  Research has also shown that simple averaging of magnitude responses doesn't work particularly well. 

Unfortunately, most of the software that uses more sophisticated methods to derive filters from multiple measurements is proprietary.  That makes it hard to learn about the methods and to objectively compare the technologies against each other.

Link to comment
Share on other sites

3ll3d00d wrote:

 

My experience is that these filters are one of the biggest improvements I've made & that that improvement spans the entire listening area. Subjectively imaging is substantially improved, it really snaps the whole thing into place. This effect is perhaps even more noticeable with the surround sound stage which really hangs together perfectly now. I haven't experienced any downsides (like audible pre ringing) but then acourate sorts all that out for me, designing them yourself from scratch sounds like an interesting challenge for sure :)

A few questions.  Do you have any room treatments?  Have you used any other room correction technologies, and if so, how do your experiences compare?  Does Acourate use a single measurement or multiple measurements for its connections?  I wasn't able to find this on their site.  Do you optimize for a single seat or for a wide listening area?

 

I'm glad to hear you like the results.

Link to comment
Share on other sites

Do you have any room treatments?  

I do not have any room treatments over and above abundant soft furnishing. It's not really feasible in my room as it's not a massive room and it's also not a purely dedicated room atm. I attached some pics for reference. I have changed my sub since that pic for a dual 18" effort, it's still one sub in a single location though.

 

The typical acourate user seems to use pretty exotic DIY speakers in heavily treated rooms mind you, I think I'm quite the outlier in that group.

 

Have you used any other room correction technologies, and if so, how do your experiences compare? 

I've been using room correction since ~2005 when I first bought a BFD. I've also used audyssey (multeq xt only, have heard XT32 in other places) and tried manual PEQ. Acourate is a whole different ballgame, the improvement wrought by my very first attempt to use it was just enormous. I recall I got quite evangelical when I first got it working (sample flowerly language in https://www.avforums.com/threads/acourate-an-audio-toolbox.1830749/#post-20265838).Music just suddenly sprang to life really, a wonderfully balanced soundstage, deep/precise imaging & just so musical. It took a long time to get this really working for multichannel but the effect was quite similar once I got there, you just completely lose yourself in the mix.

 

Does Acourate use a single measurement or multiple measurements for its connections?  I wasn't able to find this on their site.  Do you optimize for a single seat or for a wide listening area?

 

Acourate uses a single measurement and provides a tool that allows you to precisely align the mic (it uses a rapidly beating dirac pulse played by the 2 speakers with a slight offset and hence it can measure the offset, in samples, between the two speakers at the measurement position). However it does allow you to measure, and correct, the speaker separately. The speaker correction is then embedded into the XO filter and the measurement sweep is convolved with that filter at measurement time.

 

I have noticed no downside at all to a single measurement position using acourate. The algorithms are proprietary but, as I understand it, it decomposes the measurements into the steady state portion and the transient portion & then uses this to understand what to correct and what to leave alone. I've never seen acourate over correct some mic position specific null for example. I think I'd call it a semi automated solution at best, it's not an easy tool to drive and there is a steep and long learning curve. AIUI audiolense is the user friendly option.

 

I have taken verification measurements in the past across the listening window (1 row, 3-4 seats wide) and it clearly corrects across the whole space with no obvious problem such that the entire room sounds better. For example, in amplitude terms, it achieved +/-3dB across the entire seating area from 100Hz-20kHz which tightened it up from +/- 6dB or so, the hotseat is tighter still at +/-1.5dB. 

 

Obviously there is seat to seat variation at low frequencies that it cannot possibly fix, it's not magic after all, but it does produce great sound across the listening area. I do still apply manual IIR filters to "prefilter" the correction btw, I find that manually dialling out the major modal peak allows acourate to do an even better job at low frequencies. 

 

If there's any data you're interested in seeing then happy to reproduce any graphs I have.

post-1440-0-91503300-1426797224_thumb.jpg

post-1440-0-96971300-1426797234_thumb.jpg

Link to comment
Share on other sites

Thanks for the info.  By the pictures and your description, your room is a difficult space to work with, acoustically.  Having a window right behind the heads is unfortunate, but at least you have some curtains there.  The close mounting of the front speakers is a plus.  Are they specifically designed to be wall-mounted?  Generally speaking, the smaller the room, the more improvement you'll get for a given amount of room treatment.  Even just putting some bass traps (and maybe broadband absorbers at the first reflection points) on the ceiling could help a lot.  Another thing is to consider temporary treatments that can be placed in the room during listening sessions and then removed when the room is used for other purposes.

 

From what I can tell, Accourate does a very good job of correcting using only one measurement.  It likely uses a method such as frequency variable smoothing or frequency variable windowing to apply more fine-grained correction to the low frequencies than the high frequencies.  Most of the time, low frequency response varies in space a lot less than high frequency response does.  In fact, many experts argue against trying to correct high frequencies at all because their spatial variability is generally very high.  On the other hand, when using a single measurement to do room correction, the variation of response to any particular frequency must be estimated from a model.  In reality, the seat-to-seat response will vary a lot for at least some low frequencies, and there may even be cases where certain narrow regions of high frequencies that are out of balance but don't actually vary a lot between seats.  For these and other reasons, corrections using multiple measurements have the potential to perform better than any single measurement correction.

 

For the verification measurements you report, how much smoothing was used?  The numbers are essentially meaningless without that information.  Most likely, a lot of smoothing has been applied.  I would guess 1/3rd octave or even coarser.  Try viewing the response with 1/24th octave smoothing instead.  If you're between +/- 5 dB at the main listening position with 1/24th octave smoothing, you are doing very well.  My room is much larger; my front speakers are closer, and I have substantial room treatment, but I'm still not +/- 5 dB with 1/24th octave smoothing.  If I concentrated my room correction on the MLP only, I could maybe achieve that, but I wouldn't have enough headroom to confidently play movie material at reference.

Link to comment
Share on other sites

Thanks for the info.  By the pictures and your description, your room is a difficult space to work with, acoustically.  Having a window right behind the heads is unfortunate, but at least you have some curtains there.  The close mounting of the front speakers is a plus.  Are they specifically designed to be wall-mounted?  Generally speaking, the smaller the room, the more improvement you'll get for a given amount of room treatment.  Even just putting some bass traps (and maybe broadband absorbers at the first reflection points) on the ceiling could help a lot.  Another thing is to consider temporary treatments that can be placed in the room during listening sessions and then removed when the room is used for other purposes.

 

 

They are designed to be wall mounted yes. It's really impractical atm to add treatment to that room & the asymmetry (there is an open fireplace on one side) is a further strike against that. Meaningful bass trapping can only really be implemented via soffits at the wall ceiling boundary but I don't plan to do anything like that, at least not until there is structural work in a few years time (intention is to build a baffle wall and distribute subs around the room at that point).

 

 

From what I can tell, Accourate does a very good job of correcting using only one measurement.  It likely uses a method such as frequency variable smoothing or frequency variable windowing to apply more fine-grained correction to the low frequencies than the high frequencies.  Most of the time, low frequency response varies in space a lot less than high frequency response does.  In fact, many experts argue against trying to correct high frequencies at all because their spatial variability is generally very high.  On the other hand, when using a single measurement to do room correction, the variation of response to any particular frequency must be estimated from a model.  In reality, the seat-to-seat response will vary a lot for at least some low frequencies, and there may even be cases where certain narrow regions of high frequencies that are out of balance but don't actually vary a lot between seats.  For these and other reasons, corrections using multiple measurements have the potential to perform better than any single measurement correction.

 

 

The basic guided room correction method in Acourate has 3 steps

 

1) calculate a minimum phase magnitude response correction filter by applying frequency dependent windowing (default 15 cycles left window, 15 cycles right window across the entire frequency range... you can vary these independently if you wish) & a proprietary psychoacoustic smoothing function and then inverting against a user defined target curve

2) calculate an excess phase correction filter by applying another frequency dependent windowing function (recommended is a 6/6 cycle window) & some more proprietary algorithms

3) combine with any defined crossovers and prefilters to produce the final correction

 

However if you take matters into your own hands then you can do pretty much anything you want. The prefilter functionality means you can include anything at all in your correction (e.g. a VBA filter, arbitrary biquad filters, a custom phase correction using some other windowing or calculated in some other way) & you can also embed speaker correction into the crossovers (which are convolved with the logsweep at measurement time). You can also manipulate the calculated curves as you go through the process in pretty much any way you like. It's really just down to your imagination and requirements.

 

I don't find the argument that HF can't be successfully corrected compelling given that multiple products exist that do precisely that to good effect. I can see arguments for or against multiseat measurement but ultimately the fact that there are such different implementations all achieving excellent results (e.g. dirac and listening window measurements, roomperfect & sound power measurements, acourate and a single position measurement) suggests that the algorithm and how it interprets the data it has is far more important than the measurement method itself.

 

I could do a multiseat correction in acourate but it's a fair bit of work to do so and the benefits look to be v small so it's not something I've bothered doing. If I had a trinnov, which AIUI has a pretty complete UI around manipulating multiple measurements during the correction process, then I'd probably try it anyway just because it makes it easier.

 

For the verification measurements you report, how much smoothing was used?  The numbers are essentially meaningless without that information.  Most likely, a lot of smoothing has been applied.  I would guess 1/3rd octave or even coarser.  Try viewing the response with 1/24th octave smoothing instead.  If you're between +/- 5 dB at the main listening position with 1/24th octave smoothing, you are doing very well.  My room is much larger; my front speakers are closer, and I have substantial room treatment, but I'm still not +/- 5 dB with 1/24th octave smoothing.  If I concentrated my room correction on the MLP only, I could maybe achieve that, but I wouldn't have enough headroom to confidently play movie material at reference.

 

The listening position data given was after running through acourate's preparation macro, i.e. a 30 cycle window FDW with a psychoacoustic smoothing. In octave smoothing terms, if you compare this against the same data in REW then it is somewhere between about 1/6 and 1/12 above 1kHz. Obviously not exactly the same but that is the order of magnitude of smoothing using, i.e. something approaching how we hear. The averaged data was 1/6 octave smoothed as I took that in REW for convenience.

 

I don't see much point in using 1/24 smoothing with a wide window as it's not representative of what we hear & is more an indication of the amount of reflections going on. I prefer to window and either leave unsmoothed or apply a fine smoothing. I only ever use 1/3 or coarser smoothing for a quick interchannel level check using an RTA.

Link to comment
Share on other sites

FWIW this is all 5 channels at the MLP after correction, there is a +/- 2.5dB span across all 5 channels at <1kHz and +/-1dB >1kHz. The target curve involves a 10dB tilt from 30Hz to 20kHz with most of that 30-125Hz.

 

post-1440-0-66745800-1427242654_thumb.png

 

I don't have good recent data to hand on the variation across the seats, I'll try to take some more over the weekend. 

Link to comment
Share on other sites

Archived

This topic is now archived and is closed to further replies.

×
×
  • Create New...