Spectral Ink

Hide a picture inside a song, just below what ears can hear. Check how audible it is, and whether it survives MP3. Everything runs in your browser; no audio is uploaded.

1Song

Choose audio file…
—

2Picture

Or choose an image…

3Placement

Negative = below the quietest sound a young ear can detect, at its loudest moment.

4Codec test

The song with the picture is encoded to MP3 and decoded again, then compared with the uncompressed version.

Hearing check
—
Picture strength
—
After MP3
—

Song with the hidden picture · uncompressed

After MP3 encoding and decoding

picture band (bars at both edges)16 kHz, where 128 kbps MP3 starts cutting

The MP3 is the file made by the codec test, at the bitrate chosen there; save it once the test shows the picture survives. Anyone can see the picture in a spectrogram viewer, such as the Reveal tab or Audacity.

How the picture is drawn

Each pixel column becomes a moment of the song and each row a frequency inside the band. Brightness sets the amplitude, phases are random, and an inverse short-time Fourier transform turns the picture into a faint noise that is added to the music.

How audibility is estimated

Within each critical band the picture's energy is weighted by the threshold in quiet (Terhardt, 1979) at the chosen listening level. It counts as audible when it exceeds that threshold and is no more than 6 dB below the music in the same band. Young ears can be about 10 dB more sensitive near 14–16 kHz than the formula says, so keep a margin.

Why MP3 erases it

Encoders discard what the ear cannot hear. At 128 kbps LAME low-passes around 16–17 kHz, so a picture above that line disappears. Just below the line it is kept, but only if it is strong enough for the encoder to spend bits on it. That is the trade-off you are tuning.