Menu

SoftwareFAQ

Frequently Asked Questions

Microphone array configuration
How should I configure the microphone array?

There is no unique configuration for the microphone array, and this is one strength of ManyEars as the array can be adjusted to the physical shape of your setup. However, you must keep in mind that some configurations may introduce limitations.

The origin of the xyz axes is generally located at the center of mass of the microphone array.

The eight microphones can be positioned in a cubic-shape. This configuration allows source localization in three dimensions for all directions. The distance between the microphones can usually vary between 10 and 40 centimeters.

It is also possible to position the microphones in a arbitrary shape array. As long as the microphones positioning spans the three xyz dimensions, the localization in three dimensions in all directions is possible.

The microphones can also be positioned in a circle. This configuration allows source localization in three dimensions only for half a sphere. In fact, it is not possible to discriminate between a source located above or below the circle.

The microphones can also be positioned in a line. This configuration allows source localization in two dimensions on a circle around the line array.

Number of tracked sources
How can I increase or reduce the maximum number of sources tracked simultaneously?

The maximum number of sources that can be tracked simultaneously is set by the parameter P_GEN_DYNSOURCES. The parameter P_BF_MAXSOURCES should not exceed the parameter P_GEN_DYNSOURCES. The system would still operate properly if P_BF_MAXSOURCES exceeds P_GEN_DYNSOURCES, but this would not improve the performances and thus would waste computing power.

Computational load
How can I reduce the computational load of the system?

Many things can be done to reduce the computational load of the system. These modifications may be introduced:

  • Reduce the number of scan of the sphere during the localization step. To do so, try decreasing the parameter P_BF_MAXSOURCES. If many sources need to be localized simultaneously, this may reduce the performances. If only a single source needs to be localized, the parameter P_BF_MAXSOURCES may be set to 1 and this will not affect the localization performances and will reduce significantly the computational load.

  • Reduce the number of particles in the particle filters. This will however reduce the tracking performance of the sound sources. The number of particles can be set with the parameter GLOBAL_NBPARTICLES.

  • Reduce the number of microphones. This may reduce the performance of the overall system but will mostly depends on the microphone array geometrical configuration, the reverberation and the noise of the room. The number of microphones introduce a computational complexity of O(n^2) (more precisely some computations are performed for each pair of microphones, and there are M(M-1)/2 pairs for M microphones). For instance, the complexity when using only 6 microphones is 54% the complexity when using 8 microphones.

Source detection
The system is not detecting any source. How can I fix this?

Many things can be done to improve detection:

  • Reduce the energy threshold P_BF_ET.
  • Reduce the new source threshold P_MIXTURE_NEWTHRESHOLD.
There are a lot of false detections. The system seems too sensitive. How can I fix this?
  • Reduce the number of tracked source to the maximum number of simultaneous sources that are to be tracked simultaneously (see section on the Number of tracked sources)
  • Increase the energy threshold P_BF_ET.
  • Increase the new source threshold P_MIXTURE_NEWTHRESHOLD.
Separated streams
When I listen the separated streams the signal is clean during the first seconds and then the sound vanishes. How can I fix this?

This usually happens when the separation algorithm diverges. This means that the update step is too large and should be reduced. To fix this, try decreasing the value of the parameter P_GSS_MU.

The separated sound streams are distorted. How can I fix this?

This usually happens when the output gain is too large. The separated streams are amplified and then clipping occurs when they are converted to WAV files. To fix this problem, try decreasing the value of the parameter P_OUT_GAIN.


Related

ManyEars-Wiki: Main_Page