diff options
| author | trialuser02 <trialuser02@90c681e8-e032-0410-971d-27865f9a5e38> | 2008-11-28 15:46:53 +0000 |
|---|---|---|
| committer | trialuser02 <trialuser02@90c681e8-e032-0410-971d-27865f9a5e38> | 2008-11-28 15:46:53 +0000 |
| commit | 26724c66d4764a77ca653ce6c0a1573e9e97e97c (patch) | |
| tree | f238f84ed390de31471cb95a20e3775f2ea7e3e7 /src/plugins/Input/wavpack | |
| parent | d02787b92ad9a220539498ebbc9f1745a075d10d (diff) | |
| download | qmmp-26724c66d4764a77ca653ce6c0a1573e9e97e97c.tar.gz qmmp-26724c66d4764a77ca653ce6c0a1573e9e97e97c.tar.bz2 qmmp-26724c66d4764a77ca653ce6c0a1573e9e97e97c.zip | |
changed decoder api; fixed flac plugin
git-svn-id: http://svn.code.sf.net/p/qmmp-dev/code/trunk/qmmp@646 90c681e8-e032-0410-971d-27865f9a5e38
Diffstat (limited to 'src/plugins/Input/wavpack')
| -rw-r--r-- | src/plugins/Input/wavpack/decoderwavpackfactory.cpp | 44 | ||||
| -rw-r--r-- | src/plugins/Input/wavpack/decoderwavpackfactory.h | 2 |
2 files changed, 25 insertions, 21 deletions
diff --git a/src/plugins/Input/wavpack/decoderwavpackfactory.cpp b/src/plugins/Input/wavpack/decoderwavpackfactory.cpp index 114cd5366..14138be1e 100644 --- a/src/plugins/Input/wavpack/decoderwavpackfactory.cpp +++ b/src/plugins/Input/wavpack/decoderwavpackfactory.cpp @@ -20,7 +20,8 @@ #include <QtGui> -extern "C"{ +extern "C" +{ #include <wavpack/wavpack.h> } @@ -57,39 +58,42 @@ const DecoderProperties DecoderWavPackFactory::properties() const } Decoder *DecoderWavPackFactory::create(QObject *parent, QIODevice *input, - Output *output, const QString &path) + Output *output, const QString &path) { Q_UNUSED(input); return new DecoderWavPack(parent, this, output, path); } -QList<FileInfo *> DecoderWavPackFactory::createPlayList(const QString &fileName) +QList<FileInfo *> DecoderWavPackFactory::createPlayList(const QString &fileName, bool useMetaData) { QList <FileInfo*> list; char err[80]; WavpackContext *ctx = WavpackOpenFileInput (fileName.toLocal8Bit(), err, - OPEN_WVC | OPEN_TAGS, 0); - if(!ctx) + OPEN_WVC | OPEN_TAGS, 0); + if (!ctx) { qWarning("DecoderWavPackFactory: error: %s", err); return list; } FileInfo *info = new FileInfo(fileName); - char value[200]; - WavpackGetTagItem (ctx, "Album", value, sizeof(value)); - info->setMetaData(Qmmp::ALBUM, QString::fromUtf8(value)); - WavpackGetTagItem (ctx, "Artist", value, sizeof(value)); - info->setMetaData(Qmmp::ARTIST, QString::fromUtf8(value)); - WavpackGetTagItem (ctx, "Comment", value, sizeof(value)); - info->setMetaData(Qmmp::COMMENT, QString::fromUtf8(value)); - WavpackGetTagItem (ctx, "Genre", value, sizeof(value)); - info->setMetaData(Qmmp::GENRE, QString::fromUtf8(value)); - WavpackGetTagItem (ctx, "Title", value, sizeof(value)); - info->setMetaData(Qmmp::TITLE, QString::fromUtf8(value)); - WavpackGetTagItem (ctx, "Year", value, sizeof(value)); - info->setMetaData(Qmmp::YEAR, QString::fromUtf8(value).toInt()); - WavpackGetTagItem (ctx, "Track", value, sizeof(value)); - info->setMetaData(Qmmp::TRACK, QString::fromUtf8(value).toInt()); + if (useMetaData) + { + char value[200]; + WavpackGetTagItem (ctx, "Album", value, sizeof(value)); + info->setMetaData(Qmmp::ALBUM, QString::fromUtf8(value)); + WavpackGetTagItem (ctx, "Artist", value, sizeof(value)); + info->setMetaData(Qmmp::ARTIST, QString::fromUtf8(value)); + WavpackGetTagItem (ctx, "Comment", value, sizeof(value)); + info->setMetaData(Qmmp::COMMENT, QString::fromUtf8(value)); + WavpackGetTagItem (ctx, "Genre", value, sizeof(value)); + info->setMetaData(Qmmp::GENRE, QString::fromUtf8(value)); + WavpackGetTagItem (ctx, "Title", value, sizeof(value)); + info->setMetaData(Qmmp::TITLE, QString::fromUtf8(value)); + WavpackGetTagItem (ctx, "Year", value, sizeof(value)); + info->setMetaData(Qmmp::YEAR, QString::fromUtf8(value).toInt()); + WavpackGetTagItem (ctx, "Track", value, sizeof(value)); + info->setMetaData(Qmmp::TRACK, QString::fromUtf8(value).toInt()); + } info->setLength((int) WavpackGetNumSamples(ctx)/WavpackGetSampleRate(ctx)); WavpackCloseFile (ctx); list << info; diff --git a/src/plugins/Input/wavpack/decoderwavpackfactory.h b/src/plugins/Input/wavpack/decoderwavpackfactory.h index 1213dd92a..212a240d2 100644 --- a/src/plugins/Input/wavpack/decoderwavpackfactory.h +++ b/src/plugins/Input/wavpack/decoderwavpackfactory.h @@ -42,7 +42,7 @@ public: bool canDecode(QIODevice *input) const; const DecoderProperties properties() const; Decoder *create(QObject *, QIODevice *, Output *, const QString &); - QList<FileInfo *> createPlayList(const QString &fileName); + QList<FileInfo *> createPlayList(const QString &fileName, bool useMetaData); QObject* showDetails(QWidget *parent, const QString &path); void showSettings(QWidget *parent); void showAbout(QWidget *parent); |
