Eine Bibliothek, die standhält
Ein paralleler Scanner liest vollständige Tags, echte Laufzeiten und den Codec jeder einzelnen Datei, kein überflogener Header. Die Ordnerüberwachung übersteht Umbenennungen, und nichts verschwindet stillschweigend.
Ein Desktop-Musikplayer für Leute mit großen, sorgfältig getaggten lokalen Sammlungen. Die Oberfläche baust du dir selbst aus Panels zusammen, und ein ganzes Theme passt in eine Datei zum Weitergeben. Nativ auf Linux, macOS und Windows.
Auf Arch oder NixOS? Installiere es stattdessen aus dem AUR oder dem Nix-Flake.
rox ist eine einzige Binärdatei und startet, bevor du die Maus losgelassen hast.
| Player | Fenster da | Vollständig geladen | Speicher | CPU im Leerlauf |
|---|---|---|---|---|
| rox | 0,3 s | 2,3 s | 134 MB | 0,5 % |
| Elisa | 0,7 s | beruhigt sich nie | 206 MB | 74 % |
| fooyin | 0,3 s | 18 s | 364 MB | 0 % |
| Quod Libet | - | 19 s | 384 MB | 0,2 % |
| Strawberry | 0,3 s | 32 s | 434 MB | 0,8 % |
| Museeks | - | 3 s | 436 MB | 0 % |
| Tauon | 8,7 s | 12 s | 2,8 GB | 0 % |
Alle Werte habe ich selbst gemessen, auf einer Maschine (Ryzen 9 5950X, Linux/Wayland), mit derselben Sammlung aus 50.000 Titeln auf einer externen SSD, jeder Player über dieselbe Testumgebung mit geladener Bibliothek. Speicher ist PSS über den gesamten Prozessbaum. „Geladen“ heißt, dass sich die CPU nach dem Start beruhigt hat; Leerlauf ist ein pausierter Player mit sichtbarem Fenster. DeaDBeeF wäre bei 44 MB gelandet und hätte beim Speicher gewonnen, bekam aber keine Zeile: sein MP3-Parser stürzt beim Import dieser Sammlung jedes Mal mittendrin ab. rox indiziert alle 50.000 Titel, auch die abgeschnittenen Dateien, über die er stolpert.
Ein paralleler Scanner liest vollständige Tags, echte Laufzeiten und den Codec jeder einzelnen Datei, kein überflogener Header. Die Ordnerüberwachung übersteht Umbenennungen, und nichts verschwindet stillschweigend.
Ein vollwertiger Editor mit atomaren Schreibvorgängen, Stapelbearbeitung und Suchen und Ersetzen. Bewertungen stehen über FMPS und POPM in den Dateien selbst. Abgleich über MusicBrainz, iTunes und Deezer.
Ein FLAC über eine ganze CD wird neben seinem Cue-Sheet als echte Zeilen indiziert. Jeder Abschnitt lässt sich spulen, scrobbeln, sortieren und läuft lückenlos in den nächsten, genau wie eine Datei.
Ein Stream, mit Zufallswiedergabe, Wiederholung, „Als Nächstes spielen“ und A-B-Schleife. Lesezeichen setzt du mit einer Taste, und sie sitzen auf der Suchleiste. Medientasten und die Titelanzeige des Systems funktionieren auf allen drei Plattformen.
Ein Equalizer in einem eigenen Fenster, ein Crossfade, der die eigenen Übergänge eines Albums in Ruhe lässt, und exklusive Ausgabe, die sagt, worauf die Hardware sich eingelassen hat.
rox beschreibt deine Titel anhand ihres eigenen Audiomaterials, Tempo inklusive, und ordnet das Nächste nach Ähnlichkeit. Das läuft auf deiner Maschine über deine Dateien, ohne Dienst dazwischen.
Rund vierzig Panel-Typen, von Bibliothek und Warteschlange bis Künstlerraster, Spektrum und VU. Eins mit seiner Konfiguration duplizieren, als Vorlage speichern oder in ein eigenes Fenster auskoppeln.
Eine Arbeitsfläche ist eine Datei mit Layout, Palette, Erscheinungsbild und Shadern. Paletten können sich am laufenden Cover einfärben und mit dem Bild hell oder dunkel werden.
Schreib einen WGSL-Shader über ein Panel oder das ganze Fenster, oder lass Milkdrop-Presets über projectM laufen. Benannte Signale aus dem Spektrum liegen auf den Shader-Eingängen.
Synchronisiert oder einfach, aus Begleitdateien, Tags oder lrclib, mit einem Editor, der dorthin zurückschreibt, wo er gelesen hat. Ein Hörprotokoll speist Verlaufs-Panel, Statistiken und Scrobbling.
Favoriten, Umsortieren per Drag, M3U, PLS und XSPF rein und raus, und intelligente Playlists, die eine gespeicherte Abfrage neu ausführen statt eine Momentaufnahme festzuhalten. Einträge überstehen es, wenn eine Datei geht und wiederkommt.
Ein Tarball, ein DMG oder ein Zip, dazu das AUR und ein Nix-Flake. Der portable Modus hält Bibliothek und Einstellungen in einem Ordner neben der ausführbaren Datei.
JSON-RPC über einen lokalen Socket: Transport, Warteschlange, Bibliothekssuche und gepushte Ereignisse. Zugriff regeln Dateirechte, nichts lauscht auf einem Port.
Ein Proxy neben der App legt den Socket auf MCP, damit ein KI-Client fragt, was läuft, oder den Transport bedient. Standardmäßig aus, bei jedem Aufruf neu geprüft.
Ein Quell-Client schiebt, was rox spielt, als MP3 an deinen Mount. Nur nach draußen: die Seite zum Netz gehört Icecast, und ein toter Server bremst die Wiedergabe nie.
acht Arbeitsflächen sind mit dabei, einen Klick entfernt im Willkommensfenster. Jede davon ist eine einzelne Datei mit dem Layout, der Palette und den Shadern, die sie benutzt: du kannst sie bearbeiten, kaputtmachen und weitergeben. Alle ansehen.