diff options
| -rw-r--r-- | src/plugins/Input/opus/decoderopusfactory.cpp | 7 | ||||
| -rw-r--r-- | src/plugins/Input/opus/opusmetadatamodel.cpp | 12 |
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: |
