Hey guys i have been using Navidrome to stream my music from my server and its been amazing. I primarily use YT Music because of discoverability so I have all of my “primary” playlists (about 8 of them really, but supporting a somewhat arbitrary limit would be nice) in YouTube.
Im looking for an automated way to download the music and keep my navidrome instance updated with a couple playlists. I started working on some Python script to handle it, but its just not working super well so i would prefer to use someone elses solution haha.
Anyone have any good recommendations? I tried this one but I couldn’t actually find the music and it seems to only support one playlist at a time. It would also be nice to download the album art and set some ID3 tags too
Yeah I am using yt-dlp to download the music, and I can set that on a cronjob no problem.
I am specifically asking for better downloading (I don’t want just the raw YouTube title most of the time), album art, and ID3 tagging. But that beets.io thing looks super cool! I might integrate that into my existing python scripting instead of trying to build it all out myself
Just to throw out an easy option: if the music is well-labeled on Youtube, you can get pretty close to that full suite with just yt-dlp by using
--embed-thumbnail
as a stand-in for album art, dumping your files with an “Artist - track - album” naming structure using the--output-template
flag — then using an awk or python script as a second pass to add the artist/track/album names to each file as tags.E: and in case it isn’t self-evident, you don’t have to give yt-dlp a URL for each track; it’ll work fine with a playlist URL.
Haha unfortunately the music on YouTube is not especially well managed. Ive been using YouTube for music for a long time so a lot of my music is uploaded by Vevo or “{Artist} - Topic” and stuff like that. Plus (IIRC) YouTube music doesn’t give things like what album a song is from or when it was released
Download with yt-dlp. All of it. Even into a single folder if that’s easier.
Then run it all through Picard and that’ll do everything else for you - albumart, metadata, folders, filenames, the lot.
Anything that Picard doesn’t know about, enter it into the MusicBrainz db to give back to the community.
Done.