Musigram

A spectrogram tool optimized for music analysis and transcription.

Open Example File

Quick Help

Use your mouse to navigate the spectrogram. Move forward and backward in time with the mouse Scroll. Use Shift + Scroll to Zoom In and Zoom Out. Alternatively, you can use Arrow Keys.
Analyze the spectrogram with your cursor. Mouse over the notes to see what note it is. Harmonic lines are automatically rendered at your cursor. Press P to toggle between peaks and spectrogram view.
Use Space to play the file. The playback starts always from the cursor location. You can set the cursor with a mouse click into the spectrogram. Use Shift+click to unset the cursor.
The file does not leave your computer. The processing is done locally. The analysis takes a few seconds, depending on your CPU speed. Press Ctrl+Q to close the file.
Use Shift+Space to start playback with camera tracking and continuous animation. Press Space again to stop playback.
The right panel shows the frequency spectrum of time under your mouse cursor. The chord analyzer shows the sum of frequencies of all harmonics for each note.
Use Alt+Click to define bandpass filter range. If active, the playback will play mostly the frequencies inside the range.
Use Right Click to play virtual piano to quickly identify the given note. If you hold alt, you will hear sine wave instead of piano notes.
Use Alt+B to detect beats (experimental feature). Be aware that the audio file is sent to backend server for processing.

License

This software is completely Free to use.

Contact

If you have a suggestion or found a bug, please contact me at
[email protected].

Your feedback is appreciated.

Changelog

01.09.2024

Added beat detection on the server. Updated homepage with more help images.

07.08.2024

Add "Open Example File" function with preview of beat tracking and chords.
Add sine wave generator on alt right click

04.05.2024

Fix for piano keys, mouse right click plays the note as well

24.04.2024

Added working piano keys

23.04.2024

Highlight peaks and arrow keys controls

25.11.2023

Chord analyzer respects bandpass selection

24.10.2023

Added bandpass filter feature to playback

17.10.2023

Added continuous playback animation

16.10.2023

Fix playback reset issue

15.10.2023

First public version

About

Musigram shows the frequency spectrogram of an audio file and allows you to inspect energy levels of individual note frequencies with a mouse. There is no note detection as it is not reliable in complicated pieces where a lot of instruments overlap. It is just raw frequency representation of a song. You can also play the virtual piano notes to easily identify the notes.

How it works

It computes the Discrete Fourier Transform at specific frequencies within the range of musical instruments. FFT is not suitable in this case, so I used DFT to gain more control over frequencies and window size. The window size is not fixed; it gradually decreases with higher frequencies to prevent a blurry spectrum at low frequencies and achieve sharp time accuracy at higher tones. I adjusted the parameters to make the spectrogram look very clear. I used the Goertzel algorithm to speed up the DFT computation. For sharpness, there is a peak detection post-processing step.

Also, check out one other tools from my MusiTools project.

Processing on the server, it might take a while ...