• WANTED: Happy members who like to discuss audio and other topics related to our interest. Desire to learn and share knowledge of science required. There are many reviews of audio hardware and expert members to help answer your questions. Click here to have your audio equipment measured for free!

Room equalization through inverse delayed and attenuated bass signals

Do you have any info whether it will be possible to filter and play Atmos with Jriver 31?

I'm currently on version 30. Since I'm using linux 99% of the time where the feature improvements are rather slow/limited, there's not much reason to upgrade at this time.


BTW, digressing from the main topic quickly, I think the new method in your latest video (only very quickly skimmed it) is thorough yet a bit over-complicated (for that particular stereo [non-bass managed] pair), and wouldn't really be infinitely much better were you to use only a few PEQ cuts for L0 plus a milder (FDW 5 cycles) excess phase inversion:

1692141350675.png 1692141365165.png 1692144829497.png 1692144835714.png
*You could boost some of dips a little bit above as well, but this is just to keep things super "basic".


Full, Early, and Late Frequency Response:
1692141612031.png 1692141630349.png
*SPL offset of -6 dB in Late FR is completely arbitrary for emphasis and not a "recommendation"


The full and early frequency curves are flattish enough considering it's a non-acoustically treated in-room measurement. On the other hand, your early-to-late FR ratio could be improved significantly if you just try to bring the Late FR down with passive/physical acoustic treatment -- e.g. absorbers and/or diffusers. Compare here: https://www.audiosciencereview.com/forum/index.php?threads/a-b-room-treatments.47093/post-1684619



Wavelet Spectrogram (normalized)
1692142310592.png 1692142319922.png 1692142335219.png

The last plot is an "idealized" minimum phase version of the same filtered response.
 

Attachments

  • OCA_left_MP_Full_Early_Late_FR.mdat.zip
    1.7 MB · Views: 56
  • OCA_left_no_EQ.mdat.zip
    3.6 MB · Views: 60
  • 1692143792853.png
    1692143792853.png
    71.7 KB · Views: 83
Last edited:
there's not much reason to upgrade at this time
But Atmos DSP capability if true, could be a game changer, a lot of people are desperately looking for it since years.

(FDW 5 cycles) excess phase inversion
I used to do that and even before REW introduced Inverse phase trace artihmetic. In fact one of my earlier videos is on that where I was using XL hacks to invert fwd EP. But my right speaker doesn't smooth enough to avoid ringing even at 2cycles fdw and at that fdw, it has very minimal effect on the coherence with the left speaker. Dual allpass filters acting fwd and backwards in time on the same frequency are fixing many of the EP problems I never thought were possible to fix. IIR filters help a little, yes but by definition they're min phase so they only effect EP a min amount :)
The full and early frequency curves are flattish enough considering its a non-acoustically treated in-room measurement
That's very true. I need room treatment but it's a science I am very ignorant of and a bit too late to jump in. I have seen room measurements when it's done wrong and it scared me.
 
Last edited:
But Atmos DSP capability if true, could be a game changer, a lot of people are desperately looking for it since years.

Ironically, I listen currently on portable speakers e.g. phone, Alexa devices, cans/IEMs despite having three proper listening MCH and stereo setups at home, and a coax speaker system in the bedroom. :facepalm:

I also am not keen on getting a "bulky" separate Atmos capable AV receiver/processor. If they can fit it into a miniDSP sized box, then count me in!
 
  • Like
Reactions: OCA
Ironically, I listen currently on portable speakers e.g. phone, Alexa devices, cans/IEMs despite having three proper listening MCH and stereo setups at home, and a coax speaker system in the bedroom. :facepalm:

Eh, that's not completely true since I also listen to my center coax speaker placed above the monitor screen in pure mono mode (low volume) while I'm working on the desk to minimize getting distracted too much.
 
  • Like
Reactions: OCA
Ironically, I listen currently on portable speakers e.g. phone, Alexa devices, cans/IEMs despite having three proper listening MCH and stereo setups at home, and a coax speaker system in the bedroom. :facepalm:

I also am not keen on getting a "bulky" separate Atmos capable AV receiver/processor. If they can fit it into a miniDSP sized box, then count me in!
There's a way at the moment and it's brilliant work but its quite cumbersome. A guy has written code (it's open source and free) which maps Atmos channels to floor channels you don't have and then you eq these channels as you wish (with all the FIR power of your PC through JRiver or EQ APO for instance) and it plays them back with its convolver again in Atmos format. The downside is you have to do the first conversion beforehand to play them right later. Also because PCs are limited to 8 channels (7.1), 5.1.2 Atmos is your only option. But it's still something. An Atmos mixing engineer admitted the base layer is usually 5.1.2 and 7.1.2 anyway and the rest is improvized by the algorithm.

Ripping EAC-3 Atmos from Blurays is quite easy with free tools like tsMuxer and Eac3To and the Atmos quality in Blurays are way above the usual streamers.

 
Last edited:
If they can fit it into a miniDSP sized box, then count me in!
Your processor and pre-amp is your PC, add a couple of Topping units (I mean if all the vibe going on here about them is true...) and some high sensitivity ceiling speakers and you will be golden (and you will have many more channels to design the "perfect" filters for ;) I can beat Audyssey calibration with 5 fixed EQ filters (GEQ not PEQ), can't imagine applying crossover phase corrections, VBAs and what have you to my satellites.
 
most notches are "maximum phase"....the more you boost them, the more they ring.
here is L0 with a minimum phase total inversion:

1692091864561.png


with minimum phase filters they are best left alone.
they can be corrected with FIR, but that is very complicated these notches are very position specific.

the only real way to deal with excess phase is to treat the room.
I'm testing the blip at 68Hz, because the filtered IR tab in REW has 63Hz preset to make testing quick.

In a previous post I saw the issue of trying to cancel the "secondary hump" as I called it. The difference between if it is an excess phase problem or not seems to be if that secondary hump is higher SPL than the primary hump that contains the direct wave and first/early reflections. Here is that post quoted;
IR overlay.png

You can see if I made an custom IR with that delay, the cancellation direct wave would cancel the original "2nd hump", but then the cancellation wave would have it's own 2nd hump. This could be good or bad, and it seems from a few trials that it's often bad because there's a high chance of phase shift over that long of a time period (look at the dramatic phase shift at 100ms for example). If it were good (destructive), then it would improve the decay, but if it's bad (constructive), then it will just make more noise at the time, in fact making the decay worse. Then I wonder if I need to "cascade" cancellation tones, to cancel the OG cancels 2nd hump? When would it end?!

Here is the 63Hz filtered IR (which is close enough to 68Hz to reveal the same issues);
63Hz normal.png
The secondary hump causing the excess phase issue is obviously centered around 70ms (after the start of the direct wave).

If I try cancel that with a basic echo wave, I can cancel the hump at 70ms, but I end up making another one at 130ms.
63Hz basic VBA.png
I tried a 2nd echo target 130ms, but it just makes an even worse secondary hump at ~200ms.

So instead, now knowing that EQ filters can cause post-ringing that is beneficial to cancelling late sounds, I applied a basic PK filter to the echo, to make it ring. This was my first attempt;
63Hz VBA+PEQ.png
The secondary hump of the echo is improved compared to basic VBA, and it is even slightly lower SPL than the original secondary hump. If I can determine more optimal filter gain and Q settings (optimal being more ringing of the echo at the time when I want it too), then that cancellation hump will come down even further.

Edit: Here's the normal response with the same EQ applied as the echo's EQ;
63Hz normal with EQ same as echo.png
Basic filters like PK/AP/Notch can't delay a tone by an arbitrary amount of time like you can with an echo in a custom IR (aka VBA). And with that echo, many new things could be possible.
 
Last edited:
optimal being more ringing of the echo at the time when I want it too
Minimum phase filters have much stronger post ringing but if you also need some pre-ringing you can try using linear phase filters, min phase filters have none. You can make linear ph eq filters easily in rePhase.
 
Minimum phase filters have much stronger post ringing but if you also need some pre-ringing you can try using linear phase filters, min phase filters have none. You can make linear ph eq filters easily in rePhase.
I haven't tried rePhase. Are there any other programs that can make different filters? But then more importantly, can these filters be put in to REW as an IR and used for testing? Because a while ago I tried to re-import a VBA IR that I had exported from REW, and the import worked, but when I convolved it, none of the phase or spectrogram data got calculated, only the frequency. It was strange. Not sure if it was a bug.
 
I haven't tried rePhase. Are there any other programs that can make different filters? But then more importantly, can these filters be put in to REW as an IR and used for testing? Because a while ago I tried to re-import a VBA IR that I had exported from REW, and the import worked, but when I convolved it, none of the phase or spectrogram data got calculated, only the frequency. It was strange. Not sure if it was a bug.
You wouldn't need more than rePhase really but there are a few paid software around. Most tools come as VST plugins for studio engineers. They talk a lot about Kirchoff EQ for example. But that's a different World.

This one has multichannel FIR testing so could be a good fit for your work and there's a free trial period:


You can import almost all FIR filters to REW, lately you can match sample counts and window sizes, too.

If you really want to design exotic filters, I'd suggest using Octave. This is the free version of Matlab. There're thousands of code and articles around for all kinds of filters. And it's a two word command to create a FIR in wav format from Octave for instance.

 
Unfortunately, it's not that simple. There are 6 reflections (floor, ceiling, left side wall, right side wall, front wall, rear wall) from two speakers and their first, second, third bounces are all in action to add up or cancel out each other in a chaotic fashion. Furthermore, depending on the frequency affected by the time delay of the bounced wave, the signal origination source will switch i.e. first floor reflection might cause a dip at 210Hz which will be from woofer or at 280Hz which will be from the midrange driver which is located at a different height to floor than the woofer. And this is all if you have flat surfaces with identical reflective properties all around the room which is never the case.

As per your questions:

1. VBA will remove "half" of the first and the largest dip inevitable in every room which is not possible with EQ and that's an audible improvement. It will boost and extend bass below the first peak although in your case that may not be audible since your system can already produce bass down to the limits of human hearing.

2. Yes because EQ only decreases the volume of the problem frequency at the source, VBA doesn't intervene at the source but wipes out its reflection permanently.

3. That's only the long wall axial mode formula and is good for double bass arrays as they have no choice but place a second sub on the opposite wall. The formula involving the sum of all three room dimensions gives a good approximation for the room resonant frequency:
f = c / (2 * (L + W + H))
There're more precise and a lot more complex methods. "Sabine formula" to calculate from the volume of the room is one of them if you're interested:
On the formula of the RT60, etc, etc, I recommend the latest advances of Mr. Ron Sauro.
Apparently at the end of this year the official papers will be presented.


written with translator

Greetings
 
There's a way at the moment and it's brilliant work but its quite cumbersome. A guy has written code (it's open source and free) which maps Atmos channels to floor channels you don't have and then you eq these channels as you wish (with all the FIR power of your PC through JRiver or EQ APO for instance) and it plays them back with its convolver again in Atmos format. The downside is you have to do the first conversion beforehand to play them right later. Also because PCs are limited to 8 channels (7.1), 5.1.2 Atmos is your only option. But it's still something. An Atmos mixing engineer admitted the base layer is usually 5.1.2 and 7.1.2 anyway and the rest is improvized by the algorithm.

Ripping EAC-3 Atmos from Blurays is quite easy with free tools like tsMuxer and Eac3To and the Atmos quality in Blurays are way above the usual streamers.


Yeah, I've seen and read the discussion about Cavern in the forums. However, at the moment, I'm using all eight channels of my MCH DAC so there's really no outputs left to use.


On the formula of the RT60, etc, etc, I recommend the latest advances of Mr. Ron Sauro.
Apparently at the end of this year the official papers will be presented.


written with translator

Greetings

Nice... This reminds me, there's lots of great content very relevant to room acoustics in John's channel. Everyone should subscribe.

Leaving most of the work up to DSP EQ to fix inherent room and speaker "flaws" will always leave something more to be desired.
 
Last edited:
I've read the entirety of this thread and I'm really confused about what the practical application is?

It seems you'd get significantly better results with room treatments, additional subwoofer(s) or better positioning.

Aside from REW, I don't think the other software(s) you're using is free or available to everyone (gear dependent), so that could be the cost of a cheap subwoofer or a gigantic frequency tuned trap.

I feel like shooting out cancellation waves and all these additional filters and other things probably has a greater potential to make things worse. Fix one problem at a lower frequency and introduce new ones further up the line.
 
I've read the entirety of this thread and I'm really confused about what the practical application is?

It seems you'd get significantly better results with room treatments,
The idea is to cancel reflections. If you have speakers with a smooth on axis bass response, then the only reason you are not hearing a smooth response in room is because of the reflections and the way they combine at the listening position (and decay is just reflections that are still reflecting). If you could perfectly cancel them at the LP with no side effects, then that would imply reduced decay, and it would make the direct wave the dominant portion of the IR, which implies correct phase and better group delay. Room treatment does this by lowering the SPL of the returning waves, whereas VBA wants to lower the SPL by cancellation at the LP.

Room treatment is the easy way to do it though, because you get the benefits without the "effort" (the effort to DIY a VBA solution, and the extra effort required from your sound system to actually output the cancellation waves). Treated room also means you will have improved SPL without any EQ, so no affects from them either. So that's all good. But what isn't good is that room treatments to fix <300Hz problems are more involved than "building insulation in a timber frame". Are they DIY friendly at all? (maybe, I have only just started looking.)

But yes, we haven't worked out how to do VBA successfully yet, and so in this thread I've just been posting my "trials and tribulations". But the screenshots of DL-ART suggests they have worked out how to do it. The difficulty is what another user suggested at the start of the thread - different propagation vectors. So whilst the direct wave of an echo can cancel any desired wave at the LP, the echo will then bounce around the room, and when you take in to consideration phase shifts and differing arrival times of the strongest reflections, then yer, it can make new problems.

This is what my most recent trial/post was looking at - filters that caused phase shift in the echo (because the filters cause specific post ringing patterns). My thinking is that if the echo has different phase shifts compared to the original wave, then the after effects of the echo may be beneficial too. Doing this I certainly managed to reduce the SPL of the "excess delay" SPL peak on the IR, but I did not manage to make it lower SPL than the direct wave and have better decay.
test1-IR.png
My next idea is to try a filter on the main wave that has a phase shift one way, and a filter on the echo that has a phase shift the other way. Perhaps this can make the decay side better? My idea is that the opposing phase shifts over time will cause the 3rd hump to cancel instead of add.

I still haven't tested cancelling one speaker with another. In a perfectly symmetrical room, L and R speakers should have the same IR at the LP and so there would be limited benefit, but that's probably never the case (definitely not in my room), and so the different IR might work together better ("different propagation vectors"). Actually, I had another thought whilst writing this post. DL-ART uses surround speakers for cancellation if you have them, and these have different IR's at the LP. Using 1 speaker to cancel 1 speaker means the cancellation wave has to be full power at the LP, which means the after effects of the echo are scaled from full power too. But if you use 3 speakers to make 1 cancellation wave (eg L cancelled by R+SR+SL), each of those echo's individually can be -9dB whilst still having "full power" cancellation at the LP. The after affects of -9dB cancellation waves with different IR's would have far less impact over time than 1 strong cancellation wave.

additional subwoofer(s)
"Multi sub" doesn't fix the decay side of things at all. Also I'm sceptical of its ability to fix an issue related to a room length mode, which seem to be the worst problems. The speaker/subs position doesn't affect the room mode because eventually all direct waves will reflect off the back wall and "become the mode". So the only benefit I can see (to the room length mode) for multi-sub (that is in phase at the LP) is that it possibly has a slightly different timed direct wave (if you set it up that way), and different reflection times relative to the LP off other walls. But the direct wave is kind of irrelevant, because that arrives within 20ms even in large rooms (20ms = ~6.9m), whereas the "peak energy time" is often much later, like in the 50-100ms range in the attached example. And reflections off other surfaces won't have gain like a room mode can (but possibly many will arrive at once). Possibly you could arrange a 2nd sub somewhere behind the LP so that its direct wave arrives in phase and time with the 1st subs direct wave, but then their physical offset could mean that their reflections were out of phase (again due to a difference of "propogation vectors").

Anyway, there are other minor benefits to the VBA method I have showed. So even if I can't reach the holy grail of cancelling all reflections, I think I will still use an "echo wave" at certain frequencies because it gives benefits that EQ filter does not (eg in the case of a long tone, it can give strong initial wave with in-room SPL "stable" secondary waves). It can also give some decay reduction.

Also it's been quite fun learning new things in this thread. I have a much better understanding of many things now. So whilst this isn't a ready to go solution, you too might like to do some experimenting? I've listed many ideas that I've not yet been able to test. However, I think I've seen your other posts where you say your room is well treated. Perhaps this means there is limited scope for VBA style improvements in your room. It would help me if you could upload some measurements so I can see for myself. L and R and sub would be good (if you have sub or subs). If you do upload, it would also help if you provide a layout of your room with dimensions (eg a screenshot of REW Room Sim).
 
As another FYI for anyone doing tests, I've come up with another "R&D" workflow, all in REW. Also I'm going to start calling it the STF (System Transfer Function) rather than the "in room IR". The STF is the speakers quirks along with the rooms contributions in 1 IR, and is what a REW sweep from the LP measures.

So like I discovered earlier in the thread whilst using Audacity, if you have (tone+echo)*STF, that's the same as (tone*STF)+(echo*STF). The same thing applies in REW. This means for testing that you don't have to make the "double dirac impulse" and convolve it with STF. Instead you can just clone the measurement, adjust it (delay, gain, apply filters), and this is your echo. Then simply add this to the original measurement. In this way you can quickly add R-echo to L-main for example, which you can't do in REW with "double dirac impulse".

Other than that, stick to using Filtered IR tab along with dBFS plot like I outlined previously. You also don't have to use MS Paint to overlay IR's like I showed if you can do it mentally. And actually, you don't have to use the % plot either. You can just do A+B (which implies invert not required), and if that's no good, do A-B (which implies invert is required). Or if you want to do it more proper, you can just count peaks along the IR. If L was cancelling L, then both first peaks are the same (both are crests, or both are valleys), so invert is required. The next peak offset is opposite (one is crest, the other is valley), so invert not required. So I just count along "invert, same, invert, same..." until I get to the peak I want.

There's still a need for Audacity at this stage, because it's good to test the effects of any proposed solution against repeating tones of different lengths. Perhaps this can be done in REW too by generating a tone WAV, importing that WAV as a measurement, and then convolving it with the desired STF.

On the formula of the RT60, etc, etc, I recommend the latest advances of Mr. Ron Sauro.
Apparently at the end of this year the official papers will be presented.


written with translator

Greetings
This was a good video by the way. I watched a few others on the channel with Ron Sauro in them too. In one of them he says something along the lines of "effective narrowband bass absorption is hard, and that the people that know how aren't giving up their secrets because they have patents and the market cornered". So in regards to my other comment about DIY bass absorption, maybe it's not so feasible.
 
Last edited:
"Multi sub" doesn't fix the decay side of things at all. Also I'm sceptical of its ability to fix an issue related to a room length mode, which seem to be the worst problems. The speaker/subs position doesn't affect the room mode because eventually all direct waves will reflect off the back wall and "become the mode". So the only benefit I can see (to the room length mode) for multi-sub (that is in phase at the LP) is that it possibly has a slightly different timed direct wave (if you set it up that way), and different reflection times relative to the LP off other walls. But the direct wave is kind of irrelevant, because that arrives within 20ms even in large rooms (20ms = ~6.9m), whereas the "peak energy time" is often much later, like in the 50-100ms range in the attached example. And reflections off other surfaces won't have gain like a room mode can (but possibly many will arrive at once). Possibly you could arrange a 2nd sub somewhere behind the LP so that its direct wave arrives in phase and time with the 1st subs direct wave, but then their physical offset could mean that their reflections were out of phase (again due to a difference of "propogation vectors").

Anyway, there are other minor benefits to the VBA method I have showed. So even if I can't reach the holy grail of cancelling all reflections, I think I will still use an "echo wave" at certain frequencies because it gives benefits that EQ filter does not (eg in the case of a long tone, it can give strong initial wave with in-room SPL "stable" secondary waves). It can also give some decay reduction.

Also it's been quite fun learning new things in this thread. I have a much better understanding of many things now. So whilst this isn't a ready to go solution, you too might like to do some experimenting? I've listed many ideas that I've not yet been able to test. However, I think I've seen your other posts where you say your room is well treated. Perhaps this means there is limited scope for VBA style improvements in your room. It would help me if you could upload some measurements so I can see for myself. L and R and sub would be good (if you have sub or subs). If you do upload, it would also help if you provide a layout of your room with dimensions (eg a screenshot of REW Room Sim).
Sorry, I wasn't trying to be a knob. Though the above part I disagree with.

Issue at 135hz is my length mode. It's a huge null given my listening position.

1Sub.jpg
FR2SUB.jpg


Added a second sub:

2SUB.jpg


Not only does it fix the issue at 135hz, it straightens everything else out.

FR comparison of problematic speaker (right) with and without second sub.

Green is 2 subs, purple 1.
FR2SUB.jpg

Decay times with 2 subs:

Decay2.jpg


Decay time with 1:

decay1.jpg


Minor difference, but it's still there all the same.

The issue is most people who go with multiple subs don't take the time to properly integrate them into the system. And keep in mind, doing either RTA sweeps or single point sweeps in nearly a 3'x3' area all yield very similar results. This to me was the biggest thing with a second sub was being able to move my head and not have any issues. Listening to music in a vise doesn't sound very appealing.

Again, not trying to be a knob, most of what your doing is over my head to begin with, but I would refute that a second sub has little to no benefit past the frequency response.
 
Sorry, I wasn't trying to be a knob. Though the above part I disagree with.

Issue at 135hz is my length mode. It's a huge null given my listening position.

View attachment 306412View attachment 306414

Added a second sub:

View attachment 306413

Not only does it fix the issue at 135hz, it straightens everything else out.

FR comparison of problematic speaker (right) with and without second sub.

Green is 2 subs, purple 1.
View attachment 306415
Decay times with 2 subs:

View attachment 306416

Decay time with 1:

View attachment 306418

Minor difference, but it's still there all the same.

The issue is most people who go with multiple subs don't take the time to properly integrate them into the system. And keep in mind, doing either RTA sweeps or single point sweeps in nearly a 3'x3' area all yield very similar results. This to me was the biggest thing with a second sub was being able to move my head and not have any issues. Listening to music in a vise doesn't sound very appealing.

Again, not trying to be a knob, most of what your doing is over my head to begin with, but I would refute that a second sub has little to no benefit past the frequency response.
Can you provide a screenshot of REW Room Sim that reflects the above room and sub positions, including any adjustments to phase/delay/gain?

Edit: The effect of a room mode on the listener is dependant upon the listening position. In some spots there can be massive gain, in others there can be no affect, and in others there can be cancellation (the null). Like the following shows. The relationship of those peaks and nulls along a rooms length don't change, just the frequency depending upon the room length.
wave.jpg

Decay2.jpg


Decay time with 1:

decay1.jpg

Edit2: Just looked at your decay plots a bit closer. At all other frequencies the decay is unchanged. At 135hz, it depends how you look at it. There's 2 ways to look at decay: 1) time to get to a fixed dB, 2) time to get to a relative dB (relative to the SPL peak).

The 1st way is kind of irrelevant, because if the room is unchanged but you get to a fixed dB sooner, it just means the starting SPL must have been lower. Your 1 sub graph shows the 4th slice has dropped below 60dB, whereas the 2 sub graph shows it takes until the 6th slice to drop below. The rate of decay is not improved, just the starting SPL. On the waterfall plot you would see this as a slope with the same angle, just a different height.

The 2nd way seems to be what RT60 is (time to get to -60dB). If the rate of decay was improved, the slope on the waterfall would be steeper, and the RT60 time improved. In your 2 sub graph it goes -20dB (79 to 59) in ~5.5 slices. On your 1 sub graph it goes -20dB (67 to 47) in ~5.8 slices. Those numbers are eyeballed, but they certainly to be in the same time range (5.x time slices) to get -20dB.

Another sub can't reduce the decay time unless it is causing cancellation at the LP. The only other way to reduce decay time is with more absorption (remove the energy from the waves so they get to -60dB sooner).

most of what your doing is over my head to begin with, but I would refute that a second sub has little to no benefit past the frequency response.
I'm no expert either. Everything I know (or that I think I know) has been learned in the course of this thread. Multi sub has obviously fixed your SPL at the moment of "peak energy". Your room sim screenshot will really help me understand why the issue was there in the first place, and why multi sub helped it the way it did.
 
Last edited:
Back
Top Bottom