this post was submitted on 09 Jun 2025
96 points (99.0% liked)

Selfhosted

60951 readers
682 users here now

A place to share alternatives to popular online services that can be self-hosted without giving up privacy or locking you into a service you don't control.

Rules:

Detailed Rules Post

  1. Be civil.

  2. No spam.

  3. Posts are to be related to self-hosting.

  4. Don't duplicate the full text of your blog or readme if you're providing a link.

  5. Submission headline should match the article title.

  6. No trolling.

  7. Promotion posts require active participation, with an account that is at least 30 days old. F/LOSS without a paywall has exceptions, with requirements. See the rules link for details. Tags [CBH] or [AIP] are required, see the links in Rule 8 for details.

  8. AI-related discussions and AI-involved promotional posts have additional requirements for tagging, as noted in Rule 7 and the AI & Promotional Post Expanded Rules post, and find example disclosures here.

Resources:

Any issues on the community? Report it using the report flag.

Questions? DM the mods!

founded 3 years ago
MODERATORS
 

I ditched most streaming services well over a year ago now, but Spotify has clung on because I have a playlist of around 2000 songs. I've set up Navidrome but now need to transfer all my music in the highest quality possible as efficiently as possible.

I tried lidarr some time ago, but it seemed to be based more around artists than individual songs and my indexer failed to find most of my library.

I've seen a couple of apps that will look at a playlist and then try to yt-dlp the song from YouTube but I'm worried about having a lower quality or different version. I've wondered if automating an "analog hole" type approach where I just pipe the audio of each song to a file and leave it playing overnight for a couple of weeks might actually be the best approach but that does seem a bit insane at this scale.

you are viewing a single comment's thread
view the rest of the comments
[–] dabe@lemmy.zip 27 points 1 year ago

Here’s my “low complexity, medium effort, full legal, full quality” solution:

Start actually buying your music. I go down the list in descending order of convenience:

  • Bandcamp
  • Qobuz
  • Apple iTunes (not Apple Music)
  • Physical CDs (for ripping)

Tag all your music with Picard (or wrtag if you only buy full releases, there’s a GH issue for other cases) or beets. Picard is the simplest and most feature complete right now and has a nice GUI. Then upload your tagged music to your Navidrome.

Then use a tool like

  • https://github.com/WilliamNT/tunesynctool
  • https://github.com/blastbeng/spotisub (check my fork for a better functioning version) These will match songs from your spotify playlists to songs in your subsonic-compatible server (which Navidrome is) and recreate your spotify playlists using the music it finds in your Navidrome. These syncing tooks can have misses and you may need to do some log-digging or issue-opening to find out why, but I’ve gotten them working fairly decent and plan on doing some work to improve them some day.

It’s a nice, fully legal, fully self-hosted stack. Not NEARLY as convenient as having them auto-ripped for you from youtube, but like you said, there are quality and metadata concerns when ripping from youtube.