summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--.hgignore4
-rw-r--r--.hgsigs1
-rw-r--r--.hgtags1
-rw-r--r--ChangeLog7
-rw-r--r--Makefile.am6
-rw-r--r--configure.ac5
-rw-r--r--contrib/libfaad/common.h2
-rwxr-xr-xdebian/rules2
-rw-r--r--include/Makefile.am4
-rw-r--r--include/config.h23
-rw-r--r--lib/os_internal.h2
-rw-r--r--src/libreal/real_common.c4
-rw-r--r--src/video_out/video_out_fb.c44
-rw-r--r--src/xine-utils/attributes.h2
14 files changed, 52 insertions, 55 deletions
diff --git a/.hgignore b/.hgignore
index 3c5eec892..01938f85c 100644
--- a/.hgignore
+++ b/.hgignore
@@ -24,8 +24,8 @@ config.log
config.sub
config.status
config.status.lineno
-config.h
-config.h.in
+include/configure.h
+include/configure.h.in
depcomp
install-sh
libtool
diff --git a/.hgsigs b/.hgsigs
new file mode 100644
index 000000000..a1901b37f
--- /dev/null
+++ b/.hgsigs
@@ -0,0 +1 @@
+5e6d0656ac4efdc1a89ed0fc32f11050f4a22970 0 iD8DBQBGZ207sBKtjPGfWZ8RAhdEAKCrkwiBT6bTof7ro5QQwewRfF/dMACffsvfK42+ahQrjpSfQxEp6k7RpCI=
diff --git a/.hgtags b/.hgtags
index d8e9adc3d..1c20ea2b0 100644
--- a/.hgtags
+++ b/.hgtags
@@ -60,3 +60,4 @@ fd12068ebd3fab2438f77b06e312c4244e97950a DXR3_095
4a4f4e8bb768b6598c02a59929019866a40b4edc nopadding_no_abi_change
204b8e92463b592e5c220b56f186a6d4d1007cf9 xine-lib-1_1_5-release
7b60f85a95345c41fb074dc5e3f7355d9e72968e xine-lib-1_1_6-release
+ab1531337553ad5eac24a69ac665eae33916b423 xine-lib-1_1_7-release
diff --git a/ChangeLog b/ChangeLog
index c3cc1399e..27fbf97b2 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -33,7 +33,7 @@ xine-lib (1.1.90) (Unreleased)
software mixing facility you can consider alternative daemons. Note: aRTs
will not be present in KDE 4.
-xine-lib (1.1.7) (unreleased)
+xine-lib (1.1.7)
* Support libdca (new name for libdts) by shuffling around the dts.h file.
* Add support for MDHD version 1 atom in demux_qt. [bug #1679398]
* Handle single-quoted attribute values in XML.
@@ -58,6 +58,11 @@ xine-lib (1.1.7) (unreleased)
* Fix an mmap problem with huge files on 32-bit systems.
* Improved MPEG PES stream handling: specifically, misdetection of data
streams as PES streams.
+ * Handle unplugged ALSA device (fixes crashes) and if the frontend does not
+ handle the event continue playback to the none output.
+ * Disable aRTs output plugin by default, it's deprecated and will be removed
+ in 1.2 series.
+ * Fix a colour format conversion crash in the fb video output driver.
xine-lib (1.1.6)
* Split the DirectFB plugin into X11 and non-X versions.
diff --git a/Makefile.am b/Makefile.am
index fb5c98316..424bbcbaa 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -29,8 +29,6 @@ EXTRA_DIST = config.rpath autogen.sh \
depcomp \
CREDITS
-noinst_HEADERS = config.h
-
CONFIG_CLEAN_FILES = libtool
docs:
@@ -84,7 +82,7 @@ install-data-hook:
mostlyclean-generic:
-rm -f *~ \#* .*~ .\#*
- -rm -f $(PACKAGE)_$(VERSION).tar.gz
+ -rm -f $(PACKAGE)_$(VERSION).tar.gz $(PACKAGE)_$(VERSION).tar.bz2
-rm -f $(distdir).tar.gz $(PACKAGE).tgz package_descriptions
-rm -rf $(distdir)
@@ -93,7 +91,7 @@ maintainer-clean-generic:
-@echo "This command is intended for maintainers to use;"
-@echo "it deletes files that may require special tools to rebuild."
-rm -f Makefile.in configure acinclude.m4 aclocal.m4
- -rm -f config.h.in stamp-h.in ltconfig ltmain.sh
+ -rm -f stamp-h.in ltconfig ltmain.sh
-rm -f config.guess config.sub install-sh missing mkinstalldirs
-rm -f depcomp config.log
diff --git a/configure.ac b/configure.ac
index 794da2895..3e6763d21 100644
--- a/configure.ac
+++ b/configure.ac
@@ -12,7 +12,7 @@ AC_INIT([xine-lib], XINE_VERSION_SPEC, [xine-bugs@lists.sourceforge.net])
AM_INIT_AUTOMAKE
AC_CONFIG_SRCDIR([src/xine-engine/xine.c])
AC_CONFIG_LIBOBJ_DIR([lib])
-AC_CONFIG_HEADERS([config.h])
+AC_CONFIG_HEADERS([include/configure.h])
AM_MAINTAINER_MODE
AH_TOP([#ifndef __XINE_LIB_CONFIG_H__
@@ -24,9 +24,6 @@ AH_BOTTOM([#ifdef ASMALIGN_1SLN
# define ASMALIGN(ZEROBITS) ".align 1<<" #ZEROBITS "\n\t"
#endif
-/* include internal system specific header */
-#include "os_internal.h"
-
#endif /* __XINE_LIB_CONFIG_H__ */
])
diff --git a/contrib/libfaad/common.h b/contrib/libfaad/common.h
index 47832e648..8244a8143 100644
--- a/contrib/libfaad/common.h
+++ b/contrib/libfaad/common.h
@@ -36,7 +36,7 @@ extern "C" {
#define __STRICT_ANSI__
#endif
-#include "../config.h"
+#include "../include/config.h"
#define INLINE __inline
#if 0 //defined(_WIN32) && !defined(_WIN32_WCE)
diff --git a/debian/rules b/debian/rules
index 5082cc75a..c3ae26899 100755
--- a/debian/rules
+++ b/debian/rules
@@ -103,7 +103,7 @@ clean:
-$(MAKE) distclean
# remove more cruft leftover by autohell
rm -f doc/faq/faq.html doc/faq/faq.txt doc/hackersguide/hackersguide.html m4/caca.m4
- -test -f .noauto || find . -name Makefile.in -print | xargs rm
+ -test -f .noauto || find . -name Makefile.in -print | xargs -r rm
test -f .noauto || rm -rf compile config.guess configure depcomp install-sh ltmain.sh missing aclocal.m4 config.h.in
dh_clean
diff --git a/include/Makefile.am b/include/Makefile.am
index 621bd423c..673f508fa 100644
--- a/include/Makefile.am
+++ b/include/Makefile.am
@@ -6,6 +6,8 @@ endif
include_HEADERS = xine.h
+noinst_HEADERS = config.h configure.h
+
CONFIG_CLEAN_FILES = xine.h $(inttypes_h)
mostlyclean-generic:
@@ -14,7 +16,7 @@ mostlyclean-generic:
maintainer-clean-generic:
-@echo "This command is intended for maintainers to use;"
-@echo "it deletes files that may require special tools to rebuild."
- -rm -f Makefile.in
+ -rm -f Makefile.in configure.h.in
install-data-local: install-includeHEADERS
sed -e '/^\/\*_x_/d' xine.h > $(DESTDIR)$(includedir)/xine.h
diff --git a/include/config.h b/include/config.h
new file mode 100644
index 000000000..3cf680b1c
--- /dev/null
+++ b/include/config.h
@@ -0,0 +1,23 @@
+/*
+ * Copyright (C) 2007 the xine project
+ *
+ * This file is part of xine, a free video player.
+ *
+ * xine is free software; you can redistribute it and/or modify it under
+ * the terms of the GNU General Public Licence as published by the Free
+ * Software Foundation; either version 2 of the Licence, or (at your option)
+ * any later version.
+ *
+ * xine is distributed in the hope that it will be useful, but WITHOUT ANY
+ * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
+ * FOR A PARTICULAR PURPOSE. See the GNU General Public Licence for more
+ * details.
+ *
+ * You should have received a copy of the GNU General Public Licence along
+ * with this program; if not, write to the Free Software Foundation, Inc.,
+ * 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA
+ *
+ */
+
+#include "configure.h"
+#include "os_internal.h"
diff --git a/lib/os_internal.h b/lib/os_internal.h
index 1e536b9fa..4b00882b7 100644
--- a/lib/os_internal.h
+++ b/lib/os_internal.h
@@ -81,6 +81,8 @@
#include <inttypes.h>
#include <pthread.h>
+#include "../src/xine-utils/attributes.h"
+
#if defined(WIN32) || defined(__CYGWIN__)
# define XINE_PATH_SEPARATOR_STRING ";"
diff --git a/src/libreal/real_common.c b/src/libreal/real_common.c
index 22c33aa03..e2a4ee3d6 100644
--- a/src/libreal/real_common.c
+++ b/src/libreal/real_common.c
@@ -79,7 +79,7 @@ void _x_real_codecs_init(xine_t *const xine) {
struct stat s;
#define try_real_path(path) \
- if (!stat (path "/dvrc.so", &s)) \
+ if (!stat (path "/drvc.so", &s)) \
default_real_codecs_path = path;
#define try_real_subpath(path) \
try_real_path("/usr/" path) \
@@ -114,7 +114,7 @@ void _x_real_codecs_init(xine_t *const xine) {
"how to install the codecs."),
10, NULL, NULL);
- lprintf ("real codecs path : %s\n", real_codec_path);
+ lprintf ("real codecs path : %s\n", real_codecs_path);
}
void *_x_real_codec_open(xine_stream_t *const stream, const char *const path,
diff --git a/src/video_out/video_out_fb.c b/src/video_out/video_out_fb.c
index e2672e2a1..c6b8f597a 100644
--- a/src/video_out/video_out_fb.c
+++ b/src/video_out/video_out_fb.c
@@ -99,7 +99,6 @@ typedef struct fb_frame_s
yuv2rgb_t *yuv2rgb; /* yuv2rgb converter for this frame */
uint8_t *rgb_dst;
int yuv_stride;
- int stripe_height, stripe_inc;
int bytes_per_line;
@@ -182,7 +181,6 @@ static void fb_frame_proc_slice(vo_frame_t *vo_img, uint8_t **src)
else
frame->yuv2rgb->yuy22rgb_fun(frame->yuv2rgb,
frame->rgb_dst, src[0]);
- frame->rgb_dst += frame->stripe_inc;
}
static void fb_frame_field(vo_frame_t *vo_img, int which_field)
@@ -193,21 +191,18 @@ static void fb_frame_field(vo_frame_t *vo_img, int which_field)
{
case VO_TOP_FIELD:
frame->rgb_dst = frame->data;
- frame->stripe_inc = 2*frame->stripe_height *
- frame->bytes_per_line;
break;
case VO_BOTTOM_FIELD:
frame->rgb_dst = frame->data +
frame->bytes_per_line ;
- frame->stripe_inc = 2*frame->stripe_height *
- frame->bytes_per_line;
break;
case VO_BOTH_FIELDS:
frame->rgb_dst = frame->data;
break;
}
+ frame->yuv2rgb->next_slice (frame->yuv2rgb, NULL);
}
static void fb_frame_dispose(vo_frame_t *vo_img)
@@ -304,11 +299,11 @@ static void setup_colorspace_converter(fb_frame_t *frame, int flags)
frame->yuv2rgb->
configure(frame->yuv2rgb,
frame->sc.delivered_width,
- 16,
+ frame->sc.delivered_height,
2 * frame->vo_frame.pitches[0],
2 * frame->vo_frame.pitches[1],
frame->sc.output_width,
- frame->stripe_height,
+ frame->sc.output_height,
frame->bytes_per_line * 2);
frame->yuv_stride = frame->bytes_per_line * 2;
break;
@@ -317,42 +312,17 @@ static void setup_colorspace_converter(fb_frame_t *frame, int flags)
frame->yuv2rgb->
configure(frame->yuv2rgb,
frame->sc.delivered_width,
- 16,
+ frame->sc.delivered_height,
frame->vo_frame.pitches[0],
frame->vo_frame.pitches[1],
frame->sc.output_width,
- frame->stripe_height,
+ frame->sc.output_height,
frame->bytes_per_line);
frame->yuv_stride = frame->bytes_per_line;
break;
}
}
-static void reset_dest_pointers(fb_frame_t *frame, int flags)
-{
- switch(flags)
- {
- case VO_TOP_FIELD:
- frame->rgb_dst = frame->data;
- frame->stripe_inc = 2 * frame->stripe_height *
- frame->bytes_per_line;
- break;
-
- case VO_BOTTOM_FIELD:
- frame->rgb_dst = frame->data +
- frame->bytes_per_line ;
- frame->stripe_inc = 2 * frame->stripe_height *
- frame->bytes_per_line;
- break;
-
- case VO_BOTH_FIELDS:
- frame->rgb_dst = frame->data;
- frame->stripe_inc = frame->stripe_height *
- frame->bytes_per_line;
- break;
- }
-}
-
static void frame_reallocate(fb_driver_t *this, fb_frame_t *frame,
uint32_t width, uint32_t height, int format)
{
@@ -445,8 +415,6 @@ static void fb_update_frame_format(vo_driver_t *this_gen,
frame_reallocate(this, frame, width, height, format);
- frame->stripe_height = 16 * frame->sc.output_height /
- frame->sc.delivered_height;
if(this->use_zero_copy)
frame->bytes_per_line = this->fb_bytes_per_line;
else
@@ -456,7 +424,7 @@ static void fb_update_frame_format(vo_driver_t *this_gen,
setup_colorspace_converter(frame, flags);
}
- reset_dest_pointers(frame, flags);
+ fb_frame_field(frame_gen, flags);
}
static void fb_overlay_clut_yuv2rgb(fb_driver_t *this,
diff --git a/src/xine-utils/attributes.h b/src/xine-utils/attributes.h
index 280fd3685..000008753 100644
--- a/src/xine-utils/attributes.h
+++ b/src/xine-utils/attributes.h
@@ -33,7 +33,7 @@
#endif
#ifdef XINE_COMPILE
-# include "config.h"
+# include "configure.h"
#endif
/* Export protected only for libxine functions */