Download lyrics as separate file

I have my music library that I access via Plex. Currently Plex doesn’t support lyrics embedded as Metadata (apparently they are considering adding it as a feature at some point…). So I’ve got beets working and it does fetch lyrics and embeds them into each song which is great, but to get them to appear in Plex I would need to somehow get those into their own individual .lrc or .txt files. I was looking at Sphinx thinking maybe that would be related to the solution, but I’m struggling to figure things out. Any help would be appreciated.

I don’t think there’s an obvious built-in way to do that, unfortunately. You can use beet lyrics -p to print out lyrics and then pipe them to files, but you’d be stuck doing that one album at a time.

If you’re handy with Python, though, it doesn’t seem like an extremely hard feature to add to the lyrics plugin…

Hey thanks for the reply! Yeah I was hoping it was something built in that I may have missed. I’m familiar with the basics of Python, but don’t have a lot of free time, I may need to put this off as a project to work on in a few months ha

1 Like

@Amitheous How about a shell script?

beet ls -p | while read f
do
echo "$f"
lyrics=$(beet lyrics -p "path:$f" 2>/dev/null)
lrc=$(echo "$f" | sed 's/\.[^\.]*$/.txt/')
test "$lyrics" && echo "-> $lrc" && echo "$lyrics" > "$lrc" 
done