个人 GitHub 账号下公开仓库的所有者可以登录并验证所有权,自行管理介绍,无需管理员批准。
登录并生成验证文件,在 30 分钟内将其提交到此仓库的默认分支。其他分支或分叉仓库中的文件无效。然后在下方检查文件,即可无需管理员批准直接管理项目。请保留文件以维持管理权限。
如需登录,将前往登录页面。登录后请回到此处,再次点击所选的验证按钮。
在项目文件夹中运行 /nomorevibe verify,即可验证所有权并自行管理介绍。
一分钟完成验证Winamp-style music player in Rust/egui: floating windows, 10-band EQ, TOML skins and classic .wsz skins drawn pixel-for-pixel
翻译准备中
取自仓库 README
正在加载完整 README。
查看完整 README ↗It really whips the llama's ass — on Unix. (UnAmp, as in Unix.)
Website: unamp.divanv.com
Native Rust/egui music player. Point it at a folder, a mounted drive or a network share and play what's there: album art, a scrolling title, a big time display, a proper bar spectrum analyzer and a 10-band equalizer. Like the original, it comes in separate windows — Player, Equalizer, Playlist and Media Library — that you can open, close and arrange.
The library in the picture is fake: make screenshot builds a temporary folder of synthesised
songs, runs UnAmp against it, and saves the result to docs/screenshot.png, so it can be
regenerated after any UI change without showing anyone's real music or drives
(ADR-0021).
New (v0.1). Built and used on Linux (ADR-0001); each
release also ships an unsigned macOS .dmg, built automatically (ADR-0025).
.wsz and get its windows drawn from its own bitmaps
(ADR-0010).m4a), AIFF, CAF and MKA via symphoniacover/folder/front/album images beside the tracks[1], [2] in the playlist (classic
skins too), and Previous walks back through everything you heard
(ADR-0012)playerctl. Optional: without a
D-Bus session it's simply off (ADR-0016)Not yet: Opus, recursive folder play, named playlists (load/save list), resume-at-position, custom EQ presets.
The classic bottom row, with nothing focused:
| Key | Action |
|---|---|
Z | Previous (restarts the track if more than 3 s in) |
X | Play |
C / Space | Pause / resume |
V | Stop |
B | Next |
← / → | Seek 5 s |
M | Mute / unmute (or click the speaker) |
Ctrl+F | Search the Media Library |
UnAmp starts with egui's stock look; pick another from the Skins menu.
~/.config/patina/skins/ (read by every
Patina app) or ~/.config/unamp/skins/, or use Skins → Copy built-in skins to folder for an
annotated one to edit..wsz in the same folder and reload. The Player, Equalizer
and Playlist are drawn from the skin's own bitmaps, the way Winamp drew them. Find thousands at
the Winamp Skin Museum.The full guide, covering every TOML key, what a .wsz turns into, and what classic mode does and
doesn't draw, is in docs/skinning.md.
The latest .deb for Ubuntu and Debian-based distributions (x86-64) is on the
releases page:
wget https://github.com/divanvisagie/UnAmp/releases/latest/download/unamp_amd64.deb
sudo apt install ./unamp_amd64.deb
The latest .dmg (Apple Silicon and Intel, macOS 11+) is on the
releases page, or
https://github.com/divanvisagie/UnAmp/releases/latest/download/UnAmp.dmg. Open it and drag UnAmp
to Applications. It isn't signed by Apple, so allow it once under System Settings → Privacy &
Security → Open Anyway (or run xattr -dr com.apple.quarantine /Applications/UnAmp.app).
Mounted-drive discovery, network shares in the sidebar and media keys are Linux-only.
sudo apt install -y libasound2-dev pkg-config
cargo install unamp
sudo apt install -y libasound2-dev pkg-config
cargo run --release
sudo apt install -y dpkg-dev
make install
Settings are saved on exit to ~/.config/unamp/config.toml: last folder, volume, shuffle,
repeat, time display mode, equalizer settings, skin and which windows are open. Window positions and
sizes are kept by eframe in ~/.local/share/unamp/, next to playlist.m3u8 and queue.m3u8.
Those are ordinary extended M3U playlists; UnAmp marks where you were with #UNAMP-CURRENT and
#UNAMP-PLAYING comment lines, which other players ignore.
Saved EQ profiles live in ~/.config/unamp/eq.toml, one table per profile:
["Late Night"]
preamp = -2.0
bands = [3.0, 2.0, 0.0, -1.0, -2.0, -1.0, 0.0, 1.0, 1.0, 0.0]
It's read at startup and only written when you save, rename or delete a profile, so it's safe to edit by hand while UnAmp is closed.
cargo test
make dev # live reload, requires cargo-watch
make help # all targets
Significant decisions are recorded as ADRs in docs/adr/.
UnAmp was built with Claude Code from ten short prompts, listed word for word in
docs/prompts.txt.
One command, run on a clean, pushed master:
make release # next patch version; BUMP=minor|major or V=x.y.z to choose
It bumps the version, tags and pushes, opens a draft GitHub release and publishes the crate to
crates.io. The release workflow then builds the .deb and the
.dmg on GitHub, attaches them, publishes the release and points the website's download links
at them (ADR-0025). Pull afterwards: the
link update is a commit on master.
BSD-3-Clause. Not affiliated with Winamp or Llama Group.