From 8c0b202a58fbce2a96ce3d02eea24b0e1e786e7a Mon Sep 17 00:00:00 2001 From: Darren Salt Date: Wed, 10 Mar 2010 19:14:22 +0000 Subject: Handle odd widths properly (for ffmpeg-decoded video). --- ChangeLog | 1 + src/combined/ffmpeg/ff_video_decoder.c | 7 +------ 2 files changed, 2 insertions(+), 6 deletions(-) diff --git a/ChangeLog b/ChangeLog index 275af29fb..9eaa7df37 100644 --- a/ChangeLog +++ b/ChangeLog @@ -3,6 +3,7 @@ xine-lib (1.1.18.1) 2010-03-06 * Fix up V4L/V4L2 compilation. Some non-Linux have V4L2 but not V4L. * Fix a size check (wrong variable, causing int/ptr comparison) in rmff.c. * Fix build with the old, outdated and deprecated internal ffmpeg. + * Handle odd widths properly (for ffmpeg-decoded video). xine-lib (1.1.18) 2010-02-23 * Bump the FLAC decoder's priority above ffmpegaudio. This should fix diff --git a/src/combined/ffmpeg/ff_video_decoder.c b/src/combined/ffmpeg/ff_video_decoder.c index 8c604e047..7d0d74b77 100644 --- a/src/combined/ffmpeg/ff_video_decoder.c +++ b/src/combined/ffmpeg/ff_video_decoder.c @@ -309,11 +309,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 = @@ -1389,7 +1384,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; -- cgit v1.2.3 From 393039dbf092579847f43821fb694ac5789c56fb Mon Sep 17 00:00:00 2001 From: Darren Salt Date: Wed, 10 Mar 2010 21:14:14 +0000 Subject: Make buildable with current (external) libdvdnav & libdvdread. --- ChangeLog | 1 + m4/dvdnav.m4 | 8 +++++--- src/dxr3/dxr3_decode_spu.c | 9 +++++++-- src/input/input_dvd.c | 8 +++++++- src/libspudec/spu.c | 9 +++++++-- src/libspudec/spu.h | 6 +++++- src/libspudec/xine_spu_decoder.c | 9 +++++++-- 7 files changed, 39 insertions(+), 11 deletions(-) diff --git a/ChangeLog b/ChangeLog index 9eaa7df37..4ceef5fed 100644 --- a/ChangeLog +++ b/ChangeLog @@ -4,6 +4,7 @@ xine-lib (1.1.18.1) 2010-03-06 * Fix a size check (wrong variable, causing int/ptr comparison) in rmff.c. * Fix build with the old, outdated and deprecated internal ffmpeg. * Handle odd widths properly (for ffmpeg-decoded video). + * Make buildable with current (external) libdvdnav & libdvdread. xine-lib (1.1.18) 2010-02-23 * Bump the FLAC decoder's priority above ffmpegaudio. This should fix diff --git a/m4/dvdnav.m4 b/m4/dvdnav.m4 index c15404168..a7f354b63 100644 --- a/m4/dvdnav.m4 +++ b/m4/dvdnav.m4 @@ -84,7 +84,7 @@ dnl checks the results of dvdnav-config to some extent dnl rm -f conf.dvdnavtest AC_RUN_IFELSE([AC_LANG_SOURCE([[ -#include +#include #include #include #include @@ -129,7 +129,7 @@ main () ]])],[],[no_dvdnav=yes],[no_dvdnav=cc]) if test "x$no_dvdnav" = xcc; then AC_LINK_IFELSE([AC_LANG_PROGRAM([[ -#include +#include #include ]], [[ return 0; ]])],[no_dvdnav=''],[no_dvdnav=yes]) fi @@ -140,6 +140,8 @@ main () if test "x$no_dvdnav" = x ; then AC_MSG_RESULT(yes) ifelse([$2], , :, [$2]) + dnl nav_*.h seem to have been moved from dvdnav at some point? + AC_CHECK_HEADERS([dvdread/nav_types.h]) else AC_MSG_RESULT(no) if test "$DVDNAV_CONFIG" = "no" ; then @@ -155,7 +157,7 @@ main () CFLAGS="$CFLAGS $DVDNAV_CFLAGS" LIBS="$LIBS $DVDNAV_LIBS" AC_LINK_IFELSE([AC_LANG_PROGRAM([[ -#include +#include #include ]], [[ return 0; ]])], [ echo "*** The test program compiled, but did not run. This usually means" diff --git a/src/dxr3/dxr3_decode_spu.c b/src/dxr3/dxr3_decode_spu.c index e3d4f969b..683666d21 100644 --- a/src/dxr3/dxr3_decode_spu.c +++ b/src/dxr3/dxr3_decode_spu.c @@ -51,8 +51,13 @@ #include "buffer.h" #include "xine-engine/bswap.h" #ifdef HAVE_DVDNAV -# include -# include +# ifdef HAVE_DVDNAV_NAVTYPES_H +# include +# include +# else +# include +# include +# 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 400f82aca..27e49e05a 100644 --- a/src/input/input_dvd.c +++ b/src/input/input_dvd.c @@ -79,7 +79,13 @@ /* DVDNAV includes */ #ifdef HAVE_DVDNAV # include -# include +# ifdef HAVE_DVDNAV_NAVTYPES_H +# include +# include +# else +# include +# include +# endif #else # define DVDNAV_COMPILE # include "dvdnav.h" diff --git a/src/libspudec/spu.c b/src/libspudec/spu.c index a9319f103..80d1eeaf5 100644 --- a/src/libspudec/spu.c +++ b/src/libspudec/spu.c @@ -57,8 +57,13 @@ #include "buffer.h" #include "xine-engine/bswap.h" #ifdef HAVE_DVDNAV -# include -# include +# ifdef HAVE_DVDNAV_NAVTYPES_H +# include +# include +# else +# include +# include +# endif #else # include "nav_read.h" # include "nav_print.h" diff --git a/src/libspudec/spu.h b/src/libspudec/spu.h index 54efe1968..a1bc5b971 100644 --- a/src/libspudec/spu.h +++ b/src/libspudec/spu.h @@ -33,7 +33,11 @@ #include "video_out.h" #include "video_overlay.h" #ifdef HAVE_DVDNAV -# include +# ifdef HAVE_DVDNAV_NAVTYPES_H +# include +# else +# include +# endif #else # include "nav_types.h" #endif diff --git a/src/libspudec/xine_spu_decoder.c b/src/libspudec/xine_spu_decoder.c index 1f40dbb27..3d23bba21 100644 --- a/src/libspudec/xine_spu_decoder.c +++ b/src/libspudec/xine_spu_decoder.c @@ -39,8 +39,13 @@ #include "xineutils.h" #include "spu.h" #ifdef HAVE_DVDNAV -# include -# include +# ifdef HAVE_DVDNAV_NAVTYPES_H +# include +# include +# else +# include +# include +# endif #else # include "nav_read.h" # include "nav_types.h" -- cgit v1.2.3 From f29240252178f69777f7df415d3a538435f897cb Mon Sep 17 00:00:00 2001 From: Darren Salt Date: Wed, 10 Mar 2010 21:16:55 +0000 Subject: Debian builds now use external libdvdnav & libdvdread. --- debian/control | 1 + debian/rules | 1 + 2 files changed, 2 insertions(+) diff --git a/debian/control b/debian/control index 0a54b20b6..175db7225 100644 --- a/debian/control +++ b/debian/control @@ -25,6 +25,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), + libdvdnav-dev, libdvdread-dev, zlib1g-dev, w3m, transfig, sgmltools-lite, ghostscript | gs-gpl | gs Standards-Version: 3.7.2 diff --git a/debian/rules b/debian/rules index 85565e115..c3b30618d 100755 --- a/debian/rules +++ b/debian/rules @@ -81,6 +81,7 @@ CONFIGURE_FLAGS := \ --with-external-libdts \ --with-external-ffmpeg \ --with-external-libmpcdec \ + --with-external-dvdnav \ --with-freetype \ --with-wavpack \ --enable-ipv6 \ -- cgit v1.2.3 From 8313b038cb6668c6cac06781e20da61f87a25360 Mon Sep 17 00:00:00 2001 From: Darren Salt Date: Sat, 13 Mar 2010 00:53:52 +0000 Subject: Correct changelog. --- ChangeLog | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/ChangeLog b/ChangeLog index 4ceef5fed..c39782b06 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,10 +1,12 @@ +xine-lib (1.1.19) 2010-??-?? + * Handle odd widths properly (for ffmpeg-decoded video). + * Make buildable with current (external) libdvdnav & libdvdread. + 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. * Fix a size check (wrong variable, causing int/ptr comparison) in rmff.c. * Fix build with the old, outdated and deprecated internal ffmpeg. - * Handle odd widths properly (for ffmpeg-decoded video). - * Make buildable with current (external) libdvdnav & libdvdread. xine-lib (1.1.18) 2010-02-23 * Bump the FLAC decoder's priority above ffmpegaudio. This should fix -- cgit v1.2.3 From b243c8ddeb10a19f65ac46a07f8ae2a414fa3e8d Mon Sep 17 00:00:00 2001 From: Darren Salt Date: Sat, 13 Mar 2010 00:54:19 +0000 Subject: Fix V4L2 check. --- ChangeLog | 1 + configure.ac | 2 +- 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/ChangeLog b/ChangeLog index c39782b06..7a7c3656e 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,6 +1,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. xine-lib (1.1.18.1) 2010-03-06 * Oops. compat.c (for DXR3 support) was omitted. diff --git a/configure.ac b/configure.ac index 68f811d1b..3c7830113 100644 --- a/configure.ac +++ b/configure.ac @@ -698,7 +698,7 @@ dnl ---------------------------------------------- AC_ARG_ENABLE([libv4l], AS_HELP_STRING([--disable-libv4l], [do not build with libv4l support])) -if test "x$have_v4l2$" = xyes && test "x$enable_libv4l" != xno; then +if test "x$have_v4l2" = xyes && test "x$enable_libv4l" != xno; then have_libv4l=no PKG_CHECK_MODULES([V4L2], [libv4l2], [have_libv4l=yes -- cgit v1.2.3 From 841473467fd19e4fa4e255d9e17af526ecee5ac8 Mon Sep 17 00:00:00 2001 From: Darren Salt Date: Sun, 14 Mar 2010 15:06:02 +0000 Subject: Silence use of xine-config when invoked from AM_PATH_XINE. --- m4/xine.m4 | 21 +++++++++++---------- 1 file changed, 11 insertions(+), 10 deletions(-) diff --git a/m4/xine.m4 b/m4/xine.m4 index 6c8d980b6..a92fb54e9 100644 --- a/m4/xine.m4 +++ b/m4/xine.m4 @@ -65,19 +65,20 @@ AC_ARG_ENABLE(xinetest, if test "$XINE_CONFIG" = "no" ; then no_xine=yes else - XINE_CFLAGS=`$XINE_CONFIG $xine_config_args --cflags` - XINE_LIBS=`$XINE_CONFIG $xine_config_args --libs` - XINE_ACFLAGS=`$XINE_CONFIG $xine_config_args --acflags` - xine_config_major_version=`$XINE_CONFIG $xine_config_args --version | \ + XINE_CFLAGS=`$XINE_CONFIG $xine_config_args --cflags 2>/dev/null` + XINE_LIBS=`$XINE_CONFIG $xine_config_args --libs 2>/dev/null` + XINE_ACFLAGS=`$XINE_CONFIG $xine_config_args --acflags 2>/dev/null` + xine_version=`$XINE_CONFIG $xine_config_args --version 2>/dev/null` + xine_config_major_version=`echo "$xine_version" | \ sed -n 's/^\([[0-9]]*\)\.\([[0-9]]*\)\.\([[0-9]]*\).*$/\1/p'` - xine_config_minor_version=`$XINE_CONFIG $xine_config_args --version | \ + xine_config_minor_version=`echo "$xine_version" | \ sed -n 's/^\([[0-9]]*\)\.\([[0-9]]*\)\.\([[0-9]]*\).*$/\2/p'` - xine_config_sub_version=`$XINE_CONFIG $xine_config_args --version | \ + xine_config_sub_version=`echo "$xine_version" | \ sed -n 's/^\([[0-9]]*\)\.\([[0-9]]*\)\.\([[0-9]]*\).*$/\3/p'` - 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_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` dnl if test "x$enable_xinetest" = "xyes" ; then ac_save_CFLAGS="$CFLAGS" ac_save_LIBS="$LIBS" -- cgit v1.2.3