consider a room with some sound resources and several mics, these sound resources almost concurrently emit sound signals. As for one mic, it may pick up sound signals from different sound sources which are overlapped.

I am just asking for a brief idea of the separation of these overlapped sound signals for the further process such as TDoA estimation. I have no idea which is the current mainstream technology to deal with this kind of problem? I was thinking about the acoustic signal's encoding or modulation so mics can identify which signal from which sound source.

Thank you in advance

Following your idea, I tried 2 chirp signals with frequency division in Matlab, then use band filter+cross correlation algorithm, the result is quiet promising.enter image description here

So instead of the chirp signal, did you just use sine wave signal(tone)?

  • $\begingroup$ You may use, for instance, a set of tones (at least three are needed to detect two coordinates when using TDoA), and distinguish them by using a set of matched filters, or even a set of band-pass filters. $\endgroup$ – Luis M Gato May 22 '18 at 13:27
  • $\begingroup$ Are you trying to make a spacial graph as a TDoA? Shazam identifies identical sounds by fourrier, using a fingerprinting index of the fourrier images. that allows the signals to be the same fingerpring when replayed at different speeds. Generally, a tone and peak comparison system will be the simplest way, because the sounds are frequencies and peaks. $\endgroup$ – aliential Oct 16 '18 at 8:47


Here is a couple of insights for your system:

1.- The different sound sources must play different signals (beacons), that may be resolved at the receiver device. A simple example would be to transmit a set of tones (one by speaker) with different frequencies. A slightly more complex solution would be to transmit other kind of signals with low cross-correlation (e.g. Gold, Kasami or Zadoff-Chu sequences).

A different approach at all would be to transmit actual modulated messages that somehow don't interfere each other at the receiver. This is usually even more complex.

2.- Regarding the method for distinguishing the different signals at the receiver, the typical solution is to use a set of matched filters (one filter for each beacon signal). Then, determine the TDoA by measuring the differences between the time indexes in which you find peaks at the matched filters' outputs.

On the other hand, if you really need to use modulation/encoding, a simple set of matched filter won't be enough, you will probably need to implement actual demodulation schemes, which may include synchronization algorithms and other practical restrictions.

According to my personal experience, and considering your introduction lacking much detail, you may successfully use a set of (frequency separated) tones at the transmitter, and a set of matched filters at the receiver. At least as a first approach, and if the performance is not good enough for you, you may use more advanced techniques. I honestly believe that in most cases no further cumbersome techniques are required.

I hope this helps!

| improve this answer | |
  • $\begingroup$ if you consider matched filtering, do you use chirp signal? There's indeed a way of chirp signal modulation( up/down rate modulation, I don't remember clearly) Thank you for your help and your ideas are of great values $\endgroup$ – WSL May 17 '18 at 19:44
  • $\begingroup$ You may use chirps indeed, they may also provide a quite low cross-correlation. However, I didn't mean using chirps, but simple non-modulated carriers. More simple, and, which is the most important: it works! Perhaps for your application you may have additional requirements that I don't know. But for the information you provided, a simple set of non-modulated carriers will do. I have done it before. $\endgroup$ – Luis M Gato May 17 '18 at 22:14
  • $\begingroup$ I tried your idea with Matlab and I uploaded a pic from Matlab simulation result in my original question $\endgroup$ – WSL May 19 '18 at 4:54

Your Answer

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

Not the answer you're looking for? Browse other questions tagged or ask your own question.