summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--ChangeLog5
-rw-r--r--debian/control1
-rwxr-xr-xdebian/rules1
-rw-r--r--m4/xine.m416
-rw-r--r--src/combined/ffmpeg/ff_video_decoder.c7
-rw-r--r--src/dxr3/dxr3_decode_spu.c9
-rw-r--r--src/input/input_dvd.c8
-rw-r--r--src/spu_dec/spu_decoder.c9
-rw-r--r--src/spu_dec/spudec.c9
-rw-r--r--src/spu_dec/spudec.h6
10 files changed, 49 insertions, 22 deletions
diff --git a/ChangeLog b/ChangeLog
index 4b2808aba..e544bf6d9 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -70,6 +70,11 @@ xine-lib (1.1.90) (Unreleased)
* Report more video output capabilities via (port)->get_capabilities():
colour controls, zooming, colour keying.
+xine-lib (1.1.19) 2010-??-??
+ * Handle odd widths properly (for ffmpeg-decoded video).
+ * Make buildable with current (external) libdvdnav & libdvdread.
+ * Fix V4L2 check.
+
xine-lib (1.1.18.1) 2010-03-06
* Oops. compat.c (for DXR3 support) was omitted.
* Fix up V4L/V4L2 compilation. Some non-Linux have V4L2 but not V4L.
diff --git a/debian/control b/debian/control
index a5137841c..c9c57183c 100644
--- a/debian/control
+++ b/debian/control
@@ -26,6 +26,7 @@ Build-Depends: debhelper (>= 5.0.1), binutils (>= 2.12.90.0.9), pkg-config,
libflac-dev, libsdl1.2-dev, libwavpack-dev,
libsmbclient-dev, libspeex-dev, libmng-dev,
libmad0-dev, libmpcdec-dev, libcdio-dev (>= 0.76-1), libvcdinfo-dev,
+ libdvdnav-dev, libdvdread-dev,
zlib1g-dev, w3m, xmlto, librsvg2-bin
Standards-Version: 3.7.2
diff --git a/debian/rules b/debian/rules
index bdaa347f8..0e03b0edd 100755
--- a/debian/rules
+++ b/debian/rules
@@ -70,6 +70,7 @@ CONFIGURE_FLAGS := \
--with-freetype \
--with-wavpack \
--enable-ipv6 \
+ --with-external-dvdnav \
$(DEB_BUILD_CONFIG_OPTIONS)
configure: configure-stamp
diff --git a/m4/xine.m4 b/m4/xine.m4
index 02a5e6d8e..ec5739e0a 100644
--- a/m4/xine.m4
+++ b/m4/xine.m4
@@ -82,14 +82,14 @@ AC_DEFUN([AM_PATH_XINE], [
min_xine_version=ifelse([$1], , [0.5.0], [$1])
AC_PATH_TOOL([XINE_CONFIG], [xine-config], [no])
AC_MSG_CHECKING([for XINE-LIB version >= $min_xine_version])
- XINE_CFLAGS="`$XINE_CONFIG $xine_config_args --cflags`"
- XINE_LIBS="`$XINE_CONFIG $xine_config_args --libs`"
- XINE_VERSION="`$XINE_CONFIG $xine_config_args --version`"
- XINE_ACFLAGS="`$XINE_CONFIG $xine_config_args --acflags`"
- xine_data_dir="`$XINE_CONFIG $xine_config_args --datadir`"
- xine_script_dir="`$XINE_CONFIG $xine_config_args --scriptdir`"
- xine_plugin_dir="`$XINE_CONFIG $xine_config_args --plugindir`"
- xine_locale_dir="`$XINE_CONFIG $xine_config_args --localedir`"
+ XINE_CFLAGS="`$XINE_CONFIG $xine_config_args --cflags 2>/dev/null`"
+ XINE_LIBS="`$XINE_CONFIG $xine_config_args --libs 2>/dev/null`"
+ XINE_VERSION="`$XINE_CONFIG $xine_config_args --version 2>/dev/null`"
+ XINE_ACFLAGS="`$XINE_CONFIG $xine_config_args --acflags 2>/dev/null`"
+ xine_data_dir="`$XINE_CONFIG $xine_config_args --datadir 2>/dev/null`"
+ xine_script_dir="`$XINE_CONFIG $xine_config_args --scriptdir 2>/dev/null`"
+ xine_plugin_dir="`$XINE_CONFIG $xine_config_args --plugindir 2>/dev/null`"
+ xine_locale_dir="`$XINE_CONFIG $xine_config_args --localedir 2>/dev/null`"
_XINE_VERSION_CHECK([$min_xine_version], [$XINE_VERSION],
[xine_version_ok=yes; AC_MSG_RESULT([yes, $XINE_VERSION])],
[xine_version_ok=no; AC_MSG_RESULT([no, $XINE_VERSION])])
diff --git a/src/combined/ffmpeg/ff_video_decoder.c b/src/combined/ffmpeg/ff_video_decoder.c
index aaec97ccd..e6c44f7b5 100644
--- a/src/combined/ffmpeg/ff_video_decoder.c
+++ b/src/combined/ffmpeg/ff_video_decoder.c
@@ -298,11 +298,6 @@ static void init_video_codec (ff_video_decoder_t *this, unsigned int codec_type)
lprintf("lavc decoder found\n");
- /* force (width % 8 == 0), otherwise there will be
- * display problems with Xv.
- */
- this->bih.biWidth = (this->bih.biWidth + 1) & (~1);
-
this->context->width = this->bih.biWidth;
this->context->height = this->bih.biHeight;
this->context->stream_codec_tag = this->context->codec_tag =
@@ -1366,7 +1361,7 @@ static void ff_handle_buffer (ff_video_decoder_t *this, buf_element_t *buf) {
(this->context->pix_fmt == PIX_FMT_RGB24) ||
(this->context->pix_fmt == PIX_FMT_PAL8)) {
this->output_format = XINE_IMGFMT_YUY2;
- init_yuv_planes(&this->yuv, this->bih.biWidth, this->bih.biHeight);
+ init_yuv_planes(&this->yuv, (this->bih.biWidth + 15) & ~15, this->bih.biHeight);
this->yuv_init = 1;
}
this->cs_convert_init = 1;
diff --git a/src/dxr3/dxr3_decode_spu.c b/src/dxr3/dxr3_decode_spu.c
index 7e7aa1f1a..ca2df4afd 100644
--- a/src/dxr3/dxr3_decode_spu.c
+++ b/src/dxr3/dxr3_decode_spu.c
@@ -51,8 +51,13 @@
#include <xine/buffer.h>
#include "xine-engine/bswap.h"
#ifdef HAVE_DVDNAV
-# include <dvdnav/nav_types.h>
-# include <dvdnav/nav_read.h>
+# ifdef HAVE_DVDNAV_NAVTYPES_H
+# include <dvdnav/nav_types.h>
+# include <dvdnav/nav_read.h>
+# else
+# include <dvdread/nav_types.h>
+# include <dvdread/nav_read.h>
+# endif
#else
# include "nav_types.h"
# include "nav_read.h"
diff --git a/src/input/input_dvd.c b/src/input/input_dvd.c
index e58498abd..17df441f2 100644
--- a/src/input/input_dvd.c
+++ b/src/input/input_dvd.c
@@ -79,7 +79,13 @@
/* DVDNAV includes */
#ifdef HAVE_DVDNAV
# include <dvdnav/dvdnav.h>
-# include <dvdnav/nav_read.h>
+# ifdef HAVE_DVDNAV_NAVTYPES_H
+# include <dvdnav/nav_types.h>
+# include <dvdnav/nav_read.h>
+# else
+# include <dvdread/nav_types.h>
+# include <dvdread/nav_read.h>
+# endif
#else
# define DVDNAV_COMPILE
# include "dvdnav.h"
diff --git a/src/spu_dec/spu_decoder.c b/src/spu_dec/spu_decoder.c
index 0b39243ae..9244564ff 100644
--- a/src/spu_dec/spu_decoder.c
+++ b/src/spu_dec/spu_decoder.c
@@ -38,8 +38,13 @@
#include "xine-engine/bswap.h"
#include <xine/xineutils.h>
#ifdef HAVE_DVDNAV
-# include <dvdnav/nav_read.h>
-# include <dvdnav/nav_types.h>
+# ifdef HAVE_DVDNAV_NAVTYPES_H
+# include <dvdnav/nav_types.h>
+# include <dvdnav/nav_read.h>
+# else
+# include <dvdread/nav_types.h>
+# include <dvdread/nav_read.h>
+# endif
#else
# include "nav_read.h"
# include "nav_types.h"
diff --git a/src/spu_dec/spudec.c b/src/spu_dec/spudec.c
index 8c5a2049d..fc305b864 100644
--- a/src/spu_dec/spudec.c
+++ b/src/spu_dec/spudec.c
@@ -56,8 +56,13 @@
#include <xine/buffer.h>
#include "xine-engine/bswap.h"
#ifdef HAVE_DVDNAV
-# include <dvdnav/nav_read.h>
-# include <dvdnav/nav_print.h>
+# ifdef HAVE_DVDNAV_NAVTYPES_H
+# include <dvdnav/nav_read.h>
+# include <dvdnav/nav_print.h>
+# else
+# include <dvdread/nav_read.h>
+# include <dvdread/nav_print.h>
+# endif
#else
# include "nav_read.h"
# include "nav_print.h"
diff --git a/src/spu_dec/spudec.h b/src/spu_dec/spudec.h
index 4d99e50ce..225a87f13 100644
--- a/src/spu_dec/spudec.h
+++ b/src/spu_dec/spudec.h
@@ -33,7 +33,11 @@
#include <xine/video_out.h>
#include <xine/video_overlay.h>
#ifdef HAVE_DVDNAV
-# include <dvdnav/nav_types.h>
+# ifdef HAVE_DVDNAV_NAVTYPES_H
+# include <dvdnav/nav_types.h>
+# else
+# include <dvdread/nav_types.h>
+# endif
#else
# include "nav_types.h"
#endif