Skip to main content

Notice

Please note that most of the software linked on this forum is likely to be safe to use. If you are unsure, feel free to ask in the relevant topics, or send a private message to an administrator or moderator. To help curb the problems of false positives, or in the event that you do find actual malware, you can contribute through the article linked here.
Topic: Logarithmic frequency scale spectrogram (Read 26090 times) previous topic - next topic
0 Members and 1 Guest are viewing this topic.

Logarithmic frequency scale spectrogram

Hi,
I wrote audio spectrum analyzer that has logarithmic frequency division with musical scales. The algorithm is similar to constant Q transform (CQT).
It is available as html5 page on ShowCQTBar Audio Spectrum Visualization

Summary of the algorithm:
  • Do pre-processing, e.g attenuate bass.
  • Perform asymmetric windowing on future samples. This is done mainly to reduce latency. But it also makes the transform similar to gamma tone filter. It uses 33 ms half Nuttall window.
  • Perform FFT on samples (N = 16384 when sample rate is 48000 Hz).
  • Do post-processing with CQT kernel similar to Brown-Puckette algorithm but the kernel is specified directly in frequency domain (using Nuttall window), and also it is actually not constant Q at low frequency.
  • Plot it (Bar graph is linear amplitude, while waterfall is square root of amplitude).

Previously, it was available as ffmpeg/mpv 'showcqt' filter, here is the screenshot:



Re: Logarithmic frequency scale spectrogram

Reply #1
The default settings on your page make for a very beautiful visualization. Your screenshot doesn't do it justice.

Re: Logarithmic frequency scale spectrogram

Reply #2
The image is from https://github.com/mfcc64/mpv-scripts
It is similar to html5 version with waterfall enabled, but with different axis image.