Make a video from a sound file: bars that move with the spectrum, a circular meter, or an oscilloscope trace. The export is an MP4 with the original audio encoded alongside, ready to post where audio files are not accepted.
Styles
- Bars draws the spectrum from 30 Hz on the left to 16 kHz on the right, on a log scale, so bass, voice, and cymbals each get a fair share of the width.
- Mirrored bars grows the same bars up and down from a center line, the audiogram look used for podcast clips.
- Radial wraps the bars around a circle, low frequencies at the bottom and highs meeting at the top.
- Waveform draws the signal itself. Each frame starts on a rising zero crossing, as an oscilloscope trigger does, so a steady tone stands still instead of sliding.
How the bars are measured
For every video frame, the 2048 samples ending at that frame’s time are windowed and run through an FFT. Each bar takes the loudest frequency bin in its band, and the level maps the Floor setting to an empty bar and 0 dBFS to a full one. A lower floor shows quieter detail such as reverb tails; a higher floor makes only the loud parts move.
Colors and caption
Foreground colors the bars, trace, and caption; background fills the frame. A high contrast pair survives the compression of social platforms better than two close shades. The caption sits at the bottom left, or centered under a radial meter, and suits a track name or an episode title.
Frame size and rate
| Size | Fits |
|---|---|
| 1920 × 1080, 1280 × 720 | YouTube, websites |
| 1080 × 1920 | Reels, Shorts, TikTok, Stories |
| 1080 × 1080 | Square feed posts |
| 1080 × 1350 | Portrait feed posts |
30 fps is plenty for bars. 60 fps makes fast drums and the waveform trace smoother, at the cost of twice the frames to encode.
Audio in the export
The soundtrack is decoded once and fed to the audio encoder and the analysis at the same time, so picture and sound cannot drift. It is encoded as AAC in the MP4, or Opus in WebM on a browser without an H.264 encoder.