3
$\begingroup$

Everyone uses Fast Fourier Transform, which is fast at the detriment of precision. The input audio has sample accuracy and the FFT has 1/64 sample accuracy.

What algorithms can output high resolution frequency analysis of audio that varies over single samples, and that can divide input audio into i.e. 1024 bands of different frequency sines, each of the 1024 tracks is 22k sample rate?

$\endgroup$
  • $\begingroup$ I also don't understand why there aren't any pictures of sample accurate spectrograms on the internet. has no one actually uploaded a pic of one? they are more awesome than FFT, it's the difference in between an icon and 1080p resolution. $\endgroup$ – com.prehensible May 1 '15 at 6:44
7
$\begingroup$

You don't have a loss in time precision when using FFTs because the FFT is fast. The FFT is just a fast algorithm for implementing the discrete Fourier transform (DFT), nothing more. Instead, there is an inherent tradeoff in time and frequency resolution due to the Heisenberg uncertainty principle. While its statement is explicitly focused at quantum mechanics, the same underlying principle remains true: the more precisely you know the frequency of a signal, the less able you are to localize it in time.

With that said, there are another class of techniques known as bilinear time-frequency distributions that are appropriate for some applications. One example is the Wigner-Ville distribution. In short, these techniques can provide simultaneously high resolution in time and frequency. The cost, however, is the presence of spurious features in their resulting outputs. There do exist modified versions of these distributions that can reduce the magnitude of the artifacts, however.

$\endgroup$
  • $\begingroup$ A sound can be devided into many different sines, each with a different phase and amplitude and frequency. making a graph of a one second file could end up with 1gb of data which even shows the phase of the sines that make the sound, and every bit of the graph would be different and accurate. are there any programs that can do that and pics online of the sound in single bit accuracy? I can use DFT to write 1GB of accurate data from a small sample? $\endgroup$ – com.prehensible Apr 30 '15 at 6:44
  • $\begingroup$ This isn't really the place to go for software recommendations; try SR.SE. Using the sliding DFT, it's certainly possible to calculate a DFT for every sample, but you still run into the uncertainly principle that I noted above. $\endgroup$ – Jason R Apr 30 '15 at 11:12
  • $\begingroup$ It's fair enough if someone can answer "this audio DSP program can do sample accurate spectrograms" if such a program exists. The DSP forum can reasonably cover signal processing tools, not just the maths. I meant that if someone finds a sample accurate spectrogram online, please pass on the info! the only one i know of is one written by myself using some amator experiments: forums.winamp.com/… $\endgroup$ – com.prehensible Apr 30 '15 at 17:50
  • $\begingroup$ As i understand the uncertainty principle, it results in detected frequency signals on the spectrogram to be blurred and wide on either side of the their precise actual frequency value. Whereas an ideal sine wave of 440 should draw a spectrogram line at 440 and not 441 and 339, it draws a bell curve kind of distribution range across nearby frequency values, say 440 +/- 3. so the frequency value of the spectrogram always appears smudged in the frequency domain. That said, as it is a bell curve with many many samples, the average middle/ highest value always lies on the 440 line. $\endgroup$ – com.prehensible May 1 '15 at 2:52
  • $\begingroup$ in a sample accurate spectrogram experiment, i did see that the more i focused on the precise detection of frequency, the more the time values shifted / became delayed. that said it seemed to be more of a time delay effect than an uncertainty. i don't know if the time shift was uniform across frequencies or more accurate at high frequencies. I would be surprised if someone has written a sample accurate spectrogram commercially, as the results are visually astonishing and worthy of web references, perhaps only in mathlab. $\endgroup$ – com.prehensible May 1 '15 at 2:58
0
$\begingroup$

https://patents.google.com/patent/US20180238943A1/en

Zynaptiq has one, maybe from the patent you can see how they do it.

(sorry old thread, but this is interesting info in the patent!)

$\endgroup$

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.