Multi-mic noise reduction software is a signal enhancement algorithm that combines information from multiple microphones to improve the signal to noise ratio. Distributed multi-microphone systems differ from microphone array systems. In microphone array systems, the relative location of the microphones is known. In distributed systems, the microphones are placed ad hoc within the environment. With microphone arrays you can apply acoustic beamforming to spatially filter sound from a particular direction to improve on the perceived distance of the sound. However, when the distance between the user and microphone array becomes large, resulting in a low direct path to reverberation ratio, the advantage of microphone array beamforming is reduced. Therefore, distributed systems are preferred when the audio occurs in large spaces, and spaces with long reverberation times. High quality audio can be achieved when the microphones are placed in a room at the expected location of the users and an algorithm that intelligently mixes the signals together is applied.
The question becomes, how to do I intelligently combine the distributed microphone signals? The first step is to perform a calibration procedure on the microphones so that the microphones have equal amplitude under idle conditions. A voice activity detector (VAD) is applied to each of the channels to discriminate between voice signals and non-stationary noise signals. For active voice channels, the channel with the most power will have the highest signal to noise ratio, and shall be used for audio transmission. Finally, the unused microphones can be used as noise references for a multi-channel Wiener filter to reduce the noise present in the selected microphone.