[Swfdec] 5 commits - autogen.sh configure.ac libswfdec-gtk/Makefile.am libswfdec/swfdec_codec_audio.c libswfdec/swfdec_codec_video.c libswfdec/swfdec_player.c test/trace

Benjamin Otte company at kemper.freedesktop.org
Sun Oct 28 16:17:06 PDT 2007


 autogen.sh                     |    2 +-
 configure.ac                   |   10 ++--------
 libswfdec-gtk/Makefile.am      |    4 ++--
 libswfdec/swfdec_codec_audio.c |    6 +++---
 libswfdec/swfdec_codec_video.c |    6 +++---
 libswfdec/swfdec_player.c      |    3 +++
 test/trace/Makefile.am         |    4 ++--
 7 files changed, 16 insertions(+), 19 deletions(-)

New commits:
commit 770b5f58b4899c9992978d134e0c23e68e8ce3cd
Author: Benjamin Otte <otte at gnome.org>
Date:   Mon Oct 29 00:03:58 2007 +0100

    require GThread for Swfdec.
    
    This is necessary to not get weird bugs when the gthread library is initialized
    late by calling gst_init(). In particular, this can cause GTimer to do weird
    things and cause players to abort due to max-runtime being exceeded.

diff --git a/configure.ac b/configure.ac
index 4f164b0..5708323 100644
--- a/configure.ac
+++ b/configure.ac
@@ -73,20 +73,14 @@ dnl Check for essential libraries first:
 dnl ====================================
 
 GLIB_VER=2.10
-PKG_CHECK_MODULES(GLIB, glib-2.0 >= $GLIB_VER gobject-2.0 >= $GLIB_VER,
+PKG_CHECK_MODULES(GLIB, glib-2.0 >= $GLIB_VER gobject-2.0 >= $GLIB_VER gthread-2.0 >= $GLIB_VER,
 		HAVE_GLIB=yes, HAVE_GLIB=no)
 if test "$HAVE_GLIB" = "no"; then
-  AC_MSG_ERROR([glib-2.0 >= $GLIB_VER and gobject-2.0 >= $GLIB_VER are required to build swfdec])
+  AC_MSG_ERROR([glib-2.0, gobject-2.0 and gthread-2.0 >= $GLIB_VER are required to build swfdec])
 fi
 AC_SUBST(GLIB_LIBS)
 AC_SUBST(GLIB_CFLAGS)
 AC_SUBST(GLIB_VER)
-dnl we detect gthread seperately for now, since we don't want to link libswfdec to it (yet)
-PKG_CHECK_MODULES(GTHREAD, gthread-2.0 >= $GLIB_VER,
-		HAVE_GLIB=yes, HAVE_GLIB=no)
-if test "$HAVE_GTHREAD" = "no"; then
-  AC_MSG_ERROR([gthread-2.0 >= $GLIB_VER is required to build swfdec])
-fi
 dnl FIXME: detect these executables correctly
 GLIB_GENMARSHAL=glib-genmarshal
 AC_SUBST(GLIB_GENMARSHAL)
diff --git a/libswfdec-gtk/Makefile.am b/libswfdec-gtk/Makefile.am
index b04b40f..5aa9af5 100644
--- a/libswfdec-gtk/Makefile.am
+++ b/libswfdec-gtk/Makefile.am
@@ -22,12 +22,12 @@ noinst_HEADERS = \
 
 libswfdec_gtk_ at SWFDEC_MAJORMINOR@_la_CFLAGS = \
 	-I$(top_srcdir) $(GLOBAL_CFLAGS) $(SWFDEC_CFLAGS) $(GTK_CFLAGS) \
-	$(AUDIO_CFLAGS) $(HTTP_CFLAGS) $(GTHREAD_CFLAGS) \
+	$(AUDIO_CFLAGS) $(HTTP_CFLAGS) \
 	-DG_LOG_DOMAIN=\"Swfdec-Gtk\"
 libswfdec_gtk_ at SWFDEC_MAJORMINOR@_la_LDFLAGS = \
 	-version-info $(SWFDEC_LIBVERSION) \
 	-export-symbols-regex '^(swfdec_.*)' \
-	$(GTK_LIBS) $(SWFDEC_LIBS) $(AUDIO_LIBS) $(HTTP_LIBS) $(GTHREAD_LIBS)
+	$(GTK_LIBS) $(SWFDEC_LIBS) $(AUDIO_LIBS) $(HTTP_LIBS)
 libswfdec_ at SWFDEC_MAJORMINOR@includedir = $(includedir)/swfdec- at SWFDEC_MAJORMINOR@/libswfdec-gtk
 libswfdec_ at SWFDEC_MAJORMINOR@include_HEADERS = \
 	swfdec-gtk.h \
diff --git a/libswfdec/swfdec_player.c b/libswfdec/swfdec_player.c
index babd2ad..284b7f7 100644
--- a/libswfdec/swfdec_player.c
+++ b/libswfdec/swfdec_player.c
@@ -2059,6 +2059,8 @@ swfdec_init (void)
 
   _inited = TRUE;
 
+  if (!g_thread_supported ())
+    g_thread_init (NULL);
   g_type_init ();
   oil_init ();
 
diff --git a/test/trace/Makefile.am b/test/trace/Makefile.am
index 0732b48..2086980 100644
--- a/test/trace/Makefile.am
+++ b/test/trace/Makefile.am
@@ -9,8 +9,8 @@ trace_SOURCES = \
 noinst_HEADERS = \
 	swfdec_interaction.h
 
-trace_CFLAGS = $(GLOBAL_CFLAGS) $(SWFDEC_CFLAGS) $(CAIRO_CFLAGS) $(GTHREAD_CFLAGS)
-trace_LDFLAGS = $(SWFDEC_LIBS) $(CAIRO_LIBS) $(GTHREAD_LIBS)
+trace_CFLAGS = $(GLOBAL_CFLAGS) $(SWFDEC_CFLAGS) $(CAIRO_CFLAGS)
+trace_LDFLAGS = $(SWFDEC_LIBS) $(CAIRO_LIBS)
 
 EXTRA_DIST = \
 	README \
commit e10dd74c30bd98b615d054ac2294f1cab20ee5c9
Author: Benjamin Otte <otte at gnome.org>
Date:   Mon Oct 29 00:02:48 2007 +0100

    remove accidentally committed empty file

diff --git a/test/trace/try-throw-in-finally-5.swf b/test/trace/try-throw-in-finally-5.swf
deleted file mode 100644
index e69de29..0000000
commit d8442817d7320f1bf790c9f3f1e2f9be69db412a
Author: Benjamin Otte <otte at gnome.org>
Date:   Sun Oct 28 23:58:49 2007 +0100

    stop the runtime timer at the beginning

diff --git a/libswfdec/swfdec_player.c b/libswfdec/swfdec_player.c
index 6791094..babd2ad 100644
--- a/libswfdec/swfdec_player.c
+++ b/libswfdec/swfdec_player.c
@@ -1580,6 +1580,7 @@ swfdec_player_init (SwfdecPlayer *player)
   player->bgcolor = SWFDEC_COLOR_COMBINE (0xFF, 0xFF, 0xFF, 0xFF);
 
   player->runtime = g_timer_new ();
+  g_timer_stop (player->runtime);
   player->invalidations = g_array_new (FALSE, FALSE, sizeof (SwfdecRectangle));
   player->mouse_visible = TRUE;
   player->mouse_cursor = SWFDEC_MOUSE_CURSOR_NORMAL;
commit 20d682af331fa8e8a6b12b1a22c189b4876c0028
Author: Benjamin Otte <otte at gnome.org>
Date:   Sun Oct 28 22:54:18 2007 +0100

    make GStreamer the default backend

diff --git a/libswfdec/swfdec_codec_audio.c b/libswfdec/swfdec_codec_audio.c
index 5e8b9aa..77ae76b 100644
--- a/libswfdec/swfdec_codec_audio.c
+++ b/libswfdec/swfdec_codec_audio.c
@@ -126,12 +126,12 @@ struct {
   SwfdecAudioDecoder *	(* func) (SwfdecAudioCodec, SwfdecAudioFormat);
 } audio_codecs[] = {
   { "builtin",	swfdec_audio_decoder_builtin_new },
-#ifdef HAVE_MAD
-  { "mad",	swfdec_audio_decoder_mad_new },
-#endif
 #ifdef HAVE_GST
   { "gst",	swfdec_audio_decoder_gst_new },
 #endif
+#ifdef HAVE_MAD
+  { "mad",	swfdec_audio_decoder_mad_new },
+#endif
 #ifdef HAVE_FFMPEG
   { "ffmpeg",	swfdec_audio_decoder_ffmpeg_new },
 #endif
diff --git a/libswfdec/swfdec_codec_video.c b/libswfdec/swfdec_codec_video.c
index 93bc6dd..bfde110 100644
--- a/libswfdec/swfdec_codec_video.c
+++ b/libswfdec/swfdec_codec_video.c
@@ -44,12 +44,12 @@ struct {
   SwfdecVideoDecoder *	(* func) (SwfdecVideoCodec);
 } video_codecs[] = {
   { "builtin",	swfdec_video_decoder_builtin_new },
-#ifdef HAVE_FFMPEG
-  { "ffmpeg",	swfdec_video_decoder_ffmpeg_new },
-#endif
 #ifdef HAVE_GST
   { "gst",	swfdec_video_decoder_gst_new },
 #endif
+#ifdef HAVE_FFMPEG
+  { "ffmpeg",	swfdec_video_decoder_ffmpeg_new },
+#endif
   { NULL, }
 };
 
commit 71d1c29004b2201cc9aa8758a7c0b34a50c785e8
Author: Benjamin Otte <otte at gnome.org>
Date:   Sun Oct 28 22:53:22 2007 +0100

    force-enable mad and ffmpeg

diff --git a/autogen.sh b/autogen.sh
index 2d1f22f..3006db5 100755
--- a/autogen.sh
+++ b/autogen.sh
@@ -1,3 +1,3 @@
 #!/bin/sh
 autoreconf -i -f &&
-./configure --enable-maintainer-mode --disable-static --enable-gtk-doc --enable-vivified $@
+./configure --enable-maintainer-mode --disable-static --enable-gtk-doc --enable-vivified --enable-ffmpeg --enable-mad $@


More information about the Swfdec mailing list