Two faces
One player, whichever era you want.
The same engine drives both. Switch between them whenever you like — the playlist, the equaliser and whatever is playing carry straight across.
The modern deck
Spectrum, seek bar, transport, playlist and a ten-band equaliser in one fixed 560 pt column. Its entire palette is nine colour tokens, so you can re-skin it with a small text file.
Three built-in themes — or load your own
The classic face
Open any classic Winamp skin — point it at a .wsz file and dwanim it wears it, drawn at its native 275 × 116, pixel for pixel, with irregular window outlines shaped exactly as the skin describes them.
The Open Skin panel — any .wsz archive will do
Themes
Nine colours, one small file.
A theme is nine tokens in a JSON file. Open one with Open Theme… and the whole deck re-tints. Pick one below to see it, then take the file.
{
"name": "Your theme",
"accent": "#3aa8a0", — highlights, the playing row, the spectrum
"glow": "rgba(28, 120, 112, 0.42)",
"glow2": "rgba(96, 120, 150, 0.28)",
"bg1", "bg2": the window gradient
"panel": playlist and drawer fill
"text", "muted", "lcd"
}
Anything you leave out falls back to Graphite, so a three-line file is a valid theme. Save it as .json or .dwtheme — dwanim it reads the contents, not the extension.
Skins
Bring your own.
dwanim it reads the classic Winamp .wsz skin format — an independent implementation written from the public format documentation. It does not host, bundle or redistribute skins of any kind: you bring the files.
Tens of thousands of classic Winamp skins have been preserved by the community at the Webamp skin museum. Download a .wsz, drop it on the window, and the player wears it — shaped outline, bitmap font, spectrum and all.
Privacy
No account. No network. No telemetry.
dwanim it ships without the network entitlement — the sandbox it runs in cannot open a connection, so there is nothing to opt out of. It reads the files you hand it and nothing else. No analytics, no crash pings, no “anonymous usage data”.
The whole thing is MIT-licensed and public, so this is checkable rather than promised. Read the source.
The formal version of this promise lives in the privacy policy; practical help lives on the support page.
The name
Named for a pair of horns.
dwanim it takes its name from Dwennimmen, an Adinkra symbol of the Akan people of Ghana. In Twi the word means ram’s horns.
The ram fights fiercely when it must, yet submits when it is time — so the horns stand for strength tempered by humility. The mark on the app icon is a stylised Dwennimmen.
Every app we make ends in it, so we let the spelling bend — Dwennimmen became dwanim it. The horns kept their meaning.
Specifications
- Requires
- macOS 14.0 or later
- Architecture
- Universal — Apple silicon and Intel
- Audio
- MP3, AAC, ALAC, FLAC, WAV, AIFF and more, via AVFoundation
- Playlists
- Opens and saves .m3u / .m3u8
- Equaliser
- Ten bands, 60 Hz – 16 kHz, plus preamp — Flat, Rock, Vocal, Bass
- Adding music
- Drag and drop, Open With, files or whole folders
- Languages
- English, 繁體中文, 日本語
- Licence
- MIT — source on GitHub