The other method is to place an echo canceller on each microphone. This makes the amount of computation depend on the number of microphones. There are some things we can do to decrease the workload. One is to use a block exact algorithm. Also, some of the work (inverting the correlation matrix) done by the FAP algorithm depends only on the reference signal. So, this computation is done only once. Beyond these few tricks, we'll just have to optimize our code and find a Digital Signal Proecessor (DSP) that can handle the work.

Here is the output of a 16 microphone simulation. Some of the noise can be removed from the signal using a thresholding technique. If you compare the second signal to the first one, you might notice it sounds like the talker has a hand over his mouth. This is because the delay-and-sum beamformer acts as a low pass filter. There are ways of dealing with this. By applying a Finite Impulse Response (FIR) approximation of an inverse filter, there is some improvement in the resultant signal. For this simulation the time delays were known ahead of time.