LinuxAmp
A music player for you, open and free.
A music player in the old tradition: a small skinned head with the transport and the time on it, a playlist you build by dragging things into it, a ten band equaliser, a library that knows about your files, and a visualiser that moves to whatever is actually coming out of the speakers.
Runs on Debian and Ubuntu type systems, and on any distribution that can run an AppImage. It carries its own Python, Qt and ffmpeg, so there is nothing to install first.
The classic face, drawn rather than bitmapped — so it follows whichever of the thirteen themes you pick.
Everything it needs travels with it
There is no Python to install first, no Qt to match, no codec pack to hunt down, and nothing on the machine for it to disagree with. That is the point of shipping it as one file.
♪31 formats
mp3, flac, ogg, opus, m4a, aac, wav, wma, aiff, ape, wv, mpc, ac3, dts, and the tracker formats too — it reads what ffmpeg reads, and ffmpeg comes with it. Internet radio as well.
▤A real library
It remembers what you have, what it is called and what you have played, and searches the lot from one box. Playlists load and save as .m3u, .m3u8 and .pls.
◆Covers, always
Taken from inside the file, or from cover.jpg beside it, or drawn from the track's own name — the colour from the artist, the letters from the album. A folder of untagged files becomes a shelf of covers, not a column of grey squares.
The bars move to the music, not to something plausible
The file is decoded into plain sixteen bit samples, which this program then owns: it puts them through the equaliser, works out the volume and the balance, hands them to the sound card, and keeps the last few thousand for the visualiser to look at.
≋A visualiser that is actually looking
A player that hands the file to somebody else's engine never sees a single sample and can only animate something believable. This one is reading the real waveform, one buffer behind what you are hearing. Nine of them, from the analyser to a plasma field.
⇅An equaliser wired to something
Ten bands and a preamp that work on the sound itself, done as a short time Fourier transform — window it, take it to the frequency domain, multiply by the curve the sliders describe, bring it back, overlap and add. Ten presets, and the response curve is drawn behind the sliders so the shape is something you can see.
Skins from 1997, and thirteen themes
Both kinds live at once, and neither is a reskin of the other.
▣Classic .wsz
The sprites are cut out of main.bmp, cbuttons.bmp and the rest at the positions the original layout fixed in 1997, so skins people have been making for twenty-five years work here untouched.
✦A modern format
A folder or zip with a skin.json naming its own images and colours. Any size, any shape, and it can say how it wants to be scaled — so a skin can be sharp on a big screen instead of four soft pixels per pixel.
◐Thirteen themes
Light and dark, colouring everything that is not a loaded skin — including the player's own drawn face. Every colour meant to be read is moved until it meets WCAG 2.1 against what it is really drawn on, so a theme that is unreadable cannot be added.
It answers on the command line too
Including one switch that is rarer than it should be: a program that will tell you honestly what it can and cannot do on your machine.
Release notes
Version 1.0
LinuxAmp launches
The player, the ten band equaliser, the library, nine visualisers, classic and modern skins, thirteen themes, album covers, and a static ffmpeg carried inside so all thirty-one formats work on a machine with nothing installed on it.
Put some music on
Free, and a LinuxDoors original — our own application, not a mirror and not a repackaging of somebody else's build.
chmod +x LinuxAmp.AppImage then
./LinuxAmp.AppImage — that is the whole installation.
On LinuxDoors, which has no FUSE, use
--appimage-extract-and-run.