diff --git a/ext/libclementine-tagreader/tagreader.cpp b/ext/libclementine-tagreader/tagreader.cpp index 5a35d680ac..2f6ca4a39f 100644 --- a/ext/libclementine-tagreader/tagreader.cpp +++ b/ext/libclementine-tagreader/tagreader.cpp @@ -502,10 +502,9 @@ void TagReader::ParseOggTag(const TagLib::Ogg::FieldListMap& map, 100); } -void TagReader::SetVorbisComments(TagLib::Ogg::XiphComment* vorbis_comments, - const pb::tagreader::SongMetadata& song) - const { - +void TagReader::SetVorbisComments( + TagLib::Ogg::XiphComment* vorbis_comments, + const pb::tagreader::SongMetadata& song) const { vorbis_comments->addField("COMPOSER", StdStringToTaglibString(song.composer()), true); vorbis_comments->addField("PERFORMER", @@ -524,6 +523,9 @@ void TagReader::SetVorbisComments(TagLib::Ogg::XiphComment* vorbis_comments, vorbis_comments->addField( "COMPILATION", StdStringToTaglibString(song.compilation() ? "1" : "0"), true); + + vorbis_comments->addField("ALBUM ARTIST", + StdStringToTaglibString(song.albumartist()), true); } void TagReader::SetFMPSStatisticsVorbisComments( @@ -540,7 +542,6 @@ void TagReader::SetFMPSStatisticsVorbisComments( void TagReader::SetFMPSRatingVorbisComments( TagLib::Ogg::XiphComment* vorbis_comments, const pb::tagreader::SongMetadata& song) const { - vorbis_comments->addField( "FMPS_RATING", QStringToTaglibString(QString::number(song.rating()))); } @@ -953,8 +954,8 @@ bool TagReader::ReadCloudFile(const QUrl& download_url, const QString& title, pb::tagreader::SongMetadata* song) const { qLog(Debug) << "Loading tags from" << title; - std::unique_ptr stream( - new CloudStream(download_url, title, size, authorisation_header, network_)); + std::unique_ptr stream(new CloudStream( + download_url, title, size, authorisation_header, network_)); stream->Precache(); std::unique_ptr tag; if (mime_type == "audio/mpeg" && title.endsWith(".mp3")) { @@ -963,8 +964,8 @@ bool TagReader::ReadCloudFile(const QUrl& download_url, const QString& title, TagLib::AudioProperties::Accurate)); } else if (mime_type == "audio/mp4" || (mime_type == "audio/mpeg" && title.endsWith(".m4a"))) { - tag.reset( - new TagLib::MP4::File(stream.get(), true, TagLib::AudioProperties::Accurate)); + tag.reset(new TagLib::MP4::File(stream.get(), true, + TagLib::AudioProperties::Accurate)); } #ifdef TAGLIB_HAS_OPUS else if ((mime_type == "application/opus" || mime_type == "audio/opus" || @@ -983,8 +984,8 @@ bool TagReader::ReadCloudFile(const QUrl& download_url, const QString& title, TagLib::ID3v2::FrameFactory::instance(), true, TagLib::AudioProperties::Accurate)); } else if (mime_type == "audio/x-ms-wma") { - tag.reset( - new TagLib::ASF::File(stream.get(), true, TagLib::AudioProperties::Accurate)); + tag.reset(new TagLib::ASF::File(stream.get(), true, + TagLib::AudioProperties::Accurate)); } else { qLog(Debug) << "Unknown mime type for tagging:" << mime_type; return false;