Page 1 of 3

Acourate and the unbalanced stereo setup

Posted: 13 Jul 2021 15:42
by UliBru
I would like to take the opportunity to fill the summer hole with another small tutorial on Acourate.
This time you could compare the summer hole with a bass hole, which can result from unbalanced conditions of a given stereo arrangement. Examples would be an L-shaped room, an unbalanced setup (one speaker in the corner, the other speaker in the middle of the wall) or unbalanced furniture.

The starting point is a given system in an L-shaped room. The test convolution shows the unsmoothed result of the correction
Image
So far so good, so far ok.

But if we now add the impulse responses we get a sum frequency response
Image
which shows a clear dip in the marked area. I'm not just talking about the narrowband hole, but also about the drop in the range 35 Hz to 70 Hz. Just where you need the bass for warmth it is missing. Although both channels are ok in themselves.

What can be done now? One approach, perhaps often used unconsciously, is to change the target curve with a bass boost, e.g. with a bass hump at 60 Hz. This means, however, that you put more energy into the LS, the membranes have to work harder.

Another approach is presented here:
The minimum in the marked range is at 49.796 Hz, displayed on the right of the frequency response chart.
Now a sine with this frequency is generated with Generate - Tone Generator and the two impulse responses are each convolved with the sine.
The time diagram then shows
Image
If you zoom into the stationary area in the center (=steady state), you can see that the oscillations are in opposite phase. The sound components cancel out each other.
Image
The whole thing happens already during the transient stage, you can see that the right channel is delayed somehow. Although both channels start at the same time.
Image
The cause is to be found in the L-shaped room, the bass spreads out non-symmetrically. And this results in other reflection states.

Now you can create an allpass filter at 49.796 Hz by Generate - IIR filter, as a further parameter the quality is to be indicated. Here you have to play a little bit. In our case Q=4 is chosen. Independently of the Q (which in principle influences the group delay) a phase curve results which starts at 0°, then shifts the phase at the selected frequency with -180° or -Pi and then runs in phase again in the upper frequency range. The Q defines only the steepness of the curve.
Image

Now the other channel is to be convolved with the allpass filter, here the left channel. The right channel already has the delay.
The result is then cut back to the original length from start position 0 using CutNWindow.
Now we get a new sum frequency response (brown), shown in comparison to the previous sum (blue).
Image

As you can see, just shifting the frequency range around 50 Hz over phase/time produces a clear improvement. And this without additional energy expenditure!

Finally the task remains to fold the corresponding correction filters with the allpass filter (generated per sample rate) and to cut them back to the correct length.

The result is worthwhile, at the listening position the bass is now present as it should be. The additional delay is not really noticeable (as you can see, the room plays it own role, too).

PS some more remarks:
- since every configuration is different, you really have to try, so apply a little playfulness. There are also narrow holes where it is not worth use this approach. In our example, trying to fill the hole at 64.6 Hz is counterproductive.
- Theoretically you could reverse the allpass and then fold the right channel with it. The sum frequency response is then also ok. However, this creates a clear preringing and that is not really desired.

Re: Acourate and the unbalanced stereo setup

Posted: 14 Jul 2021 04:06
by Ecwl
Wow… This is amazing. I still have to play around with the Q to avoid the new phase shift causing other unwanted dips in other frequencies.
But I presume the phase shift cannot be a pre-filter in the workflow as it’ll get corrected. I’m assuming I would have to add the phase shift after the convolution filter is created to the correct channel. And I would have to apply it to each sampling frequency. Too bad there is no automated workflow for this but I can see it being very beneficial and worth spending the extra time on… Absolutely fantastic and also shows me how little I know.

Re: Acourate and the unbalanced stereo setup

Posted: 14 Jul 2021 11:14
by UliBru
Yes, the allpass has to be convolved with the correction filter = behind macro4. Otherwise the excessphase correction would try to correct the allpass too.

Re: Acourate and the unbalanced stereo setup

Posted: 15 Jul 2021 14:52
by UliBru
There is an updated Acourate version V1.10.5 available on request.
It allows to specify the frequency plus quality Q and to select the desired channel where the allpass has to be applied.
Then macro4 will use the filter for all correction filters to be created. This includes all selected samplerates.
Thus a manual convolution of all correction filters is not necessary.

Of course it is still required to find the proper values for f and Q. I cannot imagine an automatic processing here.

Re: Acourate and the unbalanced stereo setup

Posted: 16 Jul 2021 00:46
by Ecwl
That’s fantastic. Although I just finished convoluting and CutNWindow my new filters already.

But I’ll be contacting you soon enough for the new version as I might have a new pair of speakers soon. Thanks.

Re: Acourate and the unbalanced stereo setup

Posted: 24 Jul 2021 12:33
by UliBru
Hi all, I'm still working on this topic. And so I've found another (more simple) way to improve the result. So here is another example (btw using a mono subwoofer):

So I run the usual chanin of macros up to the test convolution. Curve3 to 6 are deleted, they are not necessary.
Then I calculate the excessphase of curve1 (Test1) by TD-Function - Phase Extraction into curve3 and maximise the group delay chart by checking the View - Phas radio button. This shows the unsmoothed excessphase for the complete frequency range.
Image
We are not interested in the "needles", which are characterized by very high quality values Q. It nsimply not realistic. But let's look at the range below 100 Hz, so we zoom in.
Image
Setting a marker in the peak center tells us a frequency of 64.4 Hz. So in a first quick show I create an allpass (Generate - IIR Filter) with parameters f=64.4 and q=5. Because the pulse peak of the measurement or test convolution is given at sample 12000 (pulse length 131072. Or 6000 with pulse length 65536) I apply TD-Functions - Rotation to rotate the allpass by 12000 samples = 250 ms @ samplerate 48000. This results to:
Image
Q is too high, the frequency is a little low. A few iterations of allpass creation + rotation finally leads to parameters f=65 Hz and Q=3.4. The chart now looks like:
Image
It looks nice, doesn't it? So I create this allpass once again (= without any rotation) and save it as e.g. AP65_3.4.

The same procedure is run again with the right channel result Test2 (not shown here). Despite the mono sub I get another allpass with f=92.1 Hz and Q=5.2.

Before I apply the allpasses as prefilters in macro0 let's take a quick look at the step responses of the test convolution
Image
We can see how the step responses differ with low frequency.

Ok, now I use the left AP65_3.4 as right prefilter and the right AP92.1_5.2 as left prefilter in macro0. Then I just run macro4 and 5 once again.
We get new step responses
Image
The step responses are now running way more in parallel.

Of course also the sum of the pulses gets improved. The frequency chart shows a comparison between non-compensated and compensated sums.
Image
Clearly the soundwave cancellations between 50 Hz and 100 Hz due to a non-symmetric setup are pretty much compensated.

Re: Acourate and the unbalanced stereo setup

Posted: 24 Jul 2021 17:15
by Ecwl
Wow… Just tried this.
Basically, it sounds like instead of trying to compare left & right channels and finding where the phase difference is to cause the null, you’re actually measuring the left channel bass phase shift and right channel bass phase shift independently and then correcting both so that they’ll be in phase to stop causing the null.

The end result is that you are actually correcting the room phase shifts done to the speakers and you actually end up increasing the IACC instead of decreasing it when you’re just correcting for the phase difference.

The sonic results really blew my mind. Because not only does it fill in the null in my asymmetric room, there is this added coherence to the sound that I didn’t get with either the previous single channel phase difference correction or even with the original no-phase correction.

This is super cool because usually with these types of corrections, it’s all about trade-offs. You gain something and lose a little something. It’s just that most of the time, the gains are way more than the losses and there is no free lunch. With this new method of approaching the correction, I’m only hearing gains with zero compromise.

Re: Acourate and the unbalanced stereo setup

Posted: 24 Aug 2021 15:30
by Ackcheng
This is really amazing. Thanks Uli

Re: Acourate and the unbalanced stereo setup

Posted: 07 Sep 2021 15:15
by jvvita
Hello,

just wanted to share my experience designing this prefilter.

In the below chart, you will find the measurement of the frequency response after filter design. Left and Right channel are curves 1 and 2. Their addition (TD-Function) is curve 3. Curve 4 is another measurement, taken in mono, showing a big dip around 44hz frequency (all graphs are 1/3 octave psychoacoustics smoothed).
Amplitude.png
Amplitude.png (35.23 KiB) Viewed 623 times
Convolving right and left channel with a 44hz sine, we get the time result below, where it seem the transient is ok, but the steady steady is 180o out of phase.
Time1.png
Time1.png (30.39 KiB) Viewed 623 times
Designing an all pass at 44hz, q=1, and convolving, we get the below time chart, where the transient seems worse, but the steady state is in phase.
Time2.png
Time2.png (28.64 KiB) Viewed 623 times
Another set of measurements show the corrected response (this time, the measurement is limited to 300hz to go easier on the tweeters)
Amplitude2.png
Amplitude2.png (20.16 KiB) Viewed 623 times
Listening tests show a clear improvement in the 44hz region.

Any thoughts? Is there anything else I should try?

Re: Acourate and the unbalanced stereo setup

Posted: 07 Sep 2021 16:50
by UliBru
Hello Jose,

so far ok.
Actually I'm working on an improved method. Keep patient.