gstreamer-plugins-ugly for f19

Kim Bisgaard <[email protected]> Sun, 02 Jun 2013 15:46:15 +0200
Newsgroups gmane.linux.redhat.rpm.atrpms.devel
Message-ID <[email protected]>
Hi,

I have looked at gstreamer-plugins-ugly for f19, and gotten it to 
compile by:
* updating to 0.10.19
* adding upstream patch for cdio code changes
* riped out sid

Axel: Perhaps I should get an account on your ftp-server to upload 
src.rpm's?

Attached: patch and spec

Regards,
Kim
gstreamer-plugins-ugly.spec (text/x-rpm-spec, 15.4 KB)
%define desktop_vendor ATrpms

%define majorminor   0.10
%define gstreamer    gstreamer

%define gst_minver   0.10.25
%define gstpb_minver 0.10.25

Summary: GStreamer streaming media framework "ugly" plug-ins
Name:    gstreamer-plugins-ugly
Version: 0.10.19
Release: 15%{?dist}
License: LGPLv2
Group:   Applications/Multimedia
URL:     http://gstreamer.freedesktop.org/
Source0: http://gstreamer.freedesktop.org/src/gst-plugins-ugly/gst-plugins-ugly-%{version}.tar.bz2
Patch0: gst-plugins-ugly-%{version}.patch
BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root
BuildRequires: %{gstreamer}-devel >= %{gst_minver}
BuildRequires: %{gstreamer}-plugins-base-devel >= %{gstpb_minver}
BuildRequires: gettext-devel
#BuildRequires: libsidplay-devel >= 1.36.0
BuildRequires: a52dec-devel >= 0.7.3
BuildRequires: libdvdnav-devel >= 0.1.3
BuildRequires: libdvdread-devel >= 0.9.0
BuildRequires: lame-devel >= 3.89
BuildRequires: libid3tag-devel >= 0.15.0
BuildRequires: libmad-devel >= 0.15.0
BuildRequires: twolame-devel
BuildRequires: mpeg2dec-devel >= 0.4.0
BuildRequires: opencore-amr-devel
BuildRequires: liboil-devel
BuildRequires: libcdio-devel
BuildRequires: x264-devel
#BuildRequires: PyXML
Requires: %{gstreamer} >= %{gst_minver}

#Provides: gstreamer-sid = %{version}-%{release}
Provides: gstreamer-lame = %{version}-%{release}
Provides: gstreamer-mad = %{version}-%{release}
Provides: gstreamer-a52dec = %{version}-%{release}
Provides: gstreamer-dvdnav = %{version}-%{release}
Provides: gstreamer-dvdread = %{version}-%{release}
Provides: gstreamer-mpeg2dec = %{version}-%{release}

%description
GStreamer is a streaming media framework, based on graphs of elements,
which operate on media data.

This package contains well-written plug-ins that can't be shipped in
gstreamer-plugins-good because:
- the license is not LGPL
- the license of the library is not LGPL
- there are possible licensing issues with the code.


%prep
%setup -q -n gst-plugins-ugly-%{version}
# Avoid standard rpaths on lib64 archs
sed -i -e 's|"/lib /usr/lib\b|"/%{_lib} %{_libdir}|' configure
%patch -P 0 -p 1

%build
%configure \
    --with-package-name='gst-plugins-ugly %{desktop_vendor} rpm' \
    --with-package-origin='http://atrpms.net/' \
    --enable-debug \
    --disable-static
%{__make} %{?_smp_mflags}


%install
%{__rm} -rf %{buildroot}
%makeinstall
%find_lang gst-plugins-ugly-%{majorminor}

# Clean out files that should not be part of the rpm.
%{__rm} -f %{buildroot}%{_libdir}/gstreamer-%{majorminor}/*.la
%{__rm} -f %{buildroot}%{_libdir}/*.la


%clean
%{__rm} -rf %{buildroot}


%files -f gst-plugins-ugly-%{majorminor}.lang
%defattr(-,root,root,-)
%doc AUTHORS COPYING README REQUIREMENTS
%{_datadir}/gstreamer-%{majorminor}/presets/GstX264Enc.prs
%{_datadir}/gstreamer-%{majorminor}/presets/GstAmrnbEnc.prs
%{_libdir}/gstreamer-%{majorminor}/libgstasf.so
%{_libdir}/gstreamer-%{majorminor}/libgstdvdlpcmdec.so
%{_libdir}/gstreamer-%{majorminor}/libgstdvdsub.so
%{_libdir}/gstreamer-%{majorminor}/libgstiec958.so
%{_libdir}/gstreamer-%{majorminor}/libgstmpegaudioparse.so
%{_libdir}/gstreamer-%{majorminor}/libgstmpegstream.so
%{_libdir}/gstreamer-%{majorminor}/libgstrmdemux.so
%{_libdir}/gstreamer-%{majorminor}/libgsta52dec.so
%{_libdir}/gstreamer-%{majorminor}/libgstcdio.so
%{_libdir}/gstreamer-%{majorminor}/libgstdvdread.so
%{_libdir}/gstreamer-%{majorminor}/libgstlame.so
%{_libdir}/gstreamer-%{majorminor}/libgstmad.so
%{_libdir}/gstreamer-%{majorminor}/libgstmpeg2dec.so
#%{_libdir}/gstreamer-%{majorminor}/libgstsid.so
%{_libdir}/gstreamer-%{majorminor}/libgsttwolame.so
%{_libdir}/gstreamer-%{majorminor}/libgstx264.so
%{_libdir}/gstreamer-%{majorminor}/libgstamrnb.so
%{_libdir}/gstreamer-%{majorminor}/libgstamrwbdec.so


%changelog
* Sun Jun  2 2013 Kim Bisgaard <[email protected]> - 0.10.19-15
- Update to 0.10.19 + patches
- Remove sidplay - new sidplayfp is incompatible

* Mon Jul 04 2011 Paulo Roma <[email protected]> - 0.10.18-14
- Update to 0.10.18.

* Sun Jan 30 2011 Axel Thimm <[email protected]> - 0.10.17-12
- Update to 0.10.17.

* Tue Nov  2 2010 Axel Thimm <[email protected]> - 0.10.16-11
- Update to 0.10.16.

* Sat Jun 05 2010 Paulo Roma <[email protected]> 0.10.15-10
- Updated to 0.10.15

* Sat Apr 10 2010 Paulo Roma <[email protected]> 0.10.14-9
- Updated to 0.10.14
- Removed the x264 patch.
- Added BR amrwb-devel.
- Added BR opencore-amr-devel.

* Sat Nov 28 2009 Paulo Roma <[email protected]> 0.10.13-8
- Patched for Fedora 12 (x264).

* Sat Nov 21 2009 Paulo Roma <[email protected]> 0.10.13-7
- Updated to 0.10.13
- Removed libgstamrnb.so

* Thu Jun 18 2009 Paulo Roma <[email protected]> 0.10.12-6
- Updated to 0.10.12
- Added BR x264-devel.
- Added GstX264Enc.prs

* Fri Apr 03 2009 Paulo Roma <[email protected]> 0.10.11-5
- Updated to 0.10.11
- Added libgsttwolame.so

* Wed Mar 04 2009 Paulo Roma <[email protected]> 0.10.10-4
- Rebuilt against amrnb-7.0.0.2

* Sat Nov 23 2008 Paulo Roma <[email protected]> 0.10.10-3
- Updated to 0.10.10

* Sat Sep 13 2008 Paulo Roma <[email protected]> 0.10.9-3
- Updated to 0.10.9
- Added libgstcdio.so, which has been removed from good.

* Mon Jun 02 2008 Paulo Roma <[email protected]> 0.10.8-2
- Updated to 0.10.8

* Thu Apr 01 2008 Paulo Roma <[email protected]> 0.10.7-2
- Updated to 0.10.7
- Removed rpaths.

* Sat Nov 11 2007 Paulo Roma <[email protected]> 0.10.5-1
- Rebuilt for Fedora 8.

* Tue Aug 21 2007 Matthias Saou <http://freshrpms.net/> 0.10.6-1
- Update to 0.10.6.

* Wed Mar 30 2007 Matthias Saou <http://freshrpms.net/> 0.10.5-2
- Remove gtk-doc entirely, do devel package too.

* Fri Dec 15 2006 Matthias Saou <http://freshrpms.net/> 0.10.5-1
- Update to 0.10.5.
- Remove no longer needed AC3 sound patch.

* Sun Nov 26 2006 Paulo Roma <[email protected]> 0.10.4-3
- Patched to fix AC3 sound.

* Tue Oct 17 2006 Matthias Saou <http://freshrpms.net/> 0.10.4-2
- Include translations which are now built.

* Sun Sep 17 2006 Matthias Saou <http://freshrpms.net/> 0.10.4-1
- Update to 0.10.4.

* Wed Apr 19 2006 Matthias Saou <http://freshrpms.net/> 0.10.3-1
- Update to 0.10.3.
- Remove no longer needed asfdemux fixes patch.
- Include new dvdsub plugin.
- Still don't add and include dvdnav plugin, "not stable yet".

* Tue Mar 28 2006 Matthias Saou <http://freshrpms.net/> 0.10.2-2
- Include backported asfdemux fixes patch from Daniel S. Rogers.

* Wed Feb 22 2006 Matthias Saou <http://freshrpms.net/> 0.10.2-1
- Update to 0.10.2.
- Add libgstasf.so.
- Enable re-added libgstdvdread.so.

* Thu Jan 19 2006 Matthias Saou <http://freshrpms.net/> 0.10.1-1
- Update to 0.10.1.

* Fri Dec 16 2005 Matthias Saou <http://freshrpms.net/> 0.10.0.1-1
- Update to CVS snapshot.
- Enable amrnb support.

* Mon Dec 05 2005 Thomas Vander Stichele <thomas at apestaart dot org>
- 0.10.0-0.gst.1
- new release

* Thu Dec 01 2005 Thomas Vander Stichele <thomas at apestaart dot org>
- 0.9.7-0.gst.1
- new release with 0.10 major/minor
- added mpegstream

* Sat Nov 12 2005 Thomas Vander Stichele <thomas at apestaart dot org>
- new release

* Tue Oct 25 2005 Thomas Vander Stichele <thomas at apestaart dot org>
- 0.9.4-0.gst.1
- added a52dec plugin
- new release

* Mon Oct 03 2005 Thomas Vander Stichele <thomas at apestaart dot org>
- 0.9.3-0.gst.1
- new release
- add -devel and -docs

* Fri Sep 02 2005 Thomas Vander Stichele <thomas at apestaart dot org>
- clean out for split into ugly

* Mon Feb 14 2005 Christian Schaller <christian at fluendo dot com>
- Add vnc plugin

* Wed Jan 19 2005 Christian Schaller <christian at fluendo dot com>
- add dv1394 plugin

* Wed Dec 22 2004 Christian Schaller <christian at fluendo dot com>
- Add -plugins- to plugin names

* Thu Dec  9 2004 Christian Schaller <christian a fluendo dot com>
- Add the mms plugin

* Wed Oct 06 2004 Christian Schaller <christian at fluendo dot com>
- Add Wim's new mng decoder plugin
- add shout2 plugin for Zaheer, hope it is correctly done :)

* Wed Sep 29 2004 Christian Schaller <uraeus at gnome dot org>
- Fix USE statement for V4L2

* Thu Sep 28 2004 Christian Schaller <uraeus at gnome dot org>
- Remove kio plugin (as it was broken)

* Wed Sep 21 2004 Christian Schaller <uraeus at gnome dot org>
- Reorganize SPEC to fit better with fedora.us and freshrpms.net packages
- Make sure gstinterfaces.so is in the package
- Add all new plugins

* Mon Mar 15 2004 Thomas Vander Stichele <thomas at apestaart dot org>
- put back media-info
- add ffmpegcolorspace plugin

* Sun Mar 07 2004 Christian Schaller <[email protected]>
- Remove rm commands for media-info stuff
- Add libdir/*

* Thu Mar 04 2004 Christian Schaller <[email protected]>
- Add missing gconf schema install in %%post

* Tue Mar 02 2004 Thomas Vander Stichele <thomas at apestaart dot org>
- Libraries/Multimedia doesn't exist, remove it

* Tue Mar 02 2004 Thomas Vander Stichele <thomas at apestaart dot org>
- added speex plugin.

* Mon Mar 01 2004 Thomas Vander Stichele <thomas at apestaart dot org>
- Cleaned up the mess.  Could we PLEASE keep this sort of organized and
- alphabetic for easy lookup ?

* Fri Feb 13 2004 Christian Schaller <[email protected]>
- Added latest new headers

* Wed Jan 21 2004 Christian Schaller <[email protected]>
- added NAS plugin
- added i18n locale dir

* Fri Jan 16 2004 Christian Schaller <[email protected]>
- added libcaca plugin
- added libgstcolorspace - fixed name of libgsthermescolorspace

* Wed Jan 14 2004 Christian Schaller <[email protected]>
- Add gamma plugin
- Have the pixbuf plugin deleted for now

* Wed Dec 18 2003 Christian Schaller <[email protected]>
- remove gsttagediting.h as it is gone
- replace it with gst/tag/tag.h

* Sun Nov 23 2003 Christian Schaller <[email protected]>
- Update spec file for latest changes
- add faad plugin

* Thu Oct 16 2003 Christian Schaller <[email protected]>
- Add new colorbalance and tuner and xoverlay stuff
- Change name of kde-audio-devel to arts-devel

* Sat Sep 27 2003 Christian Schaller <[email protected]>
- Add majorminor to man page names
- add navigation lib to package

* Tue Sep 11 2003 Christian Schaller <[email protected]>
- Add -%%{majorminor} to each instance of gst-register

* Tue Aug 19 2003 Christian Schaller <[email protected]>
- Add new plugins

* Sat Jul 12 2003 Thomas Vander Stichele <thomas at apestaart dot org>
- move gst/ mpeg plugins to base package
- remove hermes conditional from snapshot
- remove one instance of resample plugin
- fix up silly versioned plugins efence and rmdemux

* Sat Jul 05 2003 Christian Schaller <[email protected]>
- Major overhaul of SPEC file to make it compatible with what Red Hat ships
  as default
- Probably a little less sexy, but cross-distro SPEC files are a myth anyway
  so making it convenient for RH users wins out
- Keeping conditionals even with new re-org so that developers building the
  RPMS don't need everything installed
- Add bunch of obsoletes to ease migration from earlier official GStreamer RPMS
- Remove plugins that doesn't exist anymore

* Sun Mar 02 2003 Christian Schaller <[email protected]>
- Remove USE_RTP statement from RTP plugin
- Move RTP plugin to no-deps section

* Sat Mar 01 2003 Christian Schaller <[email protected]>
- Remove videosink from SPEC
* Thu Jan 23 2003 Thomas Vander Stichele <thomas at apestaart dot org>
- various fixes
- make video output packages provide gstreamer-videosink

* Thu Jan 23 2003 Thomas Vander Stichele <thomas at apestaart dot org>
- split out ffmpeg stuff to separate plugin

* Fri Dec 27 2002 Thomas Vander Stichele <thomas at apestaart dot org>
- add virtual provides for audio sources and sinks

* Sun Dec 15 2002 Christian Schaller <[email protected]>
- Update mpeg2dec REQ to be 0.3.1

* Tue Dec 10 2002 Thomas Vander Stichele <thomas at apestaart dot org>
- only install schema once
- move out devel lib stuff to -devel package

* Sun Dec 08 2002 Thomas Vander Stichele <thomas at apestaart dot org>
- fix location of libgstpng
- changes for parallel installability

* Thu Nov 28 2002 Christian Schaller <[email protected]>
- Put in libgstpng plugin
- rm the libgstmedia-info stuff until thomas think they are ready

* Fri Nov 01 2002 Thomas Vander Stichele <thomas at apestaart dot org>
- don't use compprep until ABI issues can be fixed

* Wed Oct 30 2002 Thomas Vander Stichele <thomas at apestaart dot org>
- added smpte plugin
- split out dvdnavread package
- fixed snapshot deps and added hermes conditionals

* Tue Oct 29 2002 Thomas Vander Stichele <thomas at apestaart dot org>
- added -play package, libs, and .pc files

* Thu Oct 24 2002 Christian Schaller <[email protected]>
- Added wavenc to audio formats package

* Sat Oct 20 2002 Christian Scchaller <[email protected]>
- Removed all .la files
- added separate non-openquicktime demuxer plugin
- added snapshot plugin
- added videotest plugin
- Split avi plugin out to avi and windec plugins since aviplugin do not depend on avifile
- Added cdplayer plugin

* Fri Sep 20 2002 Thomas Vander Stichele <[email protected]>
- added gst-compprep calls

* Wed Sep 18 2002 Thomas Vander Stichele <[email protected]>
- add gst-register-%%{majorminor} calls everywhere again since auto-reregister doesn't work
- added gstreamer-audio-formats to mad's requires since it needs the typefind
  to work properly

* Mon Sep 9 2002 Christian Schaller <[email protected]>
- Added v4l2 plugin
* Thu Aug 27 2002 Christian Schaller <[email protected]>
- Fixed USE_DV_TRUE to USE_LIBDV_TRUE
- Added Gconf and floatcast headers to gstreamer-plugins-devel package
- Added mixmatrix plugin to audio-effects package

* Thu Jul 11 2002 Thomas Vander Stichele <[email protected]>
- fixed oss package to buildrequire instead of require glibc headers

* Mon Jul 08 2002 Thomas Vander Stichele <[email protected]>
- fixed -devel package group

* Fri Jul 05 2002 Thomas Vander Stichele <[email protected]>
- release 0.4.0 !
- added gstreamer-libs.pc
- removed all gst-register-%%{majorminor} calls since this should be done automatically now

* Thu Jul 04 2002 Thomas Vander Stichele <[email protected]>
- fix issue with SDL package
- make all packages STRICTLY require the right version to avoid
  ABI issues
- make gst-plugins obsolete gst-plugin-libs
- also send output of gst-register-%%{majorminor} to /dev/null to lower the noise

* Wed Jul 03 2002 Thomas Vander Stichele <[email protected]>
- require glibc-devel instead of glibc-kernheaders since the latter is only
  since 7.3 and glibc-devel pulls in the right package anyway

* Sun Jun 23 2002 Thomas Vander Stichele <[email protected]>
- changed header location of plug-in libs

* Mon Jun 17 2002 Thomas Vander Stichele <[email protected]>
- major cleanups
- adding gst-register-%%{majorminor} on postun everywhere
- remove ldconfig since we don't actually install libs in system dirs
- removed misc package
- added video-effects
- dot every Summary
- uniformify all descriptions a little

* Thu Jun 06 2002 Thomas Vander Stichele <[email protected]>
- various BuildRequires: additions

* Tue Jun 04 2002 Thomas Vander Stichele <[email protected]>
- added USE_LIBADSPA_TRUE bits to ladspa package

* Mon Jun 03 2002 Thomas Vander Stichele <[email protected]>
- Added libfame package

* Mon May 12 2002 Christian Fredrik Kalager Schaller <[email protected]>
- Added jack, dxr3, http packages
- Added visualisation plug-ins, effecttv and synaesthesia
- Created devel package
- Removed gstreamer-plugins-libs package (moved it into gstreamer-plugins)
- Replaced prefix/dirname with _macros

* Mon May 06 2002 Thomas Vander Stichele <[email protected]>
- added gstreamer-GConf package

* Wed Mar 13 2002 Thomas Vander Stichele <[email protected]>
- added more BuildRequires and Requires
- rearranged some plug-ins
- added changelog ;)
gst-plugins-ugly-0.10.19.patch (text/x-patch, 5.7 KB)
diff --git a/ext/cdio/gstcdio.c b/ext/cdio/gstcdio.c
index 8940112..7b59030 100644
--- a/ext/cdio/gstcdio.c
+++ b/ext/cdio/gstcdio.c
@@ -30,12 +30,16 @@
 GST_DEBUG_CATEGORY (gst_cdio_debug);
 
 void
-gst_cdio_add_cdtext_field (GstObject * src, cdtext_t * cdtext,
+gst_cdio_add_cdtext_field (GstObject * src, cdtext_t * cdtext, track_t track,
     cdtext_field_t field, const gchar * gst_tag, GstTagList ** p_tags)
 {
   const gchar *txt;
 
+#if LIBCDIO_VERSION_NUM > 83
+  txt = cdtext_get_const (cdtext, field, track);
+#else
   txt = cdtext_get_const (field, cdtext);
+#endif
   if (txt == NULL || *txt == '\0') {
     GST_DEBUG_OBJECT (src, "empty CD-TEXT field %u (%s)", field, gst_tag);
     return;
@@ -57,6 +61,12 @@ gst_cdio_add_cdtext_field (GstObject * src, cdtext_t * cdtext,
 }
 
 GstTagList *
+#if LIBCDIO_VERSION_NUM > 83
+gst_cdio_get_cdtext (GstObject * src, cdtext_t * t, track_t track)
+{
+  GstTagList *tags = NULL;
+
+#else
 gst_cdio_get_cdtext (GstObject * src, CdIo * cdio, track_t track)
 {
   GstTagList *tags = NULL;
@@ -67,14 +77,22 @@ gst_cdio_get_cdtext (GstObject * src, CdIo * cdio, track_t track)
     GST_DEBUG_OBJECT (src, "no CD-TEXT for track %u", track);
     return NULL;
   }
+#endif
 
-  gst_cdio_add_cdtext_field (src, t, CDTEXT_PERFORMER, GST_TAG_ARTIST, &tags);
-  gst_cdio_add_cdtext_field (src, t, CDTEXT_TITLE, GST_TAG_TITLE, &tags);
+  gst_cdio_add_cdtext_field (src, t, track, CDTEXT_FIELD_PERFORMER,
+      GST_TAG_ARTIST, &tags);
+  gst_cdio_add_cdtext_field (src, t, track, CDTEXT_FIELD_TITLE, GST_TAG_TITLE,
+      &tags);
 
   return tags;
 }
 
 void
+#if LIBCDIO_VERSION_NUM > 83
+gst_cdio_add_cdtext_album_tags (GstObject * src, cdtext_t * t,
+    GstTagList * tags)
+{
+#else
 gst_cdio_add_cdtext_album_tags (GstObject * src, CdIo * cdio, GstTagList * tags)
 {
   cdtext_t *t;
@@ -84,11 +102,14 @@ gst_cdio_add_cdtext_album_tags (GstObject * src, CdIo * cdio, GstTagList * tags)
     GST_DEBUG_OBJECT (src, "no CD-TEXT for album");
     return;
   }
+#endif
 
-  /* FIXME: map CDTEXT_PERFORMER to GST_TAG_ALBUM_ARTIST once we have that */
-  gst_cdio_add_cdtext_field (src, t, CDTEXT_TITLE, GST_TAG_ALBUM, &tags);
-  gst_cdio_add_cdtext_field (src, t, CDTEXT_GENRE, GST_TAG_GENRE, &tags);
-
+  gst_cdio_add_cdtext_field (src, t, 0, CDTEXT_FIELD_PERFORMER,
+      GST_TAG_ALBUM_ARTIST, &tags);
+  gst_cdio_add_cdtext_field (src, t, 0, CDTEXT_FIELD_TITLE, GST_TAG_ALBUM,
+      &tags);
+  gst_cdio_add_cdtext_field (src, t, 0, CDTEXT_FIELD_GENRE, GST_TAG_GENRE,
+      &tags);
   GST_DEBUG ("CD-TEXT album tags: %" GST_PTR_FORMAT, tags);
 }
 
diff --git a/ext/cdio/gstcdio.h b/ext/cdio/gstcdio.h
index ef31ed0..c6da580 100644
--- a/ext/cdio/gstcdio.h
+++ b/ext/cdio/gstcdio.h
@@ -24,22 +24,38 @@
 #include <gst/gst.h>
 #include <cdio/cdio.h>
 #include <cdio/cdtext.h>
+#include <cdio/version.h>
+
+#if LIBCDIO_VERSION_NUM <= 83
+  #define CDTEXT_FIELD_PERFORMER CDTEXT_PERFORMER
+  #define CDTEXT_FIELD_GENRE     CDTEXT_GENRE
+  #define CDTEXT_FIELD_TITLE     CDTEXT_TITLE
+#endif
 
 GST_DEBUG_CATEGORY_EXTERN (gst_cdio_debug);
 #define GST_CAT_DEFAULT gst_cdio_debug
 
 void     gst_cdio_add_cdtext_field (GstObject      * src,
                                     cdtext_t       * cdtext,
+                                    track_t          track,
                                     cdtext_field_t   field,
                                     const gchar    * gst_tag,
                                     GstTagList    ** p_tags);
 
 GstTagList  * gst_cdio_get_cdtext  (GstObject      * src,
+#if LIBCDIO_VERSION_NUM > 83
+                                    cdtext_t       * t,
+#else
                                     CdIo           * cdio,
+#endif
                                     track_t          track);
 
 void      gst_cdio_add_cdtext_album_tags (GstObject  * src,
+#if LIBCDIO_VERSION_NUM > 83
+                                          cdtext_t   * t,
+#else
                                           CdIo       * cdio,
+#endif
                                           GstTagList * tags);
 
 #endif /* __GST_CDIO_H__ */
diff --git a/ext/cdio/gstcdiocddasrc.c b/ext/cdio/gstcdiocddasrc.c
index f57e368..88cf0c3 100644
--- a/ext/cdio/gstcdiocddasrc.c
+++ b/ext/cdio/gstcdiocddasrc.c
@@ -218,6 +218,9 @@ gst_cdio_cdda_src_open (GstCddaBaseSrc * cddabasesrc, const gchar * device)
   GstCdioCddaSrc *src;
   discmode_t discmode;
   gint first_track, num_tracks, i;
+#if LIBCDIO_VERSION_NUM > 83
+  cdtext_t *cdtext;
+#endif
 
   src = GST_CDIO_CDDA_SRC (cddabasesrc);
 
@@ -244,8 +247,18 @@ gst_cdio_cdda_src_open (GstCddaBaseSrc * cddabasesrc, const gchar * device)
   if (src->read_speed != -1)
     cdio_set_speed (src->cdio, src->read_speed);
 
+#if LIBCDIO_VERSION_NUM > 83
+  cdtext = cdio_get_cdtext (src->cdio);
+
+  if (NULL == cdtext)
+    GST_DEBUG_OBJECT (src, "no CD-TEXT on disc");
+  else
+    gst_cdio_add_cdtext_album_tags (GST_OBJECT_CAST (src), cdtext,
+        cddabasesrc->tags);
+#else
   gst_cdio_add_cdtext_album_tags (GST_OBJECT_CAST (src), src->cdio,
       cddabasesrc->tags);
+#endif
 
   GST_LOG_OBJECT (src, "%u tracks, first track: %d", num_tracks, first_track);
 
@@ -262,8 +275,14 @@ gst_cdio_cdda_src_open (GstCddaBaseSrc * cddabasesrc, const gchar * device)
      * the right thing here (for cddb id calculations etc. as well) */
     track.start = cdio_get_track_lsn (src->cdio, i + first_track);
     track.end = track.start + len_sectors - 1;  /* -1? */
+#if LIBCDIO_VERSION_NUM > 83
+    if (NULL != cdtext)
+      track.tags = gst_cdio_get_cdtext (GST_OBJECT (src), cdtext,
+          i + first_track);
+#else
     track.tags = gst_cdio_get_cdtext (GST_OBJECT (src), src->cdio,
         i + first_track);
+#endif
 
     gst_cdda_base_src_add_track (GST_CDDA_BASE_SRC (src), &track);
   }
--
cgit v0.9.0.2-2-gbebe