feat: prefer Album artist tag to Artist

This commit is contained in:
mrsobakin 2025-03-29 18:36:04 +03:00
parent 9c8e3ab3e2
commit d6b36886ba
No known key found for this signature in database
GPG key ID: 325CBF665E4FFD6E

View file

@ -16,10 +16,17 @@ class Song:
def from_file(cls, path: Path) -> Self: def from_file(cls, path: Path) -> Self:
metadata = mutagen.File(path, easy=True) metadata = mutagen.File(path, easy=True)
if "title" not in metadata or "artist" not in metadata: if (
("title" not in metadata) or
("artist" not in metadata and "albumartist" not in metadata)
):
raise RuntimeError("Song is missing title or artist name") raise RuntimeError("Song is missing title or artist name")
title = ", ".join(metadata.get("title")) title = ", ".join(metadata.get("title"))
if "albumartist" in metadata:
artist = ", ".join(metadata.get("albumartist"))
else:
artist = ", ".join(metadata.get("artist")) artist = ", ".join(metadata.get("artist"))
album = metadata.get("album") album = metadata.get("album")