* Wed Jan 31 2007 Ville Skyttä <ville.skytta at iki.fi> - 1.1.4-1

- 1.1.4, with wavpack and system libmpcdec support.
This commit is contained in:
Ville Skyttä 2007-02-02 18:02:26 +00:00
parent ccb6410b41
commit 8c12c1927d
6 changed files with 60 additions and 176 deletions

View File

@ -1,2 +1,2 @@
xine-lib-1.1.3-pruned.tar.bz2
xine-lib-1.1.3-autotools.patch.bz2
xine-lib-1.1.4-pruned.tar.bz2
xine-lib-1.1.4-autotools.patch.bz2

View File

@ -1,2 +1,2 @@
eff682745f198e1881773509f12c70c3 xine-lib-1.1.3-pruned.tar.bz2
a58fce450d9288224caa413ad8bc1f8d xine-lib-1.1.3-autotools.patch.bz2
81faabf1e38abed44639dbe4c76719f9 xine-lib-1.1.4-pruned.tar.bz2
a916758545ed73a369f40648c7bc449c xine-lib-1.1.4-autotools.patch.bz2

View File

@ -1,149 +0,0 @@
Index: xine-lib/src/libflac/decoder_flac.c
diff -u xine-lib/src/libflac/decoder_flac.c:1.21 xine-lib/src/libflac/decoder_flac.c:1.22
--- xine-lib/src/libflac/decoder_flac.c:1.21 Sat Aug 5 13:34:42 2006
+++ xine-lib/src/libflac/decoder_flac.c Mon Dec 25 19:22:00 2006
@@ -30,6 +30,13 @@
#include <FLAC/stream_decoder.h>
+#if !defined FLAC_API_VERSION_CURRENT || FLAC_API_VERSION_CURRENT < 8
+#include <FLAC/seekable_stream_decoder.h>
+#define LEGACY_FLAC
+#else
+#undef LEGACY_FLAC
+#endif
+
#define LOG_MODULE "flac_decoder"
#define LOG_VERBOSE
@@ -344,6 +351,7 @@
this->flac_decoder = FLAC__stream_decoder_new();
+#ifdef LEGACY_FLAC
FLAC__stream_decoder_set_read_callback (this->flac_decoder,
flac_read_callback);
FLAC__stream_decoder_set_write_callback (this->flac_decoder,
@@ -359,6 +367,22 @@
free (this);
return NULL;
}
+#else
+ if ( FLAC__stream_decoder_init_stream (this->flac_decoder,
+ flac_read_callback,
+ NULL, /* seek */
+ NULL, /* tell */
+ NULL, /* length */
+ NULL, /* eof */
+ flac_write_callback,
+ NULL, /* metadata */
+ flac_error_callback,
+ this
+ ) != FLAC__STREAM_DECODER_INIT_STATUS_OK ) {
+ free (this);
+ return NULL;
+ }
+#endif
return (audio_decoder_t *) this;
}
Index: xine-lib/src/libflac/demux_flac.c
diff -u xine-lib/src/libflac/demux_flac.c:1.24 xine-lib/src/libflac/demux_flac.c:1.25
--- xine-lib/src/libflac/demux_flac.c:1.24 Sat Oct 21 18:50:41 2006
+++ xine-lib/src/libflac/demux_flac.c Mon Dec 25 19:22:00 2006
@@ -441,7 +441,11 @@
lprintf("demux_flac_dispose\n");
if (this->flac_decoder)
+#ifdef LEGACY_FLAC
FLAC__seekable_stream_decoder_delete (this->flac_decoder);
+#else
+ FLAC__stream_decoder_delete (this->flac_decoder);
+#endif
free(this);
return;
@@ -494,8 +498,13 @@
}
target_sample = (uint64_t)(distance * this->total_samples);
+#ifdef LEGACY_FLAC
s = FLAC__seekable_stream_decoder_seek_absolute (this->flac_decoder,
target_sample);
+#else
+ s = FLAC__stream_decoder_seek_absolute (this->flac_decoder,
+ target_sample);
+#endif
if (s) {
lprintf ("Seek to: %d successfull!\n", start_time);
@@ -618,9 +627,6 @@
/* Get a new FLAC decoder and hook up callbacks */
#ifdef LEGACY_FLAC
this->flac_decoder = FLAC__seekable_stream_decoder_new();
-#else
- this->flac_decoder = FLAC__stream_decoder_new();
-#endif
lprintf("this->flac_decoder: %p\n", this->flac_decoder);
FLAC__seekable_stream_decoder_set_md5_checking (this->flac_decoder, false);
@@ -644,6 +650,37 @@
this);
FLAC__seekable_stream_decoder_init (this->flac_decoder);
+#else
+ this->flac_decoder = FLAC__stream_decoder_new();
+ lprintf("this->flac_decoder: %p\n", this->flac_decoder);
+
+ if ( ! this->flac_decoder ) {
+ free(this);
+ return NULL;
+ }
+
+ FLAC__stream_decoder_set_md5_checking (this->flac_decoder, false);
+
+ if ( FLAC__stream_decoder_init_stream(this->flac_decoder,
+ flac_read_callback,
+ flac_seek_callback,
+ flac_tell_callback,
+ flac_length_callback,
+ flac_eof_callback,
+ flac_write_callback,
+ flac_metadata_callback,
+ flac_error_callback,
+ this
+ ) != FLAC__STREAM_DECODER_INIT_STATUS_OK ) {
+#ifdef LEGACY_FLAC
+ FLAC__seekable_stream_decoder_delete (this->flac_decoder);
+#else
+ FLAC__stream_decoder_delete (this->flac_decoder);
+#endif
+ free(this);
+ return NULL;
+ }
+#endif
/* Get some stream info */
this->data_size = this->input->get_length (this->input);
@@ -653,13 +690,21 @@
* this flac stream
*/
this->status = DEMUX_OK;
+#ifdef LEGACY_FLAC
FLAC__seekable_stream_decoder_process_until_end_of_metadata (this->flac_decoder);
+#else
+ FLAC__stream_decoder_process_until_end_of_metadata (this->flac_decoder);
+#endif
lprintf("Processed file until end of metadata: %s\n",
this->status == DEMUX_OK ? "success" : "failure");
if (this->status != DEMUX_OK) {
+#ifdef LEGACY_FLAC
FLAC__seekable_stream_decoder_delete (this->flac_decoder);
+#else
+ FLAC__stream_decoder_delete (this->flac_decoder);
+#endif
free (this);
return NULL;
}

View File

@ -1,5 +1,5 @@
--- xine-lib-1.1.3/m4/optimizations.m4~ 2006-06-17 18:20:56.000000000 +0300
+++ xine-lib-1.1.3/m4/optimizations.m4 2006-12-17 11:49:44.000000000 +0200
--- xine-lib-1.1.4/m4/optimizations.m4~ 2006-06-17 18:20:56.000000000 +0300
+++ xine-lib-1.1.4/m4/optimizations.m4 2007-01-30 23:03:27.000000000 +0200
@@ -107,7 +107,7 @@
DEBUG_CFLAGS="-O $DEBUG_CFLAGS"
@ -9,9 +9,9 @@
archopt_val=
case "$host_or_hostalias" in
--- xine-lib-1.1.3/configure~ 2006-12-03 21:41:27.000000000 +0200
+++ xine-lib-1.1.3/configure 2006-12-17 11:50:07.000000000 +0200
@@ -46971,7 +46971,7 @@
--- xine-lib-1.1.4/configure~ 2007-01-30 23:02:56.000000000 +0200
+++ xine-lib-1.1.4/configure 2007-01-30 23:03:40.000000000 +0200
@@ -47754,7 +47754,7 @@
DEBUG_CFLAGS="-O $DEBUG_CFLAGS"

View File

@ -0,0 +1,24 @@
#!/bin/sh
# be sure to have all build deps + libtool installed before running this
set -e
if [ -z "$1" -o $# -ne 1 ]; then
echo "Usage: $0 <xine-lib-version>"
exit 2
fi
version=$1
rm -rf xine-lib-$version xine-lib-$version-pruned
tar jxf xine-lib-$version-pruned.tar.bz2
cp -a xine-lib-$version xine-lib-$version-pruned
cd xine-lib-$version
./autogen.sh noconfig
rm -rf autom4te.cache *~
cd ..
diff -Nru xine-lib-$version-pruned xine-lib-$version \
| bzip2 --best > xine-lib-$version-autotools.patch.bz2

View File

@ -1,29 +1,26 @@
# TODO, sometime, maybe:
# - libstk: http://www.libstk.net/
# - pulseaudio
# - --enable-antialiasing?
%define codecdir %{_libdir}/codecs
Summary: Xine library
Name: xine-lib
Version: 1.1.3
Release: 3%{?dist}
Version: 1.1.4
Release: 1%{?dist}
License: GPL
Group: System Environment/Libraries
URL: http://xinehq.de/
# The tarball is generated from the upstream tarball using
# the script in SOURCE1. It prunes potentially patented code
#Source0: http://dl.sourceforge.net/xine/xine-lib-%{version}.tar.gz
#Source0: http://dl.sourceforge.net/xine/xine-lib-%{version}.tar.bz2
Source0: %{name}-%{version}-pruned.tar.bz2
Source1: %{name}-cleanup-sources.sh
# To recreate the autotools patch: install build deps, extract source0,
# remove run_configure "$@" from autogen.sh, copy the dir to -patched,
# run autogen.sh (doesn't work with automake 1.10 as of 1.1.3 so use 1.9),
# remove autom4te.cache, then diff the dirs. Apply rest of the patches during
# build so that autotools do not need to be run again.
Patch0: %{name}-1.1.3-autotools.patch.bz2
Patch1: %{name}-1.1.3-optflags.patch
Patch2: %{name}-1.1.3-flac113.patch
Source2: %{name}-mk-autotools-patch.sh
# autotools patch created with source2
Patch0: %{name}-1.1.4-autotools.patch.bz2
Patch1: %{name}-1.1.4-optflags.patch
Patch3: %{name}-1.1.3-legacy-flac-init.patch
Patch6: %{name}-1.1.1-deepbind-939.patch
Patch7: %{name}-1.1.1-multilib-devel.patch
@ -45,7 +42,7 @@ BuildRequires: ImageMagick-devel >= 6.2.4.6-1
# Audio
BuildRequires: libogg-devel libvorbis-devel flac-devel libmodplug-devel
BuildRequires: esound-devel speex-devel arts-devel alsa-lib-devel >= 0.9.0
BuildRequires: jack-audio-connection-kit-devel
BuildRequires: jack-audio-connection-kit-devel wavpack-devel libmpcdec-devel
# CDs
BuildRequires: libcdio-devel
# Other
@ -101,10 +98,10 @@ This package contains extra plugins for xine-lib:
%prep
%setup -q
%patch0 -p1 -b .autotools
cp -p m4/optimizations.m4 m4/optimizations.m4.stamp
touch -r configure.ac aclocal.m4
touch -r m4/optimizations.m4 m4/optimizations.m4.stamp
%patch1 -p1 -b .optflags
touch -r m4/optimizations.m4.stamp m4/optimizations.m4
%patch2 -p1 -b .flac113
%patch3 -p0 -b .legacy-flac-init
# Patch6 needed at least when compiling with external ffmpeg, #939.
%patch6 -p1 -b .deepbind
@ -124,6 +121,9 @@ export SDL_CFLAGS="$(sdl-config --cflags)" SDL_LIBS="$(sdl-config --libs)"
--with-xv-path=%{_libdir} \
--with-w32-path=%{codecdir} \
--with-external-ffmpeg \
--with-external-libmpcdec \
--with-libflac \
--with-wavpack \
--enable-ipv6 \
%if 0%{!?_without_directfb:1}
--enable-directfb \
@ -149,8 +149,8 @@ make %{?_smp_mflags}
rm -rf $RPM_BUILD_ROOT __docs
make install DESTDIR=$RPM_BUILD_ROOT
%find_lang libxine1
cp -pR $RPM_BUILD_ROOT%{_docdir}/xine __docs
rm -rf $RPM_BUILD_ROOT%{_docdir}/xine
cp -pR $RPM_BUILD_ROOT%{_docdir}/xine-lib __docs
rm -rf $RPM_BUILD_ROOT%{_docdir}/xine-lib
# Removing useless files
rm -Rf $RPM_BUILD_ROOT%{_libdir}/libxine.la __docs/README \
@ -166,12 +166,14 @@ rm -rf $RPM_BUILD_ROOT
%post -p /sbin/ldconfig
%postun -p /sbin/ldconfig
%files -f libxine1.lang
%defattr(-,root,root,-)
%doc AUTHORS COPYING CREDITS ChangeLog* README TODO __docs/README.* __docs/faq
%doc AUTHORS COPYING CREDITS ChangeLog* README TODO
%doc __docs/README.* __docs/faq.*
%dir %{codecdir}
%{_datadir}/xine
%{_libdir}/libxine.so.*
@ -213,6 +215,7 @@ rm -rf $RPM_BUILD_ROOT
%{_libdir}/xine/plugins/%{version}/xineplug_decode_theora.so
%{_libdir}/xine/plugins/%{version}/xineplug_decode_spudvb.so
%{_libdir}/xine/plugins/%{version}/xineplug_decode_mpc.so
%{_libdir}/xine/plugins/%{version}/xineplug_decode_sputext.so
%{_libdir}/xine/plugins/%{version}/xineplug_dmx_yuv_frames.so
%{_libdir}/xine/plugins/%{version}/xineplug_dmx_real.so
%{_libdir}/xine/plugins/%{version}/xineplug_dmx_audio.so
@ -232,7 +235,7 @@ rm -rf $RPM_BUILD_ROOT
%{_libdir}/xine/plugins/%{version}/xineplug_dmx_games.so
%{_libdir}/xine/plugins/%{version}/xineplug_dmx_slave.so
%{_libdir}/xine/plugins/%{version}/xineplug_flac.so
%{_libdir}/xine/plugins/%{version}/xineplug_decode_sputext.so
%{_libdir}/xine/plugins/%{version}/xineplug_wavpack.so
%ifarch %ix86
%{_libdir}/xine/plugins/%{version}/xineplug_vo_out_vidix.so
%{_libdir}/xine/plugins/%{version}/xineplug_decode_qt.so
@ -281,6 +284,12 @@ rm -rf $RPM_BUILD_ROOT
%changelog
* Wed Jan 31 2007 Ville Skyttä <ville.skytta at iki.fi> - 1.1.4-1
- 1.1.4, with wavpack and system libmpcdec support.
* Thu Jan 18 2007 Aurelien Bompard <abompard@fedoraproject.org> 1.1.3-4
- rebuild
* Wed Jan 3 2007 Ville Skyttä <ville.skytta at iki.fi> - 1.1.3-3
- Fix libflac decoder with FLAC < 1.1.3 (#220961).
- Apply upstream patch for FLAC >= 1.1.3.