summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rwxr-xr-xconfigure2
-rw-r--r--stream/stream_cdda.c32
2 files changed, 32 insertions, 2 deletions
diff --git a/configure b/configure
index 50286dc352..39dcdf1854 100755
--- a/configure
+++ b/configure
@@ -2513,7 +2513,7 @@ echores "$_dvdread"
echocheck "libcdio"
if test "$_libcdio" = auto ; then
_libcdio=no
- if pkg_config_add 'libcdio_paranoia < 10.2+0.90' ; then
+ if pkg_config_add 'libcdio_paranoia' ; then
_libcdio=yes
fi
fi
diff --git a/stream/stream_cdda.c b/stream/stream_cdda.c
index c8a624c86a..2541e70174 100644
--- a/stream/stream_cdda.c
+++ b/stream/stream_cdda.c
@@ -17,9 +17,20 @@
*/
#include "config.h"
+
+#include <cdio/cdio.h>
+
+#if CDIO_API_VERSION < 6
+#define OLD_API
+#endif
+
+#ifdef OLD_API
#include <cdio/cdda.h>
#include <cdio/paranoia.h>
-#include <cdio/cdio.h>
+#else
+#include <cdio/paranoia/cdda.h>
+#include <cdio/paranoia/paranoia.h>
+#endif
#include <stdio.h>
#include <stdlib.h>
@@ -117,6 +128,7 @@ const m_option_t cdda_opts[] = {
};
static const char *cdtext_name[] = {
+#ifdef OLD_API
[CDTEXT_ARRANGER] = "Arranger",
[CDTEXT_COMPOSER] = "Composer",
[CDTEXT_MESSAGE] = "Message",
@@ -125,17 +137,35 @@ static const char *cdtext_name[] = {
[CDTEXT_SONGWRITER] = "Songwriter",
[CDTEXT_TITLE] = "Title",
[CDTEXT_UPC_EAN] = "UPC_EAN",
+#else
+ [CDTEXT_FIELD_ARRANGER] = "Arranger",
+ [CDTEXT_FIELD_COMPOSER] = "Composer",
+ [CDTEXT_FIELD_MESSAGE] = "Message",
+ [CDTEXT_FIELD_ISRC] = "ISRC",
+ [CDTEXT_FIELD_PERFORMER] = "Performer",
+ [CDTEXT_FIELD_SONGWRITER] = "Songwriter",
+ [CDTEXT_FIELD_TITLE] = "Title",
+ [CDTEXT_FIELD_UPC_EAN] = "UPC_EAN",
+#endif
};
static bool print_cdtext(stream_t *s, int track)
{
cdda_priv* p = (cdda_priv*)s->priv;
+#ifdef OLD_API
cdtext_t *text = cdio_get_cdtext(p->cd->p_cdio, track);
+#else
+ cdtext_t *text = cdio_get_cdtext(p->cd->p_cdio);
+#endif
if (text) {
mp_msg(MSGT_SEEK, MSGL_INFO, "CD-Text (%s):\n", track ? "track" : "CD");
for (int i = 0; i < sizeof(cdtext_name) / sizeof(cdtext_name[0]); i++) {
const char *name = cdtext_name[i];
+#ifdef OLD_API
const char *value = cdtext_get_const(i, text);
+#else
+ const char *value = cdtext_get_const(text, i, track);
+#endif
if (name && value)
mp_msg(MSGT_SEEK, MSGL_INFO, " %s: '%s'\n", name, value);
}