RESONINK

How it works

How a song becomes a painting.

No prompts. No image generator. No stranger's taste laid over your song. Resonink listens, and brings the picture already inside the music to the surface. Here is the whole path, from the first moment of sound to the last coat of paint, and the reason every mark is the shape it is.

The idea

It listens. It never invents.

Think of a spray-paint machine pointed at music. Resonink reads the feeling in the sound to choose its colors, and reads the tempo, dynamics, and notes to set the nozzle. One signal moves through five stages, each handing the next a more human description of the same moment: numbers become feeling, feeling becomes color, color becomes pigment.

01
The sound
  • a track you upload
  • a tab you're playing
  • the live mic
02
What it hears
  • per-moment acoustics
  • key + tempo
  • articulation
03
What it feels
  • valence · arousal
  • dominance
  • a felt word
04
How it paints
  • staff · wash · spray
  • ink · braid
  • the coats of paint
05
The picture
  • accumulates, never clears
  • yours to keep

Nothing in the painting is decoration. Every element traces back through this chain to something Resonink actually heard.

Stage 01

First, it listens.

Many times a second, Resonink takes a snapshot of the raw sound and measures it. None of these are musical opinions yet: just the plain physics of the moment.

Loudness
How much sound
The push behind every mark: quiet passages barely spray, loud ones splash.
Brightness
Low to high
Where the energy sits. A cymbal is bright; a bass note is dark.
Register
Its own range
Brightness measured against the song's own span, so height means something per song.
Attacks
Onsets
The moment a new sound begins: every hit, pluck, and stroke.
Pitch & tension
Two loudest tones
The two strongest pitches, and whether they agree or clash.
Harmony
Chord quality
The notes present and the triad they form: major, minor, diminished, augmented, suspended.
Noisiness
Tone vs. noise
A held flute versus a snare versus breath.
Over time
Key + tempo
Slow, patient estimates of the song's key and its pulse.

The one that matters most

Articulation: how a sound behaves, not what made it.

From how quickly each sound fades and how pitched it is, Resonink reads the gesture playing right now. This is the hinge of the whole engine: articulation decides the medium. It isn't naming instruments; it's the ear's own categories, honestly labeled.

Percussive: a struck hit Plucked: a short attack Sustained: a held tone Washed: diffuse, noise-like
Stage 02

Then, it feels.

The raw acoustics are folded into a model of emotion built on the same two-axis map psychologists use for mood (pleasant to unpleasant, calm to intense), plus a third axis for how commanding the music feels. Each is a weighted blend of what it heard, never a single cause.

Valence
pleasant ↔ unpleasant
from major / minor mode, consonance, brightness, and tempo. Faster music reads happier, rivaling mode itself.
Arousal
calm ↔ excited
from loudness, attack density, brightness, and tempo. How much is happening, how fast.
Dominance
yielding ↔ commanding
led by tempo, plus dissonance, weight, and percussive force. It splits the triumphant from the tender.

And a word for it

The felt word.

From that emotional position, Resonink names the nearest of thirteen feelings and shows it, quiet and large, over the painting. It's a reading, never a measurement. So the app asks, gently, "does that match?", and learns from the answer. Humor, desire, and irritation stay out of reach on purpose: they aren't in the sound.

Stage 03

It chooses a color.

Color is a direct reading of the feeling. The angle of that emotional position picks a hue from eight anchors ringing the plane; saturation rises with intensity; brightness follows pleasantness. So the mood owns the color: sad reads cobalt in any key, joy reads amber. The same feeling makes the same color, whatever notes carry it.

← unpleasantpleasant →
↓ calmintense ↑
joyful
drag, or tap a color
Reads valence + arousal; the app also weighs a third axis (dominance) and the sound’s texture.

Three ways to color, and an honesty about them

The emotion hue is the base. Two optional overlays then spin the wheel by the key or the note being played. That choice is deliberately not about feeling, which is exactly why the default leaves it off.

MoodDefault

Pure emotion, no rotation. The anchor hue reaches the canvas intact, so color is a straight readout of feeling.

Blend

The mood's family nudged slightly toward the note sounding: a shimmer within the key.

Notes

The sounding pitch spins the whole wheel. Melodies iridesce: a pitch visualizer as much as a mood one.

In Blend and Notes, color reports pitch rather than feeling, so the app says so plainly, with a live "color ↔ feeling" meter. The felt word stays true in every mode, because it reads the sound, not the color.

Stage 04

It lays the coats.

The painting is built from translucent layers, painted back to front over a score staff, each one its own instrument. And here is what the whole app turns on: the music decides how much of each coat appears. The articulation from Stage 01 opens and closes every nozzle. A percussive song sprays and splatters; a sustained song washes and blooms; a clear melody draws a bright line. No coat has a preset. The sound chooses its own medium.

Layer 0

Score staff

the armature
Gesture
Time itself, pressed into the paper before the first note.
Mark
Five lines: concentric rings, or rows. The melody lands on lines and spaces, like real notation.
Why
A song is written on a staff. Give the painting the same skeleton and every pitch has a place to sit, and the picture is legible as music, not noise.
Layer 1

Wash

the wet brush
Gesture
Sustained, washed passages: held notes, pads, bowed strings.
Mark
Soft, diffuse watercolor blooms that pool into an atmospheric field; recedes to nothing on a sharp attack.
Why
A held sound has no attack to strike; it spreads and lingers. Watercolor is the only mark that behaves like a sustain.
Layer 2

Spray

the spray machine
Gesture
Onsets: every attack in the music.
Mark
Scattered droplet bursts. Percussive hits splash big and flared; plucks stay tight; washes drive a drifting mist. Loudness sets the nozzle: count, spread, size.
Why
An attack is an event in time and space; a burst of pigment is its visual twin. This is the machine's core mark, the spray-paint metaphor made literal.
Layer 3

Ink

the dry pen
Gesture
The melody: the single line you'd hum.
Mark
One sharp, nervous line riding the staff. Articulation breaks it: a struck splatter, a plucked bead, a drier drag on sustains; pure-wash passages lift the pen entirely.
Why
A melody is one continuous gesture, so it earns one continuous stroke, and it should break exactly where the playing breaks. Steps stay connected; leaps lift the pen, the way a hand really moves.
Layer 4

Braid

harmony & tensionopt-in
Gesture
Consonance versus dissonance: the relationship between voices.
Mark
The melody doubled into two woven threads: consonant, and they hug and run parallel; dissonant, and they splay, weave, and cross with faint friction.
Why
Harmony is whether voices agree. Two threads show it literally, so you can watch the tension tighten and release. Off by default; it waits for music with real harmonic motion.

Each coat builds on its own sheet and composites bottom to top. Because they're separate, any layer can be revealed or dimmed after the fact. Turn one back on mid-song and its whole history appears.

Stage 05

And nothing is erased.

One measurement drives both the color and the amount of every coat: articulation. Because color and medium come from the same reading of the same instant, the picture can't drift away from the music. It stays a portrait, not an illustration.

Uploads

Foreknowledge

An uploaded track is heard end to end first: its key, tempo, and sections learned before a single mark is made. Then it paints each moment once, and the ring closes exactly on the final bar. The finished sheet is the whole song at once.

Live

In the moment

The mic and a shared tab react with no foreknowledge: the same listening, live. A live source can't know when the song ends, so the ring never closes; it turns at a steady rate, painting the present as it arrives.

The canvas never clears mid-song. Every coat lies over the last, so the picture you keep is the whole performance, not a snapshot.

The color isn't a guess

Grounded in decades of research.

Every hue is drawn from published work on the quiet, involuntary way a sound becomes a feeling becomes a color. Nothing random, nothing to taste.

Russell, 1980
The circumplex of affect: valence & arousal.
Valdez & Mehrabian, 1994
Color and emotional response.
Palmer & Schloss, 2010
The ecological basis of color preference.
Cowen & Keltner, 2020
Thirteen categories of musical emotion; the dominance axis.
Pring et al., 2024
Predicting dominance from sound: tempo leads.
Yang et al., 2025
Tempo lifts valence, rivaling mode.

And the quiet last word: it all happens on your device. Your audio is read in the browser and never leaves it: no upload, no account, no recording kept. The painting is the only thing that travels, and only when you export it.

Heard · Felt · Seen

The song is the only artist.

Resonink just brings its color to the surface. Play something you love, and watch the picture that was always inside it.