aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/plugins/Input/opus/decoderopusfactory.cpp7
-rw-r--r--src/plugins/Input/opus/opusmetadatamodel.cpp12
2 files changed, 14 insertions, 5 deletions
diff --git a/src/plugins/Input/opus/decoderopusfactory.cpp b/src/plugins/Input/opus/decoderopusfactory.cpp
index 445d2a6df..003eca863 100644
--- a/src/plugins/Input/opus/decoderopusfactory.cpp
+++ b/src/plugins/Input/opus/decoderopusfactory.cpp
@@ -101,12 +101,15 @@ QList<FileInfo *> DecoderOpusFactory::createPlayList(const QString &fileName, bo
if(tag)
{
TagLib::StringList fld;
+ if(!(fld = tag->fieldListMap()["ALBUMARTIST"]).isEmpty())
+ info->setMetaData(Qmmp::ALBUMARTIST,
+ QString::fromUtf8(fld.front().toCString(true)).trimmed());
if(!(fld = tag->fieldListMap()["COMPOSER"]).isEmpty())
info->setMetaData(Qmmp::COMPOSER,
- QString::fromUtf8(fld.toString().toCString(true)).trimmed());
+ QString::fromUtf8(fld.front().toCString(true)).trimmed());
if(!(fld = tag->fieldListMap()["DISCNUMBER"]).isEmpty())
info->setMetaData(Qmmp::DISCNUMBER,
- QString::fromUtf8(fld.toString().toCString(true)).trimmed());
+ QString::fromUtf8(fld.front().toCString(true)).trimmed());
}
QList <FileInfo*> list;
diff --git a/src/plugins/Input/opus/opusmetadatamodel.cpp b/src/plugins/Input/opus/opusmetadatamodel.cpp
index 254abb582..b03e26e5b 100644
--- a/src/plugins/Input/opus/opusmetadatamodel.cpp
+++ b/src/plugins/Input/opus/opusmetadatamodel.cpp
@@ -1,5 +1,5 @@
/***************************************************************************
- * Copyright (C) 2013 by Ilya Kotov *
+ * Copyright (C) 2013-2015 by Ilya Kotov *
* forkotov02@hotmail.ru *
* *
* This program is free software; you can redistribute it and/or modify *
@@ -137,6 +137,11 @@ const QString VorbisCommentModel::value(Qmmp::MetaData key)
return TStringToQString_qt4(m_tag->artist());
case Qmmp::ALBUM:
return TStringToQString_qt4(m_tag->album());
+ case Qmmp::ALBUMARTIST:
+ if(m_tag->fieldListMap()["ALBUMARTIST"].isEmpty())
+ return QString();
+ else
+ return TStringToQString_qt4(m_tag->fieldListMap()["ALBUMARTIST"].front());
case Qmmp::COMMENT:
return TStringToQString_qt4(m_tag->comment());
case Qmmp::GENRE:
@@ -177,6 +182,9 @@ void VorbisCommentModel::setValue(Qmmp::MetaData key, const QString &value)
case Qmmp::ALBUM:
m_tag->setAlbum(str);
return;
+ case Qmmp::ALBUMARTIST:
+ m_tag->addField("ALBUMARTIST", str, true);
+ return;
case Qmmp::COMMENT:
m_tag->setComment(str);
return;
@@ -184,8 +192,6 @@ void VorbisCommentModel::setValue(Qmmp::MetaData key, const QString &value)
m_tag->setGenre(str);
return;
case Qmmp::COMPOSER:
- value.isEmpty() ?
- m_tag->removeField("COMPOSER"):
m_tag->addField("COMPOSER", str, true);
return;
case Qmmp::TRACK: