diff options
Diffstat (limited to 'src/plugins')
| -rw-r--r-- | src/plugins/Input/mad/decoder_mad.cpp | 4 | ||||
| -rw-r--r-- | src/plugins/Input/mad/tagextractor.cpp | 30 | ||||
| -rw-r--r-- | src/plugins/Input/mad/tagextractor.h | 8 |
3 files changed, 21 insertions, 21 deletions
diff --git a/src/plugins/Input/mad/decoder_mad.cpp b/src/plugins/Input/mad/decoder_mad.cpp index 2cd8567a0..395506c33 100644 --- a/src/plugins/Input/mad/decoder_mad.cpp +++ b/src/plugins/Input/mad/decoder_mad.cpp @@ -111,9 +111,7 @@ bool DecoderMAD::initialize() if (input()->isSequential ()) //for streams only { TagExtractor extractor(input()); - FileTag tag = extractor.id3v2tag(); - // if (!tag.isEmpty()) -// dispatch(extractor.id3v2tag()); + StateHandler::instance()->dispatch(extractor.id3v2tag()); } mad_stream_init(&stream); diff --git a/src/plugins/Input/mad/tagextractor.cpp b/src/plugins/Input/mad/tagextractor.cpp index dab104ab2..1385c8a85 100644 --- a/src/plugins/Input/mad/tagextractor.cpp +++ b/src/plugins/Input/mad/tagextractor.cpp @@ -39,7 +39,7 @@ TagExtractor::~TagExtractor() { } -const FileTag &TagExtractor::id3v2tag() +const QMap<Qmmp::MetaData, QString> TagExtractor::id3v2tag() { QByteArray array = m_d->peek(2048); int offset = array.indexOf("ID3"); @@ -72,20 +72,20 @@ const FileTag &TagExtractor::id3v2tag() if (!codec) codec = QTextCodec::codecForName ("UTF-8"); - m_tag.setValue(FileTag::ALBUM, - codec->toUnicode(album.toCString(utf)).trimmed()); - m_tag.setValue(FileTag::ARTIST, - codec->toUnicode(artist.toCString(utf)).trimmed()); - m_tag.setValue(FileTag::COMMENT, - codec->toUnicode(comment.toCString(utf)).trimmed()); - m_tag.setValue(FileTag::GENRE, - codec->toUnicode(genre.toCString(utf)).trimmed()); - m_tag.setValue(FileTag::TITLE, - codec->toUnicode(title.toCString(utf)).trimmed()); - m_tag.setValue(FileTag::YEAR, - taglib_tag.year()); - m_tag.setValue(FileTag::TRACK, - taglib_tag.track()); + m_tag.insert(Qmmp::ALBUM, + codec->toUnicode(album.toCString(utf)).trimmed()); + m_tag.insert(Qmmp::ARTIST, + codec->toUnicode(artist.toCString(utf)).trimmed()); + m_tag.insert(Qmmp::COMMENT, + codec->toUnicode(comment.toCString(utf)).trimmed()); + m_tag.insert(Qmmp::GENRE, + codec->toUnicode(genre.toCString(utf)).trimmed()); + m_tag.insert(Qmmp::TITLE, + codec->toUnicode(title.toCString(utf)).trimmed()); + m_tag.insert(Qmmp::YEAR, + QString::number(taglib_tag.year())); + m_tag.insert(Qmmp::TRACK, + QString::number(taglib_tag.track())); return m_tag; diff --git a/src/plugins/Input/mad/tagextractor.h b/src/plugins/Input/mad/tagextractor.h index a814dc5b9..707719535 100644 --- a/src/plugins/Input/mad/tagextractor.h +++ b/src/plugins/Input/mad/tagextractor.h @@ -20,13 +20,15 @@ #ifndef TAGEXTRACTOR_H #define TAGEXTRACTOR_H +#include <QMap> + #include <taglib/tag.h> #include <taglib/fileref.h> #include <taglib/id3v1tag.h> #include <taglib/id3v2tag.h> #include <taglib/id3v2header.h> -#include <qmmp/filetag.h> +#include <qmmp/qmmp.h> class QIODevice; class QBuffer; @@ -42,10 +44,10 @@ public: ~TagExtractor(); -const FileTag &id3v2tag(); + const QMap<Qmmp::MetaData, QString> id3v2tag(); private: - FileTag m_tag; + QMap<Qmmp::MetaData, QString> m_tag; QIODevice *m_d; }; |
