So lets say I have an audio file, "hello.mp3". I want to split this file into all of its frequencies, so if the audio file contains 12hz, 412hz and 200hz, I get files containing those frequencies.

  • What for? What's the context? – Mark Jun 14 at 23:44
  • @Mark I'm trying to create a program that converts a file into it's different frequencies, then into text which I can put into another program that plays back the file. – KURT C Jun 15 at 8:44
  • I have given you an answer below, but in all honesty the only use I can see for this exercise is to develop a codec. The amount of text data that the process of FFT transformation would generate would be huge and you would need to provide all of this data back to the FFT library again to get listenable audio out of it. Still not fully sure I understand what you are trying to achieve here. – Mark Jun 15 at 11:27

You need to use something like libfft which can be found at http://www.fftw.org/. This will allow you to convert discrete sampled audio data to discrete sampled frequency data.

The Fourier Transform converts sequentially sampled time-domain data into sequentially sampled frequency-domain data, and then back again.

You will need to further investigate windowing and overlap-add functions as part of this process.

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.