aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authortrialuser02 <trialuser02@90c681e8-e032-0410-971d-27865f9a5e38>2012-05-08 15:04:02 +0000
committertrialuser02 <trialuser02@90c681e8-e032-0410-971d-27865f9a5e38>2012-05-08 15:04:02 +0000
commit5f0cb56001375d6b753364bf5eb9ed19fbe168ec (patch)
tree45180ce871ab1a3b2c647f5b35c280661e6170d1
parent9029e05734463adf0ec34c16b6b96080b672caa7 (diff)
downloadqmmp-5f0cb56001375d6b753364bf5eb9ed19fbe168ec.tar.gz
qmmp-5f0cb56001375d6b753364bf5eb9ed19fbe168ec.tar.bz2
qmmp-5f0cb56001375d6b753364bf5eb9ed19fbe168ec.zip
added upcoming libcdio support (patch by Leon Merten Lohse)
git-svn-id: http://svn.code.sf.net/p/qmmp-dev/code/trunk/qmmp@2715 90c681e8-e032-0410-971d-27865f9a5e38
-rw-r--r--src/plugins/Input/cdaudio/decoder_cdaudio.cpp12
1 files changed, 12 insertions, 0 deletions
diff --git a/src/plugins/Input/cdaudio/decoder_cdaudio.cpp b/src/plugins/Input/cdaudio/decoder_cdaudio.cpp
index 4e6917d03..0d51c3858 100644
--- a/src/plugins/Input/cdaudio/decoder_cdaudio.cpp
+++ b/src/plugins/Input/cdaudio/decoder_cdaudio.cpp
@@ -31,6 +31,7 @@
#include <cdio/sector.h>
#include <cdio/cd_types.h>
#include <cdio/logging.h>
+#include <cdio/version.h>
#include <cddb/cddb.h>
#include <qmmp/buffer.h>
#include <qmmp/output.h>
@@ -170,6 +171,7 @@ QList <CDATrack> DecoderCDAudio::generateTrackList(const QString &device)
return tracks;
}
//cd text
+#if LIBCDIO_VERSION_NUM <= 83
cdtext_t *cdtext = use_cd_text ? cdio_get_cdtext(pcdrom_drive->p_cdio, i) : 0;
if (cdtext && cdtext->field[CDTEXT_TITLE])
{
@@ -178,6 +180,16 @@ QList <CDATrack> DecoderCDAudio::generateTrackList(const QString &device)
t.info.setMetaData(Qmmp::GENRE, QString::fromLocal8Bit(cdtext->field[CDTEXT_GENRE]));
use_cddb = false;
}
+#else
+ cdtext_t *cdtext = use_cd_text ? cdio_get_cdtext(pcdrom_drive->p_cdio) : 0;
+ if (cdtext)
+ {
+ t.info.setMetaData(Qmmp::TITLE, QString::fromUtf8(cdtext_get_const(cdtext,CDTEXT_FIELD_TITLE,i)));
+ t.info.setMetaData(Qmmp::ARTIST, QString::fromUtf8(cdtext_get_const(cdtext,CDTEXT_FIELD_PERFORMER,i)));
+ t.info.setMetaData(Qmmp::GENRE, QString::fromUtf8(cdtext_get_const(cdtext,CDTEXT_FIELD_GENRE,i)));
+ use_cddb = false;
+ }
+#endif
else
t.info.setMetaData(Qmmp::TITLE, QString("CDA Track %1").arg(i, 2, 10, QChar('0')));
tracks << t;