From 76095a46370939213ceffca85129baa3d9bac0d4 Mon Sep 17 00:00:00 2001 From: trialuser02 Date: Fri, 26 Sep 2008 17:10:51 +0000 Subject: enabled in-stream metadata support git-svn-id: http://svn.code.sf.net/p/qmmp-dev/code/trunk/qmmp@562 90c681e8-e032-0410-971d-27865f9a5e38 --- src/plugins/Input/mad/decoder_mad.cpp | 4 +--- src/plugins/Input/mad/tagextractor.cpp | 30 +++++++++++++++--------------- src/plugins/Input/mad/tagextractor.h | 8 +++++--- 3 files changed, 21 insertions(+), 21 deletions(-) (limited to 'src/plugins/Input') 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 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 + #include #include #include #include #include -#include +#include class QIODevice; class QBuffer; @@ -42,10 +44,10 @@ public: ~TagExtractor(); -const FileTag &id3v2tag(); + const QMap id3v2tag(); private: - FileTag m_tag; + QMap m_tag; QIODevice *m_d; }; -- cgit v1.2.3-13-gbd6f