Datenschutzerklärung
Kurz gesagt: Lyrimuse hat kein Account-System und keine Werbung. Einmal am Tag sendet die App anonyme Nutzungsdaten, ohne Songtitel, Künstler oder Konten, und du kannst das in Einstellungen › Über › Diagnose & Daten ausschalten. Um Liedtexte zu finden, muss die App Liedtextquellen nach dem laufenden Titel fragen, daher kontaktiert sie Dienste von Drittanbietern. Diese Seite nennt jeden einzelnen davon.
1 Geltungsbereich
Diese Erklärung gilt für die macOS-App Lyrimuse, die darin enthaltene Liedtext-Engine und diese Website unter yudaotor.github.io/lyrimuse. Lyrimuse ist ein Open-Source-Projekt, das ein einzelner Entwickler (Yudaotor) pflegt. Es steht kein Unternehmen dahinter.
2 Was wir erfassen: anonyme Nutzungsdaten
Es gibt keine Registrierung und kein Benutzerkonto. Der Entwickler erhält anonyme Nutzungsdaten, standardmäßig aktiviert. Höchstens einmal am Tag sendet die App eine auf deinem Mac erzeugte zufällige Installations-ID, die Versionen von Lyrimuse und macOS, den Chip, die Oberflächen- und die Systemsprache, welche Funktionen aktiv sind (Anzeigearten, ausgewählte Player, wie viele Liedtextquellen aktiviert sind, die Schalter für Übersetzung und Umschrift, ob Accounts wie Last.fm verbunden sind, welchen Drittanbieter-Playern und Browsern du vertraust, welche Web-Player du gekoppelt hast), welche Player an früheren Tagen Musik gespielt haben und wie oft die App hing. Wenn Lyrimuse oder seine Liedtext-Engine abstürzt, sendet sie außerdem eine Absturzzusammenfassung: den Typ der Ausnahme und die Funktionsnamen im Stack, ohne Dateipfade.
Gesendet werden nie Songtitel, Künstler, Alben, Dateipfade, Kontonamen oder Zugangsdaten. Die Daten gehen an den eigenen Server des Entwicklers (telemetry.yudaotor.me, ein Cloudflare Worker), der keine IP-Adressen speichert, nur das Land oder die Region, die Cloudflare daraus ermittelt. Schalte Anonyme Nutzungsdaten senden in Einstellungen › Über › Diagnose & Daten aus (der Willkommensbildschirm beim ersten Start hat denselben Schalter), und es wird nichts gesendet.
Der Quellcode ist öffentlich, du kannst das also selbst prüfen, statt es einfach zu glauben.
3 Was auf deinem Mac bleibt
Alles, was sich die App merkt, wird auf deinem eigenen Mac gespeichert: hauptsächlich unter ~/Library/Application Support/me.yudaotor.lyrimuse, Caches in ~/Library/Caches, Protokolle in ~/Library/Logs/Lyrimuse und Zugangsdaten von Accounts in deinem Anmeldeschlüsselbund:
- deine Einstellungen
- der Liedtext-Cache, damit ein einmal gespielter Titel auch offline funktioniert
- dein lokaler Hörverlauf, aus dem die Charts und „An diesem Tag“ entstehen
- Zugangsdaten für Dienste, die du verbunden hast, etwa ein Last.fm-Session-Key oder ein ListenBrainz-Token
- das unten beschriebene Protokoll ausgehender Anfragen
Nichts davon wird hochgeladen. Lösch diese Ordner, und alles ist weg; das mitgelieferte uninstall.sh --purge entfernt sie zusammen mit den Schlüsselbundeinträgen.
4 Welche Server die App kontaktiert
Abgesehen von den in den Tabellen genannten Account-Zugangsdaten und der zufälligen Installations-ID in den Nutzungsdaten enthält keine dieser Anfragen etwas, das dich oder deinen Mac identifiziert. Jeder Dienst sieht die Anfrage selbst und, wie bei jeder Website, deine IP-Adresse.
Bei normaler Nutzung
| Zweck | Dienst | Was er erhält |
|---|---|---|
| Liedtexte finden | NetEase Cloud Music, QQ Music, Kugou, Kuwo, Migu, Soda Music, Musixmatch, LRCLIB, LyricFind (über YouTube Music), Deezer, VIBE (Naver), Genie (KT), PetitLyrics (SyncPower) und die AMLL-Liedtextbibliothek (auf GitHub, mit jsDelivr als Ausweichquelle). Auch Apple Music, sobald du deinen Account verbindest | Künstler, Titel und Album, bei einigen Quellen auch die Dauer. Apple Music erhält zusätzlich dein Media User Token, das nur an Apple geht |
| Künstlernamen | MusicBrainz | Ein Künstlername, wenn keine Quelle den Titel gefunden hat und nach anderen Namen gesucht wird oder wenn der Last.fm-Abgleich auf einen unbekannten Künstler stößt; außerdem MusicBrainz-IDs für Land und Links der Künstler in den Charts |
| Cover und Ruhebildschirm | iTunes Search. Cover werden auch dort geladen, wo sie ohnehin liegen: vom eigenen Bildserver des Players (Spotify, KKBOX, Amazon Music, YouTube Music sowie die Kuwo- und Migu-Server hinter den Covern von LX Music) oder von der Liedtextquelle, die den Titel gefunden hat | Künstler und Titel. Beim Laden eines Bildes wird nur dessen Adresse gesendet |
| Infos zu Titeln, Alben und Künstlern | Zuerst die öffentlichen Album- und Künstlerseiten von Apple Music, ohne Apple Account. Wenn dort nichts steht: Soda Music (für dort gespielte Titel, nur bei chinesischer Oberfläche), NetEase Cloud Music (nur bei chinesischer Oberfläche), Kuwo (Titel, die LX Music von Kuwo spielt, nur bei chinesischer Oberfläche), Kugou (dort gespielte Titel; die Vorstellungen nur bei chinesischer Oberfläche), die Wikipedia-Artikel, die YouTube Music anzeigt, und Last.fm. Infos zu Titeln kommen von QQ Music (nur bei chinesischer Oberfläche) oder Last.fm | IDs oder Namen von Titeln, Alben oder Künstlern |
| Der Originaltitel einer Aufnahme | Der öffentliche Katalog von Apple Music, ohne Apple Account, und Deezer, abgefragt über den ISRC-Code der Aufnahme | Der ISRC-Code oder Künstler und Titel |
| Spotify-Links in den Charts | MusicBrainz und die öffentlichen Einbettungsseiten von Spotify, höchstens eine Runde alle 6 Stunden | MusicBrainz-IDs und Spotify-Album-IDs |
| Titel von Hörbüchern und anderen Wortbeiträgen in QQ Music unterscheiden | QQ Music, einmal pro Titel, solange QQ Music spielt | Die QQ-Music-ID des Titels |
| Titellisten von Alben in Soda Music | Die öffentlichen Albumseiten von Soda Music, während du in Soda Music hörst | Album-ID |
| Liedtext mit Musikvideos auf YouTube Music abgleichen | SponsorBlock | Die ersten 4 Zeichen des SHA-256-Hashs der Video-ID, an denen sich das Video nicht erkennen lässt |
| Adresse von Musixmatch auflösen | Cloudflare (1.1.1.1) und Google (8.8.8.8), über DNS over HTTPS | Der Domainname |
| Anonyme Nutzungsdaten (standardmäßig aktiviert; ausschaltbar in Einstellungen › Über › Diagnose & Daten) | Der eigene Server des Entwicklers, telemetry.yudaotor.me (ein Cloudflare Worker), höchstens einmal am Tag | Eine zufällige Installations-ID, Versionen, Chip, Sprachen, welche Funktionen aktiv sind, welche Player Musik gespielt haben, wie oft die App hing, und Absturzzusammenfassungen. Keine Songtitel, Künstler, Alben oder Accounts |
| Animierte Albumcover | QQ Music, dann NetEase Cloud Music als anonymer Gast, wenn Apple Music für das Album kein bewegtes Cover hat. Das Video wird von deren Videoservern geladen, solange das Liedtextfenster geöffnet ist | Album-, Titel- oder Video-IDs. Kein Account |
| Die Kugou-Seite eines Titels finden | Die Websuche von Kugou, einmal pro Titel, solange Kugou spielt | Künstler und Titel |
| Nach Updates suchen | Der Update-Feed auf GitHub Releases, ohne Systeminformationen. Mit aktivierten Beta-Updates auch die Release-Liste der GitHub API, höchstens einmal pro Stunde | Nichts über dich |
| Die Zahl der GitHub-Sterne unter „Über“ | GitHub API, höchstens einmal alle 6 Stunden | Nichts über dich |
Erst nachdem du etwas aktivierst
Diese Funktionen sind aus, bis du sie einrichtest:
| Zweck | Dienst | Was er erhält |
|---|---|---|
| Scrobbeln | Last.fm und ListenBrainz, je nachdem, was du verbindest | Was du abspielst, mit den Zugangsdaten deines Accounts |
| Online-Übersetzung als Fallback (standardmäßig aus und nur, wenn Apples Übersetzung auf dem Gerät nicht weiterhilft) | Zuerst die Web-Übersetzung von Google, dann MyMemory für den Rest | Der Liedtext, in Abschnitten. Anfragen an MyMemory enthalten eine zufällig erfundene E-Mail-Adresse, nicht deine |
| Hörrückblicke (täglich, wöchentlich, monatlich, jährlich) | Die Kanäle, die du einrichtest: Bark, ntfy, DingTalk, WeCom, Discord, Feishu, ServerChan, Telegram, Slack oder eine von dir eingegebene Webhook-Adresse | Der Text des Rückblicks |
| Eine teilbare Seite mit dem, was gerade läuft | Das Relay, das du selbst betreibst. Seine Seite mit den Top 10 Künstlern fragt Deezer nach Künstlerbildern | Was gerade läuft; Künstlernamen |
| Spotify Canvas als Hintergrund des Liedtextfensters (standardmäßig aus) | Der Videoserver von Spotify (canvaz.scdn.co). Es wird nur der Cache gelesen, den Spotify auf deinem Mac anlegt, und Spotify nichts gefragt | Nur die Adresse des Videos |
| Auf Discord zeigen, was du hörst (standardmäßig aus) | Die Discord-App auf deinem Mac, über ihre lokale Verbindung. Discord zeigt es dann in deinem Profil an | Titel, Künstler, Album, Cover-Adresse, Player und Fortschritt, dazu die gerade gesungene Zeile und deine Button-Links, wenn du sie aktivierst |
| Web-Liedtext und OBS-Ausgabe (standardmäßig aus) | Eine Seite, die Lyrimuse auf diesem Mac bereitstellt (Ports 3939 und 3940). Nur dieser Mac kann sie öffnen, bis du den Zugriff im lokalen Netzwerk erlaubst; mit „Fernsteuerung erlauben“ kann die Seite auch die Wiedergabe steuern | Von sich aus wird nichts gesendet. Geräte, die die Seite über ihren Link öffnen, sehen den aktuellen Liedtext, das Cover und den Fortschritt |
| Die Open API von LX Music (wenn du sie in LX Music aktivierst) | LX Music, über seinen eigenen Port auf diesem Mac | Wiedergabebefehle. Nichts verlässt deinen Mac |
| Ein Problem melden | GitHub, in deinem Browser, und nur, wenn du das Formular absendest | App-Version, macOS-Version und Player, bei Liedtext-Meldungen zusätzlich Titel und Liedtextquelle. Du siehst alles vor dem Absenden und kannst es bearbeiten |
Jeder dieser Dienste hat seine eigene Datenschutzerklärung und Protokollierung, auf die der Entwickler keinen Einfluss hat.
5 Das Protokoll ausgehender Anfragen
Jede Netzwerkanfrage der App wird in einem Protokoll auf deinem Mac festgehalten. Es erfasst den Dienst, den Vorgang, den Hostnamen, den HTTP-Status und die Dauer, aber nie die vollständige Adresse, die Parameter, den Anfrageinhalt oder Zugangsdaten.
Du kannst es in der App „Konsole“ lesen oder in einen Diagnose-Export aus den Einstellungen aufnehmen. Exportieren tust du immer selbst, und die Datei landet dort, wo du sie sicherst.
6 Berechtigungen, die die App anfragt
- Automation für Apple Music, Spotify, Kaset und VOX, wenn du sie auswählst: Damit liest Lyrimuse den aktuellen Titel und die Position und sendet Wiedergabebefehle. Hörst du im Browser und aktivierst die genaue Web-Player-Position, fragt Lyrimuse auch nach Automation für diesen Browser, um die tatsächliche Position des Players auf der Seite zu lesen.
- Bedienungshilfen, optional: QQ Music, NetEase Cloud Music, Kugou Music, Soda Music und Amazon Music nutzen sie für ihre Tasten für Zufall, Wiederholen und Favorit, reAMP und foobar2000 für Zufall, Wiederholen und Lautstärke und Pine Player für Wiederholen und Lautstärke; beim Bedienen werden dabei die eigenen Menüpunkte, Tasten oder Regler des Players betätigt. Solange eine andere App „Jetzt läuft“ belegt, sendet Lyrimuse darüber auch Wiedergabe, Pause und Titelwechsel an QQ Music, NetEase Cloud Music, Kugou, Soda Music, reAMP, Pine Player und foobar2000. Bei Amazon Music hält sie außerdem die Wiedergabeposition genau, und bei Pine Player liest sie die Fortschrittsleiste, um das Timing exakt zu machen, und die Wiedergabeliste, um die nächsten Titel vorzubereiten; bei YouTube Music im Browser klickt sie bei Werbung auf „Überspringen“, wenn automatisches Überspringen aktiviert ist.
- Festplattenvollzugriff, optional: QQ Music, NetEase Cloud Music und Kugou speichern ihre Warteschlange und die heruntergeladenen Liedtexte in einem geschützten Ordner, Soda Music und VOX ihre Warteschlange. Mit Zugriff bereitet Lyrimuse Liedtexte für die nächsten Titel vor und kann die Liedtexte nutzen, die diese Apps bereits haben; ohne Zugriff entfallen diese Schritte einfach.
Andere Player werden über die „Jetzt läuft“-Angaben des Systems gelesen und brauchen keine Berechtigung. Keine dieser Berechtigungen wird für etwas anderes genutzt, als zu verfolgen, was du abspielst.
7 Diese Website
Diese Seiten sind statische Dateien auf GitHub Pages, ohne Cookies, Analyse oder Tracker. Gespeichert wird nur die Sprache, die du wählst, im lokalen Speicher deines eigenen Browsers. Wenn du das Download-Menü öffnest, fragt die Seite die GitHub API nach der neuesten Versionsnummer. GitHub protokolliert als Host Anfragen wie jeder Webserver; siehe Datenschutzerklärung von GitHub.
8 Kinder
Lyrimuse richtet sich nicht an Kinder und erfasst von niemandem personenbezogene Daten, gleich welchen Alters.
9 Änderungen
Wenn sich der Umgang der App mit Daten ändert, ändert sich diese Seite mit, und das Datum oben wird aktualisiert. Ihr Verlauf ist im Repository öffentlich einsehbar.
10 Kontakt
Fragen oder Korrekturen: Erstelle ein Issue auf GitHub.