I wandering if the following steps are practical or not?

  • Import a sound in wav format, if not (for example, mathematica does not support ogg) try to convert it into wav (what's the simple rate should be then?)
  • Use frequency modulation and amplitude modulation to detect the best remove effect
  • Use BandpassFilter to filter

How can I do this exactly, I only have some rather rough ideas, please help me move on!


You can import wav files using the Import command as discussed here, so this part is straightforward. To remove noise is not a simple matter. First, you need to identify the range of frequencies in which the noise lies. This might be done using the Fourier command, but is, in general, a nontrivial task. You might find information about this step here which shows how to identify the particular frequencies when using the Fourier command. Once the offending frequency regions are identified, you can filter them using the BandpassFilter command by choosing to remove the frequency regions in which the noise (but not the signal) lies.

  • $\begingroup$ Thanks a lot, in the second step, i.e., identify the range of frequencies of noise, can there any way that is just like we listen the radio, choose the best frequency modulation and amplitude modulation such that the main sound be most clear? $\endgroup$ – van abel Oct 7 '13 at 6:07
  • $\begingroup$ When you are using a radio, you are "tuning in a station" -- this only works because the information is being transmitted. In a wav file, there is no transmission, so no tuning dial. One thing you can sometimes do is to find a place where there is only noise. This shows you the spectrum of the noise part, and so you can then (sometimes) build a filter that removes only these frequencies. $\endgroup$ – bill s Oct 7 '13 at 15:37

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