summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDarren Salt <linux@youmustbejoking.demon.co.uk>2010-03-22 20:11:49 +0000
committerDarren Salt <linux@youmustbejoking.demon.co.uk>2010-03-22 20:11:49 +0000
commit44cb6424859b9410db18bb75d9f10489b238358b (patch)
treea818521c92ae150954f4d422b99ea6de9a5ad061
parent06b540dccb1ba1800e196a150026896fa1527e09 (diff)
downloadxine-lib-44cb6424859b9410db18bb75d9f10489b238358b.tar.gz
xine-lib-44cb6424859b9410db18bb75d9f10489b238358b.tar.bz2
Add support for Ogg tag 'DISCNUMBER' and ID3 tag 'TPOS'.
-rw-r--r--ChangeLog1
-rw-r--r--include/xine.h.in2
-rw-r--r--src/demuxers/demux_ogg.c1
-rw-r--r--src/demuxers/id3.c8
4 files changed, 12 insertions, 0 deletions
diff --git a/ChangeLog b/ChangeLog
index 7a7c3656e..c572604c0 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -2,6 +2,7 @@ xine-lib (1.1.19) 2010-??-??
* Handle odd widths properly (for ffmpeg-decoded video).
* Make buildable with current (external) libdvdnav & libdvdread.
* Fix V4L2 check.
+ * Add support for Ogg tag 'DISCNUMBER' and ID3 tag 'TPOS'.
xine-lib (1.1.18.1) 2010-03-06
* Oops. compat.c (for DXR3 support) was omitted.
diff --git a/include/xine.h.in b/include/xine.h.in
index 0a3121bee..3fcd5c4ec 100644
--- a/include/xine.h.in
+++ b/include/xine.h.in
@@ -1008,6 +1008,8 @@ const char *xine_get_meta_info (xine_stream_t *stream, int info) XINE_PROTECTE
#define XINE_META_INFO_PART 23
#define XINE_META_INFO_PARTNUMBER 24
#define XINE_META_INFO_LOCATION 25
+/* post-1.1.18.1 */
+#define XINE_META_INFO_DISCNUMBER 26
/*********************************************************************
diff --git a/src/demuxers/demux_ogg.c b/src/demuxers/demux_ogg.c
index 1be5c0dcf..573baa593 100644
--- a/src/demuxers/demux_ogg.c
+++ b/src/demuxers/demux_ogg.c
@@ -426,6 +426,7 @@ static const struct ogg_meta {
OGG_META (ARTIST, 0),
OGG_META (PUBLISHER, 0),
OGG_META (COPYRIGHT, 0),
+ OGG_META (DISCNUMBER, 0),
OGG_META (LICENSE, 0),
OGG_META (TITLE, 0),
OGG_META_L (TRACKNUMBER, 0, TRACK_NUMBER),
diff --git a/src/demuxers/id3.c b/src/demuxers/id3.c
index 15599ffea..755decaf4 100644
--- a/src/demuxers/id3.c
+++ b/src/demuxers/id3.c
@@ -525,6 +525,10 @@ static int id3v23_interp_frame(input_plugin_t *input,
_x_meta_info_set(stream, XINE_META_INFO_TRACK_NUMBER, buf + 1);
break;
+ case FOURCC_TAG('T', 'P', 'O', 'S'):
+ _x_meta_info_set(stream, XINE_META_INFO_DISCNUMBER, buf + 1);
+ break;
+
default:
lprintf("unhandled frame\n");
}
@@ -783,6 +787,10 @@ static int id3v24_interp_frame(input_plugin_t *input,
_x_meta_info_set(stream, XINE_META_INFO_TRACK_NUMBER, buf + 1);
break;
+ case FOURCC_TAG('T', 'P', 'O', 'S'):
+ _x_meta_info_set(stream, XINE_META_INFO_DISCNUMBER, buf + 1);
+ break;
+
default:
lprintf("unhandled frame\n");
}