osc copypac from project:openSUSE:Factory package:xine-lib revision:63

OBS-URL: https://build.opensuse.org/package/show/multimedia:xine/xine-lib?expand=0&rev=89
This commit is contained in:
Dave Plater 2016-07-31 06:19:31 +00:00 committed by Git OBS Bridge
parent 0c5310bc92
commit b7b6f2549c
14 changed files with 1491 additions and 29 deletions

1
baselibs.conf Normal file
View File

@ -0,0 +1 @@
libxine2

8
fix-non-x86-build.diff Normal file
View File

@ -0,0 +1,8 @@
--- src/post/Makefile.am.orig 2012-06-21 09:47:14.910671806 +0200
+++ src/post/Makefile.am 2012-06-21 09:47:21.119671933 +0200
@@ -1,4 +1,4 @@
include $(top_srcdir)/misc/Makefile.quiet
include $(top_srcdir)/misc/Makefile.common
-SUBDIRS = planar goom visualizations mosaico deinterlace audio
+SUBDIRS = planar goom visualizations mosaico audio

View File

@ -0,0 +1,101 @@
#!/bin/sh
# The following source parts of xine-lib may not be distributed for legal
# reasons.
# Thus we have to cripple the source tree in a way that it still builds.
#
# Helpers
#
# $1: files $2: entries $3: prefix $4: postfix
do_nukeentry() {
for d in $1 ; do
perl -i -e 'undef $/; $_=<>; for $e (qw|'"$2"'|) { s|(?<=[^-a-zA-Z0-9_./])'"$3"'$e'"$4"'(?=[^-a-zA-Z0-9_./])||g }; print' $d
done
}
# $1: files $2: entries $3: prefix $4: postfix
do_nukeline() {
for d in $1 ; do
perl -i -e 'undef $/; $_=<>; for $e (qw|'"$2"'|) { s|^.*(?<=[^-a-zA-Z0-9_./])'"$3"'$e'"$4"'(?=[^-a-zA-Z0-9_./]).*$||mg }; print' $d
done
}
# $1: dir $2: files/dirs
do_remove() {
pushd "$1" >/dev/null || exit 1
rm -rf $2
popd >/dev/null
}
#
# Main
#
# Find source tarball + unpack
tmp="/`mktemp -d`"
trap 'rm -rf $tmp; echo 1>&2 "$0 failed"' EXIT
test -d "$tmp" -a -w "$tmp" || exit
tarsource="`echo xine-lib-*[0-9].tar.xz`"
if [ ! -s "$tarsource" ] ; then
echo "Error: cannot find source tarball"
exit 1
fi
tarbase="${tarsource%.tar.xz}"
tardest="$tarbase-crippled.tar.xz"
rm -rf xine-lib-*-crippled.tar.xz
echo 1>&2 "Unpacking..."
tar -C "$tmp" -xJf $tarsource || exit 1
pushd $tmp/$tarbase >/dev/null || exit 1
#
# Cripple source
#
echo 1>&2 "Crippling..."
c_subdirs="dxr3 liba52 libdts libfaad libffmpeg libmad libmpeg2 libspucc libspudec libspudvb libw32dll input/vcd combined/ffmpeg"
c_demuxers="xineplug_dmx_asf.la asfheader.h asfheader.c demux_asf.c xineplug_dmx_mpeg.la demux_mpeg.c xineplug_dmx_mpeg_block.la demux_mpeg_block.c xineplug_dmx_mpeg_ts.la demux_ts.c xineplug_dmx_mpeg_elem.la demux_elem.c xineplug_dmx_mpeg_pes.la demux_mpeg_pes.c xineplug_dmx_yuv4mpeg2.la demux_yuv4mpeg2.c"
c_input="xineplug_inp_mms.la input_mms.c mms.c mmsh.c ../demuxers/asfheader.c mms.h mmsh.h xineplug_inp_vcdo.la input_vcd.c vcd"
c_libxineadec="xineplug_decode_gsm610.la xineplug_decode_nsf.la gsm610.c nsf.c gsm610 nosefart"
c_audiodec="xineplug_decode_a52.la xineplug_decode_mad.la xine_a52_decoder.c xine_mad_decoder.c"
do_nukeentry src/Makefile.am "$c_subdirs"
do_nukeentry configure.ac "$c_subdirs" "src/" "/[a-zA-Z0-9_./]*Makefile"
do_remove src "$c_subdirs"
do_nukeentry src/demuxers/Makefile.am "$c_demuxers"
do_remove src/demuxers "$c_demuxers"
do_nukeentry src/input/Makefile.am "$c_input"
do_remove src/input "$c_input"
do_nukeentry src/audio_dec/Makefile.am "$c_audiodec"
do_remove src/audio_dec "$c_audiodec"
do_nukeentry src/combined/Makefile.am "ffmpeg"
do_remove src/combined "ffmpeg"
do_nukeentry src/post/planar/Makefile.am "pp\.c \S*/libpostproc/libpostprocess\.la"
do_nukeline src/post/planar/planar.c "pp_init_plugin pp_special_info"
do_remove src/post/planar "pp.c"
echo 1>&2 "Autotools..."
autoreconf -fi || exit 1
#
# Create new (crippled) source tarball
#
popd >/dev/null
tar --owner=root --group=root -C $tmp -cJf $tardest $tarbase || exit 1
rm -rf $tmp
echo 1>&2 ""
echo 1>&2 "Successfully crippled tarball. :-("
echo 1>&2 ""
rm -rf $tmp
trap - EXIT
exit 0
#EOF

View File

@ -1,29 +0,0 @@
--- xine-lib.changes.orig
+++ xine-lib.changes
@@ -1,4 +1,9 @@
-------------------------------------------------------------------
+Sun Jul 24 15:48:08 UTC 2016 - olaf@aepfle.de
+
+- Accept any ffmpeg version in BuildRequires
+
+-------------------------------------------------------------------
Mon Jul 18 13:47:07 UTC 2016 - dimstar@opensuse.org
- Add xine-lib-link-xcb.patch: fix linking of libxcb. As our code
--- xine-lib.spec.orig
+++ xine-lib.spec
@@ -72,11 +72,11 @@ BuildRequires: lirc
%endif
%if !%{with distributable}
BuildRequires: libfaad-devel
-BuildRequires: pkgconfig(libavcodec) >= 57
-BuildRequires: pkgconfig(libavutil) >= 55
+BuildRequires: pkgconfig(libavcodec)
+BuildRequires: pkgconfig(libavutil)
BuildRequires: pkgconfig(libbluray) >= 0.2.1
BuildRequires: pkgconfig(libdts)
-BuildRequires: pkgconfig(libpostproc) >= 54
+BuildRequires: pkgconfig(libpostproc)
BuildRequires: pkgconfig(libva)
BuildRequires: pkgconfig(libva-glx)
BuildRequires: pkgconfig(mad)

View File

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:eac3308b13f68bfdadcf85af5e104450b84fb346d5af95e29fa35c8339ff422e
size 4749220

3
xine-lib-1.2.6.tar.xz Normal file
View File

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:bd041d738817c7c0c6392a3c0e5bda5a664a47e035135b5a449364f8c9b6a005
size 5020964

51
xine-lib-ffmpeg3.0.patch Normal file
View File

@ -0,0 +1,51 @@
--- src/combined/ffmpeg/ff_audio_decoder.c.orig 2014-06-09 18:08:42.000000000 +0200
+++ src/combined/ffmpeg/ff_audio_decoder.c 2016-02-26 14:31:45.000000000 +0100
@@ -593,7 +593,7 @@
int got_frame;
float gain = this->class->gain;
if (!this->av_frame)
- this->av_frame = avcodec_alloc_frame ();
+ this->av_frame = av_frame_alloc ();
consumed = avcodec_decode_audio4 (this->context, this->av_frame, &got_frame, &avpkt);
if ((consumed >= 0) && got_frame) {
@@ -1071,7 +1071,7 @@
/* try to reset the wma decoder */
if( this->decoder_ok ) {
#if AVAUDIO > 3
- avcodec_free_frame (&this->av_frame);
+ av_frame_free (&this->av_frame);
#endif
pthread_mutex_lock (&ffmpeg_lock);
avcodec_close (this->context);
@@ -1106,7 +1106,7 @@
if( this->context && this->decoder_ok ) {
#if AVAUDIO > 3
- avcodec_free_frame (&this->av_frame);
+ av_frame_free (&this->av_frame);
#endif
pthread_mutex_lock (&ffmpeg_lock);
avcodec_close (this->context);
--- src/combined/ffmpeg/ff_video_decoder.c.orig 2014-06-24 18:21:06.000000000 +0200
+++ src/combined/ffmpeg/ff_video_decoder.c 2016-02-26 14:31:45.000000000 +0100
@@ -2526,7 +2526,7 @@
this->stream = stream;
this->class = (ff_video_class_t *) class_gen;
- this->av_frame = avcodec_alloc_frame();
+ this->av_frame = av_frame_alloc();
this->context = avcodec_alloc_context();
this->context->opaque = this;
#if AVPALETTE == 1
--- src/dxr3/ffmpeg_encoder.c.orig 2014-03-13 05:06:09.000000000 +0200
+++ src/dxr3/ffmpeg_encoder.c 2016-02-26 14:31:45.000000000 +0100
@@ -164,7 +164,7 @@
"dxr3_mpeg_encoder: Couldn't start the ffmpeg library\n");
return 0;
}
- this->picture = avcodec_alloc_frame();
+ this->picture = av_frame_alloc();
if (!this->picture) {
xprintf(drv->class->xine, XINE_VERBOSITY_LOG,
"dxr3_mpeg_encoder: Couldn't allocate ffmpeg frame\n");

View File

@ -0,0 +1,122 @@
# HG changeset patch
# User Tobias Rautenkranz <mail@tobias.rautenkranz.ch>
# Date 1202208482 -3600
# Node ID 100241ff36f0730a15018a58456fb86eb590bf18
# Parent 07c29261ed98fdb710a241c6711dac0215b6074a
Fix playback of DVDs with a broken UDF file system (aka DVD-Movie-Protect).
diff -r 07c29261ed98 -r 100241ff36f0 src/input/libdvdnav/dvd_udf.c
--- a/src/input/libdvdnav/dvd_udf.c Thu Jan 31 22:02:04 2008 +0000
+++ b/src/input/libdvdnav/dvd_udf.c Tue Feb 05 11:48:02 2008 +0100
@@ -38,9 +38,15 @@
#include <sys/stat.h>
#include <unistd.h>
#include <inttypes.h>
+#ifndef __WIN32__
+#include <fnmatch.h>
+#endif
#include "dvd_reader.h"
#include "dvd_udf.h"
+
+#include "ifo_types.h"
+#include "ifo_read.h"
/* Private but located in/shared with dvd_reader.c */
extern int UDFReadBlocksRaw( dvd_reader_t *device, uint32_t lb_number,
@@ -774,7 +780,9 @@ static int UDFFindPartition( dvd_reader_
return part->valid;
}
-uint32_t UDFFindFile( dvd_reader_t *device, char *filename,
+
+
+static uint32_t UDFFindFileReal( dvd_reader_t *device, char *filename,
uint32_t *filesize )
{
uint8_t LogBlock_base[ DVD_VIDEO_LB_LEN + 2048 ];
@@ -856,6 +864,84 @@ uint32_t UDFFindFile( dvd_reader_t *devi
return partition.Start + File.Location;
}
+/**
+ * Get the offset from the ifo files to allow playback of DVDs
+ * with a deliberately broken UDF file system (aka DVD-Movie-Protect).
+ * When the file is not an IFO or VOB, it calls the real UDF routine.
+ */
+uint32_t UDFFindFile( dvd_reader_t *device, char *filename,
+ uint32_t *filesize )
+{
+#ifndef __WIN32__
+ if (!fnmatch("/VIDEO_TS/VTS_[0-9][0-9]_[0-9].???", filename, FNM_PATHNAME)) {
+#else
+ if (strlen("/VIDEO_TS/VTS_01_1.VOB") == strlen(filename)
+ && !strncmp(filename, "/VIDEO_TS/VTS_", strlen("/VIDEO_TS/VTS_")) ) {
+#endif
+ size_t len = strlen(filename);
+ char *extension = &filename[len-3];
+ if (!strcmp(extension, "IFO") || !strcmp(extension, "VOB")) {
+ int title = atoi(&filename[len-8]);
+ int part = atoi(&filename[len-5]);
+
+ ifo_handle_t *ifo_handle = ifoOpen(device, 0);
+ if (0 == ifo_handle)
+ return 0;
+
+ uint32_t tmp_filesize;
+ uint32_t offset = UDFFindFileReal(device, "/VIDEO_TS/VIDEO_TS.IFO", &tmp_filesize);
+
+ int i;
+ for (i=0; i<ifo_handle->tt_srpt->nr_of_srpts; i++)
+ if (title == ifo_handle->tt_srpt->title[i].title_set_nr)
+ break;
+
+ if (i == ifo_handle->tt_srpt->nr_of_srpts) {
+ /* not found */
+ ifoClose(ifo_handle);
+ return 0;
+ }
+ offset += ifo_handle->tt_srpt->title[i].title_set_sector;
+ ifoClose(ifo_handle);
+
+ if (!strcmp(extension, "VOB")) {
+ ifo_handle = ifoOpen(device, title);
+ if (0 == ifo_handle)
+ return 0;
+
+ switch(part) {
+ case 0:
+ if (0 == ifo_handle->vtsi_mat->vtsm_vobs) {
+ ifoClose(ifo_handle);
+ return 0;
+ }
+ offset += ifo_handle->vtsi_mat->vtsm_vobs;
+ break;
+ case 1:
+ if (0 == ifo_handle->vtsi_mat->vtstt_vobs) {
+ ifoClose(ifo_handle);
+ return 0;
+ }
+ offset += ifo_handle->vtsi_mat->vtstt_vobs;
+ break;
+ default: /* can't get other parts (also no need to) */
+ offset = 0;
+ break;
+ }
+
+ ifoClose(ifo_handle);
+ }
+
+
+ *filesize = 1000000; /* File size unknown */
+ if (offset != 0)
+ return offset;
+ }
+ }
+
+ return UDFFindFileReal( device, filename, filesize);
+}
+
/**

36
xine-lib-link-xcb.patch Normal file
View File

@ -0,0 +1,36 @@
# HG changeset patch
# User Dominique Leuenberger <dimstar@opensuse.org>
# Date 1468914700 -7200
# Tue Jul 19 09:51:40 2016 +0200
# Node ID 434e1ff5323789560c210b0b417844b8ab232ab0
# Parent 24fc93301077a2317d1d6deda3b7d895e6754e26
build: Fix linking with new xcb versions
As we make use of specific xcb and xcb_shm functions, it is our sole responsibility
to ensure we link against the right libs. Expecting xcb-shape to bring in all the
dependencies for us is wrong (and no longer works in all cases)
diff -r 24fc93301077 -r 434e1ff53237 m4/video_out.m4
--- a/m4/video_out.m4 Tue Jun 07 19:33:35 2016 +0200
+++ b/m4/video_out.m4 Tue Jul 19 09:51:40 2016 +0200
@@ -305,7 +305,7 @@
dnl xcb
XINE_ARG_WITH([xcb], [Enable support for XCB video out plugins])
if test x"$with_xcb" != x"no"; then
- PKG_CHECK_MODULES([XCB], [xcb-shape >= 1.0], [have_xcb=yes], [have_xcb=no])
+ PKG_CHECK_MODULES([XCB], [xcb xcb-shape >= 1.0], [have_xcb=yes], [have_xcb=no])
if test x"$hard_enable_xcb" = x"yes" && test x"$have_xcb" != x"yes"; then
AC_MSG_ERROR([XCB support requested, but XCB not found])
elif test x"$have_xcb" = x"yes"; then
diff -r 24fc93301077 -r 434e1ff53237 src/video_out/Makefile.am
--- a/src/video_out/Makefile.am Tue Jun 07 19:33:35 2016 +0200
+++ b/src/video_out/Makefile.am Tue Jul 19 09:51:40 2016 +0200
@@ -147,7 +147,7 @@
xineplug_vo_out_xcbshm_la_CFLAGS = $(AM_CFLAGS) $(XCB_CFLAGS) $(XCBSHM_CFLAGS) $(AVUTIL_CFLAGS)
xineplug_vo_out_xcbxv_la_SOURCES = video_out_xcbxv.c $(XCBOSD)
-xineplug_vo_out_xcbxv_la_LIBADD = $(XINE_LIB) $(PTHREAD_LIBS) $(LTLIBINTL) $(XCBXV_LIBS) $(XCB_LIBS)
+xineplug_vo_out_xcbxv_la_LIBADD = $(XINE_LIB) $(PTHREAD_LIBS) $(LTLIBINTL) $(XCBXV_LIBS) $(XCB_LIBS) $(XCBSHM_LIBS)
xineplug_vo_out_xcbxv_la_CFLAGS = $(AM_CFLAGS) $(XCB_CFLAGS) $(XCBXV_CFLAGS)
xineplug_vo_out_xshm_la_SOURCES = video_out_xshm.c $(X11OSD)

13
xine-lib-theora.patch Normal file
View File

@ -0,0 +1,13 @@
Index: src/xine-engine/buffer_types.c
===================================================================
--- src/xine-engine/buffer_types.c.orig 2012-02-05 21:17:03.000000000 +0200
+++ src/xine-engine/buffer_types.c 2012-07-16 15:39:19.681795420 +0200
@@ -585,6 +585,8 @@ static const video_db_t video_db[] = {
},
{
{
+ ME_FOURCC('t','h','e','o'),
+ ME_FOURCC('T','H','E','O'),
0,
},
BUF_VIDEO_THEORA,

22
xine-lib-v4l-2.6.38.patch Normal file
View File

@ -0,0 +1,22 @@
--- m4/input.m4 2014-02-26 16:49:10.000000000 +0100
+++ m4/input.m4 2014-04-11 23:22:34.923765318 +0200
@@ -96,7 +96,7 @@
XINE_ARG_ENABLE([v4l], [Enable Video4Linux support])
if test x"$enable_v4l" != x"no"; then
have_v4l=yes
- AC_CHECK_HEADERS([linux/videodev.h], , [have_v4l=no])
+ AC_CHECK_HEADERS([libv4l1-videodev.h], , [have_v4l=no])
AC_CHECK_HEADERS([asm/types.h])
if test x"$hard_enable_v4l" = x"yes" && test x"$have_v4l" != x"yes"; then
AC_MSG_ERROR([Video4Linux support requested, but prerequisite headers not found.])
--- src/input/input_v4l.c 2014-03-11 14:28:30.000000000 +0100
+++ src/input/input_v4l.c 2014-04-11 23:22:34.926765238 +0200
@@ -47,7 +47,7 @@
*/
#define _LINUX_TIME_H
-#include <linux/videodev.h>
+#include <libv4l1-videodev.h>
#include <sys/ioctl.h>
#include <sys/mman.h>
#include <errno.h>

View File

@ -0,0 +1,32 @@
diff -uNr xine-lib-1.2.1.orig/m4/decoders.m4 xine-lib-1.2.1/m4/decoders.m4
--- xine-lib-1.2.1.orig/m4/decoders.m4 2012-02-04 01:41:43.000000000 +0100
+++ xine-lib-1.2.1/m4/decoders.m4 2012-05-21 22:46:39.470861703 +0200
@@ -85,9 +85,7 @@
AM_CONDITIONAL([WITH_EXTERNAL_FAAD], [test x"$have_external_faad" = x"yes"])
dnl ffmpeg external version required
- PKG_CHECK_MODULES([FFMPEG], [libavcodec >= 51.68.0])
PKG_CHECK_MODULES([AVUTIL], [libavutil >= 49.6.0])
- PKG_CHECK_MODULES([FFMPEG_POSTPROC], [libpostproc])
AC_DEFINE([HAVE_FFMPEG], 1, [Define this if you have ffmpeg library])
dnl Check presence of ffmpeg/avutil.h to see if it's old or new
diff -uNr xine-lib-1.2.1.orig/src/audio_dec/Makefile.am xine-lib-1.2.1/src/audio_dec/Makefile.am
--- xine-lib-1.2.1.orig/src/audio_dec/Makefile.am 2012-02-04 01:41:43.000000000 +0100
+++ xine-lib-1.2.1/src/audio_dec/Makefile.am 2012-05-22 20:37:48.863941984 +0200
@@ -49,7 +49,6 @@
xineplug_LTLIBRARIES = \
xineplug_decode_gsm610.la \
xineplug_decode_lpcm.la \
- xineplug_decode_dvaudio.la \
$(musepack_module) \
$(dts_module) \
$(mad_module) \
@@ -87,7 +86,3 @@
xineplug_decode_faad_la_DEPENDENCIES = $(FAAD_DEPS)
xineplug_decode_faad_la_LIBADD = $(XINE_LIB) $(LTLIBINTL) $(FAAD_LIBS) -lm
xineplug_decode_faad_la_CFLAGS = $(FAAD_CFLAGS)
-
-xineplug_decode_dvaudio_la_SOURCES = ff_dvaudio_decoder.c
-xineplug_decode_dvaudio_la_LIBADD = $(XINE_LIB) $(LTLIBINTL)
-xineplug_decode_dvaudio_la_CPPFLAGS = $(AM_CPPFLAGS) $(FFMPEG_CFLAGS)

207
xine-lib.changes Normal file
View File

@ -0,0 +1,207 @@
-------------------------------------------------------------------
Sun Jul 24 15:48:08 UTC 2016 - olaf@aepfle.de
- Accept any ffmpeg version in BuildRequires
-------------------------------------------------------------------
Mon Jul 18 13:47:07 UTC 2016 - dimstar@opensuse.org
- Add xine-lib-link-xcb.patch: fix linking of libxcb. As our code
uses the functions, we must not rely on 3rd parties to hopefully
bring the right libraries to link.
https://bugs.xine-project.org/show_bug.cgi?id=573
-------------------------------------------------------------------
Fri Apr 15 12:18:02 UTC 2016 - dimstar@opensuse.org
- Drop libsmbclient BuildRequires: requiring a library to build is
in any case wrong. It's the responsibility of a -devel package to
pull in the real libraries.
-------------------------------------------------------------------
Fri Feb 26 15:12:34 UTC 2016 - joerg.lorenzen@ki.tng.de
- Added xine-lib-ffmpeg3.0.patch to build against ffmpeg-3.0
libraries on PMBS.
- Add pkgconfig(libva-glx) to BuildRequires because it's a separate
package for openSUSE > 13.2.
-------------------------------------------------------------------
Mon Sep 21 06:40:47 UTC 2015 - olaf@aepfle.de
- Replace implicit Requires from old ffmpeg with BuildRequires to
fix build in packman
-------------------------------------------------------------------
Mon Feb 2 19:22:38 UTC 2015 - wbauer@tmo.at
- update to 1.2.6
* Add libmmal video output plugin for Raspberry Pi.
* Add libmmal HW video decoder plugin for Raspberry Pi.
* Add overlay colormatrix support.
* Add "sqare monitor pixels" config option.
* Add VAAPI colormatrix and fullrange video support.
* Add "radeonhd" XV colormatrix support.
* Add Opus audio support.
* Update german translation.
* Optimize OpenGL2 video out.
* Optimize raw RGB video decoder.
* Fix multithread ffmpeg video decoding.
* Fix/optimize DVB subtitles.
* Fix external text subtitles.
* BSD build fixes.
* Clang build fixes.
* Build optimization fixes (aliasing).
* AVformat demux build fix.
* More safety on memory allocation failure.
* Fix detection of and compilation with libcaca 0.99 beta 19.
- use the xz compressed tarball provided by upstream and change
precheckin_cripple_tarball.sh accordingly
- should fix boo#913588
-------------------------------------------------------------------
Fri Apr 11 00:00:00 UTC 2014 - Manfred.Tremmel@iiv.de
- update to 1.2.5
* Update german translation.
* Add bass downmix support to AC3 decoder.
* Add experimental YCgCo colorspace support.
* Add avformat demux plugin.
- Support for new formats and protocols.
- Proper rtsp support (with avformat+rtsp://, rtsp+tcp:// and rtsp+http:// mrls).
- by default native xine demux plugins are probed first.
This can be overridden in config, by selecting demuxer in mrl (#demux:avformat),
or by using "avformat+" mrl prefix.
* Add avio (libavformat) input plugin:
- Support for new protocols (https://, ftp://, sftp://, ...).
- Support for seekable http streams (with "avio+http://" mrl).
- By default native xine input plugins are used. This can be overridden in config or by using "avio+" mrl prefix.
* Recognise & use HEVC/H.265. (ffmpeg)
* Add support for HEVC/H.265 to the mpeg-ts demuxer.
* Add support for HEVC/H.265 and VP9 to the matroska demuxer.
* Add VP8/VP9 decoder using libvpx.
* Modernise Quicktime demuxer:
- Multiple user selectable audio traks.
- Support AC3, EAC3, vorbis, Purevoice audio.
- Support ISO fragment media files.
- More safety on broken files.
- Slightly faster.
* Recognise & use ADPCM G.726 and ATRAC3. (ffmpeg/libva)
* Build fixes.
* Fix HDMV subtitle channel.
* FFmpeg compatibility fixes.
* Some colour format conversion fixes.
* Fix RealVideo re-ordered PTS: pass through, let the decoder re-order it.
* Fix some problems with COOK audio.
- from 1.2.4
* Some VAAPI plugin fixes (build, image size changes).
* ffmpeg multi-channel playback fixes:
- Handle channel configuration changes sooner.
- Generic layout if none provided; follow user changes.
- Defer opening output if nothing to play.
- Don't re-open with identical settings.
- Don't use the bits-per-sample value (may not match decoder output).
* ffmpeg video fixes:
- Default to square pixels, avoiding black bars & unnecessary scaling.
- Avoid CODEC_FLAG_EMU_EDGE (and some possible segfaults).
- Use MPEG2VIDEO.
* OpenGL2 output: don't render into invalid drawable.
* Fix a possible xine_play() hang related to display locking.
* FLV demuxer rewrite:
- Improved metadata parsing.
- PTS/DTS fixes.
- Large file support on 32-bit.
- Much improved seeking.
- Much optimisation.
- More codecs supported.
* audio_out speed control fixes.
* Optimised RGB→YUY2 conversion.
* Avoid a possible performance penalty where AVX-optimised memcpy is used.
* Add BD-J (BluRay Java) support with ARGB overlay capable video drivers (opengl2, vaapi, vdpau)
* Add support for theora 4:2:2 and 4:4:4 pixel formats
- Removed xine-lib-missing-include-1.2.3.patch, the missing file is now included in the upstream tarball
-------------------------------------------------------------------
Wed Sep 11 13:19:26 UTC 2013 - pgajdos@suse.com
- detect smbclient
-------------------------------------------------------------------
Wed May 29 22:36:00 UTC 2013 - Manfred.Tremmel@iiv.de
- update to 1.2.3
* Add VAAPI HW decoding support
* Add OpenGL 2.0 output plugin
* Add crop support to XShm output plugins
* Add color matrix and full range support to OpenGL/Xv/XShm output plugins
* Add test image generator input plugin
* Add fast libjpeg based JPEG decoder
* Add max. Xv image size detection to Xv video output plugin
* Fix crash when trying to display too large jpeg image with Xv output plugin
* Fix possible crash when stopping playback with deinterlacing enabled
* Support large PAT in MPEG TS
* Handle EAC3 audio (via ffmpeg)
-------------------------------------------------------------------
Fri Mar 1 06:14:15 UTC 2013 - coolo@suse.com
- update license to new format
-------------------------------------------------------------------
Wed Jul 18 10:54:59 UTC 2012 - davejplater@gmail.com
- Added xine-lib-theora.patch to add fourcc code to xine
-------------------------------------------------------------------
Thu Jun 21 07:58:03 UTC 2012 - adrian@suse.de
- fix build for non-x86 architectures (disable deinterlace plugin)
-------------------------------------------------------------------
Mon Jun 18 11:20:29 UTC 2012 - lnussel@suse.de
- don't include .la files in libxine-devel to avoid bogus libtool errors
-------------------------------------------------------------------
Thu Jun 14 20:20:01 UTC 2012 - coolo@suse.com
- provide and obsolete xine-devel and xine-lib for backward compat
-------------------------------------------------------------------
Sun Jun 10 14:45:00 UTC 2012 - Manfred.Tremmel@iiv.de
- update to 1.2.2
* Fix musepack decoder compilation if libmpcdec headers aren't available.
* Configure tests for xinerama & VideoCD support now soft-fail properly.
* The DVB plugin is working again.
* OpenGL OSD fix.
* YUV conversion MMX/SSE optimisations.
* YUV420 H.264 is playable now; YUVJ444P is correctly handled.
* Support FLAC in Matroska; support BMP.
* Various build fixes for Windows.
-------------------------------------------------------------------
Wed Jun 06 21:17:00 UTC 2012 - Manfred.Tremmel@iiv.de
- updated crippled version, removed mad and a52dec
-------------------------------------------------------------------
Tue May 29 19:59:14 UTC 2012 - reddwarf@opensuse.org
- Remove dependency from libxine-devel to libffmpeg-devel
-------------------------------------------------------------------
Sat Feb 04 19:40:00 UTC 2012 - Manfred.Tremmel@iiv.de
- update to 1.2.1
* The "I'm at Tyneside LUG" release.
* Enable PulseAudio, JACK and VDPAU on the Hurd.
* Rewrite of VDPAU OSD handling.
* sndio plugin is now buildable.
* Various bug fixes.
-------------------------------------------------------------------
Fri Jan 06 11:06:00 UTC 2012 - Manfred.Tremmel@iiv.de
- first build of xine-lib-12 for packman

892
xine-lib.spec Normal file
View File

@ -0,0 +1,892 @@
#
# spec file for package xine-lib
#
# Copyright (c) 2016 SUSE LINUX GmbH, Nuernberg, Germany.
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
# upon. The license for this file, and modifications and additions to the
# file, is the same license as for the pristine package itself (unless the
# license for the pristine package is not an Open Source License, in which
# case the license is the MIT License). An "Open Source License" is a
# license that conforms to the Open Source Definition (Version 1.9)
# published by the Open Source Initiative.
# Please submit bugfixes or comments via http://bugs.opensuse.org/
#
Name: xine-lib
# %bcond_with = default off
# %bcond_without = default on
#
# --with distributable -> don't build libxine2-codecs
# --without distributable -> build libxine2-codecs
#
# default for buildservice is no patented codecs
%bcond_without distributable
%bcond_with onlynondistributable
%bcond_without pulseaudio
%bcond_with sdl
%bcond_with aalib
%bcond_with esd
%bcond_with jack
%bcond_without gnome_vfs
%bcond_with directfb
%bcond_without modplug
#
BuildRequires: ImageMagick-devel
BuildRequires: Mesa-devel
BuildRequires: alsa-devel
BuildRequires: flac-devel
BuildRequires: giflib-devel
BuildRequires: glib2-devel
BuildRequires: gnutls-devel
BuildRequires: gtk2-devel
BuildRequires: imlib2-devel
BuildRequires: krb5-devel
BuildRequires: libcdio-devel
BuildRequires: libdrm-devel
BuildRequires: libmng-devel
BuildRequires: libmpcdec-devel
BuildRequires: libsmbclient-devel
BuildRequires: libtheora-devel
BuildRequires: libtool
BuildRequires: libvorbis-devel
BuildRequires: readline-devel
BuildRequires: speex-devel
BuildRequires: update-desktop-files
BuildRequires: vcdimager-devel
BuildRequires: xorg-x11-devel
%if 0%{suse_version} >= 1210
BuildRequires: libv4l-devel >= 0.8.4
%else
%if 0%{suse_version} >= 1110
BuildRequires: libv4l-devel
%endif
%endif
%if 0%{suse_version} >= 1030
BuildRequires: lirc-devel
%else
BuildRequires: lirc
%endif
%if !%{with distributable}
BuildRequires: libfaad-devel
BuildRequires: pkgconfig(libavcodec)
BuildRequires: pkgconfig(libavutil)
BuildRequires: pkgconfig(libbluray) >= 0.2.1
BuildRequires: pkgconfig(libdts)
BuildRequires: pkgconfig(libpostproc)
BuildRequires: pkgconfig(libva)
BuildRequires: pkgconfig(libva-glx)
BuildRequires: pkgconfig(mad)
BuildRequires: pkgconfig(vdpau)
%else
BuildRequires: libavutil-devel
%endif
%if %{with pulseaudio}
BuildRequires: libpulse-devel
%endif
%if %{with sdl}
BuildRequires: SDL-devel
%endif
%if %{with aalib}
BuildRequires: aalib-devel
BuildRequires: libcaca-devel
%endif
%if %{with esd}
BuildRequires: esound-devel
%endif
%if %{with gnome_vfs}
BuildRequires: gnome-vfs2-devel
%endif
%if %{with jack}
BuildRequires: libjack-devel
%endif
%if %{with directfb}
%if %suse_version >= 1020
BuildRequires: DirectFB-devel
%else
BuildRequires: DirectFB
%endif
%endif
%if %{with modplug}
BuildRequires: libmodplug-devel
%endif
Version: 1.2.6
Release: 0
%define abiversion 2.5
Summary: Video Player with Plug-Ins
License: GPL-2.0+ and SUSE-Public-Domain
Group: Productivity/Multimedia/Video/Players
Url: http://www.xine-project.org/home
BuildRoot: %{_tmppath}/%{name}-%{version}-build
%if %{with distributable}
Source: xine-lib-%{version}-crippled.tar.xz
%else
Source: http://downloads.sourceforge.net/project/xine/xine-lib/%{version}/xine-lib-%{version}.tar.xz
%endif
Source1: baselibs.conf
Source99: precheckin_cripple_tarball.sh
Patch0: xine-lib-libdvdread_udf.diff
Patch1: xine-lib-v4l-2.6.38.patch
Patch2: xine-lib-without-ffmpeg.patch
Patch3: fix-non-x86-build.diff
# Add theora FOURCC to libxine I found an avi container that xine wouldn't play.
Patch4: xine-lib-theora.patch
Patch5: xine-lib-ffmpeg3.0.patch
# PATCH-FIX-UPSTREAM xine-lib-link-xcb.patch https://bugs.xine-project.org/show_bug.cgi?id=573 dimstar@opensuse.org -- Look for xcb, not xcb-shape
Patch6: xine-lib-link-xcb.patch
%description
<p>Great video and multimediaplayer, supports DVD, MPEG, AVI, DivX, VCD, Quicktime ...</p><p>You need a frontend for xine-lib like <a href=http://packman.links2linux.de/package/xine-ui>xine-ui</a>, <a href=http://packman.links2linux.de/package/gxine>gxine</a>, <a href=http://packman.links2linux.de/package/kaffeine>kaffeine</a> or <a href=http://packman.links2linux.de/package/totem>totem</a>.</p><p>Since 1-rc6 the package number is reduced, all you may miss, is in the base package</p><p>If you want to play css encrypted Video-DVD's, you need to install <a href=http://packman.links2linux.de/package/libdvdcss2>libdvdcss</a>.</p>
%description -l de
<p>Gro&szlig;artiger Video- und Multimediaplayer mit Support f&uuml;r DVD, MPEG, AVI, DivX, VCD,Quicktime ...</p><p>Bitte beachten Sie, dass Sie neben der xine-lib auch eine Bedienoberfl&auml;che wie <a href=http://packman.links2linux.de/package/xine-ui>xine-ui</a>, <a href=http://packman.links2linux.de/package/gxine>gxine</a>, <a href=http://packman.links2linux.de/package/kaffeine>kaffeine</a> oder <a href=http://packman.links2linux.de/package/totem>totem</a> ben&ouml;tigen.</p><p>Seit 1-rc6 wurde die Zahl der Pakete reduziert, alles was sie eventuell vermissen, wurde in das Basispaket integriert.</p><p>Wenn Sie css verschl&uuml;sselte Video-DVDs abspielen wollen, m&uuml;ssen Sie zus&auml;tzlich die <a href=http://packman.links2linux.de/package/libdvdcss2>libdvdcss</a> installieren.</p>
%package -n libxine2
Summary: Video Player with Plug-Ins
License: GPL-2.0+
Group: Productivity/Multimedia/Video/Players
Provides: libxine2-syncfb = %{version}-%{release}
Obsoletes: libxine2-syncfb < %{version}-%{release}
Provides: libxine2-xvmc = %{version}-%{release}
Obsoletes: libxine2-xvmc < %{version}-%{release}
Provides: libxine2-dvb = %{version}-%{release}
Obsoletes: libxine2-dvb < %{version}-%{release}
Provides: %{name} = %{version}-%{release}
Obsoletes: %{name} < %{version}-%{release}
Recommends: libxine2-codecs = %{version}
Recommends: opensuse-codecs-installer
%description -n libxine2
xine is a video player with a graphical front-end that supports a large
number of file formats (VCD and MPEG2, for example) using plug-ins.
Several plug-ins are included. Others can be installed after xine
installation. xine supports stereo sound using OSS and AC5.1 using
Alsa.
%if %{with distributable}
This version of xine may lack certain features because of legal
requirements (potential patent violation). See also
http://www.opensuse.org/XINE#Legal_Matters
%endif
More information about xine plug-ins can be found at
http://www.xine-project.org/home
Authors:
--------
Guenter Bartsch <guenter@sourceforge.net>
%description -n libxine2 -l de
xine ist ein Videoplayer mit grafischem Frontend und unterstützt
eine vielzahl an Dateiformaten (z.B. VCD und MPEG2) mit hilfe von
Plugins. Einige Plugins sind enthalten, andere können nach der
Installation von xine nachinstalliert werden. xine untersützt
Stereosound via OSS und AC5.1 per Alsa.
%if %{with distributable}
Diese xine-Version lässt eventuell einige Funktione aus rechtlichen
Gründen vermissen (mögliche Patentverletzungen). Siehe dazu
http://www.opensuse.org/XINE#Legal_Matters
%endif
Weitere Informationen über xine Plugins finden Sie unter
http://www.xine-project.org/home
Autoren:
--------
Guenter Bartsch <guenter@sourceforge.net>
%package -n libxine-devel
Summary: Development environment for xine-based media players
License: GPL-2.0+ and SUSE-Public-Domain
Group: Development/Libraries/C and C++
Requires: freetype2-devel
Requires: glibc-devel
Requires: libv4l-devel
Requires: libxine2 = %{version}
Requires: zlib-devel
Obsoletes: libxine2-devel < %{version}-%{release}
Provides: libxine2-devel = %{version}-%{release}
Obsoletes: xine-lib2-devel < %{version}-%{release}
Provides: xine-lib2-devel = %{version}-%{release}
Obsoletes: xine-devel < %{version}-%{release}
Provides: xine-devel = %{version}-%{release}
%description -n libxine-devel
This package contains all necessary include files, libraries and
configuration files needed to compile applications that use the xine
media player.
xine is a video player which supports a large number of file formats
(i.e., VCD, MPEG2) using plug-ins. Several plug-ins are included.
Others can be post-installed. Supports stereo sound using OSS and AC5.1
using Alsa.
%if %{with distributable}
This version of xine may lack certain features because of legal
requirements (potential patent violation). See also
http://www.opensuse.org/XINE#Legal_Matters
%endif
More information about xine plug-ins can be found at
http://www.xine-project.org/home
Authors:
--------
Guenter Bartsch <guenter@users.sourceforge.net>
%description -n libxine-devel -l de
Dieses Paket enthält alle nötigen Include Dateien, Biblioteken und
Konfigurationsdateien, die benötigt werden, um Anwendungen zu
kompilieren, die den xine Media Player verwenden.
xine ist ein Videoplayer mit grafischem Frontend und unterstützt
eine vielzahl an Dateiformaten (z.B. VCD und MPEG2) mit hilfe von
Plugins. Einige Plugins sind enthalten, andere können nach der
Installation von xine nachinstalliert werden. xine untersützt
Stereosound via OSS und AC5.1 per Alsa.
%if %{with distributable}
Diese xine-Version lässt eventuell einige Funktione aus rechtlichen
Gründen vermissen (mögliche Patentverletzungen). Siehe dazu
http://www.opensuse.org/XINE#Legal_Matters
%endif
Weitere Informationen über xine Plugins finden Sie unter
http://www.xine-project.org/home
Autoren:
--------
Guenter Bartsch <guenter@sourceforge.net>
%if %{with pulseaudio}
%package -n libxine2-pulse
Summary: Pulseaudio plugin for xine
License: GPL-2.0+ and SUSE-Public-Domain
Group: Productivity/Multimedia/Video/Players
Requires: libxine2 = %{version}
Supplements: packageand(libpulse0:libxine2)
%description -n libxine2-pulse
libxine sound output plugin for the pulseaudio soundserver
Authors:
--------
Guenter Bartsch <guenter@users.sourceforge.net>
%description -n libxine2-pulse -l de
libxine Soundausgabeplugin für den Pulseaudio Soundserver
Autoren:
--------
Guenter Bartsch <guenter@sourceforge.net>
%endif
%if %{with sdl}
%package -n libxine2-sdl
Summary: SDL plugin for xine
License: GPL-2.0+ and SUSE-Public-Domain
Group: Productivity/Multimedia/Video/Players
Requires: libxine2 = %{version}
%description -n libxine2-sdl
SDL xine video output plugin
Authors:
--------
Guenter Bartsch <guenter@users.sourceforge.net>
%description -n libxine2-sdl -l de
SDL xine Video-Ausgabeplugin
Autoren:
--------
Guenter Bartsch <guenter@sourceforge.net>
%endif
%if %{with aalib}
%package -n libxine2-aa
Summary: Aalib and libcaca plugin for xine
License: GPL-2.0+ and SUSE-Public-Domain
Group: Productivity/Multimedia/Video/Players
Requires: libxine2 = %{version}
%description -n libxine2-aa
aalib and libcaca xine video-output plugin
Authors:
--------
Guenter Bartsch <guenter@users.sourceforge.net>
%description -n libxine2-aa -l de
aalib und libcaca xine Video-Ausgabeplugin
Autoren:
--------
Guenter Bartsch <guenter@sourceforge.net>
%endif
%if %{with esd}
%package -n libxine2-esd
Summary: Esd plugin for xine
License: GPL-2.0+ and SUSE-Public-Domain
Group: Productivity/Multimedia/Video/Players
Requires: libxine2 = %{version}
%description -n libxine2-esd
libxine sound output plugin for the esound soundserver
Authors:
--------
Guenter Bartsch <guenter@users.sourceforge.net>
%description -n libxine2-esd -l de
libxine Soundausgabeplugin für den esound Soundserver
Autoren:
--------
Guenter Bartsch <guenter@sourceforge.net>
%endif
%if %{with jack}
%package -n libxine2-jack
Summary: Jack plugin for xine
License: GPL-2.0+ and SUSE-Public-Domain
Group: Productivity/Multimedia/Video/Players
Requires: libxine2 = %{version}
%description -n libxine2-jack
xine sound output plugin for the jack soundserver
Authors:
--------
Guenter Bartsch <guenter@users.sourceforge.net>
%description -n libxine2-jack -l de
xine Soundausgabeplugin für den jack Soundserver
Autoren:
--------
Guenter Bartsch <guenter@sourceforge.net>
%endif
%if %{with directfb}
%package -n libxine2-directfb
Summary: Directfb plugin for xine
License: GPL-2.0+ and SUSE-Public-Domain
Group: Productivity/Multimedia/Video/Players
Requires: libxine2 = %{version}
%description -n libxine2-directfb
Directfb xine video-output plugin
Authors:
--------
Guenter Bartsch <guenter@users.sourceforge.net>
%description -n libxine2-directfb -l de
Directfb xine Video-Ausgabeplugin
Autoren:
--------
Guenter Bartsch <guenter@sourceforge.net>
%endif
%if %{with gnome_vfs}
%package -n libxine2-gnome-vfs
Summary: Gnome-vfs plugin for xine
License: GPL-2.0+ and SUSE-Public-Domain
Group: Productivity/Multimedia/Video/Players
Requires: libxine2 = %{version}
%description -n libxine2-gnome-vfs
Input plugin which enables xine to use Gnome-vfs
%description -n libxine2-gnome-vfs -l de
Eingabeplugin welches xine ermöglicht Gnome-vfs zu benutzen
%endif
%if !%{with distributable}
%package -n libxine2-codecs
# these libs are possibly illegal and may not work without libdvdcss anyway
Summary: Xine plugins for watching DVDs, DivX and more
License: GPL-2.0+ and SUSE-Public-Domain
Group: Productivity/Multimedia/Video/Players
Requires: libxine2 = %{version}
Provides: libxine2-dvd = %{version}-%{release}
Obsoletes: libxine2-dvd < %{version}-%{release}
Provides: libxine2-dxr3 = %{version}-%{release}
Obsoletes: libxine2-dxr3 < %{version}-%{release}
%ifarch %{ix86}
Provides: libxine2-w32dll = %{version}-%{release}
Obsoletes: libxine2-w32dll < %{version}-%{release}
%endif
Recommends: libdvdcss2 >= 1.2.10
%description -n libxine2-codecs
With these xine plug-ins, you can watch DVDs and all other kind of
media using xine. More information about xine plug-ins can be found at
http://www.xine-project.org/home
Authors:
--------
Guenter Bartsch <guenter@sourceforge.net>
%description -n libxine2-codecs -l de
Mit diesem xine Plugins können Sie DVDs und alle von xine unterstützten
Medienverainten abspielen. Weitere Informationtne über xine Plugins
finden Sie unter
http://www.xine-project.org/home
Autoren:
--------
Guenter Bartsch <guenter@sourceforge.net>
%endif
%prep
%if %{with distributable} && %{with onlynondistributable}
%error need --without distributable for --with onlynondistributable
%endif
cat <<EOF
+++ rpm build options +++'
Distributable version: %{with distributable}
%if !%{with distributable}
Codecs package only: %{with onlynondistributable}
External ffmpeg: 1
%endif
Pulseaudio: %{with pulseaudio}
SDL: %{with sdl}
aalib: %{with aalib}
esd: %{with esd}
jack: %{with jack}
gnome_vfs: %{with gnome_vfs}
directfb: %{with directfb}
modplug: %{with modplug}
+++++++++++++++++++++++++'
EOF
%setup -q
%patch0 -p1
%if 0%{suse_version} >= 1210
%patch1
%endif
%if %{with distributable}
%patch2 -p1
%else
%patch5 -p0
%endif
%ifnarch %ix86 x86_64
%patch3
%endif
%patch4
%patch6 -p1
rm -f m4/libtool15.m4
sed -i -e 's|/tmp/vdr-xine|/var/lib/vdr-xine|g' src/vdr/input_vdr.c
%build
export CFLAGS="${RPM_OPT_FLAGS} -fno-strict-aliasing -fno-force-addr `pkg-config --cflags smbclient`"
export CCASFLAGS=-Wa,--noexecstack
%if 0%{suse_version} < 1011
echo 'AC_DEFUN([AC_REQUIRE_AUX_FILE])dnl' >> acinclude.m4
%endif
%if 0%{?suse_version} < 1020
# hack for sles10
rm m4/gettext.m4 m4/intl.m4
sed -i -e '/AM_GNU_GETTEXT_VERSION/s/0\.16\.1/0.14/' configure.ac
%endif
if [ ! -f configure ]; then
NO_CONFIGURE=1 ./autogen.sh
fi
AUTOPOINT=true autoreconf -fi
./configure --prefix=/usr \
--libdir=%{_libdir} \
--mandir=%{_mandir} \
%if 0%{suse_version} > 1010
--docdir=%{_defaultdocdir}/xine \
%else
docdir=%{_defaultdocdir}/xine \
%endif
--enable-fpic \
--enable-antialiasing \
--with-libflac \
--with-freetype \
--enable-v4l \
%{?with_modplug:--enable-modplug} \
%{?with_directfb:--enable-directfb} \
%if !%{with sdl}
--without-sdl \
%endif
%if !%{with distributable}
--with-external-ffmpeg \
--enable-bluray \
%else
--disable-faad \
--disable-a52dec \
--disable-vdpau \
--disable-dxr3 \
%endif
%ifarch %{ix86}
--with-w32-path=/usr/lib/win32 \
%endif
--with-install-plugins-helper=${_prefix}/lib/opensuse-codecs-installer
%if 0%{?suse_version} < 1110
# wtf libtool shit. $echo is unset. I guess there is a way to fix
# this properly, please tell me!
echo=echo \
%endif
make %{?jobs:-j%{jobs}}
%install
%if 0%{?suse_version} < 1110
# same libtool problem here
echo=echo \
%endif
make install DESTDIR=%{buildroot}
LIB="%{buildroot}%{_libdir}/xine/plugins/%{abiversion}"
# install documentation
#install -m 0644 %{SOURCE1} COPYING AUTHORS %{buildroot}%{_defaultdocdir}/xine/
# remove usless READMEs
rm %{buildroot}%{_defaultdocdir}/xine/README.{irix,solaris,WIN32}
# remove .la files, they are evil
rm %{buildroot}%{_libdir}/*.la
%ifarch %{ix86}
mkdir -p %{buildroot}/usr/lib/win32
%endif
#
# big plugin sorting
#
cat > plugins << EOF
# these plugins do not have legal problems
xineplug_ao_out_alsa
xineplug_ao_out_file
xineplug_ao_out_none
xineplug_ao_out_oss
xineplug_vo_out_fb
xineplug_vo_out_none
xineplug_vo_out_opengl
xineplug_vo_out_opengl2
xineplug_vo_out_xshm
xineplug_vo_out_xv
%if 0%{suse_version} > 1020
xineplug_vo_out_xcbshm
xineplug_vo_out_xcbxv
%endif
xineplug_vo_out_raw
%if !%{with distributable}
xineplug_vo_out_vdpau
%endif
xineplug_inp_dvb
xineplug_inp_dvd
xineplug_inp_v4l
xineplug_inp_v4l2
xineplug_inp_file
xineplug_inp_http
xineplug_inp_net
xineplug_inp_pnm
xineplug_inp_cdda
xineplug_inp_smb
xineplug_inp_stdin_fifo
xineplug_inp_rtsp
xineplug_inp_pvr
xineplug_inp_rtp
xineplug_inp_test
xineplug_decode_bitplane
xineplug_decode_rgb
xineplug_decode_yuv
xineplug_decode_lpcm
xineplug_decode_real
xineplug_decode_mpc
xineplug_decode_gdk_pixbuf
xineplug_decode_spucmml
xineplug_decode_spuhdmv
xineplug_decode_libjpeg
# requires ImageMagick
xineplug_decode_image
xineplug_dmx_yuv_frames
xineplug_dmx_real
xineplug_dmx_audio
xineplug_dmx_iff
xineplug_dmx_avi
xineplug_dmx_flv
xineplug_dmx_image
xineplug_dmx_matroska
xineplug_dmx_fli
xineplug_dmx_nsv
xineplug_dmx_mng
xineplug_dmx_pva
xineplug_dmx_qt
xineplug_dmx_rawdv
xineplug_dmx_games
xineplug_dmx_slave
xineplug_dmx_modplug
xineplug_dmx_playlist
xineplug_dmx_vc1_es
xineplug_flac
xineplug_sputext
xineplug_xiph
xineplug_vdr
xineplug_vo_out_xxmc
xineplug_vo_out_xvmc
%ifarch %{ix86}
xineplug_vo_out_vidix
vidix/cyberblade_vid
vidix/mach64_vid
vidix/mga_crtc2_vid
vidix/mga_vid
vidix/nvidia_vid
vidix/pm2_vid
vidix/pm3_vid
vidix/radeon_vid
vidix/rage128_vid
vidix/savage_vid
vidix/sis_vid
vidix/unichrome_vid
%endif
post/xineplug_post_audio_filters
post/xineplug_post_goom
post/xineplug_post_mosaico
post/xineplug_post_switch
%ifarch %ix86 x86_64
post/xineplug_post_tvtime
%endif
post/xineplug_post_visualizations
#
.pulse
xineplug_ao_out_pulseaudio
#
.esd
xineplug_ao_out_esd
#
.jack
xineplug_ao_out_jack
#
.aalib
xineplug_vo_out_aa
xineplug_vo_out_caca
#
.sdl
xineplug_vo_out_sdl
#
.gnome-vfs
xineplug_inp_gnome_vfs
#
.directfb
xineplug_vo_out_directfb
xineplug_vo_out_xdirectfb
#
.codecs
# libmad and MPEG related plugins
xineplug_decode_mad
xineplug_decode_spudvb
xineplug_inp_vcd
xineplug_inp_vcdo
xineplug_decode_mpeg2
#xineplug_decode_mpeg2new
xineplug_dmx_mpeg
xineplug_dmx_mpeg_block
xineplug_dmx_mpeg_ts
xineplug_dmx_mpeg_elem
xineplug_dmx_mpeg_pes
xineplug_dmx_yuv4mpeg2
# these plugins do have legal problems
xineplug_decode_a52
xineplug_decode_dts
xineplug_decode_faad
xineplug_decode_ff
xineplug_decode_dvaudio
xineplug_dmx_asf
xineplug_inp_mms
xineplug_inp_bluray
# I am not sure about these plugins, they need to be checked
# Closed Captioning Decoder (EIA-608). Patented ???
xineplug_decode_spucc
xineplug_decode_spu
# NES Music File Format. free ??
xineplug_nsf
# Philips claimed intellectual property on GSM 06.10
xineplug_decode_gsm610
%ifarch %{ix86}
xineplug_decode_qt
xineplug_decode_w32dll
%endif
xineplug_decode_dxr3_video
xineplug_vo_out_dxr3
xineplug_decode_dxr3_spu
xineplug_decode_vdpau_h264
xineplug_decode_vdpau_h264_alter
xineplug_decode_vdpau_mpeg12
xineplug_decode_vdpau_mpeg4
xineplug_decode_vdpau_vc1
xineplug_vo_out_vaapi
# unfortunately using external ffmpeg links the planar post
# processing plugin against ffmpeg libs
post/xineplug_post_planar
#
EOF
#
OUT_FILE=""
grep -v ^# plugins | while read i; do
[ "${i:0:1}" = "." ] && OUT_FILE=${i} && continue
echo %{_libdir}/xine/plugins/%{abiversion}/${i}.so >> files${OUT_FILE}
done
%find_lang libxine2
cat libxine2.lang >>files
%if %{with distributable}
xargs -i+ rm -f %{buildroot}/+ <files.codecs
%else
%if 0%{?__debug_package}
# strip patent encumbered plugins to prevent their source from
# ending up in the debuginfo package
xargs -i+ strip --strip-debug %{buildroot}/+ <files.codecs
%endif
%endif
%if %{with onlynondistributable}
for i in files files.*; do
test "$i" = 'files.codecs' || xargs -i+ rm -f %{buildroot}/+ < $i
done
rm -rf %{buildroot}/usr/share %{buildroot}/usr/bin
rm -rf %{buildroot}%{_defaultdocdir}/xine %{buildroot}/usr/include
rm -rf %{buildroot}/usr/lib/win32 %{buildroot}/%{_libdir}/pkgconfig
rm -rf %{buildroot}%{_libdir}/xine/plugins/%{abiversion}/{vidix,mime.types}
rm -f %{buildroot}%{_libdir}/libxine*
%endif
rm -rf %{buildroot}%{_mandir}/man5
%clean
rm -rf %{buildroot}
%if !%{with onlynondistributable}
%post -n libxine2 -p /sbin/ldconfig
%postun -n libxine2 -p /sbin/ldconfig
%files -n libxine2 -f files
%defattr(-,root,root)
%{_bindir}/xine-list-*
%ifarch %{ix86}
%dir /usr/lib/win32
%endif
%dir /%{_libdir}/xine
%dir /%{_libdir}/xine/plugins
%dir /%{_libdir}/xine/plugins/%{abiversion}
%dir /usr/share/xine-lib
%{_libdir}/libxine.so.*
%doc %{_mandir}/man1/xine-list-*.gz
#%doc %{_mandir}/man5/xine.*
%{_defaultdocdir}/xine
%dir %{_libdir}/xine/plugins/%{abiversion}/post
%{_libdir}/xine/plugins/%{abiversion}/mime.types
#
# xine fonts
# cetus is a freeware font from http://www.fontfreak.com/authors/gregfonts.htm
#
/usr/share/xine-lib/fonts
%ifarch %{ix86}
%dir %{_libdir}/xine/plugins/%{abiversion}/vidix
%endif
%if %{with pulseaudio}
%files -n libxine2-pulse -f files.pulse
%defattr(-,root,root,0755)
%endif
%if %{with sdl}
%files -n libxine2-sdl -f files.sdl
%defattr(-,root,root,0755)
%endif
%if %{with esd}
%files -n libxine2-esd -f files.esd
%defattr(-,root,root,0755)
%endif
%if %{with jack}
%files -n libxine2-jack -f files.jack
%defattr(-,root,root,0755)
%endif
%if %{with aalib}
%files -n libxine2-aa -f files.aalib
%defattr(-,root,root,0755)
%endif
%if %{with directfb}
%files -n libxine2-directfb -f files.directfb
%defattr(-,root,root,0755)
%endif
%if %{with gnome_vfs}
%files -n libxine2-gnome-vfs -f files.gnome-vfs
%defattr(-,root,root,0755)
%endif
%files -n libxine-devel
%defattr(-,root,root)
%doc %{_mandir}/man1/xine-config.1.gz
/usr/bin/xine-config
%{_libdir}/pkgconfig/libxine.pc
%{_libdir}/libxine.so
/usr/share/aclocal/xine.m4
/usr/include/xine
/usr/include/xine.h
%endif # onlynondistributable
%if !%{with distributable}
%files -n libxine2-codecs -f files.codecs
%defattr(-,root,root)
%dir %{_libdir}/xine
%dir %{_libdir}/xine/plugins
%dir %{_libdir}/xine/plugins/%{abiversion}
%dir %{_libdir}/xine/plugins/%{abiversion}/post
%endif
%changelog