single driver double bass array ( a.k.a. bow your heads )

Status
This old topic is closed. If you want to reopen this topic, contact a moderator using the "Report Post" button.
i was thinking yesterday about what DBA and multiple subs have in common and arrived at a double bass array solution consisting of just one subwoofer in the corner of the room.

you simply take the 3 dimensions of the room and calculate the time delay it takes for time to travel both ways along these dimensions. this creates 3 time delays ( one for each dimension ).

then you add to the original signal the time delayed and inverted versions of the same signal. this will produce comb filtering that will automatically take care of all the standing waves ( except oblique ones ).

by adjusting the gain on the inverses you will be able to tailor the response depending on the degree of severity of the standing wave modes.

in effect the system will be canceling its own reflected sound. actually it will even provide automatic compensation for room gain ! ! !

no it won't be perfect but considering the simplicity YOU CAN'T BEAT IT.

NOW BOW YOUR HEADS FOR THE ALMIGHTY BORAT ! ! !
 
So, you have to get three 'copies' of the original signal, then give them different delays and reverse the phase, and then mix them all together with the original signal for the only one subwoofer to play.

You call that simplicity. OK, a mixer is no big deal I guess, but what about the delay?
 
Yeah but the real solution is to play your music outside, with tall towers for your speakers, and a tall tower for your chair. <grin>

Or, I guess you could cover all of the other room surfaces with speakers, each with a microphone, so they could play cancellation signals for whatever hits them. (Wow, that might get messy, fast.)

All kidding aside, maybe you should try it! But, from a corner, the "oblique" signals might be significant.

Maybe you could use something like an audio version of a Time-Domain Reflectometer. Then you could play a test "pulse" signal and see/measure all of the "times of flight" of the reflected returns, on a scope (or PC) display, and see/measure their relative amplitudes. If the three from the room-dimensions were by far the largest, for example, then your idea might start to look very good!

Cheers,

Tom

Go, Purdue!
 
Last edited:
I bowed my head... doubled over with laughter.

Your technique is used very day. You're just looking at the problem in the time domain, whereas it is usually looked at in the frequency domain.

Build a circuit (or implement in a DSP) to produce the cancellation effect you desire. Now measure its frequency response. It will look just like a series of notch filters, such as would be produced by a multi-band parametric equaliser, one band per mode.

In fact, for any given mode, the required correction is easy.

Measure the mode Q and size. For example, you might find a Q of 0.6 and a peak of 10 dB. Adjust the parametric equaliser for a Q of 0.6 and a dip of 10 dB. Sorted.
 
Your technique is used very day. You're just looking at the problem in the time domain, whereas it is usually looked at in the frequency domain.

i have thought about that. see here:

http://www.diyaudio.com/forums/digital-line-level/160835-q-about-signal-processing.html

my motivation was to provide individual pre-processing for subs in a multi-sub system. the final processing would be by an EQ realizing mirror image of measured combined response at the listening position.

the point was to come up with pre-processing that takes into account the interactions between the multiple subs.

for example if there are 2 subs at the opposite corners the time delay for two of the dimensions is simply reduced by a factor of 1/2 because the distance sound travels was effectively cut in half. with 2 subs all the odd order modes are canceled by the subs themselves and only the even ones remain to be canceled electronically. reducing the time delay by 1/2 automatically shifts the nulls to the new correct frequencies.

if the two subs are not in the opposite corners then odd modes are canceled out for only one dimension and only one dimension gets time delay reduction of 1/2.

now using EQ you could either EQ each sub individually or EQ the sum of all the subs or even first EQ each sub individually and then EQ the sum. but neither of those approaches would be optimal for getting the flattest response over a wide listening area.

since different subs couple to different modes the optimal approach is to EQ individual subs for their individual energization of standing waves and EQ the final sum for for the flat response at listening position.

but how do you EQ an individual sub for energization of standing waves ? measurement at listening position would miss some of the modes as you might be measuring in a null. the mode would then show up in the wider listening area. and of course this measurement wouldn't be taking into account the coupling of the individual sub to the one in the opposite corner !

you could spend your entire life running around with a microphone trying to determine the optimal processing for a system with lets say 5 subwoofers.

with my approach you dial each one in based on simple math and then EQ the final summed response once based on measurement at the listening position.
 
Last edited:
As was pointed out to you in the other thread, your approach is the same as applying filters in the frequency domain. It's a bit like working with optics - is light made of waves or particles?

Starting from first principles, let's take a simplest example: A room with a first mode at, say, 40 Hz, and perfect reflection. Now play a 40 Hz note through the speaker. On a piece of paper, draw a few cycles of the sine wave representing the signal being reproduced from the speaker.

Underneath that wave, and in the correct phase and timing, draw the reflected wave as it arrives back at the speaker. (Perfect mode and reflection, so it should be the original wave, delayed one cycle.)

Underneath that, draw the waveform required to cancel that reflected wave. (The same wave, inverted.)

Now add the first and last waves together. The result is the signal that will be applied to the speaker. Do you see the flaw in your argument?

In the real world, the reflected wave will not be the same waveshape or level. The reflection is less than perfect and is reduced in level. A lot of the original signal doesn't come straight back but "sloshes" around the room. A simple delayed and inverted version of the original will not be enough. As you point out, it's a losing game trying to cancel each of these secondary reflections.

If you're having trouble visualising that, some time spent with the ripple tank simulator may clarify it for you. Draw a rectangle, place a source in one corner, and adjust the rectangle size and the source frequency until you get a first mode resonance. (It's surprisingly hard to do, it does a good job of simulating a perfect room.)
http://www.falstad.com/ripple/

A DBA only works at all in a very restricted set of conditions: The room must provide a symmetrical overall acoustic environment, and the driver arrays must produce a sufficiently close to plane waveform at the frequencies of interest. Once you depart from that, such as drivers in corners and other odd positions, it all goes to pieces and you're back to Geddes or Welti's schemes. (The ripple tank simulator can produce plane waves, and multiple sources with adjustable phase between them, so with a bit of work you can simulate a DBA setup.)
 
You pay too much attention to words. Words are only there to get a response :eek:

The only thing my approach has in common with DBA is that i am using an inverted and delayed wave.

The wave i am canceling out is not the first reflection, but the SECOND reflection. Read my post above - the PURPOSE of all this is to provide pre-processing for individual subs in a Geddes/Welti type setup.

You seem to be replying to the name of my thread, not to what i have actually written INSIDE of it.

I have never claimed that it will produce, using a single sub the kind of performance that DBA offers - go ahead - try to find a place where i claim that. what i wrote is correct. you're just not reading it right :cool:
 
The wave i am canceling out is not the first reflection, but the SECOND reflection.

Oh? you said:

you simply take the 3 dimensions of the room and calculate the time delay it takes for time to travel both ways along these dimensions.

That's very definitely the first reflection, not the second.

You seem to be replying to the name of my thread, not to what i have actually written INSIDE of it.

I have never claimed that it will produce, using a single sub the kind of performance that DBA offers - go ahead - try to find a place where i claim that. what i wrote is correct. you're just not reading it right :cool:

How about this?

i was thinking yesterday about what DBA and multiple subs have in common and arrived at a double bass array solution consisting of just one subwoofer in the corner of the room.

with my approach you dial each one in based on simple math and then EQ the final summed response once based on measurement at the listening position.

I say it won't work. But go ahead and try it. Make it the subject of your doctoral thesis. I'll be genuinely happy to be proved wrong.
 
you simply take the 3 dimensions of the room and calculate the time delay it takes for time to travel both ways along these dimensions.

by the time it has traveled both ways it has already reflected once and about to start reflecting for the 2nd time from the wall nearest to the sub.

this energy to be reflected will then coincide in time with our inverted signal that will cancel it.
 
OK, now I'm really confused. What else should we be paying attention to? I was under the (perhaps mistaken) impression the purpose of language is to communicate.

Language has many purposes.

But words are mostly used to obscure and distort meanings - ask any politician ;)

examples:

terrorist vs freedom fighter

propaganda vs education

obstinate vs resolute

etc.
 
Last edited:
Status
This old topic is closed. If you want to reopen this topic, contact a moderator using the "Report Post" button.