aboutsummaryrefslogtreecommitdiff
path: root/src/plugins/Input/wavpack
diff options
context:
space:
mode:
authortrialuser02 <trialuser02@90c681e8-e032-0410-971d-27865f9a5e38>2008-11-28 15:46:53 +0000
committertrialuser02 <trialuser02@90c681e8-e032-0410-971d-27865f9a5e38>2008-11-28 15:46:53 +0000
commit26724c66d4764a77ca653ce6c0a1573e9e97e97c (patch)
treef238f84ed390de31471cb95a20e3775f2ea7e3e7 /src/plugins/Input/wavpack
parentd02787b92ad9a220539498ebbc9f1745a075d10d (diff)
downloadqmmp-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.cpp44
-rw-r--r--src/plugins/Input/wavpack/decoderwavpackfactory.h2
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);