Call Today 716.688.4675

# First order adaptive differential microphone array beamforming

Differential beamforming using two microphones, and hence first order, has two different implementations. The first involves a delay of one microphone signal  then taking the difference between the resultant and the second signal. An alternate to this approach is the so-called adaptive differential microphone array beamforming which forms two cardioids and combines them for the required spatial beam pattern.
Consider  a two  microphone array as shown in Figure 1:

Figure 1: Two microphone array

The DMA beamforming is an optimization problem to meet $N$ constraints for N microphones. For two microphones, the constrainst are used to form:

$z_f(w) = \frac{S(w)}{e^{-jw\frac{d}{c}\cos{\gamma}}-e^{-jw\frac{d}{c}\cos{\theta}} } \begin{bmatrix} 1 & e^{-jw\frac{d}{c}\cos{\theta}} \end{bmatrix} \begin{bmatrix} e^{-jw\frac{d}{c}\cos{\gamma}} \\-1 \end{bmatrix}$

and

$z_b(w) = \frac{S(w) }{e^{-jw\frac{d}{c}\cos{\gamma}}-e^{-jw\frac{d}{c}\cos{\theta}} } \begin{bmatrix} 1 & e^{-jw\frac{d}{c}\cos{\theta}} \end{bmatrix} \begin{bmatrix} -1 \\ e^{-jw\frac{d}{c}\cos{\gamma}} \end{bmatrix}$

where $\theta$ is the desired beam direction and $\gamma$ is a desired null direction. Given $\theta$ and $\gamma$, the choice of $\beta$ will determine whether the spatial beam will be a dipole, cardiod, hypercardiod or supercardiod. The final solution is given as$y(w) = z_b(w) - \beta z_f(w)$ where $\beta$ is a design parameter to shape the beam in the direction of the source signal. The optimal value for $\beta$ can be derived using a second cost function $J(w) = |y(w)|^2$. It can be easily shown that the optimal value of $\beta$ will satisfy $\beta_{opt} = \frac{2 \mathbb{R}e\{z_b(w) z_f(w)^*\}}{|z_f(w)|^2}$ Figure 2 below illustrates these 4 spatial beams.

Figure 2: Different spatial patterns

VOCAL Technologies offers custom designed solutions for beamforming with a robust voice activity detector, acoustic echo cancellation and noise suppression. Our custom implementations of such systems are meant to deliver optimum performance for your specific beamforming task. Contact us today to discuss your solution!