Version 1.0

Spectrodraw Basic Features

Tool shapes:

Brush – A simple circular brush that paints magnitude/phase on the spectrogram. Use brush size to control the drawn area and the sliders to adjust brightness/phase.

Brush example

Rectangle – Draws a filled rectangular region across time and frequency. Rectangle size is independent of brush size.

Rectangle example

Line – Draws a line of frequencies. Change brush size to adjust the line thickness.

Line example

Image overlay – Paint an image onto the spectrogram. Change brush size to adjust the image size. Image overlay follows opacity, phase shift and phase strength but ignores brush brightness.

Image overlay example

Tool effects:

Fill – Applies solid color to the spectrogram.

Blur example

Blur – Averages magnitude/phase across a circular region to reduce precision in time and frequency. In blur mode the "Brush Brightness" slider is replaced by a "Blur Radius" slider.

Blur example

Eraser – Clears magnitude and phase data inside a circular region. Eraser ignores brush opacity/brightness and phase settings so it reliably removes data.

Eraser example

Amplify – Multiplies magnitude by a factor between 0.0 and 2.0. Phase is affected in the same way as when using the brush.

Amplify example

Noise Remover – Sets all magnitudes under a decibel threshold to 0.

Amplify example

Phase Texturing

Default silence - On startup SpectroDraw adds a tiny static buffer so the canvas isn't perfectly silent. This small amount of static prevents phase interference when you first draw with zero phase strength, so you can hear results immediately.

Phase strength - Controls how strongly the phase texture influences drawn audio.

Phase strength examples

A brush drawn on the default silence with phase strength at 0, 50, and 100

Phase texture - If you've ever tried recreating a sound effect in SpectroDraw, you've likely had the question: How come my spectrogram looks the same, but sounds completely different? The answer is likely that the phase texturing was different. A crucial but often overlooked part of spectrograms, phase texturing significantly changes the way your drawings sound. The basic version offers thirteen phase textures, including harmonics, static, and flat (shown below).

Phase textures

Harmonics, static, and flat phase textures drawn at pitch & time resolution 1024

Piano Tools

Auto align pitch - When enabled, edits snap to specific frequencies based on your notes-per-octave and base Hz settings, so drawn notes stay in-tune.

Align pitch

Auto align time - Snaps brushes, rectangles, and lines to an adjustable tempo grid. Beat division updates as you zoom in/out.

Align time

Remove harmonics - Removes harmonic overtones within a region, leaving the fundamental frequencies. Handy for cleaning up muddy or overtone-heavy material.

Export MIDI with BasicPitch AI - BasicPitch is an open-source model that converts audio to MIDI and supports polyphonic detection. Great for approximating MIDI from songs, but it can make errors.

Export MIDI without BasicPitch AI - A heuristic-based MIDI export useful for short sounds and SFX; it provides adjustable heuristics (beat, duration, noise filtering) but is generally less accurate than BasicPitch.

Equalizer

Adjust loudness across frequencies in real time. The equalizer is an effect pass applied to playback and to exported audio: it doesn't actually affect the spectrogram itself. This is to save the lag of having to re-compute the spectrogram every time a point is changed. You can add or remove points by right-clicking, and adjust tangents lines to achieve unique curve shapes.

Equalizer

Other features

Adjustable log scale - Switch between linear (evenly spaced frequencies) and logarithmic (evenly spaced notes) frequency display by dragging or right-clicking the curve in the top-left of the spectrogram. The higher the log scale, the more compressed the high frequencies and the more zoomed in the low frequencies.

Log scale