/fftAudioAnalyzer

An audio frequency analyzer which uses the Fast Fourier Transform algorithm

Primary LanguageJavaMIT LicenseMIT

Description

This is a simple audio frequency analyzer written in Java which uses the Fast Fourier Transform algorithm to filter the harmonics of a specified frequency from an input audio signal and compute its power spectrum. Here's a step-by-step description of what the program does:

  1. The program first samples an input signal, then computes its FT, its discretized frequencies and power spectrum.
  2. It then filters it by a specified frequency, freq1, and its first two harmonics, freq2 and freq3, in the frequency domain.
  3. Next, the inverse FT is computed from the cleaned signal and used to produce an audio file.
  4. Finally, the plots for the input signal and computed power spectrum are outputted.

Screenshots

Here's an example of a signal the program would read:

The program will then output the corresponding power spectrum of that signal from its Fourier transform: