Nun war ich eine Woche in den Ferien und wir haben viel Musik gemacht und auch viel Musik gehört. Da sassen wir abends auf der Terrasse und haben einander unsere Lieblingslieder vorgespielt. Da wir an diesem Abend aufgrund eines Blitzeinschlags keine Verbindung mit dem Internet hatten, mussten wir uns auf die lokal gespeicherte Musik auf unseren Smartphones beschränken.
Obwohl meine Mitreisenden von ihren Musikstreamern abhängig waren, hatten sie doch ein paar Hundert Songs für das lokale Abspielen bereitgemacht. Bei den üblichen Streamingdiensten kann man die eigenen Titel lokal bereitstellen. Das heisst jedoch nicht, dass man die Musik als MP3-Datei auf dem Gerät zur Verfügung hat. Spotify, Deezer usw. laden die Musik verschlüsselt auf eure Hardware und erlauben die lokale Wiedergabe nur aus ihren Apps zu ihren Bedingungen. Ich hatte ca. 1000 Titel auf meinem Handy als MP3-Dateien auf meinem Handy ohne Einschränkungen der Streamingdienste spielbereit.
Das Problem
Als Musik-App verwende ich den Fossify-Player. Der macht, was er soll, und nicht mehr. Für den kontinuierlichen Hörgenuss hatte ich eine neue Playlist angelegt und dort die nächsten Lieder hineingeschoben. Nach dem Abspielen habe ich die Titel wieder aus der Playlist entfernt und dafür dummerweise das Mülleimer-Symbol anstatt des Minus-Symbols verwendet. Daher habe ich die abgespielten Lieder vollständig von meinem Handy gelöscht, anstatt sie nur aus der Playlist zu entfernen. Na ja, Fehler passieren.
Da es keinen Papierkorb gibt und ich mich am nächsten Tag nicht mehr an die gelöschten Titel erinnern konnte, war guter Rat gefragt. Dabei fiel mir ein, dass meine lokale Musik auf dem Handy, seit Langem nicht mehr meinen aktuellen Playlisten entspricht. Somit war eine Update-Aktion angesagt.
Der Anwendungsfall lautet so:
Meine aktuellen Playlisten liegen bei Spotify (oder einem anderen Musikstreamer). Wie kann ich die Songs aus diesen Listen als native Musikdateien (ohne DRM) auf mein Handy befördern?
Wie oben beschrieben, erlauben die üblichen Musikstreamer keine unabhängigen Downloads. Mit den Streamern kann man zwar seine Musik offline bereitstellen, aber nur innerhalb ihres Ökosystems. Das will man nicht, genauer gesagt: Ich will das nicht.
Die Lösung
Häufig findet man Lösungen bei GNU/Linux.ch, weil in sechseinhalb Jahren fast jeder Anwendungsfall schon einmal beschrieben wurde. Doch in diesem Fall musste ich nach einer Lösung suchen. Ohne KI, sondern mit einer einfachen Internetsuche bin ich bei Sunnify gelandet. Ob das die beste Lösung ist, weiss ich nicht. Zumindest ist es eine freie Lösung, die funktioniert. Wer seine Musik bei einem anderen Streamingdienst in Ketten gelegt hat, möge selbst nach einer Lösung suchen.
Sunnify ist ein Spotify-Playlist-Downloader, der ohne Account auskommt. Damit meine ich: ohne Anmeldung und ohne Spotify-Account. Auf der Release-Page ladet ihr das Linux-Paket herunter, macht die Datei im Dateimanager ausführbar und startet sie im Terminal mit: ./Sunnify-Linux
Dann seht ihr ein seltsames GUI:
Oben kopiert ihr den Link eurer Spotify-Playlist hinein. Diesen Link findet ihr in der Spotify-App bei eurer Playlist im Dreipunkt-Menü unter "Teilen - Link zu Playlist kopieren". Dann klickt ihr in Sunnify auf „Download“. Dann werden die Titel der Spotify-Playlist in euer Download-Verzeichnis heruntergeladen, und zwar unter: Download/Sunnify/Titel_der_Playlist. An dieser Stelle ist es interessant zu wissen, was Sunnify macht:
Sunnify liest die Metadaten der Titel von den öffentlichen Einbettungsseiten von Spotify aus (ohne Authentifizierung), findet das passende Audiomaterial über eine YouTube-Suche mit yt-dlp, transkodiert es mit dem mitgelieferten FFmpeg in das von Ihnen gewählte Format und schreibt die Tags und das Coverbild mit Mutagen. Es handelt sich um einen reinen Python-Kern, der in eine PyQt6-Oberfläche eingebettet ist und mit PyInstaller plattformspezifisch gepackt wird.
Ja, mal wieder holt yt-dlp für euch die Kohlen aus dem Feuer. Im obigen Screenshot seht ihr, dass von den 43 Titeln aus meiner Jazz-Playlist nur 38 Songs erkannt und von YouTube gesaugt werden konnten. Ich habe mir die 38 Songs angehört: Alle haben eine Qualität von 192 kb/s und sind mit 48 kHz gesampelt, was für meine Ohren ausreichend ist.
Hinweis: Falls ihr eure lokalen Playlisten irgendwann einmal auf einen Musikstreamingdienst hochgeladen habt, heisst das noch lange nicht, dass der Dienst eure Lieder korrekt erkannt hat. Bei mir gibt es viele Beispiele für falsch erkannte Titel. Da wird dann aus "Who needs enemies - Montana Sextet" schnell einmal "Who needs enemies - Diana Goldberg".
Nachdem ich alle relevanten Playlists mittels Sunnify heruntergeladen und anschliessend auf mein Smartphone kopiert hatte, war das Malheur behoben und die Handymusik wieder auf dem neuesten Stand.
Fazit
Manche verwalten ihre Musik lokal, was ich jahrzehntelang gemacht habe. Der Komfort der Streamingdienste ist eine stetige Kraft, die dem entgegenwirkt. Während der letzten 10 Jahre sehe ich meine Kräfte diesbezüglich schwinden. Die eigene Musiksammlung aktuell zu halten, ist mit einem mittleren Aufwand verbunden, den ich nicht mehr leisten möchte. Stattdessen zeigt dieser Artikel, wie man das Musiksammeln und -organisieren mit einfachen Mitteln wieder auf den lokalen Rechner bringen kann. Mir ist klar, dass das nur die halbe Miete ist. Mit dem Download der Playlisten von den Musikstreamern, sind die Titel noch lange nicht in die lokale Musikverwaltung eingeordnet. Aber es ist ein erster Schritt.
Titelbild: https://pixabay.com/photos/mockup-screen-smartphone-website-5219512/
Quelle: https://github.com/sunnypatell/sunnify-spotify-downloader


Ohne Umweg über den PC geht es auch mit folgender Android-App: https://github.com/supersu-man/spotify-playlist-downloader
Kleiner Schreibfehler: ist Ketten gelegt
Sollte wohl in Ketten gelegt heißen.
Das ist korrigiert. Vielen Dank für den Hinweis.
Spannande Info ... ich stehe vor dem Problem, dass ich meine Bezahlversion vom Deezer-Account verloren habe und bisher in stundenlangen Abspiel- und mit Audacity-Aufnahmeorgie meine Sammlung zu retten versuche. Vielleicht geht es damit einfacher. Ich werde berichten.
Schön wäre es gewesen, aber Sunnify kann mit den Deezer-URL's für Playlists nichts anfangen.
Falls jemand Playlisten konvertieren muss, dann helfen diese Dienste weiter:
Ist ja alles sehr spannend, es sei die Frage erlaubt: "Ihr hört Euch Musik übers Schmutzphone an?"
Vielen Dank für den Artikel nur finde ich alleine den Gedanken Youtube als Downloadquelle zu nutzen ziemlich gruselig. Es gibt z.B. Spotiflac wo man seine Musik Qualitativ hochwertiger laden kann. Auch das Argument das Streaming besser sei kann ich nicht nachvollziehen, besonders nicht bei werbefinanzierten Versionen. Warum nicht Spotiflac zum downloaden, Navidrome als eigener Musikserver und per Tailscale Funnel für Symfonium was einmalig nur 5€ kostet läauffähig gemacht?
Danke für den Hinweis. SpotiFLAC kannte ich noch nicht. https://github.com/spotbye/SpotiFLAC
> Navidrome als eigener Musikserver und per Tailscale Funnel für Symfonium
Äh, what?! -vvv bitte
Naja so prickelnd ist das leider nicht. Nach 2 Songs kriegt man eine 101 Minuten Sperre rein gewürgt.
Hallo zusammen
Verstehe ich das richtig "...Alle haben eine Qualität von 192 kb/s und sind mit 48 kHz gesampelt,..." ?
Bei Youtube gibt es Audio-Files mit 192kBs/48kHz?
Die maximale Bitrate die ich finden kann, ist 130kBs/44kHz (aac) und 133kBs/48kHz (opus), aber nichts mit 192kBs/48kHz.
Gruß Robert
Hier ist ein Beispiel von vielen:
Hallo Ralf
Du zeigst hier die Audio-Informationen von einer MP3-Datei mit MediaInfo. Dies sagt aber nichts über die tatsächliche Qualität von YouTube aus.
Ich habe den Beitrag so verstanden, dass bei YouTube Audio-Files mit 192 kB/s gelistet sind.
Mir war nicht bewusst, dass es auch bei YouTube MP3-Dateien gibt und dann auch noch mit konstanter Bitrate. Ich kann mir auch nicht vorstellen, dass man bei YouTube MP3-Encoder in einer Beta Version verwendet?
Gruß Robert