0
\$\begingroup\$

I am trying to implement a cardioid pattern with two microphones.

I was reading this paper titled "Digital Filter Array Optimization for Directivity Pattern". The link to download the paper is this.

The premise of the paper is

"Two microphone arrays are used for producing a specific directivity pattern by a time delay between the two microphones. Directional hearing aids are examples of the two microphone arrays application. In this paper, the conventional time delay method was replaced with a digital filter method for directional digital hearing aids."

On the second page of the paper, it states,

"If DF1 and DF2 are optimally designed so as to produce the same magnitude response, but the constant phase difference response between DF1 and DF2, the resulting y[n] in figure 2 should be the same as x[n] in figure 1. "

I'm guessing the above statement should instead read "so as to produce the same magnitude response, but varying phase difference response"

My guess is by keeping the magnitude the same between the two signals, but varying phase should be equivalent of causing a time delay between the two signals. Am i right?

If so, how can I calculate filter co-efficients to vary the phase between the two signals in order to produce an exact time delay of few micro seconds?

\$\endgroup\$
  • \$\begingroup\$ Sounds like the paper author was being lazy, and wrote phase when they meant time delay. I think it would be far more likely to be expressed as constant time delay, rather than linear phase difference (which means the same thing). \$\endgroup\$ – Neil_UK Mar 25 at 10:53
  • \$\begingroup\$ A steer, as you've had no further replies. Getting differential time delay with FIR filters is dead easy, more problematic with IIR. Bessel filters give you flat delay, but a droopy passband, which may not be what you want. Cheby filters can give you reasonably flat delay to about 50% of the passband edge, which if you have bandwidth to burn can make for a reasonable design. Once you have a prototype with classical analogue filters, implement in IIR. \$\endgroup\$ – Neil_UK Mar 25 at 14:14
  • \$\begingroup\$ @Neil_UK you mentioned that it is more problematic with IIR filters. What kind of problems arise with IIRs? Is it the frequency shift ? \$\endgroup\$ – whoknowsmerida Mar 26 at 5:03
  • \$\begingroup\$ It's not so much that IIRs are more difficult, they are no more difficult to design than analogue time shifting filters, the simplest method of design is through pole zero placement, it's just that FIRs are much easier as you have explicit access to the impulse response. \$\endgroup\$ – Neil_UK Mar 26 at 7:05
  • \$\begingroup\$ Let's see if I can give you a start. What's the bandwidth of the signal you want to delay? What's the sampling rate? Do you have some reason for wanting IIR over FIR? What are your DSP/computing resources (word length, fixed or floating point, multiplies per second)? What fidelity of delay do you need (accurayc in time, flatness in amplitude, freedom from aliasing artifacts)? Then we can think about design. \$\endgroup\$ – Neil_UK Mar 26 at 7:08

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Browse other questions tagged or ask your own question.