I have 2 kind of signals (refer figures) in a folder. One is band limited to 4khz and another is band limited to 8khz, both are with sampling frequency 16khz. I need to separate them. Any idea??

enter image description here enter image description here

  • $\begingroup$ are the signal mixed together ? or they are present in different files and you just want to know which file has 4 khz bandwidth and which ones are 8 khz bandwidth. $\endgroup$
    – Arpit Jain
    May 9, 2018 at 4:19
  • $\begingroup$ There are several wave files. They are mixed together in a folder. Also they are large in number. I can't separate them by hand by looking at spectrum section. $\endgroup$ May 9, 2018 at 4:27

1 Answer 1


As mentioned in comments that the 4Khz and 8 Khz bandlimited files are kept separately but in same folder and problem is to segregate them into separate folders.

One can use scripts written in Matlab or Python for doing this, procedure could be as follows :

  • Read each file (this could be easily automated in matlab/python) from folder.
  • split each file into frames, take FFT of frames.
  • for the 4 Khz band limited files the magnitude of upper half of FFT coefficients will be very less, but for 8Khz magnitude of upper half of FFT coefficients will be significantly high.
  • the above logic could be automated by keeping fixed threshold on magnitudes of FFT coefficients.
  • based on above threshold, files could be moved to separate folders.

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.