First consider album artists when multiple names are used for the same artist mbid and no artist info is present, ref #731

This commit is contained in:
emeric
2025-11-16 11:14:20 +01:00
parent 51bd4c75ac
commit ab898b697c
7 changed files with 137 additions and 47 deletions
+32
View File
@@ -23,6 +23,37 @@
namespace lms::db
{
core::LiteralString trackArtistLinkTypeToString(TrackArtistLinkType type)
{
switch (type)
{
case TrackArtistLinkType::Arranger:
return "arranger";
case TrackArtistLinkType::Artist:
return "artist";
case TrackArtistLinkType::Composer:
return "composer";
case TrackArtistLinkType::Conductor:
return "conductor";
case TrackArtistLinkType::Lyricist:
return "lyricist";
case TrackArtistLinkType::Mixer:
return "mixer";
case TrackArtistLinkType::Performer:
return "performer";
case TrackArtistLinkType::Producer:
return "producer";
case TrackArtistLinkType::ReleaseArtist:
return "albumartist";
case TrackArtistLinkType::Remixer:
return "remixer";
case TrackArtistLinkType::Writer:
return "writer";
}
return "unknown";
}
static const std::set<Bitrate> allowedAudioBitrates{
64000,
96000,
@@ -41,4 +72,5 @@ namespace lms::db
{
return allowedAudioBitrates.find(bitrate) != std::cend(allowedAudioBitrates);
}
} // namespace lms::db
@@ -59,6 +59,9 @@ namespace lms::db
query.where("t.release_id = ?").bind(params.release);
}
if (params.mbidMatched)
query.where("t_a_l.artist_mbid_matched = ?").bind(*params.mbidMatched);
switch (params.sortMethod)
{
case TrackArtistLinkSortMethod::None: