retro-amp
Screenshots Features Installation GitHub
Terminal Music Player

retro-amp

Ein Terminal-Musikplayer mit Retro-Charme — 6 Themes, echter FFT-Visualizer, Lyrics, Playlists. Gebaut mit Python und Textual.

Ich wollte einen eigenen Musik-Player programmieren, der auf allen Betriebssystemen laeuft, schnell ist und direkt mit Verzeichnissen und Dateien arbeiten kann. Das Ganze ist Work in Progress und ein Hobbyprojekt — aber es macht Spass, damit Musik zu hoeren.

GitHub Repository Installation
Screenshots

retro-amp in Aktion

6 charmante Themes — von C64 ueber Amiga bis BeOS. Jeder Bildschirm ein Stueck Computergeschichte.

Pixel-perfektes Cover-Rendering via TGP / Sixel
Pixel-perfektes Cover-Rendering via TGP / Sixel — im Terminal
retro-amp mit BeOS Theme — Lyrics-Ansicht
BeOS Theme — Ordner-Browser, Datei-Tabelle, Lyrics, Spektral-Visualizer
Classic Terminal Theme — green phosphor
Classic Terminal — Phosphor-Gruen, deutsche Lyrics
Boing Theme
Boing — Blau/Orange, Lyrics
Brotkasten Theme mit YouTube-Links
Brotkasten — YouTube-Links direkt im Player
Englische Lyrics-Ansicht
Lyrics — Original (Englisch)
German lyrics translation
Lyrics — Deutsche Ubersetzung
Wikipedia artist info
Artist-Info aus Wikipedia
Playlist dialog
Playlist-Manager
Features

Alles im Terminal

Ein vollwertiger Musikplayer — ohne GUI, ohne Electron, ohne Browser.

🎵

Audio-Playback

MP3, OGG/Opus, FLAC, WAV, MOD/XM/S3M, SID — von HiFi bis Chiptune.

🎨

6 Retro-Themes

C64, Amiga Workbench, Atari ST GEM, IBM Terminal, NeXTSTEP, BeOS — mit einem Tastendruck wechseln.

📈

Spektral-Visualizer

Echte FFT-Analyse, 32 Frequenzbaender, Spektralfarben mit Peak-Hold. Kein numpy noetig.

🎶

Lyrics + Ubersetzung

Songtexte automatisch laden — mit deutscher Ubersetzung auf Knopfdruck.

📖

Artist-Info

Wikipedia-Artikel zum Kuenstler direkt im Player. Automatisch gecached.

📽

YouTube-Links

Direkte YouTube-Suche zum aktuellen Song — Video, Live, Artist. Ein Klick oeffnet den Browser.

📋

Playlists

Als Markdown gespeichert, menschenlesbar. Favoriten mit einer Taste.

🛠

Dateiverwaltung

Umbenennen und Loeschen direkt aus dem Player. Ordner-Browser mit Baumansicht.

Favoriten & Playlists

TAB wechselt zwischen Explorer, Favoriten und Playlists. Baumdarstellung mit direktem Abspielen.

🌐

Mehrsprachig

Deutsch und Englisch. Sprachpakete als JSON, umschaltbar via --lang.

🔍

Globale Suche

Dateien in der gesamten Bibliothek suchen. Ergebnisse sofort abspielen.

📝

Debug-Log

Ausfuehrliches Log mit Artist/Titel, Pfaden und Player-Events. Kopierbar in die Zwischenablage.

Themes

Computergeschichte im Terminal

Mit T durch die Themes wechseln. Jedes Theme basiert auf einem legendaeren System.

C64 1982
Amiga 1987
Atari ST 1985
IBM Terminal 1970s
NeXTSTEP 1989
BeOS 1995
Keybindings

Tastenbelegung

Alles per Tastatur — keine Maus noetig.

TasteAktion
SpacePlay / Pause
+ −Lautstaerke
TABAnsicht: Dateien → Favoriten → Playlists → Verlauf
↑ ↓Navigation in der Liste
EnterSong abspielen / Ordner oeffnen
FFavorit hinzufuegen/entfernen
PPlaylist-Menue
UDatei umbenennen
DELDatei loeschen
TTheme wechseln
SEinstellungen
IInfo / About
LDebug-Log ein-/ausblenden
CDebug-Log kopieren
XShuffle ein/aus
RRepeat: Off → All → One
QBeenden

Naechster/Vorheriger Track, Seek (5 s) und Globale Suche sind ueber die Steuerleiste und die Suchleiste per Maus erreichbar.

Tech Stack

Gebaut mit

Clean Architecture, Type Safety, keine Electron-Runtime.

Python 3.12
Textual TUI
Rich
pygame
mutagen
textual-image
Clean Architecture
mypy strict
Credits

Dank an

Pixelgenaues Cover-Rendering via TGP (Kitty-Protokoll) und Sixel wird ermoeglicht durch die grossartige textual-image von @lnqs. Herzlichen Dank!

Synced Lyrics, Album-Art-Rendering und Session-Recovery wurden inspiriert von ytm-player — einem YouTube-Music-Player in Textual.

Installation

Schnellstart

Waehle deine bevorzugte Installationsmethode.

Linux / macOS (One-Click)

curl -fsSL .../install.sh | bash

Keine Abhaengigkeiten noetig

Windows (PowerShell)

irm .../install.ps1 | iex

Kein Python, kein Git noetig

pip (Python ≥ 3.12)

pip install git+https://github.com/
michaelblaess/retro-amp.git

Aus Quellcode

git clone ...retro-amp.git
cd retro-amp
pip install -e ".[dev]"
Windows
Linux
macOS