Spent the day fighting with metadata in my music library. Now I remember why I pay for Deezer.

I cannot get Jellyfin to actually do what I want it to do. I edit the metadata to what I want, and the damn artist just disappears! I find the music just fine, do their "Identify" thing, which I don't trust, and artist is still gone. I rescan the library, and the music is there, but the artist isn't listed in the artist list.

I want to self host my music so badly, but this is a pain in my ass, and I'm not sure it is actually worth the savings.

@thelinuxcast yeah, i use spotdl to make 'backups' of my music from spotify for this reason. it tags it soooo well.
@tootbrute doesn't that just download the songs from YouTube?
@thelinuxcast @tootbrute it鈥檚 called spotdl because it downloads the song from Spotify, not from YouTube. You literally paste the Spotify song link and it鈥檒l download it for you
GitHub - spotDL/spotify-downloader: Download your Spotify playlists and songs along with album art and metadata (from YouTube if a match is found).

Download your Spotify playlists and songs along with album art and metadata (from YouTube if a match is found). - spotDL/spotify-downloader

GitHub
@thelinuxcast @tootbrute if it just downloads it from YouTube though, then why is it so much worse than yt-dlp?
@akinzekeel @tootbrute Supposedly it does metadata better, IDK. I don't use it. I don't care to download my stuff from YT, simply because a lot of artists upload skits music videos, which means you get more than the song.

@thelinuxcast @akinzekeel you won't.

  • it checks spotify album page
  • searches youtube for the tracks that spotify lists
  • you do sometimes get LIVE versions. i found that happened more frequently if I downloaded a random playlist from spotify. if i downloaded a canonical full album, it was rock solid.

    YMMV of course. i don't know what music you're downloading.

    @tootbrute @akinzekeel when it downloads stuff does it put it in proper directories, is it all done in one big directory per playlist?

    @thelinuxcast @akinzekeel sadly not. kinda manual process (maybe someone has better process?!?!)

    the way i use it.

  • find spotify album link
  • make directory /artist/album_name
  • cd into that directory
  • run spodl LINK, downloads music
  • run a script to send it to Jellyfin server
  • done

    @tootbrute @akinzekeel How long does it usually take you to download an album? My first one took almost an hour and never actually finished.

    @thelinuxcast @akinzekeel some are 30 seconds and some like yours are super slow.

    Think it depends on rarity of the music. If it fails, run again. I think there are some time out settings you could play with. I just keep running it until it downloads

    @tootbrute I had this big plan to just redownload all the artists/albums in my library. Instant fix for my metadata, but after some errors and the slowness on some albums on mainstream artists, I think I'll just use it to replace the artists that have the worst metadata problems.
    @thelinuxcast yeah, there isn't a way to just fire hose everything in there. I wish there was a way I could feed it a list of URLs and it could make the folders and everything, but that doesn't exist as far as I know.
    @tootbrute I made a script. It's still requires you to name everything but it's a little bit more automated.

    @thelinuxcast oh re-he-he-ally?

    If you share it, let us know. 馃槅

    spotty.sh 路 master 路 Matthew Weber / scripts 路 GitLab

    These are my scripts

    GitLab
    @thelinuxcast still useful. painful to make directories.

    @thelinuxcast using your script with some modifications

    i also killed my fedora distrobox, reinstalled, installed pipx, and reinstalled spotdl. working much better now.

    i think my install was borked.

    @thelinuxcast

    #!/usr/bin/env bash MUSIC="/home/myname/Music" read -rp "Artist name? " ARTIST read -rp "Album name? " ALBUM read -rp "Link? " LINK mkdir -p "$MUSIC"/"$ARTIST"/"$ALBUM" cd "$MUSIC"/"$ARTIST"/"$ALBUM"|| exit spotdl --bitrate 192k --threads 8 $LINK echo "Album Downloaded"