Einführung
Librezam unterstützt mehrere Backends (Shazam, Audd, ACRCloud, Tencent, NetEase) für die Musikererkennung.
Standardmäßig wird nur das Shazam-Backend verwendet, und andere Backends werden nicht verwendet, es sei denn, sie werden explizit aus den Backend-Reihenfolge-Einstellungen aktiviert.
Dieses Dokument erklärt die Eigenschaften jedes Backends und wie Benutzerdaten verarbeitet werden.
Shazam
* Benutzerdatenbehandlung
Von der Seite aufgenommene Audiodaten werden als akustischer Hash, der den ursprünglichen Inhalt nicht wiederherstellen kann, an Shazams Server gesendet.
Dieser akustische Hash ist ähnlich einem Hash-Wert wie SHA-256, der für den Abgleich verwendet werden kann, aber den ursprünglichen Inhalt nicht wiederherstellen kann, was Datenschutzvorteile bietet.
Die Fingerprint-Erstellung erfolgt mit der node-shazam-api-Implementierung des reverse-engineered Shazam-Algorithmus.
Außerdem werden die Spracheinstellungen des Browsers gesendet, um zu bestimmen, welche Sprache in den Erkennungsergebnissen priorisiert werden soll.
Der Service wird von einem Unternehmen in den Vereinigten Staaten betrieben.
Der Quellcode von node-shazam-api kann hier gefunden werden.
https://github.com/FoxRefire/node-shazam-api/tree/webpack
Apples Datenschutzrichtlinie kann hier gefunden werden.
https://www.apple.com/legal/privacy/en-ww/
- Backend-Eigenschaften
Verfügbar ohne Registrierung oder Rate-Limits.
Kann eine breite Palette vieler Songs erkennen
Unterstützt keine Summen- oder Cover-Song-Erkennung.
Einige Songs erfordern längere Aufnahmezeiten, aber die Server-Antwortzeit ist sehr schnell
Audd
* Benutzerdatenbehandlung
Von der Seite aufgenommene Audiodaten werden ohne Konvertierung direkt an Audds Server gesendet.
Außerdem wird, wenn der Benutzer einen API-Schlüssel angibt, auch der Schlüssel-String gesendet.
Der Service wird von einem Unternehmen in den Vereinigten Staaten betrieben.
Audds Datenschutzrichtlinie kann hier gefunden werden.
https://audd.io/privacy/
- Backend-Eigenschaften
Bis zu 10 Anfragen pro Tag sind ohne API-Schlüssel-Registrierung kostenlos verfügbar, aber danach muss ein bezahlter API-Schlüssel registriert werden.
API-Schlüssel können hier erhalten werden.
https://audd.io/
Die Erkennungsgenauigkeit ist im Vergleich zu anderen Backends nicht so gut, aber einige Songs können mit weniger Samples erkannt werden.
Unterstützt keine Summen- oder Cover-Song-Erkennung
ACRCloud
* Benutzerdatenbehandlung
Von der Seite aufgenommene Audiodaten werden ohne Konvertierung direkt an ACRClouds Server gesendet.
Außerdem wird der vom Benutzer angegebene API-Schlüssel-String gesendet.
Der Service wird von einem chinesischen Unternehmen mit Sitz in Singapur betrieben.
ACRClouds Datenschutzrichtlinie kann hier gefunden werden
https://www.acrcloud.com/privacy/
- Backend-Eigenschaften
API-Schlüssel-Registrierung ist erforderlich, aber bis zu 100 Anfragen pro Tag sind kostenlos verfügbar.
Rühmt sich hoher Erkennungsgenauigkeit und kann viele Songs erkennen.
Summen- und Cover-Song-Erkennung ist auch möglich. (7,2 Sekunden oder mehr Aufnahmezeit wird empfohlen, wenn Summen oder Cover-Songs erkannt werden)
Tencent
* Benutzerdatenbehandlung
Von der Seite aufgenommene Audiodaten werden in rohe PCM-Daten von 8000kHz Mono s16le konvertiert, die den ursprünglichen Inhalt lesen können, und dann an Tencent's Server gesendet.
Dieses Backend basiert auf der aus der QQ Music-App reverse-engineered Musikererkennungsfunktion.
Der Service wird von einem chinesischen Unternehmen betrieben
Tencent's Datenschutzrichtlinie kann hier gefunden werden.
https://privacy.qq.com/document/priview/0b0dc16a0f004a35b77b7fd48a0b125b
- Backend-Eigenschaften
Verfügbar ohne Registrierung oder Rate-Limits.
Zeigt sehr hohe Genauigkeit besonders für ACG-Musik und kann Songs erkennen, die selbst Shazam oder ACRCloud nicht erkennen können.
Summen- und Cover-Song-Erkennung ist auch möglich. (12 Sekunden oder mehr Aufnahmezeit wird empfohlen, wenn Summen oder Cover-Songs erkannt werden)
Die Server-Antwortgeschwindigkeit kann je nach Tageszeit langsam sein.
NetEase
* Benutzerdatenbehandlung
Von der Seite aufgenommene Audiodaten werden zuerst in rohe PCM-Daten von 48000hz Mono f32le konvertiert, die den ursprünglichen Inhalt lesen können, und dann an einen Vorverarbeitungs-Proxy gesendet, den ich auf Deno Deploy hoste.
Der Vorverarbeitungs-Proxy verwendet proprietäre Module, um in einen akustischen Hash ähnlich Shazam zu konvertieren, der den ursprünglichen Inhalt nicht wiederherstellen kann, und sendet ihn dann an NetEase's Server.
Der Grund, warum ein Vorverarbeitungs-Proxy durchlaufen werden muss, ist, dass die für die Konvertierung erforderlichen Module proprietär sind und nicht direkt in Librezam integriert werden können.
Ich sammle keine Logs im Vorverarbeitungs-Proxy.
Dieses Backend wurde aus der Chrome-Erweiterung "云音乐听歌" reverse-engineered.
Der Service wird von einem chinesischen Unternehmen betrieben.
Der Quellcode des Vorverarbeitungs-Proxys kann hier gefunden werden
https://github.com/FoxRefire/ncm-recognizer-proxy
NetEase's Datenschutzrichtlinie kann hier gefunden werden
https://st.music.163.com/official-terms#
Deno Deploy's Datenschutzrichtlinie kann hier gefunden werden
https://docs.deno.com/deploy/privacy_policy/
- Backend-Eigenschaften
Verfügbar ohne Registrierung oder Rate-Limits.
Zeigt sehr hohe Genauigkeit besonders für ACG-Musik und kann Songs erkennen, die selbst Shazam oder ACRCloud nicht erkennen können.
Keine Summen- oder Cover-Song-Erkennungsfunktion