diff options
744 files changed, 12411 insertions, 16163 deletions
diff --git a/Makefile.in b/Makefile.in index aeb8b77e..ede5ad32 100644 --- a/Makefile.in +++ b/Makefile.in @@ -1,4 +1,4 @@ -# Makefile.in generated by automake 1.11.5 from Makefile.am. +# Makefile.in generated by automake 1.11.6 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, @@ -246,11 +246,10 @@ DIRECT3D_LIBS = @DIRECT3D_LIBS@ DIRECTDRAW_LIBS = @DIRECTDRAW_LIBS@ DIRECTFB_CFLAGS = @DIRECTFB_CFLAGS@ DIRECTFB_LIBS = @DIRECTFB_LIBS@ +DIRECTSHOW_LIBS = @DIRECTSHOW_LIBS@ DIRECTSOUND_LIBS = @DIRECTSOUND_LIBS@ DIRECTX_CFLAGS = @DIRECTX_CFLAGS@ DIRECTX_LDFLAGS = @DIRECTX_LDFLAGS@ -DIVXDEC_LIBS = @DIVXDEC_LIBS@ -DIVXENC_LIBS = @DIVXENC_LIBS@ DLLTOOL = @DLLTOOL@ DSYMUTIL = @DSYMUTIL@ DTS_LIBS = @DTS_LIBS@ @@ -285,7 +284,9 @@ GIO_LIBS = @GIO_LIBS@ GLIB_CFLAGS = @GLIB_CFLAGS@ GLIB_COMPILE_SCHEMAS = @GLIB_COMPILE_SCHEMAS@ GLIB_EXTRA_CFLAGS = @GLIB_EXTRA_CFLAGS@ +GLIB_GENMARSHAL = @GLIB_GENMARSHAL@ GLIB_LIBS = @GLIB_LIBS@ +GLIB_MKENUMS = @GLIB_MKENUMS@ GLIB_PREFIX = @GLIB_PREFIX@ GLIB_REQ = @GLIB_REQ@ GME_LIBS = @GME_LIBS@ @@ -361,13 +362,14 @@ HAVE_CXX = @HAVE_CXX@ HAVE_DIRECT3D = @HAVE_DIRECT3D@ HAVE_DIRECT3D9 = @HAVE_DIRECT3D9@ HAVE_DIRECTDRAW = @HAVE_DIRECTDRAW@ +HAVE_DIRECTSHOW = @HAVE_DIRECTSHOW@ HAVE_DIRECTSOUND = @HAVE_DIRECTSOUND@ HAVE_DTS = @HAVE_DTS@ HAVE_FAAC = @HAVE_FAAC@ HAVE_FAAD = @HAVE_FAAD@ HAVE_FLITE = @HAVE_FLITE@ HAVE_GSM = @HAVE_GSM@ -HAVE_JP2K = @HAVE_JP2K@ +HAVE_JASPER = @HAVE_JASPER@ HAVE_NAS = @HAVE_NAS@ HAVE_VPX = @HAVE_VPX@ HAVE_WILDMIDI = @HAVE_WILDMIDI@ @@ -381,7 +383,7 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ INTLLIBS = @INTLLIBS@ INTL_MACOSX_LIBS = @INTL_MACOSX_LIBS@ -JP2K_LIBS = @JP2K_LIBS@ +JASPER_LIBS = @JASPER_LIBS@ KATE_CFLAGS = @KATE_CFLAGS@ KATE_LIBS = @KATE_LIBS@ LD = @LD@ @@ -417,6 +419,8 @@ MODPLUG_CFLAGS = @MODPLUG_CFLAGS@ MODPLUG_LIBS = @MODPLUG_LIBS@ MPEG2ENC_CFLAGS = @MPEG2ENC_CFLAGS@ MPEG2ENC_LIBS = @MPEG2ENC_LIBS@ +MPG123_CFLAGS = @MPG123_CFLAGS@ +MPG123_LIBS = @MPG123_LIBS@ MPLEX_CFLAGS = @MPLEX_CFLAGS@ MPLEX_LDFLAGS = @MPLEX_LDFLAGS@ MPLEX_LIBS = @MPLEX_LIBS@ @@ -1022,7 +1026,7 @@ distcheck: dist *.zip*) \ unzip $(distdir).zip ;;\ esac - chmod -R a-w $(distdir); chmod a+w $(distdir) + chmod -R a-w $(distdir); chmod u+w $(distdir) mkdir $(distdir)/_build mkdir $(distdir)/_inst chmod a-w $(distdir) diff --git a/REQUIREMENTS b/REQUIREMENTS index 601cebb4..bf4dcf7e 100644 --- a/REQUIREMENTS +++ b/REQUIREMENTS @@ -32,8 +32,6 @@ ext/(library) dirac (Dirac video codec) http://www.bbc.co.uk/rd/projects/dirac/index.shtml -aRts (for the arts plugin wrapper, and the artsd sink) - http://www.arts-project.org libdvdread (for the dvdsrc) http://www.dtek.chalmers.se/groups/dvd/ (optional: libcss for encrypted DVDs) @@ -49,8 +47,6 @@ swfdec (for the swfdec (flash) plugin) http://www.schleef.org/swfdec/ dtsdec (for DTS audio decoding) http://www.videolan.org/libdca.html -divx (for divx decoding) - http://www.divx.com/divx/linux/ musepack (for musepack audio codec/format) (http://www.musepack.net/) nas (for the NAS sound server sink) @@ -1,4 +1,4 @@ -# generated automatically by aclocal 1.11.5 -*- Autoconf -*- +# generated automatically by aclocal 1.11.6 -*- Autoconf -*- # Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, # 2005, 2006, 2007, 2008, 2009, 2010, 2011 Free Software Foundation, @@ -38,7 +38,7 @@ AC_DEFUN([AM_AUTOMAKE_VERSION], [am__api_version='1.11' dnl Some users find AM_AUTOMAKE_VERSION and mistake it for a way to dnl require some minimum version. Point them to the right macro. -m4_if([$1], [1.11.5], [], +m4_if([$1], [1.11.6], [], [AC_FATAL([Do not call $0, use AM_INIT_AUTOMAKE([$1]).])])dnl ]) @@ -54,7 +54,7 @@ m4_define([_AM_AUTOCONF_VERSION], []) # Call AM_AUTOMAKE_VERSION and AM_AUTOMAKE_VERSION so they can be traced. # This function is AC_REQUIREd by AM_INIT_AUTOMAKE. AC_DEFUN([AM_SET_CURRENT_AUTOMAKE_VERSION], -[AM_AUTOMAKE_VERSION([1.11.5])dnl +[AM_AUTOMAKE_VERSION([1.11.6])dnl m4_ifndef([AC_AUTOCONF_VERSION], [m4_copy([m4_PACKAGE_VERSION], [AC_AUTOCONF_VERSION])])dnl _AM_AUTOCONF_VERSION(m4_defn([AC_AUTOCONF_VERSION]))]) diff --git a/common/Makefile.in b/common/Makefile.in index 56dcab9b..2b783f48 100644 --- a/common/Makefile.in +++ b/common/Makefile.in @@ -1,4 +1,4 @@ -# Makefile.in generated by automake 1.11.5 from Makefile.am. +# Makefile.in generated by automake 1.11.6 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, @@ -210,11 +210,10 @@ DIRECT3D_LIBS = @DIRECT3D_LIBS@ DIRECTDRAW_LIBS = @DIRECTDRAW_LIBS@ DIRECTFB_CFLAGS = @DIRECTFB_CFLAGS@ DIRECTFB_LIBS = @DIRECTFB_LIBS@ +DIRECTSHOW_LIBS = @DIRECTSHOW_LIBS@ DIRECTSOUND_LIBS = @DIRECTSOUND_LIBS@ DIRECTX_CFLAGS = @DIRECTX_CFLAGS@ DIRECTX_LDFLAGS = @DIRECTX_LDFLAGS@ -DIVXDEC_LIBS = @DIVXDEC_LIBS@ -DIVXENC_LIBS = @DIVXENC_LIBS@ DLLTOOL = @DLLTOOL@ DSYMUTIL = @DSYMUTIL@ DTS_LIBS = @DTS_LIBS@ @@ -249,7 +248,9 @@ GIO_LIBS = @GIO_LIBS@ GLIB_CFLAGS = @GLIB_CFLAGS@ GLIB_COMPILE_SCHEMAS = @GLIB_COMPILE_SCHEMAS@ GLIB_EXTRA_CFLAGS = @GLIB_EXTRA_CFLAGS@ +GLIB_GENMARSHAL = @GLIB_GENMARSHAL@ GLIB_LIBS = @GLIB_LIBS@ +GLIB_MKENUMS = @GLIB_MKENUMS@ GLIB_PREFIX = @GLIB_PREFIX@ GLIB_REQ = @GLIB_REQ@ GME_LIBS = @GME_LIBS@ @@ -325,13 +326,14 @@ HAVE_CXX = @HAVE_CXX@ HAVE_DIRECT3D = @HAVE_DIRECT3D@ HAVE_DIRECT3D9 = @HAVE_DIRECT3D9@ HAVE_DIRECTDRAW = @HAVE_DIRECTDRAW@ +HAVE_DIRECTSHOW = @HAVE_DIRECTSHOW@ HAVE_DIRECTSOUND = @HAVE_DIRECTSOUND@ HAVE_DTS = @HAVE_DTS@ HAVE_FAAC = @HAVE_FAAC@ HAVE_FAAD = @HAVE_FAAD@ HAVE_FLITE = @HAVE_FLITE@ HAVE_GSM = @HAVE_GSM@ -HAVE_JP2K = @HAVE_JP2K@ +HAVE_JASPER = @HAVE_JASPER@ HAVE_NAS = @HAVE_NAS@ HAVE_VPX = @HAVE_VPX@ HAVE_WILDMIDI = @HAVE_WILDMIDI@ @@ -345,7 +347,7 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ INTLLIBS = @INTLLIBS@ INTL_MACOSX_LIBS = @INTL_MACOSX_LIBS@ -JP2K_LIBS = @JP2K_LIBS@ +JASPER_LIBS = @JASPER_LIBS@ KATE_CFLAGS = @KATE_CFLAGS@ KATE_LIBS = @KATE_LIBS@ LD = @LD@ @@ -381,6 +383,8 @@ MODPLUG_CFLAGS = @MODPLUG_CFLAGS@ MODPLUG_LIBS = @MODPLUG_LIBS@ MPEG2ENC_CFLAGS = @MPEG2ENC_CFLAGS@ MPEG2ENC_LIBS = @MPEG2ENC_LIBS@ +MPG123_CFLAGS = @MPG123_CFLAGS@ +MPG123_LIBS = @MPG123_LIBS@ MPLEX_CFLAGS = @MPLEX_CFLAGS@ MPLEX_LDFLAGS = @MPLEX_LDFLAGS@ MPLEX_LIBS = @MPLEX_LIBS@ diff --git a/common/gst-glib-gen.mak b/common/gst-glib-gen.mak index cc82bbd2..0b0a5e91 100644 --- a/common/gst-glib-gen.mak +++ b/common/gst-glib-gen.mak @@ -10,16 +10,16 @@ enum_headers=$(foreach h,$(glib_enum_headers),\n\#include \"$(h)\") # these are all the rules generating the relevant files $(glib_gen_basename)-marshal.h: $(glib_gen_basename)-marshal.list - $(AM_V_GEN)glib-genmarshal --header --prefix=$(glib_gen_prefix)_marshal $^ > $(glib_gen_basename)-marshal.h.tmp && \ + $(AM_V_GEN)$(GLIB_GENMARSHAL) --header --prefix=$(glib_gen_prefix)_marshal $^ > $(glib_gen_basename)-marshal.h.tmp && \ mv $(glib_gen_basename)-marshal.h.tmp $(glib_gen_basename)-marshal.h $(glib_gen_basename)-marshal.c: $(glib_gen_basename)-marshal.list $(AM_V_GEN)echo "#include \"$(glib_gen_basename)-marshal.h\"" >> $(glib_gen_basename)-marshal.c.tmp && \ - glib-genmarshal --body --prefix=$(glib_gen_prefix)_marshal $^ >> $(glib_gen_basename)-marshal.c.tmp && \ + $(GLIB_GENMARSHAL) --body --prefix=$(glib_gen_prefix)_marshal $^ >> $(glib_gen_basename)-marshal.c.tmp && \ mv $(glib_gen_basename)-marshal.c.tmp $(glib_gen_basename)-marshal.c $(glib_gen_basename)-enumtypes.h: $(glib_enum_headers) - $(AM_V_GEN)glib-mkenums \ + $(AM_V_GEN)$(GLIB_MKENUMS) \ --fhead "#ifndef __$(glib_enum_define)_ENUM_TYPES_H__\n#define __$(glib_enum_define)_ENUM_TYPES_H__\n\n#include <glib-object.h>\n\nG_BEGIN_DECLS\n" \ --fprod "\n/* enumerations from \"@filename@\" */\n" \ --vhead "GType @enum_name@_get_type (void);\n#define GST_TYPE_@ENUMSHORT@ (@enum_name@_get_type())\n" \ @@ -28,7 +28,7 @@ $(glib_gen_basename)-enumtypes.h: $(glib_enum_headers) $(glib_gen_basename)-enumtypes.c: $(glib_enum_headers) @if test "x$(glib_enum_headers)" = "x"; then echo "ERROR: glib_enum_headers is empty, please fix Makefile"; exit 1; fi - $(AM_V_GEN)glib-mkenums \ + $(AM_V_GEN)$(GLIB_MKENUMS) \ --fhead "#include \"$(glib_gen_basename)-enumtypes.h\"\n$(enum_headers)" \ --fprod "\n/* enumerations from \"@filename@\" */" \ --vhead "GType\n@enum_name@_get_type (void)\n{\n static volatile gsize g_define_type_id__volatile = 0;\n if (g_once_init_enter (&g_define_type_id__volatile)) {\n static const G@Type@Value values[] = {" \ diff --git a/common/m4/Makefile.in b/common/m4/Makefile.in index d6a81bd0..3abec0eb 100644 --- a/common/m4/Makefile.in +++ b/common/m4/Makefile.in @@ -1,4 +1,4 @@ -# Makefile.in generated by automake 1.11.5 from Makefile.am. +# Makefile.in generated by automake 1.11.6 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, @@ -170,11 +170,10 @@ DIRECT3D_LIBS = @DIRECT3D_LIBS@ DIRECTDRAW_LIBS = @DIRECTDRAW_LIBS@ DIRECTFB_CFLAGS = @DIRECTFB_CFLAGS@ DIRECTFB_LIBS = @DIRECTFB_LIBS@ +DIRECTSHOW_LIBS = @DIRECTSHOW_LIBS@ DIRECTSOUND_LIBS = @DIRECTSOUND_LIBS@ DIRECTX_CFLAGS = @DIRECTX_CFLAGS@ DIRECTX_LDFLAGS = @DIRECTX_LDFLAGS@ -DIVXDEC_LIBS = @DIVXDEC_LIBS@ -DIVXENC_LIBS = @DIVXENC_LIBS@ DLLTOOL = @DLLTOOL@ DSYMUTIL = @DSYMUTIL@ DTS_LIBS = @DTS_LIBS@ @@ -209,7 +208,9 @@ GIO_LIBS = @GIO_LIBS@ GLIB_CFLAGS = @GLIB_CFLAGS@ GLIB_COMPILE_SCHEMAS = @GLIB_COMPILE_SCHEMAS@ GLIB_EXTRA_CFLAGS = @GLIB_EXTRA_CFLAGS@ +GLIB_GENMARSHAL = @GLIB_GENMARSHAL@ GLIB_LIBS = @GLIB_LIBS@ +GLIB_MKENUMS = @GLIB_MKENUMS@ GLIB_PREFIX = @GLIB_PREFIX@ GLIB_REQ = @GLIB_REQ@ GME_LIBS = @GME_LIBS@ @@ -285,13 +286,14 @@ HAVE_CXX = @HAVE_CXX@ HAVE_DIRECT3D = @HAVE_DIRECT3D@ HAVE_DIRECT3D9 = @HAVE_DIRECT3D9@ HAVE_DIRECTDRAW = @HAVE_DIRECTDRAW@ +HAVE_DIRECTSHOW = @HAVE_DIRECTSHOW@ HAVE_DIRECTSOUND = @HAVE_DIRECTSOUND@ HAVE_DTS = @HAVE_DTS@ HAVE_FAAC = @HAVE_FAAC@ HAVE_FAAD = @HAVE_FAAD@ HAVE_FLITE = @HAVE_FLITE@ HAVE_GSM = @HAVE_GSM@ -HAVE_JP2K = @HAVE_JP2K@ +HAVE_JASPER = @HAVE_JASPER@ HAVE_NAS = @HAVE_NAS@ HAVE_VPX = @HAVE_VPX@ HAVE_WILDMIDI = @HAVE_WILDMIDI@ @@ -305,7 +307,7 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ INTLLIBS = @INTLLIBS@ INTL_MACOSX_LIBS = @INTL_MACOSX_LIBS@ -JP2K_LIBS = @JP2K_LIBS@ +JASPER_LIBS = @JASPER_LIBS@ KATE_CFLAGS = @KATE_CFLAGS@ KATE_LIBS = @KATE_LIBS@ LD = @LD@ @@ -341,6 +343,8 @@ MODPLUG_CFLAGS = @MODPLUG_CFLAGS@ MODPLUG_LIBS = @MODPLUG_LIBS@ MPEG2ENC_CFLAGS = @MPEG2ENC_CFLAGS@ MPEG2ENC_LIBS = @MPEG2ENC_LIBS@ +MPG123_CFLAGS = @MPG123_CFLAGS@ +MPG123_LIBS = @MPG123_LIBS@ MPLEX_CFLAGS = @MPLEX_CFLAGS@ MPLEX_LDFLAGS = @MPLEX_LDFLAGS@ MPLEX_LIBS = @MPLEX_LIBS@ diff --git a/common/m4/gst-arch.m4 b/common/m4/gst-arch.m4 index ff0954ac..077a20b6 100644 --- a/common/m4/gst-arch.m4 +++ b/common/m4/gst-arch.m4 @@ -5,9 +5,6 @@ dnl defines HOST_CPU AC_DEFUN([AG_GST_ARCH], [ - AC_REQUIRE([AC_CANONICAL_HOST]) dnl we use host_ variables - AC_REQUIRE([AC_CANONICAL_TARGET]) dnl we use target_ variables - dnl Determine CPU case "x${target_cpu}" in xi?86 | xk? | xi?86_64) diff --git a/common/m4/gst-glib2.m4 b/common/m4/gst-glib2.m4 index b141beeb..3f3d5656 100644 --- a/common/m4/gst-glib2.m4 +++ b/common/m4/gst-glib2.m4 @@ -68,6 +68,44 @@ AC_DEFUN([AG_GST_GLIB_CHECK], GLIB_EXTRA_CFLAGS="$GLIB_EXTRA_CFLAGS -DG_DISABLE_ASSERT" fi + dnl Find location of glib utils. People may want to or have to override these, + dnl e.g. in a cross-compile situation where PATH is a bit messed up. We need + dnl for these tools to work on the host, so can't just use the one from the + dnl GLib installation that pkg-config picks up, as that might be for a + dnl different target architecture. + dnl + dnl glib-genmarshal: + AC_MSG_CHECKING(for glib-genmarshal) + if test "x$GLIB_GENMARSHAL" != "x"; then + AC_MSG_RESULT([$GLIB_GENMARSHAL (from environment)]) + else + GLIB_GENMARSHAL=`$PKG_CONFIG --variable=glib_genmarshal glib-2.0` + if $GLIB_GENMARSHAL --version 2>/dev/null >/dev/null; then + AC_MSG_RESULT([$GLIB_GENMARSHAL (from pkg-config path)]) + else + AC_PATH_PROG(GLIB_GENMARSHAL, [glib-genmarshal], [glib-genmarshal]) + AC_MSG_RESULT([$GLIB_GENMARSHAL]) + fi + fi + if ! $GLIB_GENMARSHAL --version 2>/dev/null >/dev/null; then + AC_MSG_WARN([$GLIB_GENMARSHAL does not seem to work!]) + fi + AC_SUBST(GLIB_GENMARSHAL) + + dnl glib-mkenums: + AC_MSG_CHECKING(for glib-mkenums) + if test "x$GLIB_MKENUMS" != "x"; then + AC_MSG_RESULT([$GLIB_MKENUMS (from environment)]) + else + dnl glib-mkenums is written in perl so should always work really + GLIB_MKENUMS=`$PKG_CONFIG --variable=glib_mkenums glib-2.0` + AC_MSG_RESULT([$GLIB_MKENUMS]) + fi + if ! $GLIB_MKENUMS --version 2>/dev/null >/dev/null; then + AC_MSG_WARN([$GLIB_MKENUMS does not seem to work!]) + fi + AC_SUBST(GLIB_MKENUMS) + dnl for the poor souls who for example have glib in /usr/local AS_SCRUB_INCLUDE(GLIB_CFLAGS) diff --git a/common/m4/gst-parser.m4 b/common/m4/gst-parser.m4 index 2cae45d0..710da897 100644 --- a/common/m4/gst-parser.m4 +++ b/common/m4/gst-parser.m4 @@ -34,7 +34,7 @@ AC_DEFUN([AG_GST_FLEX_CHECK], dnl we need version >= 2.5.31 for the reentrancy support dnl in the parser. flex_min_version=2.5.31 - flex_version=`$FLEX_PATH --version | head -n 1 | sed 's/^.* //' | sed 's/[[a-zA-Z]]*$//' | cut -d' ' -f1` + flex_version=`$FLEX_PATH --version | head -n 1 | awk '{print $2}'` AC_MSG_CHECKING([flex version $flex_version >= $flex_min_version]) if perl -w <<EOF (\$min_version_major, \$min_version_minor, \$min_version_micro ) = "$flex_min_version" =~ /(\d+)\.(\d+)\.(\d+)/; diff --git a/common/m4/gst.m4 b/common/m4/gst.m4 index ddfde517..d4c53cba 100644 --- a/common/m4/gst.m4 +++ b/common/m4/gst.m4 @@ -3,10 +3,15 @@ dnl sets up use of GStreamer configure.ac macros dnl all GStreamer autoconf macros are prefixed dnl with AG_GST_ for public macros dnl with _AG_GST_ for private macros +dnl +dnl We call AC_CANONICAL_TARGET and AC_CANONICAL_HOST so that +dnl it is valid before AC_ARG_PROGRAM is called AC_DEFUN([AG_GST_INIT], [ m4_pattern_forbid(^_?AG_GST_) + AC_REQUIRE([AC_CANONICAL_HOST]) dnl we use host_ variables + AC_REQUIRE([AC_CANONICAL_TARGET]) dnl we use target_ variables ]) dnl AG_GST_PKG_CONFIG_PATH @@ -1,7 +1,7 @@ #! /bin/sh # Wrapper for compilers which do not understand '-c -o'. -scriptversion=2012-01-04.17; # UTC +scriptversion=2012-03-05.13; # UTC # Copyright (C) 1999, 2000, 2003, 2004, 2005, 2009, 2010, 2012 Free # Software Foundation, Inc. @@ -79,6 +79,48 @@ func_file_conv () esac } +# func_cl_dashL linkdir +# Make cl look for libraries in LINKDIR +func_cl_dashL () +{ + func_file_conv "$1" + if test -z "$lib_path"; then + lib_path=$file + else + lib_path="$lib_path;$file" + fi + linker_opts="$linker_opts -LIBPATH:$file" +} + +# func_cl_dashl library +# Do a library search-path lookup for cl +func_cl_dashl () +{ + lib=$1 + found=no + save_IFS=$IFS + IFS=';' + for dir in $lib_path $LIB + do + IFS=$save_IFS + if $shared && test -f "$dir/$lib.dll.lib"; then + found=yes + lib=$dir/$lib.dll.lib + break + fi + if test -f "$dir/$lib.lib"; then + found=yes + lib=$dir/$lib.lib + break + fi + done + IFS=$save_IFS + + if test "$found" != yes; then + lib=$lib.lib + fi +} + # func_cl_wrapper cl arg... # Adjust compile command to suit cl func_cl_wrapper () @@ -109,43 +151,34 @@ func_cl_wrapper () ;; esac ;; + -I) + eat=1 + func_file_conv "$2" mingw + set x "$@" -I"$file" + shift + ;; -I*) func_file_conv "${1#-I}" mingw set x "$@" -I"$file" shift ;; + -l) + eat=1 + func_cl_dashl "$2" + set x "$@" "$lib" + shift + ;; -l*) - lib=${1#-l} - found=no - save_IFS=$IFS - IFS=';' - for dir in $lib_path $LIB - do - IFS=$save_IFS - if $shared && test -f "$dir/$lib.dll.lib"; then - found=yes - set x "$@" "$dir/$lib.dll.lib" - break - fi - if test -f "$dir/$lib.lib"; then - found=yes - set x "$@" "$dir/$lib.lib" - break - fi - done - IFS=$save_IFS - - test "$found" != yes && set x "$@" "$lib.lib" + func_cl_dashl "${1#-l}" + set x "$@" "$lib" shift ;; + -L) + eat=1 + func_cl_dashL "$2" + ;; -L*) - func_file_conv "${1#-L}" - if test -z "$lib_path"; then - lib_path=$file - else - lib_path="$lib_path;$file" - fi - linker_opts="$linker_opts -LIBPATH:$file" + func_cl_dashL "${1#-L}" ;; -static) shared=false diff --git a/config.h.in b/config.h.in index 16fab6a1..ee5fd81e 100644 --- a/config.h.in +++ b/config.h.in @@ -193,12 +193,12 @@ /* Define to enable directfb (used by dfbvideosink ). */ #undef HAVE_DIRECTFB +/* Define to enable DirectShow plug-in (used by winks). */ +#undef HAVE_DIRECTSHOW + /* Define to enable DirectSound (used by directsoundsrc). */ #undef HAVE_DIRECTSOUND -/* Define to enable divx plugins (used by divx). */ -#undef HAVE_DIVX - /* Define to 1 if you have the <dlfcn.h> header file. */ #undef HAVE_DLFCN_H @@ -268,8 +268,8 @@ /* Define if building for Apple iOS */ #undef HAVE_IOS -/* Define to enable jp2k (used by jp2kdec jp2kenc). */ -#undef HAVE_JP2K +/* Define to enable jasper (used by jasperdec jasperenc). */ +#undef HAVE_JASPER /* Define to enable Kate (used by kate). */ #undef HAVE_KATE @@ -277,12 +277,6 @@ /* Define to enable ladspa (used by ladspa). */ #undef HAVE_LADSPA -/* Define to 1 if you have the `divxdecore' library (-ldivxdecore). */ -#undef HAVE_LIBDIVXDECORE - -/* Define to 1 if you have the `divxencore' library (-ldivxencore). */ -#undef HAVE_LIBDIVXENCORE - /* Define if gme 0.5.6 or newer is available */ #undef HAVE_LIBGME_ACCURACY @@ -319,6 +313,9 @@ /* Define to enable mpeg2enc (used by mpeg2enc). */ #undef HAVE_MPEG2ENC +/* Define to enable mpg123 audio decoder (used by mpg123). */ +#undef HAVE_MPG123 + /* Define to enable mplex (used by mplex). */ #undef HAVE_MPLEX @@ -4,7 +4,7 @@ # 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, # 2011, 2012 Free Software Foundation, Inc. -timestamp='2012-02-10' +timestamp='2012-04-18' # This file is (in principle) common to ALL GNU software. # The presence of a machine in this file suggests that SOME GNU software @@ -225,6 +225,12 @@ case $os in -isc*) basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` ;; + -lynx*178) + os=-lynxos178 + ;; + -lynx*5) + os=-lynxos5 + ;; -lynx*) os=-lynxos ;; @@ -1537,6 +1543,9 @@ case $basic_machine in c4x-* | tic4x-*) os=-coff ;; + hexagon-*) + os=-elf + ;; tic54x-*) os=-coff ;; @@ -1,6 +1,6 @@ #! /bin/sh # Guess values for system-dependent variables and create Makefiles. -# Generated by GNU Autoconf 2.69 for GStreamer Bad Plug-ins 0.11.92. +# Generated by GNU Autoconf 2.69 for GStreamer Bad Plug-ins 0.11.93. # # Report bugs to <http://bugzilla.gnome.org/enter_bug.cgi?product=GStreamer>. # @@ -591,8 +591,8 @@ MAKEFLAGS= # Identity of this package. PACKAGE_NAME='GStreamer Bad Plug-ins' PACKAGE_TARNAME='gst-plugins-bad' -PACKAGE_VERSION='0.11.92' -PACKAGE_STRING='GStreamer Bad Plug-ins 0.11.92' +PACKAGE_VERSION='0.11.93' +PACKAGE_STRING='GStreamer Bad Plug-ins 0.11.93' PACKAGE_BUGREPORT='http://bugzilla.gnome.org/enter_bug.cgi?product=GStreamer' PACKAGE_URL='' @@ -792,6 +792,10 @@ USE_MPLEX_TRUE MPLEX_LDFLAGS MPLEX_LIBS MPLEX_CFLAGS +USE_MPG123_FALSE +USE_MPG123_TRUE +MPG123_LIBS +MPG123_CFLAGS USE_MPEG2ENC_FALSE USE_MPEG2ENC_TRUE MPEG2ENC_LIBS @@ -828,10 +832,10 @@ TIGER_LIBS TIGER_CFLAGS KATE_LIBS KATE_CFLAGS -USE_JP2K_FALSE -USE_JP2K_TRUE -JP2K_LIBS -HAVE_JP2K +USE_JASPER_FALSE +USE_JASPER_TRUE +JASPER_LIBS +HAVE_JASPER USE_GSM_FALSE USE_GSM_TRUE GSM_LIBS @@ -856,10 +860,6 @@ USE_RESINDVD_FALSE USE_RESINDVD_TRUE DVDNAV_LIBS DVDNAV_CFLAGS -USE_DIVX_FALSE -USE_DIVX_TRUE -DIVXDEC_LIBS -DIVXENC_LIBS USE_DTS_FALSE USE_DTS_TRUE DTS_LIBS @@ -946,6 +946,10 @@ HAVE_IOS_FALSE HAVE_IOS_TRUE USE_APPLE_MEDIA_FALSE USE_APPLE_MEDIA_TRUE +USE_DIRECTSHOW_FALSE +USE_DIRECTSHOW_TRUE +HAVE_DIRECTSHOW +DIRECTSHOW_LIBS HAVE_DIRECT3D9 DIRECT3D9_LIBS USE_DIRECT3D9_FALSE @@ -1034,8 +1038,6 @@ USE_PLUGIN_LIVEADDER_FALSE USE_PLUGIN_LIVEADDER_TRUE USE_PLUGIN_LIBRFB_FALSE USE_PLUGIN_LIBRFB_TRUE -USE_PLUGIN_LEGACYRESAMPLE_FALSE -USE_PLUGIN_LEGACYRESAMPLE_TRUE USE_PLUGIN_JPEGFORMAT_FALSE USE_PLUGIN_JPEGFORMAT_TRUE USE_PLUGIN_JP2KDECIMATOR_FALSE @@ -1171,6 +1173,8 @@ GIO_LDFLAGS GIO_LIBS GIO_CFLAGS GLIB_EXTRA_CFLAGS +GLIB_MKENUMS +GLIB_GENMARSHAL GLIB_LIBS GLIB_CFLAGS GLIB_REQ @@ -1250,10 +1254,6 @@ HAVE_CPU_PPC_FALSE HAVE_CPU_PPC_TRUE HAVE_CPU_I386_FALSE HAVE_CPU_I386_TRUE -target_os -target_vendor -target_cpu -target BUILD_EXPERIMENTAL_FALSE BUILD_EXPERIMENTAL_TRUE USE_EXPERIMENTAL_FALSE @@ -1350,14 +1350,6 @@ AM_BACKSLASH AM_DEFAULT_VERBOSITY AM_DEFAULT_V AM_V -host_os -host_vendor -host_cpu -host -build_os -build_vendor -build_cpu -build MAINT MAINTAINER_MODE_FALSE MAINTAINER_MODE_TRUE @@ -1389,6 +1381,18 @@ am__isrc INSTALL_DATA INSTALL_SCRIPT INSTALL_PROGRAM +target_os +target_vendor +target_cpu +target +host_os +host_vendor +host_cpu +host +build_os +build_vendor +build_cpu +build target_alias host_alias build_alias @@ -1505,7 +1509,6 @@ enable_interlace enable_ivfparse enable_jp2kdecimator enable_jpegformat -enable_legacyresample enable_librfb enable_liveadder enable_mpegdemux @@ -1544,6 +1547,7 @@ enable_directsound enable_direct3d enable_directdraw enable_direct3d9 +enable_directshow enable_apple_media enable_osx_video enable_avc @@ -1566,14 +1570,13 @@ enable_directfb enable_wayland enable_dirac enable_dts -enable_divx enable_resindvd enable_faac enable_faad enable_fbdev enable_flite enable_gsm -enable_jp2k +enable_jasper enable_kate enable_ladspa enable_lv2 @@ -1582,6 +1585,7 @@ enable_linsys enable_modplug enable_mimic enable_mpeg2enc +enable_mpg123 enable_mplex enable_musepack enable_musicbrainz @@ -1724,6 +1728,8 @@ MJPEG_CFLAGS MJPEG_LIBS MPEG2ENC_CFLAGS MPEG2ENC_LIBS +MPG123_CFLAGS +MPG123_LIBS MPLEX_CFLAGS MPLEX_LIBS MUSICBRAINZ_CFLAGS @@ -2309,7 +2315,7 @@ if test "$ac_init_help" = "long"; then # Omit some internal or obsolete options to make the list less imposing. # This message is too long to be a string in the A/UX 3.1 sh. cat <<_ACEOF -\`configure' configures GStreamer Bad Plug-ins 0.11.92 to adapt to many kinds of systems. +\`configure' configures GStreamer Bad Plug-ins 0.11.93 to adapt to many kinds of systems. Usage: $0 [OPTION]... [VAR=VALUE]... @@ -2384,7 +2390,7 @@ fi if test -n "$ac_init_help"; then case $ac_init_help in - short | recursive ) echo "Configuration of GStreamer Bad Plug-ins 0.11.92:";; + short | recursive ) echo "Configuration of GStreamer Bad Plug-ins 0.11.93:";; esac cat <<\_ACEOF @@ -2457,8 +2463,6 @@ Optional Features: --disable-ivfparse disable dependency-less ivfparse plugin --disable-jp2kdecimator disable dependency-less jp2kdecimator plugin --disable-jpegformat disable dependency-less jpegformat plugin - --disable-legacyresample - disable dependency-less legacyresample plugin --disable-librfb disable dependency-less librfb plugin --disable-liveadder disable dependency-less liveadder plugin --disable-mpegdemux disable dependency-less mpegdemux plugin @@ -2497,6 +2501,7 @@ Optional Features: --disable-direct3d disable Direct3D plug-in: direct3dsink --disable-directdraw disable DirectDraw plug-in: directdrawsink --disable-direct3d9 disable Direct3D9: winscreencap + --disable-directshow disable DirectShow plug-in: winks --disable-apple_media disable Apple video: applemedia --disable-osx_video disable OSX video: osxvideosrc --disable-avc disable AVC Video Services: avcsrc @@ -2519,14 +2524,13 @@ Optional Features: --disable-wayland disable wayland sink: wayland --disable-dirac disable dirac: dirac --disable-dts disable dts library: dtsdec - --disable-divx disable divx plugins: divx --disable-resindvd disable resindvd plugin: resindvd --disable-faac disable AAC encoder plug-in: faac --disable-faad disable AAC decoder plug-in: faad --disable-fbdev disable linux framebuffer: fbdevsink --disable-flite disable Flite plugin: flite --disable-gsm disable GSM library: gsmenc gsmdec - --disable-jp2k disable jp2k: jp2kdec jp2kenc + --disable-jasper disable jasper: jasperdec jasperenc --disable-kate disable Kate: kate --disable-ladspa disable ladspa: ladspa --disable-lv2 disable lv2: lv2 @@ -2535,6 +2539,7 @@ Optional Features: --disable-modplug disable modplug: modplug --disable-mimic disable libmimic library: mimic --disable-mpeg2enc disable mpeg2enc: mpeg2enc + --disable-mpg123 disable mpg123 audio decoder: mpg123 --disable-mplex disable mplex: mplex --disable-musepack disable musepackdec: musepack --disable-musicbrainz disable musicbrainz tag generation: musicbrainz @@ -2770,6 +2775,9 @@ Some influential environment variables: C compiler flags for MPEG2ENC, overriding pkg-config MPEG2ENC_LIBS linker flags for MPEG2ENC, overriding pkg-config + MPG123_CFLAGS + C compiler flags for MPG123, overriding pkg-config + MPG123_LIBS linker flags for MPG123, overriding pkg-config MPLEX_CFLAGS C compiler flags for MPLEX, overriding pkg-config MPLEX_LIBS linker flags for MPLEX, overriding pkg-config @@ -2905,7 +2913,7 @@ fi test -n "$ac_init_help" && exit $ac_status if $ac_init_version; then cat <<\_ACEOF -GStreamer Bad Plug-ins configure 0.11.92 +GStreamer Bad Plug-ins configure 0.11.93 generated by GNU Autoconf 2.69 Copyright (C) 2012 Free Software Foundation, Inc. @@ -3878,7 +3886,7 @@ cat >config.log <<_ACEOF This file contains any messages produced by compilers while running configure, to aid debugging if configure makes a mistake. -It was created by GStreamer Bad Plug-ins $as_me 0.11.92, which was +It was created by GStreamer Bad Plug-ins $as_me 0.11.93, which was generated by GNU Autoconf 2.69. Invocation command line was $ $0 $@ @@ -4231,12 +4239,6 @@ ac_compiler_gnu=$ac_cv_c_compiler_gnu - - - - -am__api_version='1.11' - ac_aux_dir= for ac_dir in "$srcdir" "$srcdir/.." "$srcdir/../.."; do if test -f "$ac_dir/install-sh"; then @@ -4266,6 +4268,122 @@ ac_config_sub="$SHELL $ac_aux_dir/config.sub" # Please don't use this var. ac_configure="$SHELL $ac_aux_dir/configure" # Please don't use this var. +# Make sure we can run config.sub. +$SHELL "$ac_aux_dir/config.sub" sun4 >/dev/null 2>&1 || + as_fn_error $? "cannot run $SHELL $ac_aux_dir/config.sub" "$LINENO" 5 + +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking build system type" >&5 +$as_echo_n "checking build system type... " >&6; } +if ${ac_cv_build+:} false; then : + $as_echo_n "(cached) " >&6 +else + ac_build_alias=$build_alias +test "x$ac_build_alias" = x && + ac_build_alias=`$SHELL "$ac_aux_dir/config.guess"` +test "x$ac_build_alias" = x && + as_fn_error $? "cannot guess build type; you must specify one" "$LINENO" 5 +ac_cv_build=`$SHELL "$ac_aux_dir/config.sub" $ac_build_alias` || + as_fn_error $? "$SHELL $ac_aux_dir/config.sub $ac_build_alias failed" "$LINENO" 5 + +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_build" >&5 +$as_echo "$ac_cv_build" >&6; } +case $ac_cv_build in +*-*-*) ;; +*) as_fn_error $? "invalid value of canonical build" "$LINENO" 5;; +esac +build=$ac_cv_build +ac_save_IFS=$IFS; IFS='-' +set x $ac_cv_build +shift +build_cpu=$1 +build_vendor=$2 +shift; shift +# Remember, the first character of IFS is used to create $*, +# except with old shells: +build_os=$* +IFS=$ac_save_IFS +case $build_os in *\ *) build_os=`echo "$build_os" | sed 's/ /-/g'`;; esac + + +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking host system type" >&5 +$as_echo_n "checking host system type... " >&6; } +if ${ac_cv_host+:} false; then : + $as_echo_n "(cached) " >&6 +else + if test "x$host_alias" = x; then + ac_cv_host=$ac_cv_build +else + ac_cv_host=`$SHELL "$ac_aux_dir/config.sub" $host_alias` || + as_fn_error $? "$SHELL $ac_aux_dir/config.sub $host_alias failed" "$LINENO" 5 +fi + +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_host" >&5 +$as_echo "$ac_cv_host" >&6; } +case $ac_cv_host in +*-*-*) ;; +*) as_fn_error $? "invalid value of canonical host" "$LINENO" 5;; +esac +host=$ac_cv_host +ac_save_IFS=$IFS; IFS='-' +set x $ac_cv_host +shift +host_cpu=$1 +host_vendor=$2 +shift; shift +# Remember, the first character of IFS is used to create $*, +# except with old shells: +host_os=$* +IFS=$ac_save_IFS +case $host_os in *\ *) host_os=`echo "$host_os" | sed 's/ /-/g'`;; esac + + +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking target system type" >&5 +$as_echo_n "checking target system type... " >&6; } +if ${ac_cv_target+:} false; then : + $as_echo_n "(cached) " >&6 +else + if test "x$target_alias" = x; then + ac_cv_target=$ac_cv_host +else + ac_cv_target=`$SHELL "$ac_aux_dir/config.sub" $target_alias` || + as_fn_error $? "$SHELL $ac_aux_dir/config.sub $target_alias failed" "$LINENO" 5 +fi + +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_target" >&5 +$as_echo "$ac_cv_target" >&6; } +case $ac_cv_target in +*-*-*) ;; +*) as_fn_error $? "invalid value of canonical target" "$LINENO" 5;; +esac +target=$ac_cv_target +ac_save_IFS=$IFS; IFS='-' +set x $ac_cv_target +shift +target_cpu=$1 +target_vendor=$2 +shift; shift +# Remember, the first character of IFS is used to create $*, +# except with old shells: +target_os=$* +IFS=$ac_save_IFS +case $target_os in *\ *) target_os=`echo "$target_os" | sed 's/ /-/g'`;; esac + + +# The aliases save the names the user supplied, while $host etc. +# will get canonicalized. +test -n "$target_alias" && + test "$program_prefix$program_suffix$program_transform_name" = \ + NONENONEs,x,x, && + program_prefix=${target_alias}- + + + + +am__api_version='1.11' + # Find a good install program. We prefer a C program (faster), # so one script is as good as another. But avoid the broken or # incompatible versions: @@ -4702,7 +4820,7 @@ fi # Define the identity of the package. PACKAGE='gst-plugins-bad' - VERSION='0.11.92' + VERSION='0.11.93' cat >>confdefs.h <<_ACEOF @@ -4825,9 +4943,9 @@ $as_echo "$am_cv_prog_tar_ustar" >&6; } - PACKAGE_VERSION_MAJOR=$(echo 0.11.92 | cut -d'.' -f1) - PACKAGE_VERSION_MINOR=$(echo 0.11.92 | cut -d'.' -f2) - PACKAGE_VERSION_MICRO=$(echo 0.11.92 | cut -d'.' -f3) + PACKAGE_VERSION_MAJOR=$(echo 0.11.93 | cut -d'.' -f1) + PACKAGE_VERSION_MINOR=$(echo 0.11.93 | cut -d'.' -f2) + PACKAGE_VERSION_MICRO=$(echo 0.11.93 | cut -d'.' -f3) @@ -4838,7 +4956,7 @@ $as_echo "$am_cv_prog_tar_ustar" >&6; } { $as_echo "$as_me:${as_lineno-$LINENO}: checking nano version" >&5 $as_echo_n "checking nano version... " >&6; } - NANO=$(echo 0.11.92 | cut -d'.' -f4) + NANO=$(echo 0.11.93 | cut -d'.' -f4) if test x"$NANO" = x || test "x$NANO" = "x0" ; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: 0 (release)" >&5 @@ -4890,76 +5008,6 @@ fi -# Make sure we can run config.sub. -$SHELL "$ac_aux_dir/config.sub" sun4 >/dev/null 2>&1 || - as_fn_error $? "cannot run $SHELL $ac_aux_dir/config.sub" "$LINENO" 5 - -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking build system type" >&5 -$as_echo_n "checking build system type... " >&6; } -if ${ac_cv_build+:} false; then : - $as_echo_n "(cached) " >&6 -else - ac_build_alias=$build_alias -test "x$ac_build_alias" = x && - ac_build_alias=`$SHELL "$ac_aux_dir/config.guess"` -test "x$ac_build_alias" = x && - as_fn_error $? "cannot guess build type; you must specify one" "$LINENO" 5 -ac_cv_build=`$SHELL "$ac_aux_dir/config.sub" $ac_build_alias` || - as_fn_error $? "$SHELL $ac_aux_dir/config.sub $ac_build_alias failed" "$LINENO" 5 - -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_build" >&5 -$as_echo "$ac_cv_build" >&6; } -case $ac_cv_build in -*-*-*) ;; -*) as_fn_error $? "invalid value of canonical build" "$LINENO" 5;; -esac -build=$ac_cv_build -ac_save_IFS=$IFS; IFS='-' -set x $ac_cv_build -shift -build_cpu=$1 -build_vendor=$2 -shift; shift -# Remember, the first character of IFS is used to create $*, -# except with old shells: -build_os=$* -IFS=$ac_save_IFS -case $build_os in *\ *) build_os=`echo "$build_os" | sed 's/ /-/g'`;; esac - - -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking host system type" >&5 -$as_echo_n "checking host system type... " >&6; } -if ${ac_cv_host+:} false; then : - $as_echo_n "(cached) " >&6 -else - if test "x$host_alias" = x; then - ac_cv_host=$ac_cv_build -else - ac_cv_host=`$SHELL "$ac_aux_dir/config.sub" $host_alias` || - as_fn_error $? "$SHELL $ac_aux_dir/config.sub $host_alias failed" "$LINENO" 5 -fi - -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_host" >&5 -$as_echo "$ac_cv_host" >&6; } -case $ac_cv_host in -*-*-*) ;; -*) as_fn_error $? "invalid value of canonical host" "$LINENO" 5;; -esac -host=$ac_cv_host -ac_save_IFS=$IFS; IFS='-' -set x $ac_cv_host -shift -host_cpu=$1 -host_vendor=$2 -shift; shift -# Remember, the first character of IFS is used to create $*, -# except with old shells: -host_os=$* -IFS=$ac_save_IFS -case $host_os in *\ *) host_os=`echo "$host_os" | sed 's/ /-/g'`;; esac - # Check whether --enable-silent-rules was given. @@ -7210,10 +7258,6 @@ freebsd* | dragonfly*) fi ;; -gnu*) - lt_cv_deplibs_check_method=pass_all - ;; - haiku*) lt_cv_deplibs_check_method=pass_all ;; @@ -7252,7 +7296,7 @@ irix5* | irix6* | nonstopux*) ;; # This must be glibc/ELF. -linux* | k*bsd*-gnu | kopensolaris*-gnu) +linux* | k*bsd*-gnu | kopensolaris*-gnu | gnu*) lt_cv_deplibs_check_method=pass_all ;; @@ -10490,7 +10534,7 @@ lt_prog_compiler_static= lt_prog_compiler_static='-non_shared' ;; - linux* | k*bsd*-gnu | kopensolaris*-gnu) + linux* | k*bsd*-gnu | kopensolaris*-gnu | gnu*) case $cc_basename in # old Intel for x86_64 which still supported -KPIC. ecc*) @@ -12660,17 +12704,6 @@ freebsd* | dragonfly*) esac ;; -gnu*) - version_type=linux # correct to gnu/linux during the next big refactor - need_lib_prefix=no - need_version=no - library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}${major} ${libname}${shared_ext}' - soname_spec='${libname}${release}${shared_ext}$major' - shlibpath_var=LD_LIBRARY_PATH - shlibpath_overrides_runpath=no - hardcode_into_libs=yes - ;; - haiku*) version_type=linux # correct to gnu/linux during the next big refactor need_lib_prefix=no @@ -12787,7 +12820,7 @@ linux*oldld* | linux*aout* | linux*coff*) ;; # This must be glibc/ELF. -linux* | k*bsd*-gnu | kopensolaris*-gnu) +linux* | k*bsd*-gnu | kopensolaris*-gnu | gnu*) version_type=linux # correct to gnu/linux during the next big refactor need_lib_prefix=no need_version=no @@ -13835,8 +13868,8 @@ CC="$lt_save_CC" -GST_REQ=0.11.91 -GSTPB_REQ=0.11.91 +GST_REQ=0.11.93 +GSTPB_REQ=0.11.93 @@ -16656,46 +16689,6 @@ rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking target system type" >&5 -$as_echo_n "checking target system type... " >&6; } -if ${ac_cv_target+:} false; then : - $as_echo_n "(cached) " >&6 -else - if test "x$target_alias" = x; then - ac_cv_target=$ac_cv_host -else - ac_cv_target=`$SHELL "$ac_aux_dir/config.sub" $target_alias` || - as_fn_error $? "$SHELL $ac_aux_dir/config.sub $target_alias failed" "$LINENO" 5 -fi - -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_target" >&5 -$as_echo "$ac_cv_target" >&6; } -case $ac_cv_target in -*-*-*) ;; -*) as_fn_error $? "invalid value of canonical target" "$LINENO" 5;; -esac -target=$ac_cv_target -ac_save_IFS=$IFS; IFS='-' -set x $ac_cv_target -shift -target_cpu=$1 -target_vendor=$2 -shift; shift -# Remember, the first character of IFS is used to create $*, -# except with old shells: -target_os=$* -IFS=$ac_save_IFS -case $target_os in *\ *) target_os=`echo "$target_os" | sed 's/ /-/g'`;; esac - - -# The aliases save the names the user supplied, while $host etc. -# will get canonicalized. -test -n "$target_alias" && - test "$program_prefix$program_suffix$program_transform_name" = \ - NONENONEs,x,x, && - program_prefix=${target_alias}- - case "x${target_cpu}" in xi?86 | xk? | xi?86_64) @@ -19542,9 +19535,6 @@ fi ld_shlibs_CXX=yes ;; - gnu*) - ;; - haiku*) archive_cmds_CXX='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib' link_all_deplibs_CXX=yes @@ -19706,7 +19696,7 @@ fi inherit_rpath_CXX=yes ;; - linux* | k*bsd*-gnu | kopensolaris*-gnu) + linux* | k*bsd*-gnu | kopensolaris*-gnu | gnu*) case $cc_basename in KCC*) # Kuck and Associates, Inc. (KAI) C++ Compiler @@ -20566,7 +20556,7 @@ lt_prog_compiler_static_CXX= ;; esac ;; - linux* | k*bsd*-gnu | kopensolaris*-gnu) + linux* | k*bsd*-gnu | kopensolaris*-gnu | gnu*) case $cc_basename in KCC*) # KAI C++ Compiler @@ -21438,17 +21428,6 @@ freebsd* | dragonfly*) esac ;; -gnu*) - version_type=linux # correct to gnu/linux during the next big refactor - need_lib_prefix=no - need_version=no - library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}${major} ${libname}${shared_ext}' - soname_spec='${libname}${release}${shared_ext}$major' - shlibpath_var=LD_LIBRARY_PATH - shlibpath_overrides_runpath=no - hardcode_into_libs=yes - ;; - haiku*) version_type=linux # correct to gnu/linux during the next big refactor need_lib_prefix=no @@ -21565,7 +21544,7 @@ linux*oldld* | linux*aout* | linux*coff*) ;; # This must be glibc/ELF. -linux* | k*bsd*-gnu | kopensolaris*-gnu) +linux* | k*bsd*-gnu | kopensolaris*-gnu | gnu*) version_type=linux # correct to gnu/linux during the next big refactor need_lib_prefix=no need_version=no @@ -24210,7 +24189,7 @@ fi fi -GLIB_REQ=2.31.14 +GLIB_REQ=2.32.0 @@ -24367,6 +24346,84 @@ fi GLIB_EXTRA_CFLAGS="$GLIB_EXTRA_CFLAGS -DG_DISABLE_ASSERT" fi + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for glib-genmarshal" >&5 +$as_echo_n "checking for glib-genmarshal... " >&6; } + if test "x$GLIB_GENMARSHAL" != "x"; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $GLIB_GENMARSHAL (from environment)" >&5 +$as_echo "$GLIB_GENMARSHAL (from environment)" >&6; } + else + GLIB_GENMARSHAL=`$PKG_CONFIG --variable=glib_genmarshal glib-2.0` + if $GLIB_GENMARSHAL --version 2>/dev/null >/dev/null; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $GLIB_GENMARSHAL (from pkg-config path)" >&5 +$as_echo "$GLIB_GENMARSHAL (from pkg-config path)" >&6; } + else + # Extract the first word of "glib-genmarshal", so it can be a program name with args. +set dummy glib-genmarshal; ac_word=$2 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 +$as_echo_n "checking for $ac_word... " >&6; } +if ${ac_cv_path_GLIB_GENMARSHAL+:} false; then : + $as_echo_n "(cached) " >&6 +else + case $GLIB_GENMARSHAL in + [\\/]* | ?:[\\/]*) + ac_cv_path_GLIB_GENMARSHAL="$GLIB_GENMARSHAL" # Let the user override the test with a path. + ;; + *) + as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +for as_dir in $PATH +do + IFS=$as_save_IFS + test -z "$as_dir" && as_dir=. + for ac_exec_ext in '' $ac_executable_extensions; do + if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then + ac_cv_path_GLIB_GENMARSHAL="$as_dir/$ac_word$ac_exec_ext" + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 + break 2 + fi +done + done +IFS=$as_save_IFS + + test -z "$ac_cv_path_GLIB_GENMARSHAL" && ac_cv_path_GLIB_GENMARSHAL="glib-genmarshal" + ;; +esac +fi +GLIB_GENMARSHAL=$ac_cv_path_GLIB_GENMARSHAL +if test -n "$GLIB_GENMARSHAL"; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $GLIB_GENMARSHAL" >&5 +$as_echo "$GLIB_GENMARSHAL" >&6; } +else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } +fi + + + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $GLIB_GENMARSHAL" >&5 +$as_echo "$GLIB_GENMARSHAL" >&6; } + fi + fi + if ! $GLIB_GENMARSHAL --version 2>/dev/null >/dev/null; then + { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $GLIB_GENMARSHAL does not seem to work!" >&5 +$as_echo "$as_me: WARNING: $GLIB_GENMARSHAL does not seem to work!" >&2;} + fi + + + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for glib-mkenums" >&5 +$as_echo_n "checking for glib-mkenums... " >&6; } + if test "x$GLIB_MKENUMS" != "x"; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $GLIB_MKENUMS (from environment)" >&5 +$as_echo "$GLIB_MKENUMS (from environment)" >&6; } + else + GLIB_MKENUMS=`$PKG_CONFIG --variable=glib_mkenums glib-2.0` + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $GLIB_MKENUMS" >&5 +$as_echo "$GLIB_MKENUMS" >&6; } + fi + if ! $GLIB_MKENUMS --version 2>/dev/null >/dev/null; then + { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $GLIB_MKENUMS does not seem to work!" >&5 +$as_echo "$as_me: WARNING: $GLIB_MKENUMS does not seem to work!" >&2;} + fi + + GIVEN_CFLAGS=$GLIB_CFLAGS INCLUDE_DIRS=`echo | cpp -v 2>&1` @@ -27619,18 +27676,18 @@ _ACEOF GST_PLUGINS_NONPORTED=" aiff \ cdxaparse \ - dccp faceoverlay festival \ + dccp faceoverlay \ fieldanalysis freeverb freeze frei0r \ - hdvparse id3tag inter interlace ivfparse jpegformat jp2kdecimator \ - kate liveadder legacyresample librfb mpegtsmux \ + hdvparse id3tag inter ivfparse jpegformat jp2kdecimator \ + kate liveadder librfb \ mpegpsmux mve mxf mythtv nsf nuvdemux \ patchdetect pnm real \ sdi siren speed subenc stereo tta videofilters \ videomeasure videosignal vmnc \ decklink fbdev linsys vcd \ apexsink cdaudio cog dc1394 dirac directfb resindvd \ - gsettings jp2k ladspa mimic \ - musepack musicbrainz nas neon ofa openal opencv rsvg sdl sndfile soundtouch spandsp spc timidity \ + gsettings jasper ladspa \ + musepack musicbrainz nas neon ofa openal rsvg sdl sndfile spandsp spc timidity \ directsound directdraw direct3d9 acm wininet \ wildmidi xvid lv2 teletextdec dvb sndio" @@ -29012,49 +29069,6 @@ fi - GST_PLUGINS_ALL="$GST_PLUGINS_ALL legacyresample" - - - - # Check whether --enable-legacyresample was given. -if test "${enable_legacyresample+set}" = set; then : - enableval=$enable_legacyresample; - case "${enableval}" in - yes) gst_use_legacyresample=yes ;; - no) gst_use_legacyresample=no ;; - *) as_fn_error $? "bad value ${enableval} for --enable-legacyresample" "$LINENO" 5 ;; - esac - -else - gst_use_legacyresample=yes -fi - - if test x$gst_use_legacyresample = xno; then - { $as_echo "$as_me:${as_lineno-$LINENO}: disabling dependency-less plugin legacyresample" >&5 -$as_echo "$as_me: disabling dependency-less plugin legacyresample" >&6;} - WITHOUT_PLUGINS="$WITHOUT_PLUGINS legacyresample" - fi - - - if [ -z "$WITH_PLUGINS" ] || echo " $WITH_PLUGINS " | tr , ' ' | grep -i " legacyresample " > /dev/null; then - GST_PLUGINS_SELECTED="$GST_PLUGINS_SELECTED legacyresample" - fi - if echo " $WITHOUT_PLUGINS " | tr , ' ' | grep -i " legacyresample " > /dev/null; then - GST_PLUGINS_SELECTED=`echo " $GST_PLUGINS_SELECTED " | $SED -e 's/ legacyresample / /'` - fi - if echo " $GST_PLUGINS_NONPORTED " | tr , ' ' | grep -i " legacyresample " > /dev/null; then - GST_PLUGINS_SELECTED=`echo " $GST_PLUGINS_SELECTED " | $SED -e 's/ legacyresample / /'` - fi - if echo " $GST_PLUGINS_SELECTED " | grep -i " legacyresample " > /dev/null; then - USE_PLUGIN_LEGACYRESAMPLE_TRUE= - USE_PLUGIN_LEGACYRESAMPLE_FALSE='#' -else - USE_PLUGIN_LEGACYRESAMPLE_TRUE='#' - USE_PLUGIN_LEGACYRESAMPLE_FALSE= -fi - - - GST_PLUGINS_ALL="$GST_PLUGINS_ALL librfb" @@ -31120,6 +31134,140 @@ fi +echo +{ $as_echo "$as_me:${as_lineno-$LINENO}: *** checking feature: DirectShow plug-in ***" >&5 +$as_echo "$as_me: *** checking feature: DirectShow plug-in ***" >&6;} +if test "xwinks" != "x" +then + { $as_echo "$as_me:${as_lineno-$LINENO}: *** for plug-ins: winks ***" >&5 +$as_echo "$as_me: *** for plug-ins: winks ***" >&6;} +fi +NOUSE= +if test "x$USE_DIRECTSHOW" = "xno"; then + NOUSE="yes" +fi +# Check whether --enable-directshow was given. +if test "${enable_directshow+set}" = set; then : + enableval=$enable_directshow; case "${enableval}" in + yes) USE_DIRECTSHOW=yes;; + no) USE_DIRECTSHOW=no;; + *) as_fn_error $? "bad value ${enableval} for --enable-directshow" "$LINENO" 5 ;; + esac +else + USE_DIRECTSHOW=yes +fi + +if test "x$NOUSE" = "xyes"; then + USE_DIRECTSHOW="no" + { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: *** winks pre-configured not to be built" >&5 +$as_echo "$as_me: WARNING: *** winks pre-configured not to be built" >&2;} +fi +NOUSE= + +if echo " $GST_PLUGINS_NONPORTED " | tr , ' ' | grep -i " DIRECTSHOW " > /dev/null; then + USE_DIRECTSHOW="no" + { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: *** winks not ported" >&5 +$as_echo "$as_me: WARNING: *** winks not ported" >&2;} +fi + + +if test x$USE_DIRECTSHOW = xyes; then + + gst_check_save_LIBS=$LIBS + gst_check_save_LDFLAGS=$LDFLAGS + gst_check_save_CFLAGS=$CFLAGS + gst_check_save_CPPFLAGS=$CPPFLAGS + gst_check_save_CXXFLAGS=$CXXFLAGS + + HAVE_DIRECTSHOW=no + + HAVE_DIRECTSHOW="no" + save_CFLAGS="$CFLAGS" + save_LDFLAGS="$LDFLAGS" + save_LIBS="$LIBS" + CFLAGS="$CFLAGS $DIRECTX_CFLAGS" + LDFLAGS="$LDFLAGS $DIRECTX_LDFLAGS" + LIBS="$LIBS -lole32 -luuid -lstrmiids" + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for DirectShow LDFLAGS" >&5 +$as_echo_n "checking for DirectShow LDFLAGS... " >&6; } + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ + +#include <windows.h> +#include <strmif.h> +#include <uuids.h> + +int main () { + IGraphBuilder *pGraph = NULL; + HRESULT hr = CoInitialize(NULL); + hr = CoCreateInstance(&CLSID_FilterGraph, NULL, CLSCTX_INPROC_SERVER, + &IID_IGraphBuilder, (void **)&pGraph); + + return 0; +} + +_ACEOF +if ac_fn_c_try_link "$LINENO"; then : + HAVE_DIRECTSHOW="yes" +else + HAVE_DIRECTSHOW="no" +fi +rm -f core conftest.err conftest.$ac_objext \ + conftest$ac_exeext conftest.$ac_ext + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $HAVE_DIRECTSHOW" >&5 +$as_echo "$HAVE_DIRECTSHOW" >&6; } + CFLAGS=$save_CFLAGS + LDFLAGS=$save_LDFLAGS + LIBS=$save_LIBS + + if test "x$HAVE_DIRECTSHOW" = "xyes"; then + DIRECTSHOW_LIBS="-ldxguid -lole32 -luuid -lstrmiids -lksuser -lsetupapi" + + + + fi + + + + LIBS=$gst_check_save_LIBS + LDFLAGS=$gst_check_save_LDFLAGS + CFLAGS=$gst_check_save_CFLAGS + CPPFLAGS=$gst_check_save_CPPFLAGS + CXXFLAGS=$gst_check_save_CXXFLAGS + + if test x$HAVE_DIRECTSHOW = xno; then + USE_DIRECTSHOW=no + else + { $as_echo "$as_me:${as_lineno-$LINENO}: *** These plugins will be built: winks" >&5 +$as_echo "$as_me: *** These plugins will be built: winks" >&6;} + fi +fi +if test x$USE_DIRECTSHOW = xyes; then + : + if test "xwinks" != "x"; then + GST_PLUGINS_YES="\twinks\n$GST_PLUGINS_YES" + fi + +$as_echo "#define HAVE_DIRECTSHOW /**/" >>confdefs.h + +else + { $as_echo "$as_me:${as_lineno-$LINENO}: *** These plugins will not be built: winks" >&5 +$as_echo "$as_me: *** These plugins will not be built: winks" >&6;} + if test "xwinks" != "x"; then + GST_PLUGINS_NO="\twinks\n$GST_PLUGINS_NO" + fi + : +fi + if test x$USE_DIRECTSHOW = xyes; then + USE_DIRECTSHOW_TRUE= + USE_DIRECTSHOW_FALSE='#' +else + USE_DIRECTSHOW_TRUE='#' + USE_DIRECTSHOW_FALSE= +fi + + + HAVE_APPLE_MEDIA="no" echo { $as_echo "$as_me:${as_lineno-$LINENO}: *** checking feature: Apple video ***" >&5 @@ -35022,302 +35170,6 @@ fi echo -{ $as_echo "$as_me:${as_lineno-$LINENO}: *** checking feature: divx plugins ***" >&5 -$as_echo "$as_me: *** checking feature: divx plugins ***" >&6;} -if test "xdivx" != "x" -then - { $as_echo "$as_me:${as_lineno-$LINENO}: *** for plug-ins: divx ***" >&5 -$as_echo "$as_me: *** for plug-ins: divx ***" >&6;} -fi -NOUSE= -if test "x$USE_DIVX" = "xno"; then - NOUSE="yes" -fi -# Check whether --enable-divx was given. -if test "${enable_divx+set}" = set; then : - enableval=$enable_divx; case "${enableval}" in - yes) USE_DIVX=yes;; - no) USE_DIVX=no;; - *) as_fn_error $? "bad value ${enableval} for --enable-divx" "$LINENO" 5 ;; - esac -else - USE_DIVX=yes -fi - -if test "x$NOUSE" = "xyes"; then - USE_DIVX="no" - { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: *** divx pre-configured not to be built" >&5 -$as_echo "$as_me: WARNING: *** divx pre-configured not to be built" >&2;} -fi -NOUSE= - -if echo " $GST_PLUGINS_NONPORTED " | tr , ' ' | grep -i " DIVX " > /dev/null; then - USE_DIVX="no" - { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: *** divx not ported" >&5 -$as_echo "$as_me: WARNING: *** divx not ported" >&2;} -fi - - -if test x$USE_DIVX = xyes; then - - gst_check_save_LIBS=$LIBS - gst_check_save_LDFLAGS=$LDFLAGS - gst_check_save_CFLAGS=$CFLAGS - gst_check_save_CPPFLAGS=$CPPFLAGS - gst_check_save_CXXFLAGS=$CXXFLAGS - - HAVE_DIVX=no - - HAVE_DIVX=yes - ac_fn_c_check_header_mongrel "$LINENO" "encore2.h" "ac_cv_header_encore2_h" "$ac_includes_default" -if test "x$ac_cv_header_encore2_h" = xyes; then : - -else - - { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Divx4linux encore headers not found" >&5 -$as_echo "$as_me: WARNING: Divx4linux encore headers not found" >&2;} - HAVE_DIVX=no - -fi - - - if test x$HAVE_DIVX = xyes ; then - { $as_echo "$as_me:${as_lineno-$LINENO}: checking Checking for valid divx4linux encore version" >&5 -$as_echo_n "checking Checking for valid divx4linux encore version... " >&6; } - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - -#include <encore2.h> -#if ENCORE_VERSION != 20021024 -#error Wrong version of divx encore libraries -#endif - -int -main () -{ - -return 0; - - ; - return 0; -} -_ACEOF -if ac_fn_c_try_compile "$LINENO"; then : - - HAVE_DIVX=yes - -else - - HAVE_DIVX=no - { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Wrong version of divx4linux installed" >&5 -$as_echo "$as_me: WARNING: Wrong version of divx4linux installed" >&2;} - -fi -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext - fi - if test x$HAVE_DIVX = xyes ; then - ac_fn_c_check_header_mongrel "$LINENO" "decore.h" "ac_cv_header_decore_h" "$ac_includes_default" -if test "x$ac_cv_header_decore_h" = xyes; then : - -else - - { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Divx4linux decoder headers not found" >&5 -$as_echo "$as_me: WARNING: Divx4linux decoder headers not found" >&2;} - HAVE_DIVX=no - -fi - - - fi - if test x$HAVE_DIVX = xyes ; then - { $as_echo "$as_me:${as_lineno-$LINENO}: checking Checking for valid divx4linux decore version" >&5 -$as_echo_n "checking Checking for valid divx4linux decore version... " >&6; } - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - -#include <decore.h> -#if DECORE_VERSION != 20021112 -#error Wrong version of divx decore libraries -#endif - -int -main () -{ - -return 0; - - ; - return 0; -} -_ACEOF -if ac_fn_c_try_compile "$LINENO"; then : - - HAVE_DIVX=yes - -else - - HAVE_DIVX=no - { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Wrong version of divx4linux installed" >&5 -$as_echo "$as_me: WARNING: Wrong version of divx4linux installed" >&2;} - -fi -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext - fi - LIBS="$LIBM" - if test x$HAVE_DIVX = xyes; then - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for encore in -ldivxencore" >&5 -$as_echo_n "checking for encore in -ldivxencore... " >&6; } -if ${ac_cv_lib_divxencore_encore+:} false; then : - $as_echo_n "(cached) " >&6 -else - ac_check_lib_save_LIBS=$LIBS -LIBS="-ldivxencore $LIBS" -cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - -/* Override any GCC internal prototype to avoid an error. - Use char because int might match the return type of a GCC - builtin and then its argument prototype would still apply. */ -#ifdef __cplusplus -extern "C" -#endif -char encore (); -int -main () -{ -return encore (); - ; - return 0; -} -_ACEOF -if ac_fn_c_try_link "$LINENO"; then : - ac_cv_lib_divxencore_encore=yes -else - ac_cv_lib_divxencore_encore=no -fi -rm -f core conftest.err conftest.$ac_objext \ - conftest$ac_exeext conftest.$ac_ext -LIBS=$ac_check_lib_save_LIBS -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_divxencore_encore" >&5 -$as_echo "$ac_cv_lib_divxencore_encore" >&6; } -if test "x$ac_cv_lib_divxencore_encore" = xyes; then : - cat >>confdefs.h <<_ACEOF -#define HAVE_LIBDIVXENCORE 1 -_ACEOF - - LIBS="-ldivxencore $LIBS" - -else - - { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Divx4linux encore libs not found" >&5 -$as_echo "$as_me: WARNING: Divx4linux encore libs not found" >&2;} - HAVE_DIVX=no - -fi - - fi - if test x$HAVE_DIVX = xyes; then - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for decore in -ldivxdecore" >&5 -$as_echo_n "checking for decore in -ldivxdecore... " >&6; } -if ${ac_cv_lib_divxdecore_decore+:} false; then : - $as_echo_n "(cached) " >&6 -else - ac_check_lib_save_LIBS=$LIBS -LIBS="-ldivxdecore $LIBS" -cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - -/* Override any GCC internal prototype to avoid an error. - Use char because int might match the return type of a GCC - builtin and then its argument prototype would still apply. */ -#ifdef __cplusplus -extern "C" -#endif -char decore (); -int -main () -{ -return decore (); - ; - return 0; -} -_ACEOF -if ac_fn_c_try_link "$LINENO"; then : - ac_cv_lib_divxdecore_decore=yes -else - ac_cv_lib_divxdecore_decore=no -fi -rm -f core conftest.err conftest.$ac_objext \ - conftest$ac_exeext conftest.$ac_ext -LIBS=$ac_check_lib_save_LIBS -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_divxdecore_decore" >&5 -$as_echo "$ac_cv_lib_divxdecore_decore" >&6; } -if test "x$ac_cv_lib_divxdecore_decore" = xyes; then : - cat >>confdefs.h <<_ACEOF -#define HAVE_LIBDIVXDECORE 1 -_ACEOF - - LIBS="-ldivxdecore $LIBS" - -else - - { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Divx4linux decore libs not found" >&5 -$as_echo "$as_me: WARNING: Divx4linux decore libs not found" >&2;} - HAVE_DIVX=no - -fi - - fi - if test x$HAVE_DIVX = xyes; then - DIVXENC_LIBS="-ldivxencore $LIBM" - DIVXDEC_LIBS="-ldivxdecore $LIBM" - - - fi - - - LIBS=$gst_check_save_LIBS - LDFLAGS=$gst_check_save_LDFLAGS - CFLAGS=$gst_check_save_CFLAGS - CPPFLAGS=$gst_check_save_CPPFLAGS - CXXFLAGS=$gst_check_save_CXXFLAGS - - if test x$HAVE_DIVX = xno; then - USE_DIVX=no - else - { $as_echo "$as_me:${as_lineno-$LINENO}: *** These plugins will be built: divx" >&5 -$as_echo "$as_me: *** These plugins will be built: divx" >&6;} - fi -fi -if test x$USE_DIVX = xyes; then - : - if test "xdivx" != "x"; then - GST_PLUGINS_YES="\tdivx\n$GST_PLUGINS_YES" - fi - -$as_echo "#define HAVE_DIVX /**/" >>confdefs.h - -else - { $as_echo "$as_me:${as_lineno-$LINENO}: *** These plugins will not be built: divx" >&5 -$as_echo "$as_me: *** These plugins will not be built: divx" >&6;} - if test "xdivx" != "x"; then - GST_PLUGINS_NO="\tdivx\n$GST_PLUGINS_NO" - fi - : -fi - if test x$USE_DIVX = xyes; then - USE_DIVX_TRUE= - USE_DIVX_FALSE='#' -else - USE_DIVX_TRUE='#' - USE_DIVX_FALSE= -fi - - - -echo { $as_echo "$as_me:${as_lineno-$LINENO}: *** checking feature: resindvd plugin ***" >&5 $as_echo "$as_me: *** checking feature: resindvd plugin ***" >&6;} if test "xresindvd" != "x" @@ -36425,43 +36277,43 @@ fi echo -{ $as_echo "$as_me:${as_lineno-$LINENO}: *** checking feature: jp2k ***" >&5 -$as_echo "$as_me: *** checking feature: jp2k ***" >&6;} -if test "xjp2kdec jp2kenc" != "x" +{ $as_echo "$as_me:${as_lineno-$LINENO}: *** checking feature: jasper ***" >&5 +$as_echo "$as_me: *** checking feature: jasper ***" >&6;} +if test "xjasperdec jasperenc" != "x" then - { $as_echo "$as_me:${as_lineno-$LINENO}: *** for plug-ins: jp2kdec jp2kenc ***" >&5 -$as_echo "$as_me: *** for plug-ins: jp2kdec jp2kenc ***" >&6;} + { $as_echo "$as_me:${as_lineno-$LINENO}: *** for plug-ins: jasperdec jasperenc ***" >&5 +$as_echo "$as_me: *** for plug-ins: jasperdec jasperenc ***" >&6;} fi NOUSE= -if test "x$USE_JP2K" = "xno"; then +if test "x$USE_JASPER" = "xno"; then NOUSE="yes" fi -# Check whether --enable-jp2k was given. -if test "${enable_jp2k+set}" = set; then : - enableval=$enable_jp2k; case "${enableval}" in - yes) USE_JP2K=yes;; - no) USE_JP2K=no;; - *) as_fn_error $? "bad value ${enableval} for --enable-jp2k" "$LINENO" 5 ;; +# Check whether --enable-jasper was given. +if test "${enable_jasper+set}" = set; then : + enableval=$enable_jasper; case "${enableval}" in + yes) USE_JASPER=yes;; + no) USE_JASPER=no;; + *) as_fn_error $? "bad value ${enableval} for --enable-jasper" "$LINENO" 5 ;; esac else - USE_JP2K=yes + USE_JASPER=yes fi if test "x$NOUSE" = "xyes"; then - USE_JP2K="no" - { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: *** jp2kdec jp2kenc pre-configured not to be built" >&5 -$as_echo "$as_me: WARNING: *** jp2kdec jp2kenc pre-configured not to be built" >&2;} + USE_JASPER="no" + { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: *** jasperdec jasperenc pre-configured not to be built" >&5 +$as_echo "$as_me: WARNING: *** jasperdec jasperenc pre-configured not to be built" >&2;} fi NOUSE= -if echo " $GST_PLUGINS_NONPORTED " | tr , ' ' | grep -i " JP2K " > /dev/null; then - USE_JP2K="no" - { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: *** jp2kdec jp2kenc not ported" >&5 -$as_echo "$as_me: WARNING: *** jp2kdec jp2kenc not ported" >&2;} +if echo " $GST_PLUGINS_NONPORTED " | tr , ' ' | grep -i " JASPER " > /dev/null; then + USE_JASPER="no" + { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: *** jasperdec jasperenc not ported" >&5 +$as_echo "$as_me: WARNING: *** jasperdec jasperenc not ported" >&2;} fi -if test x$USE_JP2K = xyes; then +if test x$USE_JASPER = xyes; then gst_check_save_LIBS=$LIBS gst_check_save_LDFLAGS=$LDFLAGS @@ -36469,7 +36321,7 @@ if test x$USE_JP2K = xyes; then gst_check_save_CPPFLAGS=$CPPFLAGS gst_check_save_CXXFLAGS=$CXXFLAGS - HAVE_JP2K=no + HAVE_JASPER=no { $as_echo "$as_me:${as_lineno-$LINENO}: checking for jas_stream_fopen in -ljasper" >&5 @@ -36509,22 +36361,22 @@ fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_jasper_jas_stream_fopen" >&5 $as_echo "$ac_cv_lib_jasper_jas_stream_fopen" >&6; } if test "x$ac_cv_lib_jasper_jas_stream_fopen" = xyes; then : - HAVE_JP2K=yes + HAVE_JASPER=yes else - HAVE_JP2K=no + HAVE_JASPER=no fi - if test "x$HAVE_JP2K" = "xyes"; then + if test "x$HAVE_JASPER" = "xyes"; then ac_fn_c_check_header_mongrel "$LINENO" "jasper/jasper.h" "ac_cv_header_jasper_jasper_h" "$ac_includes_default" if test "x$ac_cv_header_jasper_jasper_h" = xyes; then : : else - HAVE_JP2K=no + HAVE_JASPER=no fi - if test "x$HAVE_JP2K" = "xyes"; then - JP2K_LIBS="-ljasper" + if test "x$HAVE_JASPER" = "xyes"; then + JASPER_LIBS="-ljasper" else : fi @@ -36543,35 +36395,35 @@ fi CPPFLAGS=$gst_check_save_CPPFLAGS CXXFLAGS=$gst_check_save_CXXFLAGS - if test x$HAVE_JP2K = xno; then - USE_JP2K=no + if test x$HAVE_JASPER = xno; then + USE_JASPER=no else - { $as_echo "$as_me:${as_lineno-$LINENO}: *** These plugins will be built: jp2kdec jp2kenc" >&5 -$as_echo "$as_me: *** These plugins will be built: jp2kdec jp2kenc" >&6;} + { $as_echo "$as_me:${as_lineno-$LINENO}: *** These plugins will be built: jasperdec jasperenc" >&5 +$as_echo "$as_me: *** These plugins will be built: jasperdec jasperenc" >&6;} fi fi -if test x$USE_JP2K = xyes; then +if test x$USE_JASPER = xyes; then : - if test "xjp2kdec jp2kenc" != "x"; then - GST_PLUGINS_YES="\tjp2kdec jp2kenc\n$GST_PLUGINS_YES" + if test "xjasperdec jasperenc" != "x"; then + GST_PLUGINS_YES="\tjasperdec jasperenc\n$GST_PLUGINS_YES" fi -$as_echo "#define HAVE_JP2K /**/" >>confdefs.h +$as_echo "#define HAVE_JASPER /**/" >>confdefs.h else - { $as_echo "$as_me:${as_lineno-$LINENO}: *** These plugins will not be built: jp2kdec jp2kenc" >&5 -$as_echo "$as_me: *** These plugins will not be built: jp2kdec jp2kenc" >&6;} - if test "xjp2kdec jp2kenc" != "x"; then - GST_PLUGINS_NO="\tjp2kdec jp2kenc\n$GST_PLUGINS_NO" + { $as_echo "$as_me:${as_lineno-$LINENO}: *** These plugins will not be built: jasperdec jasperenc" >&5 +$as_echo "$as_me: *** These plugins will not be built: jasperdec jasperenc" >&6;} + if test "xjasperdec jasperenc" != "x"; then + GST_PLUGINS_NO="\tjasperdec jasperenc\n$GST_PLUGINS_NO" fi : fi - if test x$USE_JP2K = xyes; then - USE_JP2K_TRUE= - USE_JP2K_FALSE='#' + if test x$USE_JASPER = xyes; then + USE_JASPER_TRUE= + USE_JASPER_FALSE='#' else - USE_JP2K_TRUE='#' - USE_JP2K_FALSE= + USE_JASPER_TRUE='#' + USE_JASPER_FALSE= fi @@ -37650,7 +37502,7 @@ if test x$USE_MIMIC = xyes; then HAVE_MIMIC=no - MIMDEC_REQUIRED=1.0 + MIMIC_REQUIRED=1.0 pkg_failed=no { $as_echo "$as_me:${as_lineno-$LINENO}: checking for MIMIC" >&5 @@ -37661,12 +37513,12 @@ if test -n "$PKG_CONFIG"; then pkg_cv_MIMIC_CFLAGS="$MIMIC_CFLAGS" else if test -n "$PKG_CONFIG" && \ - { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"libmimic >= \$MIMDEC_REQUIRED\""; } >&5 - ($PKG_CONFIG --exists --print-errors "libmimic >= $MIMDEC_REQUIRED") 2>&5 + { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"libmimic >= \$MIMIC_REQUIRED\""; } >&5 + ($PKG_CONFIG --exists --print-errors "libmimic >= $MIMIC_REQUIRED") 2>&5 ac_status=$? $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; }; then - pkg_cv_MIMIC_CFLAGS=`$PKG_CONFIG --cflags "libmimic >= $MIMDEC_REQUIRED" 2>/dev/null` + pkg_cv_MIMIC_CFLAGS=`$PKG_CONFIG --cflags "libmimic >= $MIMIC_REQUIRED" 2>/dev/null` else pkg_failed=yes fi @@ -37679,12 +37531,12 @@ if test -n "$PKG_CONFIG"; then pkg_cv_MIMIC_LIBS="$MIMIC_LIBS" else if test -n "$PKG_CONFIG" && \ - { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"libmimic >= \$MIMDEC_REQUIRED\""; } >&5 - ($PKG_CONFIG --exists --print-errors "libmimic >= $MIMDEC_REQUIRED") 2>&5 + { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"libmimic >= \$MIMIC_REQUIRED\""; } >&5 + ($PKG_CONFIG --exists --print-errors "libmimic >= $MIMIC_REQUIRED") 2>&5 ac_status=$? $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; }; then - pkg_cv_MIMIC_LIBS=`$PKG_CONFIG --libs "libmimic >= $MIMDEC_REQUIRED" 2>/dev/null` + pkg_cv_MIMIC_LIBS=`$PKG_CONFIG --libs "libmimic >= $MIMIC_REQUIRED" 2>/dev/null` else pkg_failed=yes fi @@ -37703,9 +37555,9 @@ else _pkg_short_errors_supported=no fi if test $_pkg_short_errors_supported = yes; then - MIMIC_PKG_ERRORS=`$PKG_CONFIG --short-errors --errors-to-stdout --print-errors "libmimic >= $MIMDEC_REQUIRED"` + MIMIC_PKG_ERRORS=`$PKG_CONFIG --short-errors --errors-to-stdout --print-errors "libmimic >= $MIMIC_REQUIRED"` else - MIMIC_PKG_ERRORS=`$PKG_CONFIG --errors-to-stdout --print-errors "libmimic >= $MIMDEC_REQUIRED"` + MIMIC_PKG_ERRORS=`$PKG_CONFIG --errors-to-stdout --print-errors "libmimic >= $MIMIC_REQUIRED"` fi # Put the nasty error message in config.log where it belongs echo "$MIMIC_PKG_ERRORS" >&5 @@ -38164,6 +38016,167 @@ fi echo +{ $as_echo "$as_me:${as_lineno-$LINENO}: *** checking feature: mpg123 audio decoder ***" >&5 +$as_echo "$as_me: *** checking feature: mpg123 audio decoder ***" >&6;} +if test "xmpg123" != "x" +then + { $as_echo "$as_me:${as_lineno-$LINENO}: *** for plug-ins: mpg123 ***" >&5 +$as_echo "$as_me: *** for plug-ins: mpg123 ***" >&6;} +fi +NOUSE= +if test "x$USE_MPG123" = "xno"; then + NOUSE="yes" +fi +# Check whether --enable-mpg123 was given. +if test "${enable_mpg123+set}" = set; then : + enableval=$enable_mpg123; case "${enableval}" in + yes) USE_MPG123=yes;; + no) USE_MPG123=no;; + *) as_fn_error $? "bad value ${enableval} for --enable-mpg123" "$LINENO" 5 ;; + esac +else + USE_MPG123=yes +fi + +if test "x$NOUSE" = "xyes"; then + USE_MPG123="no" + { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: *** mpg123 pre-configured not to be built" >&5 +$as_echo "$as_me: WARNING: *** mpg123 pre-configured not to be built" >&2;} +fi +NOUSE= + +if echo " $GST_PLUGINS_NONPORTED " | tr , ' ' | grep -i " MPG123 " > /dev/null; then + USE_MPG123="no" + { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: *** mpg123 not ported" >&5 +$as_echo "$as_me: WARNING: *** mpg123 not ported" >&2;} +fi + + +if test x$USE_MPG123 = xyes; then + + gst_check_save_LIBS=$LIBS + gst_check_save_LDFLAGS=$LDFLAGS + gst_check_save_CFLAGS=$CFLAGS + gst_check_save_CPPFLAGS=$CPPFLAGS + gst_check_save_CXXFLAGS=$CXXFLAGS + + HAVE_MPG123=no + + +pkg_failed=no +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for MPG123" >&5 +$as_echo_n "checking for MPG123... " >&6; } + +if test -n "$PKG_CONFIG"; then + if test -n "$MPG123_CFLAGS"; then + pkg_cv_MPG123_CFLAGS="$MPG123_CFLAGS" + else + if test -n "$PKG_CONFIG" && \ + { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"libmpg123 >= 1.13\""; } >&5 + ($PKG_CONFIG --exists --print-errors "libmpg123 >= 1.13") 2>&5 + ac_status=$? + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; }; then + pkg_cv_MPG123_CFLAGS=`$PKG_CONFIG --cflags "libmpg123 >= 1.13" 2>/dev/null` +else + pkg_failed=yes +fi + fi +else + pkg_failed=untried +fi +if test -n "$PKG_CONFIG"; then + if test -n "$MPG123_LIBS"; then + pkg_cv_MPG123_LIBS="$MPG123_LIBS" + else + if test -n "$PKG_CONFIG" && \ + { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"libmpg123 >= 1.13\""; } >&5 + ($PKG_CONFIG --exists --print-errors "libmpg123 >= 1.13") 2>&5 + ac_status=$? + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; }; then + pkg_cv_MPG123_LIBS=`$PKG_CONFIG --libs "libmpg123 >= 1.13" 2>/dev/null` +else + pkg_failed=yes +fi + fi +else + pkg_failed=untried +fi + + + +if test $pkg_failed = yes; then + +if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then + _pkg_short_errors_supported=yes +else + _pkg_short_errors_supported=no +fi + if test $_pkg_short_errors_supported = yes; then + MPG123_PKG_ERRORS=`$PKG_CONFIG --short-errors --errors-to-stdout --print-errors "libmpg123 >= 1.13"` + else + MPG123_PKG_ERRORS=`$PKG_CONFIG --errors-to-stdout --print-errors "libmpg123 >= 1.13"` + fi + # Put the nasty error message in config.log where it belongs + echo "$MPG123_PKG_ERRORS" >&5 + + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } + HAVE_MPG123="no" +elif test $pkg_failed = untried; then + HAVE_MPG123="no" +else + MPG123_CFLAGS=$pkg_cv_MPG123_CFLAGS + MPG123_LIBS=$pkg_cv_MPG123_LIBS + { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 +$as_echo "yes" >&6; } + HAVE_MPG123="yes" +fi + + + + + LIBS=$gst_check_save_LIBS + LDFLAGS=$gst_check_save_LDFLAGS + CFLAGS=$gst_check_save_CFLAGS + CPPFLAGS=$gst_check_save_CPPFLAGS + CXXFLAGS=$gst_check_save_CXXFLAGS + + if test x$HAVE_MPG123 = xno; then + USE_MPG123=no + else + { $as_echo "$as_me:${as_lineno-$LINENO}: *** These plugins will be built: mpg123" >&5 +$as_echo "$as_me: *** These plugins will be built: mpg123" >&6;} + fi +fi +if test x$USE_MPG123 = xyes; then + : + if test "xmpg123" != "x"; then + GST_PLUGINS_YES="\tmpg123\n$GST_PLUGINS_YES" + fi + +$as_echo "#define HAVE_MPG123 /**/" >>confdefs.h + +else + { $as_echo "$as_me:${as_lineno-$LINENO}: *** These plugins will not be built: mpg123" >&5 +$as_echo "$as_me: *** These plugins will not be built: mpg123" >&6;} + if test "xmpg123" != "x"; then + GST_PLUGINS_NO="\tmpg123\n$GST_PLUGINS_NO" + fi + : +fi + if test x$USE_MPG123 = xyes; then + USE_MPG123_TRUE= + USE_MPG123_FALSE='#' +else + USE_MPG123_TRUE='#' + USE_MPG123_FALSE= +fi + + + +echo { $as_echo "$as_me:${as_lineno-$LINENO}: *** checking feature: mplex ***" >&5 $as_echo "$as_me: *** checking feature: mplex ***" >&6;} if test "xmplex" != "x" @@ -47855,6 +47868,14 @@ else fi if false; then + DECKLINK_OSX_TRUE= + DECKLINK_OSX_FALSE='#' +else + DECKLINK_OSX_TRUE='#' + DECKLINK_OSX_FALSE= +fi + + if false; then USE_DIRECTFB_TRUE= USE_DIRECTFB_FALSE='#' else @@ -47887,14 +47908,6 @@ else fi if false; then - USE_DIVX_TRUE= - USE_DIVX_FALSE='#' -else - USE_DIVX_TRUE='#' - USE_DIVX_FALSE= -fi - - if false; then USE_EXIF_TRUE= USE_EXIF_FALSE='#' else @@ -47951,11 +47964,11 @@ else fi if false; then - USE_JP2K_TRUE= - USE_JP2K_FALSE='#' + USE_JASPER_TRUE= + USE_JASPER_FALSE='#' else - USE_JP2K_TRUE='#' - USE_JP2K_FALSE= + USE_JASPER_TRUE='#' + USE_JASPER_FALSE= fi if false; then @@ -48031,6 +48044,14 @@ else fi if false; then + USE_MPG123_TRUE= + USE_MPG123_FALSE='#' +else + USE_MPG123_TRUE='#' + USE_MPG123_FALSE= +fi + + if false; then USE_MPLEX_TRUE= USE_MPLEX_FALSE='#' else @@ -48343,7 +48364,7 @@ GST_PLUGIN_LDFLAGS="-module -avoid-version -export-symbols-regex '^_*gst_plugin_ -ac_config_files="$ac_config_files Makefile common/Makefile common/m4/Makefile gst-plugins-bad.spec gst/Makefile gst/adpcmdec/Makefile gst/adpcmenc/Makefile gst/aiff/Makefile gst/asfmux/Makefile gst/audiovisualizers/Makefile gst/autoconvert/Makefile gst/bayer/Makefile gst/camerabin2/Makefile gst/cdxaparse/Makefile gst/coloreffects/Makefile gst/dataurisrc/Makefile gst/dccp/Makefile gst/debugutils/Makefile gst/dtmf/Makefile gst/dvbsuboverlay/Makefile gst/dvdspu/Makefile gst/faceoverlay/Makefile gst/festival/Makefile gst/fieldanalysis/Makefile gst/freeze/Makefile gst/freeverb/Makefile gst/frei0r/Makefile gst/gaudieffects/Makefile gst/geometrictransform/Makefile gst/hdvparse/Makefile gst/hls/Makefile gst/id3tag/Makefile gst/inter/Makefile gst/interlace/Makefile gst/ivfparse/Makefile gst/jp2kdecimator/Makefile gst/jpegformat/Makefile gst/legacyresample/Makefile gst/librfb/Makefile gst/liveadder/Makefile gst/mpegdemux/Makefile gst/mpegtsdemux/Makefile gst/mpegtsmux/Makefile gst/mpegtsmux/tsmux/Makefile gst/mpegpsmux/Makefile gst/mve/Makefile gst/mxf/Makefile gst/nsf/Makefile gst/nuvdemux/Makefile gst/patchdetect/Makefile gst/pcapparse/Makefile gst/pnm/Makefile gst/rawparse/Makefile gst/real/Makefile gst/removesilence/Makefile gst/rtpmux/Makefile gst/rtpvp8/Makefile gst/scaletempo/Makefile gst/sdi/Makefile gst/sdp/Makefile gst/segmentclip/Makefile gst/siren/Makefile gst/smooth/Makefile gst/speed/Makefile gst/subenc/Makefile gst/stereo/Makefile gst/tta/Makefile gst/videofilters/Makefile gst/videomeasure/Makefile gst/videoparsers/Makefile gst/videosignal/Makefile gst/vmnc/Makefile gst/y4m/Makefile gst-libs/Makefile gst-libs/gst/Makefile gst-libs/gst/basecamerabinsrc/Makefile gst-libs/gst/interfaces/Makefile gst-libs/gst/signalprocessor/Makefile gst-libs/gst/codecparsers/Makefile gst-libs/gst/video/Makefile sys/Makefile sys/dshowdecwrapper/Makefile sys/acmenc/Makefile sys/acmmp3dec/Makefile sys/applemedia/Makefile sys/avc/Makefile sys/d3dvideosink/Makefile sys/decklink/Makefile sys/directdraw/Makefile sys/directsound/Makefile sys/dshowsrcwrapper/Makefile sys/dshowvideosink/Makefile sys/dvb/Makefile sys/fbdev/Makefile sys/linsys/Makefile sys/osxvideo/Makefile sys/qtwrapper/Makefile sys/shm/Makefile sys/vcd/Makefile sys/vdpau/Makefile sys/vdpau/gstvdp/Makefile sys/vdpau/basevideodecoder/Makefile sys/pvr2d/Makefile sys/wasapi/Makefile sys/wininet/Makefile sys/winks/Makefile sys/winscreencap/Makefile tests/Makefile tests/check/Makefile tests/files/Makefile tests/examples/Makefile tests/examples/camerabin2/Makefile tests/examples/directfb/Makefile tests/examples/mxf/Makefile tests/examples/scaletempo/Makefile tests/examples/opencv/Makefile tests/icles/Makefile ext/voamrwbenc/Makefile ext/voaacenc/Makefile ext/assrender/Makefile ext/apexsink/Makefile ext/bz2/Makefile ext/cdaudio/Makefile ext/celt/Makefile ext/chromaprint/Makefile ext/cog/Makefile ext/curl/Makefile ext/dc1394/Makefile ext/dirac/Makefile ext/directfb/Makefile ext/wayland/Makefile ext/divx/Makefile ext/dts/Makefile ext/faac/Makefile ext/faad/Makefile ext/flite/Makefile ext/gsm/Makefile ext/jp2k/Makefile ext/kate/Makefile ext/ladspa/Makefile ext/lv2/Makefile ext/libmms/Makefile ext/Makefile ext/modplug/Makefile ext/mpeg2enc/Makefile ext/mimic/Makefile ext/mplex/Makefile ext/musepack/Makefile ext/musicbrainz/Makefile ext/mythtv/Makefile ext/nas/Makefile ext/neon/Makefile ext/ofa/Makefile ext/openal/Makefile ext/opencv/Makefile ext/opus/Makefile ext/rsvg/Makefile ext/resindvd/Makefile ext/rtmp/Makefile ext/schroedinger/Makefile ext/sdl/Makefile ext/sndfile/Makefile ext/soundtouch/Makefile ext/spandsp/Makefile ext/sndio/Makefile ext/teletextdec/Makefile ext/gme/Makefile ext/gsettings/Makefile ext/gsettings/org.freedesktop.gstreamer.default-elements.gschema.xml ext/spc/Makefile ext/swfdec/Makefile ext/timidity/Makefile ext/vp8/Makefile ext/xvid/Makefile ext/zbar/Makefile po/Makefile.in docs/Makefile docs/plugins/Makefile docs/libs/Makefile docs/version.entities pkgconfig/Makefile pkgconfig/gstreamer-plugins-bad.pc pkgconfig/gstreamer-plugins-bad-uninstalled.pc pkgconfig/gstreamer-codecparsers.pc pkgconfig/gstreamer-codecparsers-uninstalled.pc pkgconfig/gstreamer-basevideo.pc pkgconfig/gstreamer-basevideo-uninstalled.pc tools/Makefile m4/Makefile win32/common/config.h" +ac_config_files="$ac_config_files Makefile common/Makefile common/m4/Makefile gst-plugins-bad.spec gst/Makefile gst/adpcmdec/Makefile gst/adpcmenc/Makefile gst/aiff/Makefile gst/asfmux/Makefile gst/audiovisualizers/Makefile gst/autoconvert/Makefile gst/bayer/Makefile gst/camerabin2/Makefile gst/cdxaparse/Makefile gst/coloreffects/Makefile gst/dataurisrc/Makefile gst/dccp/Makefile gst/debugutils/Makefile gst/dtmf/Makefile gst/dvbsuboverlay/Makefile gst/dvdspu/Makefile gst/faceoverlay/Makefile gst/festival/Makefile gst/fieldanalysis/Makefile gst/freeze/Makefile gst/freeverb/Makefile gst/frei0r/Makefile gst/gaudieffects/Makefile gst/geometrictransform/Makefile gst/hdvparse/Makefile gst/hls/Makefile gst/id3tag/Makefile gst/inter/Makefile gst/interlace/Makefile gst/ivfparse/Makefile gst/jp2kdecimator/Makefile gst/jpegformat/Makefile gst/librfb/Makefile gst/liveadder/Makefile gst/mpegdemux/Makefile gst/mpegtsdemux/Makefile gst/mpegtsmux/Makefile gst/mpegtsmux/tsmux/Makefile gst/mpegpsmux/Makefile gst/mve/Makefile gst/mxf/Makefile gst/nsf/Makefile gst/nuvdemux/Makefile gst/patchdetect/Makefile gst/pcapparse/Makefile gst/pnm/Makefile gst/rawparse/Makefile gst/real/Makefile gst/removesilence/Makefile gst/rtpmux/Makefile gst/rtpvp8/Makefile gst/scaletempo/Makefile gst/sdi/Makefile gst/sdp/Makefile gst/segmentclip/Makefile gst/siren/Makefile gst/smooth/Makefile gst/speed/Makefile gst/subenc/Makefile gst/stereo/Makefile gst/tta/Makefile gst/videofilters/Makefile gst/videomeasure/Makefile gst/videoparsers/Makefile gst/videosignal/Makefile gst/vmnc/Makefile gst/y4m/Makefile gst-libs/Makefile gst-libs/gst/Makefile gst-libs/gst/basecamerabinsrc/Makefile gst-libs/gst/interfaces/Makefile gst-libs/gst/signalprocessor/Makefile gst-libs/gst/codecparsers/Makefile gst-libs/gst/video/Makefile sys/Makefile sys/dshowdecwrapper/Makefile sys/acmenc/Makefile sys/acmmp3dec/Makefile sys/applemedia/Makefile sys/avc/Makefile sys/d3dvideosink/Makefile sys/decklink/Makefile sys/directdraw/Makefile sys/directsound/Makefile sys/dshowsrcwrapper/Makefile sys/dshowvideosink/Makefile sys/dvb/Makefile sys/fbdev/Makefile sys/linsys/Makefile sys/osxvideo/Makefile sys/qtwrapper/Makefile sys/shm/Makefile sys/vcd/Makefile sys/vdpau/Makefile sys/vdpau/gstvdp/Makefile sys/vdpau/basevideodecoder/Makefile sys/pvr2d/Makefile sys/wasapi/Makefile sys/wininet/Makefile sys/winks/Makefile sys/winscreencap/Makefile tests/Makefile tests/check/Makefile tests/files/Makefile tests/examples/Makefile tests/examples/camerabin2/Makefile tests/examples/directfb/Makefile tests/examples/mxf/Makefile tests/examples/scaletempo/Makefile tests/examples/opencv/Makefile tests/icles/Makefile ext/voamrwbenc/Makefile ext/voaacenc/Makefile ext/assrender/Makefile ext/apexsink/Makefile ext/bz2/Makefile ext/cdaudio/Makefile ext/celt/Makefile ext/chromaprint/Makefile ext/cog/Makefile ext/curl/Makefile ext/dc1394/Makefile ext/dirac/Makefile ext/directfb/Makefile ext/wayland/Makefile ext/dts/Makefile ext/faac/Makefile ext/faad/Makefile ext/flite/Makefile ext/gsm/Makefile ext/jasper/Makefile ext/kate/Makefile ext/ladspa/Makefile ext/lv2/Makefile ext/libmms/Makefile ext/Makefile ext/modplug/Makefile ext/mpeg2enc/Makefile ext/mpg123/Makefile ext/mimic/Makefile ext/mplex/Makefile ext/musepack/Makefile ext/musicbrainz/Makefile ext/mythtv/Makefile ext/nas/Makefile ext/neon/Makefile ext/ofa/Makefile ext/openal/Makefile ext/opencv/Makefile ext/opus/Makefile ext/rsvg/Makefile ext/resindvd/Makefile ext/rtmp/Makefile ext/schroedinger/Makefile ext/sdl/Makefile ext/sndfile/Makefile ext/soundtouch/Makefile ext/spandsp/Makefile ext/sndio/Makefile ext/teletextdec/Makefile ext/gme/Makefile ext/gsettings/Makefile ext/gsettings/org.freedesktop.gstreamer.default-elements.gschema.xml ext/spc/Makefile ext/swfdec/Makefile ext/timidity/Makefile ext/vp8/Makefile ext/xvid/Makefile ext/zbar/Makefile po/Makefile.in docs/Makefile docs/plugins/Makefile docs/libs/Makefile docs/version.entities pkgconfig/Makefile pkgconfig/gstreamer-plugins-bad.pc pkgconfig/gstreamer-plugins-bad-uninstalled.pc pkgconfig/gstreamer-codecparsers.pc pkgconfig/gstreamer-codecparsers-uninstalled.pc pkgconfig/gstreamer-basevideo.pc pkgconfig/gstreamer-basevideo-uninstalled.pc tools/Makefile m4/Makefile win32/common/config.h" cat >confcache <<\_ACEOF # This file is a shell script that caches the results of configure @@ -48756,10 +48777,6 @@ if test -z "${USE_PLUGIN_JPEGFORMAT_TRUE}" && test -z "${USE_PLUGIN_JPEGFORMAT_F as_fn_error $? "conditional \"USE_PLUGIN_JPEGFORMAT\" was never defined. Usually this means the macro was only invoked conditionally." "$LINENO" 5 fi -if test -z "${USE_PLUGIN_LEGACYRESAMPLE_TRUE}" && test -z "${USE_PLUGIN_LEGACYRESAMPLE_FALSE}"; then - as_fn_error $? "conditional \"USE_PLUGIN_LEGACYRESAMPLE\" was never defined. -Usually this means the macro was only invoked conditionally." "$LINENO" 5 -fi if test -z "${USE_PLUGIN_LIBRFB_TRUE}" && test -z "${USE_PLUGIN_LIBRFB_FALSE}"; then as_fn_error $? "conditional \"USE_PLUGIN_LIBRFB\" was never defined. Usually this means the macro was only invoked conditionally." "$LINENO" 5 @@ -48924,6 +48941,10 @@ if test -z "${USE_DIRECT3D9_TRUE}" && test -z "${USE_DIRECT3D9_FALSE}"; then as_fn_error $? "conditional \"USE_DIRECT3D9\" was never defined. Usually this means the macro was only invoked conditionally." "$LINENO" 5 fi +if test -z "${USE_DIRECTSHOW_TRUE}" && test -z "${USE_DIRECTSHOW_FALSE}"; then + as_fn_error $? "conditional \"USE_DIRECTSHOW\" was never defined. +Usually this means the macro was only invoked conditionally." "$LINENO" 5 +fi if test -z "${USE_APPLE_MEDIA_TRUE}" && test -z "${USE_APPLE_MEDIA_FALSE}"; then as_fn_error $? "conditional \"USE_APPLE_MEDIA\" was never defined. Usually this means the macro was only invoked conditionally." "$LINENO" 5 @@ -49020,10 +49041,6 @@ if test -z "${USE_DTS_TRUE}" && test -z "${USE_DTS_FALSE}"; then as_fn_error $? "conditional \"USE_DTS\" was never defined. Usually this means the macro was only invoked conditionally." "$LINENO" 5 fi -if test -z "${USE_DIVX_TRUE}" && test -z "${USE_DIVX_FALSE}"; then - as_fn_error $? "conditional \"USE_DIVX\" was never defined. -Usually this means the macro was only invoked conditionally." "$LINENO" 5 -fi if test -z "${USE_RESINDVD_TRUE}" && test -z "${USE_RESINDVD_FALSE}"; then as_fn_error $? "conditional \"USE_RESINDVD\" was never defined. Usually this means the macro was only invoked conditionally." "$LINENO" 5 @@ -49048,8 +49065,8 @@ if test -z "${USE_GSM_TRUE}" && test -z "${USE_GSM_FALSE}"; then as_fn_error $? "conditional \"USE_GSM\" was never defined. Usually this means the macro was only invoked conditionally." "$LINENO" 5 fi -if test -z "${USE_JP2K_TRUE}" && test -z "${USE_JP2K_FALSE}"; then - as_fn_error $? "conditional \"USE_JP2K\" was never defined. +if test -z "${USE_JASPER_TRUE}" && test -z "${USE_JASPER_FALSE}"; then + as_fn_error $? "conditional \"USE_JASPER\" was never defined. Usually this means the macro was only invoked conditionally." "$LINENO" 5 fi if test -z "${USE_TIGER_TRUE}" && test -z "${USE_TIGER_FALSE}"; then @@ -49092,6 +49109,10 @@ if test -z "${USE_MPEG2ENC_TRUE}" && test -z "${USE_MPEG2ENC_FALSE}"; then as_fn_error $? "conditional \"USE_MPEG2ENC\" was never defined. Usually this means the macro was only invoked conditionally." "$LINENO" 5 fi +if test -z "${USE_MPG123_TRUE}" && test -z "${USE_MPG123_FALSE}"; then + as_fn_error $? "conditional \"USE_MPG123\" was never defined. +Usually this means the macro was only invoked conditionally." "$LINENO" 5 +fi if test -z "${USE_MPLEX_TRUE}" && test -z "${USE_MPLEX_FALSE}"; then as_fn_error $? "conditional \"USE_MPLEX\" was never defined. Usually this means the macro was only invoked conditionally." "$LINENO" 5 @@ -49276,6 +49297,10 @@ if test -z "${USE_DECKLINK_TRUE}" && test -z "${USE_DECKLINK_FALSE}"; then as_fn_error $? "conditional \"USE_DECKLINK\" was never defined. Usually this means the macro was only invoked conditionally." "$LINENO" 5 fi +if test -z "${DECKLINK_OSX_TRUE}" && test -z "${DECKLINK_OSX_FALSE}"; then + as_fn_error $? "conditional \"DECKLINK_OSX\" was never defined. +Usually this means the macro was only invoked conditionally." "$LINENO" 5 +fi if test -z "${USE_DIRECTFB_TRUE}" && test -z "${USE_DIRECTFB_FALSE}"; then as_fn_error $? "conditional \"USE_DIRECTFB\" was never defined. Usually this means the macro was only invoked conditionally." "$LINENO" 5 @@ -49292,10 +49317,6 @@ if test -z "${USE_DTS_TRUE}" && test -z "${USE_DTS_FALSE}"; then as_fn_error $? "conditional \"USE_DTS\" was never defined. Usually this means the macro was only invoked conditionally." "$LINENO" 5 fi -if test -z "${USE_DIVX_TRUE}" && test -z "${USE_DIVX_FALSE}"; then - as_fn_error $? "conditional \"USE_DIVX\" was never defined. -Usually this means the macro was only invoked conditionally." "$LINENO" 5 -fi if test -z "${USE_EXIF_TRUE}" && test -z "${USE_EXIF_FALSE}"; then as_fn_error $? "conditional \"USE_EXIF\" was never defined. Usually this means the macro was only invoked conditionally." "$LINENO" 5 @@ -49324,8 +49345,8 @@ if test -z "${USE_GSM_TRUE}" && test -z "${USE_GSM_FALSE}"; then as_fn_error $? "conditional \"USE_GSM\" was never defined. Usually this means the macro was only invoked conditionally." "$LINENO" 5 fi -if test -z "${USE_JP2K_TRUE}" && test -z "${USE_JP2K_FALSE}"; then - as_fn_error $? "conditional \"USE_JP2K\" was never defined. +if test -z "${USE_JASPER_TRUE}" && test -z "${USE_JASPER_FALSE}"; then + as_fn_error $? "conditional \"USE_JASPER\" was never defined. Usually this means the macro was only invoked conditionally." "$LINENO" 5 fi if test -z "${USE_KATE_TRUE}" && test -z "${USE_KATE_FALSE}"; then @@ -49364,6 +49385,10 @@ if test -z "${USE_MPEG2ENC_TRUE}" && test -z "${USE_MPEG2ENC_FALSE}"; then as_fn_error $? "conditional \"USE_MPEG2ENC\" was never defined. Usually this means the macro was only invoked conditionally." "$LINENO" 5 fi +if test -z "${USE_MPG123_TRUE}" && test -z "${USE_MPG123_FALSE}"; then + as_fn_error $? "conditional \"USE_MPG123\" was never defined. +Usually this means the macro was only invoked conditionally." "$LINENO" 5 +fi if test -z "${USE_MPLEX_TRUE}" && test -z "${USE_MPLEX_FALSE}"; then as_fn_error $? "conditional \"USE_MPLEX\" was never defined. Usually this means the macro was only invoked conditionally." "$LINENO" 5 @@ -49893,7 +49918,7 @@ cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1 # report actual input values of CONFIG_FILES etc. instead of their # values after options handling. ac_log=" -This file was extended by GStreamer Bad Plug-ins $as_me 0.11.92, which was +This file was extended by GStreamer Bad Plug-ins $as_me 0.11.93, which was generated by GNU Autoconf 2.69. Invocation command line was CONFIG_FILES = $CONFIG_FILES @@ -49959,7 +49984,7 @@ _ACEOF cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 ac_cs_config="`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`" ac_cs_version="\\ -GStreamer Bad Plug-ins config.status 0.11.92 +GStreamer Bad Plug-ins config.status 0.11.93 configured by $0, generated by GNU Autoconf 2.69, with options \\"\$ac_cs_config\\" @@ -50532,7 +50557,6 @@ do "gst/ivfparse/Makefile") CONFIG_FILES="$CONFIG_FILES gst/ivfparse/Makefile" ;; "gst/jp2kdecimator/Makefile") CONFIG_FILES="$CONFIG_FILES gst/jp2kdecimator/Makefile" ;; "gst/jpegformat/Makefile") CONFIG_FILES="$CONFIG_FILES gst/jpegformat/Makefile" ;; - "gst/legacyresample/Makefile") CONFIG_FILES="$CONFIG_FILES gst/legacyresample/Makefile" ;; "gst/librfb/Makefile") CONFIG_FILES="$CONFIG_FILES gst/librfb/Makefile" ;; "gst/liveadder/Makefile") CONFIG_FILES="$CONFIG_FILES gst/liveadder/Makefile" ;; "gst/mpegdemux/Makefile") CONFIG_FILES="$CONFIG_FILES gst/mpegdemux/Makefile" ;; @@ -50626,13 +50650,12 @@ do "ext/dirac/Makefile") CONFIG_FILES="$CONFIG_FILES ext/dirac/Makefile" ;; "ext/directfb/Makefile") CONFIG_FILES="$CONFIG_FILES ext/directfb/Makefile" ;; "ext/wayland/Makefile") CONFIG_FILES="$CONFIG_FILES ext/wayland/Makefile" ;; - "ext/divx/Makefile") CONFIG_FILES="$CONFIG_FILES ext/divx/Makefile" ;; "ext/dts/Makefile") CONFIG_FILES="$CONFIG_FILES ext/dts/Makefile" ;; "ext/faac/Makefile") CONFIG_FILES="$CONFIG_FILES ext/faac/Makefile" ;; "ext/faad/Makefile") CONFIG_FILES="$CONFIG_FILES ext/faad/Makefile" ;; "ext/flite/Makefile") CONFIG_FILES="$CONFIG_FILES ext/flite/Makefile" ;; "ext/gsm/Makefile") CONFIG_FILES="$CONFIG_FILES ext/gsm/Makefile" ;; - "ext/jp2k/Makefile") CONFIG_FILES="$CONFIG_FILES ext/jp2k/Makefile" ;; + "ext/jasper/Makefile") CONFIG_FILES="$CONFIG_FILES ext/jasper/Makefile" ;; "ext/kate/Makefile") CONFIG_FILES="$CONFIG_FILES ext/kate/Makefile" ;; "ext/ladspa/Makefile") CONFIG_FILES="$CONFIG_FILES ext/ladspa/Makefile" ;; "ext/lv2/Makefile") CONFIG_FILES="$CONFIG_FILES ext/lv2/Makefile" ;; @@ -50640,6 +50663,7 @@ do "ext/Makefile") CONFIG_FILES="$CONFIG_FILES ext/Makefile" ;; "ext/modplug/Makefile") CONFIG_FILES="$CONFIG_FILES ext/modplug/Makefile" ;; "ext/mpeg2enc/Makefile") CONFIG_FILES="$CONFIG_FILES ext/mpeg2enc/Makefile" ;; + "ext/mpg123/Makefile") CONFIG_FILES="$CONFIG_FILES ext/mpg123/Makefile" ;; "ext/mimic/Makefile") CONFIG_FILES="$CONFIG_FILES ext/mimic/Makefile" ;; "ext/mplex/Makefile") CONFIG_FILES="$CONFIG_FILES ext/mplex/Makefile" ;; "ext/musepack/Makefile") CONFIG_FILES="$CONFIG_FILES ext/musepack/Makefile" ;; diff --git a/configure.ac b/configure.ac index 449824d4..47cc30e4 100644 --- a/configure.ac +++ b/configure.ac @@ -3,7 +3,7 @@ AC_PREREQ(2.62) dnl initialize autoconf dnl when going to/from release please set the nano (fourth number) right ! dnl releases only do Wall, cvs and prerelease does Werror too -AC_INIT(GStreamer Bad Plug-ins, 0.11.92, +AC_INIT(GStreamer Bad Plug-ins, 0.11.93, http://bugzilla.gnome.org/enter_bug.cgi?product=GStreamer, gst-plugins-bad) @@ -53,8 +53,8 @@ dnl sets GST_LT_LDFLAGS AS_LIBTOOL(GST, 0, 0, 0) dnl *** required versions of GStreamer stuff *** -GST_REQ=0.11.91 -GSTPB_REQ=0.11.91 +GST_REQ=0.11.93 +GSTPB_REQ=0.11.93 dnl *** autotools stuff **** @@ -182,7 +182,7 @@ AC_CHECK_FUNC(socket,,[AC_CHECK_LIB(socket,socket)]) AC_CHECK_FUNC(gethostbyname,,[AC_CHECK_LIB(nsl,gethostbyname)]) dnl GLib is required -GLIB_REQ=2.31.14 +GLIB_REQ=2.32.0 AG_GST_GLIB_CHECK([$GLIB_REQ]) dnl checks for gstreamer @@ -312,18 +312,18 @@ dnl Non ported plugins (non-dependant, then dependant) dnl Make sure you have a space before and after all plugins GST_PLUGINS_NONPORTED=" aiff \ cdxaparse \ - dccp faceoverlay festival \ + dccp faceoverlay \ fieldanalysis freeverb freeze frei0r \ - hdvparse id3tag inter interlace ivfparse jpegformat jp2kdecimator \ - kate liveadder legacyresample librfb mpegtsmux \ + hdvparse id3tag inter ivfparse jpegformat jp2kdecimator \ + kate liveadder librfb \ mpegpsmux mve mxf mythtv nsf nuvdemux \ patchdetect pnm real \ sdi siren speed subenc stereo tta videofilters \ videomeasure videosignal vmnc \ decklink fbdev linsys vcd \ apexsink cdaudio cog dc1394 dirac directfb resindvd \ - gsettings jp2k ladspa mimic \ - musepack musicbrainz nas neon ofa openal opencv rsvg sdl sndfile soundtouch spandsp spc timidity \ + gsettings jasper ladspa \ + musepack musicbrainz nas neon ofa openal rsvg sdl sndfile spandsp spc timidity \ directsound directdraw direct3d9 acm wininet \ wildmidi xvid lv2 teletextdec dvb sndio" AC_SUBST(GST_PLUGINS_NONPORTED) @@ -361,7 +361,6 @@ AG_GST_CHECK_PLUGIN(interlace) AG_GST_CHECK_PLUGIN(ivfparse) AG_GST_CHECK_PLUGIN(jp2kdecimator) AG_GST_CHECK_PLUGIN(jpegformat) -AG_GST_CHECK_PLUGIN(legacyresample) AG_GST_CHECK_PLUGIN(librfb) AG_GST_CHECK_PLUGIN(liveadder) AG_GST_CHECK_PLUGIN(mpegdemux) @@ -557,6 +556,48 @@ AG_GST_CHECK_FEATURE(DIRECT3D9, [Direct3D9], winscreencap, [ AC_SUBST(HAVE_DIRECT3D9) ]) +dnl DirectShow +translit(dnm, m, l) AM_CONDITIONAL(USE_DIRECTSHOW, true) +AG_GST_CHECK_FEATURE(DIRECTSHOW, [DirectShow plug-in], winks, [ + HAVE_DIRECTSHOW="no" + save_CFLAGS="$CFLAGS" + save_LDFLAGS="$LDFLAGS" + save_LIBS="$LIBS" + CFLAGS="$CFLAGS $DIRECTX_CFLAGS" + LDFLAGS="$LDFLAGS $DIRECTX_LDFLAGS" + LIBS="$LIBS -lole32 -luuid -lstrmiids" + AC_MSG_CHECKING(for DirectShow LDFLAGS) + AC_LINK_IFELSE([ +#include <windows.h> +#include <strmif.h> +#include <uuids.h> + +int main () { + IGraphBuilder *pGraph = NULL; + HRESULT hr = CoInitialize(NULL); + hr = CoCreateInstance(&CLSID_FilterGraph, NULL, CLSCTX_INPROC_SERVER, + &IID_IGraphBuilder, (void **)&pGraph); + + return 0; +} +], + [HAVE_DIRECTSHOW="yes"], + [HAVE_DIRECTSHOW="no"]) + AC_MSG_RESULT($HAVE_DIRECTSHOW) + CFLAGS=$save_CFLAGS + LDFLAGS=$save_LDFLAGS + LIBS=$save_LIBS + + if test "x$HAVE_DIRECTSHOW" = "xyes"; then + dnl this is much more than we want + DIRECTSHOW_LIBS="-ldxguid -lole32 -luuid -lstrmiids -lksuser -lsetupapi" + AC_SUBST(DIRECTX_CFLAGS) + AC_SUBST(DIRECTX_LDFLAGS) + AC_SUBST(DIRECTSHOW_LIBS) + fi + AC_SUBST(HAVE_DIRECTSHOW) +]) + dnl *** AppleMedia (OS X and iOS) *** translit(dnm, m, l) AM_CONDITIONAL(USE_APPLE_MEDIA, true) HAVE_APPLE_MEDIA="no" @@ -902,73 +943,6 @@ AG_GST_CHECK_FEATURE(DTS, [dts library], dtsdec, [ AC_SUBST(DTS_LIBS) ]) -dnl *** DIVX *** -translit(dnm, m, l) AM_CONDITIONAL(USE_DIVX, true) -AG_GST_CHECK_FEATURE(DIVX, [divx plugins], divx, [ - HAVE_DIVX=yes - AC_CHECK_HEADER(encore2.h, , [ - AC_MSG_WARN([Divx4linux encore headers not found]) - HAVE_DIVX=no - ]) - if [ test x$HAVE_DIVX = xyes ]; then - AC_MSG_CHECKING([Checking for valid divx4linux encore version]) - AC_TRY_COMPILE([ -#include <encore2.h> -#if ENCORE_VERSION != 20021024 -#error Wrong version of divx encore libraries -#endif - ], [ -return 0; - ], [ - HAVE_DIVX=yes - ], [ - HAVE_DIVX=no - AC_MSG_WARN([Wrong version of divx4linux installed]) - ]) - fi - if [ test x$HAVE_DIVX = xyes ]; then - AC_CHECK_HEADER(decore.h, , [ - AC_MSG_WARN([Divx4linux decoder headers not found]) - HAVE_DIVX=no - ]) - fi - if [ test x$HAVE_DIVX = xyes ]; then - AC_MSG_CHECKING([Checking for valid divx4linux decore version]) - AC_TRY_COMPILE([ -#include <decore.h> -#if DECORE_VERSION != 20021112 -#error Wrong version of divx decore libraries -#endif - ], [ -return 0; - ], [ - HAVE_DIVX=yes - ], [ - HAVE_DIVX=no - AC_MSG_WARN([Wrong version of divx4linux installed]) - ]) - fi - LIBS="$LIBM" - if test x$HAVE_DIVX = xyes; then - AC_CHECK_LIB(divxencore, encore, , [ - AC_MSG_WARN([Divx4linux encore libs not found]) - HAVE_DIVX=no - ]) - fi - if test x$HAVE_DIVX = xyes; then - AC_CHECK_LIB(divxdecore, decore, , [ - AC_MSG_WARN([Divx4linux decore libs not found]) - HAVE_DIVX=no - ]) - fi - if test x$HAVE_DIVX = xyes; then - DIVXENC_LIBS="-ldivxencore $LIBM" - DIVXDEC_LIBS="-ldivxdecore $LIBM" - AC_SUBST(DIVXENC_LIBS) - AC_SUBST(DIVXDEC_LIBS) - fi -]) - dnl *** resindvd *** translit(dnm, m, l) AM_CONDITIONAL(USE_RESINDVD, true) AG_GST_CHECK_FEATURE(RESINDVD, [resindvd plugin], resindvd, [ @@ -1074,12 +1048,12 @@ AG_GST_CHECK_FEATURE(GSM, [GSM library], gsmenc gsmdec, [ AC_SUBST(GSM_LIBS) ]) -dnl *** jp2k *** -translit(dnm, m, l) AM_CONDITIONAL(USE_JP2K, true) -AG_GST_CHECK_FEATURE(JP2K, [jp2k], jp2kdec jp2kenc, [ - AG_GST_CHECK_LIBHEADER(JP2K, jasper, jas_stream_fopen, , jasper/jasper.h, - JP2K_LIBS="-ljasper") - AC_SUBST(JP2K_LIBS) +dnl *** jasper *** +translit(dnm, m, l) AM_CONDITIONAL(USE_JASPER, true) +AG_GST_CHECK_FEATURE(JASPER, [jasper], jasperdec jasperenc, [ + AG_GST_CHECK_LIBHEADER(JASPER, jasper, jas_stream_fopen, , jasper/jasper.h, + JASPER_LIBS="-ljasper") + AC_SUBST(JASPER_LIBS) ]) dnl *** kate *** @@ -1164,8 +1138,8 @@ AG_GST_CHECK_FEATURE(MODPLUG, modplug, modplug, [ dnl *** mimic *** translit(dnm, m, l) AM_CONDITIONAL(USE_MIMIC, true) AG_GST_CHECK_FEATURE(MIMIC, [libmimic library], mimic, [ - MIMDEC_REQUIRED=1.0 - PKG_CHECK_MODULES(MIMIC, libmimic >= $MIMDEC_REQUIRED, + MIMIC_REQUIRED=1.0 + PKG_CHECK_MODULES(MIMIC, libmimic >= $MIMIC_REQUIRED, HAVE_MIMIC=yes, HAVE_MIMIC=no) AC_SUBST(MIMIC_CFLAGS) AC_SUBST(MIMIC_LIBS) @@ -1280,6 +1254,14 @@ AG_GST_CHECK_FEATURE(MPEG2ENC, [mpeg2enc], mpeg2enc, [ fi ]) +dnl *** mpg123 *** +translit(dnm, m, l) AM_CONDITIONAL(USE_MPG123, true) +AG_GST_CHECK_FEATURE(MPG123, [mpg123 audio decoder], mpg123, [ + PKG_CHECK_MODULES(MPG123, libmpg123 >= 1.13, HAVE_MPG123="yes", HAVE_MPG123="no") + AC_SUBST(MPG123_CFLAGS) + AC_SUBST(MPG123_LIBS) +]) + dnl *** mplex *** translit(dnm, m, l) AM_CONDITIONAL(USE_MPLEX, true) AG_GST_CHECK_FEATURE(MPLEX, [mplex], mplex, [ @@ -1873,11 +1855,11 @@ AM_CONDITIONAL(USE_COG, false) AM_CONDITIONAL(USE_CURL, false) AM_CONDITIONAL(USE_DC1394, false) AM_CONDITIONAL(USE_DECKLINK, false) +AM_CONDITIONAL(DECKLINK_OSX, false) AM_CONDITIONAL(USE_DIRECTFB, false) AM_CONDITIONAL(USE_WAYLAND, false) AM_CONDITIONAL(USE_DIRAC, false) AM_CONDITIONAL(USE_DTS, false) -AM_CONDITIONAL(USE_DIVX, false) AM_CONDITIONAL(USE_EXIF, false) AM_CONDITIONAL(USE_RESINDVD, false) AM_CONDITIONAL(USE_FAAC, false) @@ -1885,7 +1867,7 @@ AM_CONDITIONAL(USE_FAAD, false) AM_CONDITIONAL(USE_FBDEV, false) AM_CONDITIONAL(USE_FLITE, false) AM_CONDITIONAL(USE_GSM, false) -AM_CONDITIONAL(USE_JP2K, false) +AM_CONDITIONAL(USE_JASPER, false) AM_CONDITIONAL(USE_KATE, false) AM_CONDITIONAL(USE_TIGER, false) AM_CONDITIONAL(USE_LADSPA, false) @@ -1895,6 +1877,7 @@ AM_CONDITIONAL(USE_LINSYS, false) AM_CONDITIONAL(USE_MODPLUG, false) AM_CONDITIONAL(USE_MIMIC, false) AM_CONDITIONAL(USE_MPEG2ENC, false) +AM_CONDITIONAL(USE_MPG123, false) AM_CONDITIONAL(USE_MPLEX, false) AM_CONDITIONAL(USE_MUSEPACK, false) AM_CONDITIONAL(USE_MUSICBRAINZ, false) @@ -2042,7 +2025,6 @@ gst/interlace/Makefile gst/ivfparse/Makefile gst/jp2kdecimator/Makefile gst/jpegformat/Makefile -gst/legacyresample/Makefile gst/librfb/Makefile gst/liveadder/Makefile gst/mpegdemux/Makefile @@ -2136,13 +2118,12 @@ ext/dc1394/Makefile ext/dirac/Makefile ext/directfb/Makefile ext/wayland/Makefile -ext/divx/Makefile ext/dts/Makefile ext/faac/Makefile ext/faad/Makefile ext/flite/Makefile ext/gsm/Makefile -ext/jp2k/Makefile +ext/jasper/Makefile ext/kate/Makefile ext/ladspa/Makefile ext/lv2/Makefile @@ -2150,6 +2131,7 @@ ext/libmms/Makefile ext/Makefile ext/modplug/Makefile ext/mpeg2enc/Makefile +ext/mpg123/Makefile ext/mimic/Makefile ext/mplex/Makefile ext/musepack/Makefile @@ -1,10 +1,10 @@ #! /bin/sh # depcomp - compile a program generating dependencies as side-effects -scriptversion=2011-12-04.11; # UTC +scriptversion=2012-03-27.16; # UTC # Copyright (C) 1999, 2000, 2003, 2004, 2005, 2006, 2007, 2009, 2010, -# 2011 Free Software Foundation, Inc. +# 2011, 2012 Free Software Foundation, Inc. # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by @@ -28,7 +28,7 @@ scriptversion=2011-12-04.11; # UTC case $1 in '') - echo "$0: No command. Try \`$0 --help' for more information." 1>&2 + echo "$0: No command. Try '$0 --help' for more information." 1>&2 exit 1; ;; -h | --h*) @@ -40,8 +40,8 @@ as side-effects. Environment variables: depmode Dependency tracking mode. - source Source file read by `PROGRAMS ARGS'. - object Object file output by `PROGRAMS ARGS'. + source Source file read by 'PROGRAMS ARGS'. + object Object file output by 'PROGRAMS ARGS'. DEPDIR directory where to store dependencies. depfile Dependency file to output. tmpdepfile Temporary file to use when outputting dependencies. @@ -57,6 +57,12 @@ EOF ;; esac +# A tabulation character. +tab=' ' +# A newline character. +nl=' +' + if test -z "$depmode" || test -z "$source" || test -z "$object"; then echo "depcomp: Variables source, object and depmode must be set" 1>&2 exit 1 @@ -102,6 +108,12 @@ if test "$depmode" = msvc7msys; then depmode=msvc7 fi +if test "$depmode" = xlc; then + # IBM C/C++ Compilers xlc/xlC can output gcc-like dependency informations. + gccflag=-qmakedep=gcc,-MF + depmode=gcc +fi + case "$depmode" in gcc3) ## gcc 3 implements dependency tracking that does exactly what @@ -156,15 +168,14 @@ gcc) ## The second -e expression handles DOS-style file names with drive letters. sed -e 's/^[^:]*: / /' \ -e 's/^['$alpha']:\/[^:]*: / /' < "$tmpdepfile" >> "$depfile" -## This next piece of magic avoids the `deleted header file' problem. +## This next piece of magic avoids the "deleted header file" problem. ## The problem is that when a header file which appears in a .P file ## is deleted, the dependency causes make to die (because there is ## typically no way to rebuild the header). We avoid this by adding ## dummy dependencies for each header file. Too bad gcc doesn't do ## this for us directly. - tr ' ' ' -' < "$tmpdepfile" | -## Some versions of gcc put a space before the `:'. On the theory + tr ' ' "$nl" < "$tmpdepfile" | +## Some versions of gcc put a space before the ':'. On the theory ## that the space means something, we add a space to the output as ## well. hp depmode also adds that space, but also prefixes the VPATH ## to the object. Take care to not repeat it in the output. @@ -203,18 +214,15 @@ sgi) # clever and replace this with sed code, as IRIX sed won't handle # lines with more than a fixed number of characters (4096 in # IRIX 6.2 sed, 8192 in IRIX 6.5). We also remove comment lines; - # the IRIX cc adds comments like `#:fec' to the end of the + # the IRIX cc adds comments like '#:fec' to the end of the # dependency line. - tr ' ' ' -' < "$tmpdepfile" \ + tr ' ' "$nl" < "$tmpdepfile" \ | sed -e 's/^.*\.o://' -e 's/#.*$//' -e '/^$/ d' | \ - tr ' -' ' ' >> "$depfile" + tr "$nl" ' ' >> "$depfile" echo >> "$depfile" # The second pass generates a dummy entry for each header file. - tr ' ' ' -' < "$tmpdepfile" \ + tr ' ' "$nl" < "$tmpdepfile" \ | sed -e 's/^.*\.o://' -e 's/#.*$//' -e '/^$/ d' -e 's/$/:/' \ >> "$depfile" else @@ -226,10 +234,17 @@ sgi) rm -f "$tmpdepfile" ;; +xlc) + # This case exists only to let depend.m4 do its work. It works by + # looking at the text of this script. This case will never be run, + # since it is checked for above. + exit 1 + ;; + aix) # The C for AIX Compiler uses -M and outputs the dependencies # in a .u file. In older versions, this file always lives in the - # current directory. Also, the AIX compiler puts `$object:' at the + # current directory. Also, the AIX compiler puts '$object:' at the # start of each line; $object doesn't have directory information. # Version 6 uses the directory in both cases. dir=`echo "$object" | sed -e 's|/[^/]*$|/|'` @@ -259,12 +274,11 @@ aix) test -f "$tmpdepfile" && break done if test -f "$tmpdepfile"; then - # Each line is of the form `foo.o: dependent.h'. + # Each line is of the form 'foo.o: dependent.h'. # Do two passes, one to just change these to - # `$object: dependent.h' and one to simply `dependent.h:'. + # '$object: dependent.h' and one to simply 'dependent.h:'. sed -e "s,^.*\.[a-z]*:,$object:," < "$tmpdepfile" > "$depfile" - # That's a tab and a space in the []. - sed -e 's,^.*\.[a-z]*:[ ]*,,' -e 's,$,:,' < "$tmpdepfile" >> "$depfile" + sed -e 's,^.*\.[a-z]*:['"$tab"' ]*,,' -e 's,$,:,' < "$tmpdepfile" >> "$depfile" else # The sourcefile does not contain any dependencies, so just # store a dummy comment line, to avoid errors with the Makefile @@ -275,23 +289,26 @@ aix) ;; icc) - # Intel's C compiler understands `-MD -MF file'. However on - # icc -MD -MF foo.d -c -o sub/foo.o sub/foo.c + # Intel's C compiler anf tcc (Tiny C Compiler) understand '-MD -MF file'. + # However on + # $CC -MD -MF foo.d -c -o sub/foo.o sub/foo.c # ICC 7.0 will fill foo.d with something like # foo.o: sub/foo.c # foo.o: sub/foo.h - # which is wrong. We want: + # which is wrong. We want # sub/foo.o: sub/foo.c # sub/foo.o: sub/foo.h # sub/foo.c: # sub/foo.h: # ICC 7.1 will output # foo.o: sub/foo.c sub/foo.h - # and will wrap long lines using \ : + # and will wrap long lines using '\': # foo.o: sub/foo.c ... \ # sub/foo.h ... \ # ... - + # tcc 0.9.26 (FIXME still under development at the moment of writing) + # will emit a similar output, but also prepend the continuation lines + # with horizontal tabulation characters. "$@" -MD -MF "$tmpdepfile" stat=$? if test $stat -eq 0; then : @@ -300,15 +317,21 @@ icc) exit $stat fi rm -f "$depfile" - # Each line is of the form `foo.o: dependent.h', - # or `foo.o: dep1.h dep2.h \', or ` dep3.h dep4.h \'. + # Each line is of the form 'foo.o: dependent.h', + # or 'foo.o: dep1.h dep2.h \', or ' dep3.h dep4.h \'. # Do two passes, one to just change these to - # `$object: dependent.h' and one to simply `dependent.h:'. - sed "s,^[^:]*:,$object :," < "$tmpdepfile" > "$depfile" - # Some versions of the HPUX 10.20 sed can't process this invocation - # correctly. Breaking it into two sed invocations is a workaround. - sed 's,^[^:]*: \(.*\)$,\1,;s/^\\$//;/^$/d;/:$/d' < "$tmpdepfile" | - sed -e 's/$/ :/' >> "$depfile" + # '$object: dependent.h' and one to simply 'dependent.h:'. + sed -e "s/^[ $tab][ $tab]*/ /" -e "s,^[^:]*:,$object :," \ + < "$tmpdepfile" > "$depfile" + sed ' + s/[ '"$tab"'][ '"$tab"']*/ /g + s/^ *// + s/ *\\*$// + s/^[^:]*: *// + /^$/d + /:$/d + s/$/ :/ + ' < "$tmpdepfile" >> "$depfile" rm -f "$tmpdepfile" ;; @@ -344,7 +367,7 @@ hp2) done if test -f "$tmpdepfile"; then sed -e "s,^.*\.[a-z]*:,$object:," "$tmpdepfile" > "$depfile" - # Add `dependent.h:' lines. + # Add 'dependent.h:' lines. sed -ne '2,${ s/^ *// s/ \\*$// @@ -359,9 +382,9 @@ hp2) tru64) # The Tru64 compiler uses -MD to generate dependencies as a side - # effect. `cc -MD -o foo.o ...' puts the dependencies into `foo.o.d'. + # effect. 'cc -MD -o foo.o ...' puts the dependencies into 'foo.o.d'. # At least on Alpha/Redhat 6.1, Compaq CCC V6.2-504 seems to put - # dependencies in `foo.d' instead, so we check for that too. + # dependencies in 'foo.d' instead, so we check for that too. # Subdirectories are respected. dir=`echo "$object" | sed -e 's|/[^/]*$|/|'` test "x$dir" = "x$object" && dir= @@ -407,8 +430,7 @@ tru64) done if test -f "$tmpdepfile"; then sed -e "s,^.*\.[a-z]*:,$object:," < "$tmpdepfile" > "$depfile" - # That's a tab and a space in the []. - sed -e 's,^.*\.[a-z]*:[ ]*,,' -e 's,$,:,' < "$tmpdepfile" >> "$depfile" + sed -e 's,^.*\.[a-z]*:['"$tab"' ]*,,' -e 's,$,:,' < "$tmpdepfile" >> "$depfile" else echo "#dummy" > "$depfile" fi @@ -443,11 +465,11 @@ msvc7) p }' | $cygpath_u | sort -u | sed -n ' s/ /\\ /g -s/\(.*\)/ \1 \\/p +s/\(.*\)/'"$tab"'\1 \\/p s/.\(.*\) \\/\1:/ H $ { - s/.*/ / + s/.*/'"$tab"'/ G p }' >> "$depfile" @@ -478,7 +500,7 @@ dashmstdout) shift fi - # Remove `-o $object'. + # Remove '-o $object'. IFS=" " for arg do @@ -498,15 +520,14 @@ dashmstdout) done test -z "$dashmflag" && dashmflag=-M - # Require at least two characters before searching for `:' + # Require at least two characters before searching for ':' # in the target name. This is to cope with DOS-style filenames: - # a dependency such as `c:/foo/bar' could be seen as target `c' otherwise. + # a dependency such as 'c:/foo/bar' could be seen as target 'c' otherwise. "$@" $dashmflag | - sed 's:^[ ]*[^: ][^:][^:]*\:[ ]*:'"$object"'\: :' > "$tmpdepfile" + sed 's:^['"$tab"' ]*[^:'"$tab"' ][^:][^:]*\:['"$tab"' ]*:'"$object"'\: :' > "$tmpdepfile" rm -f "$depfile" cat < "$tmpdepfile" > "$depfile" - tr ' ' ' -' < "$tmpdepfile" | \ + tr ' ' "$nl" < "$tmpdepfile" | \ ## Some versions of the HPUX 10.20 sed can't process this invocation ## correctly. Breaking it into two sed invocations is a workaround. sed -e 's/^\\$//' -e '/^$/d' -e '/:$/d' | sed -e 's/$/ :/' >> "$depfile" @@ -562,8 +583,7 @@ makedepend) # makedepend may prepend the VPATH from the source file name to the object. # No need to regex-escape $object, excess matching of '.' is harmless. sed "s|^.*\($object *:\)|\1|" "$tmpdepfile" > "$depfile" - sed '1,2d' "$tmpdepfile" | tr ' ' ' -' | \ + sed '1,2d' "$tmpdepfile" | tr ' ' "$nl" | \ ## Some versions of the HPUX 10.20 sed can't process this invocation ## correctly. Breaking it into two sed invocations is a workaround. sed -e 's/^\\$//' -e '/^$/d' -e '/:$/d' | sed -e 's/$/ :/' >> "$depfile" @@ -583,7 +603,7 @@ cpp) shift fi - # Remove `-o $object'. + # Remove '-o $object'. IFS=" " for arg do @@ -652,8 +672,8 @@ msvisualcpp) sed -n '/^#line [0-9][0-9]* "\([^"]*\)"/ s::\1:p' | $cygpath_u | sort -u > "$tmpdepfile" rm -f "$depfile" echo "$object : \\" > "$depfile" - sed < "$tmpdepfile" -n -e 's% %\\ %g' -e '/^\(.*\)$/ s:: \1 \\:p' >> "$depfile" - echo " " >> "$depfile" + sed < "$tmpdepfile" -n -e 's% %\\ %g' -e '/^\(.*\)$/ s::'"$tab"'\1 \\:p' >> "$depfile" + echo "$tab" >> "$depfile" sed < "$tmpdepfile" -n -e 's% %\\ %g' -e '/^\(.*\)$/ s::\1\::p' >> "$depfile" rm -f "$tmpdepfile" ;; diff --git a/docs/Makefile.in b/docs/Makefile.in index 6dea4401..c85a2b19 100644 --- a/docs/Makefile.in +++ b/docs/Makefile.in @@ -1,4 +1,4 @@ -# Makefile.in generated by automake 1.11.5 from Makefile.am. +# Makefile.in generated by automake 1.11.6 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, @@ -210,11 +210,10 @@ DIRECT3D_LIBS = @DIRECT3D_LIBS@ DIRECTDRAW_LIBS = @DIRECTDRAW_LIBS@ DIRECTFB_CFLAGS = @DIRECTFB_CFLAGS@ DIRECTFB_LIBS = @DIRECTFB_LIBS@ +DIRECTSHOW_LIBS = @DIRECTSHOW_LIBS@ DIRECTSOUND_LIBS = @DIRECTSOUND_LIBS@ DIRECTX_CFLAGS = @DIRECTX_CFLAGS@ DIRECTX_LDFLAGS = @DIRECTX_LDFLAGS@ -DIVXDEC_LIBS = @DIVXDEC_LIBS@ -DIVXENC_LIBS = @DIVXENC_LIBS@ DLLTOOL = @DLLTOOL@ DSYMUTIL = @DSYMUTIL@ DTS_LIBS = @DTS_LIBS@ @@ -249,7 +248,9 @@ GIO_LIBS = @GIO_LIBS@ GLIB_CFLAGS = @GLIB_CFLAGS@ GLIB_COMPILE_SCHEMAS = @GLIB_COMPILE_SCHEMAS@ GLIB_EXTRA_CFLAGS = @GLIB_EXTRA_CFLAGS@ +GLIB_GENMARSHAL = @GLIB_GENMARSHAL@ GLIB_LIBS = @GLIB_LIBS@ +GLIB_MKENUMS = @GLIB_MKENUMS@ GLIB_PREFIX = @GLIB_PREFIX@ GLIB_REQ = @GLIB_REQ@ GME_LIBS = @GME_LIBS@ @@ -325,13 +326,14 @@ HAVE_CXX = @HAVE_CXX@ HAVE_DIRECT3D = @HAVE_DIRECT3D@ HAVE_DIRECT3D9 = @HAVE_DIRECT3D9@ HAVE_DIRECTDRAW = @HAVE_DIRECTDRAW@ +HAVE_DIRECTSHOW = @HAVE_DIRECTSHOW@ HAVE_DIRECTSOUND = @HAVE_DIRECTSOUND@ HAVE_DTS = @HAVE_DTS@ HAVE_FAAC = @HAVE_FAAC@ HAVE_FAAD = @HAVE_FAAD@ HAVE_FLITE = @HAVE_FLITE@ HAVE_GSM = @HAVE_GSM@ -HAVE_JP2K = @HAVE_JP2K@ +HAVE_JASPER = @HAVE_JASPER@ HAVE_NAS = @HAVE_NAS@ HAVE_VPX = @HAVE_VPX@ HAVE_WILDMIDI = @HAVE_WILDMIDI@ @@ -345,7 +347,7 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ INTLLIBS = @INTLLIBS@ INTL_MACOSX_LIBS = @INTL_MACOSX_LIBS@ -JP2K_LIBS = @JP2K_LIBS@ +JASPER_LIBS = @JASPER_LIBS@ KATE_CFLAGS = @KATE_CFLAGS@ KATE_LIBS = @KATE_LIBS@ LD = @LD@ @@ -381,6 +383,8 @@ MODPLUG_CFLAGS = @MODPLUG_CFLAGS@ MODPLUG_LIBS = @MODPLUG_LIBS@ MPEG2ENC_CFLAGS = @MPEG2ENC_CFLAGS@ MPEG2ENC_LIBS = @MPEG2ENC_LIBS@ +MPG123_CFLAGS = @MPG123_CFLAGS@ +MPG123_LIBS = @MPG123_LIBS@ MPLEX_CFLAGS = @MPLEX_CFLAGS@ MPLEX_LDFLAGS = @MPLEX_LDFLAGS@ MPLEX_LIBS = @MPLEX_LIBS@ diff --git a/docs/libs/Makefile.in b/docs/libs/Makefile.in index 7e080f18..95f0fe6b 100644 --- a/docs/libs/Makefile.in +++ b/docs/libs/Makefile.in @@ -1,4 +1,4 @@ -# Makefile.in generated by automake 1.11.5 from Makefile.am. +# Makefile.in generated by automake 1.11.6 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, @@ -191,11 +191,10 @@ DIRECT3D_LIBS = @DIRECT3D_LIBS@ DIRECTDRAW_LIBS = @DIRECTDRAW_LIBS@ DIRECTFB_CFLAGS = @DIRECTFB_CFLAGS@ DIRECTFB_LIBS = @DIRECTFB_LIBS@ +DIRECTSHOW_LIBS = @DIRECTSHOW_LIBS@ DIRECTSOUND_LIBS = @DIRECTSOUND_LIBS@ DIRECTX_CFLAGS = @DIRECTX_CFLAGS@ DIRECTX_LDFLAGS = @DIRECTX_LDFLAGS@ -DIVXDEC_LIBS = @DIVXDEC_LIBS@ -DIVXENC_LIBS = @DIVXENC_LIBS@ DLLTOOL = @DLLTOOL@ DSYMUTIL = @DSYMUTIL@ DTS_LIBS = @DTS_LIBS@ @@ -230,7 +229,9 @@ GIO_LIBS = @GIO_LIBS@ GLIB_CFLAGS = @GLIB_CFLAGS@ GLIB_COMPILE_SCHEMAS = @GLIB_COMPILE_SCHEMAS@ GLIB_EXTRA_CFLAGS = @GLIB_EXTRA_CFLAGS@ +GLIB_GENMARSHAL = @GLIB_GENMARSHAL@ GLIB_LIBS = @GLIB_LIBS@ +GLIB_MKENUMS = @GLIB_MKENUMS@ GLIB_PREFIX = @GLIB_PREFIX@ GLIB_REQ = @GLIB_REQ@ GME_LIBS = @GME_LIBS@ @@ -306,13 +307,14 @@ HAVE_CXX = @HAVE_CXX@ HAVE_DIRECT3D = @HAVE_DIRECT3D@ HAVE_DIRECT3D9 = @HAVE_DIRECT3D9@ HAVE_DIRECTDRAW = @HAVE_DIRECTDRAW@ +HAVE_DIRECTSHOW = @HAVE_DIRECTSHOW@ HAVE_DIRECTSOUND = @HAVE_DIRECTSOUND@ HAVE_DTS = @HAVE_DTS@ HAVE_FAAC = @HAVE_FAAC@ HAVE_FAAD = @HAVE_FAAD@ HAVE_FLITE = @HAVE_FLITE@ HAVE_GSM = @HAVE_GSM@ -HAVE_JP2K = @HAVE_JP2K@ +HAVE_JASPER = @HAVE_JASPER@ HAVE_NAS = @HAVE_NAS@ HAVE_VPX = @HAVE_VPX@ HAVE_WILDMIDI = @HAVE_WILDMIDI@ @@ -326,7 +328,7 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ INTLLIBS = @INTLLIBS@ INTL_MACOSX_LIBS = @INTL_MACOSX_LIBS@ -JP2K_LIBS = @JP2K_LIBS@ +JASPER_LIBS = @JASPER_LIBS@ KATE_CFLAGS = @KATE_CFLAGS@ KATE_LIBS = @KATE_LIBS@ LD = @LD@ @@ -362,6 +364,8 @@ MODPLUG_CFLAGS = @MODPLUG_CFLAGS@ MODPLUG_LIBS = @MODPLUG_LIBS@ MPEG2ENC_CFLAGS = @MPEG2ENC_CFLAGS@ MPEG2ENC_LIBS = @MPEG2ENC_LIBS@ +MPG123_CFLAGS = @MPG123_CFLAGS@ +MPG123_LIBS = @MPG123_LIBS@ MPLEX_CFLAGS = @MPLEX_CFLAGS@ MPLEX_LDFLAGS = @MPLEX_LDFLAGS@ MPLEX_LIBS = @MPLEX_LIBS@ diff --git a/docs/libs/html/api-index-full.html b/docs/libs/html/api-index-full.html index 6b8e6692..d98a5027 100644 --- a/docs/libs/html/api-index-full.html +++ b/docs/libs/html/api-index-full.html @@ -27,8 +27,6 @@  | <a class="shortcut" href="#idxD">D</a>  | - <a class="shortcut" href="#idxF">F</a> -  | <a class="shortcut" href="#idxG">G</a>  | <a class="shortcut" href="#idxH">H</a> @@ -45,8 +43,6 @@  | <a class="shortcut" href="#idxV">V</a>  | - <a class="shortcut" href="#idxW">W</a> -  | <a class="shortcut" href="#idxZ">Z</a> </td></tr> </table> @@ -104,7 +100,7 @@ GST_BASE_CAMERA_SRC_VIEWFINDER_PAD_NAME, macro in GstBaseCameraSrc <dd></dd> <a name="idxC"></a><h3 class="title">C</h3> <dt> -<a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gst-plugins-bad/html/gst-plugins-bad-plugins-camerabin.html#GstCameraBinMode">GstCameraBinMode</a>, enum in gstcamerabin-enum +GstCameraBinMode, enum in gstcamerabin-enum </dt> <dd></dd> <dt> @@ -127,14 +123,6 @@ gst_camerabin_preview_pipeline_post, function in gstcamerabinpreview gst_camerabin_preview_set_caps, function in gstcamerabinpreview </dt> <dd></dd> -<dt> -<a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gst-plugins-bad/html/GstPhotography.html#GstColourToneMode">GstColourToneMode</a>, enum in gstphotography -</dt> -<dd></dd> -<dt> -gst_colour_tone_mode_get_type, function in photography-enumtypes -</dt> -<dd></dd> <a name="idxD"></a><h3 class="title">D</h3> <dt> DEFAULT_CAPTURE_HEIGHT, macro in gstcamerabin-enum @@ -164,39 +152,6 @@ DEFAULT_WIDTH, macro in gstcamerabin-enum DEFAULT_ZOOM, macro in gstcamerabin-enum </dt> <dd></dd> -<a name="idxF"></a><h3 class="title">F</h3> -<dt> -<a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gst-plugins-bad/html/GstPhotography.html#GstFlashMode">GstFlashMode</a>, enum in gstphotography -</dt> -<dd></dd> -<dt> -gst_flash_mode_get_type, function in photography-enumtypes -</dt> -<dd></dd> -<dt> -<a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gst-plugins-bad/html/GstPhotography.html#GstFlickerReductionMode">GstFlickerReductionMode</a>, enum in gstphotography -</dt> -<dd></dd> -<dt> -gst_flicker_reduction_mode_get_type, function in photography-enumtypes -</dt> -<dd></dd> -<dt> -<a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gst-plugins-bad/html/GstPhotography.html#GstFocusMode">GstFocusMode</a>, enum in gstphotography -</dt> -<dd></dd> -<dt> -<a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gst-plugins-bad/html/GstPhotography.html#GstFocusStatus">GstFocusStatus</a>, enum in gstphotography -</dt> -<dd></dd> -<dt> -gst_focus_mode_get_type, function in photography-enumtypes -</dt> -<dd></dd> -<dt> -gst_focus_status_get_type, function in photography-enumtypes -</dt> -<dd></dd> <a name="idxG"></a><h3 class="title">G</h3> <dt> get_aperture, user_function in gstphotography @@ -207,10 +162,6 @@ get_capabilities, user_function in gstphotography </dt> <dd></dd> <dt> -get_colour_tone_mode, user_function in gstphotography -</dt> -<dd></dd> -<dt> get_config, user_function in gstphotography </dt> <dd></dd> @@ -607,19 +558,11 @@ MIN_ZOOM, macro in GstBaseCameraSrc <dd></dd> <a name="idxP"></a><h3 class="title">P</h3> <dt> -<a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gst-plugins-bad/html/GstPhotography.html#GstPhotoCaps">GstPhotoCaps</a>, enum in gstphotography -</dt> -<dd></dd> -<dt> -<a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gst-plugins-bad/html/GstPhotography.html#GstPhotoCapturePrepared">GstPhotoCapturePrepared</a>, user_function in gstphotography -</dt> -<dd></dd> -<dt> -<a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gst-plugins-bad/html/GstPhotography.html">GstPhotography</a>, struct in gstphotography +GstPhotography, struct in gstphotography </dt> <dd></dd> <dt> -<a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gst-plugins-bad/html/GstPhotography.html#GstPhotographyNoiseReduction">GstPhotographyNoiseReduction</a>, enum in gstphotography +GstPhotographyNoiseReduction, enum in gstphotography </dt> <dd></dd> <dt> @@ -627,31 +570,27 @@ GST_PHOTOGRAPHY_AUTOFOCUS_DONE, macro in gstphotography </dt> <dd></dd> <dt> -<a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gst-plugins-bad/html/GstPhotography.html#gst-photography-get-aperture">gst_photography_get_aperture</a>, function in gstphotography +gst_photography_get_aperture, function in gstphotography </dt> <dd></dd> <dt> -<a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gst-plugins-bad/html/GstPhotography.html#gst-photography-get-capabilities">gst_photography_get_capabilities</a>, function in gstphotography +gst_photography_get_capabilities, function in gstphotography </dt> <dd></dd> <dt> -<a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gst-plugins-bad/html/GstPhotography.html#gst-photography-get-colour-tone-mode">gst_photography_get_colour_tone_mode</a>, function in gstphotography +gst_photography_get_config, function in gstphotography </dt> <dd></dd> <dt> -<a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gst-plugins-bad/html/GstPhotography.html#gst-photography-get-config">gst_photography_get_config</a>, function in gstphotography +gst_photography_get_ev_compensation, function in gstphotography </dt> <dd></dd> <dt> -<a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gst-plugins-bad/html/GstPhotography.html#gst-photography-get-ev-compensation">gst_photography_get_ev_compensation</a>, function in gstphotography +gst_photography_get_exposure, function in gstphotography </dt> <dd></dd> <dt> -<a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gst-plugins-bad/html/GstPhotography.html#gst-photography-get-exposure">gst_photography_get_exposure</a>, function in gstphotography -</dt> -<dd></dd> -<dt> -<a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gst-plugins-bad/html/GstPhotography.html#gst-photography-get-flash-mode">gst_photography_get_flash_mode</a>, function in gstphotography +gst_photography_get_flash_mode, function in gstphotography </dt> <dd></dd> <dt> @@ -663,23 +602,23 @@ gst_photography_get_focus_mode, function in gstphotography </dt> <dd></dd> <dt> -<a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gst-plugins-bad/html/GstPhotography.html#gst-photography-get-iso-speed">gst_photography_get_iso_speed</a>, function in gstphotography +gst_photography_get_iso_speed, function in gstphotography </dt> <dd></dd> <dt> -<a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gst-plugins-bad/html/GstPhotography.html#gst-photography-get-noise-reduction">gst_photography_get_noise_reduction</a>, function in gstphotography +gst_photography_get_noise_reduction, function in gstphotography </dt> <dd></dd> <dt> -<a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gst-plugins-bad/html/GstPhotography.html#gst-photography-get-scene-mode">gst_photography_get_scene_mode</a>, function in gstphotography +gst_photography_get_scene_mode, function in gstphotography </dt> <dd></dd> <dt> -<a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gst-plugins-bad/html/GstPhotography.html#gst-photography-get-white-balance-mode">gst_photography_get_white_balance_mode</a>, function in gstphotography +gst_photography_get_white_balance_mode, function in gstphotography </dt> <dd></dd> <dt> -<a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gst-plugins-bad/html/GstPhotography.html#gst-photography-get-zoom">gst_photography_get_zoom</a>, function in gstphotography +gst_photography_get_zoom, function in gstphotography </dt> <dd></dd> <dt> @@ -687,7 +626,7 @@ gst_photography_noise_reduction_get_type, function in photography-enumtypes </dt> <dd></dd> <dt> -<a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gst-plugins-bad/html/GstPhotography.html#gst-photography-prepare-for-capture">gst_photography_prepare_for_capture</a>, function in gstphotography +gst_photography_prepare_for_capture, function in gstphotography </dt> <dd></dd> <dt> @@ -699,18 +638,10 @@ GST_PHOTOGRAPHY_PROP_CAPABILITIES, macro in gstphotography </dt> <dd></dd> <dt> -GST_PHOTOGRAPHY_PROP_COLOUR_TONE, macro in gstphotography -</dt> -<dd></dd> -<dt> GST_PHOTOGRAPHY_PROP_EV_COMP, macro in gstphotography </dt> <dd></dd> <dt> -GST_PHOTOGRAPHY_PROP_EXPOSURE, macro in gstphotography -</dt> -<dd></dd> -<dt> GST_PHOTOGRAPHY_PROP_FLASH_MODE, macro in gstphotography </dt> <dd></dd> @@ -759,31 +690,27 @@ GST_PHOTOGRAPHY_PROP_ZOOM, macro in gstphotography </dt> <dd></dd> <dt> -<a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gst-plugins-bad/html/GstPhotography.html#gst-photography-set-aperture">gst_photography_set_aperture</a>, function in gstphotography -</dt> -<dd></dd> -<dt> -<a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gst-plugins-bad/html/GstPhotography.html#gst-photography-set-autofocus">gst_photography_set_autofocus</a>, function in gstphotography +gst_photography_set_aperture, function in gstphotography </dt> <dd></dd> <dt> -<a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gst-plugins-bad/html/GstPhotography.html#gst-photography-set-colour-tone-mode">gst_photography_set_colour_tone_mode</a>, function in gstphotography +gst_photography_set_autofocus, function in gstphotography </dt> <dd></dd> <dt> -<a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gst-plugins-bad/html/GstPhotography.html#gst-photography-set-config">gst_photography_set_config</a>, function in gstphotography +gst_photography_set_config, function in gstphotography </dt> <dd></dd> <dt> -<a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gst-plugins-bad/html/GstPhotography.html#gst-photography-set-ev-compensation">gst_photography_set_ev_compensation</a>, function in gstphotography +gst_photography_set_ev_compensation, function in gstphotography </dt> <dd></dd> <dt> -<a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gst-plugins-bad/html/GstPhotography.html#gst-photography-set-exposure">gst_photography_set_exposure</a>, function in gstphotography +gst_photography_set_exposure, function in gstphotography </dt> <dd></dd> <dt> -<a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gst-plugins-bad/html/GstPhotography.html#gst-photography-set-flash-mode">gst_photography_set_flash_mode</a>, function in gstphotography +gst_photography_set_flash_mode, function in gstphotography </dt> <dd></dd> <dt> @@ -795,23 +722,23 @@ gst_photography_set_focus_mode, function in gstphotography </dt> <dd></dd> <dt> -<a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gst-plugins-bad/html/GstPhotography.html#gst-photography-set-iso-speed">gst_photography_set_iso_speed</a>, function in gstphotography +gst_photography_set_iso_speed, function in gstphotography </dt> <dd></dd> <dt> -<a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gst-plugins-bad/html/GstPhotography.html#gst-photography-set-noise-reduction">gst_photography_set_noise_reduction</a>, function in gstphotography +gst_photography_set_noise_reduction, function in gstphotography </dt> <dd></dd> <dt> -<a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gst-plugins-bad/html/GstPhotography.html#gst-photography-set-scene-mode">gst_photography_set_scene_mode</a>, function in gstphotography +gst_photography_set_scene_mode, function in gstphotography </dt> <dd></dd> <dt> -<a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gst-plugins-bad/html/GstPhotography.html#gst-photography-set-white-balance-mode">gst_photography_set_white_balance_mode</a>, function in gstphotography +gst_photography_set_white_balance_mode, function in gstphotography </dt> <dd></dd> <dt> -<a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gst-plugins-bad/html/GstPhotography.html#gst-photography-set-zoom">gst_photography_set_zoom</a>, function in gstphotography +gst_photography_set_zoom, function in gstphotography </dt> <dd></dd> <dt> @@ -819,31 +746,11 @@ GST_PHOTOGRAPHY_SHAKE_RISK, macro in gstphotography </dt> <dd></dd> <dt> -<a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gst-plugins-bad/html/GstPhotography.html#GstPhotoShakeRisk">GstPhotoShakeRisk</a>, enum in gstphotography -</dt> -<dd></dd> -<dt> -gst_photo_caps_get_type, function in photography-enumtypes -</dt> -<dd></dd> -<dt> -gst_photo_shake_risk_get_type, function in photography-enumtypes -</dt> -<dd></dd> -<dt> prepare_for_capture, user_function in gstphotography </dt> <dd></dd> <a name="idxS"></a><h3 class="title">S</h3> <dt> -<a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gst-plugins-bad/html/GstPhotography.html#GstSceneMode">GstSceneMode</a>, enum in gstphotography -</dt> -<dd></dd> -<dt> -gst_scene_mode_get_type, function in photography-enumtypes -</dt> -<dd></dd> -<dt> set_aperture, user_function in gstphotography </dt> <dd></dd> @@ -852,10 +759,6 @@ set_autofocus, user_function in gstphotography </dt> <dd></dd> <dt> -set_colour_tone_mode, user_function in gstphotography -</dt> -<dd></dd> -<dt> set_config, user_function in gstphotography </dt> <dd></dd> @@ -961,45 +864,9 @@ GST_TYPE_CAMERABIN_MODE, macro in gstcamerabin-enum </dt> <dd></dd> <dt> -GST_TYPE_COLOUR_TONE_MODE, macro in photography-enumtypes -</dt> -<dd></dd> -<dt> -GST_TYPE_FLASH_MODE, macro in photography-enumtypes -</dt> -<dd></dd> -<dt> -GST_TYPE_FLICKER_REDUCTION_MODE, macro in photography-enumtypes -</dt> -<dd></dd> -<dt> -GST_TYPE_FOCUS_MODE, macro in photography-enumtypes -</dt> -<dd></dd> -<dt> -GST_TYPE_FOCUS_STATUS, macro in photography-enumtypes -</dt> -<dd></dd> -<dt> GST_TYPE_PHOTOGRAPHY_NOISE_REDUCTION, macro in photography-enumtypes </dt> <dd></dd> -<dt> -GST_TYPE_PHOTO_CAPS, macro in photography-enumtypes -</dt> -<dd></dd> -<dt> -GST_TYPE_PHOTO_SHAKE_RISK, macro in photography-enumtypes -</dt> -<dd></dd> -<dt> -GST_TYPE_SCENE_MODE, macro in photography-enumtypes -</dt> -<dd></dd> -<dt> -GST_TYPE_WHITE_BALANCE_MODE, macro in photography-enumtypes -</dt> -<dd></dd> <a name="idxV"></a><h3 class="title">V</h3> <dt> <a class="link" href="gst-plugins-bad-libs-vc1parser.html#GstVC1AdvancedSeqHdr" title="struct GstVC1AdvancedSeqHdr">GstVC1AdvancedSeqHdr</a>, struct in <a class="link" href="gst-plugins-bad-libs-vc1parser.html" title="vc1parser">vc1parser</a> @@ -1213,15 +1080,6 @@ GST_TYPE_WHITE_BALANCE_MODE, macro in photography-enumtypes <a class="link" href="gst-plugins-bad-libs-GstVideoContextInterface.html#gst-video-context-set-context-string" title="gst_video_context_set_context_string ()">gst_video_context_set_context_string</a>, function in <a class="link" href="gst-plugins-bad-libs-GstVideoContextInterface.html" title="GstVideoContextInterface">GstVideoContextInterface</a> </dt> <dd></dd> -<a name="idxW"></a><h3 class="title">W</h3> -<dt> -<a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gst-plugins-bad/html/GstPhotography.html#GstWhiteBalanceMode">GstWhiteBalanceMode</a>, enum in gstphotography -</dt> -<dd></dd> -<dt> -gst_white_balance_mode_get_type, function in photography-enumtypes -</dt> -<dd></dd> <a name="idxZ"></a><h3 class="title">Z</h3> <dt> ZOOM_1X, macro in GstBaseCameraSrc diff --git a/docs/libs/html/compiling.html b/docs/libs/html/compiling.html index 231c58f5..2972b813 100644 --- a/docs/libs/html/compiling.html +++ b/docs/libs/html/compiling.html @@ -31,7 +31,7 @@ How to compile against the bad plugins libraries <td valign="top" align="right"></td> </tr></table></div> <div class="refsect1"> -<a name="idp8346208"></a><h2>Compiling against the bad plugins libraries</h2> +<a name="idp6800176"></a><h2>Compiling against the bad plugins libraries</h2> <p> To compile against these libraries, you need to tell the compiler where to find the header files and libraries. This is done with the diff --git a/docs/libs/html/gst-plugins-bad-libs-GstSurfaceConverter.html b/docs/libs/html/gst-plugins-bad-libs-GstSurfaceConverter.html index 3b7af8ce..60e129c3 100644 --- a/docs/libs/html/gst-plugins-bad-libs-GstSurfaceConverter.html +++ b/docs/libs/html/gst-plugins-bad-libs-GstSurfaceConverter.html @@ -31,7 +31,7 @@ <div class="refnamediv"><table width="100%"><tr> <td valign="top"> <h2><span class="refentrytitle"><a name="gst-plugins-bad-libs-GstSurfaceConverter.top_of_page"></a>GstSurfaceConverter</span></h2> -<p>GstSurfaceConverter — Interface for <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gst-plugins-bad-libs/html/gst-plugins-bad-libs-GstSurfaceBuffer.html#GstSurfaceBuffer"><span class="type">GstSurfaceBuffer</span></a> convertion</p> +<p>GstSurfaceConverter — Interface for <span class="type">GstSurfaceBuffer</span> convertion</p> </td> <td valign="top" align="right"></td> </tr></table></div> @@ -62,7 +62,7 @@ uploads. The context must be discarded when the pipeline goes to <p> </p> <div class="refsect2"> -<a name="idp5327072"></a><h3>Example uploading to GL texture</h3> +<a name="idp8041232"></a><h3>Example uploading to GL texture</h3> <div class="informalexample"> <table class="listing_frame" border="0" cellpadding="0" cellspacing="0"> <tbody> @@ -72,7 +72,7 @@ uploads. The context must be discarded when the pipeline goes to 3 4</pre></td> <td class="listing_code"><pre class="programlisting"><span class="keyword">if</span> <span class="gtkdoc opt">(</span><span class="function"><a href="http://library.gnome.org/devel/glib/unstable/glib-Miscellaneous-Macros.html#G-UNLIKELY:CAPS">G_UNLIKELY</a></span> <span class="gtkdoc opt">(</span>priv<span class="gtkdoc opt">-></span>converter <span class="gtkdoc opt">==</span> NULL<span class="gtkdoc opt">))</span> - priv<span class="gtkdoc opt">-></span>converter <span class="gtkdoc opt">=</span> <span class="function"><a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gst-plugins-bad-libs/html/gst-plugins-bad-libs-GstSurfaceBuffer.html#gst-surface-buffer-create-converter">gst_surface_buffer_create_converter</a></span> <span class="gtkdoc opt">(</span>surface<span class="gtkdoc opt">,</span> <span class="string">"opengl"</span><span class="gtkdoc opt">, &</span>value<span class="gtkdoc opt">);</span> + priv<span class="gtkdoc opt">-></span>converter <span class="gtkdoc opt">=</span> <span class="function">gst_surface_buffer_create_converter</span> <span class="gtkdoc opt">(</span>surface<span class="gtkdoc opt">,</span> <span class="string">"opengl"</span><span class="gtkdoc opt">, &</span>value<span class="gtkdoc opt">);</span> <span class="function">gst_surface_converter_uplaod</span> <span class="gtkdoc opt">(</span>priv<span class="gtkdoc opt">-></span>converter<span class="gtkdoc opt">,</span> surface<span class="gtkdoc opt">);</span></pre></td> </tr> @@ -112,7 +112,7 @@ uploads. The context must be discarded when the pipeline goes to </tr> <tr> <td><p><span class="term"><em class="structfield"><code><a name="GstSurfaceConverterInterface.upload"></a>upload</code></em> ()</span></p></td> -<td>vmethod to upload <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gst-plugins-bad-libs/html/gst-plugins-bad-libs-GstSurfaceBuffer.html#GstSurfaceBuffer"><span class="type">GstSurfaceBuffer</span></a>.</td> +<td>vmethod to upload <span class="type">GstSurfaceBuffer</span>.</td> </tr> </tbody> </table></div> @@ -128,7 +128,7 @@ uploads. The context must be discarded when the pipeline goes to <pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a> gst_surface_converter_upload (<em class="parameter"><code><a class="link" href="gst-plugins-bad-libs-GstSurfaceConverter.html#GstSurfaceConverter" title="GstSurfaceConverter"><span class="type">GstSurfaceConverter</span></a> *converter</code></em>, <em class="parameter"><code><a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/gstreamer-GstBuffer.html#GstBuffer"><span class="type">GstBuffer</span></a> *buffer</code></em>);</pre> <p> -Convert and uploads the <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gst-plugins-bad-libs/html/gst-plugins-bad-libs-GstSurfaceBuffer.html#GstSurfaceBuffer"><span class="type">GstSurfaceBuffer</span></a> to the converter destination. +Convert and uploads the <span class="type">GstSurfaceBuffer</span> to the converter destination. </p> <div class="variablelist"><table border="0"> <col align="left" valign="top"> diff --git a/docs/libs/html/gst-plugins-bad-libs-GstVideoContextInterface.html b/docs/libs/html/gst-plugins-bad-libs-GstVideoContextInterface.html index 3627a3a6..d6e6e874 100644 --- a/docs/libs/html/gst-plugins-bad-libs-GstVideoContextInterface.html +++ b/docs/libs/html/gst-plugins-bad-libs-GstVideoContextInterface.html @@ -101,7 +101,7 @@ application. <p> </p> <div class="refsect2"> -<a name="idp7800688"></a><h3>For Element</h3> +<a name="idp12143472"></a><h3>For Element</h3> <p> This interface shall be implement by group of elements that need to share a specific video context (like VDPAU, LibVA, OpenGL elements) or by video @@ -153,7 +153,7 @@ application. <p> </p> <div class="refsect2"> -<a name="idp7812944"></a><h3>For Application</h3> +<a name="idp12155728"></a><h3>For Application</h3> <p> In the case there is no neighboor element with video context to share, the element will first turn toward the application, by sending a @@ -177,7 +177,7 @@ application. <p> </p> <div class="refsect2"> -<a name="idp7817440"></a><h3>Example using ClutterVideoGstVideoSink</h3> +<a name="idp12160224"></a><h3>Example using ClutterVideoGstVideoSink</h3> <p> This example is for user of ClutterGstVideoSink element, the ClutterGstPlayer object transparently handle this. @@ -245,16 +245,16 @@ application. GstVideoContext <span class="gtkdoc opt">*</span>context<span class="gtkdoc opt">;</span> <span class="gtkdoc kwb">const</span> gchar <span class="gtkdoc opt">**</span>types<span class="gtkdoc opt">;</span> - <span class="keyword">if</span> <span class="gtkdoc opt">(</span><span class="function"><a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gst-plugins-bad-libs/html/gst-plugins-bad-libs-GstVideoContextInterface.html#gst-video-context-message-parse-prepare">gst_video_context_message_parse_prepare</a></span> <span class="gtkdoc opt">(</span>message<span class="gtkdoc opt">, &</span>types<span class="gtkdoc opt">, &</span>context<span class="gtkdoc opt">)) {</span> + <span class="keyword">if</span> <span class="gtkdoc opt">(</span><span class="function"><a href="../gst-plugins-bad-libs-1.0/gst-plugins-bad-libs-GstVideoContextInterface.html#gst-video-context-message-parse-prepare">gst_video_context_message_parse_prepare</a></span> <span class="gtkdoc opt">(</span>message<span class="gtkdoc opt">, &</span>types<span class="gtkdoc opt">, &</span>context<span class="gtkdoc opt">)) {</span> gint i<span class="gtkdoc opt">;</span> <span class="keyword">for</span> <span class="gtkdoc opt">(</span>i <span class="gtkdoc opt">=</span> <span class="number">0</span><span class="gtkdoc opt">;</span> types<span class="gtkdoc opt">[</span>i<span class="gtkdoc opt">];</span> i<span class="gtkdoc opt">++) {</span> <span class="keyword">if</span> <span class="gtkdoc opt">(!</span><span class="function">strcmp</span><span class="gtkdoc opt">(</span>types<span class="gtkdoc opt">[</span>i<span class="gtkdoc opt">],</span> <span class="string">"x11-display"</span><span class="gtkdoc opt">)) {</span> - <span class="function"><a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gst-plugins-bad-libs/html/gst-plugins-bad-libs-GstVideoContextInterface.html#gst-video-context-set-context-pointer">gst_video_context_set_context_pointer</a></span> <span class="gtkdoc opt">(</span>context<span class="gtkdoc opt">,</span> <span class="string">"x11-display"</span><span class="gtkdoc opt">,</span> display<span class="gtkdoc opt">);</span> + <span class="function"><a href="../gst-plugins-bad-libs-1.0/gst-plugins-bad-libs-GstVideoContextInterface.html#gst-video-context-set-context-pointer">gst_video_context_set_context_pointer</a></span> <span class="gtkdoc opt">(</span>context<span class="gtkdoc opt">,</span> <span class="string">"x11-display"</span><span class="gtkdoc opt">,</span> display<span class="gtkdoc opt">);</span> <span class="gtkdoc opt">}</span> <span class="keyword">else if</span> <span class="gtkdoc opt">(!</span><span class="function">strcmp</span><span class="gtkdoc opt">(</span>types<span class="gtkdoc opt">[</span>i<span class="gtkdoc opt">],</span> <span class="string">"x11-display-name"</span><span class="gtkdoc opt">)) {</span> - <span class="function"><a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gst-plugins-bad-libs/html/gst-plugins-bad-libs-GstVideoContextInterface.html#gst-video-context-set-context-string">gst_video_context_set_context_string</a></span> <span class="gtkdoc opt">(</span>context<span class="gtkdoc opt">,</span> <span class="string">"x11-display-name"</span><span class="gtkdoc opt">,</span> + <span class="function"><a href="../gst-plugins-bad-libs-1.0/gst-plugins-bad-libs-GstVideoContextInterface.html#gst-video-context-set-context-string">gst_video_context_set_context_string</a></span> <span class="gtkdoc opt">(</span>context<span class="gtkdoc opt">,</span> <span class="string">"x11-display-name"</span><span class="gtkdoc opt">,</span> <span class="function">DisplayString</span> <span class="gtkdoc opt">(</span>display<span class="gtkdoc opt">));</span> <span class="gtkdoc opt">}</span> <span class="keyword">else</span> <span class="gtkdoc opt">{</span> <span class="keyword">continue</span><span class="gtkdoc opt">;</span> @@ -281,7 +281,7 @@ gint <span class="gtkdoc ppc">#if CLUTTER_WINDOWING_X11</span> <span class="function"><a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstBus.html#gst-bus-set-sync-handler">gst_bus_set_sync_handler</a></span> <span class="gtkdoc opt">(</span>priv<span class="gtkdoc opt">-></span>bus<span class="gtkdoc opt">,</span> on_sync_message<span class="gtkdoc opt">,</span> - <span class="function"><a href="/usr/share/gtk-doc/html/clutter/clutter-X11-Specific-Support.html#clutter-x11-get-default-display">clutter_x11_get_default_display</a></span> <span class="gtkdoc opt">());</span> + <span class="function">clutter_x11_get_default_display</span> <span class="gtkdoc opt">(),</span> NULL<span class="gtkdoc opt">);</span> <span class="gtkdoc ppc">#endif</span> <span class="function"><a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstObject.html#gst-object-unref">gst_object_unref</a></span> <span class="gtkdoc opt">(</span><span class="function">GST_OBJECT</span> <span class="gtkdoc opt">(</span>priv<span class="gtkdoc opt">-></span>bus<span class="gtkdoc opt">));</span> diff --git a/docs/libs/html/gst-plugins-bad-libs-mpegvideoparser.html b/docs/libs/html/gst-plugins-bad-libs-mpegvideoparser.html index 30256bc2..0bee0fe7 100644 --- a/docs/libs/html/gst-plugins-bad-libs-mpegvideoparser.html +++ b/docs/libs/html/gst-plugins-bad-libs-mpegvideoparser.html @@ -92,7 +92,7 @@ struct <a class="link" href="gst-plugins-bad-libs-mpegvideoparser.h <p> </p> <div class="refsect2"> -<a name="idp9922256"></a><p> +<a name="idp9618704"></a><p> Provides useful functions for mpeg videos bitstream parsing. </p> </div> @@ -761,7 +761,7 @@ The Quant Matrix Extension structure <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> offset</code></em>);</pre> <p> Parses the MPEG 1/2 video bitstream contained in <em class="parameter"><code>data</code></em> , and returns the -detect packets as a list of <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gst-plugins-bad-libs/html/gst-plugins-bad-libs-mpegvideoparser.html#GstMpegVideoTypeOffsetSize"><span class="type">GstMpegVideoTypeOffsetSize</span></a>. +detect packets as a list of <span class="type">GstMpegVideoTypeOffsetSize</span>. </p> <div class="variablelist"><table border="0"> <col align="left" valign="top"> diff --git a/docs/libs/html/gst-plugins-bad-libs.devhelp2 b/docs/libs/html/gst-plugins-bad-libs.devhelp2 index c98679c6..707269b6 100644 --- a/docs/libs/html/gst-plugins-bad-libs.devhelp2 +++ b/docs/libs/html/gst-plugins-bad-libs.devhelp2 @@ -63,7 +63,7 @@ <keyword type="function" name="gst_h264_nal_parser_free ()" link="gst-plugins-bad-libs-h264parser.html#gst-h264-nal-parser-free"/> <keyword type="function" name="gst_h264_parse_sps ()" link="gst-plugins-bad-libs-h264parser.html#gst-h264-parse-sps"/> <keyword type="function" name="gst_h264_parse_pps ()" link="gst-plugins-bad-libs-h264parser.html#gst-h264-parse-pps"/> - <keyword type="" name="" link="gst-plugins-bad-libs-mpegvideoparser.html#idp9922256"/> + <keyword type="" name="" link="gst-plugins-bad-libs-mpegvideoparser.html#idp9618704"/> <keyword type="enum" name="enum GstMpegVideoPacketTypeCode" link="gst-plugins-bad-libs-mpegvideoparser.html#GstMpegVideoPacketTypeCode"/> <keyword type="enum" name="enum GstMpegVideoPacketExtensionCode" link="gst-plugins-bad-libs-mpegvideoparser.html#GstMpegVideoPacketExtensionCode"/> <keyword type="enum" name="enum GstMpegVideoLevel" link="gst-plugins-bad-libs-mpegvideoparser.html#GstMpegVideoLevel"/> @@ -147,9 +147,9 @@ <keyword type="function" name="gst_vc1_bitplanes_free ()" link="gst-plugins-bad-libs-vc1parser.html#gst-vc1-bitplanes-free"/> <keyword type="function" name="gst_vc1_bitplanes_free_1 ()" link="gst-plugins-bad-libs-vc1parser.html#gst-vc1-bitplanes-free-1"/> <keyword type="function" name="gst_vc1_bitplanes_ensure_size ()" link="gst-plugins-bad-libs-vc1parser.html#gst-vc1-bitplanes-ensure-size"/> - <keyword type="" name="For Element" link="gst-plugins-bad-libs-GstVideoContextInterface.html#idp7800688"/> - <keyword type="" name="For Application" link="gst-plugins-bad-libs-GstVideoContextInterface.html#idp7812944"/> - <keyword type="" name="Example using ClutterVideoGstVideoSink" link="gst-plugins-bad-libs-GstVideoContextInterface.html#idp7817440"/> + <keyword type="" name="For Element" link="gst-plugins-bad-libs-GstVideoContextInterface.html#idp12143472"/> + <keyword type="" name="For Application" link="gst-plugins-bad-libs-GstVideoContextInterface.html#idp12155728"/> + <keyword type="" name="Example using ClutterVideoGstVideoSink" link="gst-plugins-bad-libs-GstVideoContextInterface.html#idp12160224"/> <keyword type="macro" name="GST_IS_VIDEO_CONTEXT()" link="gst-plugins-bad-libs-GstVideoContextInterface.html#GST-IS-VIDEO-CONTEXT:CAPS"/> <keyword type="struct" name="GstVideoContext" link="gst-plugins-bad-libs-GstVideoContextInterface.html#GstVideoContext"/> <keyword type="struct" name="struct GstVideoContextInterface" link="gst-plugins-bad-libs-GstVideoContextInterface.html#GstVideoContextInterface"/> @@ -168,7 +168,7 @@ <keyword type="function" name="gst_video_context_query_set_string ()" link="gst-plugins-bad-libs-GstVideoContextInterface.html#gst-video-context-query-set-string"/> <keyword type="function" name="gst_video_context_query_set_pointer ()" link="gst-plugins-bad-libs-GstVideoContextInterface.html#gst-video-context-query-set-pointer"/> <keyword type="function" name="gst_video_context_query_set_object ()" link="gst-plugins-bad-libs-GstVideoContextInterface.html#gst-video-context-query-set-object"/> - <keyword type="" name="Example uploading to GL texture" link="gst-plugins-bad-libs-GstSurfaceConverter.html#idp5327072"/> + <keyword type="" name="Example uploading to GL texture" link="gst-plugins-bad-libs-GstSurfaceConverter.html#idp8041232"/> <keyword type="struct" name="GstSurfaceConverter" link="gst-plugins-bad-libs-GstSurfaceConverter.html#GstSurfaceConverter"/> <keyword type="struct" name="struct GstSurfaceConverterInterface" link="gst-plugins-bad-libs-GstSurfaceConverter.html#GstSurfaceConverterInterface"/> <keyword type="function" name="gst_surface_converter_get_type ()" link="gst-plugins-bad-libs-GstSurfaceConverter.html#gst-surface-converter-get-type"/> diff --git a/docs/libs/html/gstreamer-plugins-bad.html b/docs/libs/html/gstreamer-plugins-bad.html index 784bedfa..ca01d718 100644 --- a/docs/libs/html/gstreamer-plugins-bad.html +++ b/docs/libs/html/gstreamer-plugins-bad.html @@ -70,7 +70,7 @@ bitstream.</span> <span class="refentrytitle"><a href="gst-plugins-bad-libs-GstSurfaceBuffer.html">GstSurfaceBuffer</a></span><span class="refpurpose"></span> </dt> <dt> -<span class="refentrytitle"><a href="gst-plugins-bad-libs-GstSurfaceConverter.html">GstSurfaceConverter</a></span><span class="refpurpose"> — Interface for <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gst-plugins-bad-libs/html/gst-plugins-bad-libs-GstSurfaceBuffer.html#GstSurfaceBuffer"><span class="type">GstSurfaceBuffer</span></a> convertion</span> +<span class="refentrytitle"><a href="gst-plugins-bad-libs-GstSurfaceConverter.html">GstSurfaceConverter</a></span><span class="refpurpose"> — Interface for <span class="type">GstSurfaceBuffer</span> convertion</span> </dt> </dl></dd> </dl> diff --git a/docs/libs/html/index.html b/docs/libs/html/index.html index cbe1fc84..06dbc5a7 100644 --- a/docs/libs/html/index.html +++ b/docs/libs/html/index.html @@ -15,7 +15,7 @@ <div> <div><table class="navigation" id="top" width="100%" cellpadding="2" cellspacing="0"><tr><th valign="middle"><p class="title">GStreamer Bad Plugins 1.0 Library Reference Manual</p></th></tr></table></div> <div><p class="releaseinfo"> - for GStreamer Bad Library 1.0 (0.11.91.1) + for GStreamer Bad Library 1.0 (0.11.93) <a class="ulink" href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gst-plugins-bad-libs/html/" target="_top">http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gst-plugins-bad-libs/html/</a>. </p></div> </div> @@ -69,7 +69,7 @@ bitstream.</span> <span class="refentrytitle"><a href="gst-plugins-bad-libs-GstSurfaceBuffer.html">GstSurfaceBuffer</a></span><span class="refpurpose"></span> </dt> <dt> -<span class="refentrytitle"><a href="gst-plugins-bad-libs-GstSurfaceConverter.html">GstSurfaceConverter</a></span><span class="refpurpose"> — Interface for <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gst-plugins-bad-libs/html/gst-plugins-bad-libs-GstSurfaceBuffer.html#GstSurfaceBuffer"><span class="type">GstSurfaceBuffer</span></a> convertion</span> +<span class="refentrytitle"><a href="gst-plugins-bad-libs-GstSurfaceConverter.html">GstSurfaceConverter</a></span><span class="refpurpose"> — Interface for <span class="type">GstSurfaceBuffer</span> convertion</span> </dt> </dl></dd> </dl></dd> diff --git a/docs/libs/html/video.html b/docs/libs/html/video.html index 1c3b23ce..dbaaa939 100644 --- a/docs/libs/html/video.html +++ b/docs/libs/html/video.html @@ -42,7 +42,7 @@ <span class="refentrytitle"><a href="gst-plugins-bad-libs-GstSurfaceBuffer.html">GstSurfaceBuffer</a></span><span class="refpurpose"></span> </dt> <dt> -<span class="refentrytitle"><a href="gst-plugins-bad-libs-GstSurfaceConverter.html">GstSurfaceConverter</a></span><span class="refpurpose"> — Interface for <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gst-plugins-bad-libs/html/gst-plugins-bad-libs-GstSurfaceBuffer.html#GstSurfaceBuffer"><span class="type">GstSurfaceBuffer</span></a> convertion</span> +<span class="refentrytitle"><a href="gst-plugins-bad-libs-GstSurfaceConverter.html">GstSurfaceConverter</a></span><span class="refpurpose"> — Interface for <span class="type">GstSurfaceBuffer</span> convertion</span> </dt> </dl></div> </div> diff --git a/docs/plugins/Makefile.am b/docs/plugins/Makefile.am index 5a0978c8..700945ab 100644 --- a/docs/plugins/Makefile.am +++ b/docs/plugins/Makefile.am @@ -115,7 +115,7 @@ EXTRA_HFILES = \ $(top_srcdir)/gst/aiff/aiffparse.h \ $(top_srcdir)/gst/aiff/aiffmux.h \ $(top_srcdir)/gst/autoconvert/gstautoconvert.h \ - $(top_srcdir)/gst/audiovisualizers/gstbaseaudiovisualizer.h \ + $(top_srcdir)/gst/audiovisualizers/gstaudiovisualizer.h \ $(top_srcdir)/gst/audiovisualizers/gstspacescope.h \ $(top_srcdir)/gst/audiovisualizers/gstspectrascope.h \ $(top_srcdir)/gst/audiovisualizers/gstsynaescope.h \ @@ -159,7 +159,6 @@ EXTRA_HFILES = \ $(top_srcdir)/gst/geometrictransform/gstwaterripple.h \ $(top_srcdir)/gst/ivfparse/gstivfparse.h \ $(top_srcdir)/gst/jpegformat/gstjpegparse.h \ - $(top_srcdir)/gst/legacyresample/gstlegacyresample.h \ $(top_srcdir)/gst/liveadder/liveadder.h \ $(top_srcdir)/gst/mxf/mxfdemux.h \ $(top_srcdir)/gst/mxf/mxfmux.h \ diff --git a/docs/plugins/Makefile.in b/docs/plugins/Makefile.in index 2539ba50..c582e719 100644 --- a/docs/plugins/Makefile.in +++ b/docs/plugins/Makefile.in @@ -1,4 +1,4 @@ -# Makefile.in generated by automake 1.11.5 from Makefile.am. +# Makefile.in generated by automake 1.11.6 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, @@ -229,11 +229,10 @@ DIRECT3D_LIBS = @DIRECT3D_LIBS@ DIRECTDRAW_LIBS = @DIRECTDRAW_LIBS@ DIRECTFB_CFLAGS = @DIRECTFB_CFLAGS@ DIRECTFB_LIBS = @DIRECTFB_LIBS@ +DIRECTSHOW_LIBS = @DIRECTSHOW_LIBS@ DIRECTSOUND_LIBS = @DIRECTSOUND_LIBS@ DIRECTX_CFLAGS = @DIRECTX_CFLAGS@ DIRECTX_LDFLAGS = @DIRECTX_LDFLAGS@ -DIVXDEC_LIBS = @DIVXDEC_LIBS@ -DIVXENC_LIBS = @DIVXENC_LIBS@ DLLTOOL = @DLLTOOL@ DSYMUTIL = @DSYMUTIL@ DTS_LIBS = @DTS_LIBS@ @@ -268,7 +267,9 @@ GIO_LIBS = @GIO_LIBS@ GLIB_CFLAGS = @GLIB_CFLAGS@ GLIB_COMPILE_SCHEMAS = @GLIB_COMPILE_SCHEMAS@ GLIB_EXTRA_CFLAGS = @GLIB_EXTRA_CFLAGS@ +GLIB_GENMARSHAL = @GLIB_GENMARSHAL@ GLIB_LIBS = @GLIB_LIBS@ +GLIB_MKENUMS = @GLIB_MKENUMS@ GLIB_PREFIX = @GLIB_PREFIX@ GLIB_REQ = @GLIB_REQ@ GME_LIBS = @GME_LIBS@ @@ -344,13 +345,14 @@ HAVE_CXX = @HAVE_CXX@ HAVE_DIRECT3D = @HAVE_DIRECT3D@ HAVE_DIRECT3D9 = @HAVE_DIRECT3D9@ HAVE_DIRECTDRAW = @HAVE_DIRECTDRAW@ +HAVE_DIRECTSHOW = @HAVE_DIRECTSHOW@ HAVE_DIRECTSOUND = @HAVE_DIRECTSOUND@ HAVE_DTS = @HAVE_DTS@ HAVE_FAAC = @HAVE_FAAC@ HAVE_FAAD = @HAVE_FAAD@ HAVE_FLITE = @HAVE_FLITE@ HAVE_GSM = @HAVE_GSM@ -HAVE_JP2K = @HAVE_JP2K@ +HAVE_JASPER = @HAVE_JASPER@ HAVE_NAS = @HAVE_NAS@ HAVE_VPX = @HAVE_VPX@ HAVE_WILDMIDI = @HAVE_WILDMIDI@ @@ -364,7 +366,7 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ INTLLIBS = @INTLLIBS@ INTL_MACOSX_LIBS = @INTL_MACOSX_LIBS@ -JP2K_LIBS = @JP2K_LIBS@ +JASPER_LIBS = @JASPER_LIBS@ KATE_CFLAGS = @KATE_CFLAGS@ KATE_LIBS = @KATE_LIBS@ LD = @LD@ @@ -400,6 +402,8 @@ MODPLUG_CFLAGS = @MODPLUG_CFLAGS@ MODPLUG_LIBS = @MODPLUG_LIBS@ MPEG2ENC_CFLAGS = @MPEG2ENC_CFLAGS@ MPEG2ENC_LIBS = @MPEG2ENC_LIBS@ +MPG123_CFLAGS = @MPG123_CFLAGS@ +MPG123_LIBS = @MPG123_LIBS@ MPLEX_CFLAGS = @MPLEX_CFLAGS@ MPLEX_LDFLAGS = @MPLEX_LDFLAGS@ MPLEX_LIBS = @MPLEX_LIBS@ @@ -711,7 +715,7 @@ EXTRA_HFILES = \ $(top_srcdir)/gst/aiff/aiffparse.h \ $(top_srcdir)/gst/aiff/aiffmux.h \ $(top_srcdir)/gst/autoconvert/gstautoconvert.h \ - $(top_srcdir)/gst/audiovisualizers/gstbaseaudiovisualizer.h \ + $(top_srcdir)/gst/audiovisualizers/gstaudiovisualizer.h \ $(top_srcdir)/gst/audiovisualizers/gstspacescope.h \ $(top_srcdir)/gst/audiovisualizers/gstspectrascope.h \ $(top_srcdir)/gst/audiovisualizers/gstsynaescope.h \ @@ -755,7 +759,6 @@ EXTRA_HFILES = \ $(top_srcdir)/gst/geometrictransform/gstwaterripple.h \ $(top_srcdir)/gst/ivfparse/gstivfparse.h \ $(top_srcdir)/gst/jpegformat/gstjpegparse.h \ - $(top_srcdir)/gst/legacyresample/gstlegacyresample.h \ $(top_srcdir)/gst/liveadder/liveadder.h \ $(top_srcdir)/gst/mxf/mxfdemux.h \ $(top_srcdir)/gst/mxf/mxfmux.h \ diff --git a/docs/plugins/gst-plugins-bad-plugins-docs.sgml b/docs/plugins/gst-plugins-bad-plugins-docs.sgml index 16d8d7c2..c427e663 100644 --- a/docs/plugins/gst-plugins-bad-plugins-docs.sgml +++ b/docs/plugins/gst-plugins-bad-plugins-docs.sgml @@ -71,7 +71,6 @@ <xi:include href="xml/element-kateparse.xml" /> <xi:include href="xml/element-katetag.xml" /> <xi:include href="xml/element-ladspa.xml" /> - <xi:include href="xml/element-legacyresample.xml" /> <xi:include href="xml/element-liveadder.xml" /> <xi:include href="xml/element-marble.xml" /> <xi:include href="xml/element-mimenc.xml" /> diff --git a/docs/plugins/gst-plugins-bad-plugins-sections.txt b/docs/plugins/gst-plugins-bad-plugins-sections.txt index 575c440f..8277276d 100644 --- a/docs/plugins/gst-plugins-bad-plugins-sections.txt +++ b/docs/plugins/gst-plugins-bad-plugins-sections.txt @@ -750,20 +750,6 @@ gst_jpeg_parse_get_type </SECTION> <SECTION> -<FILE>element-legacyresample</FILE> -<TITLE>legacyresample</TITLE> -GstLegacyresample -<SUBSECTION Standard> -GstLegacyresampleClass -GST_LEGACYRESAMPLE -GST_LEGACYRESAMPLE_CLASS -GST_IS_LEGACYRESAMPLE -GST_IS_LEGACYRESAMPLE_CLASS -GST_TYPE_LEGACYRESAMPLE -gst_legacyresample_get_type -</SECTION> - -<SECTION> <FILE>element-liveadder</FILE> <TITLE>liveadder</TITLE> GstLiveAdder @@ -1699,24 +1685,26 @@ GST_TYPE_ZBAR <FILE>gstphotography</FILE> <TITLE>GstPhotography</TITLE> GstPhotography +GST_PHOTOGRAPHY_AUTOFOCUS_DONE +GST_PHOTOGRAPHY_SHAKE_RISK GstPhotographyNoiseReduction -GstWhiteBalanceMode -GstColourToneMode -GstSceneMode -GstFlashMode -GstFlickerReductionMode -GstFocusMode -GstFocusStatus -GstPhotoCaps -GstPhotoShakeRisk -GstPhotoSettings -GstPhotoCapturePrepared +GstPhotographyWhiteBalanceMode +GstPhotographyColorToneMode +GstPhotographySceneMode +GstPhotographyFlashMode +GstPhotographyFlickerReductionMode +GstPhotographyFocusMode +GstPhotographyFocusStatus +GstPhotographyCaps +GstPhotographyShakeRisk +GstPhotographySettings +GstPhotographyCapturePrepared gst_photography_get_ev_compensation gst_photography_get_iso_speed gst_photography_get_aperture gst_photography_get_exposure gst_photography_get_white_balance_mode -gst_photography_get_colour_tone_mode +gst_photography_get_color_tone_mode gst_photography_get_scene_mode gst_photography_get_flash_mode gst_photography_get_noise_reduction @@ -1726,7 +1714,7 @@ gst_photography_set_iso_speed gst_photography_set_aperture gst_photography_set_exposure gst_photography_set_white_balance_mode -gst_photography_set_colour_tone_mode +gst_photography_set_color_tone_mode gst_photography_set_scene_mode gst_photography_set_flash_mode gst_photography_set_noise_reduction diff --git a/docs/plugins/gst-plugins-bad-plugins.signals b/docs/plugins/gst-plugins-bad-plugins.signals index ec36e8bd..1696f2a2 100644 --- a/docs/plugins/gst-plugins-bad-plugins.signals +++ b/docs/plugins/gst-plugins-bad-plugins.signals @@ -41,13 +41,6 @@ gint64 arg3 </SIGNAL> <SIGNAL> -<NAME>GstDivxEnc::frame-encoded</NAME> -<RETURNS>void</RETURNS> -<FLAGS>l</FLAGS> -GstDivxEnc *gstdivxenc -</SIGNAL> - -<SIGNAL> <NAME>GstDCCPClientSrc::connected</NAME> <RETURNS>void</RETURNS> <FLAGS>f</FLAGS> diff --git a/docs/plugins/html/GstPhotography.html b/docs/plugins/html/GstPhotography.html index 61e01f54..720fc6f9 100644 --- a/docs/plugins/html/GstPhotography.html +++ b/docs/plugins/html/GstPhotography.html @@ -43,17 +43,19 @@ <div class="refsynopsisdiv"> <a name="GstPhotography.synopsis"></a><h2>Synopsis</h2> <pre class="synopsis"> <a class="link" href="GstPhotography.html#GstPhotography-struct" title="GstPhotography">GstPhotography</a>; +#define <a class="link" href="GstPhotography.html#GST-PHOTOGRAPHY-AUTOFOCUS-DONE:CAPS" title="GST_PHOTOGRAPHY_AUTOFOCUS_DONE">GST_PHOTOGRAPHY_AUTOFOCUS_DONE</a> +#define <a class="link" href="GstPhotography.html#GST-PHOTOGRAPHY-SHAKE-RISK:CAPS" title="GST_PHOTOGRAPHY_SHAKE_RISK">GST_PHOTOGRAPHY_SHAKE_RISK</a> enum <a class="link" href="GstPhotography.html#GstPhotographyNoiseReduction" title="enum GstPhotographyNoiseReduction">GstPhotographyNoiseReduction</a>; -enum <a class="link" href="GstPhotography.html#GstWhiteBalanceMode" title="enum GstWhiteBalanceMode">GstWhiteBalanceMode</a>; -enum <a class="link" href="GstPhotography.html#GstColourToneMode" title="enum GstColourToneMode">GstColourToneMode</a>; -enum <a class="link" href="GstPhotography.html#GstSceneMode" title="enum GstSceneMode">GstSceneMode</a>; -enum <a class="link" href="GstPhotography.html#GstFlashMode" title="enum GstFlashMode">GstFlashMode</a>; -enum <a class="link" href="GstPhotography.html#GstFlickerReductionMode" title="enum GstFlickerReductionMode">GstFlickerReductionMode</a>; -enum <a class="link" href="GstPhotography.html#GstFocusMode" title="enum GstFocusMode">GstFocusMode</a>; -enum <a class="link" href="GstPhotography.html#GstFocusStatus" title="enum GstFocusStatus">GstFocusStatus</a>; -enum <a class="link" href="GstPhotography.html#GstPhotoCaps" title="enum GstPhotoCaps">GstPhotoCaps</a>; -enum <a class="link" href="GstPhotography.html#GstPhotoShakeRisk" title="enum GstPhotoShakeRisk">GstPhotoShakeRisk</a>; -<span class="returnvalue">void</span> (<a class="link" href="GstPhotography.html#GstPhotoCapturePrepared" title="GstPhotoCapturePrepared ()">*GstPhotoCapturePrepared</a>) (<em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> data</code></em>, +enum <a class="link" href="GstPhotography.html#GstPhotographyWhiteBalanceMode" title="enum GstPhotographyWhiteBalanceMode">GstPhotographyWhiteBalanceMode</a>; +enum <a class="link" href="GstPhotography.html#GstPhotographyColorToneMode" title="enum GstPhotographyColorToneMode">GstPhotographyColorToneMode</a>; +enum <a class="link" href="GstPhotography.html#GstPhotographySceneMode" title="enum GstPhotographySceneMode">GstPhotographySceneMode</a>; +enum <a class="link" href="GstPhotography.html#GstPhotographyFlashMode" title="enum GstPhotographyFlashMode">GstPhotographyFlashMode</a>; +enum <a class="link" href="GstPhotography.html#GstPhotographyFlickerReductionMode" title="enum GstPhotographyFlickerReductionMode">GstPhotographyFlickerReductionMode</a>; +enum <a class="link" href="GstPhotography.html#GstPhotographyFocusMode" title="enum GstPhotographyFocusMode">GstPhotographyFocusMode</a>; +enum <a class="link" href="GstPhotography.html#GstPhotographyFocusStatus" title="enum GstPhotographyFocusStatus">GstPhotographyFocusStatus</a>; +enum <a class="link" href="GstPhotography.html#GstPhotographyCaps" title="enum GstPhotographyCaps">GstPhotographyCaps</a>; +enum <a class="link" href="GstPhotography.html#GstPhotographyShakeRisk" title="enum GstPhotographyShakeRisk">GstPhotographyShakeRisk</a>; +<span class="returnvalue">void</span> (<a class="link" href="GstPhotography.html#GstPhotographyCapturePrepared" title="GstPhotographyCapturePrepared ()">*GstPhotographyCapturePrepared</a>) (<em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> data</code></em>, <em class="parameter"><code>const <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/gstreamer-GstCaps.html#GstCaps"><span class="type">GstCaps</span></a> *configured_caps</code></em>); <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a> <a class="link" href="GstPhotography.html#gst-photography-get-ev-compensation" title="gst_photography_get_ev_compensation ()">gst_photography_get_ev_compensation</a> (<em class="parameter"><code><a class="link" href="GstPhotography.html" title="GstPhotography"><span class="type">GstPhotography</span></a> *photo</code></em>, <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gfloat"><span class="type">gfloat</span></a> *ev_comp</code></em>); @@ -65,14 +67,13 @@ enum <a class="link" href="GstPhotography.html#GstPhotoShakeRisk" <em class="parameter"><code><span class="type">guint32</span> *exposure</code></em>); <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a> <a class="link" href="GstPhotography.html#gst-photography-get-white-balance-mode" title="gst_photography_get_white_balance_mode ()">gst_photography_get_white_balance_mode</a> (<em class="parameter"><code><a class="link" href="GstPhotography.html" title="GstPhotography"><span class="type">GstPhotography</span></a> *photo</code></em>, - <em class="parameter"><code><a class="link" href="GstPhotography.html#GstWhiteBalanceMode" title="enum GstWhiteBalanceMode"><span class="type">GstWhiteBalanceMode</span></a> *wb_mode</code></em>); -<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a> <a class="link" href="GstPhotography.html#gst-photography-get-colour-tone-mode" title="gst_photography_get_colour_tone_mode ()">gst_photography_get_colour_tone_mode</a> - (<em class="parameter"><code><a class="link" href="GstPhotography.html" title="GstPhotography"><span class="type">GstPhotography</span></a> *photo</code></em>, - <em class="parameter"><code><a class="link" href="GstPhotography.html#GstColourToneMode" title="enum GstColourToneMode"><span class="type">GstColourToneMode</span></a> *tone_mode</code></em>); + <em class="parameter"><code><a class="link" href="GstPhotography.html#GstPhotographyWhiteBalanceMode" title="enum GstPhotographyWhiteBalanceMode"><span class="type">GstPhotographyWhiteBalanceMode</span></a> *wb_mode</code></em>); +<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a> <a class="link" href="GstPhotography.html#gst-photography-get-color-tone-mode" title="gst_photography_get_color_tone_mode ()">gst_photography_get_color_tone_mode</a> (<em class="parameter"><code><a class="link" href="GstPhotography.html" title="GstPhotography"><span class="type">GstPhotography</span></a> *photo</code></em>, + <em class="parameter"><code><a class="link" href="GstPhotography.html#GstPhotographyColorToneMode" title="enum GstPhotographyColorToneMode"><span class="type">GstPhotographyColorToneMode</span></a> *tone_mode</code></em>); <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a> <a class="link" href="GstPhotography.html#gst-photography-get-scene-mode" title="gst_photography_get_scene_mode ()">gst_photography_get_scene_mode</a> (<em class="parameter"><code><a class="link" href="GstPhotography.html" title="GstPhotography"><span class="type">GstPhotography</span></a> *photo</code></em>, - <em class="parameter"><code><a class="link" href="GstPhotography.html#GstSceneMode" title="enum GstSceneMode"><span class="type">GstSceneMode</span></a> *scene_mode</code></em>); + <em class="parameter"><code><a class="link" href="GstPhotography.html#GstPhotographySceneMode" title="enum GstPhotographySceneMode"><span class="type">GstPhotographySceneMode</span></a> *scene_mode</code></em>); <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a> <a class="link" href="GstPhotography.html#gst-photography-get-flash-mode" title="gst_photography_get_flash_mode ()">gst_photography_get_flash_mode</a> (<em class="parameter"><code><a class="link" href="GstPhotography.html" title="GstPhotography"><span class="type">GstPhotography</span></a> *photo</code></em>, - <em class="parameter"><code><a class="link" href="GstPhotography.html#GstFlashMode" title="enum GstFlashMode"><span class="type">GstFlashMode</span></a> *flash_mode</code></em>); + <em class="parameter"><code><a class="link" href="GstPhotography.html#GstPhotographyFlashMode" title="enum GstPhotographyFlashMode"><span class="type">GstPhotographyFlashMode</span></a> *flash_mode</code></em>); <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a> <a class="link" href="GstPhotography.html#gst-photography-get-noise-reduction" title="gst_photography_get_noise_reduction ()">gst_photography_get_noise_reduction</a> (<em class="parameter"><code><a class="link" href="GstPhotography.html" title="GstPhotography"><span class="type">GstPhotography</span></a> *photo</code></em>, <em class="parameter"><code><a class="link" href="GstPhotography.html#GstPhotographyNoiseReduction" title="enum GstPhotographyNoiseReduction"><span class="type">GstPhotographyNoiseReduction</span></a> *noise_reduction</code></em>); <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a> <a class="link" href="GstPhotography.html#gst-photography-get-zoom" title="gst_photography_get_zoom ()">gst_photography_get_zoom</a> (<em class="parameter"><code><a class="link" href="GstPhotography.html" title="GstPhotography"><span class="type">GstPhotography</span></a> *photo</code></em>, @@ -87,29 +88,28 @@ enum <a class="link" href="GstPhotography.html#GstPhotoShakeRisk" <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> exposure</code></em>); <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a> <a class="link" href="GstPhotography.html#gst-photography-set-white-balance-mode" title="gst_photography_set_white_balance_mode ()">gst_photography_set_white_balance_mode</a> (<em class="parameter"><code><a class="link" href="GstPhotography.html" title="GstPhotography"><span class="type">GstPhotography</span></a> *photo</code></em>, - <em class="parameter"><code><a class="link" href="GstPhotography.html#GstWhiteBalanceMode" title="enum GstWhiteBalanceMode"><span class="type">GstWhiteBalanceMode</span></a> wb_mode</code></em>); -<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a> <a class="link" href="GstPhotography.html#gst-photography-set-colour-tone-mode" title="gst_photography_set_colour_tone_mode ()">gst_photography_set_colour_tone_mode</a> - (<em class="parameter"><code><a class="link" href="GstPhotography.html" title="GstPhotography"><span class="type">GstPhotography</span></a> *photo</code></em>, - <em class="parameter"><code><a class="link" href="GstPhotography.html#GstColourToneMode" title="enum GstColourToneMode"><span class="type">GstColourToneMode</span></a> tone_mode</code></em>); + <em class="parameter"><code><a class="link" href="GstPhotography.html#GstPhotographyWhiteBalanceMode" title="enum GstPhotographyWhiteBalanceMode"><span class="type">GstPhotographyWhiteBalanceMode</span></a> wb_mode</code></em>); +<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a> <a class="link" href="GstPhotography.html#gst-photography-set-color-tone-mode" title="gst_photography_set_color_tone_mode ()">gst_photography_set_color_tone_mode</a> (<em class="parameter"><code><a class="link" href="GstPhotography.html" title="GstPhotography"><span class="type">GstPhotography</span></a> *photo</code></em>, + <em class="parameter"><code><a class="link" href="GstPhotography.html#GstPhotographyColorToneMode" title="enum GstPhotographyColorToneMode"><span class="type">GstPhotographyColorToneMode</span></a> tone_mode</code></em>); <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a> <a class="link" href="GstPhotography.html#gst-photography-set-scene-mode" title="gst_photography_set_scene_mode ()">gst_photography_set_scene_mode</a> (<em class="parameter"><code><a class="link" href="GstPhotography.html" title="GstPhotography"><span class="type">GstPhotography</span></a> *photo</code></em>, - <em class="parameter"><code><a class="link" href="GstPhotography.html#GstSceneMode" title="enum GstSceneMode"><span class="type">GstSceneMode</span></a> scene_mode</code></em>); + <em class="parameter"><code><a class="link" href="GstPhotography.html#GstPhotographySceneMode" title="enum GstPhotographySceneMode"><span class="type">GstPhotographySceneMode</span></a> scene_mode</code></em>); <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a> <a class="link" href="GstPhotography.html#gst-photography-set-flash-mode" title="gst_photography_set_flash_mode ()">gst_photography_set_flash_mode</a> (<em class="parameter"><code><a class="link" href="GstPhotography.html" title="GstPhotography"><span class="type">GstPhotography</span></a> *photo</code></em>, - <em class="parameter"><code><a class="link" href="GstPhotography.html#GstFlashMode" title="enum GstFlashMode"><span class="type">GstFlashMode</span></a> flash_mode</code></em>); + <em class="parameter"><code><a class="link" href="GstPhotography.html#GstPhotographyFlashMode" title="enum GstPhotographyFlashMode"><span class="type">GstPhotographyFlashMode</span></a> flash_mode</code></em>); <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a> <a class="link" href="GstPhotography.html#gst-photography-set-noise-reduction" title="gst_photography_set_noise_reduction ()">gst_photography_set_noise_reduction</a> (<em class="parameter"><code><a class="link" href="GstPhotography.html" title="GstPhotography"><span class="type">GstPhotography</span></a> *photo</code></em>, <em class="parameter"><code><a class="link" href="GstPhotography.html#GstPhotographyNoiseReduction" title="enum GstPhotographyNoiseReduction"><span class="type">GstPhotographyNoiseReduction</span></a> noise_reduction</code></em>); <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a> <a class="link" href="GstPhotography.html#gst-photography-set-zoom" title="gst_photography_set_zoom ()">gst_photography_set_zoom</a> (<em class="parameter"><code><a class="link" href="GstPhotography.html" title="GstPhotography"><span class="type">GstPhotography</span></a> *photo</code></em>, <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gfloat"><span class="type">gfloat</span></a> zoom</code></em>); -<a class="link" href="GstPhotography.html#GstPhotoCaps" title="enum GstPhotoCaps"><span class="returnvalue">GstPhotoCaps</span></a> <a class="link" href="GstPhotography.html#gst-photography-get-capabilities" title="gst_photography_get_capabilities ()">gst_photography_get_capabilities</a> (<em class="parameter"><code><a class="link" href="GstPhotography.html" title="GstPhotography"><span class="type">GstPhotography</span></a> *photo</code></em>); +<a class="link" href="GstPhotography.html#GstPhotographyCaps" title="enum GstPhotographyCaps"><span class="returnvalue">GstPhotographyCaps</span></a> <a class="link" href="GstPhotography.html#gst-photography-get-capabilities" title="gst_photography_get_capabilities ()">gst_photography_get_capabilities</a> (<em class="parameter"><code><a class="link" href="GstPhotography.html" title="GstPhotography"><span class="type">GstPhotography</span></a> *photo</code></em>); <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a> <a class="link" href="GstPhotography.html#gst-photography-prepare-for-capture" title="gst_photography_prepare_for_capture ()">gst_photography_prepare_for_capture</a> (<em class="parameter"><code><a class="link" href="GstPhotography.html" title="GstPhotography"><span class="type">GstPhotography</span></a> *photo</code></em>, - <em class="parameter"><code><a class="link" href="GstPhotography.html#GstPhotoCapturePrepared" title="GstPhotoCapturePrepared ()"><span class="type">GstPhotoCapturePrepared</span></a> func</code></em>, + <em class="parameter"><code><a class="link" href="GstPhotography.html#GstPhotographyCapturePrepared" title="GstPhotographyCapturePrepared ()"><span class="type">GstPhotographyCapturePrepared</span></a> func</code></em>, <em class="parameter"><code><a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/gstreamer-GstCaps.html#GstCaps"><span class="type">GstCaps</span></a> *capture_caps</code></em>, <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data</code></em>); <span class="returnvalue">void</span> <a class="link" href="GstPhotography.html#gst-photography-set-autofocus" title="gst_photography_set_autofocus ()">gst_photography_set_autofocus</a> (<em class="parameter"><code><a class="link" href="GstPhotography.html" title="GstPhotography"><span class="type">GstPhotography</span></a> *photo</code></em>, <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> on</code></em>); <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a> <a class="link" href="GstPhotography.html#gst-photography-set-config" title="gst_photography_set_config ()">gst_photography_set_config</a> (<em class="parameter"><code><a class="link" href="GstPhotography.html" title="GstPhotography"><span class="type">GstPhotography</span></a> *photo</code></em>, - <em class="parameter"><code><span class="type">GstPhotoSettings</span> *config</code></em>); + <em class="parameter"><code><span class="type">GstPhotographySettings</span> *config</code></em>); <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a> <a class="link" href="GstPhotography.html#gst-photography-get-config" title="gst_photography_get_config ()">gst_photography_get_config</a> (<em class="parameter"><code><a class="link" href="GstPhotography.html" title="GstPhotography"><span class="type">GstPhotography</span></a> *photo</code></em>, - <em class="parameter"><code><span class="type">GstPhotoSettings</span> *config</code></em>); + <em class="parameter"><code><span class="type">GstPhotographySettings</span> *config</code></em>); </pre> </div> <div class="refsect1"> @@ -130,16 +130,16 @@ GstPhotography requires <pre class="synopsis"> "<a class="link" href="GstPhotography.html#GstPhotography--aperture" title='The "aperture" property'>aperture</a>" <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> : Read / Write "<a class="link" href="GstPhotography.html#GstPhotography--capabilities" title='The "capabilities" property'>capabilities</a>" <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gulong"><span class="type">gulong</span></a> : Read - "<a class="link" href="GstPhotography.html#GstPhotography--colour-tone-mode" title='The "colour-tone-mode" property'>colour-tone-mode</a>" <a class="link" href="GstPhotography.html#GstColourToneMode" title="enum GstColourToneMode"><span class="type">GstColourToneMode</span></a> : Read / Write + "<a class="link" href="GstPhotography.html#GstPhotography--colour-tone-mode" title='The "colour-tone-mode" property'>colour-tone-mode</a>" <span class="type">GstColourToneMode</span> : Read / Write "<a class="link" href="GstPhotography.html#GstPhotography--ev-compensation" title='The "ev-compensation" property'>ev-compensation</a>" <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gfloat"><span class="type">gfloat</span></a> : Read / Write "<a class="link" href="GstPhotography.html#GstPhotography--exposure" title='The "exposure" property'>exposure</a>" <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> : Read / Write - "<a class="link" href="GstPhotography.html#GstPhotography--flash-mode" title='The "flash-mode" property'>flash-mode</a>" <a class="link" href="GstPhotography.html#GstFlashMode" title="enum GstFlashMode"><span class="type">GstFlashMode</span></a> : Read / Write - "<a class="link" href="GstPhotography.html#GstPhotography--flicker-mode" title='The "flicker-mode" property'>flicker-mode</a>" <a class="link" href="GstPhotography.html#GstFlickerReductionMode" title="enum GstFlickerReductionMode"><span class="type">GstFlickerReductionMode</span></a> : Read / Write - "<a class="link" href="GstPhotography.html#GstPhotography--focus-mode" title='The "focus-mode" property'>focus-mode</a>" <a class="link" href="GstPhotography.html#GstFocusMode" title="enum GstFocusMode"><span class="type">GstFocusMode</span></a> : Read / Write + "<a class="link" href="GstPhotography.html#GstPhotography--flash-mode" title='The "flash-mode" property'>flash-mode</a>" <span class="type">GstFlashMode</span> : Read / Write + "<a class="link" href="GstPhotography.html#GstPhotography--flicker-mode" title='The "flicker-mode" property'>flicker-mode</a>" <span class="type">GstFlickerReductionMode</span> : Read / Write + "<a class="link" href="GstPhotography.html#GstPhotography--focus-mode" title='The "focus-mode" property'>focus-mode</a>" <span class="type">GstFocusMode</span> : Read / Write "<a class="link" href="GstPhotography.html#GstPhotography--image-capture-supported-caps" title='The "image-capture-supported-caps" property'>image-capture-supported-caps</a>" <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/gstreamer-GstCaps.html#GstCaps"><span class="type">GstCaps</span></a>* : Read "<a class="link" href="GstPhotography.html#GstPhotography--iso-speed" title='The "iso-speed" property'>iso-speed</a>" <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> : Read / Write - "<a class="link" href="GstPhotography.html#GstPhotography--scene-mode" title='The "scene-mode" property'>scene-mode</a>" <a class="link" href="GstPhotography.html#GstSceneMode" title="enum GstSceneMode"><span class="type">GstSceneMode</span></a> : Read / Write - "<a class="link" href="GstPhotography.html#GstPhotography--white-balance-mode" title='The "white-balance-mode" property'>white-balance-mode</a>" <a class="link" href="GstPhotography.html#GstWhiteBalanceMode" title="enum GstWhiteBalanceMode"><span class="type">GstWhiteBalanceMode</span></a> : Read / Write + "<a class="link" href="GstPhotography.html#GstPhotography--scene-mode" title='The "scene-mode" property'>scene-mode</a>" <span class="type">GstSceneMode</span> : Read / Write + "<a class="link" href="GstPhotography.html#GstPhotography--white-balance-mode" title='The "white-balance-mode" property'>white-balance-mode</a>" <span class="type">GstWhiteBalanceMode</span> : Read / Write "<a class="link" href="GstPhotography.html#GstPhotography--image-preview-supported-caps" title='The "image-preview-supported-caps" property'>image-preview-supported-caps</a>" <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/gstreamer-GstCaps.html#GstCaps"><span class="type">GstCaps</span></a>* : Read "<a class="link" href="GstPhotography.html#GstPhotography--noise-reduction" title='The "noise-reduction" property'>noise-reduction</a>" <a class="link" href="GstPhotography.html#GstPhotographyNoiseReduction" title="enum GstPhotographyNoiseReduction"><span class="type">GstPhotographyNoiseReduction</span></a> : Read / Write "<a class="link" href="GstPhotography.html#GstPhotography--zoom" title='The "zoom" property'>zoom</a>" <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gfloat"><span class="type">gfloat</span></a> : Read / Write @@ -160,6 +160,22 @@ GstPhotography requires </div> <hr> <div class="refsect2"> +<a name="GST-PHOTOGRAPHY-AUTOFOCUS-DONE:CAPS"></a><h3>GST_PHOTOGRAPHY_AUTOFOCUS_DONE</h3> +<pre class="programlisting">#define GST_PHOTOGRAPHY_AUTOFOCUS_DONE "autofocus-done" +</pre> +<p> +</p> +</div> +<hr> +<div class="refsect2"> +<a name="GST-PHOTOGRAPHY-SHAKE-RISK:CAPS"></a><h3>GST_PHOTOGRAPHY_SHAKE_RISK</h3> +<pre class="programlisting">#define GST_PHOTOGRAPHY_SHAKE_RISK "shake-risk" +</pre> +<p> +</p> +</div> +<hr> +<div class="refsect2"> <a name="GstPhotographyNoiseReduction"></a><h3>enum GstPhotographyNoiseReduction</h3> <pre class="programlisting">typedef enum { GST_PHOTOGRAPHY_NOISE_REDUCTION_BAYER = ( 1<<0 ), @@ -174,43 +190,44 @@ GstPhotography requires </div> <hr> <div class="refsect2"> -<a name="GstWhiteBalanceMode"></a><h3>enum GstWhiteBalanceMode</h3> +<a name="GstPhotographyWhiteBalanceMode"></a><h3>enum GstPhotographyWhiteBalanceMode</h3> <pre class="programlisting">typedef enum { GST_PHOTOGRAPHY_WB_MODE_AUTO = 0, GST_PHOTOGRAPHY_WB_MODE_DAYLIGHT, GST_PHOTOGRAPHY_WB_MODE_CLOUDY, GST_PHOTOGRAPHY_WB_MODE_SUNSET, GST_PHOTOGRAPHY_WB_MODE_TUNGSTEN, - GST_PHOTOGRAPHY_WB_MODE_FLUORESCENT -} GstWhiteBalanceMode; + GST_PHOTOGRAPHY_WB_MODE_FLUORESCENT, + GST_PHOTOGRAPHY_WB_MODE_MANUAL +} GstPhotographyWhiteBalanceMode; </pre> <p> </p> </div> <hr> <div class="refsect2"> -<a name="GstColourToneMode"></a><h3>enum GstColourToneMode</h3> +<a name="GstPhotographyColorToneMode"></a><h3>enum GstPhotographyColorToneMode</h3> <pre class="programlisting">typedef enum { - GST_PHOTOGRAPHY_COLOUR_TONE_MODE_NORMAL = 0, - GST_PHOTOGRAPHY_COLOUR_TONE_MODE_SEPIA, - GST_PHOTOGRAPHY_COLOUR_TONE_MODE_NEGATIVE, - GST_PHOTOGRAPHY_COLOUR_TONE_MODE_GRAYSCALE, - GST_PHOTOGRAPHY_COLOUR_TONE_MODE_NATURAL, - GST_PHOTOGRAPHY_COLOUR_TONE_MODE_VIVID, - GST_PHOTOGRAPHY_COLOUR_TONE_MODE_COLORSWAP, - GST_PHOTOGRAPHY_COLOUR_TONE_MODE_SOLARIZE, - GST_PHOTOGRAPHY_COLOUR_TONE_MODE_OUT_OF_FOCUS, - GST_PHOTOGRAPHY_COLOUR_TONE_MODE_SKY_BLUE, - GST_PHOTOGRAPHY_COLOUR_TONE_MODE_GRASS_GREEN, - GST_PHOTOGRAPHY_COLOUR_TONE_MODE_SKIN_WHITEN -} GstColourToneMode; + GST_PHOTOGRAPHY_COLOR_TONE_MODE_NORMAL = 0, + GST_PHOTOGRAPHY_COLOR_TONE_MODE_SEPIA, + GST_PHOTOGRAPHY_COLOR_TONE_MODE_NEGATIVE, + GST_PHOTOGRAPHY_COLOR_TONE_MODE_GRAYSCALE, + GST_PHOTOGRAPHY_COLOR_TONE_MODE_NATURAL, + GST_PHOTOGRAPHY_COLOR_TONE_MODE_VIVID, + GST_PHOTOGRAPHY_COLOR_TONE_MODE_COLORSWAP, + GST_PHOTOGRAPHY_COLOR_TONE_MODE_SOLARIZE, + GST_PHOTOGRAPHY_COLOR_TONE_MODE_OUT_OF_FOCUS, + GST_PHOTOGRAPHY_COLOR_TONE_MODE_SKY_BLUE, + GST_PHOTOGRAPHY_COLOR_TONE_MODE_GRASS_GREEN, + GST_PHOTOGRAPHY_COLOR_TONE_MODE_SKIN_WHITEN +} GstPhotographyColorToneMode; </pre> <p> </p> </div> <hr> <div class="refsect2"> -<a name="GstSceneMode"></a><h3>enum GstSceneMode</h3> +<a name="GstPhotographySceneMode"></a><h3>enum GstPhotographySceneMode</h3> <pre class="programlisting">typedef enum { GST_PHOTOGRAPHY_SCENE_MODE_MANUAL = 0, GST_PHOTOGRAPHY_SCENE_MODE_CLOSEUP, @@ -219,41 +236,41 @@ GstPhotography requires GST_PHOTOGRAPHY_SCENE_MODE_SPORT, GST_PHOTOGRAPHY_SCENE_MODE_NIGHT, GST_PHOTOGRAPHY_SCENE_MODE_AUTO -} GstSceneMode; +} GstPhotographySceneMode; </pre> <p> </p> </div> <hr> <div class="refsect2"> -<a name="GstFlashMode"></a><h3>enum GstFlashMode</h3> +<a name="GstPhotographyFlashMode"></a><h3>enum GstPhotographyFlashMode</h3> <pre class="programlisting">typedef enum { GST_PHOTOGRAPHY_FLASH_MODE_AUTO = 0, GST_PHOTOGRAPHY_FLASH_MODE_OFF, GST_PHOTOGRAPHY_FLASH_MODE_ON, GST_PHOTOGRAPHY_FLASH_MODE_FILL_IN, GST_PHOTOGRAPHY_FLASH_MODE_RED_EYE -} GstFlashMode; +} GstPhotographyFlashMode; </pre> <p> </p> </div> <hr> <div class="refsect2"> -<a name="GstFlickerReductionMode"></a><h3>enum GstFlickerReductionMode</h3> +<a name="GstPhotographyFlickerReductionMode"></a><h3>enum GstPhotographyFlickerReductionMode</h3> <pre class="programlisting">typedef enum { GST_PHOTOGRAPHY_FLICKER_REDUCTION_OFF = 0, GST_PHOTOGRAPHY_FLICKER_REDUCTION_50HZ, GST_PHOTOGRAPHY_FLICKER_REDUCTION_60HZ, GST_PHOTOGRAPHY_FLICKER_REDUCTION_AUTO, -} GstFlickerReductionMode; +} GstPhotographyFlickerReductionMode; </pre> <p> </p> </div> <hr> <div class="refsect2"> -<a name="GstFocusMode"></a><h3>enum GstFocusMode</h3> +<a name="GstPhotographyFocusMode"></a><h3>enum GstPhotographyFocusMode</h3> <pre class="programlisting">typedef enum { GST_PHOTOGRAPHY_FOCUS_MODE_AUTO = 0, GST_PHOTOGRAPHY_FOCUS_MODE_MACRO, @@ -263,27 +280,28 @@ GstPhotography requires GST_PHOTOGRAPHY_FOCUS_MODE_EXTENDED, GST_PHOTOGRAPHY_FOCUS_MODE_CONTINUOUS_NORMAL, GST_PHOTOGRAPHY_FOCUS_MODE_CONTINUOUS_EXTENDED, -} GstFocusMode; + GST_PHOTOGRAPHY_FOCUS_MODE_MANUAL +} GstPhotographyFocusMode; </pre> <p> </p> </div> <hr> <div class="refsect2"> -<a name="GstFocusStatus"></a><h3>enum GstFocusStatus</h3> +<a name="GstPhotographyFocusStatus"></a><h3>enum GstPhotographyFocusStatus</h3> <pre class="programlisting">typedef enum { GST_PHOTOGRAPHY_FOCUS_STATUS_NONE = 0, GST_PHOTOGRAPHY_FOCUS_STATUS_RUNNING, GST_PHOTOGRAPHY_FOCUS_STATUS_FAIL, GST_PHOTOGRAPHY_FOCUS_STATUS_SUCCESS -} GstFocusStatus; +} GstPhotographyFocusStatus; </pre> <p> </p> </div> <hr> <div class="refsect2"> -<a name="GstPhotoCaps"></a><h3>enum GstPhotoCaps</h3> +<a name="GstPhotographyCaps"></a><h3>enum GstPhotographyCaps</h3> <pre class="programlisting">typedef enum { GST_PHOTOGRAPHY_CAPS_NONE = (0 << 0), GST_PHOTOGRAPHY_CAPS_EV_COMP = (1 << 0), @@ -297,30 +315,31 @@ GstPhotography requires GST_PHOTOGRAPHY_CAPS_APERTURE = (1 << 8), GST_PHOTOGRAPHY_CAPS_EXPOSURE = (1 << 9), GST_PHOTOGRAPHY_CAPS_SHAKE = (1 << 10), - GST_PHOTOGRAPHY_CAPS_NOISE_REDUCTION = (1 << 11), - GST_PHOTOGRAPHY_CAPS_FLICKER_REDUCTION = (1 << 12), + GST_PHOTOGRAPHY_CAPS_WHITE_BALANCE = (1 << 11), + GST_PHOTOGRAPHY_CAPS_NOISE_REDUCTION = (1 << 12), + GST_PHOTOGRAPHY_CAPS_FLICKER_REDUCTION = (1 << 13), GST_PHOTOGRAPHY_CAPS_ALL = (~0) -} GstPhotoCaps; +} GstPhotographyCaps; </pre> <p> </p> </div> <hr> <div class="refsect2"> -<a name="GstPhotoShakeRisk"></a><h3>enum GstPhotoShakeRisk</h3> +<a name="GstPhotographyShakeRisk"></a><h3>enum GstPhotographyShakeRisk</h3> <pre class="programlisting">typedef enum { GST_PHOTOGRAPHY_SHAKE_RISK_LOW = 0, GST_PHOTOGRAPHY_SHAKE_RISK_MEDIUM, GST_PHOTOGRAPHY_SHAKE_RISK_HIGH, -} GstPhotoShakeRisk; +} GstPhotographyShakeRisk; </pre> <p> </p> </div> <hr> <div class="refsect2"> -<a name="GstPhotoCapturePrepared"></a><h3>GstPhotoCapturePrepared ()</h3> -<pre class="programlisting"><span class="returnvalue">void</span> (*GstPhotoCapturePrepared) (<em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> data</code></em>, +<a name="GstPhotographyCapturePrepared"></a><h3>GstPhotographyCapturePrepared ()</h3> +<pre class="programlisting"><span class="returnvalue">void</span> (*GstPhotographyCapturePrepared) (<em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> data</code></em>, <em class="parameter"><code>const <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/gstreamer-GstCaps.html#GstCaps"><span class="type">GstCaps</span></a> *configured_caps</code></em>);</pre> <p> </p> @@ -362,16 +381,15 @@ GstPhotography requires <a name="gst-photography-get-white-balance-mode"></a><h3>gst_photography_get_white_balance_mode ()</h3> <pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a> gst_photography_get_white_balance_mode (<em class="parameter"><code><a class="link" href="GstPhotography.html" title="GstPhotography"><span class="type">GstPhotography</span></a> *photo</code></em>, - <em class="parameter"><code><a class="link" href="GstPhotography.html#GstWhiteBalanceMode" title="enum GstWhiteBalanceMode"><span class="type">GstWhiteBalanceMode</span></a> *wb_mode</code></em>);</pre> + <em class="parameter"><code><a class="link" href="GstPhotography.html#GstPhotographyWhiteBalanceMode" title="enum GstPhotographyWhiteBalanceMode"><span class="type">GstPhotographyWhiteBalanceMode</span></a> *wb_mode</code></em>);</pre> <p> </p> </div> <hr> <div class="refsect2"> -<a name="gst-photography-get-colour-tone-mode"></a><h3>gst_photography_get_colour_tone_mode ()</h3> -<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a> gst_photography_get_colour_tone_mode - (<em class="parameter"><code><a class="link" href="GstPhotography.html" title="GstPhotography"><span class="type">GstPhotography</span></a> *photo</code></em>, - <em class="parameter"><code><a class="link" href="GstPhotography.html#GstColourToneMode" title="enum GstColourToneMode"><span class="type">GstColourToneMode</span></a> *tone_mode</code></em>);</pre> +<a name="gst-photography-get-color-tone-mode"></a><h3>gst_photography_get_color_tone_mode ()</h3> +<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a> gst_photography_get_color_tone_mode (<em class="parameter"><code><a class="link" href="GstPhotography.html" title="GstPhotography"><span class="type">GstPhotography</span></a> *photo</code></em>, + <em class="parameter"><code><a class="link" href="GstPhotography.html#GstPhotographyColorToneMode" title="enum GstPhotographyColorToneMode"><span class="type">GstPhotographyColorToneMode</span></a> *tone_mode</code></em>);</pre> <p> </p> </div> @@ -379,7 +397,7 @@ GstPhotography requires <div class="refsect2"> <a name="gst-photography-get-scene-mode"></a><h3>gst_photography_get_scene_mode ()</h3> <pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a> gst_photography_get_scene_mode (<em class="parameter"><code><a class="link" href="GstPhotography.html" title="GstPhotography"><span class="type">GstPhotography</span></a> *photo</code></em>, - <em class="parameter"><code><a class="link" href="GstPhotography.html#GstSceneMode" title="enum GstSceneMode"><span class="type">GstSceneMode</span></a> *scene_mode</code></em>);</pre> + <em class="parameter"><code><a class="link" href="GstPhotography.html#GstPhotographySceneMode" title="enum GstPhotographySceneMode"><span class="type">GstPhotographySceneMode</span></a> *scene_mode</code></em>);</pre> <p> </p> </div> @@ -387,7 +405,7 @@ GstPhotography requires <div class="refsect2"> <a name="gst-photography-get-flash-mode"></a><h3>gst_photography_get_flash_mode ()</h3> <pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a> gst_photography_get_flash_mode (<em class="parameter"><code><a class="link" href="GstPhotography.html" title="GstPhotography"><span class="type">GstPhotography</span></a> *photo</code></em>, - <em class="parameter"><code><a class="link" href="GstPhotography.html#GstFlashMode" title="enum GstFlashMode"><span class="type">GstFlashMode</span></a> *flash_mode</code></em>);</pre> + <em class="parameter"><code><a class="link" href="GstPhotography.html#GstPhotographyFlashMode" title="enum GstPhotographyFlashMode"><span class="type">GstPhotographyFlashMode</span></a> *flash_mode</code></em>);</pre> <p> </p> </div> @@ -444,16 +462,15 @@ GstPhotography requires <a name="gst-photography-set-white-balance-mode"></a><h3>gst_photography_set_white_balance_mode ()</h3> <pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a> gst_photography_set_white_balance_mode (<em class="parameter"><code><a class="link" href="GstPhotography.html" title="GstPhotography"><span class="type">GstPhotography</span></a> *photo</code></em>, - <em class="parameter"><code><a class="link" href="GstPhotography.html#GstWhiteBalanceMode" title="enum GstWhiteBalanceMode"><span class="type">GstWhiteBalanceMode</span></a> wb_mode</code></em>);</pre> + <em class="parameter"><code><a class="link" href="GstPhotography.html#GstPhotographyWhiteBalanceMode" title="enum GstPhotographyWhiteBalanceMode"><span class="type">GstPhotographyWhiteBalanceMode</span></a> wb_mode</code></em>);</pre> <p> </p> </div> <hr> <div class="refsect2"> -<a name="gst-photography-set-colour-tone-mode"></a><h3>gst_photography_set_colour_tone_mode ()</h3> -<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a> gst_photography_set_colour_tone_mode - (<em class="parameter"><code><a class="link" href="GstPhotography.html" title="GstPhotography"><span class="type">GstPhotography</span></a> *photo</code></em>, - <em class="parameter"><code><a class="link" href="GstPhotography.html#GstColourToneMode" title="enum GstColourToneMode"><span class="type">GstColourToneMode</span></a> tone_mode</code></em>);</pre> +<a name="gst-photography-set-color-tone-mode"></a><h3>gst_photography_set_color_tone_mode ()</h3> +<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a> gst_photography_set_color_tone_mode (<em class="parameter"><code><a class="link" href="GstPhotography.html" title="GstPhotography"><span class="type">GstPhotography</span></a> *photo</code></em>, + <em class="parameter"><code><a class="link" href="GstPhotography.html#GstPhotographyColorToneMode" title="enum GstPhotographyColorToneMode"><span class="type">GstPhotographyColorToneMode</span></a> tone_mode</code></em>);</pre> <p> </p> </div> @@ -461,7 +478,7 @@ GstPhotography requires <div class="refsect2"> <a name="gst-photography-set-scene-mode"></a><h3>gst_photography_set_scene_mode ()</h3> <pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a> gst_photography_set_scene_mode (<em class="parameter"><code><a class="link" href="GstPhotography.html" title="GstPhotography"><span class="type">GstPhotography</span></a> *photo</code></em>, - <em class="parameter"><code><a class="link" href="GstPhotography.html#GstSceneMode" title="enum GstSceneMode"><span class="type">GstSceneMode</span></a> scene_mode</code></em>);</pre> + <em class="parameter"><code><a class="link" href="GstPhotography.html#GstPhotographySceneMode" title="enum GstPhotographySceneMode"><span class="type">GstPhotographySceneMode</span></a> scene_mode</code></em>);</pre> <p> </p> </div> @@ -469,7 +486,7 @@ GstPhotography requires <div class="refsect2"> <a name="gst-photography-set-flash-mode"></a><h3>gst_photography_set_flash_mode ()</h3> <pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a> gst_photography_set_flash_mode (<em class="parameter"><code><a class="link" href="GstPhotography.html" title="GstPhotography"><span class="type">GstPhotography</span></a> *photo</code></em>, - <em class="parameter"><code><a class="link" href="GstPhotography.html#GstFlashMode" title="enum GstFlashMode"><span class="type">GstFlashMode</span></a> flash_mode</code></em>);</pre> + <em class="parameter"><code><a class="link" href="GstPhotography.html#GstPhotographyFlashMode" title="enum GstPhotographyFlashMode"><span class="type">GstPhotographyFlashMode</span></a> flash_mode</code></em>);</pre> <p> </p> </div> @@ -492,7 +509,7 @@ GstPhotography requires <hr> <div class="refsect2"> <a name="gst-photography-get-capabilities"></a><h3>gst_photography_get_capabilities ()</h3> -<pre class="programlisting"><a class="link" href="GstPhotography.html#GstPhotoCaps" title="enum GstPhotoCaps"><span class="returnvalue">GstPhotoCaps</span></a> gst_photography_get_capabilities (<em class="parameter"><code><a class="link" href="GstPhotography.html" title="GstPhotography"><span class="type">GstPhotography</span></a> *photo</code></em>);</pre> +<pre class="programlisting"><a class="link" href="GstPhotography.html#GstPhotographyCaps" title="enum GstPhotographyCaps"><span class="returnvalue">GstPhotographyCaps</span></a> gst_photography_get_capabilities (<em class="parameter"><code><a class="link" href="GstPhotography.html" title="GstPhotography"><span class="type">GstPhotography</span></a> *photo</code></em>);</pre> <p> </p> </div> @@ -500,7 +517,7 @@ GstPhotography requires <div class="refsect2"> <a name="gst-photography-prepare-for-capture"></a><h3>gst_photography_prepare_for_capture ()</h3> <pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a> gst_photography_prepare_for_capture (<em class="parameter"><code><a class="link" href="GstPhotography.html" title="GstPhotography"><span class="type">GstPhotography</span></a> *photo</code></em>, - <em class="parameter"><code><a class="link" href="GstPhotography.html#GstPhotoCapturePrepared" title="GstPhotoCapturePrepared ()"><span class="type">GstPhotoCapturePrepared</span></a> func</code></em>, + <em class="parameter"><code><a class="link" href="GstPhotography.html#GstPhotographyCapturePrepared" title="GstPhotographyCapturePrepared ()"><span class="type">GstPhotographyCapturePrepared</span></a> func</code></em>, <em class="parameter"><code><a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/gstreamer-GstCaps.html#GstCaps"><span class="type">GstCaps</span></a> *capture_caps</code></em>, <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data</code></em>);</pre> <p> @@ -518,7 +535,7 @@ GstPhotography requires <div class="refsect2"> <a name="gst-photography-set-config"></a><h3>gst_photography_set_config ()</h3> <pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a> gst_photography_set_config (<em class="parameter"><code><a class="link" href="GstPhotography.html" title="GstPhotography"><span class="type">GstPhotography</span></a> *photo</code></em>, - <em class="parameter"><code><span class="type">GstPhotoSettings</span> *config</code></em>);</pre> + <em class="parameter"><code><span class="type">GstPhotographySettings</span> *config</code></em>);</pre> <p> </p> </div> @@ -526,7 +543,7 @@ GstPhotography requires <div class="refsect2"> <a name="gst-photography-get-config"></a><h3>gst_photography_get_config ()</h3> <pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a> gst_photography_get_config (<em class="parameter"><code><a class="link" href="GstPhotography.html" title="GstPhotography"><span class="type">GstPhotography</span></a> *photo</code></em>, - <em class="parameter"><code><span class="type">GstPhotoSettings</span> *config</code></em>);</pre> + <em class="parameter"><code><span class="type">GstPhotographySettings</span> *config</code></em>);</pre> <p> </p> </div> @@ -549,7 +566,7 @@ GstPhotography requires <hr> <div class="refsect2"> <a name="GstPhotography--colour-tone-mode"></a><h3>The <code class="literal">"colour-tone-mode"</code> property</h3> -<pre class="programlisting"> "colour-tone-mode" <a class="link" href="GstPhotography.html#GstColourToneMode" title="enum GstColourToneMode"><span class="type">GstColourToneMode</span></a> : Read / Write</pre> +<pre class="programlisting"> "colour-tone-mode" <span class="type">GstColourToneMode</span> : Read / Write</pre> <p>Colour tone setting changes colour shading in the photo.</p> <p>Default value: GST_PHOTOGRAPHY_COLOUR_TONE_MODE_NORMAL</p> </div> @@ -571,21 +588,21 @@ GstPhotography requires <hr> <div class="refsect2"> <a name="GstPhotography--flash-mode"></a><h3>The <code class="literal">"flash-mode"</code> property</h3> -<pre class="programlisting"> "flash-mode" <a class="link" href="GstPhotography.html#GstFlashMode" title="enum GstFlashMode"><span class="type">GstFlashMode</span></a> : Read / Write</pre> +<pre class="programlisting"> "flash-mode" <span class="type">GstFlashMode</span> : Read / Write</pre> <p>Flash mode defines how the flash light should be used.</p> <p>Default value: GST_PHOTOGRAPHY_FLASH_MODE_AUTO</p> </div> <hr> <div class="refsect2"> <a name="GstPhotography--flicker-mode"></a><h3>The <code class="literal">"flicker-mode"</code> property</h3> -<pre class="programlisting"> "flicker-mode" <a class="link" href="GstPhotography.html#GstFlickerReductionMode" title="enum GstFlickerReductionMode"><span class="type">GstFlickerReductionMode</span></a> : Read / Write</pre> +<pre class="programlisting"> "flicker-mode" <span class="type">GstFlickerReductionMode</span> : Read / Write</pre> <p>Flicker reduction mode defines a line frequency for flickering prevention.</p> <p>Default value: GST_PHOTOGRAPHY_FLICKER_REDUCTION_OFF</p> </div> <hr> <div class="refsect2"> <a name="GstPhotography--focus-mode"></a><h3>The <code class="literal">"focus-mode"</code> property</h3> -<pre class="programlisting"> "focus-mode" <a class="link" href="GstPhotography.html#GstFocusMode" title="enum GstFocusMode"><span class="type">GstFocusMode</span></a> : Read / Write</pre> +<pre class="programlisting"> "focus-mode" <span class="type">GstFocusMode</span> : Read / Write</pre> <p>Focus mode defines the range of focal lengths to use in autofocus search.</p> <p>Default value: GST_PHOTOGRAPHY_FOCUS_MODE_AUTO</p> </div> @@ -606,14 +623,14 @@ GstPhotography requires <hr> <div class="refsect2"> <a name="GstPhotography--scene-mode"></a><h3>The <code class="literal">"scene-mode"</code> property</h3> -<pre class="programlisting"> "scene-mode" <a class="link" href="GstPhotography.html#GstSceneMode" title="enum GstSceneMode"><span class="type">GstSceneMode</span></a> : Read / Write</pre> +<pre class="programlisting"> "scene-mode" <span class="type">GstSceneMode</span> : Read / Write</pre> <p>Scene mode works as a preset for different photo shooting mode settings.</p> <p>Default value: GST_PHOTOGRAPHY_SCENE_MODE_AUTO</p> </div> <hr> <div class="refsect2"> <a name="GstPhotography--white-balance-mode"></a><h3>The <code class="literal">"white-balance-mode"</code> property</h3> -<pre class="programlisting"> "white-balance-mode" <a class="link" href="GstPhotography.html#GstWhiteBalanceMode" title="enum GstWhiteBalanceMode"><span class="type">GstWhiteBalanceMode</span></a> : Read / Write</pre> +<pre class="programlisting"> "white-balance-mode" <span class="type">GstWhiteBalanceMode</span> : Read / Write</pre> <p>White balance affects the color temperature of the photo.</p> <p>Default value: GST_PHOTOGRAPHY_WB_MODE_AUTO</p> </div> diff --git a/docs/plugins/html/ch01.html b/docs/plugins/html/ch01.html index 814d984c..aee69575 100644 --- a/docs/plugins/html/ch01.html +++ b/docs/plugins/html/ch01.html @@ -21,7 +21,7 @@ </tr></table> <div class="chapter"> <div class="titlepage"><div><div><h2 class="title"> -<a name="idp2412656"></a>gst-plugins-bad Elements</h2></div></div></div> +<a name="idp180320"></a>gst-plugins-bad Elements</h2></div></div></div> <div class="toc"><dl> <dt> <span class="refentrytitle"><a href="gst-plugins-bad-plugins-aiffparse.html">aiffparse</a></span><span class="refpurpose"> — Parse a .aiff file into raw audio</span> @@ -42,7 +42,7 @@ <span class="refentrytitle"><a href="gst-plugins-bad-plugins-burn.html">burn</a></span><span class="refpurpose"> — Burn adjusts the colors in the video signal.</span> </dt> <dt> -<span class="refentrytitle"><a href="gst-plugins-bad-plugins-camerabin.html">camerabin</a></span><span class="refpurpose"> — Take image snapshots and record movies from camera</span> +<span class="refentrytitle"><a href="gst-plugins-bad-plugins-camerabin.html">camerabin</a></span><span class="refpurpose"></span> </dt> <dt> <span class="refentrytitle"><a href="gst-plugins-bad-plugins-celtdec.html">celtdec</a></span><span class="refpurpose"> — decode celt streams to audio</span> @@ -183,9 +183,6 @@ <span class="refentrytitle"><a href="gst-plugins-bad-plugins-ladspa.html">ladspa</a></span><span class="refpurpose"></span> </dt> <dt> -<span class="refentrytitle"><a href="gst-plugins-bad-plugins-legacyresample.html">legacyresample</a></span><span class="refpurpose"> — Resample audio</span> -</dt> -<dt> <span class="refentrytitle"><a href="gst-plugins-bad-plugins-liveadder.html">liveadder</a></span><span class="refpurpose"> — Mixes live/discontinuous audio streams</span> </dt> <dt> @@ -345,7 +342,7 @@ <span class="refentrytitle"><a href="gst-plugins-bad-plugins-voaacenc.html">voaacenc</a></span><span class="refpurpose"> — AAC audio encoder</span> </dt> <dt> -<span class="refentrytitle"><a href="gst-plugins-bad-plugins-voamrwbenc.html">voamrwbenc</a></span><span class="refpurpose"> — Adaptive Multi-Rate Wideband audio encoder</span> +<span class="refentrytitle"><a href="gst-plugins-bad-plugins-voamrwbenc.html">voamrwbenc</a></span><span class="refpurpose"></span> </dt> <dt> <span class="refentrytitle"><a href="gst-plugins-bad-plugins-vp8dec.html">vp8dec</a></span><span class="refpurpose"> — Decode VP8 video streams</span> diff --git a/docs/plugins/html/ch02.html b/docs/plugins/html/ch02.html index 3a373498..2ca048da 100644 --- a/docs/plugins/html/ch02.html +++ b/docs/plugins/html/ch02.html @@ -21,7 +21,7 @@ </tr></table> <div class="chapter"> <div class="titlepage"><div><div><h2 class="title"> -<a name="idp89264"></a>gst-plugins-bad Plugins</h2></div></div></div> +<a name="idp95744"></a>gst-plugins-bad Plugins</h2></div></div></div> <div class="toc"><dl> <dt> <span class="refentrytitle"><a href="gst-plugins-bad-plugins-plugin-aiff.html">aiff</a></span><span class="refpurpose"> — <a name="plugin-aiff"></a>Create and parse Audio Interchange File Format (AIFF) files</span> @@ -33,9 +33,6 @@ <span class="refentrytitle"><a href="gst-plugins-bad-plugins-plugin-autoconvert.html">autoconvert</a></span><span class="refpurpose"> — <a name="plugin-autoconvert"></a>Selects convertor element based on caps</span> </dt> <dt> -<span class="refentrytitle"><a href="gst-plugins-bad-plugins-plugin-legacyresample.html">legacyresample</a></span><span class="refpurpose"> — <a name="plugin-legacyresample"></a>Resamples audio</span> -</dt> -<dt> <span class="refentrytitle"><a href="gst-plugins-bad-plugins-plugin-assrender.html">assrender</a></span><span class="refpurpose"> — <a name="plugin-assrender"></a>ASS/SSA subtitle renderer</span> </dt> <dt> @@ -45,9 +42,6 @@ <span class="refentrytitle"><a href="gst-plugins-bad-plugins-plugin-bz2.html">bz2</a></span><span class="refpurpose"> — <a name="plugin-bz2"></a>Compress or decompress streams</span> </dt> <dt> -<span class="refentrytitle"><a href="gst-plugins-bad-plugins-plugin-camerabin.html">camerabin</a></span><span class="refpurpose"> — <a name="plugin-camerabin"></a>Take image snapshots and record movies from camera</span> -</dt> -<dt> <span class="refentrytitle"><a href="gst-plugins-bad-plugins-plugin-cdaudio.html">cdaudio</a></span><span class="refpurpose"> — <a name="plugin-cdaudio"></a>Play CD audio through the CD Drive</span> </dt> <dt> @@ -270,15 +264,13 @@ <span class="refentrytitle"><a href="gst-plugins-bad-plugins-plugin-voaacenc.html">voaacenc</a></span><span class="refpurpose"> — <a name="plugin-voaacenc"></a>AAC audio encoder</span> </dt> <dt> -<span class="refentrytitle"><a href="gst-plugins-bad-plugins-plugin-voamrwbenc.html">voamrwbenc</a></span><span class="refpurpose"> — <a name="plugin-voamrwbenc"></a>Adaptive Multi-Rate Wide-Band Encoder</span> -</dt> -<dt> <span class="refentrytitle"><a href="gst-plugins-bad-plugins-plugin-vp8.html">vp8</a></span><span class="refpurpose"> — <a name="plugin-vp8"></a>VP8 plugin</span> </dt> <dt> <span class="refentrytitle"><a href="gst-plugins-bad-plugins-plugin-zbar.html">zbar</a></span><span class="refpurpose"> — <a name="plugin-zbar"></a>zbar barcode scanner</span> </dt> </dl></div> +<span style="color: red"><xi:include></xi:include></span><span style="color: red"><xi:include></xi:include></span><span style="color: red"><xi:include></xi:include></span> </div> <div class="footer"> <hr> diff --git a/docs/plugins/html/ch03.html b/docs/plugins/html/ch03.html index 583ff742..6a2c020c 100644 --- a/docs/plugins/html/ch03.html +++ b/docs/plugins/html/ch03.html @@ -21,7 +21,7 @@ </tr></table> <div class="chapter"> <div class="titlepage"><div><div><h2 class="title"> -<a name="idp4598224"></a>gst-plugins-bad Interfaces</h2></div></div></div> +<a name="idp5222192"></a>gst-plugins-bad Interfaces</h2></div></div></div> <div class="toc"><dl><dt> <span class="refentrytitle"><a href="GstPhotography.html">GstPhotography</a></span><span class="refpurpose"></span> </dt></dl></div> diff --git a/docs/plugins/html/gst-plugins-bad-plugins-aiffmux.html b/docs/plugins/html/gst-plugins-bad-plugins-aiffmux.html index 5c1b6289..e694ce5e 100644 --- a/docs/plugins/html/gst-plugins-bad-plugins-aiffmux.html +++ b/docs/plugins/html/gst-plugins-bad-plugins-aiffmux.html @@ -48,7 +48,7 @@ Format an audio stream into the Audio Interchange File Format <div class="refsynopsisdiv"> <h2>Synopsis</h2> <div class="refsect2"> -<a name="idp7566096"></a><h3>Element Information</h3> +<a name="idm5328"></a><h3>Element Information</h3> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> @@ -71,7 +71,7 @@ Format an audio stream into the Audio Interchange File Format </div> <hr> <div class="refsect2"> -<a name="idp6515904"></a><h3>Element Pads</h3> +<a name="idp2882240"></a><h3>Element Pads</h3> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> diff --git a/docs/plugins/html/gst-plugins-bad-plugins-aiffparse.html b/docs/plugins/html/gst-plugins-bad-plugins-aiffparse.html index 0ac40434..2f828aa9 100644 --- a/docs/plugins/html/gst-plugins-bad-plugins-aiffparse.html +++ b/docs/plugins/html/gst-plugins-bad-plugins-aiffparse.html @@ -45,7 +45,7 @@ <p> </p> <div class="refsect2"> -<a name="idp4612320"></a><h3>Example launch line</h3> +<a name="idp2839760"></a><h3>Example launch line</h3> <p> Parse a .aiff file into raw or compressed audio. </p> @@ -76,7 +76,7 @@ Stream data from a network url. <div class="refsynopsisdiv"> <h2>Synopsis</h2> <div class="refsect2"> -<a name="idm33920"></a><h3>Element Information</h3> +<a name="idp2837072"></a><h3>Element Information</h3> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> @@ -99,7 +99,7 @@ Stream data from a network url. </div> <hr> <div class="refsect2"> -<a name="idp7659040"></a><h3>Element Pads</h3> +<a name="idp8518944"></a><h3>Element Pads</h3> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> diff --git a/docs/plugins/html/gst-plugins-bad-plugins-assrender.html b/docs/plugins/html/gst-plugins-bad-plugins-assrender.html index a95e3c4a..421fc279 100644 --- a/docs/plugins/html/gst-plugins-bad-plugins-assrender.html +++ b/docs/plugins/html/gst-plugins-bad-plugins-assrender.html @@ -66,7 +66,7 @@ <div class="refsynopsisdiv"> <h2>Synopsis</h2> <div class="refsect2"> -<a name="idp7048848"></a><h3>Element Information</h3> +<a name="idp2829696"></a><h3>Element Information</h3> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> @@ -89,7 +89,7 @@ </div> <hr> <div class="refsect2"> -<a name="idp8398624"></a><h3>Element Pads</h3> +<a name="idp9032096"></a><h3>Element Pads</h3> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> diff --git a/docs/plugins/html/gst-plugins-bad-plugins-autoconvert.html b/docs/plugins/html/gst-plugins-bad-plugins-autoconvert.html index a6849a26..11cb0a09 100644 --- a/docs/plugins/html/gst-plugins-bad-plugins-autoconvert.html +++ b/docs/plugins/html/gst-plugins-bad-plugins-autoconvert.html @@ -87,7 +87,7 @@ elements. <div class="refsynopsisdiv"> <h2>Synopsis</h2> <div class="refsect2"> -<a name="idp8803024"></a><h3>Element Information</h3> +<a name="idp8989648"></a><h3>Element Information</h3> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> @@ -110,7 +110,7 @@ elements. </div> <hr> <div class="refsect2"> -<a name="idp6295408"></a><h3>Element Pads</h3> +<a name="idp9554912"></a><h3>Element Pads</h3> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> diff --git a/docs/plugins/html/gst-plugins-bad-plugins-bulge.html b/docs/plugins/html/gst-plugins-bad-plugins-bulge.html index 9e638c53..dc80c48f 100644 --- a/docs/plugins/html/gst-plugins-bad-plugins-bulge.html +++ b/docs/plugins/html/gst-plugins-bad-plugins-bulge.html @@ -69,7 +69,7 @@ <div class="refsynopsisdiv"> <h2>Synopsis</h2> <div class="refsect2"> -<a name="idp8682960"></a><h3>Element Information</h3> +<a name="idp8525232"></a><h3>Element Information</h3> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> @@ -92,7 +92,7 @@ </div> <hr> <div class="refsect2"> -<a name="idp8727488"></a><h3>Element Pads</h3> +<a name="idp8434096"></a><h3>Element Pads</h3> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> diff --git a/docs/plugins/html/gst-plugins-bad-plugins-burn.html b/docs/plugins/html/gst-plugins-bad-plugins-burn.html index e4b583ec..36405ad0 100644 --- a/docs/plugins/html/gst-plugins-bad-plugins-burn.html +++ b/docs/plugins/html/gst-plugins-bad-plugins-burn.html @@ -71,7 +71,7 @@ Burn adjusts the colors of a video stream in realtime. <p> </p> <div class="refsect2"> -<a name="idp6636688"></a><h3>Example launch line</h3> +<a name="idp8106800"></a><h3>Example launch line</h3> <div class="informalexample"> <table class="listing_frame" border="0" cellpadding="0" cellspacing="0"> <tbody> @@ -89,7 +89,7 @@ Burn adjusts the colors of a video stream in realtime. <div class="refsynopsisdiv"> <h2>Synopsis</h2> <div class="refsect2"> -<a name="idp7018064"></a><h3>Element Information</h3> +<a name="idp9238224"></a><h3>Element Information</h3> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> @@ -112,7 +112,7 @@ Burn adjusts the colors of a video stream in realtime. </div> <hr> <div class="refsect2"> -<a name="idp6597760"></a><h3>Element Pads</h3> +<a name="idp6053072"></a><h3>Element Pads</h3> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> diff --git a/docs/plugins/html/gst-plugins-bad-plugins-camerabin.html b/docs/plugins/html/gst-plugins-bad-plugins-camerabin.html index a3d5293e..6215fb39 100644 --- a/docs/plugins/html/gst-plugins-bad-plugins-camerabin.html +++ b/docs/plugins/html/gst-plugins-bad-plugins-camerabin.html @@ -31,7 +31,7 @@ <div class="refnamediv"><table width="100%"><tr> <td valign="top"> <h2><span class="refentrytitle"><a name="gst-plugins-bad-plugins-camerabin.top_of_page"></a>camerabin</span></h2> -<p>camerabin — Take image snapshots and record movies from camera</p> +<p>camerabin</p> </td> <td valign="top" align="right"></td> </tr></table></div> @@ -41,35 +41,6 @@ </div> <div class="refsect1"> <a name="gst-plugins-bad-plugins-camerabin.description"></a><h2>Description</h2> -<div class="refsynopsisdiv"> -<h2>Synopsis</h2> -<div class="refsect2"> -<a name="idp7871936"></a><h3>Element Information</h3> -<div class="variablelist"><table border="0"> -<col align="left" valign="top"> -<tbody> -<tr> -<td><p><span class="term">plugin</span></p></td> -<td> - <a class="link" href="gst-plugins-bad-plugins-plugin-camerabin.html#plugin-camerabin">camerabin</a> - </td> -</tr> -<tr> -<td><p><span class="term">author</span></p></td> -<td>Thiago Santos <thiago.sousa.santos@collabora.co.uk></td> -</tr> -<tr> -<td><p><span class="term">class</span></p></td> -<td>Generic/Bin/Camera</td> -</tr> -</tbody> -</table></div> -</div> -<hr> -<div class="refsect2"> -<a name="idp4852944"></a><h3>Element Pads</h3> -</div> -</div> <p> </p> </div> diff --git a/docs/plugins/html/gst-plugins-bad-plugins-celtdec.html b/docs/plugins/html/gst-plugins-bad-plugins-celtdec.html index c082a1e2..f70cd39b 100644 --- a/docs/plugins/html/gst-plugins-bad-plugins-celtdec.html +++ b/docs/plugins/html/gst-plugins-bad-plugins-celtdec.html @@ -58,7 +58,7 @@ <div class="refsynopsisdiv"> <h2>Synopsis</h2> <div class="refsect2"> -<a name="idp8066736"></a><h3>Element Information</h3> +<a name="idp6823200"></a><h3>Element Information</h3> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> @@ -81,7 +81,7 @@ </div> <hr> <div class="refsect2"> -<a name="idp6330720"></a><h3>Element Pads</h3> +<a name="idp7058896"></a><h3>Element Pads</h3> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> diff --git a/docs/plugins/html/gst-plugins-bad-plugins-celtenc.html b/docs/plugins/html/gst-plugins-bad-plugins-celtenc.html index 71069f32..fceffcbd 100644 --- a/docs/plugins/html/gst-plugins-bad-plugins-celtenc.html +++ b/docs/plugins/html/gst-plugins-bad-plugins-celtenc.html @@ -80,7 +80,7 @@ GstCeltEnc implements <div class="refsynopsisdiv"> <h2>Synopsis</h2> <div class="refsect2"> -<a name="idp8112560"></a><h3>Element Information</h3> +<a name="idp5670784"></a><h3>Element Information</h3> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> @@ -103,7 +103,7 @@ GstCeltEnc implements </div> <hr> <div class="refsect2"> -<a name="idp8119968"></a><h3>Element Pads</h3> +<a name="idp5678192"></a><h3>Element Pads</h3> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> diff --git a/docs/plugins/html/gst-plugins-bad-plugins-chromium.html b/docs/plugins/html/gst-plugins-bad-plugins-chromium.html index 8d5bcc6c..cad36bfd 100644 --- a/docs/plugins/html/gst-plugins-bad-plugins-chromium.html +++ b/docs/plugins/html/gst-plugins-bad-plugins-chromium.html @@ -72,7 +72,7 @@ Chromium breaks the colors of a video stream in realtime. <p> </p> <div class="refsect2"> -<a name="idp6674832"></a><h3>Example launch line</h3> +<a name="idp6233824"></a><h3>Example launch line</h3> <div class="informalexample"> <table class="listing_frame" border="0" cellpadding="0" cellspacing="0"> <tbody> @@ -90,7 +90,7 @@ Chromium breaks the colors of a video stream in realtime. <div class="refsynopsisdiv"> <h2>Synopsis</h2> <div class="refsect2"> -<a name="idp6271072"></a><h3>Element Information</h3> +<a name="idp7745728"></a><h3>Element Information</h3> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> @@ -113,7 +113,7 @@ Chromium breaks the colors of a video stream in realtime. </div> <hr> <div class="refsect2"> -<a name="idp5349616"></a><h3>Element Pads</h3> +<a name="idp8349200"></a><h3>Element Pads</h3> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> diff --git a/docs/plugins/html/gst-plugins-bad-plugins-circle.html b/docs/plugins/html/gst-plugins-bad-plugins-circle.html index 453a21ca..45a14e75 100644 --- a/docs/plugins/html/gst-plugins-bad-plugins-circle.html +++ b/docs/plugins/html/gst-plugins-bad-plugins-circle.html @@ -71,7 +71,7 @@ <div class="refsynopsisdiv"> <h2>Synopsis</h2> <div class="refsect2"> -<a name="idp6483312"></a><h3>Element Information</h3> +<a name="idp8856160"></a><h3>Element Information</h3> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> @@ -94,7 +94,7 @@ </div> <hr> <div class="refsect2"> -<a name="idp8695216"></a><h3>Element Pads</h3> +<a name="idp9475024"></a><h3>Element Pads</h3> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> diff --git a/docs/plugins/html/gst-plugins-bad-plugins-coloreffects.html b/docs/plugins/html/gst-plugins-bad-plugins-coloreffects.html index 75e066b6..cf1393b6 100644 --- a/docs/plugins/html/gst-plugins-bad-plugins-coloreffects.html +++ b/docs/plugins/html/gst-plugins-bad-plugins-coloreffects.html @@ -70,7 +70,7 @@ Map colors of the video input to a lookup table <p> </p> <div class="refsect2"> -<a name="idp6445232"></a><h3>Example launch line</h3> +<a name="idp5402224"></a><h3>Example launch line</h3> <div class="informalexample"> <table class="listing_frame" border="0" cellpadding="0" cellspacing="0"> <tbody> @@ -90,7 +90,7 @@ Map colors of the video input to a lookup table <div class="refsynopsisdiv"> <h2>Synopsis</h2> <div class="refsect2"> -<a name="idp6924496"></a><h3>Element Information</h3> +<a name="idp8594816"></a><h3>Element Information</h3> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> @@ -113,7 +113,7 @@ Map colors of the video input to a lookup table </div> <hr> <div class="refsect2"> -<a name="idp6705760"></a><h3>Element Pads</h3> +<a name="idp5968336"></a><h3>Element Pads</h3> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> diff --git a/docs/plugins/html/gst-plugins-bad-plugins-cvdilate.html b/docs/plugins/html/gst-plugins-bad-plugins-cvdilate.html index 1b1d9721..3a16dff0 100644 --- a/docs/plugins/html/gst-plugins-bad-plugins-cvdilate.html +++ b/docs/plugins/html/gst-plugins-bad-plugins-cvdilate.html @@ -45,7 +45,7 @@ <div class="refsynopsisdiv"> <h2>Synopsis</h2> <div class="refsect2"> -<a name="idp9743648"></a><h3>Element Information</h3> +<a name="idp10187328"></a><h3>Element Information</h3> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> @@ -68,7 +68,7 @@ </div> <hr> <div class="refsect2"> -<a name="idp6185776"></a><h3>Element Pads</h3> +<a name="idp6379600"></a><h3>Element Pads</h3> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> diff --git a/docs/plugins/html/gst-plugins-bad-plugins-cvequalizehist.html b/docs/plugins/html/gst-plugins-bad-plugins-cvequalizehist.html index 640ea01f..87e6d450 100644 --- a/docs/plugins/html/gst-plugins-bad-plugins-cvequalizehist.html +++ b/docs/plugins/html/gst-plugins-bad-plugins-cvequalizehist.html @@ -45,7 +45,7 @@ <div class="refsynopsisdiv"> <h2>Synopsis</h2> <div class="refsect2"> -<a name="idp5512816"></a><h3>Element Information</h3> +<a name="idp7384896"></a><h3>Element Information</h3> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> @@ -68,7 +68,7 @@ </div> <hr> <div class="refsect2"> -<a name="idm30656"></a><h3>Element Pads</h3> +<a name="idp6143184"></a><h3>Element Pads</h3> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> diff --git a/docs/plugins/html/gst-plugins-bad-plugins-cverode.html b/docs/plugins/html/gst-plugins-bad-plugins-cverode.html index b6732976..831af941 100644 --- a/docs/plugins/html/gst-plugins-bad-plugins-cverode.html +++ b/docs/plugins/html/gst-plugins-bad-plugins-cverode.html @@ -45,7 +45,7 @@ <div class="refsynopsisdiv"> <h2>Synopsis</h2> <div class="refsect2"> -<a name="idp9907200"></a><h3>Element Information</h3> +<a name="idp10307792"></a><h3>Element Information</h3> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> @@ -68,7 +68,7 @@ </div> <hr> <div class="refsect2"> -<a name="idp5589184"></a><h3>Element Pads</h3> +<a name="idp9514848"></a><h3>Element Pads</h3> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> diff --git a/docs/plugins/html/gst-plugins-bad-plugins-cvlaplace.html b/docs/plugins/html/gst-plugins-bad-plugins-cvlaplace.html index bd5ef4cd..ef998799 100644 --- a/docs/plugins/html/gst-plugins-bad-plugins-cvlaplace.html +++ b/docs/plugins/html/gst-plugins-bad-plugins-cvlaplace.html @@ -53,7 +53,7 @@ <div class="refsynopsisdiv"> <h2>Synopsis</h2> <div class="refsect2"> -<a name="idp5820096"></a><h3>Element Information</h3> +<a name="idp8492880"></a><h3>Element Information</h3> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> @@ -76,7 +76,7 @@ </div> <hr> <div class="refsect2"> -<a name="idp5624736"></a><h3>Element Pads</h3> +<a name="idp7770336"></a><h3>Element Pads</h3> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> diff --git a/docs/plugins/html/gst-plugins-bad-plugins-cvsmooth.html b/docs/plugins/html/gst-plugins-bad-plugins-cvsmooth.html index 49942c96..fd79cc67 100644 --- a/docs/plugins/html/gst-plugins-bad-plugins-cvsmooth.html +++ b/docs/plugins/html/gst-plugins-bad-plugins-cvsmooth.html @@ -57,7 +57,7 @@ <div class="refsynopsisdiv"> <h2>Synopsis</h2> <div class="refsect2"> -<a name="idp4944608"></a><h3>Element Information</h3> +<a name="idp2985344"></a><h3>Element Information</h3> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> @@ -80,7 +80,7 @@ </div> <hr> <div class="refsect2"> -<a name="idp6193872"></a><h3>Element Pads</h3> +<a name="idp9014304"></a><h3>Element Pads</h3> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> diff --git a/docs/plugins/html/gst-plugins-bad-plugins-cvsobel.html b/docs/plugins/html/gst-plugins-bad-plugins-cvsobel.html index 34f3089f..2d4a9786 100644 --- a/docs/plugins/html/gst-plugins-bad-plugins-cvsobel.html +++ b/docs/plugins/html/gst-plugins-bad-plugins-cvsobel.html @@ -55,7 +55,7 @@ <div class="refsynopsisdiv"> <h2>Synopsis</h2> <div class="refsect2"> -<a name="idp9627312"></a><h3>Element Information</h3> +<a name="idp10101808"></a><h3>Element Information</h3> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> @@ -78,7 +78,7 @@ </div> <hr> <div class="refsect2"> -<a name="idp7846256"></a><h3>Element Pads</h3> +<a name="idp2988560"></a><h3>Element Pads</h3> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> diff --git a/docs/plugins/html/gst-plugins-bad-plugins-dataurisrc.html b/docs/plugins/html/gst-plugins-bad-plugins-dataurisrc.html index bd764030..5bd8c3d0 100644 --- a/docs/plugins/html/gst-plugins-bad-plugins-dataurisrc.html +++ b/docs/plugins/html/gst-plugins-bad-plugins-dataurisrc.html @@ -77,7 +77,7 @@ dataurisrc handles data: URIs, see <a class="ulink" href="http://tools.ietf.org/ <p> </p> <div class="refsect2"> -<a name="idp9633456"></a><h3>Example launch line</h3> +<a name="idp7313360"></a><h3>Example launch line</h3> <div class="informalexample"> <table class="listing_frame" border="0" cellpadding="0" cellspacing="0"> <tbody> @@ -95,7 +95,7 @@ dataurisrc handles data: URIs, see <a class="ulink" href="http://tools.ietf.org/ <div class="refsynopsisdiv"> <h2>Synopsis</h2> <div class="refsect2"> -<a name="idp9636448"></a><h3>Element Information</h3> +<a name="idp10104336"></a><h3>Element Information</h3> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> @@ -118,7 +118,7 @@ dataurisrc handles data: URIs, see <a class="ulink" href="http://tools.ietf.org/ </div> <hr> <div class="refsect2"> -<a name="idp8977696"></a><h3>Element Pads</h3> +<a name="idp9922496"></a><h3>Element Pads</h3> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> diff --git a/docs/plugins/html/gst-plugins-bad-plugins-dccpclientsink.html b/docs/plugins/html/gst-plugins-bad-plugins-dccpclientsink.html index 1724ffb9..813e4117 100644 --- a/docs/plugins/html/gst-plugins-bad-plugins-dccpclientsink.html +++ b/docs/plugins/html/gst-plugins-bad-plugins-dccpclientsink.html @@ -71,7 +71,7 @@ TCP and UDP. <p> </p> <div class="refsect2"> -<a name="idp9883104"></a><h3>Example pipeline</h3> +<a name="idp10818016"></a><h3>Example pipeline</h3> <p> </p> <div class="informalexample"> @@ -111,7 +111,7 @@ Run the server pipeline first than the client pipeline. <div class="refsynopsisdiv"> <h2>Synopsis</h2> <div class="refsect2"> -<a name="idp9887680"></a><h3>Element Information</h3> +<a name="idp10822640"></a><h3>Element Information</h3> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> @@ -134,7 +134,7 @@ Run the server pipeline first than the client pipeline. </div> <hr> <div class="refsect2"> -<a name="idp9895088"></a><h3>Element Pads</h3> +<a name="idp10830048"></a><h3>Element Pads</h3> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> diff --git a/docs/plugins/html/gst-plugins-bad-plugins-dccpclientsrc.html b/docs/plugins/html/gst-plugins-bad-plugins-dccpclientsrc.html index 34190f78..c2852871 100644 --- a/docs/plugins/html/gst-plugins-bad-plugins-dccpclientsrc.html +++ b/docs/plugins/html/gst-plugins-bad-plugins-dccpclientsrc.html @@ -72,7 +72,7 @@ TCP and UDP. <p> </p> <div class="refsect2"> -<a name="idp10093328"></a><h3>Example pipeline</h3> +<a name="idp9953888"></a><h3>Example pipeline</h3> <p> </p> <div class="informalexample"> @@ -113,7 +113,7 @@ to connect to the same server (see wait-connections property at dccpserversink). <div class="refsynopsisdiv"> <h2>Synopsis</h2> <div class="refsect2"> -<a name="idp8675312"></a><h3>Element Information</h3> +<a name="idp9958528"></a><h3>Element Information</h3> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> @@ -136,7 +136,7 @@ to connect to the same server (see wait-connections property at dccpserversink). </div> <hr> <div class="refsect2"> -<a name="idp8423584"></a><h3>Element Pads</h3> +<a name="idp11044688"></a><h3>Element Pads</h3> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> diff --git a/docs/plugins/html/gst-plugins-bad-plugins-dccpserversink.html b/docs/plugins/html/gst-plugins-bad-plugins-dccpserversink.html index a6e825c5..269be4ae 100644 --- a/docs/plugins/html/gst-plugins-bad-plugins-dccpserversink.html +++ b/docs/plugins/html/gst-plugins-bad-plugins-dccpserversink.html @@ -71,7 +71,7 @@ TCP and UDP. <p> </p> <div class="refsect2"> -<a name="idp9838512"></a><h3>Example pipeline</h3> +<a name="idp10852864"></a><h3>Example pipeline</h3> <p> </p> <div class="informalexample"> @@ -112,7 +112,7 @@ to connect to the same server (see wait-connections property at dccpserversink). <div class="refsynopsisdiv"> <h2>Synopsis</h2> <div class="refsect2"> -<a name="idp9843152"></a><h3>Element Information</h3> +<a name="idp10857504"></a><h3>Element Information</h3> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> @@ -135,7 +135,7 @@ to connect to the same server (see wait-connections property at dccpserversink). </div> <hr> <div class="refsect2"> -<a name="idp9850560"></a><h3>Element Pads</h3> +<a name="idp10864912"></a><h3>Element Pads</h3> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> diff --git a/docs/plugins/html/gst-plugins-bad-plugins-dccpserversrc.html b/docs/plugins/html/gst-plugins-bad-plugins-dccpserversrc.html index 0388770c..e523d331 100644 --- a/docs/plugins/html/gst-plugins-bad-plugins-dccpserversrc.html +++ b/docs/plugins/html/gst-plugins-bad-plugins-dccpserversrc.html @@ -72,7 +72,7 @@ TCP and UDP. <p> </p> <div class="refsect2"> -<a name="idp8603952"></a><h3>Example pipeline</h3> +<a name="idp10323360"></a><h3>Example pipeline</h3> <p> </p> <div class="informalexample"> @@ -112,7 +112,7 @@ Run the server pipeline first than the client pipeline. <div class="refsynopsisdiv"> <h2>Synopsis</h2> <div class="refsect2"> -<a name="idp8608576"></a><h3>Element Information</h3> +<a name="idp10327984"></a><h3>Element Information</h3> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> @@ -135,7 +135,7 @@ Run the server pipeline first than the client pipeline. </div> <hr> <div class="refsect2"> -<a name="idp8615984"></a><h3>Element Pads</h3> +<a name="idp9084256"></a><h3>Element Pads</h3> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> diff --git a/docs/plugins/html/gst-plugins-bad-plugins-dfbvideosink.html b/docs/plugins/html/gst-plugins-bad-plugins-dfbvideosink.html index 65df382b..0a9b15b8 100644 --- a/docs/plugins/html/gst-plugins-bad-plugins-dfbvideosink.html +++ b/docs/plugins/html/gst-plugins-bad-plugins-dfbvideosink.html @@ -67,7 +67,7 @@ GstDfbVideoSink implements <div class="refsynopsisdiv"> <h2>Synopsis</h2> <div class="refsect2"> -<a name="idp8569696"></a><h3>Element Information</h3> +<a name="idp8833824"></a><h3>Element Information</h3> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> @@ -90,7 +90,7 @@ GstDfbVideoSink implements </div> <hr> <div class="refsect2"> -<a name="idp8577152"></a><h3>Element Pads</h3> +<a name="idp8841280"></a><h3>Element Pads</h3> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> diff --git a/docs/plugins/html/gst-plugins-bad-plugins-diffuse.html b/docs/plugins/html/gst-plugins-bad-plugins-diffuse.html index 1b336576..0a84f15c 100644 --- a/docs/plugins/html/gst-plugins-bad-plugins-diffuse.html +++ b/docs/plugins/html/gst-plugins-bad-plugins-diffuse.html @@ -68,7 +68,7 @@ <div class="refsynopsisdiv"> <h2>Synopsis</h2> <div class="refsect2"> -<a name="idp9369664"></a><h3>Element Information</h3> +<a name="idp6315568"></a><h3>Element Information</h3> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> @@ -91,7 +91,7 @@ </div> <hr> <div class="refsect2"> -<a name="idp9993536"></a><h3>Element Pads</h3> +<a name="idp5484464"></a><h3>Element Pads</h3> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> diff --git a/docs/plugins/html/gst-plugins-bad-plugins-dilate.html b/docs/plugins/html/gst-plugins-bad-plugins-dilate.html index 3f5a535b..fdb19cd1 100644 --- a/docs/plugins/html/gst-plugins-bad-plugins-dilate.html +++ b/docs/plugins/html/gst-plugins-bad-plugins-dilate.html @@ -71,7 +71,7 @@ Dilate adjusts the colors of a video stream in realtime. <p> </p> <div class="refsect2"> -<a name="idp6287344"></a><h3>Example launch line</h3> +<a name="idp2860624"></a><h3>Example launch line</h3> <div class="informalexample"> <table class="listing_frame" border="0" cellpadding="0" cellspacing="0"> <tbody> @@ -89,7 +89,7 @@ Dilate adjusts the colors of a video stream in realtime. <div class="refsynopsisdiv"> <h2>Synopsis</h2> <div class="refsect2"> -<a name="idp6920400"></a><h3>Element Information</h3> +<a name="idp9241504"></a><h3>Element Information</h3> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> @@ -112,7 +112,7 @@ Dilate adjusts the colors of a video stream in realtime. </div> <hr> <div class="refsect2"> -<a name="idp10687648"></a><h3>Element Pads</h3> +<a name="idp11010224"></a><h3>Element Pads</h3> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> diff --git a/docs/plugins/html/gst-plugins-bad-plugins-directdrawsink.html b/docs/plugins/html/gst-plugins-bad-plugins-directdrawsink.html index 73c4bcde..f4a67b5e 100644 --- a/docs/plugins/html/gst-plugins-bad-plugins-directdrawsink.html +++ b/docs/plugins/html/gst-plugins-bad-plugins-directdrawsink.html @@ -45,7 +45,7 @@ <div class="refsynopsisdiv"> <h2>Synopsis</h2> <div class="refsect2"> -<a name="idp7373024"></a><h3>Element Information</h3> +<a name="idp5578000"></a><h3>Element Information</h3> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> @@ -68,7 +68,7 @@ </div> <hr> <div class="refsect2"> -<a name="idp8260880"></a><h3>Element Pads</h3> +<a name="idp7595952"></a><h3>Element Pads</h3> </div> </div> <p> diff --git a/docs/plugins/html/gst-plugins-bad-plugins-dodge.html b/docs/plugins/html/gst-plugins-bad-plugins-dodge.html index b4d55349..33356921 100644 --- a/docs/plugins/html/gst-plugins-bad-plugins-dodge.html +++ b/docs/plugins/html/gst-plugins-bad-plugins-dodge.html @@ -70,7 +70,7 @@ Dodge saturates the colors of a video stream in realtime. <p> </p> <div class="refsect2"> -<a name="idp6154848"></a><h3>Example launch line</h3> +<a name="idp5282976"></a><h3>Example launch line</h3> <div class="informalexample"> <table class="listing_frame" border="0" cellpadding="0" cellspacing="0"> <tbody> @@ -88,7 +88,7 @@ Dodge saturates the colors of a video stream in realtime. <div class="refsynopsisdiv"> <h2>Synopsis</h2> <div class="refsect2"> -<a name="idp7088544"></a><h3>Element Information</h3> +<a name="idp7389040"></a><h3>Element Information</h3> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> @@ -111,7 +111,7 @@ Dodge saturates the colors of a video stream in realtime. </div> <hr> <div class="refsect2"> -<a name="idp10730416"></a><h3>Element Pads</h3> +<a name="idp7545072"></a><h3>Element Pads</h3> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> diff --git a/docs/plugins/html/gst-plugins-bad-plugins-dtmfdetect.html b/docs/plugins/html/gst-plugins-bad-plugins-dtmfdetect.html index 50bd8ceb..2e7edc11 100644 --- a/docs/plugins/html/gst-plugins-bad-plugins-dtmfdetect.html +++ b/docs/plugins/html/gst-plugins-bad-plugins-dtmfdetect.html @@ -85,7 +85,7 @@ the following fields: <div class="refsynopsisdiv"> <h2>Synopsis</h2> <div class="refsect2"> -<a name="idp7183136"></a><h3>Element Information</h3> +<a name="idp7706656"></a><h3>Element Information</h3> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> @@ -108,7 +108,7 @@ the following fields: </div> <hr> <div class="refsect2"> -<a name="idp10222208"></a><h3>Element Pads</h3> +<a name="idp11601232"></a><h3>Element Pads</h3> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> diff --git a/docs/plugins/html/gst-plugins-bad-plugins-dtmfsrc.html b/docs/plugins/html/gst-plugins-bad-plugins-dtmfsrc.html index f92a1471..1a835be4 100644 --- a/docs/plugins/html/gst-plugins-bad-plugins-dtmfsrc.html +++ b/docs/plugins/html/gst-plugins-bad-plugins-dtmfsrc.html @@ -161,7 +161,7 @@ READY state, then a "dtmf-event-dropped" message is posted on the <div class="refsynopsisdiv"> <h2>Synopsis</h2> <div class="refsect2"> -<a name="idp11240768"></a><h3>Element Information</h3> +<a name="idp11224640"></a><h3>Element Information</h3> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> @@ -184,7 +184,7 @@ READY state, then a "dtmf-event-dropped" message is posted on the </div> <hr> <div class="refsect2"> -<a name="idp11248176"></a><h3>Element Pads</h3> +<a name="idp11232048"></a><h3>Element Pads</h3> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> diff --git a/docs/plugins/html/gst-plugins-bad-plugins-dtsdec.html b/docs/plugins/html/gst-plugins-bad-plugins-dtsdec.html index 5b6d743a..6b412f93 100644 --- a/docs/plugins/html/gst-plugins-bad-plugins-dtsdec.html +++ b/docs/plugins/html/gst-plugins-bad-plugins-dtsdec.html @@ -66,7 +66,7 @@ <div class="refsynopsisdiv"> <h2>Synopsis</h2> <div class="refsect2"> -<a name="idp4879328"></a><h3>Element Information</h3> +<a name="idp5376000"></a><h3>Element Information</h3> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> @@ -89,7 +89,7 @@ </div> <hr> <div class="refsect2"> -<a name="idp7335856"></a><h3>Element Pads</h3> +<a name="idp11099120"></a><h3>Element Pads</h3> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> diff --git a/docs/plugins/html/gst-plugins-bad-plugins-dvbsrc.html b/docs/plugins/html/gst-plugins-bad-plugins-dvbsrc.html index 30dd466d..a946bf71 100644 --- a/docs/plugins/html/gst-plugins-bad-plugins-dvbsrc.html +++ b/docs/plugins/html/gst-plugins-bad-plugins-dvbsrc.html @@ -75,7 +75,7 @@ <div class="refsynopsisdiv"> <h2>Synopsis</h2> <div class="refsect2"> -<a name="idp11206608"></a><h3>Element Information</h3> +<a name="idp11415376"></a><h3>Element Information</h3> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> @@ -98,7 +98,7 @@ </div> <hr> <div class="refsect2"> -<a name="idp11214128"></a><h3>Element Pads</h3> +<a name="idp11422896"></a><h3>Element Pads</h3> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> diff --git a/docs/plugins/html/gst-plugins-bad-plugins-dvdspu.html b/docs/plugins/html/gst-plugins-bad-plugins-dvdspu.html index 4ef0f626..0d6f4c13 100644 --- a/docs/plugins/html/gst-plugins-bad-plugins-dvdspu.html +++ b/docs/plugins/html/gst-plugins-bad-plugins-dvdspu.html @@ -60,7 +60,7 @@ DVD sub picture overlay element. <p> </p> <div class="refsect2"> -<a name="idp11313904"></a><h3>Example launch line</h3> +<a name="idp11809936"></a><h3>Example launch line</h3> <div class="informalexample"> <table class="listing_frame" border="0" cellpadding="0" cellspacing="0"> <tbody> @@ -78,7 +78,7 @@ DVD sub picture overlay element. <div class="refsynopsisdiv"> <h2>Synopsis</h2> <div class="refsect2"> -<a name="idp11311728"></a><h3>Element Information</h3> +<a name="idp11807760"></a><h3>Element Information</h3> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> @@ -101,7 +101,7 @@ DVD sub picture overlay element. </div> <hr> <div class="refsect2"> -<a name="idp5829008"></a><h3>Element Pads</h3> +<a name="idp10147840"></a><h3>Element Pads</h3> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> diff --git a/docs/plugins/html/gst-plugins-bad-plugins-edgedetect.html b/docs/plugins/html/gst-plugins-bad-plugins-edgedetect.html index 4e9191ad..0f19ee21 100644 --- a/docs/plugins/html/gst-plugins-bad-plugins-edgedetect.html +++ b/docs/plugins/html/gst-plugins-bad-plugins-edgedetect.html @@ -44,7 +44,7 @@ <div class="refsynopsisdiv"> <h2>Synopsis</h2> <div class="refsect2"> -<a name="idp11431968"></a><h3>Element Information</h3> +<a name="idp10940736"></a><h3>Element Information</h3> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> @@ -67,7 +67,7 @@ </div> <hr> <div class="refsect2"> -<a name="idp8197648"></a><h3>Element Pads</h3> +<a name="idp6591344"></a><h3>Element Pads</h3> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> diff --git a/docs/plugins/html/gst-plugins-bad-plugins-exclusion.html b/docs/plugins/html/gst-plugins-bad-plugins-exclusion.html index d491f3d2..71038ac7 100644 --- a/docs/plugins/html/gst-plugins-bad-plugins-exclusion.html +++ b/docs/plugins/html/gst-plugins-bad-plugins-exclusion.html @@ -71,7 +71,7 @@ Exclusion saturates the colors of a video stream in realtime. <p> </p> <div class="refsect2"> -<a name="idp8425008"></a><h3>Example launch line</h3> +<a name="idp9396624"></a><h3>Example launch line</h3> <div class="informalexample"> <table class="listing_frame" border="0" cellpadding="0" cellspacing="0"> <tbody> @@ -89,7 +89,7 @@ Exclusion saturates the colors of a video stream in realtime. <div class="refsynopsisdiv"> <h2>Synopsis</h2> <div class="refsect2"> -<a name="idp9878992"></a><h3>Element Information</h3> +<a name="idp8932464"></a><h3>Element Information</h3> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> @@ -112,7 +112,7 @@ Exclusion saturates the colors of a video stream in realtime. </div> <hr> <div class="refsect2"> -<a name="idp11181824"></a><h3>Element Pads</h3> +<a name="idp11280224"></a><h3>Element Pads</h3> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> diff --git a/docs/plugins/html/gst-plugins-bad-plugins-faac.html b/docs/plugins/html/gst-plugins-bad-plugins-faac.html index 565e5232..34fb4b0c 100644 --- a/docs/plugins/html/gst-plugins-bad-plugins-faac.html +++ b/docs/plugins/html/gst-plugins-bad-plugins-faac.html @@ -81,7 +81,7 @@ GstFaac implements <div class="refsynopsisdiv"> <h2>Synopsis</h2> <div class="refsect2"> -<a name="idp4673792"></a><h3>Element Information</h3> +<a name="idp11501600"></a><h3>Element Information</h3> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> @@ -104,7 +104,7 @@ GstFaac implements </div> <hr> <div class="refsect2"> -<a name="idp8445984"></a><h3>Element Pads</h3> +<a name="idp11509008"></a><h3>Element Pads</h3> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> diff --git a/docs/plugins/html/gst-plugins-bad-plugins-faad.html b/docs/plugins/html/gst-plugins-bad-plugins-faad.html index 1f242866..bcebd902 100644 --- a/docs/plugins/html/gst-plugins-bad-plugins-faad.html +++ b/docs/plugins/html/gst-plugins-bad-plugins-faad.html @@ -58,7 +58,7 @@ <div class="refsynopsisdiv"> <h2>Synopsis</h2> <div class="refsect2"> -<a name="idp6610000"></a><h3>Element Information</h3> +<a name="idp9439936"></a><h3>Element Information</h3> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> @@ -81,7 +81,7 @@ </div> <hr> <div class="refsect2"> -<a name="idp9308272"></a><h3>Element Pads</h3> +<a name="idp8424256"></a><h3>Element Pads</h3> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> diff --git a/docs/plugins/html/gst-plugins-bad-plugins-faceblur.html b/docs/plugins/html/gst-plugins-bad-plugins-faceblur.html index 017abd0d..9d6f34f5 100644 --- a/docs/plugins/html/gst-plugins-bad-plugins-faceblur.html +++ b/docs/plugins/html/gst-plugins-bad-plugins-faceblur.html @@ -44,7 +44,7 @@ <div class="refsynopsisdiv"> <h2>Synopsis</h2> <div class="refsect2"> -<a name="idp11097904"></a><h3>Element Information</h3> +<a name="idp12116352"></a><h3>Element Information</h3> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> @@ -67,7 +67,7 @@ </div> <hr> <div class="refsect2"> -<a name="idp4659360"></a><h3>Element Pads</h3> +<a name="idp5590592"></a><h3>Element Pads</h3> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> diff --git a/docs/plugins/html/gst-plugins-bad-plugins-facedetect.html b/docs/plugins/html/gst-plugins-bad-plugins-facedetect.html index 58ab4ece..d721c20c 100644 --- a/docs/plugins/html/gst-plugins-bad-plugins-facedetect.html +++ b/docs/plugins/html/gst-plugins-bad-plugins-facedetect.html @@ -44,7 +44,7 @@ <div class="refsynopsisdiv"> <h2>Synopsis</h2> <div class="refsect2"> -<a name="idp11354192"></a><h3>Element Information</h3> +<a name="idp11520160"></a><h3>Element Information</h3> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> @@ -67,7 +67,7 @@ </div> <hr> <div class="refsect2"> -<a name="idp10316832"></a><h3>Element Pads</h3> +<a name="idp5610512"></a><h3>Element Pads</h3> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> diff --git a/docs/plugins/html/gst-plugins-bad-plugins-festival.html b/docs/plugins/html/gst-plugins-bad-plugins-festival.html index 8d7623ea..e7b8cf30 100644 --- a/docs/plugins/html/gst-plugins-bad-plugins-festival.html +++ b/docs/plugins/html/gst-plugins-bad-plugins-festival.html @@ -53,7 +53,7 @@ in server mode, started as </p> <p> </p> <div class="refsect2"> -<a name="idp11564352"></a><h3>Example pipeline</h3> +<a name="idp7376432"></a><h3>Example pipeline</h3> <div class="informalexample"> <table class="listing_frame" border="0" cellpadding="0" cellspacing="0"> <tbody> @@ -71,7 +71,7 @@ in server mode, started as </p> <div class="refsynopsisdiv"> <h2>Synopsis</h2> <div class="refsect2"> -<a name="idp5167616"></a><h3>Element Information</h3> +<a name="idp6240512"></a><h3>Element Information</h3> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> @@ -94,7 +94,7 @@ in server mode, started as </p> </div> <hr> <div class="refsect2"> -<a name="idp6097808"></a><h3>Element Pads</h3> +<a name="idp8800384"></a><h3>Element Pads</h3> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> diff --git a/docs/plugins/html/gst-plugins-bad-plugins-fisheye.html b/docs/plugins/html/gst-plugins-bad-plugins-fisheye.html index ab599a4b..cb4b2abf 100644 --- a/docs/plugins/html/gst-plugins-bad-plugins-fisheye.html +++ b/docs/plugins/html/gst-plugins-bad-plugins-fisheye.html @@ -60,7 +60,7 @@ <div class="refsynopsisdiv"> <h2>Synopsis</h2> <div class="refsect2"> -<a name="idp6179664"></a><h3>Element Information</h3> +<a name="idp8362800"></a><h3>Element Information</h3> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> @@ -83,7 +83,7 @@ </div> <hr> <div class="refsect2"> -<a name="idp6730256"></a><h3>Element Pads</h3> +<a name="idm17504"></a><h3>Element Pads</h3> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> diff --git a/docs/plugins/html/gst-plugins-bad-plugins-fpsdisplaysink.html b/docs/plugins/html/gst-plugins-bad-plugins-fpsdisplaysink.html index 2bf6705c..46007fe1 100644 --- a/docs/plugins/html/gst-plugins-bad-plugins-fpsdisplaysink.html +++ b/docs/plugins/html/gst-plugins-bad-plugins-fpsdisplaysink.html @@ -95,7 +95,7 @@ Can display the current and average framerate as a testoverlay or on stdout. <p> </p> <div class="refsect2"> -<a name="idp12149792"></a><h3>Example launch lines</h3> +<a name="idp12498544"></a><h3>Example launch lines</h3> <div class="informalexample"> <table class="listing_frame" border="0" cellpadding="0" cellspacing="0"> <tbody> @@ -119,7 +119,7 @@ gst<span class="gtkdoc opt">-</span>launch playbin2 uri<span class="gtkdoc opt"> <div class="refsynopsisdiv"> <h2>Synopsis</h2> <div class="refsect2"> -<a name="idp12152768"></a><h3>Element Information</h3> +<a name="idp12501520"></a><h3>Element Information</h3> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> @@ -142,7 +142,7 @@ gst<span class="gtkdoc opt">-</span>launch playbin2 uri<span class="gtkdoc opt"> </div> <hr> <div class="refsect2"> -<a name="idp12160176"></a><h3>Element Pads</h3> +<a name="idp12508928"></a><h3>Element Pads</h3> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> diff --git a/docs/plugins/html/gst-plugins-bad-plugins-freeze.html b/docs/plugins/html/gst-plugins-bad-plugins-freeze.html index 841f1e7a..667d2b9a 100644 --- a/docs/plugins/html/gst-plugins-bad-plugins-freeze.html +++ b/docs/plugins/html/gst-plugins-bad-plugins-freeze.html @@ -56,7 +56,7 @@ Makes a stream from buffers of data. <p> </p> <div class="refsect2"> -<a name="idp10086896"></a><h3>Example launch line</h3> +<a name="idp5907696"></a><h3>Example launch line</h3> <p> </p> <div class="informalexample"> @@ -78,7 +78,7 @@ Makes a stream from buffers of data. <div class="refsynopsisdiv"> <h2>Synopsis</h2> <div class="refsect2"> -<a name="idp9225744"></a><h3>Element Information</h3> +<a name="idp6909424"></a><h3>Element Information</h3> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> @@ -101,7 +101,7 @@ Makes a stream from buffers of data. </div> <hr> <div class="refsect2"> -<a name="idp8769328"></a><h3>Element Pads</h3> +<a name="idp9991056"></a><h3>Element Pads</h3> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> diff --git a/docs/plugins/html/gst-plugins-bad-plugins-gaussianblur.html b/docs/plugins/html/gst-plugins-bad-plugins-gaussianblur.html index 2f4eabaf..16b992b2 100644 --- a/docs/plugins/html/gst-plugins-bad-plugins-gaussianblur.html +++ b/docs/plugins/html/gst-plugins-bad-plugins-gaussianblur.html @@ -47,7 +47,7 @@ Gaussianblur blurs the video stream in realtime. <p> </p> <div class="refsect2"> -<a name="idp12035696"></a><h3>Example launch line</h3> +<a name="idp12024128"></a><h3>Example launch line</h3> <div class="informalexample"> <table class="listing_frame" border="0" cellpadding="0" cellspacing="0"> <tbody> @@ -65,7 +65,7 @@ Gaussianblur blurs the video stream in realtime. <div class="refsynopsisdiv"> <h2>Synopsis</h2> <div class="refsect2"> -<a name="idp11904576"></a><h3>Element Information</h3> +<a name="idp9259088"></a><h3>Element Information</h3> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> @@ -88,7 +88,7 @@ Gaussianblur blurs the video stream in realtime. </div> <hr> <div class="refsect2"> -<a name="idp7040880"></a><h3>Element Pads</h3> +<a name="idp6607072"></a><h3>Element Pads</h3> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> diff --git a/docs/plugins/html/gst-plugins-bad-plugins-ivfparse.html b/docs/plugins/html/gst-plugins-bad-plugins-ivfparse.html index f46067dd..eb3e46fc 100644 --- a/docs/plugins/html/gst-plugins-bad-plugins-ivfparse.html +++ b/docs/plugins/html/gst-plugins-bad-plugins-ivfparse.html @@ -45,7 +45,7 @@ <div class="refsynopsisdiv"> <h2>Synopsis</h2> <div class="refsect2"> -<a name="idp6987680"></a><h3>Element Information</h3> +<a name="idp11952912"></a><h3>Element Information</h3> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> @@ -68,7 +68,7 @@ </div> <hr> <div class="refsect2"> -<a name="idp8924704"></a><h3>Element Pads</h3> +<a name="idp9189616"></a><h3>Element Pads</h3> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> diff --git a/docs/plugins/html/gst-plugins-bad-plugins-jpegparse.html b/docs/plugins/html/gst-plugins-bad-plugins-jpegparse.html index 2e1dface..72f218b9 100644 --- a/docs/plugins/html/gst-plugins-bad-plugins-jpegparse.html +++ b/docs/plugins/html/gst-plugins-bad-plugins-jpegparse.html @@ -59,7 +59,7 @@ among others. Jpegparse can also extract metadata (e.g. xmp). <p> </p> <div class="refsect2"> -<a name="idp5472512"></a><h3>Example launch line</h3> +<a name="idp3034448"></a><h3>Example launch line</h3> <div class="informalexample"> <table class="listing_frame" border="0" cellpadding="0" cellspacing="0"> <tbody> @@ -79,7 +79,7 @@ HTTP and stores it in a matroska file. <div class="refsynopsisdiv"> <h2>Synopsis</h2> <div class="refsect2"> -<a name="idp8941568"></a><h3>Element Information</h3> +<a name="idp10792880"></a><h3>Element Information</h3> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> @@ -102,7 +102,7 @@ HTTP and stores it in a matroska file. </div> <hr> <div class="refsect2"> -<a name="idp11509584"></a><h3>Element Pads</h3> +<a name="idp10706864"></a><h3>Element Pads</h3> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> diff --git a/docs/plugins/html/gst-plugins-bad-plugins-kaleidoscope.html b/docs/plugins/html/gst-plugins-bad-plugins-kaleidoscope.html index 0264fb69..1e949504 100644 --- a/docs/plugins/html/gst-plugins-bad-plugins-kaleidoscope.html +++ b/docs/plugins/html/gst-plugins-bad-plugins-kaleidoscope.html @@ -71,7 +71,7 @@ <div class="refsynopsisdiv"> <h2>Synopsis</h2> <div class="refsect2"> -<a name="idp8243312"></a><h3>Element Information</h3> +<a name="idp5801264"></a><h3>Element Information</h3> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> @@ -94,7 +94,7 @@ </div> <hr> <div class="refsect2"> -<a name="idp12063760"></a><h3>Element Pads</h3> +<a name="idp12348688"></a><h3>Element Pads</h3> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> diff --git a/docs/plugins/html/gst-plugins-bad-plugins-katedec.html b/docs/plugins/html/gst-plugins-bad-plugins-katedec.html index 6e4b8a7c..76993dba 100644 --- a/docs/plugins/html/gst-plugins-bad-plugins-katedec.html +++ b/docs/plugins/html/gst-plugins-bad-plugins-katedec.html @@ -57,7 +57,7 @@ <div class="refsynopsisdiv"> <h2>Synopsis</h2> <div class="refsect2"> -<a name="idp5260656"></a><h3>Element Information</h3> +<a name="idp5802928"></a><h3>Element Information</h3> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> @@ -80,7 +80,7 @@ </div> <hr> <div class="refsect2"> -<a name="idp6250192"></a><h3>Element Pads</h3> +<a name="idp8247488"></a><h3>Element Pads</h3> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> diff --git a/docs/plugins/html/gst-plugins-bad-plugins-kateenc.html b/docs/plugins/html/gst-plugins-bad-plugins-kateenc.html index 36b394e7..1200c5bb 100644 --- a/docs/plugins/html/gst-plugins-bad-plugins-kateenc.html +++ b/docs/plugins/html/gst-plugins-bad-plugins-kateenc.html @@ -69,7 +69,7 @@ GstKateEnc implements <div class="refsynopsisdiv"> <h2>Synopsis</h2> <div class="refsect2"> -<a name="idp7240848"></a><h3>Element Information</h3> +<a name="idp10902416"></a><h3>Element Information</h3> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> @@ -92,7 +92,7 @@ GstKateEnc implements </div> <hr> <div class="refsect2"> -<a name="idp11726640"></a><h3>Element Pads</h3> +<a name="idp12073872"></a><h3>Element Pads</h3> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> diff --git a/docs/plugins/html/gst-plugins-bad-plugins-kateparse.html b/docs/plugins/html/gst-plugins-bad-plugins-kateparse.html index 11eb32a0..994a7dfd 100644 --- a/docs/plugins/html/gst-plugins-bad-plugins-kateparse.html +++ b/docs/plugins/html/gst-plugins-bad-plugins-kateparse.html @@ -45,7 +45,7 @@ <div class="refsynopsisdiv"> <h2>Synopsis</h2> <div class="refsect2"> -<a name="idp12336096"></a><h3>Element Information</h3> +<a name="idp13189408"></a><h3>Element Information</h3> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> @@ -68,7 +68,7 @@ </div> <hr> <div class="refsect2"> -<a name="idp11701296"></a><h3>Element Pads</h3> +<a name="idp11775552"></a><h3>Element Pads</h3> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> diff --git a/docs/plugins/html/gst-plugins-bad-plugins-katetag.html b/docs/plugins/html/gst-plugins-bad-plugins-katetag.html index e21fdc0e..42faf4c7 100644 --- a/docs/plugins/html/gst-plugins-bad-plugins-katetag.html +++ b/docs/plugins/html/gst-plugins-bad-plugins-katetag.html @@ -64,7 +64,7 @@ GstKateTag implements <div class="refsynopsisdiv"> <h2>Synopsis</h2> <div class="refsect2"> -<a name="idp7917824"></a><h3>Element Information</h3> +<a name="idp7110000"></a><h3>Element Information</h3> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> @@ -87,7 +87,7 @@ GstKateTag implements </div> <hr> <div class="refsect2"> -<a name="idp4933200"></a><h3>Element Pads</h3> +<a name="idp9817712"></a><h3>Element Pads</h3> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> diff --git a/docs/plugins/html/gst-plugins-bad-plugins-ladspa.html b/docs/plugins/html/gst-plugins-bad-plugins-ladspa.html index 3c8b6abd..58d655a0 100644 --- a/docs/plugins/html/gst-plugins-bad-plugins-ladspa.html +++ b/docs/plugins/html/gst-plugins-bad-plugins-ladspa.html @@ -7,7 +7,7 @@ <link rel="home" href="index.html" title="GStreamer Bad Plugins 1.0 Plugins Reference Manual"> <link rel="up" href="ch01.html" title="gst-plugins-bad Elements"> <link rel="prev" href="gst-plugins-bad-plugins-katetag.html" title="katetag"> -<link rel="next" href="gst-plugins-bad-plugins-legacyresample.html" title="legacyresample"> +<link rel="next" href="gst-plugins-bad-plugins-liveadder.html" title="liveadder"> <meta name="generator" content="GTK-Doc V1.18 (XML mode)"> <link rel="stylesheet" href="style.css" type="text/css"> </head> @@ -18,7 +18,7 @@ <td><a accesskey="u" href="ch01.html"><img src="up.png" width="24" height="24" border="0" alt="Up"></a></td> <td><a accesskey="h" href="index.html"><img src="home.png" width="24" height="24" border="0" alt="Home"></a></td> <th width="100%" align="center">GStreamer Bad Plugins 1.0 Plugins Reference Manual</th> -<td><a accesskey="n" href="gst-plugins-bad-plugins-legacyresample.html"><img src="right.png" width="24" height="24" border="0" alt="Next"></a></td> +<td><a accesskey="n" href="gst-plugins-bad-plugins-liveadder.html"><img src="right.png" width="24" height="24" border="0" alt="Next"></a></td> </tr> <tr><td colspan="5" class="shortcuts"> <a href="#gst-plugins-bad-plugins-ladspa.synopsis" class="shortcut">Top</a> diff --git a/docs/plugins/html/gst-plugins-bad-plugins-legacyresample.html b/docs/plugins/html/gst-plugins-bad-plugins-legacyresample.html deleted file mode 100644 index 3188ff5a..00000000 --- a/docs/plugins/html/gst-plugins-bad-plugins-legacyresample.html +++ /dev/null @@ -1,222 +0,0 @@ -<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> -<html> -<head> -<meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> -<title>legacyresample</title> -<meta name="generator" content="DocBook XSL Stylesheets V1.76.1"> -<link rel="home" href="index.html" title="GStreamer Bad Plugins 1.0 Plugins Reference Manual"> -<link rel="up" href="ch01.html" title="gst-plugins-bad Elements"> -<link rel="prev" href="gst-plugins-bad-plugins-ladspa.html" title="ladspa"> -<link rel="next" href="gst-plugins-bad-plugins-liveadder.html" title="liveadder"> -<meta name="generator" content="GTK-Doc V1.18 (XML mode)"> -<link rel="stylesheet" href="style.css" type="text/css"> -</head> -<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"> -<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="2"> -<tr valign="middle"> -<td><a accesskey="p" href="gst-plugins-bad-plugins-ladspa.html"><img src="left.png" width="24" height="24" border="0" alt="Prev"></a></td> -<td><a accesskey="u" href="ch01.html"><img src="up.png" width="24" height="24" border="0" alt="Up"></a></td> -<td><a accesskey="h" href="index.html"><img src="home.png" width="24" height="24" border="0" alt="Home"></a></td> -<th width="100%" align="center">GStreamer Bad Plugins 1.0 Plugins Reference Manual</th> -<td><a accesskey="n" href="gst-plugins-bad-plugins-liveadder.html"><img src="right.png" width="24" height="24" border="0" alt="Next"></a></td> -</tr> -<tr><td colspan="5" class="shortcuts"> -<a href="#gst-plugins-bad-plugins-legacyresample.synopsis" class="shortcut">Top</a> -  | - <a href="#gst-plugins-bad-plugins-legacyresample.description" class="shortcut">Description</a> -  | - <a href="#gst-plugins-bad-plugins-legacyresample.properties" class="shortcut">Properties</a> -</td></tr> -</table> -<div class="refentry"> -<a name="gst-plugins-bad-plugins-legacyresample"></a><div class="titlepage"></div> -<div class="refnamediv"><table width="100%"><tr> -<td valign="top"> -<h2><span class="refentrytitle"><a name="gst-plugins-bad-plugins-legacyresample.top_of_page"></a>legacyresample</span></h2> -<p>legacyresample — Resample audio</p> -</td> -<td valign="top" align="right"></td> -</tr></table></div> -<div class="refsynopsisdiv"> -<a name="gst-plugins-bad-plugins-legacyresample.synopsis"></a><h2>Synopsis</h2> -<pre class="synopsis">struct <a class="link" href="gst-plugins-bad-plugins-legacyresample.html#GstLegacyresample" title="struct GstLegacyresample">GstLegacyresample</a>; -</pre> -</div> -<div class="refsect1"> -<a name="gst-plugins-bad-plugins-legacyresample.properties"></a><h2>Properties</h2> -<pre class="synopsis"> - "<a class="link" href="gst-plugins-bad-plugins-legacyresample.html#GstLegacyresample--filter-length" title='The "filter-length" property'>filter-length</a>" <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> : Read / Write / Construct -</pre> -</div> -<div class="refsect1"> -<a name="gst-plugins-bad-plugins-legacyresample.description"></a><h2>Description</h2> -<p> -legacyresample resamples raw audio buffers to different sample rates using -a configurable windowing function to enhance quality. -</p> -<p> -</p> -<div class="refsect2"> -<a name="idp12307248"></a><h3>Example launch line</h3> -<div class="informalexample"> - <table class="listing_frame" border="0" cellpadding="0" cellspacing="0"> - <tbody> - <tr> - <td class="listing_lines" align="right"><pre>1</pre></td> - <td class="listing_code"><pre class="programlisting">gst<span class="gtkdoc opt">-</span>launch <span class="gtkdoc opt">-</span>v filesrc location<span class="gtkdoc opt">=</span>sine<span class="gtkdoc opt">.</span>ogg <span class="gtkdoc opt">!</span> oggdemux <span class="gtkdoc opt">!</span> vorbisdec <span class="gtkdoc opt">!</span> audioconvert <span class="gtkdoc opt">!</span> legacyresample <span class="gtkdoc opt">!</span> audio<span class="gtkdoc opt">/</span>x<span class="gtkdoc opt">-</span>raw<span class="gtkdoc opt">-</span><span class="gtkdoc kwb">int</span><span class="gtkdoc opt">,</span> rate<span class="gtkdoc opt">=</span><span class="number">8000</span> <span class="gtkdoc opt">!</span> alsasink</pre></td> - </tr> - </tbody> - </table> -</div> - Decode an Ogg/Vorbis downsample to 8Khz and play sound through alsa. -To create the Ogg/Vorbis file refer to the documentation of vorbisenc. -</div> -<p> -</p> -<p> -Last reviewed on 2006-03-02 (0.10.4) -</p> -<div class="refsynopsisdiv"> -<h2>Synopsis</h2> -<div class="refsect2"> -<a name="idp12304944"></a><h3>Element Information</h3> -<div class="variablelist"><table border="0"> -<col align="left" valign="top"> -<tbody> -<tr> -<td><p><span class="term">plugin</span></p></td> -<td> - <a class="link" href="gst-plugins-bad-plugins-plugin-legacyresample.html#plugin-legacyresample">legacyresample</a> - </td> -</tr> -<tr> -<td><p><span class="term">author</span></p></td> -<td>David Schleef <ds@schleef.org></td> -</tr> -<tr> -<td><p><span class="term">class</span></p></td> -<td>Filter/Converter/Audio</td> -</tr> -</tbody> -</table></div> -</div> -<hr> -<div class="refsect2"> -<a name="idp5435360"></a><h3>Element Pads</h3> -<div class="variablelist"><table border="0"> -<col align="left" valign="top"> -<tbody> -<tr> -<td><p><span class="term">name</span></p></td> -<td>sink</td> -</tr> -<tr> -<td><p><span class="term">direction</span></p></td> -<td>sink</td> -</tr> -<tr> -<td><p><span class="term">presence</span></p></td> -<td>always</td> -</tr> -<tr> -<td><p><span class="term">details</span></p></td> -<td>audio/x-raw-int, rate=(int)[ 1, 2147483647 ], channels=(int)[ 1, 2147483647 ], endianness=(int)1234, width=(int)16, depth=(int)16, signed=(boolean)true</td> -</tr> -<tr> -<td><p><span class="term"></span></p></td> -<td> audio/x-raw-int, rate=(int)[ 1, 2147483647 ], channels=(int)[ 1, 2147483647 ], endianness=(int)1234, width=(int)32, depth=(int)32, signed=(boolean)true</td> -</tr> -<tr> -<td><p><span class="term"></span></p></td> -<td> audio/x-raw-float, rate=(int)[ 1, 2147483647 ], channels=(int)[ 1, 2147483647 ], endianness=(int)1234, width=(int)32</td> -</tr> -<tr> -<td><p><span class="term"></span></p></td> -<td> audio/x-raw-float, rate=(int)[ 1, 2147483647 ], channels=(int)[ 1, 2147483647 ], endianness=(int)1234, width=(int)64</td> -</tr> -</tbody> -</table></div> -<div class="variablelist"><table border="0"> -<col align="left" valign="top"> -<tbody> -<tr> -<td><p><span class="term">name</span></p></td> -<td>src</td> -</tr> -<tr> -<td><p><span class="term">direction</span></p></td> -<td>source</td> -</tr> -<tr> -<td><p><span class="term">presence</span></p></td> -<td>always</td> -</tr> -<tr> -<td><p><span class="term">details</span></p></td> -<td>audio/x-raw-int, rate=(int)[ 1, 2147483647 ], channels=(int)[ 1, 2147483647 ], endianness=(int)1234, width=(int)16, depth=(int)16, signed=(boolean)true</td> -</tr> -<tr> -<td><p><span class="term"></span></p></td> -<td> audio/x-raw-int, rate=(int)[ 1, 2147483647 ], channels=(int)[ 1, 2147483647 ], endianness=(int)1234, width=(int)32, depth=(int)32, signed=(boolean)true</td> -</tr> -<tr> -<td><p><span class="term"></span></p></td> -<td> audio/x-raw-float, rate=(int)[ 1, 2147483647 ], channels=(int)[ 1, 2147483647 ], endianness=(int)1234, width=(int)32</td> -</tr> -<tr> -<td><p><span class="term"></span></p></td> -<td> audio/x-raw-float, rate=(int)[ 1, 2147483647 ], channels=(int)[ 1, 2147483647 ], endianness=(int)1234, width=(int)64</td> -</tr> -</tbody> -</table></div> -</div> -</div> -<p> -</p> -</div> -<div class="refsect1"> -<a name="gst-plugins-bad-plugins-legacyresample.details"></a><h2>Details</h2> -<div class="refsect2"> -<a name="GstLegacyresample"></a><h3>struct GstLegacyresample</h3> -<pre class="programlisting">struct GstLegacyresample { - GstBaseTransform element; - - GstCaps *srccaps, *sinkcaps; - - gboolean passthru; - gboolean need_discont; - - guint64 offset; - guint64 ts_offset; - GstClockTime next_ts; - GstClockTime prev_ts, prev_duration; - int channels; - - int i_rate; - int o_rate; - int filter_length; - - ResampleState * resample; -}; -</pre> -<p> -Opaque data structure. -</p> -</div> -</div> -<div class="refsect1"> -<a name="gst-plugins-bad-plugins-legacyresample.property-details"></a><h2>Property Details</h2> -<div class="refsect2"> -<a name="GstLegacyresample--filter-length"></a><h3>The <code class="literal">"filter-length"</code> property</h3> -<pre class="programlisting"> "filter-length" <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> : Read / Write / Construct</pre> -<p>Length of the resample filter.</p> -<p>Allowed values: >= 0</p> -<p>Default value: 16</p> -</div> -</div> -</div> -<div class="footer"> -<hr> - Generated by GTK-Doc V1.18</div> -</body> -</html>
\ No newline at end of file diff --git a/docs/plugins/html/gst-plugins-bad-plugins-liveadder.html b/docs/plugins/html/gst-plugins-bad-plugins-liveadder.html index 7846b636..c47dcd39 100644 --- a/docs/plugins/html/gst-plugins-bad-plugins-liveadder.html +++ b/docs/plugins/html/gst-plugins-bad-plugins-liveadder.html @@ -6,7 +6,7 @@ <meta name="generator" content="DocBook XSL Stylesheets V1.76.1"> <link rel="home" href="index.html" title="GStreamer Bad Plugins 1.0 Plugins Reference Manual"> <link rel="up" href="ch01.html" title="gst-plugins-bad Elements"> -<link rel="prev" href="gst-plugins-bad-plugins-legacyresample.html" title="legacyresample"> +<link rel="prev" href="gst-plugins-bad-plugins-ladspa.html" title="ladspa"> <link rel="next" href="gst-plugins-bad-plugins-marble.html" title="marble"> <meta name="generator" content="GTK-Doc V1.18 (XML mode)"> <link rel="stylesheet" href="style.css" type="text/css"> @@ -14,7 +14,7 @@ <body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"> <table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="2"> <tr valign="middle"> -<td><a accesskey="p" href="gst-plugins-bad-plugins-legacyresample.html"><img src="left.png" width="24" height="24" border="0" alt="Prev"></a></td> +<td><a accesskey="p" href="gst-plugins-bad-plugins-ladspa.html"><img src="left.png" width="24" height="24" border="0" alt="Prev"></a></td> <td><a accesskey="u" href="ch01.html"><img src="up.png" width="24" height="24" border="0" alt="Up"></a></td> <td><a accesskey="h" href="index.html"><img src="home.png" width="24" height="24" border="0" alt="Home"></a></td> <th width="100%" align="center">GStreamer Bad Plugins 1.0 Plugins Reference Manual</th> @@ -64,7 +64,7 @@ Last reviewed on 2008-02-10 (0.10.11) <div class="refsynopsisdiv"> <h2>Synopsis</h2> <div class="refsect2"> -<a name="idp12627824"></a><h3>Element Information</h3> +<a name="idp12826656"></a><h3>Element Information</h3> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> @@ -87,7 +87,7 @@ Last reviewed on 2008-02-10 (0.10.11) </div> <hr> <div class="refsect2"> -<a name="idp6854832"></a><h3>Element Pads</h3> +<a name="idp9026016"></a><h3>Element Pads</h3> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> diff --git a/docs/plugins/html/gst-plugins-bad-plugins-marble.html b/docs/plugins/html/gst-plugins-bad-plugins-marble.html index 54ce1646..a50b0902 100644 --- a/docs/plugins/html/gst-plugins-bad-plugins-marble.html +++ b/docs/plugins/html/gst-plugins-bad-plugins-marble.html @@ -71,7 +71,7 @@ <div class="refsynopsisdiv"> <h2>Synopsis</h2> <div class="refsect2"> -<a name="idp5036304"></a><h3>Element Information</h3> +<a name="idp7617392"></a><h3>Element Information</h3> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> @@ -94,7 +94,7 @@ </div> <hr> <div class="refsect2"> -<a name="idp12605872"></a><h3>Element Pads</h3> +<a name="idp12058384"></a><h3>Element Pads</h3> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> diff --git a/docs/plugins/html/gst-plugins-bad-plugins-mimdec.html b/docs/plugins/html/gst-plugins-bad-plugins-mimdec.html index 58bdf346..6d47b426 100644 --- a/docs/plugins/html/gst-plugins-bad-plugins-mimdec.html +++ b/docs/plugins/html/gst-plugins-bad-plugins-mimdec.html @@ -45,7 +45,7 @@ <div class="refsynopsisdiv"> <h2>Synopsis</h2> <div class="refsect2"> -<a name="idp9318496"></a><h3>Element Information</h3> +<a name="idp13106560"></a><h3>Element Information</h3> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> @@ -68,7 +68,7 @@ </div> <hr> <div class="refsect2"> -<a name="idp5816592"></a><h3>Element Pads</h3> +<a name="idp9528928"></a><h3>Element Pads</h3> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> @@ -133,7 +133,7 @@ GstAdapter *adapter; MimCtx *dec; gint buffer_size; - gboolean need_newsegment; + gboolean need_segment; }; </pre> <p> diff --git a/docs/plugins/html/gst-plugins-bad-plugins-mimenc.html b/docs/plugins/html/gst-plugins-bad-plugins-mimenc.html index d265dd41..8f7ded86 100644 --- a/docs/plugins/html/gst-plugins-bad-plugins-mimenc.html +++ b/docs/plugins/html/gst-plugins-bad-plugins-mimenc.html @@ -53,7 +53,7 @@ <div class="refsynopsisdiv"> <h2>Synopsis</h2> <div class="refsect2"> -<a name="idp12715824"></a><h3>Element Information</h3> +<a name="idp13195040"></a><h3>Element Information</h3> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> @@ -76,7 +76,7 @@ </div> <hr> <div class="refsect2"> -<a name="idp7746768"></a><h3>Element Pads</h3> +<a name="idp8042176"></a><h3>Element Pads</h3> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> @@ -147,7 +147,6 @@ gboolean paused_mode; GstSegment segment; - gboolean need_newsegment; GstClockTime last_buffer; GstClockID clock_id; gboolean stop_paused_mode; diff --git a/docs/plugins/html/gst-plugins-bad-plugins-mirror.html b/docs/plugins/html/gst-plugins-bad-plugins-mirror.html index 64870f8b..4b7b1f5b 100644 --- a/docs/plugins/html/gst-plugins-bad-plugins-mirror.html +++ b/docs/plugins/html/gst-plugins-bad-plugins-mirror.html @@ -68,7 +68,7 @@ <div class="refsynopsisdiv"> <h2>Synopsis</h2> <div class="refsect2"> -<a name="idp8864144"></a><h3>Element Information</h3> +<a name="idp8393712"></a><h3>Element Information</h3> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> @@ -91,7 +91,7 @@ </div> <hr> <div class="refsect2"> -<a name="idp12759088"></a><h3>Element Pads</h3> +<a name="idp13036976"></a><h3>Element Pads</h3> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> diff --git a/docs/plugins/html/gst-plugins-bad-plugins-modplug.html b/docs/plugins/html/gst-plugins-bad-plugins-modplug.html index d41117cc..de21140e 100644 --- a/docs/plugins/html/gst-plugins-bad-plugins-modplug.html +++ b/docs/plugins/html/gst-plugins-bad-plugins-modplug.html @@ -76,7 +76,7 @@ <div class="refsynopsisdiv"> <h2>Synopsis</h2> <div class="refsect2"> -<a name="idp12986112"></a><h3>Element Information</h3> +<a name="idp13248064"></a><h3>Element Information</h3> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> @@ -99,7 +99,7 @@ </div> <hr> <div class="refsect2"> -<a name="idp13210656"></a><h3>Element Pads</h3> +<a name="idp13636368"></a><h3>Element Pads</h3> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> diff --git a/docs/plugins/html/gst-plugins-bad-plugins-mpeg2enc.html b/docs/plugins/html/gst-plugins-bad-plugins-mpeg2enc.html index 9dfa061e..fa3130f3 100644 --- a/docs/plugins/html/gst-plugins-bad-plugins-mpeg2enc.html +++ b/docs/plugins/html/gst-plugins-bad-plugins-mpeg2enc.html @@ -94,7 +94,7 @@ GstMpeg2enc implements <div class="refsynopsisdiv"> <h2>Synopsis</h2> <div class="refsect2"> -<a name="idp13645312"></a><h3>Element Information</h3> +<a name="idp13547984"></a><h3>Element Information</h3> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> @@ -118,7 +118,7 @@ Ronald Bultje <rbultje@ronald.bitfreak.net></td> </div> <hr> <div class="refsect2"> -<a name="idp13652720"></a><h3>Element Pads</h3> +<a name="idp13555392"></a><h3>Element Pads</h3> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> diff --git a/docs/plugins/html/gst-plugins-bad-plugins-mplex.html b/docs/plugins/html/gst-plugins-bad-plugins-mplex.html index 5bf6710e..23451afb 100644 --- a/docs/plugins/html/gst-plugins-bad-plugins-mplex.html +++ b/docs/plugins/html/gst-plugins-bad-plugins-mplex.html @@ -59,7 +59,7 @@ <div class="refsynopsisdiv"> <h2>Synopsis</h2> <div class="refsect2"> -<a name="idp6272304"></a><h3>Element Information</h3> +<a name="idp12900480"></a><h3>Element Information</h3> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> @@ -84,7 +84,7 @@ Mark Nauwelaerts <mnauw@users.sourceforge.net></td> </div> <hr> <div class="refsect2"> -<a name="idp6521024"></a><h3>Element Pads</h3> +<a name="idp6275440"></a><h3>Element Pads</h3> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> diff --git a/docs/plugins/html/gst-plugins-bad-plugins-mxfdemux.html b/docs/plugins/html/gst-plugins-bad-plugins-mxfdemux.html index 1c1244d1..e830c896 100644 --- a/docs/plugins/html/gst-plugins-bad-plugins-mxfdemux.html +++ b/docs/plugins/html/gst-plugins-bad-plugins-mxfdemux.html @@ -58,7 +58,7 @@ mxfdemux demuxes an MXF file into the different contained streams. <p> </p> <div class="refsect2"> -<a name="idp9371440"></a><h3>Example launch line</h3> +<a name="idp8561696"></a><h3>Example launch line</h3> <div class="informalexample"> <table class="listing_frame" border="0" cellpadding="0" cellspacing="0"> <tbody> @@ -76,7 +76,7 @@ mxfdemux demuxes an MXF file into the different contained streams. <div class="refsynopsisdiv"> <h2>Synopsis</h2> <div class="refsect2"> -<a name="idp9985632"></a><h3>Element Information</h3> +<a name="idp9156400"></a><h3>Element Information</h3> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> @@ -99,7 +99,7 @@ mxfdemux demuxes an MXF file into the different contained streams. </div> <hr> <div class="refsect2"> -<a name="idp12923664"></a><h3>Element Pads</h3> +<a name="idp13501376"></a><h3>Element Pads</h3> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> diff --git a/docs/plugins/html/gst-plugins-bad-plugins-mxfmux.html b/docs/plugins/html/gst-plugins-bad-plugins-mxfmux.html index 4f1863e9..63282757 100644 --- a/docs/plugins/html/gst-plugins-bad-plugins-mxfmux.html +++ b/docs/plugins/html/gst-plugins-bad-plugins-mxfmux.html @@ -48,7 +48,7 @@ mxfmux muxes different streams into an MXF file. <p> </p> <div class="refsect2"> -<a name="idp13534656"></a><h3>Example launch line</h3> +<a name="idp14255584"></a><h3>Example launch line</h3> <div class="informalexample"> <table class="listing_frame" border="0" cellpadding="0" cellspacing="0"> <tbody> @@ -66,7 +66,7 @@ mxfmux muxes different streams into an MXF file. <div class="refsynopsisdiv"> <h2>Synopsis</h2> <div class="refsect2"> -<a name="idp13532160"></a><h3>Element Information</h3> +<a name="idp14253088"></a><h3>Element Information</h3> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> @@ -89,7 +89,7 @@ mxfmux muxes different streams into an MXF file. </div> <hr> <div class="refsect2"> -<a name="idp13526080"></a><h3>Element Pads</h3> +<a name="idp14247008"></a><h3>Element Pads</h3> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> diff --git a/docs/plugins/html/gst-plugins-bad-plugins-mythtvsrc.html b/docs/plugins/html/gst-plugins-bad-plugins-mythtvsrc.html index 74ae9830..9d6eba6b 100644 --- a/docs/plugins/html/gst-plugins-bad-plugins-mythtvsrc.html +++ b/docs/plugins/html/gst-plugins-bad-plugins-mythtvsrc.html @@ -67,7 +67,7 @@ GstMythtvSrc implements <div class="refsynopsisdiv"> <h2>Synopsis</h2> <div class="refsect2"> -<a name="idp10969232"></a><h3>Element Information</h3> +<a name="idp13365808"></a><h3>Element Information</h3> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> @@ -90,7 +90,7 @@ GstMythtvSrc implements </div> <hr> <div class="refsect2"> -<a name="idp12105168"></a><h3>Element Pads</h3> +<a name="idp13373216"></a><h3>Element Pads</h3> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> diff --git a/docs/plugins/html/gst-plugins-bad-plugins-nuvdemux.html b/docs/plugins/html/gst-plugins-bad-plugins-nuvdemux.html index 04a842d1..d5da6294 100644 --- a/docs/plugins/html/gst-plugins-bad-plugins-nuvdemux.html +++ b/docs/plugins/html/gst-plugins-bad-plugins-nuvdemux.html @@ -52,7 +52,7 @@ This element currently only supports pull-based scheduling. <p> </p> <div class="refsect2"> -<a name="idp13909984"></a><h3>Example launch line</h3> +<a name="idp13944096"></a><h3>Example launch line</h3> <div class="informalexample"> <table class="listing_frame" border="0" cellpadding="0" cellspacing="0"> <tbody> @@ -73,7 +73,7 @@ right decoder elements/plugins installed. <div class="refsynopsisdiv"> <h2>Synopsis</h2> <div class="refsect2"> -<a name="idp13902080"></a><h3>Element Information</h3> +<a name="idp13431056"></a><h3>Element Information</h3> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> @@ -96,7 +96,7 @@ right decoder elements/plugins installed. </div> <hr> <div class="refsect2"> -<a name="idp13895648"></a><h3>Element Pads</h3> +<a name="idp13925568"></a><h3>Element Pads</h3> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> diff --git a/docs/plugins/html/gst-plugins-bad-plugins-opencvtextoverlay.html b/docs/plugins/html/gst-plugins-bad-plugins-opencvtextoverlay.html index f02cbc0e..8262ec0f 100644 --- a/docs/plugins/html/gst-plugins-bad-plugins-opencvtextoverlay.html +++ b/docs/plugins/html/gst-plugins-bad-plugins-opencvtextoverlay.html @@ -62,7 +62,7 @@ struct <a class="link" href="gst-plugins-bad-plugins-opencvtextover <div class="refsynopsisdiv"> <h2>Synopsis</h2> <div class="refsect2"> -<a name="idp19070848"></a><h3>Element Information</h3> +<a name="idp15722560"></a><h3>Element Information</h3> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> @@ -85,7 +85,7 @@ struct <a class="link" href="gst-plugins-bad-plugins-opencvtextover </div> <hr> <div class="refsect2"> -<a name="idp20939008"></a><h3>Element Pads</h3> +<a name="idp21229872"></a><h3>Element Pads</h3> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> diff --git a/docs/plugins/html/gst-plugins-bad-plugins-pcapparse.html b/docs/plugins/html/gst-plugins-bad-plugins-pcapparse.html index 9ebcab6f..dcc9a0c8 100644 --- a/docs/plugins/html/gst-plugins-bad-plugins-pcapparse.html +++ b/docs/plugins/html/gst-plugins-bad-plugins-pcapparse.html @@ -76,7 +76,7 @@ should be included. <p> </p> <div class="refsect2"> -<a name="idp13576432"></a><h3>Example pipelines</h3> +<a name="idp13930912"></a><h3>Example pipelines</h3> <div class="informalexample"> <table class="listing_frame" border="0" cellpadding="0" cellspacing="0"> <tbody> @@ -97,7 +97,7 @@ depayload and decode them. <div class="refsynopsisdiv"> <h2>Synopsis</h2> <div class="refsect2"> -<a name="idp13579264"></a><h3>Element Information</h3> +<a name="idp13933744"></a><h3>Element Information</h3> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> @@ -120,7 +120,7 @@ depayload and decode them. </div> <hr> <div class="refsect2"> -<a name="idp13888032"></a><h3>Element Pads</h3> +<a name="idp13941152"></a><h3>Element Pads</h3> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> diff --git a/docs/plugins/html/gst-plugins-bad-plugins-pinch.html b/docs/plugins/html/gst-plugins-bad-plugins-pinch.html index ca5bb762..38131ae6 100644 --- a/docs/plugins/html/gst-plugins-bad-plugins-pinch.html +++ b/docs/plugins/html/gst-plugins-bad-plugins-pinch.html @@ -69,7 +69,7 @@ <div class="refsynopsisdiv"> <h2>Synopsis</h2> <div class="refsect2"> -<a name="idp6601296"></a><h3>Element Information</h3> +<a name="idp6354624"></a><h3>Element Information</h3> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> @@ -92,7 +92,7 @@ </div> <hr> <div class="refsect2"> -<a name="idp13569552"></a><h3>Element Pads</h3> +<a name="idp13398464"></a><h3>Element Pads</h3> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> diff --git a/docs/plugins/html/gst-plugins-bad-plugins-plugin-aiff.html b/docs/plugins/html/gst-plugins-bad-plugins-plugin-aiff.html index 9e93cd72..e1de198b 100644 --- a/docs/plugins/html/gst-plugins-bad-plugins-plugin-aiff.html +++ b/docs/plugins/html/gst-plugins-bad-plugins-plugin-aiff.html @@ -29,7 +29,7 @@ <td valign="top" align="right"></td> </tr></table></div> <div class="refsect1"> -<a name="idp20672480"></a><h2>Plugin Information</h2> +<a name="idp19668208"></a><h2>Plugin Information</h2> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> @@ -57,7 +57,7 @@ </table></div> </div> <div class="refsect1"> -<a name="idp20500576"></a><h2>Elements</h2> +<a name="idp15166784"></a><h2>Elements</h2> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> diff --git a/docs/plugins/html/gst-plugins-bad-plugins-plugin-assrender.html b/docs/plugins/html/gst-plugins-bad-plugins-plugin-assrender.html index 785028e6..02f92cb9 100644 --- a/docs/plugins/html/gst-plugins-bad-plugins-plugin-assrender.html +++ b/docs/plugins/html/gst-plugins-bad-plugins-plugin-assrender.html @@ -6,14 +6,14 @@ <meta name="generator" content="DocBook XSL Stylesheets V1.76.1"> <link rel="home" href="index.html" title="GStreamer Bad Plugins 1.0 Plugins Reference Manual"> <link rel="up" href="ch02.html" title="gst-plugins-bad Plugins"> -<link rel="prev" href="gst-plugins-bad-plugins-plugin-legacyresample.html" title="legacyresample"> +<link rel="prev" href="gst-plugins-bad-plugins-plugin-autoconvert.html" title="autoconvert"> <link rel="next" href="gst-plugins-bad-plugins-plugin-bayer.html" title="bayer"> <meta name="generator" content="GTK-Doc V1.18 (XML mode)"> <link rel="stylesheet" href="style.css" type="text/css"> </head> <body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"> <table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="2"><tr valign="middle"> -<td><a accesskey="p" href="gst-plugins-bad-plugins-plugin-legacyresample.html"><img src="left.png" width="24" height="24" border="0" alt="Prev"></a></td> +<td><a accesskey="p" href="gst-plugins-bad-plugins-plugin-autoconvert.html"><img src="left.png" width="24" height="24" border="0" alt="Prev"></a></td> <td><a accesskey="u" href="ch02.html"><img src="up.png" width="24" height="24" border="0" alt="Up"></a></td> <td><a accesskey="h" href="index.html"><img src="home.png" width="24" height="24" border="0" alt="Home"></a></td> <th width="100%" align="center">GStreamer Bad Plugins 1.0 Plugins Reference Manual</th> @@ -29,7 +29,7 @@ <td valign="top" align="right"></td> </tr></table></div> <div class="refsect1"> -<a name="idp16774416"></a><h2>Plugin Information</h2> +<a name="idp20019408"></a><h2>Plugin Information</h2> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> @@ -57,7 +57,7 @@ </table></div> </div> <div class="refsect1"> -<a name="idp18241904"></a><h2>Elements</h2> +<a name="idp18344912"></a><h2>Elements</h2> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody><tr> diff --git a/docs/plugins/html/gst-plugins-bad-plugins-plugin-audiovisualizers.html b/docs/plugins/html/gst-plugins-bad-plugins-plugin-audiovisualizers.html index 6119dbbe..b7b5875d 100644 --- a/docs/plugins/html/gst-plugins-bad-plugins-plugin-audiovisualizers.html +++ b/docs/plugins/html/gst-plugins-bad-plugins-plugin-audiovisualizers.html @@ -29,7 +29,7 @@ <td valign="top" align="right"></td> </tr></table></div> <div class="refsect1"> -<a name="idp18135888"></a><h2>Plugin Information</h2> +<a name="idp19078960"></a><h2>Plugin Information</h2> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> @@ -57,7 +57,7 @@ </table></div> </div> <div class="refsect1"> -<a name="idp19299664"></a><h2>Elements</h2> +<a name="idp18017232"></a><h2>Elements</h2> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> diff --git a/docs/plugins/html/gst-plugins-bad-plugins-plugin-autoconvert.html b/docs/plugins/html/gst-plugins-bad-plugins-plugin-autoconvert.html index d198c6a0..c0b07114 100644 --- a/docs/plugins/html/gst-plugins-bad-plugins-plugin-autoconvert.html +++ b/docs/plugins/html/gst-plugins-bad-plugins-plugin-autoconvert.html @@ -7,7 +7,7 @@ <link rel="home" href="index.html" title="GStreamer Bad Plugins 1.0 Plugins Reference Manual"> <link rel="up" href="ch02.html" title="gst-plugins-bad Plugins"> <link rel="prev" href="gst-plugins-bad-plugins-plugin-audiovisualizers.html" title="audiovisualizers"> -<link rel="next" href="gst-plugins-bad-plugins-plugin-legacyresample.html" title="legacyresample"> +<link rel="next" href="gst-plugins-bad-plugins-plugin-assrender.html" title="assrender"> <meta name="generator" content="GTK-Doc V1.18 (XML mode)"> <link rel="stylesheet" href="style.css" type="text/css"> </head> @@ -17,7 +17,7 @@ <td><a accesskey="u" href="ch02.html"><img src="up.png" width="24" height="24" border="0" alt="Up"></a></td> <td><a accesskey="h" href="index.html"><img src="home.png" width="24" height="24" border="0" alt="Home"></a></td> <th width="100%" align="center">GStreamer Bad Plugins 1.0 Plugins Reference Manual</th> -<td><a accesskey="n" href="gst-plugins-bad-plugins-plugin-legacyresample.html"><img src="right.png" width="24" height="24" border="0" alt="Next"></a></td> +<td><a accesskey="n" href="gst-plugins-bad-plugins-plugin-assrender.html"><img src="right.png" width="24" height="24" border="0" alt="Next"></a></td> </tr></table> <div class="refentry"> <a name="gst-plugins-bad-plugins-plugin-autoconvert"></a><div class="titlepage"></div> @@ -29,7 +29,7 @@ <td valign="top" align="right"></td> </tr></table></div> <div class="refsect1"> -<a name="idp21442384"></a><h2>Plugin Information</h2> +<a name="idp19021200"></a><h2>Plugin Information</h2> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> @@ -57,7 +57,7 @@ </table></div> </div> <div class="refsect1"> -<a name="idp18453456"></a><h2>Elements</h2> +<a name="idp16067856"></a><h2>Elements</h2> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> diff --git a/docs/plugins/html/gst-plugins-bad-plugins-plugin-bayer.html b/docs/plugins/html/gst-plugins-bad-plugins-plugin-bayer.html index 31c55271..32bab432 100644 --- a/docs/plugins/html/gst-plugins-bad-plugins-plugin-bayer.html +++ b/docs/plugins/html/gst-plugins-bad-plugins-plugin-bayer.html @@ -29,7 +29,7 @@ <td valign="top" align="right"></td> </tr></table></div> <div class="refsect1"> -<a name="idp17571424"></a><h2>Plugin Information</h2> +<a name="idp22325728"></a><h2>Plugin Information</h2> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> @@ -57,7 +57,7 @@ </table></div> </div> <div class="refsect1"> -<a name="idp20220160"></a><h2>Elements</h2> +<a name="idp18021488"></a><h2>Elements</h2> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> diff --git a/docs/plugins/html/gst-plugins-bad-plugins-plugin-bz2.html b/docs/plugins/html/gst-plugins-bad-plugins-plugin-bz2.html index ff41dcff..ddaa0b20 100644 --- a/docs/plugins/html/gst-plugins-bad-plugins-plugin-bz2.html +++ b/docs/plugins/html/gst-plugins-bad-plugins-plugin-bz2.html @@ -7,7 +7,7 @@ <link rel="home" href="index.html" title="GStreamer Bad Plugins 1.0 Plugins Reference Manual"> <link rel="up" href="ch02.html" title="gst-plugins-bad Plugins"> <link rel="prev" href="gst-plugins-bad-plugins-plugin-bayer.html" title="bayer"> -<link rel="next" href="gst-plugins-bad-plugins-plugin-camerabin.html" title="camerabin"> +<link rel="next" href="gst-plugins-bad-plugins-plugin-cdaudio.html" title="cdaudio"> <meta name="generator" content="GTK-Doc V1.18 (XML mode)"> <link rel="stylesheet" href="style.css" type="text/css"> </head> @@ -17,7 +17,7 @@ <td><a accesskey="u" href="ch02.html"><img src="up.png" width="24" height="24" border="0" alt="Up"></a></td> <td><a accesskey="h" href="index.html"><img src="home.png" width="24" height="24" border="0" alt="Home"></a></td> <th width="100%" align="center">GStreamer Bad Plugins 1.0 Plugins Reference Manual</th> -<td><a accesskey="n" href="gst-plugins-bad-plugins-plugin-camerabin.html"><img src="right.png" width="24" height="24" border="0" alt="Next"></a></td> +<td><a accesskey="n" href="gst-plugins-bad-plugins-plugin-cdaudio.html"><img src="right.png" width="24" height="24" border="0" alt="Next"></a></td> </tr></table> <div class="refentry"> <a name="gst-plugins-bad-plugins-plugin-bz2"></a><div class="titlepage"></div> @@ -29,7 +29,7 @@ <td valign="top" align="right"></td> </tr></table></div> <div class="refsect1"> -<a name="idp19480848"></a><h2>Plugin Information</h2> +<a name="idp20007680"></a><h2>Plugin Information</h2> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> @@ -57,7 +57,7 @@ </table></div> </div> <div class="refsect1"> -<a name="idp21543840"></a><h2>Elements</h2> +<a name="idp18973584"></a><h2>Elements</h2> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> diff --git a/docs/plugins/html/gst-plugins-bad-plugins-plugin-camerabin.html b/docs/plugins/html/gst-plugins-bad-plugins-plugin-camerabin.html deleted file mode 100644 index 9c5a2b31..00000000 --- a/docs/plugins/html/gst-plugins-bad-plugins-plugin-camerabin.html +++ /dev/null @@ -1,84 +0,0 @@ -<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> -<html> -<head> -<meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> -<title>camerabin</title> -<meta name="generator" content="DocBook XSL Stylesheets V1.76.1"> -<link rel="home" href="index.html" title="GStreamer Bad Plugins 1.0 Plugins Reference Manual"> -<link rel="up" href="ch02.html" title="gst-plugins-bad Plugins"> -<link rel="prev" href="gst-plugins-bad-plugins-plugin-bz2.html" title="bz2"> -<link rel="next" href="gst-plugins-bad-plugins-plugin-cdaudio.html" title="cdaudio"> -<meta name="generator" content="GTK-Doc V1.18 (XML mode)"> -<link rel="stylesheet" href="style.css" type="text/css"> -</head> -<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"> -<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="2"><tr valign="middle"> -<td><a accesskey="p" href="gst-plugins-bad-plugins-plugin-bz2.html"><img src="left.png" width="24" height="24" border="0" alt="Prev"></a></td> -<td><a accesskey="u" href="ch02.html"><img src="up.png" width="24" height="24" border="0" alt="Up"></a></td> -<td><a accesskey="h" href="index.html"><img src="home.png" width="24" height="24" border="0" alt="Home"></a></td> -<th width="100%" align="center">GStreamer Bad Plugins 1.0 Plugins Reference Manual</th> -<td><a accesskey="n" href="gst-plugins-bad-plugins-plugin-cdaudio.html"><img src="right.png" width="24" height="24" border="0" alt="Next"></a></td> -</tr></table> -<div class="refentry"> -<a name="gst-plugins-bad-plugins-plugin-camerabin"></a><div class="titlepage"></div> -<div class="refnamediv"><table width="100%"><tr> -<td valign="top"> -<h2><span class="refentrytitle">camerabin</span></h2> -<p>camerabin — <a name="plugin-camerabin"></a>Take image snapshots and record movies from camera</p> -</td> -<td valign="top" align="right"></td> -</tr></table></div> -<div class="refsect1"> -<a name="idp22641184"></a><h2>Plugin Information</h2> -<div class="variablelist"><table border="0"> -<col align="left" valign="top"> -<tbody> -<tr> -<td><p><span class="term">filename</span></p></td> -<td>libgstcamerabin2.so</td> -</tr> -<tr> -<td><p><span class="term">version</span></p></td> -<td>0.11.92</td> -</tr> -<tr> -<td><p><span class="term">run-time license</span></p></td> -<td>LGPL</td> -</tr> -<tr> -<td><p><span class="term">package</span></p></td> -<td>GStreamer Bad Plug-ins source release</td> -</tr> -<tr> -<td><p><span class="term">origin</span></p></td> -<td>Unknown package origin</td> -</tr> -</tbody> -</table></div> -</div> -<div class="refsect1"> -<a name="idp18366592"></a><h2>Elements</h2> -<div class="variablelist"><table border="0"> -<col align="left" valign="top"> -<tbody> -<tr> -<td><p><span class="term"><a class="link" href="gst-plugins-bad-plugins-camerabin.html" title="camerabin">camerabin</a></span></p></td> -<td>Take image snapshots and record movies from camera</td> -</tr> -<tr> -<td><p><span class="term">viewfinderbin</span></p></td> -<td>Viewfinder Bin used in camerabin2</td> -</tr> -<tr> -<td><p><span class="term">wrappercamerabinsrc</span></p></td> -<td>Wrapper camera src element for camerabin2</td> -</tr> -</tbody> -</table></div> -</div> -</div> -<div class="footer"> -<hr> - Generated by GTK-Doc V1.18</div> -</body> -</html>
\ No newline at end of file diff --git a/docs/plugins/html/gst-plugins-bad-plugins-plugin-cdaudio.html b/docs/plugins/html/gst-plugins-bad-plugins-plugin-cdaudio.html index ae01230e..57f190f7 100644 --- a/docs/plugins/html/gst-plugins-bad-plugins-plugin-cdaudio.html +++ b/docs/plugins/html/gst-plugins-bad-plugins-plugin-cdaudio.html @@ -6,14 +6,14 @@ <meta name="generator" content="DocBook XSL Stylesheets V1.76.1"> <link rel="home" href="index.html" title="GStreamer Bad Plugins 1.0 Plugins Reference Manual"> <link rel="up" href="ch02.html" title="gst-plugins-bad Plugins"> -<link rel="prev" href="gst-plugins-bad-plugins-plugin-camerabin.html" title="camerabin"> +<link rel="prev" href="gst-plugins-bad-plugins-plugin-bz2.html" title="bz2"> <link rel="next" href="gst-plugins-bad-plugins-plugin-cdxaparse.html" title="cdxaparse"> <meta name="generator" content="GTK-Doc V1.18 (XML mode)"> <link rel="stylesheet" href="style.css" type="text/css"> </head> <body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"> <table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="2"><tr valign="middle"> -<td><a accesskey="p" href="gst-plugins-bad-plugins-plugin-camerabin.html"><img src="left.png" width="24" height="24" border="0" alt="Prev"></a></td> +<td><a accesskey="p" href="gst-plugins-bad-plugins-plugin-bz2.html"><img src="left.png" width="24" height="24" border="0" alt="Prev"></a></td> <td><a accesskey="u" href="ch02.html"><img src="up.png" width="24" height="24" border="0" alt="Up"></a></td> <td><a accesskey="h" href="index.html"><img src="home.png" width="24" height="24" border="0" alt="Home"></a></td> <th width="100%" align="center">GStreamer Bad Plugins 1.0 Plugins Reference Manual</th> @@ -29,7 +29,7 @@ <td valign="top" align="right"></td> </tr></table></div> <div class="refsect1"> -<a name="idp16717744"></a><h2>Plugin Information</h2> +<a name="idp17371872"></a><h2>Plugin Information</h2> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> @@ -57,7 +57,7 @@ </table></div> </div> <div class="refsect1"> -<a name="idp18434016"></a><h2>Elements</h2> +<a name="idp22140880"></a><h2>Elements</h2> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody><tr> diff --git a/docs/plugins/html/gst-plugins-bad-plugins-plugin-cdxaparse.html b/docs/plugins/html/gst-plugins-bad-plugins-plugin-cdxaparse.html index 482367f0..a6d03b20 100644 --- a/docs/plugins/html/gst-plugins-bad-plugins-plugin-cdxaparse.html +++ b/docs/plugins/html/gst-plugins-bad-plugins-plugin-cdxaparse.html @@ -29,7 +29,7 @@ <td valign="top" align="right"></td> </tr></table></div> <div class="refsect1"> -<a name="idp19721488"></a><h2>Plugin Information</h2> +<a name="idp16364144"></a><h2>Plugin Information</h2> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> @@ -57,7 +57,7 @@ </table></div> </div> <div class="refsect1"> -<a name="idp18755392"></a><h2>Elements</h2> +<a name="idp18627920"></a><h2>Elements</h2> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> diff --git a/docs/plugins/html/gst-plugins-bad-plugins-plugin-celt.html b/docs/plugins/html/gst-plugins-bad-plugins-plugin-celt.html index a72022ad..3b8e869e 100644 --- a/docs/plugins/html/gst-plugins-bad-plugins-plugin-celt.html +++ b/docs/plugins/html/gst-plugins-bad-plugins-plugin-celt.html @@ -29,7 +29,7 @@ <td valign="top" align="right"></td> </tr></table></div> <div class="refsect1"> -<a name="idp15525824"></a><h2>Plugin Information</h2> +<a name="idp16892768"></a><h2>Plugin Information</h2> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> @@ -57,7 +57,7 @@ </table></div> </div> <div class="refsect1"> -<a name="idp19666256"></a><h2>Elements</h2> +<a name="idp16884144"></a><h2>Elements</h2> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> diff --git a/docs/plugins/html/gst-plugins-bad-plugins-plugin-coloreffects.html b/docs/plugins/html/gst-plugins-bad-plugins-plugin-coloreffects.html index 9169909c..4455884c 100644 --- a/docs/plugins/html/gst-plugins-bad-plugins-plugin-coloreffects.html +++ b/docs/plugins/html/gst-plugins-bad-plugins-plugin-coloreffects.html @@ -29,7 +29,7 @@ <td valign="top" align="right"></td> </tr></table></div> <div class="refsect1"> -<a name="idp22380448"></a><h2>Plugin Information</h2> +<a name="idp18541856"></a><h2>Plugin Information</h2> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> @@ -57,7 +57,7 @@ </table></div> </div> <div class="refsect1"> -<a name="idp16321488"></a><h2>Elements</h2> +<a name="idp16250272"></a><h2>Elements</h2> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> diff --git a/docs/plugins/html/gst-plugins-bad-plugins-plugin-curl.html b/docs/plugins/html/gst-plugins-bad-plugins-plugin-curl.html index 22d5ac4e..384999a0 100644 --- a/docs/plugins/html/gst-plugins-bad-plugins-plugin-curl.html +++ b/docs/plugins/html/gst-plugins-bad-plugins-plugin-curl.html @@ -29,7 +29,7 @@ <td valign="top" align="right"></td> </tr></table></div> <div class="refsect1"> -<a name="idp22671120"></a><h2>Plugin Information</h2> +<a name="idp16276784"></a><h2>Plugin Information</h2> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> @@ -57,7 +57,7 @@ </table></div> </div> <div class="refsect1"> -<a name="idp20952896"></a><h2>Elements</h2> +<a name="idp19483808"></a><h2>Elements</h2> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> diff --git a/docs/plugins/html/gst-plugins-bad-plugins-plugin-dataurisrc.html b/docs/plugins/html/gst-plugins-bad-plugins-plugin-dataurisrc.html index 6b2954f4..32726505 100644 --- a/docs/plugins/html/gst-plugins-bad-plugins-plugin-dataurisrc.html +++ b/docs/plugins/html/gst-plugins-bad-plugins-plugin-dataurisrc.html @@ -29,7 +29,7 @@ <td valign="top" align="right"></td> </tr></table></div> <div class="refsect1"> -<a name="idp15760656"></a><h2>Plugin Information</h2> +<a name="idp17164096"></a><h2>Plugin Information</h2> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> @@ -57,7 +57,7 @@ </table></div> </div> <div class="refsect1"> -<a name="idp16695744"></a><h2>Elements</h2> +<a name="idp15662576"></a><h2>Elements</h2> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody><tr> diff --git a/docs/plugins/html/gst-plugins-bad-plugins-plugin-dccp.html b/docs/plugins/html/gst-plugins-bad-plugins-plugin-dccp.html index f5b1d211..da2b9c1c 100644 --- a/docs/plugins/html/gst-plugins-bad-plugins-plugin-dccp.html +++ b/docs/plugins/html/gst-plugins-bad-plugins-plugin-dccp.html @@ -29,7 +29,7 @@ <td valign="top" align="right"></td> </tr></table></div> <div class="refsect1"> -<a name="idp16401376"></a><h2>Plugin Information</h2> +<a name="idp16655872"></a><h2>Plugin Information</h2> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> @@ -57,7 +57,7 @@ </table></div> </div> <div class="refsect1"> -<a name="idp16536224"></a><h2>Elements</h2> +<a name="idp19566352"></a><h2>Elements</h2> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> diff --git a/docs/plugins/html/gst-plugins-bad-plugins-plugin-debugutilsbad.html b/docs/plugins/html/gst-plugins-bad-plugins-plugin-debugutilsbad.html index 02fef6d9..9da2817d 100644 --- a/docs/plugins/html/gst-plugins-bad-plugins-plugin-debugutilsbad.html +++ b/docs/plugins/html/gst-plugins-bad-plugins-plugin-debugutilsbad.html @@ -29,7 +29,7 @@ <td valign="top" align="right"></td> </tr></table></div> <div class="refsect1"> -<a name="idp22666080"></a><h2>Plugin Information</h2> +<a name="idp19190848"></a><h2>Plugin Information</h2> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> @@ -57,7 +57,7 @@ </table></div> </div> <div class="refsect1"> -<a name="idp17988304"></a><h2>Elements</h2> +<a name="idp19319136"></a><h2>Elements</h2> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> diff --git a/docs/plugins/html/gst-plugins-bad-plugins-plugin-dfbvideosink.html b/docs/plugins/html/gst-plugins-bad-plugins-plugin-dfbvideosink.html index e8f1d31f..530a49af 100644 --- a/docs/plugins/html/gst-plugins-bad-plugins-plugin-dfbvideosink.html +++ b/docs/plugins/html/gst-plugins-bad-plugins-plugin-dfbvideosink.html @@ -29,7 +29,7 @@ <td valign="top" align="right"></td> </tr></table></div> <div class="refsect1"> -<a name="idp18566176"></a><h2>Plugin Information</h2> +<a name="idp20079296"></a><h2>Plugin Information</h2> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> @@ -57,7 +57,7 @@ </table></div> </div> <div class="refsect1"> -<a name="idp21260896"></a><h2>Elements</h2> +<a name="idp19866592"></a><h2>Elements</h2> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody><tr> diff --git a/docs/plugins/html/gst-plugins-bad-plugins-plugin-dirac.html b/docs/plugins/html/gst-plugins-bad-plugins-plugin-dirac.html index e45ffdee..81213fca 100644 --- a/docs/plugins/html/gst-plugins-bad-plugins-plugin-dirac.html +++ b/docs/plugins/html/gst-plugins-bad-plugins-plugin-dirac.html @@ -29,7 +29,7 @@ <td valign="top" align="right"></td> </tr></table></div> <div class="refsect1"> -<a name="idp21063088"></a><h2>Plugin Information</h2> +<a name="idp22387648"></a><h2>Plugin Information</h2> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> @@ -57,7 +57,7 @@ </table></div> </div> <div class="refsect1"> -<a name="idp16564624"></a><h2>Elements</h2> +<a name="idp18737264"></a><h2>Elements</h2> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody><tr> diff --git a/docs/plugins/html/gst-plugins-bad-plugins-plugin-directdraw.html b/docs/plugins/html/gst-plugins-bad-plugins-plugin-directdraw.html index 10560b52..09ce8986 100644 --- a/docs/plugins/html/gst-plugins-bad-plugins-plugin-directdraw.html +++ b/docs/plugins/html/gst-plugins-bad-plugins-plugin-directdraw.html @@ -29,7 +29,7 @@ <td valign="top" align="right"></td> </tr></table></div> <div class="refsect1"> -<a name="idp19474064"></a><h2>Plugin Information</h2> +<a name="idp17951344"></a><h2>Plugin Information</h2> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> @@ -57,7 +57,7 @@ </table></div> </div> <div class="refsect1"> -<a name="idp15662368"></a><h2>Elements</h2> +<a name="idp18455616"></a><h2>Elements</h2> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody><tr> diff --git a/docs/plugins/html/gst-plugins-bad-plugins-plugin-dtmf.html b/docs/plugins/html/gst-plugins-bad-plugins-plugin-dtmf.html index 5821fd19..33b06938 100644 --- a/docs/plugins/html/gst-plugins-bad-plugins-plugin-dtmf.html +++ b/docs/plugins/html/gst-plugins-bad-plugins-plugin-dtmf.html @@ -29,7 +29,7 @@ <td valign="top" align="right"></td> </tr></table></div> <div class="refsect1"> -<a name="idp20661728"></a><h2>Plugin Information</h2> +<a name="idp15703744"></a><h2>Plugin Information</h2> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> @@ -57,7 +57,7 @@ </table></div> </div> <div class="refsect1"> -<a name="idp15604352"></a><h2>Elements</h2> +<a name="idp19478800"></a><h2>Elements</h2> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> diff --git a/docs/plugins/html/gst-plugins-bad-plugins-plugin-dtsdec.html b/docs/plugins/html/gst-plugins-bad-plugins-plugin-dtsdec.html index dd59e624..3919f9a1 100644 --- a/docs/plugins/html/gst-plugins-bad-plugins-plugin-dtsdec.html +++ b/docs/plugins/html/gst-plugins-bad-plugins-plugin-dtsdec.html @@ -29,7 +29,7 @@ <td valign="top" align="right"></td> </tr></table></div> <div class="refsect1"> -<a name="idp20806192"></a><h2>Plugin Information</h2> +<a name="idp23142192"></a><h2>Plugin Information</h2> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> @@ -57,7 +57,7 @@ </table></div> </div> <div class="refsect1"> -<a name="idp19194080"></a><h2>Elements</h2> +<a name="idp19163440"></a><h2>Elements</h2> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody><tr> diff --git a/docs/plugins/html/gst-plugins-bad-plugins-plugin-dvb.html b/docs/plugins/html/gst-plugins-bad-plugins-plugin-dvb.html index 51015e8d..6b43ccfb 100644 --- a/docs/plugins/html/gst-plugins-bad-plugins-plugin-dvb.html +++ b/docs/plugins/html/gst-plugins-bad-plugins-plugin-dvb.html @@ -29,7 +29,7 @@ <td valign="top" align="right"></td> </tr></table></div> <div class="refsect1"> -<a name="idp23082272"></a><h2>Plugin Information</h2> +<a name="idp16710096"></a><h2>Plugin Information</h2> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> @@ -57,7 +57,7 @@ </table></div> </div> <div class="refsect1"> -<a name="idp15141232"></a><h2>Elements</h2> +<a name="idp15679696"></a><h2>Elements</h2> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> diff --git a/docs/plugins/html/gst-plugins-bad-plugins-plugin-dvdspu.html b/docs/plugins/html/gst-plugins-bad-plugins-plugin-dvdspu.html index f9f83702..325a8dde 100644 --- a/docs/plugins/html/gst-plugins-bad-plugins-plugin-dvdspu.html +++ b/docs/plugins/html/gst-plugins-bad-plugins-plugin-dvdspu.html @@ -29,7 +29,7 @@ <td valign="top" align="right"></td> </tr></table></div> <div class="refsect1"> -<a name="idp16544576"></a><h2>Plugin Information</h2> +<a name="idp16516992"></a><h2>Plugin Information</h2> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> @@ -57,7 +57,7 @@ </table></div> </div> <div class="refsect1"> -<a name="idp15672368"></a><h2>Elements</h2> +<a name="idp16770272"></a><h2>Elements</h2> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody><tr> diff --git a/docs/plugins/html/gst-plugins-bad-plugins-plugin-faac.html b/docs/plugins/html/gst-plugins-bad-plugins-plugin-faac.html index 28134508..22f56eac 100644 --- a/docs/plugins/html/gst-plugins-bad-plugins-plugin-faac.html +++ b/docs/plugins/html/gst-plugins-bad-plugins-plugin-faac.html @@ -29,7 +29,7 @@ <td valign="top" align="right"></td> </tr></table></div> <div class="refsect1"> -<a name="idp15751184"></a><h2>Plugin Information</h2> +<a name="idp16943728"></a><h2>Plugin Information</h2> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> @@ -57,7 +57,7 @@ </table></div> </div> <div class="refsect1"> -<a name="idp19543088"></a><h2>Elements</h2> +<a name="idp16516656"></a><h2>Elements</h2> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody><tr> diff --git a/docs/plugins/html/gst-plugins-bad-plugins-plugin-faad.html b/docs/plugins/html/gst-plugins-bad-plugins-plugin-faad.html index 8c040efc..2c9f8f3e 100644 --- a/docs/plugins/html/gst-plugins-bad-plugins-plugin-faad.html +++ b/docs/plugins/html/gst-plugins-bad-plugins-plugin-faad.html @@ -29,7 +29,7 @@ <td valign="top" align="right"></td> </tr></table></div> <div class="refsect1"> -<a name="idp23307536"></a><h2>Plugin Information</h2> +<a name="idp20462688"></a><h2>Plugin Information</h2> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> @@ -57,7 +57,7 @@ </table></div> </div> <div class="refsect1"> -<a name="idp18915712"></a><h2>Elements</h2> +<a name="idp19873824"></a><h2>Elements</h2> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody><tr> diff --git a/docs/plugins/html/gst-plugins-bad-plugins-plugin-fbdevsink.html b/docs/plugins/html/gst-plugins-bad-plugins-plugin-fbdevsink.html index 3b11e97d..d546f7b2 100644 --- a/docs/plugins/html/gst-plugins-bad-plugins-plugin-fbdevsink.html +++ b/docs/plugins/html/gst-plugins-bad-plugins-plugin-fbdevsink.html @@ -29,7 +29,7 @@ <td valign="top" align="right"></td> </tr></table></div> <div class="refsect1"> -<a name="idp15396224"></a><h2>Plugin Information</h2> +<a name="idp16116768"></a><h2>Plugin Information</h2> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> @@ -57,7 +57,7 @@ </table></div> </div> <div class="refsect1"> -<a name="idp14676896"></a><h2>Elements</h2> +<a name="idp17005616"></a><h2>Elements</h2> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody><tr> diff --git a/docs/plugins/html/gst-plugins-bad-plugins-plugin-festival.html b/docs/plugins/html/gst-plugins-bad-plugins-plugin-festival.html index 2839b041..71b035cb 100644 --- a/docs/plugins/html/gst-plugins-bad-plugins-plugin-festival.html +++ b/docs/plugins/html/gst-plugins-bad-plugins-plugin-festival.html @@ -29,7 +29,7 @@ <td valign="top" align="right"></td> </tr></table></div> <div class="refsect1"> -<a name="idp18351760"></a><h2>Plugin Information</h2> +<a name="idp19019888"></a><h2>Plugin Information</h2> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> @@ -57,7 +57,7 @@ </table></div> </div> <div class="refsect1"> -<a name="idp19477552"></a><h2>Elements</h2> +<a name="idp20199872"></a><h2>Elements</h2> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody><tr> diff --git a/docs/plugins/html/gst-plugins-bad-plugins-plugin-filter.html b/docs/plugins/html/gst-plugins-bad-plugins-plugin-filter.html index 7734abaf..65b8ca67 100644 --- a/docs/plugins/html/gst-plugins-bad-plugins-plugin-filter.html +++ b/docs/plugins/html/gst-plugins-bad-plugins-plugin-filter.html @@ -29,7 +29,7 @@ <td valign="top" align="right"></td> </tr></table></div> <div class="refsect1"> -<a name="idp19284368"></a><h2>Plugin Information</h2> +<a name="idp23846416"></a><h2>Plugin Information</h2> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> @@ -57,7 +57,7 @@ </table></div> </div> <div class="refsect1"> -<a name="idp16099456"></a><h2>Elements</h2> +<a name="idp15283168"></a><h2>Elements</h2> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody><tr> diff --git a/docs/plugins/html/gst-plugins-bad-plugins-plugin-freeze.html b/docs/plugins/html/gst-plugins-bad-plugins-plugin-freeze.html index 6d754c61..dd998377 100644 --- a/docs/plugins/html/gst-plugins-bad-plugins-plugin-freeze.html +++ b/docs/plugins/html/gst-plugins-bad-plugins-plugin-freeze.html @@ -29,7 +29,7 @@ <td valign="top" align="right"></td> </tr></table></div> <div class="refsect1"> -<a name="idp17047536"></a><h2>Plugin Information</h2> +<a name="idp23867648"></a><h2>Plugin Information</h2> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> @@ -57,7 +57,7 @@ </table></div> </div> <div class="refsect1"> -<a name="idp18905184"></a><h2>Elements</h2> +<a name="idp19093728"></a><h2>Elements</h2> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody><tr> diff --git a/docs/plugins/html/gst-plugins-bad-plugins-plugin-frei0r.html b/docs/plugins/html/gst-plugins-bad-plugins-plugin-frei0r.html index d624276e..1ec9ea30 100644 --- a/docs/plugins/html/gst-plugins-bad-plugins-plugin-frei0r.html +++ b/docs/plugins/html/gst-plugins-bad-plugins-plugin-frei0r.html @@ -29,7 +29,7 @@ <td valign="top" align="right"></td> </tr></table></div> <div class="refsect1"> -<a name="idp16411312"></a><h2>Plugin Information</h2> +<a name="idp19525968"></a><h2>Plugin Information</h2> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> @@ -57,7 +57,7 @@ </table></div> </div> <div class="refsect1"> -<a name="idp15692912"></a><h2>Elements</h2> +<a name="idp19371552"></a><h2>Elements</h2> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> diff --git a/docs/plugins/html/gst-plugins-bad-plugins-plugin-gaudieffects.html b/docs/plugins/html/gst-plugins-bad-plugins-plugin-gaudieffects.html index bf4b5d8c..5cff67aa 100644 --- a/docs/plugins/html/gst-plugins-bad-plugins-plugin-gaudieffects.html +++ b/docs/plugins/html/gst-plugins-bad-plugins-plugin-gaudieffects.html @@ -29,7 +29,7 @@ <td valign="top" align="right"></td> </tr></table></div> <div class="refsect1"> -<a name="idp23425776"></a><h2>Plugin Information</h2> +<a name="idp23250352"></a><h2>Plugin Information</h2> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> @@ -57,7 +57,7 @@ </table></div> </div> <div class="refsect1"> -<a name="idp17976928"></a><h2>Elements</h2> +<a name="idp20591408"></a><h2>Elements</h2> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> diff --git a/docs/plugins/html/gst-plugins-bad-plugins-plugin-geometrictransform.html b/docs/plugins/html/gst-plugins-bad-plugins-plugin-geometrictransform.html index 7a6bc6a6..81fe71fd 100644 --- a/docs/plugins/html/gst-plugins-bad-plugins-plugin-geometrictransform.html +++ b/docs/plugins/html/gst-plugins-bad-plugins-plugin-geometrictransform.html @@ -29,7 +29,7 @@ <td valign="top" align="right"></td> </tr></table></div> <div class="refsect1"> -<a name="idp15411360"></a><h2>Plugin Information</h2> +<a name="idp23273456"></a><h2>Plugin Information</h2> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> @@ -57,7 +57,7 @@ </table></div> </div> <div class="refsect1"> -<a name="idp19809840"></a><h2>Elements</h2> +<a name="idp19624512"></a><h2>Elements</h2> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> diff --git a/docs/plugins/html/gst-plugins-bad-plugins-plugin-gsm.html b/docs/plugins/html/gst-plugins-bad-plugins-plugin-gsm.html index b4d390dc..4750797d 100644 --- a/docs/plugins/html/gst-plugins-bad-plugins-plugin-gsm.html +++ b/docs/plugins/html/gst-plugins-bad-plugins-plugin-gsm.html @@ -29,7 +29,7 @@ <td valign="top" align="right"></td> </tr></table></div> <div class="refsect1"> -<a name="idp16042512"></a><h2>Plugin Information</h2> +<a name="idp16111536"></a><h2>Plugin Information</h2> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> @@ -57,7 +57,7 @@ </table></div> </div> <div class="refsect1"> -<a name="idp15484656"></a><h2>Elements</h2> +<a name="idp17494256"></a><h2>Elements</h2> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> diff --git a/docs/plugins/html/gst-plugins-bad-plugins-plugin-ivfparse.html b/docs/plugins/html/gst-plugins-bad-plugins-plugin-ivfparse.html index 5993e7fa..c4fe00c7 100644 --- a/docs/plugins/html/gst-plugins-bad-plugins-plugin-ivfparse.html +++ b/docs/plugins/html/gst-plugins-bad-plugins-plugin-ivfparse.html @@ -29,7 +29,7 @@ <td valign="top" align="right"></td> </tr></table></div> <div class="refsect1"> -<a name="idp15180320"></a><h2>Plugin Information</h2> +<a name="idp19916464"></a><h2>Plugin Information</h2> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> @@ -57,7 +57,7 @@ </table></div> </div> <div class="refsect1"> -<a name="idp19447312"></a><h2>Elements</h2> +<a name="idp20199136"></a><h2>Elements</h2> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody><tr> diff --git a/docs/plugins/html/gst-plugins-bad-plugins-plugin-jpegformat.html b/docs/plugins/html/gst-plugins-bad-plugins-plugin-jpegformat.html index 32a57246..a8fc10d5 100644 --- a/docs/plugins/html/gst-plugins-bad-plugins-plugin-jpegformat.html +++ b/docs/plugins/html/gst-plugins-bad-plugins-plugin-jpegformat.html @@ -29,7 +29,7 @@ <td valign="top" align="right"></td> </tr></table></div> <div class="refsect1"> -<a name="idp19165760"></a><h2>Plugin Information</h2> +<a name="idp23245760"></a><h2>Plugin Information</h2> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> @@ -57,7 +57,7 @@ </table></div> </div> <div class="refsect1"> -<a name="idp23384752"></a><h2>Elements</h2> +<a name="idp17009136"></a><h2>Elements</h2> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> diff --git a/docs/plugins/html/gst-plugins-bad-plugins-plugin-kate.html b/docs/plugins/html/gst-plugins-bad-plugins-plugin-kate.html index 24b6e639..9cfae8ad 100644 --- a/docs/plugins/html/gst-plugins-bad-plugins-plugin-kate.html +++ b/docs/plugins/html/gst-plugins-bad-plugins-plugin-kate.html @@ -29,7 +29,7 @@ <td valign="top" align="right"></td> </tr></table></div> <div class="refsect1"> -<a name="idp18147984"></a><h2>Plugin Information</h2> +<a name="idp23307168"></a><h2>Plugin Information</h2> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> @@ -57,7 +57,7 @@ </table></div> </div> <div class="refsect1"> -<a name="idp17314480"></a><h2>Elements</h2> +<a name="idp16749296"></a><h2>Elements</h2> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> diff --git a/docs/plugins/html/gst-plugins-bad-plugins-plugin-ladspa.html b/docs/plugins/html/gst-plugins-bad-plugins-plugin-ladspa.html index fd9dea6c..42879510 100644 --- a/docs/plugins/html/gst-plugins-bad-plugins-plugin-ladspa.html +++ b/docs/plugins/html/gst-plugins-bad-plugins-plugin-ladspa.html @@ -29,7 +29,7 @@ <td valign="top" align="right"></td> </tr></table></div> <div class="refsect1"> -<a name="idp18580208"></a><h2>Plugin Information</h2> +<a name="idp16913984"></a><h2>Plugin Information</h2> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> @@ -57,7 +57,7 @@ </table></div> </div> <div class="refsect1"> -<a name="idp18183824"></a><h2>Elements</h2> +<a name="idp16279552"></a><h2>Elements</h2> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> diff --git a/docs/plugins/html/gst-plugins-bad-plugins-plugin-legacyresample.html b/docs/plugins/html/gst-plugins-bad-plugins-plugin-legacyresample.html deleted file mode 100644 index 75a0ac5a..00000000 --- a/docs/plugins/html/gst-plugins-bad-plugins-plugin-legacyresample.html +++ /dev/null @@ -1,74 +0,0 @@ -<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> -<html> -<head> -<meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> -<title>legacyresample</title> -<meta name="generator" content="DocBook XSL Stylesheets V1.76.1"> -<link rel="home" href="index.html" title="GStreamer Bad Plugins 1.0 Plugins Reference Manual"> -<link rel="up" href="ch02.html" title="gst-plugins-bad Plugins"> -<link rel="prev" href="gst-plugins-bad-plugins-plugin-autoconvert.html" title="autoconvert"> -<link rel="next" href="gst-plugins-bad-plugins-plugin-assrender.html" title="assrender"> -<meta name="generator" content="GTK-Doc V1.18 (XML mode)"> -<link rel="stylesheet" href="style.css" type="text/css"> -</head> -<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"> -<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="2"><tr valign="middle"> -<td><a accesskey="p" href="gst-plugins-bad-plugins-plugin-autoconvert.html"><img src="left.png" width="24" height="24" border="0" alt="Prev"></a></td> -<td><a accesskey="u" href="ch02.html"><img src="up.png" width="24" height="24" border="0" alt="Up"></a></td> -<td><a accesskey="h" href="index.html"><img src="home.png" width="24" height="24" border="0" alt="Home"></a></td> -<th width="100%" align="center">GStreamer Bad Plugins 1.0 Plugins Reference Manual</th> -<td><a accesskey="n" href="gst-plugins-bad-plugins-plugin-assrender.html"><img src="right.png" width="24" height="24" border="0" alt="Next"></a></td> -</tr></table> -<div class="refentry"> -<a name="gst-plugins-bad-plugins-plugin-legacyresample"></a><div class="titlepage"></div> -<div class="refnamediv"><table width="100%"><tr> -<td valign="top"> -<h2><span class="refentrytitle">legacyresample</span></h2> -<p>legacyresample — <a name="plugin-legacyresample"></a>Resamples audio</p> -</td> -<td valign="top" align="right"></td> -</tr></table></div> -<div class="refsect1"> -<a name="idp16391968"></a><h2>Plugin Information</h2> -<div class="variablelist"><table border="0"> -<col align="left" valign="top"> -<tbody> -<tr> -<td><p><span class="term">filename</span></p></td> -<td>libgstlegacyresample.so</td> -</tr> -<tr> -<td><p><span class="term">version</span></p></td> -<td>0.10.23.1</td> -</tr> -<tr> -<td><p><span class="term">run-time license</span></p></td> -<td>LGPL</td> -</tr> -<tr> -<td><p><span class="term">package</span></p></td> -<td>GStreamer Bad Plug-ins git</td> -</tr> -<tr> -<td><p><span class="term">origin</span></p></td> -<td>Unknown package origin</td> -</tr> -</tbody> -</table></div> -</div> -<div class="refsect1"> -<a name="idp16029488"></a><h2>Elements</h2> -<div class="variablelist"><table border="0"> -<col align="left" valign="top"> -<tbody><tr> -<td><p><span class="term"><a class="link" href="gst-plugins-bad-plugins-legacyresample.html" title="legacyresample">legacyresample</a></span></p></td> -<td>Resample audio</td> -</tr></tbody> -</table></div> -</div> -</div> -<div class="footer"> -<hr> - Generated by GTK-Doc V1.18</div> -</body> -</html>
\ No newline at end of file diff --git a/docs/plugins/html/gst-plugins-bad-plugins-plugin-liveadder.html b/docs/plugins/html/gst-plugins-bad-plugins-plugin-liveadder.html index 9edc7b50..ad98b80c 100644 --- a/docs/plugins/html/gst-plugins-bad-plugins-plugin-liveadder.html +++ b/docs/plugins/html/gst-plugins-bad-plugins-plugin-liveadder.html @@ -29,7 +29,7 @@ <td valign="top" align="right"></td> </tr></table></div> <div class="refsect1"> -<a name="idp22709904"></a><h2>Plugin Information</h2> +<a name="idp19563504"></a><h2>Plugin Information</h2> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> @@ -57,7 +57,7 @@ </table></div> </div> <div class="refsect1"> -<a name="idp16970016"></a><h2>Elements</h2> +<a name="idp17188736"></a><h2>Elements</h2> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody><tr> diff --git a/docs/plugins/html/gst-plugins-bad-plugins-plugin-lv2.html b/docs/plugins/html/gst-plugins-bad-plugins-plugin-lv2.html index 6f9e93df..bcfcd66c 100644 --- a/docs/plugins/html/gst-plugins-bad-plugins-plugin-lv2.html +++ b/docs/plugins/html/gst-plugins-bad-plugins-plugin-lv2.html @@ -29,7 +29,7 @@ <td valign="top" align="right"></td> </tr></table></div> <div class="refsect1"> -<a name="idp18763296"></a><h2>Plugin Information</h2> +<a name="idp22781056"></a><h2>Plugin Information</h2> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> @@ -57,7 +57,7 @@ </table></div> </div> <div class="refsect1"> -<a name="idp16372352"></a><h2>Elements</h2> +<a name="idp20551936"></a><h2>Elements</h2> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> diff --git a/docs/plugins/html/gst-plugins-bad-plugins-plugin-mimic.html b/docs/plugins/html/gst-plugins-bad-plugins-plugin-mimic.html index ecb05ef5..5ad93e8e 100644 --- a/docs/plugins/html/gst-plugins-bad-plugins-plugin-mimic.html +++ b/docs/plugins/html/gst-plugins-bad-plugins-plugin-mimic.html @@ -29,7 +29,7 @@ <td valign="top" align="right"></td> </tr></table></div> <div class="refsect1"> -<a name="idp19134032"></a><h2>Plugin Information</h2> +<a name="idp23528784"></a><h2>Plugin Information</h2> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> @@ -57,7 +57,7 @@ </table></div> </div> <div class="refsect1"> -<a name="idp17272272"></a><h2>Elements</h2> +<a name="idp15227488"></a><h2>Elements</h2> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> diff --git a/docs/plugins/html/gst-plugins-bad-plugins-plugin-mms.html b/docs/plugins/html/gst-plugins-bad-plugins-plugin-mms.html index 0029c56e..a6cf795e 100644 --- a/docs/plugins/html/gst-plugins-bad-plugins-plugin-mms.html +++ b/docs/plugins/html/gst-plugins-bad-plugins-plugin-mms.html @@ -29,7 +29,7 @@ <td valign="top" align="right"></td> </tr></table></div> <div class="refsect1"> -<a name="idp18571072"></a><h2>Plugin Information</h2> +<a name="idp22872112"></a><h2>Plugin Information</h2> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> @@ -57,7 +57,7 @@ </table></div> </div> <div class="refsect1"> -<a name="idp16096048"></a><h2>Elements</h2> +<a name="idp17671040"></a><h2>Elements</h2> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody><tr> diff --git a/docs/plugins/html/gst-plugins-bad-plugins-plugin-modplug.html b/docs/plugins/html/gst-plugins-bad-plugins-plugin-modplug.html index 6123b09c..0b59604d 100644 --- a/docs/plugins/html/gst-plugins-bad-plugins-plugin-modplug.html +++ b/docs/plugins/html/gst-plugins-bad-plugins-plugin-modplug.html @@ -29,7 +29,7 @@ <td valign="top" align="right"></td> </tr></table></div> <div class="refsect1"> -<a name="idp23211888"></a><h2>Plugin Information</h2> +<a name="idp23842800"></a><h2>Plugin Information</h2> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> @@ -57,7 +57,7 @@ </table></div> </div> <div class="refsect1"> -<a name="idp16537200"></a><h2>Elements</h2> +<a name="idp20310752"></a><h2>Elements</h2> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody><tr> diff --git a/docs/plugins/html/gst-plugins-bad-plugins-plugin-mpeg2enc.html b/docs/plugins/html/gst-plugins-bad-plugins-plugin-mpeg2enc.html index d0cd12ea..ab0a0dce 100644 --- a/docs/plugins/html/gst-plugins-bad-plugins-plugin-mpeg2enc.html +++ b/docs/plugins/html/gst-plugins-bad-plugins-plugin-mpeg2enc.html @@ -29,7 +29,7 @@ <td valign="top" align="right"></td> </tr></table></div> <div class="refsect1"> -<a name="idp22758032"></a><h2>Plugin Information</h2> +<a name="idp20025792"></a><h2>Plugin Information</h2> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> @@ -57,7 +57,7 @@ </table></div> </div> <div class="refsect1"> -<a name="idp23236672"></a><h2>Elements</h2> +<a name="idp22653344"></a><h2>Elements</h2> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody><tr> diff --git a/docs/plugins/html/gst-plugins-bad-plugins-plugin-mpeg4videoparse.html b/docs/plugins/html/gst-plugins-bad-plugins-plugin-mpeg4videoparse.html index 31764d7e..dad026ae 100644 --- a/docs/plugins/html/gst-plugins-bad-plugins-plugin-mpeg4videoparse.html +++ b/docs/plugins/html/gst-plugins-bad-plugins-plugin-mpeg4videoparse.html @@ -29,7 +29,7 @@ <td valign="top" align="right"></td> </tr></table></div> <div class="refsect1"> -<a name="idp18255584"></a><h2>Plugin Information</h2> +<a name="idp17501296"></a><h2>Plugin Information</h2> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> @@ -57,7 +57,7 @@ </table></div> </div> <div class="refsect1"> -<a name="idp20412176"></a><h2>Elements</h2> +<a name="idp16429744"></a><h2>Elements</h2> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody><tr> diff --git a/docs/plugins/html/gst-plugins-bad-plugins-plugin-mpegdemux2.html b/docs/plugins/html/gst-plugins-bad-plugins-plugin-mpegdemux2.html index 3bfc2d39..6573abab 100644 --- a/docs/plugins/html/gst-plugins-bad-plugins-plugin-mpegdemux2.html +++ b/docs/plugins/html/gst-plugins-bad-plugins-plugin-mpegdemux2.html @@ -29,7 +29,7 @@ <td valign="top" align="right"></td> </tr></table></div> <div class="refsect1"> -<a name="idp15521376"></a><h2>Plugin Information</h2> +<a name="idp16721872"></a><h2>Plugin Information</h2> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> @@ -57,7 +57,7 @@ </table></div> </div> <div class="refsect1"> -<a name="idp22958864"></a><h2>Elements</h2> +<a name="idp16848768"></a><h2>Elements</h2> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody><tr> diff --git a/docs/plugins/html/gst-plugins-bad-plugins-plugin-mpegpsmux.html b/docs/plugins/html/gst-plugins-bad-plugins-plugin-mpegpsmux.html index e4198a72..5bfeefb5 100644 --- a/docs/plugins/html/gst-plugins-bad-plugins-plugin-mpegpsmux.html +++ b/docs/plugins/html/gst-plugins-bad-plugins-plugin-mpegpsmux.html @@ -29,7 +29,7 @@ <td valign="top" align="right"></td> </tr></table></div> <div class="refsect1"> -<a name="idp19269520"></a><h2>Plugin Information</h2> +<a name="idp23102432"></a><h2>Plugin Information</h2> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> @@ -57,7 +57,7 @@ </table></div> </div> <div class="refsect1"> -<a name="idp22686176"></a><h2>Elements</h2> +<a name="idp17409424"></a><h2>Elements</h2> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody><tr> diff --git a/docs/plugins/html/gst-plugins-bad-plugins-plugin-mpegtsmux.html b/docs/plugins/html/gst-plugins-bad-plugins-plugin-mpegtsmux.html index 4f2fbcdf..76aa0905 100644 --- a/docs/plugins/html/gst-plugins-bad-plugins-plugin-mpegtsmux.html +++ b/docs/plugins/html/gst-plugins-bad-plugins-plugin-mpegtsmux.html @@ -29,7 +29,7 @@ <td valign="top" align="right"></td> </tr></table></div> <div class="refsect1"> -<a name="idp23252272"></a><h2>Plugin Information</h2> +<a name="idp16614464"></a><h2>Plugin Information</h2> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> @@ -57,7 +57,7 @@ </table></div> </div> <div class="refsect1"> -<a name="idp18461152"></a><h2>Elements</h2> +<a name="idp22694704"></a><h2>Elements</h2> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody><tr> diff --git a/docs/plugins/html/gst-plugins-bad-plugins-plugin-mplex.html b/docs/plugins/html/gst-plugins-bad-plugins-plugin-mplex.html index bb01860b..c41edded 100644 --- a/docs/plugins/html/gst-plugins-bad-plugins-plugin-mplex.html +++ b/docs/plugins/html/gst-plugins-bad-plugins-plugin-mplex.html @@ -29,7 +29,7 @@ <td valign="top" align="right"></td> </tr></table></div> <div class="refsect1"> -<a name="idp16772272"></a><h2>Plugin Information</h2> +<a name="idp18386272"></a><h2>Plugin Information</h2> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> @@ -57,7 +57,7 @@ </table></div> </div> <div class="refsect1"> -<a name="idp17888464"></a><h2>Elements</h2> +<a name="idp24238032"></a><h2>Elements</h2> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody><tr> diff --git a/docs/plugins/html/gst-plugins-bad-plugins-plugin-musepack.html b/docs/plugins/html/gst-plugins-bad-plugins-plugin-musepack.html index 13b95fe8..6e7cda07 100644 --- a/docs/plugins/html/gst-plugins-bad-plugins-plugin-musepack.html +++ b/docs/plugins/html/gst-plugins-bad-plugins-plugin-musepack.html @@ -29,7 +29,7 @@ <td valign="top" align="right"></td> </tr></table></div> <div class="refsect1"> -<a name="idp19039536"></a><h2>Plugin Information</h2> +<a name="idp16696832"></a><h2>Plugin Information</h2> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> @@ -57,7 +57,7 @@ </table></div> </div> <div class="refsect1"> -<a name="idp19254064"></a><h2>Elements</h2> +<a name="idp23816224"></a><h2>Elements</h2> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody><tr> diff --git a/docs/plugins/html/gst-plugins-bad-plugins-plugin-musicbrainz.html b/docs/plugins/html/gst-plugins-bad-plugins-plugin-musicbrainz.html index aa3e1c06..c59a626b 100644 --- a/docs/plugins/html/gst-plugins-bad-plugins-plugin-musicbrainz.html +++ b/docs/plugins/html/gst-plugins-bad-plugins-plugin-musicbrainz.html @@ -29,7 +29,7 @@ <td valign="top" align="right"></td> </tr></table></div> <div class="refsect1"> -<a name="idp19565808"></a><h2>Plugin Information</h2> +<a name="idp23400608"></a><h2>Plugin Information</h2> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> @@ -57,7 +57,7 @@ </table></div> </div> <div class="refsect1"> -<a name="idp17849440"></a><h2>Elements</h2> +<a name="idp16594320"></a><h2>Elements</h2> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody><tr> diff --git a/docs/plugins/html/gst-plugins-bad-plugins-plugin-mve.html b/docs/plugins/html/gst-plugins-bad-plugins-plugin-mve.html index 1484d3b4..e1c43679 100644 --- a/docs/plugins/html/gst-plugins-bad-plugins-plugin-mve.html +++ b/docs/plugins/html/gst-plugins-bad-plugins-plugin-mve.html @@ -29,7 +29,7 @@ <td valign="top" align="right"></td> </tr></table></div> <div class="refsect1"> -<a name="idp19986400"></a><h2>Plugin Information</h2> +<a name="idp23350976"></a><h2>Plugin Information</h2> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> @@ -57,7 +57,7 @@ </table></div> </div> <div class="refsect1"> -<a name="idp17113328"></a><h2>Elements</h2> +<a name="idp23884448"></a><h2>Elements</h2> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> diff --git a/docs/plugins/html/gst-plugins-bad-plugins-plugin-mxf.html b/docs/plugins/html/gst-plugins-bad-plugins-plugin-mxf.html index 84c1627d..65bd63a5 100644 --- a/docs/plugins/html/gst-plugins-bad-plugins-plugin-mxf.html +++ b/docs/plugins/html/gst-plugins-bad-plugins-plugin-mxf.html @@ -29,7 +29,7 @@ <td valign="top" align="right"></td> </tr></table></div> <div class="refsect1"> -<a name="idp22802544"></a><h2>Plugin Information</h2> +<a name="idp18689488"></a><h2>Plugin Information</h2> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> @@ -57,7 +57,7 @@ </table></div> </div> <div class="refsect1"> -<a name="idp15261168"></a><h2>Elements</h2> +<a name="idp24343712"></a><h2>Elements</h2> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> diff --git a/docs/plugins/html/gst-plugins-bad-plugins-plugin-nas.html b/docs/plugins/html/gst-plugins-bad-plugins-plugin-nas.html index d5a3bd5e..b1699af1 100644 --- a/docs/plugins/html/gst-plugins-bad-plugins-plugin-nas.html +++ b/docs/plugins/html/gst-plugins-bad-plugins-plugin-nas.html @@ -29,7 +29,7 @@ <td valign="top" align="right"></td> </tr></table></div> <div class="refsect1"> -<a name="idp22828096"></a><h2>Plugin Information</h2> +<a name="idp17499248"></a><h2>Plugin Information</h2> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> @@ -57,7 +57,7 @@ </table></div> </div> <div class="refsect1"> -<a name="idp16523184"></a><h2>Elements</h2> +<a name="idp18591856"></a><h2>Elements</h2> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody><tr> diff --git a/docs/plugins/html/gst-plugins-bad-plugins-plugin-neon.html b/docs/plugins/html/gst-plugins-bad-plugins-plugin-neon.html index 69170aa8..99197f02 100644 --- a/docs/plugins/html/gst-plugins-bad-plugins-plugin-neon.html +++ b/docs/plugins/html/gst-plugins-bad-plugins-plugin-neon.html @@ -29,7 +29,7 @@ <td valign="top" align="right"></td> </tr></table></div> <div class="refsect1"> -<a name="idp22970112"></a><h2>Plugin Information</h2> +<a name="idp15775552"></a><h2>Plugin Information</h2> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> @@ -57,7 +57,7 @@ </table></div> </div> <div class="refsect1"> -<a name="idp16104624"></a><h2>Elements</h2> +<a name="idp19014224"></a><h2>Elements</h2> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody><tr> diff --git a/docs/plugins/html/gst-plugins-bad-plugins-plugin-nsf.html b/docs/plugins/html/gst-plugins-bad-plugins-plugin-nsf.html index d77680ec..3f17f55e 100644 --- a/docs/plugins/html/gst-plugins-bad-plugins-plugin-nsf.html +++ b/docs/plugins/html/gst-plugins-bad-plugins-plugin-nsf.html @@ -29,7 +29,7 @@ <td valign="top" align="right"></td> </tr></table></div> <div class="refsect1"> -<a name="idp22786864"></a><h2>Plugin Information</h2> +<a name="idp18236560"></a><h2>Plugin Information</h2> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> @@ -57,7 +57,7 @@ </table></div> </div> <div class="refsect1"> -<a name="idp15614256"></a><h2>Elements</h2> +<a name="idp15937840"></a><h2>Elements</h2> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody><tr> diff --git a/docs/plugins/html/gst-plugins-bad-plugins-plugin-nuvdemux.html b/docs/plugins/html/gst-plugins-bad-plugins-plugin-nuvdemux.html index 1d597a39..06831c00 100644 --- a/docs/plugins/html/gst-plugins-bad-plugins-plugin-nuvdemux.html +++ b/docs/plugins/html/gst-plugins-bad-plugins-plugin-nuvdemux.html @@ -29,7 +29,7 @@ <td valign="top" align="right"></td> </tr></table></div> <div class="refsect1"> -<a name="idp22774736"></a><h2>Plugin Information</h2> +<a name="idp22496192"></a><h2>Plugin Information</h2> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> @@ -57,7 +57,7 @@ </table></div> </div> <div class="refsect1"> -<a name="idp15765696"></a><h2>Elements</h2> +<a name="idp23318064"></a><h2>Elements</h2> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody><tr> diff --git a/docs/plugins/html/gst-plugins-bad-plugins-plugin-opencv.html b/docs/plugins/html/gst-plugins-bad-plugins-plugin-opencv.html index 4d73304a..0b66a558 100644 --- a/docs/plugins/html/gst-plugins-bad-plugins-plugin-opencv.html +++ b/docs/plugins/html/gst-plugins-bad-plugins-plugin-opencv.html @@ -29,7 +29,7 @@ <td valign="top" align="right"></td> </tr></table></div> <div class="refsect1"> -<a name="idp17789360"></a><h2>Plugin Information</h2> +<a name="idp23509792"></a><h2>Plugin Information</h2> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> @@ -57,7 +57,7 @@ </table></div> </div> <div class="refsect1"> -<a name="idp18477536"></a><h2>Elements</h2> +<a name="idp22316272"></a><h2>Elements</h2> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> diff --git a/docs/plugins/html/gst-plugins-bad-plugins-plugin-pcapparse.html b/docs/plugins/html/gst-plugins-bad-plugins-plugin-pcapparse.html index 657e6846..e7cfaca1 100644 --- a/docs/plugins/html/gst-plugins-bad-plugins-plugin-pcapparse.html +++ b/docs/plugins/html/gst-plugins-bad-plugins-plugin-pcapparse.html @@ -29,7 +29,7 @@ <td valign="top" align="right"></td> </tr></table></div> <div class="refsect1"> -<a name="idp16840944"></a><h2>Plugin Information</h2> +<a name="idp16427792"></a><h2>Plugin Information</h2> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> @@ -57,7 +57,7 @@ </table></div> </div> <div class="refsect1"> -<a name="idp15379424"></a><h2>Elements</h2> +<a name="idp22426912"></a><h2>Elements</h2> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> diff --git a/docs/plugins/html/gst-plugins-bad-plugins-plugin-rawparse.html b/docs/plugins/html/gst-plugins-bad-plugins-plugin-rawparse.html index 7ffde99a..d4d2e06c 100644 --- a/docs/plugins/html/gst-plugins-bad-plugins-plugin-rawparse.html +++ b/docs/plugins/html/gst-plugins-bad-plugins-plugin-rawparse.html @@ -29,7 +29,7 @@ <td valign="top" align="right"></td> </tr></table></div> <div class="refsect1"> -<a name="idp16344432"></a><h2>Plugin Information</h2> +<a name="idp21282896"></a><h2>Plugin Information</h2> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> @@ -57,7 +57,7 @@ </table></div> </div> <div class="refsect1"> -<a name="idp16463280"></a><h2>Elements</h2> +<a name="idp20091488"></a><h2>Elements</h2> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> diff --git a/docs/plugins/html/gst-plugins-bad-plugins-plugin-real.html b/docs/plugins/html/gst-plugins-bad-plugins-plugin-real.html index 1b068cd7..2e9ead9a 100644 --- a/docs/plugins/html/gst-plugins-bad-plugins-plugin-real.html +++ b/docs/plugins/html/gst-plugins-bad-plugins-plugin-real.html @@ -29,7 +29,7 @@ <td valign="top" align="right"></td> </tr></table></div> <div class="refsect1"> -<a name="idp22902032"></a><h2>Plugin Information</h2> +<a name="idp17087424"></a><h2>Plugin Information</h2> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> @@ -57,7 +57,7 @@ </table></div> </div> <div class="refsect1"> -<a name="idp23161856"></a><h2>Elements</h2> +<a name="idp22656304"></a><h2>Elements</h2> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> diff --git a/docs/plugins/html/gst-plugins-bad-plugins-plugin-rfbsrc.html b/docs/plugins/html/gst-plugins-bad-plugins-plugin-rfbsrc.html index 35eb4f90..fed11526 100644 --- a/docs/plugins/html/gst-plugins-bad-plugins-plugin-rfbsrc.html +++ b/docs/plugins/html/gst-plugins-bad-plugins-plugin-rfbsrc.html @@ -29,7 +29,7 @@ <td valign="top" align="right"></td> </tr></table></div> <div class="refsect1"> -<a name="idp16808720"></a><h2>Plugin Information</h2> +<a name="idp15874192"></a><h2>Plugin Information</h2> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> @@ -57,7 +57,7 @@ </table></div> </div> <div class="refsect1"> -<a name="idp23268192"></a><h2>Elements</h2> +<a name="idp16890928"></a><h2>Elements</h2> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody><tr> diff --git a/docs/plugins/html/gst-plugins-bad-plugins-plugin-rsvg.html b/docs/plugins/html/gst-plugins-bad-plugins-plugin-rsvg.html index 234cbf01..4b61b5a9 100644 --- a/docs/plugins/html/gst-plugins-bad-plugins-plugin-rsvg.html +++ b/docs/plugins/html/gst-plugins-bad-plugins-plugin-rsvg.html @@ -29,7 +29,7 @@ <td valign="top" align="right"></td> </tr></table></div> <div class="refsect1"> -<a name="idp18305840"></a><h2>Plugin Information</h2> +<a name="idp24214448"></a><h2>Plugin Information</h2> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> @@ -57,7 +57,7 @@ </table></div> </div> <div class="refsect1"> -<a name="idp17811200"></a><h2>Elements</h2> +<a name="idp15278048"></a><h2>Elements</h2> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> diff --git a/docs/plugins/html/gst-plugins-bad-plugins-plugin-rtmp.html b/docs/plugins/html/gst-plugins-bad-plugins-plugin-rtmp.html index 8c0420a3..438a6cee 100644 --- a/docs/plugins/html/gst-plugins-bad-plugins-plugin-rtmp.html +++ b/docs/plugins/html/gst-plugins-bad-plugins-plugin-rtmp.html @@ -29,7 +29,7 @@ <td valign="top" align="right"></td> </tr></table></div> <div class="refsect1"> -<a name="idp15764768"></a><h2>Plugin Information</h2> +<a name="idp21036416"></a><h2>Plugin Information</h2> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> @@ -57,7 +57,7 @@ </table></div> </div> <div class="refsect1"> -<a name="idp20960624"></a><h2>Elements</h2> +<a name="idp23088224"></a><h2>Elements</h2> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> diff --git a/docs/plugins/html/gst-plugins-bad-plugins-plugin-rtpmux.html b/docs/plugins/html/gst-plugins-bad-plugins-plugin-rtpmux.html index 783862ad..273b4db8 100644 --- a/docs/plugins/html/gst-plugins-bad-plugins-plugin-rtpmux.html +++ b/docs/plugins/html/gst-plugins-bad-plugins-plugin-rtpmux.html @@ -29,7 +29,7 @@ <td valign="top" align="right"></td> </tr></table></div> <div class="refsect1"> -<a name="idp20236832"></a><h2>Plugin Information</h2> +<a name="idp15271952"></a><h2>Plugin Information</h2> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> @@ -57,7 +57,7 @@ </table></div> </div> <div class="refsect1"> -<a name="idp15437920"></a><h2>Elements</h2> +<a name="idp22705248"></a><h2>Elements</h2> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> diff --git a/docs/plugins/html/gst-plugins-bad-plugins-plugin-scaletempo.html b/docs/plugins/html/gst-plugins-bad-plugins-plugin-scaletempo.html index 365875f2..b12ab8d5 100644 --- a/docs/plugins/html/gst-plugins-bad-plugins-plugin-scaletempo.html +++ b/docs/plugins/html/gst-plugins-bad-plugins-plugin-scaletempo.html @@ -29,7 +29,7 @@ <td valign="top" align="right"></td> </tr></table></div> <div class="refsect1"> -<a name="idp21376464"></a><h2>Plugin Information</h2> +<a name="idp18052432"></a><h2>Plugin Information</h2> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> @@ -57,7 +57,7 @@ </table></div> </div> <div class="refsect1"> -<a name="idp15105696"></a><h2>Elements</h2> +<a name="idp23474192"></a><h2>Elements</h2> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody><tr> diff --git a/docs/plugins/html/gst-plugins-bad-plugins-plugin-sdl.html b/docs/plugins/html/gst-plugins-bad-plugins-plugin-sdl.html index 943ecef0..806887d2 100644 --- a/docs/plugins/html/gst-plugins-bad-plugins-plugin-sdl.html +++ b/docs/plugins/html/gst-plugins-bad-plugins-plugin-sdl.html @@ -29,7 +29,7 @@ <td valign="top" align="right"></td> </tr></table></div> <div class="refsect1"> -<a name="idp22628304"></a><h2>Plugin Information</h2> +<a name="idp23537968"></a><h2>Plugin Information</h2> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> @@ -57,7 +57,7 @@ </table></div> </div> <div class="refsect1"> -<a name="idp16669024"></a><h2>Elements</h2> +<a name="idp24834512"></a><h2>Elements</h2> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> diff --git a/docs/plugins/html/gst-plugins-bad-plugins-plugin-sdp.html b/docs/plugins/html/gst-plugins-bad-plugins-plugin-sdp.html index 06fe525f..58b8802c 100644 --- a/docs/plugins/html/gst-plugins-bad-plugins-plugin-sdp.html +++ b/docs/plugins/html/gst-plugins-bad-plugins-plugin-sdp.html @@ -29,7 +29,7 @@ <td valign="top" align="right"></td> </tr></table></div> <div class="refsect1"> -<a name="idp15411616"></a><h2>Plugin Information</h2> +<a name="idp18968592"></a><h2>Plugin Information</h2> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> @@ -57,7 +57,7 @@ </table></div> </div> <div class="refsect1"> -<a name="idp19035488"></a><h2>Elements</h2> +<a name="idp18741552"></a><h2>Elements</h2> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody><tr> diff --git a/docs/plugins/html/gst-plugins-bad-plugins-plugin-shm.html b/docs/plugins/html/gst-plugins-bad-plugins-plugin-shm.html index a347f6c0..54ded6f7 100644 --- a/docs/plugins/html/gst-plugins-bad-plugins-plugin-shm.html +++ b/docs/plugins/html/gst-plugins-bad-plugins-plugin-shm.html @@ -29,7 +29,7 @@ <td valign="top" align="right"></td> </tr></table></div> <div class="refsect1"> -<a name="idp15785088"></a><h2>Plugin Information</h2> +<a name="idp20059952"></a><h2>Plugin Information</h2> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> @@ -57,7 +57,7 @@ </table></div> </div> <div class="refsect1"> -<a name="idp15727952"></a><h2>Elements</h2> +<a name="idp16133504"></a><h2>Elements</h2> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> diff --git a/docs/plugins/html/gst-plugins-bad-plugins-plugin-sndfile.html b/docs/plugins/html/gst-plugins-bad-plugins-plugin-sndfile.html index 3f9a37d9..2e77d9e6 100644 --- a/docs/plugins/html/gst-plugins-bad-plugins-plugin-sndfile.html +++ b/docs/plugins/html/gst-plugins-bad-plugins-plugin-sndfile.html @@ -29,7 +29,7 @@ <td valign="top" align="right"></td> </tr></table></div> <div class="refsect1"> -<a name="idp24299216"></a><h2>Plugin Information</h2> +<a name="idp20756192"></a><h2>Plugin Information</h2> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> @@ -57,7 +57,7 @@ </table></div> </div> <div class="refsect1"> -<a name="idp22650672"></a><h2>Elements</h2> +<a name="idp18353152"></a><h2>Elements</h2> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> diff --git a/docs/plugins/html/gst-plugins-bad-plugins-plugin-soundtouch.html b/docs/plugins/html/gst-plugins-bad-plugins-plugin-soundtouch.html index d633c5c8..20dc65c9 100644 --- a/docs/plugins/html/gst-plugins-bad-plugins-plugin-soundtouch.html +++ b/docs/plugins/html/gst-plugins-bad-plugins-plugin-soundtouch.html @@ -29,7 +29,7 @@ <td valign="top" align="right"></td> </tr></table></div> <div class="refsect1"> -<a name="idp16654768"></a><h2>Plugin Information</h2> +<a name="idp20304512"></a><h2>Plugin Information</h2> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> @@ -57,7 +57,7 @@ </table></div> </div> <div class="refsect1"> -<a name="idp18122240"></a><h2>Elements</h2> +<a name="idp17399008"></a><h2>Elements</h2> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> diff --git a/docs/plugins/html/gst-plugins-bad-plugins-plugin-spcdec.html b/docs/plugins/html/gst-plugins-bad-plugins-plugin-spcdec.html index b31b540a..ce2fc05e 100644 --- a/docs/plugins/html/gst-plugins-bad-plugins-plugin-spcdec.html +++ b/docs/plugins/html/gst-plugins-bad-plugins-plugin-spcdec.html @@ -29,7 +29,7 @@ <td valign="top" align="right"></td> </tr></table></div> <div class="refsect1"> -<a name="idp19052928"></a><h2>Plugin Information</h2> +<a name="idp20141440"></a><h2>Plugin Information</h2> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> @@ -57,7 +57,7 @@ </table></div> </div> <div class="refsect1"> -<a name="idp19997824"></a><h2>Elements</h2> +<a name="idp20074336"></a><h2>Elements</h2> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody><tr> diff --git a/docs/plugins/html/gst-plugins-bad-plugins-plugin-speed.html b/docs/plugins/html/gst-plugins-bad-plugins-plugin-speed.html index e4ec0bb2..8de4103e 100644 --- a/docs/plugins/html/gst-plugins-bad-plugins-plugin-speed.html +++ b/docs/plugins/html/gst-plugins-bad-plugins-plugin-speed.html @@ -29,7 +29,7 @@ <td valign="top" align="right"></td> </tr></table></div> <div class="refsect1"> -<a name="idp20957216"></a><h2>Plugin Information</h2> +<a name="idp15937152"></a><h2>Plugin Information</h2> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> @@ -57,7 +57,7 @@ </table></div> </div> <div class="refsect1"> -<a name="idp17134864"></a><h2>Elements</h2> +<a name="idp21308464"></a><h2>Elements</h2> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody><tr> diff --git a/docs/plugins/html/gst-plugins-bad-plugins-plugin-stereo.html b/docs/plugins/html/gst-plugins-bad-plugins-plugin-stereo.html index 137bb9fd..9a29e739 100644 --- a/docs/plugins/html/gst-plugins-bad-plugins-plugin-stereo.html +++ b/docs/plugins/html/gst-plugins-bad-plugins-plugin-stereo.html @@ -29,7 +29,7 @@ <td valign="top" align="right"></td> </tr></table></div> <div class="refsect1"> -<a name="idp19050112"></a><h2>Plugin Information</h2> +<a name="idp16026848"></a><h2>Plugin Information</h2> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> @@ -57,7 +57,7 @@ </table></div> </div> <div class="refsect1"> -<a name="idp15127456"></a><h2>Elements</h2> +<a name="idp16104624"></a><h2>Elements</h2> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody><tr> diff --git a/docs/plugins/html/gst-plugins-bad-plugins-plugin-swfdec.html b/docs/plugins/html/gst-plugins-bad-plugins-plugin-swfdec.html index 4a695a0f..a907adc8 100644 --- a/docs/plugins/html/gst-plugins-bad-plugins-plugin-swfdec.html +++ b/docs/plugins/html/gst-plugins-bad-plugins-plugin-swfdec.html @@ -29,7 +29,7 @@ <td valign="top" align="right"></td> </tr></table></div> <div class="refsect1"> -<a name="idp20106320"></a><h2>Plugin Information</h2> +<a name="idp16258128"></a><h2>Plugin Information</h2> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> @@ -57,7 +57,7 @@ </table></div> </div> <div class="refsect1"> -<a name="idp15038272"></a><h2>Elements</h2> +<a name="idp22103120"></a><h2>Elements</h2> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody><tr> diff --git a/docs/plugins/html/gst-plugins-bad-plugins-plugin-timidity.html b/docs/plugins/html/gst-plugins-bad-plugins-plugin-timidity.html index 865a39d6..cd488907 100644 --- a/docs/plugins/html/gst-plugins-bad-plugins-plugin-timidity.html +++ b/docs/plugins/html/gst-plugins-bad-plugins-plugin-timidity.html @@ -29,7 +29,7 @@ <td valign="top" align="right"></td> </tr></table></div> <div class="refsect1"> -<a name="idp16646432"></a><h2>Plugin Information</h2> +<a name="idp16245712"></a><h2>Plugin Information</h2> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> @@ -57,7 +57,7 @@ </table></div> </div> <div class="refsect1"> -<a name="idp23072160"></a><h2>Elements</h2> +<a name="idp16039504"></a><h2>Elements</h2> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody><tr> diff --git a/docs/plugins/html/gst-plugins-bad-plugins-plugin-tta.html b/docs/plugins/html/gst-plugins-bad-plugins-plugin-tta.html index b9cf5a3c..ee0567c6 100644 --- a/docs/plugins/html/gst-plugins-bad-plugins-plugin-tta.html +++ b/docs/plugins/html/gst-plugins-bad-plugins-plugin-tta.html @@ -29,7 +29,7 @@ <td valign="top" align="right"></td> </tr></table></div> <div class="refsect1"> -<a name="idp21557984"></a><h2>Plugin Information</h2> +<a name="idp16843808"></a><h2>Plugin Information</h2> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> @@ -57,7 +57,7 @@ </table></div> </div> <div class="refsect1"> -<a name="idp22908304"></a><h2>Elements</h2> +<a name="idp24280816"></a><h2>Elements</h2> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> diff --git a/docs/plugins/html/gst-plugins-bad-plugins-plugin-vcdsrc.html b/docs/plugins/html/gst-plugins-bad-plugins-plugin-vcdsrc.html index c62d39fc..0a1ef79c 100644 --- a/docs/plugins/html/gst-plugins-bad-plugins-plugin-vcdsrc.html +++ b/docs/plugins/html/gst-plugins-bad-plugins-plugin-vcdsrc.html @@ -29,7 +29,7 @@ <td valign="top" align="right"></td> </tr></table></div> <div class="refsect1"> -<a name="idp18538960"></a><h2>Plugin Information</h2> +<a name="idp17496064"></a><h2>Plugin Information</h2> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> @@ -57,7 +57,7 @@ </table></div> </div> <div class="refsect1"> -<a name="idp20216976"></a><h2>Elements</h2> +<a name="idp19015968"></a><h2>Elements</h2> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody><tr> diff --git a/docs/plugins/html/gst-plugins-bad-plugins-plugin-videosignal.html b/docs/plugins/html/gst-plugins-bad-plugins-plugin-videosignal.html index 16acbe7a..a35fdb17 100644 --- a/docs/plugins/html/gst-plugins-bad-plugins-plugin-videosignal.html +++ b/docs/plugins/html/gst-plugins-bad-plugins-plugin-videosignal.html @@ -29,7 +29,7 @@ <td valign="top" align="right"></td> </tr></table></div> <div class="refsect1"> -<a name="idp16906784"></a><h2>Plugin Information</h2> +<a name="idp20085216"></a><h2>Plugin Information</h2> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> @@ -57,7 +57,7 @@ </table></div> </div> <div class="refsect1"> -<a name="idp21806624"></a><h2>Elements</h2> +<a name="idp18135184"></a><h2>Elements</h2> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> diff --git a/docs/plugins/html/gst-plugins-bad-plugins-plugin-vmnc.html b/docs/plugins/html/gst-plugins-bad-plugins-plugin-vmnc.html index 1b546ca5..5d82363b 100644 --- a/docs/plugins/html/gst-plugins-bad-plugins-plugin-vmnc.html +++ b/docs/plugins/html/gst-plugins-bad-plugins-plugin-vmnc.html @@ -29,7 +29,7 @@ <td valign="top" align="right"></td> </tr></table></div> <div class="refsect1"> -<a name="idp15041344"></a><h2>Plugin Information</h2> +<a name="idp22402208"></a><h2>Plugin Information</h2> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> @@ -57,7 +57,7 @@ </table></div> </div> <div class="refsect1"> -<a name="idp18315504"></a><h2>Elements</h2> +<a name="idp16461104"></a><h2>Elements</h2> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody><tr> diff --git a/docs/plugins/html/gst-plugins-bad-plugins-plugin-voaacenc.html b/docs/plugins/html/gst-plugins-bad-plugins-plugin-voaacenc.html index b424523d..353f994f 100644 --- a/docs/plugins/html/gst-plugins-bad-plugins-plugin-voaacenc.html +++ b/docs/plugins/html/gst-plugins-bad-plugins-plugin-voaacenc.html @@ -7,7 +7,7 @@ <link rel="home" href="index.html" title="GStreamer Bad Plugins 1.0 Plugins Reference Manual"> <link rel="up" href="ch02.html" title="gst-plugins-bad Plugins"> <link rel="prev" href="gst-plugins-bad-plugins-plugin-xvid.html" title="xvid"> -<link rel="next" href="gst-plugins-bad-plugins-plugin-voamrwbenc.html" title="voamrwbenc"> +<link rel="next" href="gst-plugins-bad-plugins-plugin-vp8.html" title="vp8"> <meta name="generator" content="GTK-Doc V1.18 (XML mode)"> <link rel="stylesheet" href="style.css" type="text/css"> </head> @@ -17,7 +17,7 @@ <td><a accesskey="u" href="ch02.html"><img src="up.png" width="24" height="24" border="0" alt="Up"></a></td> <td><a accesskey="h" href="index.html"><img src="home.png" width="24" height="24" border="0" alt="Home"></a></td> <th width="100%" align="center">GStreamer Bad Plugins 1.0 Plugins Reference Manual</th> -<td><a accesskey="n" href="gst-plugins-bad-plugins-plugin-voamrwbenc.html"><img src="right.png" width="24" height="24" border="0" alt="Next"></a></td> +<td><a accesskey="n" href="gst-plugins-bad-plugins-plugin-vp8.html"><img src="right.png" width="24" height="24" border="0" alt="Next"></a></td> </tr></table> <div class="refentry"> <a name="gst-plugins-bad-plugins-plugin-voaacenc"></a><div class="titlepage"></div> @@ -29,7 +29,7 @@ <td valign="top" align="right"></td> </tr></table></div> <div class="refsect1"> -<a name="idp15138960"></a><h2>Plugin Information</h2> +<a name="idp20562432"></a><h2>Plugin Information</h2> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> @@ -57,7 +57,7 @@ </table></div> </div> <div class="refsect1"> -<a name="idp18226272"></a><h2>Elements</h2> +<a name="idp18836640"></a><h2>Elements</h2> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody><tr> diff --git a/docs/plugins/html/gst-plugins-bad-plugins-plugin-voamrwbenc.html b/docs/plugins/html/gst-plugins-bad-plugins-plugin-voamrwbenc.html deleted file mode 100644 index 3c97f4c0..00000000 --- a/docs/plugins/html/gst-plugins-bad-plugins-plugin-voamrwbenc.html +++ /dev/null @@ -1,74 +0,0 @@ -<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> -<html> -<head> -<meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> -<title>voamrwbenc</title> -<meta name="generator" content="DocBook XSL Stylesheets V1.76.1"> -<link rel="home" href="index.html" title="GStreamer Bad Plugins 1.0 Plugins Reference Manual"> -<link rel="up" href="ch02.html" title="gst-plugins-bad Plugins"> -<link rel="prev" href="gst-plugins-bad-plugins-plugin-voaacenc.html" title="voaacenc"> -<link rel="next" href="gst-plugins-bad-plugins-plugin-vp8.html" title="vp8"> -<meta name="generator" content="GTK-Doc V1.18 (XML mode)"> -<link rel="stylesheet" href="style.css" type="text/css"> -</head> -<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"> -<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="2"><tr valign="middle"> -<td><a accesskey="p" href="gst-plugins-bad-plugins-plugin-voaacenc.html"><img src="left.png" width="24" height="24" border="0" alt="Prev"></a></td> -<td><a accesskey="u" href="ch02.html"><img src="up.png" width="24" height="24" border="0" alt="Up"></a></td> -<td><a accesskey="h" href="index.html"><img src="home.png" width="24" height="24" border="0" alt="Home"></a></td> -<th width="100%" align="center">GStreamer Bad Plugins 1.0 Plugins Reference Manual</th> -<td><a accesskey="n" href="gst-plugins-bad-plugins-plugin-vp8.html"><img src="right.png" width="24" height="24" border="0" alt="Next"></a></td> -</tr></table> -<div class="refentry"> -<a name="gst-plugins-bad-plugins-plugin-voamrwbenc"></a><div class="titlepage"></div> -<div class="refnamediv"><table width="100%"><tr> -<td valign="top"> -<h2><span class="refentrytitle">voamrwbenc</span></h2> -<p>voamrwbenc — <a name="plugin-voamrwbenc"></a>Adaptive Multi-Rate Wide-Band Encoder</p> -</td> -<td valign="top" align="right"></td> -</tr></table></div> -<div class="refsect1"> -<a name="idp23097936"></a><h2>Plugin Information</h2> -<div class="variablelist"><table border="0"> -<col align="left" valign="top"> -<tbody> -<tr> -<td><p><span class="term">filename</span></p></td> -<td>libgstvoamrwbenc.so</td> -</tr> -<tr> -<td><p><span class="term">version</span></p></td> -<td>0.11.92</td> -</tr> -<tr> -<td><p><span class="term">run-time license</span></p></td> -<td>unknown</td> -</tr> -<tr> -<td><p><span class="term">package</span></p></td> -<td>GStreamer Bad Plug-ins source release</td> -</tr> -<tr> -<td><p><span class="term">origin</span></p></td> -<td>Unknown package origin</td> -</tr> -</tbody> -</table></div> -</div> -<div class="refsect1"> -<a name="idp16718096"></a><h2>Elements</h2> -<div class="variablelist"><table border="0"> -<col align="left" valign="top"> -<tbody><tr> -<td><p><span class="term"><a class="link" href="gst-plugins-bad-plugins-voamrwbenc.html" title="voamrwbenc">voamrwbenc</a></span></p></td> -<td>Adaptive Multi-Rate Wideband audio encoder</td> -</tr></tbody> -</table></div> -</div> -</div> -<div class="footer"> -<hr> - Generated by GTK-Doc V1.18</div> -</body> -</html>
\ No newline at end of file diff --git a/docs/plugins/html/gst-plugins-bad-plugins-plugin-vp8.html b/docs/plugins/html/gst-plugins-bad-plugins-plugin-vp8.html index 02433cde..de7bf59a 100644 --- a/docs/plugins/html/gst-plugins-bad-plugins-plugin-vp8.html +++ b/docs/plugins/html/gst-plugins-bad-plugins-plugin-vp8.html @@ -6,14 +6,14 @@ <meta name="generator" content="DocBook XSL Stylesheets V1.76.1"> <link rel="home" href="index.html" title="GStreamer Bad Plugins 1.0 Plugins Reference Manual"> <link rel="up" href="ch02.html" title="gst-plugins-bad Plugins"> -<link rel="prev" href="gst-plugins-bad-plugins-plugin-voamrwbenc.html" title="voamrwbenc"> +<link rel="prev" href="gst-plugins-bad-plugins-plugin-voaacenc.html" title="voaacenc"> <link rel="next" href="gst-plugins-bad-plugins-plugin-zbar.html" title="zbar"> <meta name="generator" content="GTK-Doc V1.18 (XML mode)"> <link rel="stylesheet" href="style.css" type="text/css"> </head> <body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"> <table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="2"><tr valign="middle"> -<td><a accesskey="p" href="gst-plugins-bad-plugins-plugin-voamrwbenc.html"><img src="left.png" width="24" height="24" border="0" alt="Prev"></a></td> +<td><a accesskey="p" href="gst-plugins-bad-plugins-plugin-voaacenc.html"><img src="left.png" width="24" height="24" border="0" alt="Prev"></a></td> <td><a accesskey="u" href="ch02.html"><img src="up.png" width="24" height="24" border="0" alt="Up"></a></td> <td><a accesskey="h" href="index.html"><img src="home.png" width="24" height="24" border="0" alt="Home"></a></td> <th width="100%" align="center">GStreamer Bad Plugins 1.0 Plugins Reference Manual</th> @@ -29,7 +29,7 @@ <td valign="top" align="right"></td> </tr></table></div> <div class="refsect1"> -<a name="idp16072144"></a><h2>Plugin Information</h2> +<a name="idp17763520"></a><h2>Plugin Information</h2> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> @@ -57,7 +57,7 @@ </table></div> </div> <div class="refsect1"> -<a name="idp20618256"></a><h2>Elements</h2> +<a name="idp23067392"></a><h2>Elements</h2> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> diff --git a/docs/plugins/html/gst-plugins-bad-plugins-plugin-wildmidi.html b/docs/plugins/html/gst-plugins-bad-plugins-plugin-wildmidi.html index 629dae34..36b96de2 100644 --- a/docs/plugins/html/gst-plugins-bad-plugins-plugin-wildmidi.html +++ b/docs/plugins/html/gst-plugins-bad-plugins-plugin-wildmidi.html @@ -29,7 +29,7 @@ <td valign="top" align="right"></td> </tr></table></div> <div class="refsect1"> -<a name="idp24282080"></a><h2>Plugin Information</h2> +<a name="idp23182768"></a><h2>Plugin Information</h2> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> @@ -57,7 +57,7 @@ </table></div> </div> <div class="refsect1"> -<a name="idp20677840"></a><h2>Elements</h2> +<a name="idp19675376"></a><h2>Elements</h2> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody><tr> diff --git a/docs/plugins/html/gst-plugins-bad-plugins-plugin-xvid.html b/docs/plugins/html/gst-plugins-bad-plugins-plugin-xvid.html index 4c07c75a..edf1cea6 100644 --- a/docs/plugins/html/gst-plugins-bad-plugins-plugin-xvid.html +++ b/docs/plugins/html/gst-plugins-bad-plugins-plugin-xvid.html @@ -29,7 +29,7 @@ <td valign="top" align="right"></td> </tr></table></div> <div class="refsect1"> -<a name="idp23955280"></a><h2>Plugin Information</h2> +<a name="idp20289872"></a><h2>Plugin Information</h2> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> @@ -57,7 +57,7 @@ </table></div> </div> <div class="refsect1"> -<a name="idp24099728"></a><h2>Elements</h2> +<a name="idp16962352"></a><h2>Elements</h2> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> diff --git a/docs/plugins/html/gst-plugins-bad-plugins-plugin-zbar.html b/docs/plugins/html/gst-plugins-bad-plugins-plugin-zbar.html index a73f43be..c55c1117 100644 --- a/docs/plugins/html/gst-plugins-bad-plugins-plugin-zbar.html +++ b/docs/plugins/html/gst-plugins-bad-plugins-plugin-zbar.html @@ -29,7 +29,7 @@ <td valign="top" align="right"></td> </tr></table></div> <div class="refsect1"> -<a name="idp24219536"></a><h2>Plugin Information</h2> +<a name="idp18015520"></a><h2>Plugin Information</h2> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> @@ -57,7 +57,7 @@ </table></div> </div> <div class="refsect1"> -<a name="idp16472896"></a><h2>Elements</h2> +<a name="idp16418096"></a><h2>Elements</h2> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody><tr> diff --git a/docs/plugins/html/gst-plugins-bad-plugins-pyramidsegment.html b/docs/plugins/html/gst-plugins-bad-plugins-pyramidsegment.html index d9ef2070..4b654733 100644 --- a/docs/plugins/html/gst-plugins-bad-plugins-pyramidsegment.html +++ b/docs/plugins/html/gst-plugins-bad-plugins-pyramidsegment.html @@ -45,7 +45,7 @@ <div class="refsynopsisdiv"> <h2>Synopsis</h2> <div class="refsect2"> -<a name="idp13411664"></a><h3>Element Information</h3> +<a name="idp14000208"></a><h3>Element Information</h3> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> @@ -68,7 +68,7 @@ </div> <hr> <div class="refsect2"> -<a name="idp6155504"></a><h3>Element Pads</h3> +<a name="idp3027664"></a><h3>Element Pads</h3> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> diff --git a/docs/plugins/html/gst-plugins-bad-plugins-rsvgdec.html b/docs/plugins/html/gst-plugins-bad-plugins-rsvgdec.html index 8b3809c5..ee44fb79 100644 --- a/docs/plugins/html/gst-plugins-bad-plugins-rsvgdec.html +++ b/docs/plugins/html/gst-plugins-bad-plugins-rsvgdec.html @@ -45,7 +45,7 @@ <div class="refsynopsisdiv"> <h2>Synopsis</h2> <div class="refsect2"> -<a name="idp13864848"></a><h3>Element Information</h3> +<a name="idp14111776"></a><h3>Element Information</h3> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> @@ -68,7 +68,7 @@ </div> <hr> <div class="refsect2"> -<a name="idp7405664"></a><h3>Element Pads</h3> +<a name="idp6327280"></a><h3>Element Pads</h3> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> diff --git a/docs/plugins/html/gst-plugins-bad-plugins-rsvgoverlay.html b/docs/plugins/html/gst-plugins-bad-plugins-rsvgoverlay.html index 729436af..8051cfe5 100644 --- a/docs/plugins/html/gst-plugins-bad-plugins-rsvgoverlay.html +++ b/docs/plugins/html/gst-plugins-bad-plugins-rsvgoverlay.html @@ -63,7 +63,7 @@ <div class="refsynopsisdiv"> <h2>Synopsis</h2> <div class="refsect2"> -<a name="idp9154176"></a><h3>Element Information</h3> +<a name="idp8873504"></a><h3>Element Information</h3> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> @@ -86,7 +86,7 @@ </div> <hr> <div class="refsect2"> -<a name="idp6228608"></a><h3>Element Pads</h3> +<a name="idp6531632"></a><h3>Element Pads</h3> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> diff --git a/docs/plugins/html/gst-plugins-bad-plugins-rtmpsink.html b/docs/plugins/html/gst-plugins-bad-plugins-rtmpsink.html index b6e0725e..08902467 100644 --- a/docs/plugins/html/gst-plugins-bad-plugins-rtmpsink.html +++ b/docs/plugins/html/gst-plugins-bad-plugins-rtmpsink.html @@ -74,7 +74,7 @@ GstRTMPSink implements <div class="refsynopsisdiv"> <h2>Synopsis</h2> <div class="refsect2"> -<a name="idp14148800"></a><h3>Element Information</h3> +<a name="idp14357424"></a><h3>Element Information</h3> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> @@ -97,7 +97,7 @@ GstRTMPSink implements </div> <hr> <div class="refsect2"> -<a name="idp13984832"></a><h3>Element Pads</h3> +<a name="idp14850736"></a><h3>Element Pads</h3> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> diff --git a/docs/plugins/html/gst-plugins-bad-plugins-rtmpsrc.html b/docs/plugins/html/gst-plugins-bad-plugins-rtmpsrc.html index e8b64e6e..17035816 100644 --- a/docs/plugins/html/gst-plugins-bad-plugins-rtmpsrc.html +++ b/docs/plugins/html/gst-plugins-bad-plugins-rtmpsrc.html @@ -75,7 +75,7 @@ GstRTMPSrc implements <div class="refsynopsisdiv"> <h2>Synopsis</h2> <div class="refsect2"> -<a name="idp13150112"></a><h3>Element Information</h3> +<a name="idp14543488"></a><h3>Element Information</h3> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> @@ -98,7 +98,7 @@ GstRTMPSrc implements </div> <hr> <div class="refsect2"> -<a name="idp13157408"></a><h3>Element Pads</h3> +<a name="idp14550896"></a><h3>Element Pads</h3> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> diff --git a/docs/plugins/html/gst-plugins-bad-plugins-rtpdtmfmux.html b/docs/plugins/html/gst-plugins-bad-plugins-rtpdtmfmux.html index eb90206f..b0017e83 100644 --- a/docs/plugins/html/gst-plugins-bad-plugins-rtpdtmfmux.html +++ b/docs/plugins/html/gst-plugins-bad-plugins-rtpdtmfmux.html @@ -78,7 +78,7 @@ DTMF signal can replace the recorded audio while the tone is being sent. <div class="refsynopsisdiv"> <h2>Synopsis</h2> <div class="refsect2"> -<a name="idp18465680"></a><h3>Element Information</h3> +<a name="idp16782432"></a><h3>Element Information</h3> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> @@ -101,7 +101,7 @@ DTMF signal can replace the recorded audio while the tone is being sent. </div> <hr> <div class="refsect2"> -<a name="idp15984208"></a><h3>Element Pads</h3> +<a name="idp17006352"></a><h3>Element Pads</h3> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> diff --git a/docs/plugins/html/gst-plugins-bad-plugins-rtpdtmfsrc.html b/docs/plugins/html/gst-plugins-bad-plugins-rtpdtmfsrc.html index 2336ae20..9792ee00 100644 --- a/docs/plugins/html/gst-plugins-bad-plugins-rtpdtmfsrc.html +++ b/docs/plugins/html/gst-plugins-bad-plugins-rtpdtmfsrc.html @@ -169,7 +169,7 @@ READY state, then a "dtmf-event-dropped" message is posted on the <div class="refsynopsisdiv"> <h2>Synopsis</h2> <div class="refsect2"> -<a name="idp17419264"></a><h3>Element Information</h3> +<a name="idp17022976"></a><h3>Element Information</h3> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> @@ -192,7 +192,7 @@ READY state, then a "dtmf-event-dropped" message is posted on the </div> <hr> <div class="refsect2"> -<a name="idp17426720"></a><h3>Element Pads</h3> +<a name="idp17030432"></a><h3>Element Pads</h3> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> diff --git a/docs/plugins/html/gst-plugins-bad-plugins-rtpmux.html b/docs/plugins/html/gst-plugins-bad-plugins-rtpmux.html index 94b1ff5e..7cbd186a 100644 --- a/docs/plugins/html/gst-plugins-bad-plugins-rtpmux.html +++ b/docs/plugins/html/gst-plugins-bad-plugins-rtpmux.html @@ -73,7 +73,7 @@ muxes into a single stream with a single SSRC. <p> </p> <div class="refsect2"> -<a name="idp19691376"></a><h3>Example pipelines</h3> +<a name="idp17746640"></a><h3>Example pipelines</h3> <div class="informalexample"> <table class="listing_frame" border="0" cellpadding="0" cellspacing="0"> <tbody> @@ -107,7 +107,7 @@ Last reviewed on 2010-09-30 (0.10.21) <div class="refsynopsisdiv"> <h2>Synopsis</h2> <div class="refsect2"> -<a name="idp17335184"></a><h3>Element Information</h3> +<a name="idp17643120"></a><h3>Element Information</h3> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> @@ -130,7 +130,7 @@ Last reviewed on 2010-09-30 (0.10.21) </div> <hr> <div class="refsect2"> -<a name="idp17342288"></a><h3>Element Pads</h3> +<a name="idp19813008"></a><h3>Element Pads</h3> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> diff --git a/docs/plugins/html/gst-plugins-bad-plugins-scaletempo.html b/docs/plugins/html/gst-plugins-bad-plugins-scaletempo.html index 7f0eda6c..4739341b 100644 --- a/docs/plugins/html/gst-plugins-bad-plugins-scaletempo.html +++ b/docs/plugins/html/gst-plugins-bad-plugins-scaletempo.html @@ -77,7 +77,7 @@ Use Sceletempo to apply playback rates without the chipmunk effect. <p> </p> <div class="refsect2"> -<a name="idp18986848"></a><h3>Example pipelines</h3> +<a name="idp16573952"></a><h3>Example pipelines</h3> <p> </p> <div class="informalexample"> @@ -135,7 +135,7 @@ the algoritm looks. <div class="refsynopsisdiv"> <h2>Synopsis</h2> <div class="refsect2"> -<a name="idp20008320"></a><h3>Element Information</h3> +<a name="idp15832672"></a><h3>Element Information</h3> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> @@ -158,7 +158,7 @@ the algoritm looks. </div> <hr> <div class="refsect2"> -<a name="idp17651280"></a><h3>Element Pads</h3> +<a name="idp15840080"></a><h3>Element Pads</h3> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> diff --git a/docs/plugins/html/gst-plugins-bad-plugins-sdlaudiosink.html b/docs/plugins/html/gst-plugins-bad-plugins-sdlaudiosink.html index 4f6e2f2d..76f37032 100644 --- a/docs/plugins/html/gst-plugins-bad-plugins-sdlaudiosink.html +++ b/docs/plugins/html/gst-plugins-bad-plugins-sdlaudiosink.html @@ -45,7 +45,7 @@ <div class="refsynopsisdiv"> <h2>Synopsis</h2> <div class="refsect2"> -<a name="idp19447600"></a><h3>Element Information</h3> +<a name="idp18902496"></a><h3>Element Information</h3> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> @@ -68,7 +68,7 @@ </div> <hr> <div class="refsect2"> -<a name="idp18341408"></a><h3>Element Pads</h3> +<a name="idp15272912"></a><h3>Element Pads</h3> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> diff --git a/docs/plugins/html/gst-plugins-bad-plugins-sdlvideosink.html b/docs/plugins/html/gst-plugins-bad-plugins-sdlvideosink.html index b6ac1126..4b86d7ca 100644 --- a/docs/plugins/html/gst-plugins-bad-plugins-sdlvideosink.html +++ b/docs/plugins/html/gst-plugins-bad-plugins-sdlvideosink.html @@ -61,7 +61,7 @@ GstSDLVideoSink implements <div class="refsynopsisdiv"> <h2>Synopsis</h2> <div class="refsect2"> -<a name="idp18712544"></a><h3>Element Information</h3> +<a name="idp17401024"></a><h3>Element Information</h3> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> @@ -84,7 +84,7 @@ GstSDLVideoSink implements </div> <hr> <div class="refsect2"> -<a name="idp18975280"></a><h3>Element Pads</h3> +<a name="idp16920944"></a><h3>Element Pads</h3> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> diff --git a/docs/plugins/html/gst-plugins-bad-plugins-sdpdemux.html b/docs/plugins/html/gst-plugins-bad-plugins-sdpdemux.html index 6f7f3feb..417ce819 100644 --- a/docs/plugins/html/gst-plugins-bad-plugins-sdpdemux.html +++ b/docs/plugins/html/gst-plugins-bad-plugins-sdpdemux.html @@ -93,7 +93,7 @@ PLAYING state. <p> </p> <div class="refsect2"> -<a name="idp15417664"></a><h3>Example launch line</h3> +<a name="idp17196560"></a><h3>Example launch line</h3> <div class="informalexample"> <table class="listing_frame" border="0" cellpadding="0" cellspacing="0"> <tbody> @@ -115,7 +115,7 @@ Last reviewed on 2007-10-01 (0.10.6) <div class="refsynopsisdiv"> <h2>Synopsis</h2> <div class="refsect2"> -<a name="idp15420864"></a><h3>Element Information</h3> +<a name="idp17199760"></a><h3>Element Information</h3> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> @@ -138,7 +138,7 @@ Last reviewed on 2007-10-01 (0.10.6) </div> <hr> <div class="refsect2"> -<a name="idp15428336"></a><h3>Element Pads</h3> +<a name="idp17207232"></a><h3>Element Pads</h3> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> diff --git a/docs/plugins/html/gst-plugins-bad-plugins-shmsink.html b/docs/plugins/html/gst-plugins-bad-plugins-shmsink.html index 1b6ef649..3a640bce 100644 --- a/docs/plugins/html/gst-plugins-bad-plugins-shmsink.html +++ b/docs/plugins/html/gst-plugins-bad-plugins-shmsink.html @@ -79,7 +79,7 @@ <div class="refsynopsisdiv"> <h2>Synopsis</h2> <div class="refsect2"> -<a name="idp16062416"></a><h3>Element Information</h3> +<a name="idp16542432"></a><h3>Element Information</h3> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> @@ -102,7 +102,7 @@ </div> <hr> <div class="refsect2"> -<a name="idp16069824"></a><h3>Element Pads</h3> +<a name="idp20338208"></a><h3>Element Pads</h3> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> diff --git a/docs/plugins/html/gst-plugins-bad-plugins-shmsrc.html b/docs/plugins/html/gst-plugins-bad-plugins-shmsrc.html index f47bf316..054624a8 100644 --- a/docs/plugins/html/gst-plugins-bad-plugins-shmsrc.html +++ b/docs/plugins/html/gst-plugins-bad-plugins-shmsrc.html @@ -68,7 +68,7 @@ <div class="refsynopsisdiv"> <h2>Synopsis</h2> <div class="refsect2"> -<a name="idp15047520"></a><h3>Element Information</h3> +<a name="idp20282800"></a><h3>Element Information</h3> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> @@ -91,7 +91,7 @@ </div> <hr> <div class="refsect2"> -<a name="idp17080128"></a><h3>Element Pads</h3> +<a name="idp19500304"></a><h3>Element Pads</h3> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> diff --git a/docs/plugins/html/gst-plugins-bad-plugins-solarize.html b/docs/plugins/html/gst-plugins-bad-plugins-solarize.html index 9d152959..0fc0e2fd 100644 --- a/docs/plugins/html/gst-plugins-bad-plugins-solarize.html +++ b/docs/plugins/html/gst-plugins-bad-plugins-solarize.html @@ -73,7 +73,7 @@ Solarize does a smart inverse in a video stream in realtime. <p> </p> <div class="refsect2"> -<a name="idp18246000"></a><h3>Example launch line</h3> +<a name="idp20323408"></a><h3>Example launch line</h3> <div class="informalexample"> <table class="listing_frame" border="0" cellpadding="0" cellspacing="0"> <tbody> @@ -91,7 +91,7 @@ Solarize does a smart inverse in a video stream in realtime. <div class="refsynopsisdiv"> <h2>Synopsis</h2> <div class="refsect2"> -<a name="idp15854928"></a><h3>Element Information</h3> +<a name="idp19459616"></a><h3>Element Information</h3> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> @@ -114,7 +114,7 @@ Solarize does a smart inverse in a video stream in realtime. </div> <hr> <div class="refsect2"> -<a name="idp15862336"></a><h3>Element Pads</h3> +<a name="idp19467024"></a><h3>Element Pads</h3> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> diff --git a/docs/plugins/html/gst-plugins-bad-plugins-spacescope.html b/docs/plugins/html/gst-plugins-bad-plugins-spacescope.html index 7670526a..06ca2e82 100644 --- a/docs/plugins/html/gst-plugins-bad-plugins-spacescope.html +++ b/docs/plugins/html/gst-plugins-bad-plugins-spacescope.html @@ -70,7 +70,7 @@ right channel to x and y coordinates. <p> </p> <div class="refsect2"> -<a name="idp19305584"></a><h3>Example launch line</h3> +<a name="idp18613216"></a><h3>Example launch line</h3> <div class="informalexample"> <table class="listing_frame" border="0" cellpadding="0" cellspacing="0"> <tbody> @@ -88,7 +88,7 @@ right channel to x and y coordinates. <div class="refsynopsisdiv"> <h2>Synopsis</h2> <div class="refsect2"> -<a name="idp16103360"></a><h3>Element Information</h3> +<a name="idp19068512"></a><h3>Element Information</h3> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> @@ -111,7 +111,7 @@ right channel to x and y coordinates. </div> <hr> <div class="refsect2"> -<a name="idp16729936"></a><h3>Element Pads</h3> +<a name="idp19699456"></a><h3>Element Pads</h3> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> diff --git a/docs/plugins/html/gst-plugins-bad-plugins-spectrascope.html b/docs/plugins/html/gst-plugins-bad-plugins-spectrascope.html index 35a34671..760d71db 100644 --- a/docs/plugins/html/gst-plugins-bad-plugins-spectrascope.html +++ b/docs/plugins/html/gst-plugins-bad-plugins-spectrascope.html @@ -62,7 +62,7 @@ frequency spectrum as a series of bars. <p> </p> <div class="refsect2"> -<a name="idp15397248"></a><h3>Example launch line</h3> +<a name="idp15225088"></a><h3>Example launch line</h3> <div class="informalexample"> <table class="listing_frame" border="0" cellpadding="0" cellspacing="0"> <tbody> @@ -80,7 +80,7 @@ frequency spectrum as a series of bars. <div class="refsynopsisdiv"> <h2>Synopsis</h2> <div class="refsect2"> -<a name="idp15135696"></a><h3>Element Information</h3> +<a name="idp18868880"></a><h3>Element Information</h3> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> @@ -103,7 +103,7 @@ frequency spectrum as a series of bars. </div> <hr> <div class="refsect2"> -<a name="idp18486544"></a><h3>Element Pads</h3> +<a name="idp17506816"></a><h3>Element Pads</h3> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> diff --git a/docs/plugins/html/gst-plugins-bad-plugins-speed.html b/docs/plugins/html/gst-plugins-bad-plugins-speed.html index 91841ba5..64309ee2 100644 --- a/docs/plugins/html/gst-plugins-bad-plugins-speed.html +++ b/docs/plugins/html/gst-plugins-bad-plugins-speed.html @@ -62,7 +62,7 @@ requires a fairly up-to-date gst-plugins-base, as of February 2007). <p> </p> <div class="refsect2"> -<a name="idp18406224"></a><h3>Example launch line</h3> +<a name="idp19002560"></a><h3>Example launch line</h3> <div class="informalexample"> <table class="listing_frame" border="0" cellpadding="0" cellspacing="0"> <tbody> @@ -83,7 +83,7 @@ Last reviewed on 2007-02-26 (0.10.4.1) <div class="refsynopsisdiv"> <h2>Synopsis</h2> <div class="refsect2"> -<a name="idp18403792"></a><h3>Element Information</h3> +<a name="idp19000640"></a><h3>Element Information</h3> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> @@ -106,7 +106,7 @@ Last reviewed on 2007-02-26 (0.10.4.1) </div> <hr> <div class="refsect2"> -<a name="idp17765840"></a><h3>Element Pads</h3> +<a name="idp15359088"></a><h3>Element Pads</h3> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> diff --git a/docs/plugins/html/gst-plugins-bad-plugins-sphere.html b/docs/plugins/html/gst-plugins-bad-plugins-sphere.html index 922d48ec..66ef7385 100644 --- a/docs/plugins/html/gst-plugins-bad-plugins-sphere.html +++ b/docs/plugins/html/gst-plugins-bad-plugins-sphere.html @@ -69,7 +69,7 @@ <div class="refsynopsisdiv"> <h2>Synopsis</h2> <div class="refsect2"> -<a name="idp17203504"></a><h3>Element Information</h3> +<a name="idp19928336"></a><h3>Element Information</h3> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> @@ -92,7 +92,7 @@ </div> <hr> <div class="refsect2"> -<a name="idp19893120"></a><h3>Element Pads</h3> +<a name="idp20761296"></a><h3>Element Pads</h3> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> diff --git a/docs/plugins/html/gst-plugins-bad-plugins-square.html b/docs/plugins/html/gst-plugins-bad-plugins-square.html index 3a68340f..094a2556 100644 --- a/docs/plugins/html/gst-plugins-bad-plugins-square.html +++ b/docs/plugins/html/gst-plugins-bad-plugins-square.html @@ -70,7 +70,7 @@ <div class="refsynopsisdiv"> <h2>Synopsis</h2> <div class="refsect2"> -<a name="idp16273648"></a><h3>Element Information</h3> +<a name="idp19553440"></a><h3>Element Information</h3> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> @@ -93,7 +93,7 @@ </div> <hr> <div class="refsect2"> -<a name="idp19827952"></a><h3>Element Pads</h3> +<a name="idp20820448"></a><h3>Element Pads</h3> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> diff --git a/docs/plugins/html/gst-plugins-bad-plugins-stereo.html b/docs/plugins/html/gst-plugins-bad-plugins-stereo.html index 81aa58e5..81d12544 100644 --- a/docs/plugins/html/gst-plugins-bad-plugins-stereo.html +++ b/docs/plugins/html/gst-plugins-bad-plugins-stereo.html @@ -57,7 +57,7 @@ Create a wide stereo effect. <p> </p> <div class="refsect2"> -<a name="idp16346544"></a><h3>Example pipelines</h3> +<a name="idp19235648"></a><h3>Example pipelines</h3> <div class="informalexample"> <table class="listing_frame" border="0" cellpadding="0" cellspacing="0"> <tbody> @@ -75,7 +75,7 @@ Create a wide stereo effect. <div class="refsynopsisdiv"> <h2>Synopsis</h2> <div class="refsect2"> -<a name="idp19485520"></a><h3>Element Information</h3> +<a name="idp19150016"></a><h3>Element Information</h3> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> @@ -98,7 +98,7 @@ Create a wide stereo effect. </div> <hr> <div class="refsect2"> -<a name="idp19553520"></a><h3>Element Pads</h3> +<a name="idp17320912"></a><h3>Element Pads</h3> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> diff --git a/docs/plugins/html/gst-plugins-bad-plugins-stretch.html b/docs/plugins/html/gst-plugins-bad-plugins-stretch.html index da015d5b..acf57307 100644 --- a/docs/plugins/html/gst-plugins-bad-plugins-stretch.html +++ b/docs/plugins/html/gst-plugins-bad-plugins-stretch.html @@ -69,7 +69,7 @@ <div class="refsynopsisdiv"> <h2>Synopsis</h2> <div class="refsect2"> -<a name="idp16452288"></a><h3>Element Information</h3> +<a name="idp18019696"></a><h3>Element Information</h3> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> @@ -92,7 +92,7 @@ </div> <hr> <div class="refsect2"> -<a name="idp20406496"></a><h3>Element Pads</h3> +<a name="idp18043264"></a><h3>Element Pads</h3> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> diff --git a/docs/plugins/html/gst-plugins-bad-plugins-synaescope.html b/docs/plugins/html/gst-plugins-bad-plugins-synaescope.html index 0dc056dc..547710f2 100644 --- a/docs/plugins/html/gst-plugins-bad-plugins-synaescope.html +++ b/docs/plugins/html/gst-plugins-bad-plugins-synaescope.html @@ -62,7 +62,7 @@ out-of phase properties of audio and draws this as clouds of stars. <p> </p> <div class="refsect2"> -<a name="idp16771568"></a><h3>Example launch line</h3> +<a name="idp18850720"></a><h3>Example launch line</h3> <div class="informalexample"> <table class="listing_frame" border="0" cellpadding="0" cellspacing="0"> <tbody> @@ -80,7 +80,7 @@ out-of phase properties of audio and draws this as clouds of stars. <div class="refsynopsisdiv"> <h2>Synopsis</h2> <div class="refsect2"> -<a name="idp16776304"></a><h3>Element Information</h3> +<a name="idp17287248"></a><h3>Element Information</h3> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> @@ -103,7 +103,7 @@ out-of phase properties of audio and draws this as clouds of stars. </div> <hr> <div class="refsect2"> -<a name="idp18078896"></a><h3>Element Pads</h3> +<a name="idp20813440"></a><h3>Element Pads</h3> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> diff --git a/docs/plugins/html/gst-plugins-bad-plugins-templatematch.html b/docs/plugins/html/gst-plugins-bad-plugins-templatematch.html index dc809fd5..8bfe4fe4 100644 --- a/docs/plugins/html/gst-plugins-bad-plugins-templatematch.html +++ b/docs/plugins/html/gst-plugins-bad-plugins-templatematch.html @@ -56,7 +56,7 @@ struct <a class="link" href="gst-plugins-bad-plugins-templatematch. <div class="refsynopsisdiv"> <h2>Synopsis</h2> <div class="refsect2"> -<a name="idp15792592"></a><h3>Element Information</h3> +<a name="idp20961872"></a><h3>Element Information</h3> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> @@ -79,7 +79,7 @@ struct <a class="link" href="gst-plugins-bad-plugins-templatematch. </div> <hr> <div class="refsect2"> -<a name="idp16675984"></a><h3>Element Pads</h3> +<a name="idp19181872"></a><h3>Element Pads</h3> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> diff --git a/docs/plugins/html/gst-plugins-bad-plugins-tiger.html b/docs/plugins/html/gst-plugins-bad-plugins-tiger.html index 8d04c678..7bda0250 100644 --- a/docs/plugins/html/gst-plugins-bad-plugins-tiger.html +++ b/docs/plugins/html/gst-plugins-bad-plugins-tiger.html @@ -68,7 +68,7 @@ <div class="refsynopsisdiv"> <h2>Synopsis</h2> <div class="refsect2"> -<a name="idp16810544"></a><h3>Element Information</h3> +<a name="idp19151600"></a><h3>Element Information</h3> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> @@ -91,7 +91,7 @@ </div> <hr> <div class="refsect2"> -<a name="idp19862464"></a><h3>Element Pads</h3> +<a name="idp15228016"></a><h3>Element Pads</h3> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> diff --git a/docs/plugins/html/gst-plugins-bad-plugins-timidity.html b/docs/plugins/html/gst-plugins-bad-plugins-timidity.html index d595cca2..81981f58 100644 --- a/docs/plugins/html/gst-plugins-bad-plugins-timidity.html +++ b/docs/plugins/html/gst-plugins-bad-plugins-timidity.html @@ -45,7 +45,7 @@ <div class="refsynopsisdiv"> <h2>Synopsis</h2> <div class="refsect2"> -<a name="idp20250768"></a><h3>Element Information</h3> +<a name="idp21215776"></a><h3>Element Information</h3> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> @@ -68,7 +68,7 @@ </div> <hr> <div class="refsect2"> -<a name="idp17274368"></a><h3>Element Pads</h3> +<a name="idp18857904"></a><h3>Element Pads</h3> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> diff --git a/docs/plugins/html/gst-plugins-bad-plugins-trm.html b/docs/plugins/html/gst-plugins-bad-plugins-trm.html index 21be30b4..28dbfaf7 100644 --- a/docs/plugins/html/gst-plugins-bad-plugins-trm.html +++ b/docs/plugins/html/gst-plugins-bad-plugins-trm.html @@ -54,7 +54,7 @@ <div class="refsynopsisdiv"> <h2>Synopsis</h2> <div class="refsect2"> -<a name="idp16597920"></a><h3>Element Information</h3> +<a name="idp18425328"></a><h3>Element Information</h3> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> @@ -77,7 +77,7 @@ </div> <hr> <div class="refsect2"> -<a name="idp18480416"></a><h3>Element Pads</h3> +<a name="idp16439904"></a><h3>Element Pads</h3> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> diff --git a/docs/plugins/html/gst-plugins-bad-plugins-tunnel.html b/docs/plugins/html/gst-plugins-bad-plugins-tunnel.html index a6a5edf0..e77d8195 100644 --- a/docs/plugins/html/gst-plugins-bad-plugins-tunnel.html +++ b/docs/plugins/html/gst-plugins-bad-plugins-tunnel.html @@ -61,7 +61,7 @@ <div class="refsynopsisdiv"> <h2>Synopsis</h2> <div class="refsect2"> -<a name="idp18467424"></a><h3>Element Information</h3> +<a name="idp21208752"></a><h3>Element Information</h3> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> @@ -84,7 +84,7 @@ </div> <hr> <div class="refsect2"> -<a name="idp17961856"></a><h3>Element Pads</h3> +<a name="idp18154848"></a><h3>Element Pads</h3> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> diff --git a/docs/plugins/html/gst-plugins-bad-plugins-twirl.html b/docs/plugins/html/gst-plugins-bad-plugins-twirl.html index 4ae16d3e..33ef4e99 100644 --- a/docs/plugins/html/gst-plugins-bad-plugins-twirl.html +++ b/docs/plugins/html/gst-plugins-bad-plugins-twirl.html @@ -69,7 +69,7 @@ <div class="refsynopsisdiv"> <h2>Synopsis</h2> <div class="refsect2"> -<a name="idp15132704"></a><h3>Element Information</h3> +<a name="idp16665216"></a><h3>Element Information</h3> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> @@ -92,7 +92,7 @@ </div> <hr> <div class="refsect2"> -<a name="idp20479600"></a><h3>Element Pads</h3> +<a name="idp21429408"></a><h3>Element Pads</h3> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> diff --git a/docs/plugins/html/gst-plugins-bad-plugins-videoanalyse.html b/docs/plugins/html/gst-plugins-bad-plugins-videoanalyse.html index 8cc23c62..215661c3 100644 --- a/docs/plugins/html/gst-plugins-bad-plugins-videoanalyse.html +++ b/docs/plugins/html/gst-plugins-bad-plugins-videoanalyse.html @@ -95,7 +95,7 @@ The message's structure contains these fields: <p> </p> <div class="refsect2"> -<a name="idp20061344"></a><h3>Example launch line</h3> +<a name="idp18809280"></a><h3>Example launch line</h3> <div class="informalexample"> <table class="listing_frame" border="0" cellpadding="0" cellspacing="0"> <tbody> @@ -116,7 +116,7 @@ Last reviewed on 2007-05-30 (0.10.5) <div class="refsynopsisdiv"> <h2>Synopsis</h2> <div class="refsect2"> -<a name="idp20064416"></a><h3>Element Information</h3> +<a name="idp20570432"></a><h3>Element Information</h3> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> @@ -139,7 +139,7 @@ Last reviewed on 2007-05-30 (0.10.5) </div> <hr> <div class="refsect2"> -<a name="idp20071872"></a><h3>Element Pads</h3> +<a name="idp16152368"></a><h3>Element Pads</h3> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> diff --git a/docs/plugins/html/gst-plugins-bad-plugins-videodetect.html b/docs/plugins/html/gst-plugins-bad-plugins-videodetect.html index 15975c80..cd442ddd 100644 --- a/docs/plugins/html/gst-plugins-bad-plugins-videodetect.html +++ b/docs/plugins/html/gst-plugins-bad-plugins-videodetect.html @@ -124,7 +124,7 @@ The message's structure contains these fields: <p> </p> <div class="refsect2"> -<a name="idp21713616"></a><h3>Example launch line</h3> +<a name="idp22180608"></a><h3>Example launch line</h3> <div class="informalexample"> <table class="listing_frame" border="0" cellpadding="0" cellspacing="0"> <tbody> @@ -145,7 +145,7 @@ Last reviewed on 2007-05-30 (0.10.5) <div class="refsynopsisdiv"> <h2>Synopsis</h2> <div class="refsect2"> -<a name="idp21716720"></a><h3>Element Information</h3> +<a name="idp22011472"></a><h3>Element Information</h3> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> @@ -168,7 +168,7 @@ Last reviewed on 2007-05-30 (0.10.5) </div> <hr> <div class="refsect2"> -<a name="idp21724176"></a><h3>Element Pads</h3> +<a name="idp22018880"></a><h3>Element Pads</h3> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> diff --git a/docs/plugins/html/gst-plugins-bad-plugins-videomark.html b/docs/plugins/html/gst-plugins-bad-plugins-videomark.html index b0ba690c..2b34d371 100644 --- a/docs/plugins/html/gst-plugins-bad-plugins-videomark.html +++ b/docs/plugins/html/gst-plugins-bad-plugins-videomark.html @@ -77,7 +77,7 @@ mostly used together with the <a class="link" href="gst-plugins-bad-plugins-vide <p> </p> <div class="refsect2"> -<a name="idp21250800"></a><h3>Example launch line</h3> +<a name="idp21390816"></a><h3>Example launch line</h3> <div class="informalexample"> <table class="listing_frame" border="0" cellpadding="0" cellspacing="0"> <tbody> @@ -98,7 +98,7 @@ Last reviewed on 2007-06-01 (0.10.6) <div class="refsynopsisdiv"> <h2>Synopsis</h2> <div class="refsect2"> -<a name="idp21253872"></a><h3>Element Information</h3> +<a name="idp21393888"></a><h3>Element Information</h3> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> @@ -121,7 +121,7 @@ Last reviewed on 2007-06-01 (0.10.6) </div> <hr> <div class="refsect2"> -<a name="idp21915536"></a><h3>Element Pads</h3> +<a name="idp22538704"></a><h3>Element Pads</h3> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> diff --git a/docs/plugins/html/gst-plugins-bad-plugins-videoparse.html b/docs/plugins/html/gst-plugins-bad-plugins-videoparse.html index 1a18ab21..f7ba2390 100644 --- a/docs/plugins/html/gst-plugins-bad-plugins-videoparse.html +++ b/docs/plugins/html/gst-plugins-bad-plugins-videoparse.html @@ -82,7 +82,7 @@ Converts a byte stream into video frames. <div class="refsynopsisdiv"> <h2>Synopsis</h2> <div class="refsect2"> -<a name="idp21483760"></a><h3>Element Information</h3> +<a name="idp21751600"></a><h3>Element Information</h3> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> @@ -105,7 +105,7 @@ Converts a byte stream into video frames. </div> <hr> <div class="refsect2"> -<a name="idp22014400"></a><h3>Element Pads</h3> +<a name="idp20475712"></a><h3>Element Pads</h3> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> diff --git a/docs/plugins/html/gst-plugins-bad-plugins-voaacenc.html b/docs/plugins/html/gst-plugins-bad-plugins-voaacenc.html index 25ba4d3e..6ffbdcf8 100644 --- a/docs/plugins/html/gst-plugins-bad-plugins-voaacenc.html +++ b/docs/plugins/html/gst-plugins-bad-plugins-voaacenc.html @@ -74,7 +74,7 @@ GstVoAacEnc implements <div class="refsynopsisdiv"> <h2>Synopsis</h2> <div class="refsect2"> -<a name="idp18997936"></a><h3>Element Information</h3> +<a name="idp17914144"></a><h3>Element Information</h3> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> @@ -97,7 +97,7 @@ GstVoAacEnc implements </div> <hr> <div class="refsect2"> -<a name="idp21590512"></a><h3>Element Pads</h3> +<a name="idp21720256"></a><h3>Element Pads</h3> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> diff --git a/docs/plugins/html/gst-plugins-bad-plugins-voamrwbenc.html b/docs/plugins/html/gst-plugins-bad-plugins-voamrwbenc.html index 272992bc..0fce78f4 100644 --- a/docs/plugins/html/gst-plugins-bad-plugins-voamrwbenc.html +++ b/docs/plugins/html/gst-plugins-bad-plugins-voamrwbenc.html @@ -31,7 +31,7 @@ <div class="refnamediv"><table width="100%"><tr> <td valign="top"> <h2><span class="refentrytitle"><a name="gst-plugins-bad-plugins-voamrwbenc.top_of_page"></a>voamrwbenc</span></h2> -<p>voamrwbenc — Adaptive Multi-Rate Wideband audio encoder</p> +<p>voamrwbenc</p> </td> <td valign="top" align="right"></td> </tr></table></div> @@ -41,77 +41,6 @@ </div> <div class="refsect1"> <a name="gst-plugins-bad-plugins-voamrwbenc.description"></a><h2>Description</h2> -<div class="refsynopsisdiv"> -<h2>Synopsis</h2> -<div class="refsect2"> -<a name="idp21492048"></a><h3>Element Information</h3> -<div class="variablelist"><table border="0"> -<col align="left" valign="top"> -<tbody> -<tr> -<td><p><span class="term">plugin</span></p></td> -<td> - <a class="link" href="gst-plugins-bad-plugins-plugin-voamrwbenc.html#plugin-voamrwbenc">voamrwbenc</a> - </td> -</tr> -<tr> -<td><p><span class="term">author</span></p></td> -<td>Renato Araujo <renato.filho@indt.org.br></td> -</tr> -<tr> -<td><p><span class="term">class</span></p></td> -<td>Codec/Encoder/Audio</td> -</tr> -</tbody> -</table></div> -</div> -<hr> -<div class="refsect2"> -<a name="idp20271232"></a><h3>Element Pads</h3> -<div class="variablelist"><table border="0"> -<col align="left" valign="top"> -<tbody> -<tr> -<td><p><span class="term">name</span></p></td> -<td>sink</td> -</tr> -<tr> -<td><p><span class="term">direction</span></p></td> -<td>sink</td> -</tr> -<tr> -<td><p><span class="term">presence</span></p></td> -<td>always</td> -</tr> -<tr> -<td><p><span class="term">details</span></p></td> -<td>audio/x-raw, format=(string)S16LE, layout=(string)interleaved, rate=(int)16000, channels=(int)1</td> -</tr> -</tbody> -</table></div> -<div class="variablelist"><table border="0"> -<col align="left" valign="top"> -<tbody> -<tr> -<td><p><span class="term">name</span></p></td> -<td>src</td> -</tr> -<tr> -<td><p><span class="term">direction</span></p></td> -<td>source</td> -</tr> -<tr> -<td><p><span class="term">presence</span></p></td> -<td>always</td> -</tr> -<tr> -<td><p><span class="term">details</span></p></td> -<td>audio/AMR-WB, rate=(int)16000, channels=(int)1</td> -</tr> -</tbody> -</table></div> -</div> -</div> <p> </p> </div> diff --git a/docs/plugins/html/gst-plugins-bad-plugins-vp8dec.html b/docs/plugins/html/gst-plugins-bad-plugins-vp8dec.html index f828ad86..31473f70 100644 --- a/docs/plugins/html/gst-plugins-bad-plugins-vp8dec.html +++ b/docs/plugins/html/gst-plugins-bad-plugins-vp8dec.html @@ -51,7 +51,7 @@ +----<a href="http://library.gnome.org/devel/gobject/unstable/gobject-The-Base-Object-Type.html#GInitiallyUnowned">GInitiallyUnowned</a> +----<a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstObject.html">GstObject</a> +----<a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstElement.html">GstElement</a> - +----<a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gst-plugins-base-libs/html/gst-plugins-base-libs-GstVideoDecoder.html#GstVideoDecoder">GstVideoDecoder</a> + +----GstVideoDecoder +----GstVP8Dec </pre> </div> @@ -69,7 +69,7 @@ <div class="refsynopsisdiv"> <h2>Synopsis</h2> <div class="refsect2"> -<a name="idp16261696"></a><h3>Element Information</h3> +<a name="idp20899744"></a><h3>Element Information</h3> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> @@ -92,7 +92,7 @@ </div> <hr> <div class="refsect2"> -<a name="idp21358656"></a><h3>Element Pads</h3> +<a name="idp20410064"></a><h3>Element Pads</h3> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> diff --git a/docs/plugins/html/gst-plugins-bad-plugins-vp8enc.html b/docs/plugins/html/gst-plugins-bad-plugins-vp8enc.html index efcb391d..29c49e1e 100644 --- a/docs/plugins/html/gst-plugins-bad-plugins-vp8enc.html +++ b/docs/plugins/html/gst-plugins-bad-plugins-vp8enc.html @@ -53,7 +53,7 @@ +----<a href="http://library.gnome.org/devel/gobject/unstable/gobject-The-Base-Object-Type.html#GInitiallyUnowned">GInitiallyUnowned</a> +----<a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstObject.html">GstObject</a> +----<a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstElement.html">GstElement</a> - +----<a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gst-plugins-base-libs/html/gst-plugins-base-libs-GstVideoEncoder.html#GstVideoEncoder">GstVideoEncoder</a> + +----GstVideoEncoder +----GstVP8Enc </pre> </div> @@ -96,7 +96,7 @@ GstVP8Enc implements <div class="refsynopsisdiv"> <h2>Synopsis</h2> <div class="refsect2"> -<a name="idp20697936"></a><h3>Element Information</h3> +<a name="idp22900400"></a><h3>Element Information</h3> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> @@ -119,7 +119,7 @@ GstVP8Enc implements </div> <hr> <div class="refsect2"> -<a name="idp22385856"></a><h3>Element Pads</h3> +<a name="idp22907856"></a><h3>Element Pads</h3> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> diff --git a/docs/plugins/html/gst-plugins-bad-plugins-waterripple.html b/docs/plugins/html/gst-plugins-bad-plugins-waterripple.html index b130743a..ae6c0347 100644 --- a/docs/plugins/html/gst-plugins-bad-plugins-waterripple.html +++ b/docs/plugins/html/gst-plugins-bad-plugins-waterripple.html @@ -71,7 +71,7 @@ <div class="refsynopsisdiv"> <h2>Synopsis</h2> <div class="refsect2"> -<a name="idp19285872"></a><h3>Element Information</h3> +<a name="idp18632496"></a><h3>Element Information</h3> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> @@ -94,7 +94,7 @@ </div> <hr> <div class="refsect2"> -<a name="idp21534352"></a><h3>Element Pads</h3> +<a name="idp21704208"></a><h3>Element Pads</h3> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> diff --git a/docs/plugins/html/gst-plugins-bad-plugins-wavescope.html b/docs/plugins/html/gst-plugins-bad-plugins-wavescope.html index 03dfae03..7553c2ab 100644 --- a/docs/plugins/html/gst-plugins-bad-plugins-wavescope.html +++ b/docs/plugins/html/gst-plugins-bad-plugins-wavescope.html @@ -70,7 +70,7 @@ like on an oscilloscope. <p> </p> <div class="refsect2"> -<a name="idp17085152"></a><h3>Example launch line</h3> +<a name="idp19259136"></a><h3>Example launch line</h3> <div class="informalexample"> <table class="listing_frame" border="0" cellpadding="0" cellspacing="0"> <tbody> @@ -88,7 +88,7 @@ like on an oscilloscope. <div class="refsynopsisdiv"> <h2>Synopsis</h2> <div class="refsect2"> -<a name="idp15641248"></a><h3>Element Information</h3> +<a name="idp16783184"></a><h3>Element Information</h3> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> @@ -111,7 +111,7 @@ like on an oscilloscope. </div> <hr> <div class="refsect2"> -<a name="idp22201408"></a><h3>Element Pads</h3> +<a name="idp22670816"></a><h3>Element Pads</h3> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> diff --git a/docs/plugins/html/gst-plugins-bad-plugins-wildmidi.html b/docs/plugins/html/gst-plugins-bad-plugins-wildmidi.html index daa07713..36decd5d 100644 --- a/docs/plugins/html/gst-plugins-bad-plugins-wildmidi.html +++ b/docs/plugins/html/gst-plugins-bad-plugins-wildmidi.html @@ -54,7 +54,7 @@ <div class="refsynopsisdiv"> <h2>Synopsis</h2> <div class="refsect2"> -<a name="idp16995312"></a><h3>Element Information</h3> +<a name="idp18431824"></a><h3>Element Information</h3> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> @@ -77,7 +77,7 @@ </div> <hr> <div class="refsect2"> -<a name="idp18252192"></a><h3>Element Pads</h3> +<a name="idp16127040"></a><h3>Element Pads</h3> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> diff --git a/docs/plugins/html/gst-plugins-bad-plugins-zbar.html b/docs/plugins/html/gst-plugins-bad-plugins-zbar.html index 13d4d2b1..12d0962f 100644 --- a/docs/plugins/html/gst-plugins-bad-plugins-zbar.html +++ b/docs/plugins/html/gst-plugins-bad-plugins-zbar.html @@ -68,7 +68,7 @@ <div class="refsynopsisdiv"> <h2>Synopsis</h2> <div class="refsect2"> -<a name="idp17157552"></a><h3>Element Information</h3> +<a name="idp19371104"></a><h3>Element Information</h3> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> @@ -91,7 +91,7 @@ </div> <hr> <div class="refsect2"> -<a name="idp20112464"></a><h3>Element Pads</h3> +<a name="idp20177872"></a><h3>Element Pads</h3> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> diff --git a/docs/plugins/html/gst-plugins-bad-plugins.devhelp2 b/docs/plugins/html/gst-plugins-bad-plugins.devhelp2 index 122f4454..5d44db3e 100644 --- a/docs/plugins/html/gst-plugins-bad-plugins.devhelp2 +++ b/docs/plugins/html/gst-plugins-bad-plugins.devhelp2 @@ -56,7 +56,6 @@ <sub name="kateparse" link="gst-plugins-bad-plugins-kateparse.html"/> <sub name="katetag" link="gst-plugins-bad-plugins-katetag.html"/> <sub name="ladspa" link="gst-plugins-bad-plugins-ladspa.html"/> - <sub name="legacyresample" link="gst-plugins-bad-plugins-legacyresample.html"/> <sub name="liveadder" link="gst-plugins-bad-plugins-liveadder.html"/> <sub name="marble" link="gst-plugins-bad-plugins-marble.html"/> <sub name="mimenc" link="gst-plugins-bad-plugins-mimenc.html"/> @@ -119,11 +118,9 @@ <sub name="aiff" link="gst-plugins-bad-plugins-plugin-aiff.html"/> <sub name="audiovisualizers" link="gst-plugins-bad-plugins-plugin-audiovisualizers.html"/> <sub name="autoconvert" link="gst-plugins-bad-plugins-plugin-autoconvert.html"/> - <sub name="legacyresample" link="gst-plugins-bad-plugins-plugin-legacyresample.html"/> <sub name="assrender" link="gst-plugins-bad-plugins-plugin-assrender.html"/> <sub name="bayer" link="gst-plugins-bad-plugins-plugin-bayer.html"/> <sub name="bz2" link="gst-plugins-bad-plugins-plugin-bz2.html"/> - <sub name="camerabin" link="gst-plugins-bad-plugins-plugin-camerabin.html"/> <sub name="cdaudio" link="gst-plugins-bad-plugins-plugin-cdaudio.html"/> <sub name="cdxaparse" link="gst-plugins-bad-plugins-plugin-cdxaparse.html"/> <sub name="celt" link="gst-plugins-bad-plugins-plugin-celt.html"/> @@ -198,7 +195,6 @@ <sub name="wildmidi" link="gst-plugins-bad-plugins-plugin-wildmidi.html"/> <sub name="xvid" link="gst-plugins-bad-plugins-plugin-xvid.html"/> <sub name="voaacenc" link="gst-plugins-bad-plugins-plugin-voaacenc.html"/> - <sub name="voamrwbenc" link="gst-plugins-bad-plugins-plugin-voamrwbenc.html"/> <sub name="vp8" link="gst-plugins-bad-plugins-plugin-vp8.html"/> <sub name="zbar" link="gst-plugins-bad-plugins-plugin-zbar.html"/> </sub> @@ -207,40 +203,38 @@ </sub> </chapters> <functions> - <keyword type="" name="Example launch line" link="gst-plugins-bad-plugins-aiffparse.html#idp4612320"/> - <keyword type="" name="Element Information" link="gst-plugins-bad-plugins-aiffparse.html#idm33920"/> - <keyword type="" name="Element Pads" link="gst-plugins-bad-plugins-aiffparse.html#idp7659040"/> + <keyword type="" name="Example launch line" link="gst-plugins-bad-plugins-aiffparse.html#idp2839760"/> + <keyword type="" name="Element Information" link="gst-plugins-bad-plugins-aiffparse.html#idp2837072"/> + <keyword type="" name="Element Pads" link="gst-plugins-bad-plugins-aiffparse.html#idp8518944"/> <keyword type="struct" name="struct GstAiffParse" link="gst-plugins-bad-plugins-aiffparse.html#GstAiffParse"/> - <keyword type="" name="Element Information" link="gst-plugins-bad-plugins-aiffmux.html#idp7566096"/> - <keyword type="" name="Element Pads" link="gst-plugins-bad-plugins-aiffmux.html#idp6515904"/> + <keyword type="" name="Element Information" link="gst-plugins-bad-plugins-aiffmux.html#idm5328"/> + <keyword type="" name="Element Pads" link="gst-plugins-bad-plugins-aiffmux.html#idp2882240"/> <keyword type="struct" name="struct GstAiffMux" link="gst-plugins-bad-plugins-aiffmux.html#GstAiffMux"/> - <keyword type="" name="Element Information" link="gst-plugins-bad-plugins-assrender.html#idp7048848"/> - <keyword type="" name="Element Pads" link="gst-plugins-bad-plugins-assrender.html#idp8398624"/> + <keyword type="" name="Element Information" link="gst-plugins-bad-plugins-assrender.html#idp2829696"/> + <keyword type="" name="Element Pads" link="gst-plugins-bad-plugins-assrender.html#idp9032096"/> <keyword type="struct" name="struct GstAssRender" link="gst-plugins-bad-plugins-assrender.html#GstAssRender-struct"/> <keyword type="property" name="The "embeddedfonts" property" link="gst-plugins-bad-plugins-assrender.html#GstAssRender--embeddedfonts"/> <keyword type="property" name="The "enable" property" link="gst-plugins-bad-plugins-assrender.html#GstAssRender--enable"/> - <keyword type="" name="Element Information" link="gst-plugins-bad-plugins-autoconvert.html#idp8803024"/> - <keyword type="" name="Element Pads" link="gst-plugins-bad-plugins-autoconvert.html#idp6295408"/> + <keyword type="" name="Element Information" link="gst-plugins-bad-plugins-autoconvert.html#idp8989648"/> + <keyword type="" name="Element Pads" link="gst-plugins-bad-plugins-autoconvert.html#idp9554912"/> <keyword type="struct" name="struct GstAutoConvert" link="gst-plugins-bad-plugins-autoconvert.html#GstAutoConvert-struct"/> <keyword type="property" name="The "factories" property" link="gst-plugins-bad-plugins-autoconvert.html#GstAutoConvert--factories"/> <keyword type="property" name="The "initial-identity" property" link="gst-plugins-bad-plugins-autoconvert.html#GstAutoConvert--initial-identity"/> - <keyword type="" name="Element Information" link="gst-plugins-bad-plugins-bulge.html#idp8682960"/> - <keyword type="" name="Element Pads" link="gst-plugins-bad-plugins-bulge.html#idp8727488"/> + <keyword type="" name="Element Information" link="gst-plugins-bad-plugins-bulge.html#idp8525232"/> + <keyword type="" name="Element Pads" link="gst-plugins-bad-plugins-bulge.html#idp8434096"/> <keyword type="struct" name="struct GstBulge" link="gst-plugins-bad-plugins-bulge.html#GstBulge-struct"/> <keyword type="property" name="The "zoom" property" link="gst-plugins-bad-plugins-bulge.html#GstBulge--zoom"/> - <keyword type="" name="Example launch line" link="gst-plugins-bad-plugins-burn.html#idp6636688"/> - <keyword type="" name="Element Information" link="gst-plugins-bad-plugins-burn.html#idp7018064"/> - <keyword type="" name="Element Pads" link="gst-plugins-bad-plugins-burn.html#idp6597760"/> + <keyword type="" name="Example launch line" link="gst-plugins-bad-plugins-burn.html#idp8106800"/> + <keyword type="" name="Element Information" link="gst-plugins-bad-plugins-burn.html#idp9238224"/> + <keyword type="" name="Element Pads" link="gst-plugins-bad-plugins-burn.html#idp6053072"/> <keyword type="struct" name="struct GstBurn" link="gst-plugins-bad-plugins-burn.html#GstBurn-struct"/> <keyword type="property" name="The "silent" property" link="gst-plugins-bad-plugins-burn.html#GstBurn--silent"/> <keyword type="property" name="The "adjustment" property" link="gst-plugins-bad-plugins-burn.html#GstBurn--adjustment"/> - <keyword type="" name="Element Information" link="gst-plugins-bad-plugins-camerabin.html#idp7871936"/> - <keyword type="" name="Element Pads" link="gst-plugins-bad-plugins-camerabin.html#idp4852944"/> - <keyword type="" name="Element Information" link="gst-plugins-bad-plugins-celtdec.html#idp8066736"/> - <keyword type="" name="Element Pads" link="gst-plugins-bad-plugins-celtdec.html#idp6330720"/> + <keyword type="" name="Element Information" link="gst-plugins-bad-plugins-celtdec.html#idp6823200"/> + <keyword type="" name="Element Pads" link="gst-plugins-bad-plugins-celtdec.html#idp7058896"/> <keyword type="struct" name="struct GstCeltDec" link="gst-plugins-bad-plugins-celtdec.html#GstCeltDec-struct"/> - <keyword type="" name="Element Information" link="gst-plugins-bad-plugins-celtenc.html#idp8112560"/> - <keyword type="" name="Element Pads" link="gst-plugins-bad-plugins-celtenc.html#idp8119968"/> + <keyword type="" name="Element Information" link="gst-plugins-bad-plugins-celtenc.html#idp5670784"/> + <keyword type="" name="Element Pads" link="gst-plugins-bad-plugins-celtenc.html#idp5678192"/> <keyword type="struct" name="struct GstCeltEnc" link="gst-plugins-bad-plugins-celtenc.html#GstCeltEnc-struct"/> <keyword type="property" name="The "bitrate" property" link="gst-plugins-bad-plugins-celtenc.html#GstCeltEnc--bitrate"/> <keyword type="property" name="The "framesize" property" link="gst-plugins-bad-plugins-celtenc.html#GstCeltEnc--framesize"/> @@ -249,59 +243,59 @@ <keyword type="property" name="The "max-bitrate" property" link="gst-plugins-bad-plugins-celtenc.html#GstCeltEnc--max-bitrate"/> <keyword type="property" name="The "prediction" property" link="gst-plugins-bad-plugins-celtenc.html#GstCeltEnc--prediction"/> <keyword type="property" name="The "start-band" property" link="gst-plugins-bad-plugins-celtenc.html#GstCeltEnc--start-band"/> - <keyword type="" name="Example launch line" link="gst-plugins-bad-plugins-chromium.html#idp6674832"/> - <keyword type="" name="Element Information" link="gst-plugins-bad-plugins-chromium.html#idp6271072"/> - <keyword type="" name="Element Pads" link="gst-plugins-bad-plugins-chromium.html#idp5349616"/> + <keyword type="" name="Example launch line" link="gst-plugins-bad-plugins-chromium.html#idp6233824"/> + <keyword type="" name="Element Information" link="gst-plugins-bad-plugins-chromium.html#idp7745728"/> + <keyword type="" name="Element Pads" link="gst-plugins-bad-plugins-chromium.html#idp8349200"/> <keyword type="typedef" name="GstChromium" link="gst-plugins-bad-plugins-chromium.html#GstChromium"/> <keyword type="property" name="The "silent" property" link="gst-plugins-bad-plugins-chromium.html#GstChromium--silent"/> <keyword type="property" name="The "edge-a" property" link="gst-plugins-bad-plugins-chromium.html#GstChromium--edge-a"/> <keyword type="property" name="The "edge-b" property" link="gst-plugins-bad-plugins-chromium.html#GstChromium--edge-b"/> - <keyword type="" name="Element Information" link="gst-plugins-bad-plugins-circle.html#idp6483312"/> - <keyword type="" name="Element Pads" link="gst-plugins-bad-plugins-circle.html#idp8695216"/> + <keyword type="" name="Element Information" link="gst-plugins-bad-plugins-circle.html#idp8856160"/> + <keyword type="" name="Element Pads" link="gst-plugins-bad-plugins-circle.html#idp9475024"/> <keyword type="struct" name="struct GstCircle" link="gst-plugins-bad-plugins-circle.html#GstCircle-struct"/> <keyword type="property" name="The "angle" property" link="gst-plugins-bad-plugins-circle.html#GstCircle--angle"/> <keyword type="property" name="The "height" property" link="gst-plugins-bad-plugins-circle.html#GstCircle--height"/> <keyword type="property" name="The "spread-angle" property" link="gst-plugins-bad-plugins-circle.html#GstCircle--spread-angle"/> - <keyword type="" name="Example launch line" link="gst-plugins-bad-plugins-coloreffects.html#idp6445232"/> - <keyword type="" name="Element Information" link="gst-plugins-bad-plugins-coloreffects.html#idp6924496"/> - <keyword type="" name="Element Pads" link="gst-plugins-bad-plugins-coloreffects.html#idp6705760"/> + <keyword type="" name="Example launch line" link="gst-plugins-bad-plugins-coloreffects.html#idp5402224"/> + <keyword type="" name="Element Information" link="gst-plugins-bad-plugins-coloreffects.html#idp8594816"/> + <keyword type="" name="Element Pads" link="gst-plugins-bad-plugins-coloreffects.html#idp5968336"/> <keyword type="struct" name="struct GstColorEffects" link="gst-plugins-bad-plugins-coloreffects.html#GstColorEffects-struct"/> <keyword type="property" name="The "preset" property" link="gst-plugins-bad-plugins-coloreffects.html#GstColorEffects--preset"/> - <keyword type="" name="Element Information" link="gst-plugins-bad-plugins-cvdilate.html#idp9743648"/> - <keyword type="" name="Element Pads" link="gst-plugins-bad-plugins-cvdilate.html#idp6185776"/> + <keyword type="" name="Element Information" link="gst-plugins-bad-plugins-cvdilate.html#idp10187328"/> + <keyword type="" name="Element Pads" link="gst-plugins-bad-plugins-cvdilate.html#idp6379600"/> <keyword type="struct" name="struct GstCvDilate" link="gst-plugins-bad-plugins-cvdilate.html#GstCvDilate"/> - <keyword type="" name="Element Information" link="gst-plugins-bad-plugins-cverode.html#idp9907200"/> - <keyword type="" name="Element Pads" link="gst-plugins-bad-plugins-cverode.html#idp5589184"/> + <keyword type="" name="Element Information" link="gst-plugins-bad-plugins-cverode.html#idp10307792"/> + <keyword type="" name="Element Pads" link="gst-plugins-bad-plugins-cverode.html#idp9514848"/> <keyword type="struct" name="struct GstCvErode" link="gst-plugins-bad-plugins-cverode.html#GstCvErode"/> - <keyword type="" name="Element Information" link="gst-plugins-bad-plugins-cvequalizehist.html#idp5512816"/> - <keyword type="" name="Element Pads" link="gst-plugins-bad-plugins-cvequalizehist.html#idm30656"/> + <keyword type="" name="Element Information" link="gst-plugins-bad-plugins-cvequalizehist.html#idp7384896"/> + <keyword type="" name="Element Pads" link="gst-plugins-bad-plugins-cvequalizehist.html#idp6143184"/> <keyword type="struct" name="struct GstCvEqualizeHist" link="gst-plugins-bad-plugins-cvequalizehist.html#GstCvEqualizeHist"/> - <keyword type="" name="Element Information" link="gst-plugins-bad-plugins-cvlaplace.html#idp5820096"/> - <keyword type="" name="Element Pads" link="gst-plugins-bad-plugins-cvlaplace.html#idp5624736"/> + <keyword type="" name="Element Information" link="gst-plugins-bad-plugins-cvlaplace.html#idp8492880"/> + <keyword type="" name="Element Pads" link="gst-plugins-bad-plugins-cvlaplace.html#idp7770336"/> <keyword type="struct" name="struct GstCvLaplace" link="gst-plugins-bad-plugins-cvlaplace.html#GstCvLaplace"/> <keyword type="property" name="The "aperture-size" property" link="gst-plugins-bad-plugins-cvlaplace.html#GstCvLaplace--aperture-size"/> - <keyword type="" name="Element Information" link="gst-plugins-bad-plugins-cvsmooth.html#idp4944608"/> - <keyword type="" name="Element Pads" link="gst-plugins-bad-plugins-cvsmooth.html#idp6193872"/> + <keyword type="" name="Element Information" link="gst-plugins-bad-plugins-cvsmooth.html#idp2985344"/> + <keyword type="" name="Element Pads" link="gst-plugins-bad-plugins-cvsmooth.html#idp9014304"/> <keyword type="struct" name="struct GstCvSmooth" link="gst-plugins-bad-plugins-cvsmooth.html#GstCvSmooth"/> <keyword type="property" name="The "param1" property" link="gst-plugins-bad-plugins-cvsmooth.html#GstCvSmooth--param1"/> <keyword type="property" name="The "param2" property" link="gst-plugins-bad-plugins-cvsmooth.html#GstCvSmooth--param2"/> <keyword type="property" name="The "param3" property" link="gst-plugins-bad-plugins-cvsmooth.html#GstCvSmooth--param3"/> <keyword type="property" name="The "param4" property" link="gst-plugins-bad-plugins-cvsmooth.html#GstCvSmooth--param4"/> <keyword type="property" name="The "type" property" link="gst-plugins-bad-plugins-cvsmooth.html#GstCvSmooth--type"/> - <keyword type="" name="Element Information" link="gst-plugins-bad-plugins-cvsobel.html#idp9627312"/> - <keyword type="" name="Element Pads" link="gst-plugins-bad-plugins-cvsobel.html#idp7846256"/> + <keyword type="" name="Element Information" link="gst-plugins-bad-plugins-cvsobel.html#idp10101808"/> + <keyword type="" name="Element Pads" link="gst-plugins-bad-plugins-cvsobel.html#idp2988560"/> <keyword type="struct" name="struct GstCvSobel" link="gst-plugins-bad-plugins-cvsobel.html#GstCvSobel"/> <keyword type="property" name="The "aperture-size" property" link="gst-plugins-bad-plugins-cvsobel.html#GstCvSobel--aperture-size"/> <keyword type="property" name="The "x-order" property" link="gst-plugins-bad-plugins-cvsobel.html#GstCvSobel--x-order"/> <keyword type="property" name="The "y-order" property" link="gst-plugins-bad-plugins-cvsobel.html#GstCvSobel--y-order"/> - <keyword type="" name="Example launch line" link="gst-plugins-bad-plugins-dataurisrc.html#idp9633456"/> - <keyword type="" name="Element Information" link="gst-plugins-bad-plugins-dataurisrc.html#idp9636448"/> - <keyword type="" name="Element Pads" link="gst-plugins-bad-plugins-dataurisrc.html#idp8977696"/> + <keyword type="" name="Example launch line" link="gst-plugins-bad-plugins-dataurisrc.html#idp7313360"/> + <keyword type="" name="Element Information" link="gst-plugins-bad-plugins-dataurisrc.html#idp10104336"/> + <keyword type="" name="Element Pads" link="gst-plugins-bad-plugins-dataurisrc.html#idp9922496"/> <keyword type="struct" name="struct GstDataURISrc" link="gst-plugins-bad-plugins-dataurisrc.html#GstDataURISrc-struct"/> <keyword type="property" name="The "uri" property" link="gst-plugins-bad-plugins-dataurisrc.html#GstDataURISrc--uri"/> - <keyword type="" name="Example pipeline" link="gst-plugins-bad-plugins-dccpclientsink.html#idp9883104"/> - <keyword type="" name="Element Information" link="gst-plugins-bad-plugins-dccpclientsink.html#idp9887680"/> - <keyword type="" name="Element Pads" link="gst-plugins-bad-plugins-dccpclientsink.html#idp9895088"/> + <keyword type="" name="Example pipeline" link="gst-plugins-bad-plugins-dccpclientsink.html#idp10818016"/> + <keyword type="" name="Element Information" link="gst-plugins-bad-plugins-dccpclientsink.html#idp10822640"/> + <keyword type="" name="Element Pads" link="gst-plugins-bad-plugins-dccpclientsink.html#idp10830048"/> <keyword type="struct" name="struct GstDCCPClientSink" link="gst-plugins-bad-plugins-dccpclientsink.html#GstDCCPClientSink"/> <keyword type="property" name="The "ccid" property" link="gst-plugins-bad-plugins-dccpclientsink.html#GstDCCPClientSink--ccid"/> <keyword type="property" name="The "close-socket" property" link="gst-plugins-bad-plugins-dccpclientsink.html#GstDCCPClientSink--close-socket"/> @@ -309,9 +303,9 @@ <keyword type="property" name="The "port" property" link="gst-plugins-bad-plugins-dccpclientsink.html#GstDCCPClientSink--port"/> <keyword type="property" name="The "sockfd" property" link="gst-plugins-bad-plugins-dccpclientsink.html#GstDCCPClientSink--sockfd"/> <keyword type="signal" name="The "connected" signal" link="gst-plugins-bad-plugins-dccpclientsink.html#GstDCCPClientSink-connected"/> - <keyword type="" name="Example pipeline" link="gst-plugins-bad-plugins-dccpclientsrc.html#idp10093328"/> - <keyword type="" name="Element Information" link="gst-plugins-bad-plugins-dccpclientsrc.html#idp8675312"/> - <keyword type="" name="Element Pads" link="gst-plugins-bad-plugins-dccpclientsrc.html#idp8423584"/> + <keyword type="" name="Example pipeline" link="gst-plugins-bad-plugins-dccpclientsrc.html#idp9953888"/> + <keyword type="" name="Element Information" link="gst-plugins-bad-plugins-dccpclientsrc.html#idp9958528"/> + <keyword type="" name="Element Pads" link="gst-plugins-bad-plugins-dccpclientsrc.html#idp11044688"/> <keyword type="struct" name="struct GstDCCPClientSrc" link="gst-plugins-bad-plugins-dccpclientsrc.html#GstDCCPClientSrc"/> <keyword type="property" name="The "caps" property" link="gst-plugins-bad-plugins-dccpclientsrc.html#GstDCCPClientSrc--caps"/> <keyword type="property" name="The "ccid" property" link="gst-plugins-bad-plugins-dccpclientsrc.html#GstDCCPClientSrc--ccid"/> @@ -320,9 +314,9 @@ <keyword type="property" name="The "port" property" link="gst-plugins-bad-plugins-dccpclientsrc.html#GstDCCPClientSrc--port"/> <keyword type="property" name="The "sockfd" property" link="gst-plugins-bad-plugins-dccpclientsrc.html#GstDCCPClientSrc--sockfd"/> <keyword type="signal" name="The "connected" signal" link="gst-plugins-bad-plugins-dccpclientsrc.html#GstDCCPClientSrc-connected"/> - <keyword type="" name="Example pipeline" link="gst-plugins-bad-plugins-dccpserversink.html#idp9838512"/> - <keyword type="" name="Element Information" link="gst-plugins-bad-plugins-dccpserversink.html#idp9843152"/> - <keyword type="" name="Element Pads" link="gst-plugins-bad-plugins-dccpserversink.html#idp9850560"/> + <keyword type="" name="Example pipeline" link="gst-plugins-bad-plugins-dccpserversink.html#idp10852864"/> + <keyword type="" name="Element Information" link="gst-plugins-bad-plugins-dccpserversink.html#idp10857504"/> + <keyword type="" name="Element Pads" link="gst-plugins-bad-plugins-dccpserversink.html#idp10864912"/> <keyword type="struct" name="struct GstDCCPServerSink" link="gst-plugins-bad-plugins-dccpserversink.html#GstDCCPServerSink"/> <keyword type="property" name="The "ccid" property" link="gst-plugins-bad-plugins-dccpserversink.html#GstDCCPServerSink--ccid"/> <keyword type="property" name="The "close-socket" property" link="gst-plugins-bad-plugins-dccpserversink.html#GstDCCPServerSink--close-socket"/> @@ -330,9 +324,9 @@ <keyword type="property" name="The "sockfd" property" link="gst-plugins-bad-plugins-dccpserversink.html#GstDCCPServerSink--sockfd"/> <keyword type="property" name="The "wait-connections" property" link="gst-plugins-bad-plugins-dccpserversink.html#GstDCCPServerSink--wait-connections"/> <keyword type="signal" name="The "connected" signal" link="gst-plugins-bad-plugins-dccpserversink.html#GstDCCPServerSink-connected"/> - <keyword type="" name="Example pipeline" link="gst-plugins-bad-plugins-dccpserversrc.html#idp8603952"/> - <keyword type="" name="Element Information" link="gst-plugins-bad-plugins-dccpserversrc.html#idp8608576"/> - <keyword type="" name="Element Pads" link="gst-plugins-bad-plugins-dccpserversrc.html#idp8615984"/> + <keyword type="" name="Example pipeline" link="gst-plugins-bad-plugins-dccpserversrc.html#idp10323360"/> + <keyword type="" name="Element Information" link="gst-plugins-bad-plugins-dccpserversrc.html#idp10327984"/> + <keyword type="" name="Element Pads" link="gst-plugins-bad-plugins-dccpserversrc.html#idp9084256"/> <keyword type="struct" name="struct GstDCCPServerSrc" link="gst-plugins-bad-plugins-dccpserversrc.html#GstDCCPServerSrc"/> <keyword type="property" name="The "caps" property" link="gst-plugins-bad-plugins-dccpserversrc.html#GstDCCPServerSrc--caps"/> <keyword type="property" name="The "ccid" property" link="gst-plugins-bad-plugins-dccpserversrc.html#GstDCCPServerSrc--ccid"/> @@ -341,8 +335,8 @@ <keyword type="property" name="The "port" property" link="gst-plugins-bad-plugins-dccpserversrc.html#GstDCCPServerSrc--port"/> <keyword type="property" name="The "sockfd" property" link="gst-plugins-bad-plugins-dccpserversrc.html#GstDCCPServerSrc--sockfd"/> <keyword type="signal" name="The "connected" signal" link="gst-plugins-bad-plugins-dccpserversrc.html#GstDCCPServerSrc-connected"/> - <keyword type="" name="Element Information" link="gst-plugins-bad-plugins-dfbvideosink.html#idp8569696"/> - <keyword type="" name="Element Pads" link="gst-plugins-bad-plugins-dfbvideosink.html#idp8577152"/> + <keyword type="" name="Element Information" link="gst-plugins-bad-plugins-dfbvideosink.html#idp8833824"/> + <keyword type="" name="Element Pads" link="gst-plugins-bad-plugins-dfbvideosink.html#idp8841280"/> <keyword type="struct" name="struct GstDfbVideoSink" link="gst-plugins-bad-plugins-dfbvideosink.html#GstDfbVideoSink"/> <keyword type="property" name="The "brightness" property" link="gst-plugins-bad-plugins-dfbvideosink.html#GstDfbVideoSink--brightness"/> <keyword type="property" name="The "contrast" property" link="gst-plugins-bad-plugins-dfbvideosink.html#GstDfbVideoSink--contrast"/> @@ -351,37 +345,37 @@ <keyword type="property" name="The "saturation" property" link="gst-plugins-bad-plugins-dfbvideosink.html#GstDfbVideoSink--saturation"/> <keyword type="property" name="The "surface" property" link="gst-plugins-bad-plugins-dfbvideosink.html#GstDfbVideoSink--surface"/> <keyword type="property" name="The "vsync" property" link="gst-plugins-bad-plugins-dfbvideosink.html#GstDfbVideoSink--vsync"/> - <keyword type="" name="Element Information" link="gst-plugins-bad-plugins-diffuse.html#idp9369664"/> - <keyword type="" name="Element Pads" link="gst-plugins-bad-plugins-diffuse.html#idp9993536"/> + <keyword type="" name="Element Information" link="gst-plugins-bad-plugins-diffuse.html#idp6315568"/> + <keyword type="" name="Element Pads" link="gst-plugins-bad-plugins-diffuse.html#idp5484464"/> <keyword type="struct" name="struct GstDiffuse" link="gst-plugins-bad-plugins-diffuse.html#GstDiffuse-struct"/> <keyword type="property" name="The "scale" property" link="gst-plugins-bad-plugins-diffuse.html#GstDiffuse--scale"/> - <keyword type="" name="Example launch line" link="gst-plugins-bad-plugins-dilate.html#idp6287344"/> - <keyword type="" name="Element Information" link="gst-plugins-bad-plugins-dilate.html#idp6920400"/> - <keyword type="" name="Element Pads" link="gst-plugins-bad-plugins-dilate.html#idp10687648"/> + <keyword type="" name="Example launch line" link="gst-plugins-bad-plugins-dilate.html#idp2860624"/> + <keyword type="" name="Element Information" link="gst-plugins-bad-plugins-dilate.html#idp9241504"/> + <keyword type="" name="Element Pads" link="gst-plugins-bad-plugins-dilate.html#idp11010224"/> <keyword type="struct" name="struct GstDilate" link="gst-plugins-bad-plugins-dilate.html#GstDilate-struct"/> <keyword type="property" name="The "silent" property" link="gst-plugins-bad-plugins-dilate.html#GstDilate--silent"/> <keyword type="property" name="The "erode" property" link="gst-plugins-bad-plugins-dilate.html#GstDilate--erode"/> - <keyword type="" name="Element Information" link="gst-plugins-bad-plugins-directdrawsink.html#idp7373024"/> - <keyword type="" name="Element Pads" link="gst-plugins-bad-plugins-directdrawsink.html#idp8260880"/> + <keyword type="" name="Element Information" link="gst-plugins-bad-plugins-directdrawsink.html#idp5578000"/> + <keyword type="" name="Element Pads" link="gst-plugins-bad-plugins-directdrawsink.html#idp7595952"/> <keyword type="struct" name="struct GstDirectDrawSink" link="gst-plugins-bad-plugins-directdrawsink.html#GstDirectDrawSink"/> - <keyword type="" name="Example launch line" link="gst-plugins-bad-plugins-dodge.html#idp6154848"/> - <keyword type="" name="Element Information" link="gst-plugins-bad-plugins-dodge.html#idp7088544"/> - <keyword type="" name="Element Pads" link="gst-plugins-bad-plugins-dodge.html#idp10730416"/> + <keyword type="" name="Example launch line" link="gst-plugins-bad-plugins-dodge.html#idp5282976"/> + <keyword type="" name="Element Information" link="gst-plugins-bad-plugins-dodge.html#idp7389040"/> + <keyword type="" name="Element Pads" link="gst-plugins-bad-plugins-dodge.html#idp7545072"/> <keyword type="struct" name="struct GstDodge" link="gst-plugins-bad-plugins-dodge.html#GstDodge-struct"/> <keyword type="property" name="The "silent" property" link="gst-plugins-bad-plugins-dodge.html#GstDodge--silent"/> - <keyword type="" name="Element Information" link="gst-plugins-bad-plugins-dtmfdetect.html#idp7183136"/> - <keyword type="" name="Element Pads" link="gst-plugins-bad-plugins-dtmfdetect.html#idp10222208"/> + <keyword type="" name="Element Information" link="gst-plugins-bad-plugins-dtmfdetect.html#idp7706656"/> + <keyword type="" name="Element Pads" link="gst-plugins-bad-plugins-dtmfdetect.html#idp11601232"/> <keyword type="struct" name="struct GstDtmfDetect" link="gst-plugins-bad-plugins-dtmfdetect.html#GstDtmfDetect-struct"/> - <keyword type="" name="Element Information" link="gst-plugins-bad-plugins-dtmfsrc.html#idp11240768"/> - <keyword type="" name="Element Pads" link="gst-plugins-bad-plugins-dtmfsrc.html#idp11248176"/> + <keyword type="" name="Element Information" link="gst-plugins-bad-plugins-dtmfsrc.html#idp11224640"/> + <keyword type="" name="Element Pads" link="gst-plugins-bad-plugins-dtmfsrc.html#idp11232048"/> <keyword type="struct" name="struct GstDTMFSrc" link="gst-plugins-bad-plugins-dtmfsrc.html#GstDTMFSrc-struct"/> <keyword type="property" name="The "interval" property" link="gst-plugins-bad-plugins-dtmfsrc.html#GstDTMFSrc--interval"/> - <keyword type="" name="Element Information" link="gst-plugins-bad-plugins-dtsdec.html#idp4879328"/> - <keyword type="" name="Element Pads" link="gst-plugins-bad-plugins-dtsdec.html#idp7335856"/> + <keyword type="" name="Element Information" link="gst-plugins-bad-plugins-dtsdec.html#idp5376000"/> + <keyword type="" name="Element Pads" link="gst-plugins-bad-plugins-dtsdec.html#idp11099120"/> <keyword type="struct" name="struct GstDtsDec" link="gst-plugins-bad-plugins-dtsdec.html#GstDtsDec-struct"/> <keyword type="property" name="The "drc" property" link="gst-plugins-bad-plugins-dtsdec.html#GstDtsDec--drc"/> - <keyword type="" name="Element Information" link="gst-plugins-bad-plugins-dvbsrc.html#idp11206608"/> - <keyword type="" name="Element Pads" link="gst-plugins-bad-plugins-dvbsrc.html#idp11214128"/> + <keyword type="" name="Element Information" link="gst-plugins-bad-plugins-dvbsrc.html#idp11415376"/> + <keyword type="" name="Element Pads" link="gst-plugins-bad-plugins-dvbsrc.html#idp11422896"/> <keyword type="struct" name="GstDvbSrc" link="gst-plugins-bad-plugins-dvbsrc.html#GstDvbSrc"/> <keyword type="property" name="The "bandwidth" property" link="gst-plugins-bad-plugins-dvbsrc.html#GstDvbSrc--bandwidth"/> <keyword type="property" name="The "code-rate-hp" property" link="gst-plugins-bad-plugins-dvbsrc.html#GstDvbSrc--code-rate-hp"/> @@ -406,20 +400,20 @@ <keyword type="property" name="The "symbol-rate" property" link="gst-plugins-bad-plugins-dvbsrc.html#GstDvbSrc--symbol-rate"/> <keyword type="property" name="The "stats-reporting-interval" property" link="gst-plugins-bad-plugins-dvbsrc.html#GstDvbSrc--stats-reporting-interval"/> <keyword type="property" name="The "timeout" property" link="gst-plugins-bad-plugins-dvbsrc.html#GstDvbSrc--timeout"/> - <keyword type="" name="Example launch line" link="gst-plugins-bad-plugins-dvdspu.html#idp11313904"/> - <keyword type="" name="Element Information" link="gst-plugins-bad-plugins-dvdspu.html#idp11311728"/> - <keyword type="" name="Element Pads" link="gst-plugins-bad-plugins-dvdspu.html#idp5829008"/> + <keyword type="" name="Example launch line" link="gst-plugins-bad-plugins-dvdspu.html#idp11809936"/> + <keyword type="" name="Element Information" link="gst-plugins-bad-plugins-dvdspu.html#idp11807760"/> + <keyword type="" name="Element Pads" link="gst-plugins-bad-plugins-dvdspu.html#idp10147840"/> <keyword type="struct" name="GstDVDSpu" link="gst-plugins-bad-plugins-dvdspu.html#GstDVDSpu-struct"/> - <keyword type="" name="Example launch line" link="gst-plugins-bad-plugins-exclusion.html#idp8425008"/> - <keyword type="" name="Element Information" link="gst-plugins-bad-plugins-exclusion.html#idp9878992"/> - <keyword type="" name="Element Pads" link="gst-plugins-bad-plugins-exclusion.html#idp11181824"/> + <keyword type="" name="Example launch line" link="gst-plugins-bad-plugins-exclusion.html#idp9396624"/> + <keyword type="" name="Element Information" link="gst-plugins-bad-plugins-exclusion.html#idp8932464"/> + <keyword type="" name="Element Pads" link="gst-plugins-bad-plugins-exclusion.html#idp11280224"/> <keyword type="struct" name="struct GstExclusion" link="gst-plugins-bad-plugins-exclusion.html#GstExclusion-struct"/> <keyword type="property" name="The "silent" property" link="gst-plugins-bad-plugins-exclusion.html#GstExclusion--silent"/> <keyword type="property" name="The "factor" property" link="gst-plugins-bad-plugins-exclusion.html#GstExclusion--factor"/> - <keyword type="" name="Element Information" link="gst-plugins-bad-plugins-edgedetect.html#idp11431968"/> - <keyword type="" name="Element Pads" link="gst-plugins-bad-plugins-edgedetect.html#idp8197648"/> - <keyword type="" name="Element Information" link="gst-plugins-bad-plugins-faac.html#idp4673792"/> - <keyword type="" name="Element Pads" link="gst-plugins-bad-plugins-faac.html#idp8445984"/> + <keyword type="" name="Element Information" link="gst-plugins-bad-plugins-edgedetect.html#idp10940736"/> + <keyword type="" name="Element Pads" link="gst-plugins-bad-plugins-edgedetect.html#idp6591344"/> + <keyword type="" name="Element Information" link="gst-plugins-bad-plugins-faac.html#idp11501600"/> + <keyword type="" name="Element Pads" link="gst-plugins-bad-plugins-faac.html#idp11509008"/> <keyword type="struct" name="struct GstFaac" link="gst-plugins-bad-plugins-faac.html#GstFaac-struct"/> <keyword type="property" name="The "bitrate" property" link="gst-plugins-bad-plugins-faac.html#GstFaac--bitrate"/> <keyword type="property" name="The "midside" property" link="gst-plugins-bad-plugins-faac.html#GstFaac--midside"/> @@ -429,23 +423,23 @@ <keyword type="property" name="The "tns" property" link="gst-plugins-bad-plugins-faac.html#GstFaac--tns"/> <keyword type="property" name="The "quality" property" link="gst-plugins-bad-plugins-faac.html#GstFaac--quality"/> <keyword type="property" name="The "rate-control" property" link="gst-plugins-bad-plugins-faac.html#GstFaac--rate-control"/> - <keyword type="" name="Element Information" link="gst-plugins-bad-plugins-faad.html#idp6610000"/> - <keyword type="" name="Element Pads" link="gst-plugins-bad-plugins-faad.html#idp9308272"/> + <keyword type="" name="Element Information" link="gst-plugins-bad-plugins-faad.html#idp9439936"/> + <keyword type="" name="Element Pads" link="gst-plugins-bad-plugins-faad.html#idp8424256"/> <keyword type="struct" name="GstFaad" link="gst-plugins-bad-plugins-faad.html#GstFaad-struct"/> - <keyword type="" name="Element Information" link="gst-plugins-bad-plugins-faceblur.html#idp11097904"/> - <keyword type="" name="Element Pads" link="gst-plugins-bad-plugins-faceblur.html#idp4659360"/> - <keyword type="" name="Element Information" link="gst-plugins-bad-plugins-facedetect.html#idp11354192"/> - <keyword type="" name="Element Pads" link="gst-plugins-bad-plugins-facedetect.html#idp10316832"/> - <keyword type="" name="Example pipeline" link="gst-plugins-bad-plugins-festival.html#idp11564352"/> - <keyword type="" name="Element Information" link="gst-plugins-bad-plugins-festival.html#idp5167616"/> - <keyword type="" name="Element Pads" link="gst-plugins-bad-plugins-festival.html#idp6097808"/> + <keyword type="" name="Element Information" link="gst-plugins-bad-plugins-faceblur.html#idp12116352"/> + <keyword type="" name="Element Pads" link="gst-plugins-bad-plugins-faceblur.html#idp5590592"/> + <keyword type="" name="Element Information" link="gst-plugins-bad-plugins-facedetect.html#idp11520160"/> + <keyword type="" name="Element Pads" link="gst-plugins-bad-plugins-facedetect.html#idp5610512"/> + <keyword type="" name="Example pipeline" link="gst-plugins-bad-plugins-festival.html#idp7376432"/> + <keyword type="" name="Element Information" link="gst-plugins-bad-plugins-festival.html#idp6240512"/> + <keyword type="" name="Element Pads" link="gst-plugins-bad-plugins-festival.html#idp8800384"/> <keyword type="struct" name="struct GstFestival" link="gst-plugins-bad-plugins-festival.html#GstFestival"/> - <keyword type="" name="Element Information" link="gst-plugins-bad-plugins-fisheye.html#idp6179664"/> - <keyword type="" name="Element Pads" link="gst-plugins-bad-plugins-fisheye.html#idp6730256"/> + <keyword type="" name="Element Information" link="gst-plugins-bad-plugins-fisheye.html#idp8362800"/> + <keyword type="" name="Element Pads" link="gst-plugins-bad-plugins-fisheye.html#idm17504"/> <keyword type="struct" name="struct GstFisheye" link="gst-plugins-bad-plugins-fisheye.html#GstFisheye-struct"/> - <keyword type="" name="Example launch lines" link="gst-plugins-bad-plugins-fpsdisplaysink.html#idp12149792"/> - <keyword type="" name="Element Information" link="gst-plugins-bad-plugins-fpsdisplaysink.html#idp12152768"/> - <keyword type="" name="Element Pads" link="gst-plugins-bad-plugins-fpsdisplaysink.html#idp12160176"/> + <keyword type="" name="Example launch lines" link="gst-plugins-bad-plugins-fpsdisplaysink.html#idp12498544"/> + <keyword type="" name="Element Information" link="gst-plugins-bad-plugins-fpsdisplaysink.html#idp12501520"/> + <keyword type="" name="Element Pads" link="gst-plugins-bad-plugins-fpsdisplaysink.html#idp12508928"/> <keyword type="struct" name="struct GstFPSDisplaySink" link="gst-plugins-bad-plugins-fpsdisplaysink.html#GstFPSDisplaySink-struct"/> <keyword type="property" name="The "sync" property" link="gst-plugins-bad-plugins-fpsdisplaysink.html#GstFPSDisplaySink--sync"/> <keyword type="property" name="The "text-overlay" property" link="gst-plugins-bad-plugins-fpsdisplaysink.html#GstFPSDisplaySink--text-overlay"/> @@ -459,20 +453,20 @@ <keyword type="property" name="The "last-message" property" link="gst-plugins-bad-plugins-fpsdisplaysink.html#GstFPSDisplaySink--last-message"/> <keyword type="property" name="The "silent" property" link="gst-plugins-bad-plugins-fpsdisplaysink.html#GstFPSDisplaySink--silent"/> <keyword type="signal" name="The "fps-measurements" signal" link="gst-plugins-bad-plugins-fpsdisplaysink.html#GstFPSDisplaySink-fps-measurements"/> - <keyword type="" name="Example launch line" link="gst-plugins-bad-plugins-freeze.html#idp10086896"/> - <keyword type="" name="Element Information" link="gst-plugins-bad-plugins-freeze.html#idp9225744"/> - <keyword type="" name="Element Pads" link="gst-plugins-bad-plugins-freeze.html#idp8769328"/> + <keyword type="" name="Example launch line" link="gst-plugins-bad-plugins-freeze.html#idp5907696"/> + <keyword type="" name="Element Information" link="gst-plugins-bad-plugins-freeze.html#idp6909424"/> + <keyword type="" name="Element Pads" link="gst-plugins-bad-plugins-freeze.html#idp9991056"/> <keyword type="struct" name="struct GstFreeze" link="gst-plugins-bad-plugins-freeze.html#GstFreeze"/> <keyword type="property" name="The "max-buffers" property" link="gst-plugins-bad-plugins-freeze.html#GstFreeze--max-buffers"/> - <keyword type="" name="Example launch line" link="gst-plugins-bad-plugins-gaussianblur.html#idp12035696"/> - <keyword type="" name="Element Information" link="gst-plugins-bad-plugins-gaussianblur.html#idp11904576"/> - <keyword type="" name="Element Pads" link="gst-plugins-bad-plugins-gaussianblur.html#idp7040880"/> - <keyword type="" name="Element Information" link="gst-plugins-bad-plugins-ivfparse.html#idp6987680"/> - <keyword type="" name="Element Pads" link="gst-plugins-bad-plugins-ivfparse.html#idp8924704"/> + <keyword type="" name="Example launch line" link="gst-plugins-bad-plugins-gaussianblur.html#idp12024128"/> + <keyword type="" name="Element Information" link="gst-plugins-bad-plugins-gaussianblur.html#idp9259088"/> + <keyword type="" name="Element Pads" link="gst-plugins-bad-plugins-gaussianblur.html#idp6607072"/> + <keyword type="" name="Element Information" link="gst-plugins-bad-plugins-ivfparse.html#idp11952912"/> + <keyword type="" name="Element Pads" link="gst-plugins-bad-plugins-ivfparse.html#idp9189616"/> <keyword type="struct" name="struct GstIvfParse" link="gst-plugins-bad-plugins-ivfparse.html#GstIvfParse"/> - <keyword type="" name="Example launch line" link="gst-plugins-bad-plugins-jpegparse.html#idp5472512"/> - <keyword type="" name="Element Information" link="gst-plugins-bad-plugins-jpegparse.html#idp8941568"/> - <keyword type="" name="Element Pads" link="gst-plugins-bad-plugins-jpegparse.html#idp11509584"/> + <keyword type="" name="Example launch line" link="gst-plugins-bad-plugins-jpegparse.html#idp3034448"/> + <keyword type="" name="Element Information" link="gst-plugins-bad-plugins-jpegparse.html#idp10792880"/> + <keyword type="" name="Element Pads" link="gst-plugins-bad-plugins-jpegparse.html#idp10706864"/> <keyword type="struct" name="struct GstJpegParse" link="gst-plugins-bad-plugins-jpegparse.html#GstJpegParse"/> <keyword type="struct" name="struct GstJpegParseClass" link="gst-plugins-bad-plugins-jpegparse.html#GstJpegParseClass"/> <keyword type="macro" name="GST_JPEG_PARSE()" link="gst-plugins-bad-plugins-jpegparse.html#GST-JPEG-PARSE:CAPS"/> @@ -481,14 +475,14 @@ <keyword type="macro" name="GST_IS_JPEG_PARSE_CLASS()" link="gst-plugins-bad-plugins-jpegparse.html#GST-IS-JPEG-PARSE-CLASS:CAPS"/> <keyword type="macro" name="GST_TYPE_JPEG_PARSE" link="gst-plugins-bad-plugins-jpegparse.html#GST-TYPE-JPEG-PARSE:CAPS"/> <keyword type="function" name="gst_jpeg_parse_get_type ()" link="gst-plugins-bad-plugins-jpegparse.html#gst-jpeg-parse-get-type"/> - <keyword type="" name="Element Information" link="gst-plugins-bad-plugins-kaleidoscope.html#idp8243312"/> - <keyword type="" name="Element Pads" link="gst-plugins-bad-plugins-kaleidoscope.html#idp12063760"/> + <keyword type="" name="Element Information" link="gst-plugins-bad-plugins-kaleidoscope.html#idp5801264"/> + <keyword type="" name="Element Pads" link="gst-plugins-bad-plugins-kaleidoscope.html#idp12348688"/> <keyword type="struct" name="struct GstKaleidoscope" link="gst-plugins-bad-plugins-kaleidoscope.html#GstKaleidoscope-struct"/> <keyword type="property" name="The "angle" property" link="gst-plugins-bad-plugins-kaleidoscope.html#GstKaleidoscope--angle"/> <keyword type="property" name="The "angle2" property" link="gst-plugins-bad-plugins-kaleidoscope.html#GstKaleidoscope--angle2"/> <keyword type="property" name="The "sides" property" link="gst-plugins-bad-plugins-kaleidoscope.html#GstKaleidoscope--sides"/> - <keyword type="" name="Element Information" link="gst-plugins-bad-plugins-kateenc.html#idp7240848"/> - <keyword type="" name="Element Pads" link="gst-plugins-bad-plugins-kateenc.html#idp11726640"/> + <keyword type="" name="Element Information" link="gst-plugins-bad-plugins-kateenc.html#idp10902416"/> + <keyword type="" name="Element Pads" link="gst-plugins-bad-plugins-kateenc.html#idp12073872"/> <keyword type="struct" name="struct GstKateEnc" link="gst-plugins-bad-plugins-kateenc.html#GstKateEnc"/> <keyword type="property" name="The "category" property" link="gst-plugins-bad-plugins-kateenc.html#GstKateEnc--category"/> <keyword type="property" name="The "default-spu-duration" property" link="gst-plugins-bad-plugins-kateenc.html#GstKateEnc--default-spu-duration"/> @@ -499,54 +493,49 @@ <keyword type="property" name="The "language" property" link="gst-plugins-bad-plugins-kateenc.html#GstKateEnc--language"/> <keyword type="property" name="The "original-canvas-height" property" link="gst-plugins-bad-plugins-kateenc.html#GstKateEnc--original-canvas-height"/> <keyword type="property" name="The "original-canvas-width" property" link="gst-plugins-bad-plugins-kateenc.html#GstKateEnc--original-canvas-width"/> - <keyword type="" name="Element Information" link="gst-plugins-bad-plugins-katedec.html#idp5260656"/> - <keyword type="" name="Element Pads" link="gst-plugins-bad-plugins-katedec.html#idp6250192"/> + <keyword type="" name="Element Information" link="gst-plugins-bad-plugins-katedec.html#idp5802928"/> + <keyword type="" name="Element Pads" link="gst-plugins-bad-plugins-katedec.html#idp8247488"/> <keyword type="struct" name="struct GstKateDec" link="gst-plugins-bad-plugins-katedec.html#GstKateDec"/> <keyword type="property" name="The "category" property" link="gst-plugins-bad-plugins-katedec.html#GstKateDec--category"/> <keyword type="property" name="The "language" property" link="gst-plugins-bad-plugins-katedec.html#GstKateDec--language"/> <keyword type="property" name="The "original-canvas-height" property" link="gst-plugins-bad-plugins-katedec.html#GstKateDec--original-canvas-height"/> <keyword type="property" name="The "original-canvas-width" property" link="gst-plugins-bad-plugins-katedec.html#GstKateDec--original-canvas-width"/> <keyword type="property" name="The "remove-markup" property" link="gst-plugins-bad-plugins-katedec.html#GstKateDec--remove-markup"/> - <keyword type="" name="Element Information" link="gst-plugins-bad-plugins-kateparse.html#idp12336096"/> - <keyword type="" name="Element Pads" link="gst-plugins-bad-plugins-kateparse.html#idp11701296"/> + <keyword type="" name="Element Information" link="gst-plugins-bad-plugins-kateparse.html#idp13189408"/> + <keyword type="" name="Element Pads" link="gst-plugins-bad-plugins-kateparse.html#idp11775552"/> <keyword type="struct" name="struct GstKateParse" link="gst-plugins-bad-plugins-kateparse.html#GstKateParse"/> - <keyword type="" name="Element Information" link="gst-plugins-bad-plugins-katetag.html#idp7917824"/> - <keyword type="" name="Element Pads" link="gst-plugins-bad-plugins-katetag.html#idp4933200"/> + <keyword type="" name="Element Information" link="gst-plugins-bad-plugins-katetag.html#idp7110000"/> + <keyword type="" name="Element Pads" link="gst-plugins-bad-plugins-katetag.html#idp9817712"/> <keyword type="struct" name="struct GstKateTag" link="gst-plugins-bad-plugins-katetag.html#GstKateTag"/> <keyword type="property" name="The "category" property" link="gst-plugins-bad-plugins-katetag.html#GstKateTag--category"/> <keyword type="property" name="The "language" property" link="gst-plugins-bad-plugins-katetag.html#GstKateTag--language"/> <keyword type="property" name="The "original-canvas-height" property" link="gst-plugins-bad-plugins-katetag.html#GstKateTag--original-canvas-height"/> <keyword type="property" name="The "original-canvas-width" property" link="gst-plugins-bad-plugins-katetag.html#GstKateTag--original-canvas-width"/> <keyword type="struct" name="struct GstLADSPA" link="gst-plugins-bad-plugins-ladspa.html#GstLADSPA"/> - <keyword type="" name="Example launch line" link="gst-plugins-bad-plugins-legacyresample.html#idp12307248"/> - <keyword type="" name="Element Information" link="gst-plugins-bad-plugins-legacyresample.html#idp12304944"/> - <keyword type="" name="Element Pads" link="gst-plugins-bad-plugins-legacyresample.html#idp5435360"/> - <keyword type="struct" name="struct GstLegacyresample" link="gst-plugins-bad-plugins-legacyresample.html#GstLegacyresample"/> - <keyword type="property" name="The "filter-length" property" link="gst-plugins-bad-plugins-legacyresample.html#GstLegacyresample--filter-length"/> - <keyword type="" name="Element Information" link="gst-plugins-bad-plugins-liveadder.html#idp12627824"/> - <keyword type="" name="Element Pads" link="gst-plugins-bad-plugins-liveadder.html#idp6854832"/> + <keyword type="" name="Element Information" link="gst-plugins-bad-plugins-liveadder.html#idp12826656"/> + <keyword type="" name="Element Pads" link="gst-plugins-bad-plugins-liveadder.html#idp9026016"/> <keyword type="struct" name="struct GstLiveAdder" link="gst-plugins-bad-plugins-liveadder.html#GstLiveAdder"/> <keyword type="property" name="The "latency" property" link="gst-plugins-bad-plugins-liveadder.html#GstLiveAdder--latency"/> - <keyword type="" name="Element Information" link="gst-plugins-bad-plugins-marble.html#idp5036304"/> - <keyword type="" name="Element Pads" link="gst-plugins-bad-plugins-marble.html#idp12605872"/> + <keyword type="" name="Element Information" link="gst-plugins-bad-plugins-marble.html#idp7617392"/> + <keyword type="" name="Element Pads" link="gst-plugins-bad-plugins-marble.html#idp12058384"/> <keyword type="struct" name="struct GstMarble" link="gst-plugins-bad-plugins-marble.html#GstMarble-struct"/> <keyword type="property" name="The "amount" property" link="gst-plugins-bad-plugins-marble.html#GstMarble--amount"/> <keyword type="property" name="The "turbulence" property" link="gst-plugins-bad-plugins-marble.html#GstMarble--turbulence"/> <keyword type="property" name="The "x-scale" property" link="gst-plugins-bad-plugins-marble.html#GstMarble--x-scale"/> <keyword type="property" name="The "y-scale" property" link="gst-plugins-bad-plugins-marble.html#GstMarble--y-scale"/> - <keyword type="" name="Element Information" link="gst-plugins-bad-plugins-mimenc.html#idp12715824"/> - <keyword type="" name="Element Pads" link="gst-plugins-bad-plugins-mimenc.html#idp7746768"/> + <keyword type="" name="Element Information" link="gst-plugins-bad-plugins-mimenc.html#idp13195040"/> + <keyword type="" name="Element Pads" link="gst-plugins-bad-plugins-mimenc.html#idp8042176"/> <keyword type="struct" name="struct GstMimEnc" link="gst-plugins-bad-plugins-mimenc.html#GstMimEnc"/> <keyword type="property" name="The "paused-mode" property" link="gst-plugins-bad-plugins-mimenc.html#GstMimEnc--paused-mode"/> - <keyword type="" name="Element Information" link="gst-plugins-bad-plugins-mimdec.html#idp9318496"/> - <keyword type="" name="Element Pads" link="gst-plugins-bad-plugins-mimdec.html#idp5816592"/> + <keyword type="" name="Element Information" link="gst-plugins-bad-plugins-mimdec.html#idp13106560"/> + <keyword type="" name="Element Pads" link="gst-plugins-bad-plugins-mimdec.html#idp9528928"/> <keyword type="struct" name="struct GstMimDec" link="gst-plugins-bad-plugins-mimdec.html#GstMimDec"/> - <keyword type="" name="Element Information" link="gst-plugins-bad-plugins-mirror.html#idp8864144"/> - <keyword type="" name="Element Pads" link="gst-plugins-bad-plugins-mirror.html#idp12759088"/> + <keyword type="" name="Element Information" link="gst-plugins-bad-plugins-mirror.html#idp8393712"/> + <keyword type="" name="Element Pads" link="gst-plugins-bad-plugins-mirror.html#idp13036976"/> <keyword type="struct" name="struct GstMirror" link="gst-plugins-bad-plugins-mirror.html#GstMirror-struct"/> <keyword type="property" name="The "mode" property" link="gst-plugins-bad-plugins-mirror.html#GstMirror--mode"/> - <keyword type="" name="Element Information" link="gst-plugins-bad-plugins-modplug.html#idp12986112"/> - <keyword type="" name="Element Pads" link="gst-plugins-bad-plugins-modplug.html#idp13210656"/> + <keyword type="" name="Element Information" link="gst-plugins-bad-plugins-modplug.html#idp13248064"/> + <keyword type="" name="Element Pads" link="gst-plugins-bad-plugins-modplug.html#idp13636368"/> <keyword type="struct" name="GstModPlug" link="gst-plugins-bad-plugins-modplug.html#GstModPlug-struct"/> <keyword type="property" name="The "megabass" property" link="gst-plugins-bad-plugins-modplug.html#GstModPlug--megabass"/> <keyword type="property" name="The "megabass-amount" property" link="gst-plugins-bad-plugins-modplug.html#GstModPlug--megabass-amount"/> @@ -560,8 +549,8 @@ <keyword type="property" name="The "surround" property" link="gst-plugins-bad-plugins-modplug.html#GstModPlug--surround"/> <keyword type="property" name="The "surround-delay" property" link="gst-plugins-bad-plugins-modplug.html#GstModPlug--surround-delay"/> <keyword type="property" name="The "surround-depth" property" link="gst-plugins-bad-plugins-modplug.html#GstModPlug--surround-depth"/> - <keyword type="" name="Element Information" link="gst-plugins-bad-plugins-mpeg2enc.html#idp13645312"/> - <keyword type="" name="Element Pads" link="gst-plugins-bad-plugins-mpeg2enc.html#idp13652720"/> + <keyword type="" name="Element Information" link="gst-plugins-bad-plugins-mpeg2enc.html#idp13547984"/> + <keyword type="" name="Element Pads" link="gst-plugins-bad-plugins-mpeg2enc.html#idp13555392"/> <keyword type="struct" name="GstMpeg2enc" link="gst-plugins-bad-plugins-mpeg2enc.html#GstMpeg2enc"/> <keyword type="property" name="The "altscan-mpeg2" property" link="gst-plugins-bad-plugins-mpeg2enc.html#GstMpeg2enc--altscan-mpeg2"/> <keyword type="property" name="The "aspect" property" link="gst-plugins-bad-plugins-mpeg2enc.html#GstMpeg2enc--aspect"/> @@ -597,8 +586,8 @@ <keyword type="property" name="The "sequence-length" property" link="gst-plugins-bad-plugins-mpeg2enc.html#GstMpeg2enc--sequence-length"/> <keyword type="property" name="The "unit-coeff-elim" property" link="gst-plugins-bad-plugins-mpeg2enc.html#GstMpeg2enc--unit-coeff-elim"/> <keyword type="property" name="The "vcd-still-size" property" link="gst-plugins-bad-plugins-mpeg2enc.html#GstMpeg2enc--vcd-still-size"/> - <keyword type="" name="Element Information" link="gst-plugins-bad-plugins-mplex.html#idp6272304"/> - <keyword type="" name="Element Pads" link="gst-plugins-bad-plugins-mplex.html#idp6521024"/> + <keyword type="" name="Element Information" link="gst-plugins-bad-plugins-mplex.html#idp12900480"/> + <keyword type="" name="Element Pads" link="gst-plugins-bad-plugins-mplex.html#idp6275440"/> <keyword type="struct" name="GstMplex" link="gst-plugins-bad-plugins-mplex.html#GstMplex"/> <keyword type="property" name="The "bufsize" property" link="gst-plugins-bad-plugins-mplex.html#GstMplex--bufsize"/> <keyword type="property" name="The "format" property" link="gst-plugins-bad-plugins-mplex.html#GstMplex--format"/> @@ -607,8 +596,8 @@ <keyword type="property" name="The "sector-size" property" link="gst-plugins-bad-plugins-mplex.html#GstMplex--sector-size"/> <keyword type="property" name="The "system-headers" property" link="gst-plugins-bad-plugins-mplex.html#GstMplex--system-headers"/> <keyword type="property" name="The "vbr" property" link="gst-plugins-bad-plugins-mplex.html#GstMplex--vbr"/> - <keyword type="" name="Element Information" link="gst-plugins-bad-plugins-mythtvsrc.html#idp10969232"/> - <keyword type="" name="Element Pads" link="gst-plugins-bad-plugins-mythtvsrc.html#idp12105168"/> + <keyword type="" name="Element Information" link="gst-plugins-bad-plugins-mythtvsrc.html#idp13365808"/> + <keyword type="" name="Element Pads" link="gst-plugins-bad-plugins-mythtvsrc.html#idp13373216"/> <keyword type="struct" name="struct GstMythtvSrc" link="gst-plugins-bad-plugins-mythtvsrc.html#GstMythtvSrc"/> <keyword type="property" name="The "location" property" link="gst-plugins-bad-plugins-mythtvsrc.html#GstMythtvSrc--location"/> <keyword type="property" name="The "mythtv-channel" property" link="gst-plugins-bad-plugins-mythtvsrc.html#GstMythtvSrc--mythtv-channel"/> @@ -617,24 +606,24 @@ <keyword type="property" name="The "mythtv-live-chainid" property" link="gst-plugins-bad-plugins-mythtvsrc.html#GstMythtvSrc--mythtv-live-chainid"/> <keyword type="property" name="The "mythtv-live-id" property" link="gst-plugins-bad-plugins-mythtvsrc.html#GstMythtvSrc--mythtv-live-id"/> <keyword type="property" name="The "mythtv-version" property" link="gst-plugins-bad-plugins-mythtvsrc.html#GstMythtvSrc--mythtv-version"/> - <keyword type="" name="Example launch line" link="gst-plugins-bad-plugins-mxfdemux.html#idp9371440"/> - <keyword type="" name="Element Information" link="gst-plugins-bad-plugins-mxfdemux.html#idp9985632"/> - <keyword type="" name="Element Pads" link="gst-plugins-bad-plugins-mxfdemux.html#idp12923664"/> + <keyword type="" name="Example launch line" link="gst-plugins-bad-plugins-mxfdemux.html#idp8561696"/> + <keyword type="" name="Element Information" link="gst-plugins-bad-plugins-mxfdemux.html#idp9156400"/> + <keyword type="" name="Element Pads" link="gst-plugins-bad-plugins-mxfdemux.html#idp13501376"/> <keyword type="struct" name="struct GstMXFDemux" link="gst-plugins-bad-plugins-mxfdemux.html#GstMXFDemux"/> <keyword type="property" name="The "package" property" link="gst-plugins-bad-plugins-mxfdemux.html#GstMXFDemux--package"/> <keyword type="property" name="The "max-drift" property" link="gst-plugins-bad-plugins-mxfdemux.html#GstMXFDemux--max-drift"/> <keyword type="property" name="The "structure" property" link="gst-plugins-bad-plugins-mxfdemux.html#GstMXFDemux--structure"/> - <keyword type="" name="Example launch line" link="gst-plugins-bad-plugins-mxfmux.html#idp13534656"/> - <keyword type="" name="Element Information" link="gst-plugins-bad-plugins-mxfmux.html#idp13532160"/> - <keyword type="" name="Element Pads" link="gst-plugins-bad-plugins-mxfmux.html#idp13526080"/> + <keyword type="" name="Example launch line" link="gst-plugins-bad-plugins-mxfmux.html#idp14255584"/> + <keyword type="" name="Element Information" link="gst-plugins-bad-plugins-mxfmux.html#idp14253088"/> + <keyword type="" name="Element Pads" link="gst-plugins-bad-plugins-mxfmux.html#idp14247008"/> <keyword type="struct" name="GstMXFMux" link="gst-plugins-bad-plugins-mxfmux.html#GstMXFMux"/> - <keyword type="" name="Example launch line" link="gst-plugins-bad-plugins-nuvdemux.html#idp13909984"/> - <keyword type="" name="Element Information" link="gst-plugins-bad-plugins-nuvdemux.html#idp13902080"/> - <keyword type="" name="Element Pads" link="gst-plugins-bad-plugins-nuvdemux.html#idp13895648"/> + <keyword type="" name="Example launch line" link="gst-plugins-bad-plugins-nuvdemux.html#idp13944096"/> + <keyword type="" name="Element Information" link="gst-plugins-bad-plugins-nuvdemux.html#idp13431056"/> + <keyword type="" name="Element Pads" link="gst-plugins-bad-plugins-nuvdemux.html#idp13925568"/> <keyword type="struct" name="GstNuvDemux" link="gst-plugins-bad-plugins-nuvdemux.html#GstNuvDemux"/> - <keyword type="" name="Example pipelines" link="gst-plugins-bad-plugins-pcapparse.html#idp13576432"/> - <keyword type="" name="Element Information" link="gst-plugins-bad-plugins-pcapparse.html#idp13579264"/> - <keyword type="" name="Element Pads" link="gst-plugins-bad-plugins-pcapparse.html#idp13888032"/> + <keyword type="" name="Example pipelines" link="gst-plugins-bad-plugins-pcapparse.html#idp13930912"/> + <keyword type="" name="Element Information" link="gst-plugins-bad-plugins-pcapparse.html#idp13933744"/> + <keyword type="" name="Element Pads" link="gst-plugins-bad-plugins-pcapparse.html#idp13941152"/> <keyword type="struct" name="struct GstPcapParse" link="gst-plugins-bad-plugins-pcapparse.html#GstPcapParse-struct"/> <keyword type="property" name="The "dst-ip" property" link="gst-plugins-bad-plugins-pcapparse.html#GstPcapParse--dst-ip"/> <keyword type="property" name="The "dst-port" property" link="gst-plugins-bad-plugins-pcapparse.html#GstPcapParse--dst-port"/> @@ -642,18 +631,18 @@ <keyword type="property" name="The "src-port" property" link="gst-plugins-bad-plugins-pcapparse.html#GstPcapParse--src-port"/> <keyword type="property" name="The "caps" property" link="gst-plugins-bad-plugins-pcapparse.html#GstPcapParse--caps"/> <keyword type="property" name="The "ts-offset" property" link="gst-plugins-bad-plugins-pcapparse.html#GstPcapParse--ts-offset"/> - <keyword type="" name="Element Information" link="gst-plugins-bad-plugins-pinch.html#idp6601296"/> - <keyword type="" name="Element Pads" link="gst-plugins-bad-plugins-pinch.html#idp13569552"/> + <keyword type="" name="Element Information" link="gst-plugins-bad-plugins-pinch.html#idp6354624"/> + <keyword type="" name="Element Pads" link="gst-plugins-bad-plugins-pinch.html#idp13398464"/> <keyword type="struct" name="struct GstPinch" link="gst-plugins-bad-plugins-pinch.html#GstPinch-struct"/> <keyword type="property" name="The "intensity" property" link="gst-plugins-bad-plugins-pinch.html#GstPinch--intensity"/> - <keyword type="" name="Element Information" link="gst-plugins-bad-plugins-pyramidsegment.html#idp13411664"/> - <keyword type="" name="Element Pads" link="gst-plugins-bad-plugins-pyramidsegment.html#idp6155504"/> + <keyword type="" name="Element Information" link="gst-plugins-bad-plugins-pyramidsegment.html#idp14000208"/> + <keyword type="" name="Element Pads" link="gst-plugins-bad-plugins-pyramidsegment.html#idp3027664"/> <keyword type="struct" name="struct GstPinch" link="gst-plugins-bad-plugins-pyramidsegment.html#GstPinch-struct"/> - <keyword type="" name="Element Information" link="gst-plugins-bad-plugins-rsvgdec.html#idp13864848"/> - <keyword type="" name="Element Pads" link="gst-plugins-bad-plugins-rsvgdec.html#idp7405664"/> + <keyword type="" name="Element Information" link="gst-plugins-bad-plugins-rsvgdec.html#idp14111776"/> + <keyword type="" name="Element Pads" link="gst-plugins-bad-plugins-rsvgdec.html#idp6327280"/> <keyword type="struct" name="struct GstRsvgDec" link="gst-plugins-bad-plugins-rsvgdec.html#GstRsvgDec"/> - <keyword type="" name="Element Information" link="gst-plugins-bad-plugins-rsvgoverlay.html#idp9154176"/> - <keyword type="" name="Element Pads" link="gst-plugins-bad-plugins-rsvgoverlay.html#idp6228608"/> + <keyword type="" name="Element Information" link="gst-plugins-bad-plugins-rsvgoverlay.html#idp8873504"/> + <keyword type="" name="Element Pads" link="gst-plugins-bad-plugins-rsvgoverlay.html#idp6531632"/> <keyword type="struct" name="struct GstRsvgOverlay" link="gst-plugins-bad-plugins-rsvgoverlay.html#GstRsvgOverlay"/> <keyword type="property" name="The "data" property" link="gst-plugins-bad-plugins-rsvgoverlay.html#GstRsvgOverlay--data"/> <keyword type="property" name="The "fit-to-frame" property" link="gst-plugins-bad-plugins-rsvgoverlay.html#GstRsvgOverlay--fit-to-frame"/> @@ -666,24 +655,24 @@ <keyword type="property" name="The "width-relative" property" link="gst-plugins-bad-plugins-rsvgoverlay.html#GstRsvgOverlay--width-relative"/> <keyword type="property" name="The "x-relative" property" link="gst-plugins-bad-plugins-rsvgoverlay.html#GstRsvgOverlay--x-relative"/> <keyword type="property" name="The "y-relative" property" link="gst-plugins-bad-plugins-rsvgoverlay.html#GstRsvgOverlay--y-relative"/> - <keyword type="" name="Element Information" link="gst-plugins-bad-plugins-rtmpsink.html#idp14148800"/> - <keyword type="" name="Element Pads" link="gst-plugins-bad-plugins-rtmpsink.html#idp13984832"/> + <keyword type="" name="Element Information" link="gst-plugins-bad-plugins-rtmpsink.html#idp14357424"/> + <keyword type="" name="Element Pads" link="gst-plugins-bad-plugins-rtmpsink.html#idp14850736"/> <keyword type="struct" name="struct GstRTMPSink" link="gst-plugins-bad-plugins-rtmpsink.html#GstRTMPSink-struct"/> <keyword type="property" name="The "location" property" link="gst-plugins-bad-plugins-rtmpsink.html#GstRTMPSink--location"/> - <keyword type="" name="Element Information" link="gst-plugins-bad-plugins-rtmpsrc.html#idp13150112"/> - <keyword type="" name="Element Pads" link="gst-plugins-bad-plugins-rtmpsrc.html#idp13157408"/> + <keyword type="" name="Element Information" link="gst-plugins-bad-plugins-rtmpsrc.html#idp14543488"/> + <keyword type="" name="Element Pads" link="gst-plugins-bad-plugins-rtmpsrc.html#idp14550896"/> <keyword type="struct" name="struct GstRTMPSrc" link="gst-plugins-bad-plugins-rtmpsrc.html#GstRTMPSrc-struct"/> <keyword type="property" name="The "location" property" link="gst-plugins-bad-plugins-rtmpsrc.html#GstRTMPSrc--location"/> - <keyword type="" name="Example pipelines" link="gst-plugins-bad-plugins-rtpmux.html#idp7983328"/> - <keyword type="" name="Element Information" link="gst-plugins-bad-plugins-rtpmux.html#idp14250176"/> - <keyword type="" name="Element Pads" link="gst-plugins-bad-plugins-rtpmux.html#idp14028672"/> + <keyword type="" name="Example pipelines" link="gst-plugins-bad-plugins-rtpmux.html#idp8663952"/> + <keyword type="" name="Element Information" link="gst-plugins-bad-plugins-rtpmux.html#idp14575824"/> + <keyword type="" name="Element Pads" link="gst-plugins-bad-plugins-rtpmux.html#idp14583280"/> <keyword type="struct" name="struct GstRTPMux" link="gst-plugins-bad-plugins-rtpmux.html#GstRTPMux-struct"/> <keyword type="property" name="The "seqnum" property" link="gst-plugins-bad-plugins-rtpmux.html#GstRTPMux--seqnum"/> <keyword type="property" name="The "seqnum-offset" property" link="gst-plugins-bad-plugins-rtpmux.html#GstRTPMux--seqnum-offset"/> <keyword type="property" name="The "ssrc" property" link="gst-plugins-bad-plugins-rtpmux.html#GstRTPMux--ssrc"/> <keyword type="property" name="The "timestamp-offset" property" link="gst-plugins-bad-plugins-rtpmux.html#GstRTPMux--timestamp-offset"/> - <keyword type="" name="Element Information" link="gst-plugins-bad-plugins-rtpdtmfsrc.html#idp17419264"/> - <keyword type="" name="Element Pads" link="gst-plugins-bad-plugins-rtpdtmfsrc.html#idp17426720"/> + <keyword type="" name="Element Information" link="gst-plugins-bad-plugins-rtpdtmfsrc.html#idp17022976"/> + <keyword type="" name="Element Pads" link="gst-plugins-bad-plugins-rtpdtmfsrc.html#idp17030432"/> <keyword type="struct" name="struct GstRTPDTMFSrc" link="gst-plugins-bad-plugins-rtpdtmfsrc.html#GstRTPDTMFSrc-struct"/> <keyword type="property" name="The "clock-rate" property" link="gst-plugins-bad-plugins-rtpdtmfsrc.html#GstRTPDTMFSrc--clock-rate"/> <keyword type="property" name="The "interval" property" link="gst-plugins-bad-plugins-rtpdtmfsrc.html#GstRTPDTMFSrc--interval"/> @@ -694,36 +683,36 @@ <keyword type="property" name="The "ssrc" property" link="gst-plugins-bad-plugins-rtpdtmfsrc.html#GstRTPDTMFSrc--ssrc"/> <keyword type="property" name="The "timestamp" property" link="gst-plugins-bad-plugins-rtpdtmfsrc.html#GstRTPDTMFSrc--timestamp"/> <keyword type="property" name="The "timestamp-offset" property" link="gst-plugins-bad-plugins-rtpdtmfsrc.html#GstRTPDTMFSrc--timestamp-offset"/> - <keyword type="" name="Element Information" link="gst-plugins-bad-plugins-rtpdtmfmux.html#idp18465680"/> - <keyword type="" name="Element Pads" link="gst-plugins-bad-plugins-rtpdtmfmux.html#idp15984208"/> + <keyword type="" name="Element Information" link="gst-plugins-bad-plugins-rtpdtmfmux.html#idp16782432"/> + <keyword type="" name="Element Pads" link="gst-plugins-bad-plugins-rtpdtmfmux.html#idp17006352"/> <keyword type="struct" name="struct GstRTPDTMFMux" link="gst-plugins-bad-plugins-rtpdtmfmux.html#GstRTPDTMFMux-struct"/> <keyword type="signal" name="The "locking" signal" link="gst-plugins-bad-plugins-rtpdtmfmux.html#GstRTPDTMFMux-locking"/> <keyword type="signal" name="The "unlocked" signal" link="gst-plugins-bad-plugins-rtpdtmfmux.html#GstRTPDTMFMux-unlocked"/> - <keyword type="" name="Example pipelines" link="gst-plugins-bad-plugins-rtpmux.html#idp19691376"/> - <keyword type="" name="Element Information" link="gst-plugins-bad-plugins-rtpmux.html#idp17335184"/> - <keyword type="" name="Element Pads" link="gst-plugins-bad-plugins-rtpmux.html#idp17342288"/> + <keyword type="" name="Example pipelines" link="gst-plugins-bad-plugins-rtpmux.html#idp17746640"/> + <keyword type="" name="Element Information" link="gst-plugins-bad-plugins-rtpmux.html#idp17643120"/> + <keyword type="" name="Element Pads" link="gst-plugins-bad-plugins-rtpmux.html#idp19813008"/> <keyword type="struct" name="struct GstRTPMux" link="gst-plugins-bad-plugins-rtpmux.html#GstRTPMux-struct"/> <keyword type="property" name="The "seqnum" property" link="gst-plugins-bad-plugins-rtpmux.html#GstRTPMux--seqnum"/> <keyword type="property" name="The "seqnum-offset" property" link="gst-plugins-bad-plugins-rtpmux.html#GstRTPMux--seqnum-offset"/> <keyword type="property" name="The "ssrc" property" link="gst-plugins-bad-plugins-rtpmux.html#GstRTPMux--ssrc"/> <keyword type="property" name="The "timestamp-offset" property" link="gst-plugins-bad-plugins-rtpmux.html#GstRTPMux--timestamp-offset"/> - <keyword type="" name="Example pipelines" link="gst-plugins-bad-plugins-scaletempo.html#idp18986848"/> - <keyword type="" name="Element Information" link="gst-plugins-bad-plugins-scaletempo.html#idp20008320"/> - <keyword type="" name="Element Pads" link="gst-plugins-bad-plugins-scaletempo.html#idp17651280"/> + <keyword type="" name="Example pipelines" link="gst-plugins-bad-plugins-scaletempo.html#idp16573952"/> + <keyword type="" name="Element Information" link="gst-plugins-bad-plugins-scaletempo.html#idp15832672"/> + <keyword type="" name="Element Pads" link="gst-plugins-bad-plugins-scaletempo.html#idp15840080"/> <keyword type="struct" name="struct GstScaletempo" link="gst-plugins-bad-plugins-scaletempo.html#GstScaletempo-struct"/> <keyword type="property" name="The "overlap" property" link="gst-plugins-bad-plugins-scaletempo.html#GstScaletempo--overlap"/> <keyword type="property" name="The "rate" property" link="gst-plugins-bad-plugins-scaletempo.html#GstScaletempo--rate"/> <keyword type="property" name="The "search" property" link="gst-plugins-bad-plugins-scaletempo.html#GstScaletempo--search"/> <keyword type="property" name="The "stride" property" link="gst-plugins-bad-plugins-scaletempo.html#GstScaletempo--stride"/> - <keyword type="" name="Element Information" link="gst-plugins-bad-plugins-sdlaudiosink.html#idp19447600"/> - <keyword type="" name="Element Pads" link="gst-plugins-bad-plugins-sdlaudiosink.html#idp18341408"/> + <keyword type="" name="Element Information" link="gst-plugins-bad-plugins-sdlaudiosink.html#idp18902496"/> + <keyword type="" name="Element Pads" link="gst-plugins-bad-plugins-sdlaudiosink.html#idp15272912"/> <keyword type="struct" name="struct GstSDLAudioSink" link="gst-plugins-bad-plugins-sdlaudiosink.html#GstSDLAudioSink"/> - <keyword type="" name="Element Information" link="gst-plugins-bad-plugins-sdlvideosink.html#idp18712544"/> - <keyword type="" name="Element Pads" link="gst-plugins-bad-plugins-sdlvideosink.html#idp18975280"/> + <keyword type="" name="Element Information" link="gst-plugins-bad-plugins-sdlvideosink.html#idp17401024"/> + <keyword type="" name="Element Pads" link="gst-plugins-bad-plugins-sdlvideosink.html#idp16920944"/> <keyword type="struct" name="struct GstSDLVideoSink" link="gst-plugins-bad-plugins-sdlvideosink.html#GstSDLVideoSink"/> <keyword type="property" name="The "fullscreen" property" link="gst-plugins-bad-plugins-sdlvideosink.html#GstSDLVideoSink--fullscreen"/> - <keyword type="" name="Element Information" link="gst-plugins-bad-plugins-shmsink.html#idp16062416"/> - <keyword type="" name="Element Pads" link="gst-plugins-bad-plugins-shmsink.html#idp16069824"/> + <keyword type="" name="Element Information" link="gst-plugins-bad-plugins-shmsink.html#idp16542432"/> + <keyword type="" name="Element Pads" link="gst-plugins-bad-plugins-shmsink.html#idp20338208"/> <keyword type="struct" name="struct GstShmSink" link="gst-plugins-bad-plugins-shmsink.html#GstShmSink-struct"/> <keyword type="property" name="The "perms" property" link="gst-plugins-bad-plugins-shmsink.html#GstShmSink--perms"/> <keyword type="property" name="The "shm-size" property" link="gst-plugins-bad-plugins-shmsink.html#GstShmSink--shm-size"/> @@ -732,74 +721,74 @@ <keyword type="property" name="The "buffer-time" property" link="gst-plugins-bad-plugins-shmsink.html#GstShmSink--buffer-time"/> <keyword type="signal" name="The "client-connected" signal" link="gst-plugins-bad-plugins-shmsink.html#GstShmSink-client-connected"/> <keyword type="signal" name="The "client-disconnected" signal" link="gst-plugins-bad-plugins-shmsink.html#GstShmSink-client-disconnected"/> - <keyword type="" name="Element Information" link="gst-plugins-bad-plugins-shmsrc.html#idp15047520"/> - <keyword type="" name="Element Pads" link="gst-plugins-bad-plugins-shmsrc.html#idp17080128"/> + <keyword type="" name="Element Information" link="gst-plugins-bad-plugins-shmsrc.html#idp20282800"/> + <keyword type="" name="Element Pads" link="gst-plugins-bad-plugins-shmsrc.html#idp19500304"/> <keyword type="struct" name="struct GstShmSrc" link="gst-plugins-bad-plugins-shmsrc.html#GstShmSrc-struct"/> <keyword type="property" name="The "is-live" property" link="gst-plugins-bad-plugins-shmsrc.html#GstShmSrc--is-live"/> <keyword type="property" name="The "socket-path" property" link="gst-plugins-bad-plugins-shmsrc.html#GstShmSrc--socket-path"/> - <keyword type="" name="Example launch line" link="gst-plugins-bad-plugins-sdpdemux.html#idp15417664"/> - <keyword type="" name="Element Information" link="gst-plugins-bad-plugins-sdpdemux.html#idp15420864"/> - <keyword type="" name="Element Pads" link="gst-plugins-bad-plugins-sdpdemux.html#idp15428336"/> + <keyword type="" name="Example launch line" link="gst-plugins-bad-plugins-sdpdemux.html#idp17196560"/> + <keyword type="" name="Element Information" link="gst-plugins-bad-plugins-sdpdemux.html#idp17199760"/> + <keyword type="" name="Element Pads" link="gst-plugins-bad-plugins-sdpdemux.html#idp17207232"/> <keyword type="struct" name="struct GstSDPDemux" link="gst-plugins-bad-plugins-sdpdemux.html#GstSDPDemux-struct"/> <keyword type="property" name="The "debug" property" link="gst-plugins-bad-plugins-sdpdemux.html#GstSDPDemux--debug"/> <keyword type="property" name="The "latency" property" link="gst-plugins-bad-plugins-sdpdemux.html#GstSDPDemux--latency"/> <keyword type="property" name="The "timeout" property" link="gst-plugins-bad-plugins-sdpdemux.html#GstSDPDemux--timeout"/> <keyword type="property" name="The "redirect" property" link="gst-plugins-bad-plugins-sdpdemux.html#GstSDPDemux--redirect"/> - <keyword type="" name="Example launch line" link="gst-plugins-bad-plugins-solarize.html#idp18246000"/> - <keyword type="" name="Element Information" link="gst-plugins-bad-plugins-solarize.html#idp15854928"/> - <keyword type="" name="Element Pads" link="gst-plugins-bad-plugins-solarize.html#idp15862336"/> + <keyword type="" name="Example launch line" link="gst-plugins-bad-plugins-solarize.html#idp20323408"/> + <keyword type="" name="Element Information" link="gst-plugins-bad-plugins-solarize.html#idp19459616"/> + <keyword type="" name="Element Pads" link="gst-plugins-bad-plugins-solarize.html#idp19467024"/> <keyword type="struct" name="struct GstSolarize" link="gst-plugins-bad-plugins-solarize.html#GstSolarize-struct"/> <keyword type="property" name="The "silent" property" link="gst-plugins-bad-plugins-solarize.html#GstSolarize--silent"/> <keyword type="property" name="The "end" property" link="gst-plugins-bad-plugins-solarize.html#GstSolarize--end"/> <keyword type="property" name="The "start" property" link="gst-plugins-bad-plugins-solarize.html#GstSolarize--start"/> <keyword type="property" name="The "threshold" property" link="gst-plugins-bad-plugins-solarize.html#GstSolarize--threshold"/> - <keyword type="" name="Example launch line" link="gst-plugins-bad-plugins-spacescope.html#idp19305584"/> - <keyword type="" name="Element Information" link="gst-plugins-bad-plugins-spacescope.html#idp16103360"/> - <keyword type="" name="Element Pads" link="gst-plugins-bad-plugins-spacescope.html#idp16729936"/> + <keyword type="" name="Example launch line" link="gst-plugins-bad-plugins-spacescope.html#idp18613216"/> + <keyword type="" name="Element Information" link="gst-plugins-bad-plugins-spacescope.html#idp19068512"/> + <keyword type="" name="Element Pads" link="gst-plugins-bad-plugins-spacescope.html#idp19699456"/> <keyword type="struct" name="struct GstSpaceScope" link="gst-plugins-bad-plugins-spacescope.html#GstSpaceScope-struct"/> <keyword type="property" name="The "style" property" link="gst-plugins-bad-plugins-spacescope.html#GstSpaceScope--style"/> - <keyword type="" name="Example launch line" link="gst-plugins-bad-plugins-spectrascope.html#idp15397248"/> - <keyword type="" name="Element Information" link="gst-plugins-bad-plugins-spectrascope.html#idp15135696"/> - <keyword type="" name="Element Pads" link="gst-plugins-bad-plugins-spectrascope.html#idp18486544"/> + <keyword type="" name="Example launch line" link="gst-plugins-bad-plugins-spectrascope.html#idp15225088"/> + <keyword type="" name="Element Information" link="gst-plugins-bad-plugins-spectrascope.html#idp18868880"/> + <keyword type="" name="Element Pads" link="gst-plugins-bad-plugins-spectrascope.html#idp17506816"/> <keyword type="struct" name="struct GstSpectraScope" link="gst-plugins-bad-plugins-spectrascope.html#GstSpectraScope-struct"/> - <keyword type="" name="Example launch line" link="gst-plugins-bad-plugins-synaescope.html#idp16771568"/> - <keyword type="" name="Element Information" link="gst-plugins-bad-plugins-synaescope.html#idp16776304"/> - <keyword type="" name="Element Pads" link="gst-plugins-bad-plugins-synaescope.html#idp18078896"/> + <keyword type="" name="Example launch line" link="gst-plugins-bad-plugins-synaescope.html#idp18850720"/> + <keyword type="" name="Element Information" link="gst-plugins-bad-plugins-synaescope.html#idp17287248"/> + <keyword type="" name="Element Pads" link="gst-plugins-bad-plugins-synaescope.html#idp20813440"/> <keyword type="struct" name="struct GstSynaeScope" link="gst-plugins-bad-plugins-synaescope.html#GstSynaeScope-struct"/> - <keyword type="" name="Example launch line" link="gst-plugins-bad-plugins-speed.html#idp18406224"/> - <keyword type="" name="Element Information" link="gst-plugins-bad-plugins-speed.html#idp18403792"/> - <keyword type="" name="Element Pads" link="gst-plugins-bad-plugins-speed.html#idp17765840"/> + <keyword type="" name="Example launch line" link="gst-plugins-bad-plugins-speed.html#idp19002560"/> + <keyword type="" name="Element Information" link="gst-plugins-bad-plugins-speed.html#idp19000640"/> + <keyword type="" name="Element Pads" link="gst-plugins-bad-plugins-speed.html#idp15359088"/> <keyword type="struct" name="struct GstSpeed" link="gst-plugins-bad-plugins-speed.html#GstSpeed"/> <keyword type="property" name="The "speed" property" link="gst-plugins-bad-plugins-speed.html#GstSpeed--speed"/> - <keyword type="" name="Element Information" link="gst-plugins-bad-plugins-sphere.html#idp17203504"/> - <keyword type="" name="Element Pads" link="gst-plugins-bad-plugins-sphere.html#idp19893120"/> + <keyword type="" name="Element Information" link="gst-plugins-bad-plugins-sphere.html#idp19928336"/> + <keyword type="" name="Element Pads" link="gst-plugins-bad-plugins-sphere.html#idp20761296"/> <keyword type="struct" name="struct GstSphere" link="gst-plugins-bad-plugins-sphere.html#GstSphere-struct"/> <keyword type="property" name="The "refraction" property" link="gst-plugins-bad-plugins-sphere.html#GstSphere--refraction"/> - <keyword type="" name="Element Information" link="gst-plugins-bad-plugins-square.html#idp16273648"/> - <keyword type="" name="Element Pads" link="gst-plugins-bad-plugins-square.html#idp19827952"/> + <keyword type="" name="Element Information" link="gst-plugins-bad-plugins-square.html#idp19553440"/> + <keyword type="" name="Element Pads" link="gst-plugins-bad-plugins-square.html#idp20820448"/> <keyword type="struct" name="struct GstSquare" link="gst-plugins-bad-plugins-square.html#GstSquare-struct"/> <keyword type="property" name="The "height" property" link="gst-plugins-bad-plugins-square.html#GstSquare--height"/> <keyword type="property" name="The "width" property" link="gst-plugins-bad-plugins-square.html#GstSquare--width"/> <keyword type="property" name="The "zoom" property" link="gst-plugins-bad-plugins-square.html#GstSquare--zoom"/> - <keyword type="" name="Example pipelines" link="gst-plugins-bad-plugins-stereo.html#idp16346544"/> - <keyword type="" name="Element Information" link="gst-plugins-bad-plugins-stereo.html#idp19485520"/> - <keyword type="" name="Element Pads" link="gst-plugins-bad-plugins-stereo.html#idp19553520"/> + <keyword type="" name="Example pipelines" link="gst-plugins-bad-plugins-stereo.html#idp19235648"/> + <keyword type="" name="Element Information" link="gst-plugins-bad-plugins-stereo.html#idp19150016"/> + <keyword type="" name="Element Pads" link="gst-plugins-bad-plugins-stereo.html#idp17320912"/> <keyword type="struct" name="struct GstStereo" link="gst-plugins-bad-plugins-stereo.html#GstStereo"/> <keyword type="property" name="The "active" property" link="gst-plugins-bad-plugins-stereo.html#GstStereo--active"/> <keyword type="property" name="The "stereo" property" link="gst-plugins-bad-plugins-stereo.html#GstStereo--stereo"/> - <keyword type="" name="Element Information" link="gst-plugins-bad-plugins-stretch.html#idp16452288"/> - <keyword type="" name="Element Pads" link="gst-plugins-bad-plugins-stretch.html#idp20406496"/> + <keyword type="" name="Element Information" link="gst-plugins-bad-plugins-stretch.html#idp18019696"/> + <keyword type="" name="Element Pads" link="gst-plugins-bad-plugins-stretch.html#idp18043264"/> <keyword type="struct" name="struct GstStretch" link="gst-plugins-bad-plugins-stretch.html#GstStretch-struct"/> <keyword type="property" name="The "intensity" property" link="gst-plugins-bad-plugins-stretch.html#GstStretch--intensity"/> - <keyword type="" name="Element Information" link="gst-plugins-bad-plugins-templatematch.html#idp15792592"/> - <keyword type="" name="Element Pads" link="gst-plugins-bad-plugins-templatematch.html#idp16675984"/> + <keyword type="" name="Element Information" link="gst-plugins-bad-plugins-templatematch.html#idp20961872"/> + <keyword type="" name="Element Pads" link="gst-plugins-bad-plugins-templatematch.html#idp19181872"/> <keyword type="struct" name="struct GstSynaeScope" link="gst-plugins-bad-plugins-templatematch.html#GstSynaeScope-struct"/> <keyword type="struct" name="struct GstTemplateMatch" link="gst-plugins-bad-plugins-templatematch.html#GstTemplateMatch"/> <keyword type="property" name="The "display" property" link="gst-plugins-bad-plugins-templatematch.html#GstTemplateMatch--display"/> <keyword type="property" name="The "method" property" link="gst-plugins-bad-plugins-templatematch.html#GstTemplateMatch--method"/> <keyword type="property" name="The "template" property" link="gst-plugins-bad-plugins-templatematch.html#GstTemplateMatch--template"/> - <keyword type="" name="Element Information" link="gst-plugins-bad-plugins-opencvtextoverlay.html#idp19070848"/> - <keyword type="" name="Element Pads" link="gst-plugins-bad-plugins-opencvtextoverlay.html#idp20939008"/> + <keyword type="" name="Element Information" link="gst-plugins-bad-plugins-opencvtextoverlay.html#idp15722560"/> + <keyword type="" name="Element Pads" link="gst-plugins-bad-plugins-opencvtextoverlay.html#idp21229872"/> <keyword type="struct" name="GstNuvDemux" link="gst-plugins-bad-plugins-opencvtextoverlay.html#GstNuvDemux"/> <keyword type="struct" name="struct GstOpencvTextOverlay" link="gst-plugins-bad-plugins-opencvtextoverlay.html#GstOpencvTextOverlay"/> <keyword type="property" name="The "colorB" property" link="gst-plugins-bad-plugins-opencvtextoverlay.html#GstOpencvTextOverlay--colorB"/> @@ -811,8 +800,8 @@ <keyword type="property" name="The "width" property" link="gst-plugins-bad-plugins-opencvtextoverlay.html#GstOpencvTextOverlay--width"/> <keyword type="property" name="The "xpos" property" link="gst-plugins-bad-plugins-opencvtextoverlay.html#GstOpencvTextOverlay--xpos"/> <keyword type="property" name="The "ypos" property" link="gst-plugins-bad-plugins-opencvtextoverlay.html#GstOpencvTextOverlay--ypos"/> - <keyword type="" name="Element Information" link="gst-plugins-bad-plugins-tiger.html#idp16810544"/> - <keyword type="" name="Element Pads" link="gst-plugins-bad-plugins-tiger.html#idp19862464"/> + <keyword type="" name="Element Information" link="gst-plugins-bad-plugins-tiger.html#idp19151600"/> + <keyword type="" name="Element Pads" link="gst-plugins-bad-plugins-tiger.html#idp15228016"/> <keyword type="struct" name="struct GstKateTiger" link="gst-plugins-bad-plugins-tiger.html#GstKateTiger"/> <keyword type="property" name="The "category" property" link="gst-plugins-bad-plugins-tiger.html#GstKateTiger--category"/> <keyword type="property" name="The "default-background-alpha" property" link="gst-plugins-bad-plugins-tiger.html#GstKateTiger--default-background-alpha"/> @@ -830,29 +819,29 @@ <keyword type="property" name="The "original-canvas-height" property" link="gst-plugins-bad-plugins-tiger.html#GstKateTiger--original-canvas-height"/> <keyword type="property" name="The "original-canvas-width" property" link="gst-plugins-bad-plugins-tiger.html#GstKateTiger--original-canvas-width"/> <keyword type="property" name="The "quality" property" link="gst-plugins-bad-plugins-tiger.html#GstKateTiger--quality"/> - <keyword type="" name="Element Information" link="gst-plugins-bad-plugins-timidity.html#idp20250768"/> - <keyword type="" name="Element Pads" link="gst-plugins-bad-plugins-timidity.html#idp17274368"/> + <keyword type="" name="Element Information" link="gst-plugins-bad-plugins-timidity.html#idp21215776"/> + <keyword type="" name="Element Pads" link="gst-plugins-bad-plugins-timidity.html#idp18857904"/> <keyword type="struct" name="struct GstTimidity" link="gst-plugins-bad-plugins-timidity.html#GstTimidity"/> - <keyword type="" name="Element Information" link="gst-plugins-bad-plugins-trm.html#idp16597920"/> - <keyword type="" name="Element Pads" link="gst-plugins-bad-plugins-trm.html#idp18480416"/> + <keyword type="" name="Element Information" link="gst-plugins-bad-plugins-trm.html#idp18425328"/> + <keyword type="" name="Element Pads" link="gst-plugins-bad-plugins-trm.html#idp16439904"/> <keyword type="struct" name="struct GstTRM" link="gst-plugins-bad-plugins-trm.html#GstTRM"/> <keyword type="property" name="The "proxy-address" property" link="gst-plugins-bad-plugins-trm.html#GstTRM--proxy-address"/> <keyword type="property" name="The "proxy-port" property" link="gst-plugins-bad-plugins-trm.html#GstTRM--proxy-port"/> - <keyword type="" name="Element Information" link="gst-plugins-bad-plugins-tunnel.html#idp18467424"/> - <keyword type="" name="Element Pads" link="gst-plugins-bad-plugins-tunnel.html#idp17961856"/> + <keyword type="" name="Element Information" link="gst-plugins-bad-plugins-tunnel.html#idp21208752"/> + <keyword type="" name="Element Pads" link="gst-plugins-bad-plugins-tunnel.html#idp18154848"/> <keyword type="struct" name="struct GstTunnel" link="gst-plugins-bad-plugins-tunnel.html#GstTunnel-struct"/> - <keyword type="" name="Element Information" link="gst-plugins-bad-plugins-twirl.html#idp15132704"/> - <keyword type="" name="Element Pads" link="gst-plugins-bad-plugins-twirl.html#idp20479600"/> + <keyword type="" name="Element Information" link="gst-plugins-bad-plugins-twirl.html#idp16665216"/> + <keyword type="" name="Element Pads" link="gst-plugins-bad-plugins-twirl.html#idp21429408"/> <keyword type="struct" name="struct GstTwirl" link="gst-plugins-bad-plugins-twirl.html#GstTwirl-struct"/> <keyword type="property" name="The "angle" property" link="gst-plugins-bad-plugins-twirl.html#GstTwirl--angle"/> - <keyword type="" name="Example launch line" link="gst-plugins-bad-plugins-videoanalyse.html#idp20061344"/> - <keyword type="" name="Element Information" link="gst-plugins-bad-plugins-videoanalyse.html#idp20064416"/> - <keyword type="" name="Element Pads" link="gst-plugins-bad-plugins-videoanalyse.html#idp20071872"/> + <keyword type="" name="Example launch line" link="gst-plugins-bad-plugins-videoanalyse.html#idp18809280"/> + <keyword type="" name="Element Information" link="gst-plugins-bad-plugins-videoanalyse.html#idp20570432"/> + <keyword type="" name="Element Pads" link="gst-plugins-bad-plugins-videoanalyse.html#idp16152368"/> <keyword type="struct" name="struct GstVideoAnalyse" link="gst-plugins-bad-plugins-videoanalyse.html#GstVideoAnalyse"/> <keyword type="property" name="The "message" property" link="gst-plugins-bad-plugins-videoanalyse.html#GstVideoAnalyse--message"/> - <keyword type="" name="Example launch line" link="gst-plugins-bad-plugins-videodetect.html#idp21713616"/> - <keyword type="" name="Element Information" link="gst-plugins-bad-plugins-videodetect.html#idp21716720"/> - <keyword type="" name="Element Pads" link="gst-plugins-bad-plugins-videodetect.html#idp21724176"/> + <keyword type="" name="Example launch line" link="gst-plugins-bad-plugins-videodetect.html#idp22180608"/> + <keyword type="" name="Element Information" link="gst-plugins-bad-plugins-videodetect.html#idp22011472"/> + <keyword type="" name="Element Pads" link="gst-plugins-bad-plugins-videodetect.html#idp22018880"/> <keyword type="struct" name="struct GstVideoDetect" link="gst-plugins-bad-plugins-videodetect.html#GstVideoDetect"/> <keyword type="property" name="The "message" property" link="gst-plugins-bad-plugins-videodetect.html#GstVideoDetect--message"/> <keyword type="property" name="The "pattern-count" property" link="gst-plugins-bad-plugins-videodetect.html#GstVideoDetect--pattern-count"/> @@ -863,9 +852,9 @@ <keyword type="property" name="The "bottom-offset" property" link="gst-plugins-bad-plugins-videodetect.html#GstVideoDetect--bottom-offset"/> <keyword type="property" name="The "left-offset" property" link="gst-plugins-bad-plugins-videodetect.html#GstVideoDetect--left-offset"/> <keyword type="property" name="The "pattern-center" property" link="gst-plugins-bad-plugins-videodetect.html#GstVideoDetect--pattern-center"/> - <keyword type="" name="Example launch line" link="gst-plugins-bad-plugins-videomark.html#idp21250800"/> - <keyword type="" name="Element Information" link="gst-plugins-bad-plugins-videomark.html#idp21253872"/> - <keyword type="" name="Element Pads" link="gst-plugins-bad-plugins-videomark.html#idp21915536"/> + <keyword type="" name="Example launch line" link="gst-plugins-bad-plugins-videomark.html#idp21390816"/> + <keyword type="" name="Element Information" link="gst-plugins-bad-plugins-videomark.html#idp21393888"/> + <keyword type="" name="Element Pads" link="gst-plugins-bad-plugins-videomark.html#idp22538704"/> <keyword type="struct" name="struct GstVideoMark" link="gst-plugins-bad-plugins-videomark.html#GstVideoMark"/> <keyword type="property" name="The "enabled" property" link="gst-plugins-bad-plugins-videomark.html#GstVideoMark--enabled"/> <keyword type="property" name="The "pattern-count" property" link="gst-plugins-bad-plugins-videomark.html#GstVideoMark--pattern-count"/> @@ -876,8 +865,8 @@ <keyword type="property" name="The "bottom-offset" property" link="gst-plugins-bad-plugins-videomark.html#GstVideoMark--bottom-offset"/> <keyword type="property" name="The "left-offset" property" link="gst-plugins-bad-plugins-videomark.html#GstVideoMark--left-offset"/> <keyword type="property" name="The "pattern-data-uint64" property" link="gst-plugins-bad-plugins-videomark.html#GstVideoMark--pattern-data-uint64"/> - <keyword type="" name="Element Information" link="gst-plugins-bad-plugins-videoparse.html#idp21483760"/> - <keyword type="" name="Element Pads" link="gst-plugins-bad-plugins-videoparse.html#idp22014400"/> + <keyword type="" name="Element Information" link="gst-plugins-bad-plugins-videoparse.html#idp21751600"/> + <keyword type="" name="Element Pads" link="gst-plugins-bad-plugins-videoparse.html#idp20475712"/> <keyword type="struct" name="struct GstVideoParse" link="gst-plugins-bad-plugins-videoparse.html#GstVideoParse-struct"/> <keyword type="property" name="The "alpha-mask" property" link="gst-plugins-bad-plugins-videoparse.html#GstVideoParse--alpha-mask"/> <keyword type="property" name="The "blue-mask" property" link="gst-plugins-bad-plugins-videoparse.html#GstVideoParse--blue-mask"/> @@ -893,37 +882,35 @@ <keyword type="property" name="The "width" property" link="gst-plugins-bad-plugins-videoparse.html#GstVideoParse--width"/> <keyword type="property" name="The "interlaced" property" link="gst-plugins-bad-plugins-videoparse.html#GstVideoParse--interlaced"/> <keyword type="property" name="The "top-field-first" property" link="gst-plugins-bad-plugins-videoparse.html#GstVideoParse--top-field-first"/> - <keyword type="" name="Element Information" link="gst-plugins-bad-plugins-waterripple.html#idp19285872"/> - <keyword type="" name="Element Pads" link="gst-plugins-bad-plugins-waterripple.html#idp21534352"/> + <keyword type="" name="Element Information" link="gst-plugins-bad-plugins-waterripple.html#idp18632496"/> + <keyword type="" name="Element Pads" link="gst-plugins-bad-plugins-waterripple.html#idp21704208"/> <keyword type="struct" name="struct GstWaterRipple" link="gst-plugins-bad-plugins-waterripple.html#GstWaterRipple-struct"/> <keyword type="property" name="The "amplitude" property" link="gst-plugins-bad-plugins-waterripple.html#GstWaterRipple--amplitude"/> <keyword type="property" name="The "phase" property" link="gst-plugins-bad-plugins-waterripple.html#GstWaterRipple--phase"/> <keyword type="property" name="The "wavelength" property" link="gst-plugins-bad-plugins-waterripple.html#GstWaterRipple--wavelength"/> - <keyword type="" name="Element Information" link="gst-plugins-bad-plugins-wildmidi.html#idp16995312"/> - <keyword type="" name="Element Pads" link="gst-plugins-bad-plugins-wildmidi.html#idp18252192"/> + <keyword type="" name="Element Information" link="gst-plugins-bad-plugins-wildmidi.html#idp18431824"/> + <keyword type="" name="Element Pads" link="gst-plugins-bad-plugins-wildmidi.html#idp16127040"/> <keyword type="struct" name="struct GstWildmidi" link="gst-plugins-bad-plugins-wildmidi.html#GstWildmidi"/> <keyword type="property" name="The "high-quality" property" link="gst-plugins-bad-plugins-wildmidi.html#GstWildmidi--high-quality"/> <keyword type="property" name="The "linear-volume" property" link="gst-plugins-bad-plugins-wildmidi.html#GstWildmidi--linear-volume"/> - <keyword type="" name="Element Information" link="gst-plugins-bad-plugins-zbar.html#idp17157552"/> - <keyword type="" name="Element Pads" link="gst-plugins-bad-plugins-zbar.html#idp20112464"/> + <keyword type="" name="Element Information" link="gst-plugins-bad-plugins-zbar.html#idp19371104"/> + <keyword type="" name="Element Pads" link="gst-plugins-bad-plugins-zbar.html#idp20177872"/> <keyword type="struct" name="struct GstZBar" link="gst-plugins-bad-plugins-zbar.html#GstZBar-struct"/> <keyword type="property" name="The "message" property" link="gst-plugins-bad-plugins-zbar.html#GstZBar--message"/> <keyword type="property" name="The "cache" property" link="gst-plugins-bad-plugins-zbar.html#GstZBar--cache"/> - <keyword type="" name="Element Information" link="gst-plugins-bad-plugins-voaacenc.html#idp18997936"/> - <keyword type="" name="Element Pads" link="gst-plugins-bad-plugins-voaacenc.html#idp21590512"/> + <keyword type="" name="Element Information" link="gst-plugins-bad-plugins-voaacenc.html#idp17914144"/> + <keyword type="" name="Element Pads" link="gst-plugins-bad-plugins-voaacenc.html#idp21720256"/> <keyword type="struct" name="struct GstVoAacEnc" link="gst-plugins-bad-plugins-voaacenc.html#GstVoAacEnc-struct"/> <keyword type="property" name="The "bitrate" property" link="gst-plugins-bad-plugins-voaacenc.html#GstVoAacEnc--bitrate"/> - <keyword type="" name="Element Information" link="gst-plugins-bad-plugins-voamrwbenc.html#idp21492048"/> - <keyword type="" name="Element Pads" link="gst-plugins-bad-plugins-voamrwbenc.html#idp20271232"/> - <keyword type="" name="Element Information" link="gst-plugins-bad-plugins-vp8dec.html#idp16261696"/> - <keyword type="" name="Element Pads" link="gst-plugins-bad-plugins-vp8dec.html#idp21358656"/> + <keyword type="" name="Element Information" link="gst-plugins-bad-plugins-vp8dec.html#idp20899744"/> + <keyword type="" name="Element Pads" link="gst-plugins-bad-plugins-vp8dec.html#idp20410064"/> <keyword type="struct" name="struct GstVP8Dec" link="gst-plugins-bad-plugins-vp8dec.html#GstVP8Dec-struct"/> <keyword type="property" name="The "deblocking-level" property" link="gst-plugins-bad-plugins-vp8dec.html#GstVP8Dec--deblocking-level"/> <keyword type="property" name="The "noise-level" property" link="gst-plugins-bad-plugins-vp8dec.html#GstVP8Dec--noise-level"/> <keyword type="property" name="The "post-processing" property" link="gst-plugins-bad-plugins-vp8dec.html#GstVP8Dec--post-processing"/> <keyword type="property" name="The "post-processing-flags" property" link="gst-plugins-bad-plugins-vp8dec.html#GstVP8Dec--post-processing-flags"/> - <keyword type="" name="Element Information" link="gst-plugins-bad-plugins-vp8enc.html#idp20697936"/> - <keyword type="" name="Element Pads" link="gst-plugins-bad-plugins-vp8enc.html#idp22385856"/> + <keyword type="" name="Element Information" link="gst-plugins-bad-plugins-vp8enc.html#idp22900400"/> + <keyword type="" name="Element Pads" link="gst-plugins-bad-plugins-vp8enc.html#idp22907856"/> <keyword type="struct" name="struct GstVP8Enc" link="gst-plugins-bad-plugins-vp8enc.html#GstVP8Enc-struct"/> <keyword type="property" name="The "bitrate" property" link="gst-plugins-bad-plugins-vp8enc.html#GstVP8Enc--bitrate"/> <keyword type="property" name="The "error-resilient" property" link="gst-plugins-bad-plugins-vp8enc.html#GstVP8Enc--error-resilient"/> @@ -948,29 +935,31 @@ <keyword type="property" name="The "static-threshold" property" link="gst-plugins-bad-plugins-vp8enc.html#GstVP8Enc--static-threshold"/> <keyword type="property" name="The "token-parts" property" link="gst-plugins-bad-plugins-vp8enc.html#GstVP8Enc--token-parts"/> <keyword type="property" name="The "tune" property" link="gst-plugins-bad-plugins-vp8enc.html#GstVP8Enc--tune"/> - <keyword type="" name="Example launch line" link="gst-plugins-bad-plugins-wavescope.html#idp17085152"/> - <keyword type="" name="Element Information" link="gst-plugins-bad-plugins-wavescope.html#idp15641248"/> - <keyword type="" name="Element Pads" link="gst-plugins-bad-plugins-wavescope.html#idp22201408"/> + <keyword type="" name="Example launch line" link="gst-plugins-bad-plugins-wavescope.html#idp19259136"/> + <keyword type="" name="Element Information" link="gst-plugins-bad-plugins-wavescope.html#idp16783184"/> + <keyword type="" name="Element Pads" link="gst-plugins-bad-plugins-wavescope.html#idp22670816"/> <keyword type="struct" name="struct GstWaveScope" link="gst-plugins-bad-plugins-wavescope.html#GstWaveScope-struct"/> <keyword type="property" name="The "style" property" link="gst-plugins-bad-plugins-wavescope.html#GstWaveScope--style"/> <keyword type="struct" name="GstPhotography" link="GstPhotography.html#GstPhotography-struct"/> + <keyword type="macro" name="GST_PHOTOGRAPHY_AUTOFOCUS_DONE" link="GstPhotography.html#GST-PHOTOGRAPHY-AUTOFOCUS-DONE:CAPS"/> + <keyword type="macro" name="GST_PHOTOGRAPHY_SHAKE_RISK" link="GstPhotography.html#GST-PHOTOGRAPHY-SHAKE-RISK:CAPS"/> <keyword type="enum" name="enum GstPhotographyNoiseReduction" link="GstPhotography.html#GstPhotographyNoiseReduction"/> - <keyword type="enum" name="enum GstWhiteBalanceMode" link="GstPhotography.html#GstWhiteBalanceMode"/> - <keyword type="enum" name="enum GstColourToneMode" link="GstPhotography.html#GstColourToneMode"/> - <keyword type="enum" name="enum GstSceneMode" link="GstPhotography.html#GstSceneMode"/> - <keyword type="enum" name="enum GstFlashMode" link="GstPhotography.html#GstFlashMode"/> - <keyword type="enum" name="enum GstFlickerReductionMode" link="GstPhotography.html#GstFlickerReductionMode"/> - <keyword type="enum" name="enum GstFocusMode" link="GstPhotography.html#GstFocusMode"/> - <keyword type="enum" name="enum GstFocusStatus" link="GstPhotography.html#GstFocusStatus"/> - <keyword type="enum" name="enum GstPhotoCaps" link="GstPhotography.html#GstPhotoCaps"/> - <keyword type="enum" name="enum GstPhotoShakeRisk" link="GstPhotography.html#GstPhotoShakeRisk"/> - <keyword type="function" name="GstPhotoCapturePrepared ()" link="GstPhotography.html#GstPhotoCapturePrepared"/> + <keyword type="enum" name="enum GstPhotographyWhiteBalanceMode" link="GstPhotography.html#GstPhotographyWhiteBalanceMode"/> + <keyword type="enum" name="enum GstPhotographyColorToneMode" link="GstPhotography.html#GstPhotographyColorToneMode"/> + <keyword type="enum" name="enum GstPhotographySceneMode" link="GstPhotography.html#GstPhotographySceneMode"/> + <keyword type="enum" name="enum GstPhotographyFlashMode" link="GstPhotography.html#GstPhotographyFlashMode"/> + <keyword type="enum" name="enum GstPhotographyFlickerReductionMode" link="GstPhotography.html#GstPhotographyFlickerReductionMode"/> + <keyword type="enum" name="enum GstPhotographyFocusMode" link="GstPhotography.html#GstPhotographyFocusMode"/> + <keyword type="enum" name="enum GstPhotographyFocusStatus" link="GstPhotography.html#GstPhotographyFocusStatus"/> + <keyword type="enum" name="enum GstPhotographyCaps" link="GstPhotography.html#GstPhotographyCaps"/> + <keyword type="enum" name="enum GstPhotographyShakeRisk" link="GstPhotography.html#GstPhotographyShakeRisk"/> + <keyword type="function" name="GstPhotographyCapturePrepared ()" link="GstPhotography.html#GstPhotographyCapturePrepared"/> <keyword type="function" name="gst_photography_get_ev_compensation ()" link="GstPhotography.html#gst-photography-get-ev-compensation"/> <keyword type="function" name="gst_photography_get_iso_speed ()" link="GstPhotography.html#gst-photography-get-iso-speed"/> <keyword type="function" name="gst_photography_get_aperture ()" link="GstPhotography.html#gst-photography-get-aperture"/> <keyword type="function" name="gst_photography_get_exposure ()" link="GstPhotography.html#gst-photography-get-exposure"/> <keyword type="function" name="gst_photography_get_white_balance_mode ()" link="GstPhotography.html#gst-photography-get-white-balance-mode"/> - <keyword type="function" name="gst_photography_get_colour_tone_mode ()" link="GstPhotography.html#gst-photography-get-colour-tone-mode"/> + <keyword type="function" name="gst_photography_get_color_tone_mode ()" link="GstPhotography.html#gst-photography-get-color-tone-mode"/> <keyword type="function" name="gst_photography_get_scene_mode ()" link="GstPhotography.html#gst-photography-get-scene-mode"/> <keyword type="function" name="gst_photography_get_flash_mode ()" link="GstPhotography.html#gst-photography-get-flash-mode"/> <keyword type="function" name="gst_photography_get_noise_reduction ()" link="GstPhotography.html#gst-photography-get-noise-reduction"/> @@ -980,7 +969,7 @@ <keyword type="function" name="gst_photography_set_aperture ()" link="GstPhotography.html#gst-photography-set-aperture"/> <keyword type="function" name="gst_photography_set_exposure ()" link="GstPhotography.html#gst-photography-set-exposure"/> <keyword type="function" name="gst_photography_set_white_balance_mode ()" link="GstPhotography.html#gst-photography-set-white-balance-mode"/> - <keyword type="function" name="gst_photography_set_colour_tone_mode ()" link="GstPhotography.html#gst-photography-set-colour-tone-mode"/> + <keyword type="function" name="gst_photography_set_color_tone_mode ()" link="GstPhotography.html#gst-photography-set-color-tone-mode"/> <keyword type="function" name="gst_photography_set_scene_mode ()" link="GstPhotography.html#gst-photography-set-scene-mode"/> <keyword type="function" name="gst_photography_set_flash_mode ()" link="GstPhotography.html#gst-photography-set-flash-mode"/> <keyword type="function" name="gst_photography_set_noise_reduction ()" link="GstPhotography.html#gst-photography-set-noise-reduction"/> diff --git a/docs/plugins/html/index.html b/docs/plugins/html/index.html index f866cdfb..58b8ce30 100644 --- a/docs/plugins/html/index.html +++ b/docs/plugins/html/index.html @@ -15,7 +15,7 @@ <div> <div><table class="navigation" id="top" width="100%" cellpadding="2" cellspacing="0"><tr><th valign="middle"><p class="title">GStreamer Bad Plugins 1.0 Plugins Reference Manual</p></th></tr></table></div> <div><p class="releaseinfo"> - for GStreamer Bad Plugins 1.0 (0.11.92) + for GStreamer Bad Plugins 1.0 (0.11.93) The latest version of this documentation can be found on-line at <a class="ulink" href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gst-plugins-bad/html/" target="_top">http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gst-plugins-bad/html/</a>. </p></div> @@ -44,7 +44,7 @@ <span class="refentrytitle"><a href="gst-plugins-bad-plugins-burn.html">burn</a></span><span class="refpurpose"> — Burn adjusts the colors in the video signal.</span> </dt> <dt> -<span class="refentrytitle"><a href="gst-plugins-bad-plugins-camerabin.html">camerabin</a></span><span class="refpurpose"> — Take image snapshots and record movies from camera</span> +<span class="refentrytitle"><a href="gst-plugins-bad-plugins-camerabin.html">camerabin</a></span><span class="refpurpose"></span> </dt> <dt> <span class="refentrytitle"><a href="gst-plugins-bad-plugins-celtdec.html">celtdec</a></span><span class="refpurpose"> — decode celt streams to audio</span> @@ -185,9 +185,6 @@ <span class="refentrytitle"><a href="gst-plugins-bad-plugins-ladspa.html">ladspa</a></span><span class="refpurpose"></span> </dt> <dt> -<span class="refentrytitle"><a href="gst-plugins-bad-plugins-legacyresample.html">legacyresample</a></span><span class="refpurpose"> — Resample audio</span> -</dt> -<dt> <span class="refentrytitle"><a href="gst-plugins-bad-plugins-liveadder.html">liveadder</a></span><span class="refpurpose"> — Mixes live/discontinuous audio streams</span> </dt> <dt> @@ -347,7 +344,7 @@ <span class="refentrytitle"><a href="gst-plugins-bad-plugins-voaacenc.html">voaacenc</a></span><span class="refpurpose"> — AAC audio encoder</span> </dt> <dt> -<span class="refentrytitle"><a href="gst-plugins-bad-plugins-voamrwbenc.html">voamrwbenc</a></span><span class="refpurpose"> — Adaptive Multi-Rate Wideband audio encoder</span> +<span class="refentrytitle"><a href="gst-plugins-bad-plugins-voamrwbenc.html">voamrwbenc</a></span><span class="refpurpose"></span> </dt> <dt> <span class="refentrytitle"><a href="gst-plugins-bad-plugins-vp8dec.html">vp8dec</a></span><span class="refpurpose"> — Decode VP8 video streams</span> @@ -371,9 +368,6 @@ <span class="refentrytitle"><a href="gst-plugins-bad-plugins-plugin-autoconvert.html">autoconvert</a></span><span class="refpurpose"> — <a name="plugin-autoconvert"></a>Selects convertor element based on caps</span> </dt> <dt> -<span class="refentrytitle"><a href="gst-plugins-bad-plugins-plugin-legacyresample.html">legacyresample</a></span><span class="refpurpose"> — <a name="plugin-legacyresample"></a>Resamples audio</span> -</dt> -<dt> <span class="refentrytitle"><a href="gst-plugins-bad-plugins-plugin-assrender.html">assrender</a></span><span class="refpurpose"> — <a name="plugin-assrender"></a>ASS/SSA subtitle renderer</span> </dt> <dt> @@ -383,9 +377,6 @@ <span class="refentrytitle"><a href="gst-plugins-bad-plugins-plugin-bz2.html">bz2</a></span><span class="refpurpose"> — <a name="plugin-bz2"></a>Compress or decompress streams</span> </dt> <dt> -<span class="refentrytitle"><a href="gst-plugins-bad-plugins-plugin-camerabin.html">camerabin</a></span><span class="refpurpose"> — <a name="plugin-camerabin"></a>Take image snapshots and record movies from camera</span> -</dt> -<dt> <span class="refentrytitle"><a href="gst-plugins-bad-plugins-plugin-cdaudio.html">cdaudio</a></span><span class="refpurpose"> — <a name="plugin-cdaudio"></a>Play CD audio through the CD Drive</span> </dt> <dt> @@ -608,9 +599,6 @@ <span class="refentrytitle"><a href="gst-plugins-bad-plugins-plugin-voaacenc.html">voaacenc</a></span><span class="refpurpose"> — <a name="plugin-voaacenc"></a>AAC audio encoder</span> </dt> <dt> -<span class="refentrytitle"><a href="gst-plugins-bad-plugins-plugin-voamrwbenc.html">voamrwbenc</a></span><span class="refpurpose"> — <a name="plugin-voamrwbenc"></a>Adaptive Multi-Rate Wide-Band Encoder</span> -</dt> -<dt> <span class="refentrytitle"><a href="gst-plugins-bad-plugins-plugin-vp8.html">vp8</a></span><span class="refpurpose"> — <a name="plugin-vp8"></a>VP8 plugin</span> </dt> <dt> diff --git a/docs/plugins/html/index.sgml b/docs/plugins/html/index.sgml index 4774b482..3ffb0cbf 100644 --- a/docs/plugins/html/index.sgml +++ b/docs/plugins/html/index.sgml @@ -533,14 +533,6 @@ <ANCHOR id="gst-plugins-bad-plugins-ladspa.description" href="gst-plugins-bad-plugins-1.0/gst-plugins-bad-plugins-ladspa.html#gst-plugins-bad-plugins-ladspa.description"> <ANCHOR id="gst-plugins-bad-plugins-ladspa.details" href="gst-plugins-bad-plugins-1.0/gst-plugins-bad-plugins-ladspa.html#gst-plugins-bad-plugins-ladspa.details"> <ANCHOR id="GstLADSPA" href="gst-plugins-bad-plugins-1.0/gst-plugins-bad-plugins-ladspa.html#GstLADSPA"> -<ANCHOR id="gst-plugins-bad-plugins-legacyresample" href="gst-plugins-bad-plugins-1.0/gst-plugins-bad-plugins-legacyresample.html"> -<ANCHOR id="gst-plugins-bad-plugins-legacyresample.synopsis" href="gst-plugins-bad-plugins-1.0/gst-plugins-bad-plugins-legacyresample.html#gst-plugins-bad-plugins-legacyresample.synopsis"> -<ANCHOR id="gst-plugins-bad-plugins-legacyresample.properties" href="gst-plugins-bad-plugins-1.0/gst-plugins-bad-plugins-legacyresample.html#gst-plugins-bad-plugins-legacyresample.properties"> -<ANCHOR id="gst-plugins-bad-plugins-legacyresample.description" href="gst-plugins-bad-plugins-1.0/gst-plugins-bad-plugins-legacyresample.html#gst-plugins-bad-plugins-legacyresample.description"> -<ANCHOR id="gst-plugins-bad-plugins-legacyresample.details" href="gst-plugins-bad-plugins-1.0/gst-plugins-bad-plugins-legacyresample.html#gst-plugins-bad-plugins-legacyresample.details"> -<ANCHOR id="GstLegacyresample" href="gst-plugins-bad-plugins-1.0/gst-plugins-bad-plugins-legacyresample.html#GstLegacyresample"> -<ANCHOR id="gst-plugins-bad-plugins-legacyresample.property-details" href="gst-plugins-bad-plugins-1.0/gst-plugins-bad-plugins-legacyresample.html#gst-plugins-bad-plugins-legacyresample.property-details"> -<ANCHOR id="GstLegacyresample--filter-length" href="gst-plugins-bad-plugins-1.0/gst-plugins-bad-plugins-legacyresample.html#GstLegacyresample--filter-length"> <ANCHOR id="gst-plugins-bad-plugins-liveadder" href="gst-plugins-bad-plugins-1.0/gst-plugins-bad-plugins-liveadder.html"> <ANCHOR id="gst-plugins-bad-plugins-liveadder.synopsis" href="gst-plugins-bad-plugins-1.0/gst-plugins-bad-plugins-liveadder.html#gst-plugins-bad-plugins-liveadder.synopsis"> <ANCHOR id="gst-plugins-bad-plugins-liveadder.properties" href="gst-plugins-bad-plugins-1.0/gst-plugins-bad-plugins-liveadder.html#gst-plugins-bad-plugins-liveadder.properties"> @@ -1251,16 +1243,12 @@ <ANCHOR id="plugin-audiovisualizers" href="gst-plugins-bad-plugins-1.0/gst-plugins-bad-plugins-plugin-audiovisualizers.html#plugin-audiovisualizers"> <ANCHOR id="gst-plugins-bad-plugins-plugin-autoconvert" href="gst-plugins-bad-plugins-1.0/gst-plugins-bad-plugins-plugin-autoconvert.html"> <ANCHOR id="plugin-autoconvert" href="gst-plugins-bad-plugins-1.0/gst-plugins-bad-plugins-plugin-autoconvert.html#plugin-autoconvert"> -<ANCHOR id="gst-plugins-bad-plugins-plugin-legacyresample" href="gst-plugins-bad-plugins-1.0/gst-plugins-bad-plugins-plugin-legacyresample.html"> -<ANCHOR id="plugin-legacyresample" href="gst-plugins-bad-plugins-1.0/gst-plugins-bad-plugins-plugin-legacyresample.html#plugin-legacyresample"> <ANCHOR id="gst-plugins-bad-plugins-plugin-assrender" href="gst-plugins-bad-plugins-1.0/gst-plugins-bad-plugins-plugin-assrender.html"> <ANCHOR id="plugin-assrender" href="gst-plugins-bad-plugins-1.0/gst-plugins-bad-plugins-plugin-assrender.html#plugin-assrender"> <ANCHOR id="gst-plugins-bad-plugins-plugin-bayer" href="gst-plugins-bad-plugins-1.0/gst-plugins-bad-plugins-plugin-bayer.html"> <ANCHOR id="plugin-bayer" href="gst-plugins-bad-plugins-1.0/gst-plugins-bad-plugins-plugin-bayer.html#plugin-bayer"> <ANCHOR id="gst-plugins-bad-plugins-plugin-bz2" href="gst-plugins-bad-plugins-1.0/gst-plugins-bad-plugins-plugin-bz2.html"> <ANCHOR id="plugin-bz2" href="gst-plugins-bad-plugins-1.0/gst-plugins-bad-plugins-plugin-bz2.html#plugin-bz2"> -<ANCHOR id="gst-plugins-bad-plugins-plugin-camerabin" href="gst-plugins-bad-plugins-1.0/gst-plugins-bad-plugins-plugin-camerabin.html"> -<ANCHOR id="plugin-camerabin" href="gst-plugins-bad-plugins-1.0/gst-plugins-bad-plugins-plugin-camerabin.html#plugin-camerabin"> <ANCHOR id="gst-plugins-bad-plugins-plugin-cdaudio" href="gst-plugins-bad-plugins-1.0/gst-plugins-bad-plugins-plugin-cdaudio.html"> <ANCHOR id="plugin-cdaudio" href="gst-plugins-bad-plugins-1.0/gst-plugins-bad-plugins-plugin-cdaudio.html#plugin-cdaudio"> <ANCHOR id="gst-plugins-bad-plugins-plugin-cdxaparse" href="gst-plugins-bad-plugins-1.0/gst-plugins-bad-plugins-plugin-cdxaparse.html"> @@ -1409,8 +1397,6 @@ <ANCHOR id="plugin-xvid" href="gst-plugins-bad-plugins-1.0/gst-plugins-bad-plugins-plugin-xvid.html#plugin-xvid"> <ANCHOR id="gst-plugins-bad-plugins-plugin-voaacenc" href="gst-plugins-bad-plugins-1.0/gst-plugins-bad-plugins-plugin-voaacenc.html"> <ANCHOR id="plugin-voaacenc" href="gst-plugins-bad-plugins-1.0/gst-plugins-bad-plugins-plugin-voaacenc.html#plugin-voaacenc"> -<ANCHOR id="gst-plugins-bad-plugins-plugin-voamrwbenc" href="gst-plugins-bad-plugins-1.0/gst-plugins-bad-plugins-plugin-voamrwbenc.html"> -<ANCHOR id="plugin-voamrwbenc" href="gst-plugins-bad-plugins-1.0/gst-plugins-bad-plugins-plugin-voamrwbenc.html#plugin-voamrwbenc"> <ANCHOR id="gst-plugins-bad-plugins-plugin-vp8" href="gst-plugins-bad-plugins-1.0/gst-plugins-bad-plugins-plugin-vp8.html"> <ANCHOR id="plugin-vp8" href="gst-plugins-bad-plugins-1.0/gst-plugins-bad-plugins-plugin-vp8.html#plugin-vp8"> <ANCHOR id="gst-plugins-bad-plugins-plugin-zbar" href="gst-plugins-bad-plugins-1.0/gst-plugins-bad-plugins-plugin-zbar.html"> @@ -1423,23 +1409,25 @@ <ANCHOR id="GstPhotography.description" href="gst-plugins-bad-plugins-1.0/GstPhotography.html#GstPhotography.description"> <ANCHOR id="GstPhotography.details" href="gst-plugins-bad-plugins-1.0/GstPhotography.html#GstPhotography.details"> <ANCHOR id="GstPhotography-struct" href="gst-plugins-bad-plugins-1.0/GstPhotography.html#GstPhotography-struct"> +<ANCHOR id="GST-PHOTOGRAPHY-AUTOFOCUS-DONE:CAPS" href="gst-plugins-bad-plugins-1.0/GstPhotography.html#GST-PHOTOGRAPHY-AUTOFOCUS-DONE:CAPS"> +<ANCHOR id="GST-PHOTOGRAPHY-SHAKE-RISK:CAPS" href="gst-plugins-bad-plugins-1.0/GstPhotography.html#GST-PHOTOGRAPHY-SHAKE-RISK:CAPS"> <ANCHOR id="GstPhotographyNoiseReduction" href="gst-plugins-bad-plugins-1.0/GstPhotography.html#GstPhotographyNoiseReduction"> -<ANCHOR id="GstWhiteBalanceMode" href="gst-plugins-bad-plugins-1.0/GstPhotography.html#GstWhiteBalanceMode"> -<ANCHOR id="GstColourToneMode" href="gst-plugins-bad-plugins-1.0/GstPhotography.html#GstColourToneMode"> -<ANCHOR id="GstSceneMode" href="gst-plugins-bad-plugins-1.0/GstPhotography.html#GstSceneMode"> -<ANCHOR id="GstFlashMode" href="gst-plugins-bad-plugins-1.0/GstPhotography.html#GstFlashMode"> -<ANCHOR id="GstFlickerReductionMode" href="gst-plugins-bad-plugins-1.0/GstPhotography.html#GstFlickerReductionMode"> -<ANCHOR id="GstFocusMode" href="gst-plugins-bad-plugins-1.0/GstPhotography.html#GstFocusMode"> -<ANCHOR id="GstFocusStatus" href="gst-plugins-bad-plugins-1.0/GstPhotography.html#GstFocusStatus"> -<ANCHOR id="GstPhotoCaps" href="gst-plugins-bad-plugins-1.0/GstPhotography.html#GstPhotoCaps"> -<ANCHOR id="GstPhotoShakeRisk" href="gst-plugins-bad-plugins-1.0/GstPhotography.html#GstPhotoShakeRisk"> -<ANCHOR id="GstPhotoCapturePrepared" href="gst-plugins-bad-plugins-1.0/GstPhotography.html#GstPhotoCapturePrepared"> +<ANCHOR id="GstPhotographyWhiteBalanceMode" href="gst-plugins-bad-plugins-1.0/GstPhotography.html#GstPhotographyWhiteBalanceMode"> +<ANCHOR id="GstPhotographyColorToneMode" href="gst-plugins-bad-plugins-1.0/GstPhotography.html#GstPhotographyColorToneMode"> +<ANCHOR id="GstPhotographySceneMode" href="gst-plugins-bad-plugins-1.0/GstPhotography.html#GstPhotographySceneMode"> +<ANCHOR id="GstPhotographyFlashMode" href="gst-plugins-bad-plugins-1.0/GstPhotography.html#GstPhotographyFlashMode"> +<ANCHOR id="GstPhotographyFlickerReductionMode" href="gst-plugins-bad-plugins-1.0/GstPhotography.html#GstPhotographyFlickerReductionMode"> +<ANCHOR id="GstPhotographyFocusMode" href="gst-plugins-bad-plugins-1.0/GstPhotography.html#GstPhotographyFocusMode"> +<ANCHOR id="GstPhotographyFocusStatus" href="gst-plugins-bad-plugins-1.0/GstPhotography.html#GstPhotographyFocusStatus"> +<ANCHOR id="GstPhotographyCaps" href="gst-plugins-bad-plugins-1.0/GstPhotography.html#GstPhotographyCaps"> +<ANCHOR id="GstPhotographyShakeRisk" href="gst-plugins-bad-plugins-1.0/GstPhotography.html#GstPhotographyShakeRisk"> +<ANCHOR id="GstPhotographyCapturePrepared" href="gst-plugins-bad-plugins-1.0/GstPhotography.html#GstPhotographyCapturePrepared"> <ANCHOR id="gst-photography-get-ev-compensation" href="gst-plugins-bad-plugins-1.0/GstPhotography.html#gst-photography-get-ev-compensation"> <ANCHOR id="gst-photography-get-iso-speed" href="gst-plugins-bad-plugins-1.0/GstPhotography.html#gst-photography-get-iso-speed"> <ANCHOR id="gst-photography-get-aperture" href="gst-plugins-bad-plugins-1.0/GstPhotography.html#gst-photography-get-aperture"> <ANCHOR id="gst-photography-get-exposure" href="gst-plugins-bad-plugins-1.0/GstPhotography.html#gst-photography-get-exposure"> <ANCHOR id="gst-photography-get-white-balance-mode" href="gst-plugins-bad-plugins-1.0/GstPhotography.html#gst-photography-get-white-balance-mode"> -<ANCHOR id="gst-photography-get-colour-tone-mode" href="gst-plugins-bad-plugins-1.0/GstPhotography.html#gst-photography-get-colour-tone-mode"> +<ANCHOR id="gst-photography-get-color-tone-mode" href="gst-plugins-bad-plugins-1.0/GstPhotography.html#gst-photography-get-color-tone-mode"> <ANCHOR id="gst-photography-get-scene-mode" href="gst-plugins-bad-plugins-1.0/GstPhotography.html#gst-photography-get-scene-mode"> <ANCHOR id="gst-photography-get-flash-mode" href="gst-plugins-bad-plugins-1.0/GstPhotography.html#gst-photography-get-flash-mode"> <ANCHOR id="gst-photography-get-noise-reduction" href="gst-plugins-bad-plugins-1.0/GstPhotography.html#gst-photography-get-noise-reduction"> @@ -1449,7 +1437,7 @@ <ANCHOR id="gst-photography-set-aperture" href="gst-plugins-bad-plugins-1.0/GstPhotography.html#gst-photography-set-aperture"> <ANCHOR id="gst-photography-set-exposure" href="gst-plugins-bad-plugins-1.0/GstPhotography.html#gst-photography-set-exposure"> <ANCHOR id="gst-photography-set-white-balance-mode" href="gst-plugins-bad-plugins-1.0/GstPhotography.html#gst-photography-set-white-balance-mode"> -<ANCHOR id="gst-photography-set-colour-tone-mode" href="gst-plugins-bad-plugins-1.0/GstPhotography.html#gst-photography-set-colour-tone-mode"> +<ANCHOR id="gst-photography-set-color-tone-mode" href="gst-plugins-bad-plugins-1.0/GstPhotography.html#gst-photography-set-color-tone-mode"> <ANCHOR id="gst-photography-set-scene-mode" href="gst-plugins-bad-plugins-1.0/GstPhotography.html#gst-photography-set-scene-mode"> <ANCHOR id="gst-photography-set-flash-mode" href="gst-plugins-bad-plugins-1.0/GstPhotography.html#gst-photography-set-flash-mode"> <ANCHOR id="gst-photography-set-noise-reduction" href="gst-plugins-bad-plugins-1.0/GstPhotography.html#gst-photography-set-noise-reduction"> diff --git a/docs/plugins/inspect/plugin-"schro".xml b/docs/plugins/inspect/plugin-"schro".xml deleted file mode 100644 index d6f3b13b..00000000 --- a/docs/plugins/inspect/plugin-"schro".xml +++ /dev/null @@ -1,55 +0,0 @@ -<plugin> - <name>"schro"</name> - <description>Schroedinger plugin</description> - <filename>../../ext/schroedinger/.libs/libgstschro.so</filename> - <basename>libgstschro.so</basename> - <version>0.11.92</version> - <license>LGPL</license> - <source>gst-plugins-bad</source> - <package>GStreamer Bad Plug-ins source release</package> - <origin>Unknown package origin</origin> - <elements> - <element> - <name>schrodec</name> - <longname>Dirac Decoder</longname> - <class>Codec/Decoder/Video</class> - <description>Decode Dirac streams</description> - <author>David Schleef <ds@schleef.org></author> - <pads> - <caps> - <name>sink</name> - <direction>sink</direction> - <presence>always</presence> - <details>video/x-dirac</details> - </caps> - <caps> - <name>src</name> - <direction>source</direction> - <presence>always</presence> - <details>video/x-raw, format=(string){ I420, YV12, YUY2, UYVY, AYUV, Y42B, Y444, v216, v210, AY64 }, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ]</details> - </caps> - </pads> - </element> - <element> - <name>schroenc</name> - <longname>Dirac Encoder</longname> - <class>Codec/Encoder/Video</class> - <description>Encode raw video into Dirac stream</description> - <author>David Schleef <ds@schleef.org></author> - <pads> - <caps> - <name>sink</name> - <direction>sink</direction> - <presence>always</presence> - <details>video/x-raw, format=(string){ I420, YV12, YUY2, UYVY, AYUV, Y42B, Y444, v216, v210, AY64 }, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ]</details> - </caps> - <caps> - <name>src</name> - <direction>source</direction> - <presence>always</presence> - <details>video/x-dirac; video/x-qt-part; video/x-mp4-part</details> - </caps> - </pads> - </element> - </elements> -</plugin>
\ No newline at end of file diff --git a/docs/plugins/inspect/plugin-camerabin.xml b/docs/plugins/inspect/plugin-camerabin.xml deleted file mode 100644 index 627082c0..00000000 --- a/docs/plugins/inspect/plugin-camerabin.xml +++ /dev/null @@ -1,64 +0,0 @@ -<plugin> - <name>camerabin</name> - <description>Take image snapshots and record movies from camera</description> - <filename>../../gst/camerabin2/.libs/libgstcamerabin2.so</filename> - <basename>libgstcamerabin2.so</basename> - <version>0.11.92</version> - <license>LGPL</license> - <source>gst-plugins-bad</source> - <package>GStreamer Bad Plug-ins source release</package> - <origin>Unknown package origin</origin> - <elements> - <element> - <name>camerabin</name> - <longname>Camera Bin</longname> - <class>Generic/Bin/Camera</class> - <description>Take image snapshots and record movies from camera</description> - <author>Thiago Santos <thiago.sousa.santos@collabora.co.uk></author> - <pads> - </pads> - </element> - <element> - <name>viewfinderbin</name> - <longname>Viewfinder Bin</longname> - <class>Sink/Video</class> - <description>Viewfinder Bin used in camerabin2</description> - <author>Thiago Santos <thiago.sousa.santos@collabora.com></author> - <pads> - <caps> - <name>sink</name> - <direction>sink</direction> - <presence>always</presence> - <details>video/x-raw</details> - </caps> - </pads> - </element> - <element> - <name>wrappercamerabinsrc</name> - <longname>Wrapper camera src element for camerabin2</longname> - <class>Source/Video</class> - <description>Wrapper camera src element for camerabin2</description> - <author>Thiago Santos <thiago.sousa.santos@collabora.com></author> - <pads> - <caps> - <name>imgsrc</name> - <direction>source</direction> - <presence>always</presence> - <details>ANY</details> - </caps> - <caps> - <name>vfsrc</name> - <direction>source</direction> - <presence>always</presence> - <details>ANY</details> - </caps> - <caps> - <name>vidsrc</name> - <direction>source</direction> - <presence>always</presence> - <details>ANY</details> - </caps> - </pads> - </element> - </elements> -</plugin>
\ No newline at end of file diff --git a/docs/plugins/inspect/plugin-divxdec.xml b/docs/plugins/inspect/plugin-divxdec.xml deleted file mode 100644 index d4aa087f..00000000 --- a/docs/plugins/inspect/plugin-divxdec.xml +++ /dev/null @@ -1,34 +0,0 @@ -<plugin> - <name>divxdec</name> - <description>DivX decoder</description> - <filename>../../ext/divx/.libs/libgstdivxdec.so</filename> - <basename>libgstdivxdec.so</basename> - <version>5.03</version> - <license>unknown</license> - <source>gst-plugins-bad</source> - <package>divx4linux</package> - <origin>http://www.divx.com/</origin> - <elements> - <element> - <name>divxdec</name> - <longname>Divx4linux video decoder</longname> - <class>Codec/Decoder/Video</class> - <description>Divx decoder based on divxdecore</description> - <author>Ronald Bultje <rbultje@ronald.bitfreak.net></author> - <pads> - <caps> - <name>sink</name> - <direction>sink</direction> - <presence>always</presence> - <details>video/x-divx, divxversion=(int)[ 3, 5 ], width=(int)[ 16, 4096 ], height=(int)[ 16, 4096 ], framerate=(fraction)[ 0/1, 2147483647/1 ]</details> - </caps> - <caps> - <name>src</name> - <direction>source</direction> - <presence>always</presence> - <details>video/x-raw-yuv, format=(fourcc){ I420, YUY2, YV12, UYVY }, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ]</details> - </caps> - </pads> - </element> - </elements> -</plugin>
\ No newline at end of file diff --git a/docs/plugins/inspect/plugin-divxenc.xml b/docs/plugins/inspect/plugin-divxenc.xml deleted file mode 100644 index 839fd1b8..00000000 --- a/docs/plugins/inspect/plugin-divxenc.xml +++ /dev/null @@ -1,34 +0,0 @@ -<plugin> - <name>divxenc</name> - <description>DivX encoder</description> - <filename>../../ext/divx/.libs/libgstdivxenc.so</filename> - <basename>libgstdivxenc.so</basename> - <version>5.03</version> - <license>unknown</license> - <source>gst-plugins-bad</source> - <package>divx4linux</package> - <origin>http://www.divx.com/</origin> - <elements> - <element> - <name>divxenc</name> - <longname>Divx4linux video encoder</longname> - <class>Codec/Encoder/Video</class> - <description>Divx encoder based on divxencore</description> - <author>Ronald Bultje <rbultje@ronald.bitfreak.net></author> - <pads> - <caps> - <name>sink</name> - <direction>sink</direction> - <presence>always</presence> - <details>video/x-raw-yuv, format=(fourcc){ I420, YUY2, YV12, YVYU, UYVY }, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ]</details> - </caps> - <caps> - <name>src</name> - <direction>source</direction> - <presence>always</presence> - <details>video/x-divx, divxversion=(int)5, width=(int)[ 16, 4096 ], height=(int)[ 16, 4096 ], framerate=(fraction)[ 0/1, 2147483647/1 ]</details> - </caps> - </pads> - </element> - </elements> -</plugin>
\ No newline at end of file diff --git a/docs/plugins/inspect/plugin-legacyresample.xml b/docs/plugins/inspect/plugin-legacyresample.xml deleted file mode 100644 index 77451a30..00000000 --- a/docs/plugins/inspect/plugin-legacyresample.xml +++ /dev/null @@ -1,34 +0,0 @@ -<plugin> - <name>legacyresample</name> - <description>Resamples audio</description> - <filename>../../gst/legacyresample/.libs/libgstlegacyresample.so</filename> - <basename>libgstlegacyresample.so</basename> - <version>0.10.23.1</version> - <license>LGPL</license> - <source>gst-plugins-bad</source> - <package>GStreamer Bad Plug-ins git</package> - <origin>Unknown package origin</origin> - <elements> - <element> - <name>legacyresample</name> - <longname>Audio scaler</longname> - <class>Filter/Converter/Audio</class> - <description>Resample audio</description> - <author>David Schleef <ds@schleef.org></author> - <pads> - <caps> - <name>sink</name> - <direction>sink</direction> - <presence>always</presence> - <details>audio/x-raw-int, rate=(int)[ 1, 2147483647 ], channels=(int)[ 1, 2147483647 ], endianness=(int)1234, width=(int)16, depth=(int)16, signed=(boolean)true; audio/x-raw-int, rate=(int)[ 1, 2147483647 ], channels=(int)[ 1, 2147483647 ], endianness=(int)1234, width=(int)32, depth=(int)32, signed=(boolean)true; audio/x-raw-float, rate=(int)[ 1, 2147483647 ], channels=(int)[ 1, 2147483647 ], endianness=(int)1234, width=(int)32; audio/x-raw-float, rate=(int)[ 1, 2147483647 ], channels=(int)[ 1, 2147483647 ], endianness=(int)1234, width=(int)64</details> - </caps> - <caps> - <name>src</name> - <direction>source</direction> - <presence>always</presence> - <details>audio/x-raw-int, rate=(int)[ 1, 2147483647 ], channels=(int)[ 1, 2147483647 ], endianness=(int)1234, width=(int)16, depth=(int)16, signed=(boolean)true; audio/x-raw-int, rate=(int)[ 1, 2147483647 ], channels=(int)[ 1, 2147483647 ], endianness=(int)1234, width=(int)32, depth=(int)32, signed=(boolean)true; audio/x-raw-float, rate=(int)[ 1, 2147483647 ], channels=(int)[ 1, 2147483647 ], endianness=(int)1234, width=(int)32; audio/x-raw-float, rate=(int)[ 1, 2147483647 ], channels=(int)[ 1, 2147483647 ], endianness=(int)1234, width=(int)64</details> - </caps> - </pads> - </element> - </elements> -</plugin>
\ No newline at end of file diff --git a/docs/plugins/inspect/plugin-opus.xml b/docs/plugins/inspect/plugin-opus.xml deleted file mode 100644 index f241c013..00000000 --- a/docs/plugins/inspect/plugin-opus.xml +++ /dev/null @@ -1,118 +0,0 @@ -<plugin> - <name>opus</name> - <description>OPUS plugin library</description> - <filename>../../ext/opus/.libs/libgstopus.so</filename> - <basename>libgstopus.so</basename> - <version>0.11.92</version> - <license>LGPL</license> - <source>gst-plugins-bad</source> - <package>GStreamer Bad Plug-ins source release</package> - <origin>Unknown package origin</origin> - <elements> - <element> - <name>opusdec</name> - <longname>Opus audio decoder</longname> - <class>Codec/Decoder/Audio</class> - <description>decode opus streams to audio</description> - <author>Sebastian Dröge <sebastian.droege@collabora.co.uk></author> - <pads> - <caps> - <name>sink</name> - <direction>sink</direction> - <presence>always</presence> - <details>audio/x-opus</details> - </caps> - <caps> - <name>src</name> - <direction>source</direction> - <presence>always</presence> - <details>audio/x-raw, format=(string){ S16LE }, layout=(string)interleaved, rate=(int){ 48000, 24000, 16000, 12000, 8000 }, channels=(int)[ 1, 8 ]</details> - </caps> - </pads> - </element> - <element> - <name>opusenc</name> - <longname>Opus audio encoder</longname> - <class>Codec/Encoder/Audio</class> - <description>Encodes audio in Opus format</description> - <author>Sebastian Dröge <sebastian.droege@collabora.co.uk></author> - <pads> - <caps> - <name>sink</name> - <direction>sink</direction> - <presence>always</presence> - <details>audio/x-raw, format=(string)S16LE, layout=(string)interleaved, rate=(int){ 8000, 12000, 16000, 24000, 48000 }, channels=(int)[ 1, 2 ]</details> - </caps> - <caps> - <name>src</name> - <direction>source</direction> - <presence>always</presence> - <details>audio/x-opus</details> - </caps> - </pads> - </element> - <element> - <name>opusparse</name> - <longname>Opus audio parser</longname> - <class>Codec/Parser/Audio</class> - <description>parses opus audio streams</description> - <author>Vincent Penquerc'h <vincent.penquerch@collabora.co.uk></author> - <pads> - <caps> - <name>sink</name> - <direction>sink</direction> - <presence>always</presence> - <details>audio/x-opus</details> - </caps> - <caps> - <name>src</name> - <direction>source</direction> - <presence>always</presence> - <details>audio/x-opus, framed=(boolean)true</details> - </caps> - </pads> - </element> - <element> - <name>rtpopusdepay</name> - <longname>RTP Opus packet depayloader</longname> - <class>Codec/Depayloader/Network/RTP</class> - <description>Extracts Opus audio from RTP packets</description> - <author>Danilo Cesar Lemes de Paula <danilo.cesar@collabora.co.uk></author> - <pads> - <caps> - <name>sink</name> - <direction>sink</direction> - <presence>always</presence> - <details>application/x-rtp, media=(string)audio, payload=(int)[ 96, 127 ], clock-rate=(int)48000, encoding-name=(string)X-GST-OPUS-DRAFT-SPITTKA-00</details> - </caps> - <caps> - <name>src</name> - <direction>source</direction> - <presence>always</presence> - <details>audio/x-opus</details> - </caps> - </pads> - </element> - <element> - <name>rtpopuspay</name> - <longname>RTP Opus payloader</longname> - <class>Codec/Payloader/Network/RTP</class> - <description>Puts Opus audio in RTP packets</description> - <author>Danilo Cesar Lemes de Paula <danilo.cesar@collabora.co.uk></author> - <pads> - <caps> - <name>sink</name> - <direction>sink</direction> - <presence>always</presence> - <details>audio/x-opus, multistream=(boolean)false</details> - </caps> - <caps> - <name>src</name> - <direction>source</direction> - <presence>always</presence> - <details>application/x-rtp, media=(string)audio, payload=(int)[ 96, 127 ], clock-rate=(int)48000, encoding-name=(string)X-GST-OPUS-DRAFT-SPITTKA-00</details> - </caps> - </pads> - </element> - </elements> -</plugin>
\ No newline at end of file diff --git a/docs/plugins/inspect/plugin-voamrwbenc.xml b/docs/plugins/inspect/plugin-voamrwbenc.xml deleted file mode 100644 index c9f7ae1f..00000000 --- a/docs/plugins/inspect/plugin-voamrwbenc.xml +++ /dev/null @@ -1,34 +0,0 @@ -<plugin> - <name>voamrwbenc</name> - <description>Adaptive Multi-Rate Wide-Band Encoder</description> - <filename>../../ext/voamrwbenc/.libs/libgstvoamrwbenc.so</filename> - <basename>libgstvoamrwbenc.so</basename> - <version>0.11.92</version> - <license>unknown</license> - <source>gst-plugins-bad</source> - <package>GStreamer Bad Plug-ins source release</package> - <origin>Unknown package origin</origin> - <elements> - <element> - <name>voamrwbenc</name> - <longname>AMR-WB audio encoder</longname> - <class>Codec/Encoder/Audio</class> - <description>Adaptive Multi-Rate Wideband audio encoder</description> - <author>Renato Araujo <renato.filho@indt.org.br></author> - <pads> - <caps> - <name>sink</name> - <direction>sink</direction> - <presence>always</presence> - <details>audio/x-raw, format=(string)S16LE, layout=(string)interleaved, rate=(int)16000, channels=(int)1</details> - </caps> - <caps> - <name>src</name> - <direction>source</direction> - <presence>always</presence> - <details>audio/AMR-WB, rate=(int)16000, channels=(int)1</details> - </caps> - </pads> - </element> - </elements> -</plugin>
\ No newline at end of file diff --git a/ext/Makefile.am b/ext/Makefile.am index 6bd70443..824f1d4f 100644 --- a/ext/Makefile.am +++ b/ext/Makefile.am @@ -16,30 +16,12 @@ else APEXSINK_DIR = endif -# if USE_ARTS -# ARTS_DIR=arts -# else -ARTS_DIR= -# endif - -# if USE_ARTSC -# ARTSC_DIR=artsd -# else -ARTSC_DIR= -# endif - # if USE_AUDIOFILE # AUDIOFILE_DIR=audiofile # else AUDIOFILE_DIR= # endif -# if USE_AUDIORESAMPLE -# AUDIORESAMPLE_DIR=audioresample -# else -AUDIORESAMPLE_DIR= -# endif - if USE_BZ2 BZ2_DIR=bz2 else @@ -100,12 +82,6 @@ else WAYLAND_DIR= endif -if USE_DIVX -DIVX_DIR=divx -else -DIVX_DIR= -endif - if USE_DTS DTS_DIR=dts else @@ -154,16 +130,10 @@ else GSM_DIR= endif -# if USE_HERMES -# HERMES_DIR=hermes -# else -HERMES_DIR= -# endif - -if USE_JP2K -JP2K_DIR = jp2k +if USE_JASPER +JASPER_DIR = jasper else -JP2K_DIR = +JASPER_DIR = endif if USE_KATE @@ -184,12 +154,6 @@ else LV2_DIR = endif -# if USE_LCS -# LCS_DIR=lcs -# else -LCS_DIR= -# endif - # if USE_LIBFAME # LIBFAME_DIR=libfame # else @@ -214,6 +178,12 @@ else MPEG2ENC_DIR= endif +if USE_MPG123 +MPG123_DIR=mpg123 +else +MPG123_DIR= +endif + if USE_MIMIC MIMIC_DIR=mimic else @@ -312,12 +282,6 @@ else SDL_DIR= endif -# if USE_SHOUT -# SHOUT_DIR=shout -# else -SHOUT_DIR= -# endif - # if USE_SMOOTHWAVE # SMOOTHWAVE_DIR=smoothwave # else @@ -408,10 +372,7 @@ SUBDIRS=\ $(ASSRENDER_DIR) \ $(VOAMRWBENC_DIR) \ $(APEXSINK_DIR) \ - $(ARTS_DIR) \ - $(ARTSC_DIR) \ $(AUDIOFILE_DIR) \ - $(AUDIORESAMPLE_DIR) \ $(BZ2_DIR) \ $(CDAUDIO_DIR) \ $(CELT_DIR) \ @@ -422,7 +383,6 @@ SUBDIRS=\ $(DIRAC_DIR) \ $(DIRECTFB_DIR) \ $(WAYLAND_DIR) \ - $(DIVX_DIR) \ $(DTS_DIR) \ $(RESINDVD_DIR) \ $(FAAC_DIR) \ @@ -431,16 +391,15 @@ SUBDIRS=\ $(GSETTINGS_DIR) \ $(GSM_DIR) \ $(G729_DIR) \ - $(HERMES_DIR) \ - $(JP2K_DIR) \ + $(JASPER_DIR) \ $(KATE_DIR) \ $(LADSPA_DIR) \ $(LV2_DIR) \ - $(LCS_DIR) \ $(LIBFAME_DIR) \ $(LIBMMS_DIR) \ $(MODPLUG_DIR) \ $(MPEG2ENC_DIR) \ + $(MPG123_DIR) \ $(MIMIC_DIR) \ $(MPLEX_DIR) \ $(MUSEPACK_DIR) \ @@ -455,7 +414,6 @@ SUBDIRS=\ $(RSVG_DIR) \ $(SCHRO_DIR) \ $(SDL_DIR) \ - $(SHOUT_DIR) \ $(SMOOTHWAVE_DIR) \ $(SNDFILE_DIR) \ $(SNDIO_DIR) \ @@ -483,22 +441,22 @@ DIST_SUBDIRS = \ dc1394 \ dirac \ directfb \ - wayland \ + wayland \ faac \ faad \ flite \ gsettings \ gsm \ ladspa \ - jp2k \ + jasper \ kate \ libmms \ lv2 \ dts \ - divx \ modplug \ mimic \ mpeg2enc \ + mpg123 \ mplex \ musepack \ musicbrainz \ diff --git a/ext/Makefile.in b/ext/Makefile.in index 35353713..ecbe64aa 100644 --- a/ext/Makefile.in +++ b/ext/Makefile.in @@ -1,4 +1,4 @@ -# Makefile.in generated by automake 1.11.5 from Makefile.am. +# Makefile.in generated by automake 1.11.6 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, @@ -215,11 +215,10 @@ DIRECT3D_LIBS = @DIRECT3D_LIBS@ DIRECTDRAW_LIBS = @DIRECTDRAW_LIBS@ DIRECTFB_CFLAGS = @DIRECTFB_CFLAGS@ DIRECTFB_LIBS = @DIRECTFB_LIBS@ +DIRECTSHOW_LIBS = @DIRECTSHOW_LIBS@ DIRECTSOUND_LIBS = @DIRECTSOUND_LIBS@ DIRECTX_CFLAGS = @DIRECTX_CFLAGS@ DIRECTX_LDFLAGS = @DIRECTX_LDFLAGS@ -DIVXDEC_LIBS = @DIVXDEC_LIBS@ -DIVXENC_LIBS = @DIVXENC_LIBS@ DLLTOOL = @DLLTOOL@ DSYMUTIL = @DSYMUTIL@ DTS_LIBS = @DTS_LIBS@ @@ -254,7 +253,9 @@ GIO_LIBS = @GIO_LIBS@ GLIB_CFLAGS = @GLIB_CFLAGS@ GLIB_COMPILE_SCHEMAS = @GLIB_COMPILE_SCHEMAS@ GLIB_EXTRA_CFLAGS = @GLIB_EXTRA_CFLAGS@ +GLIB_GENMARSHAL = @GLIB_GENMARSHAL@ GLIB_LIBS = @GLIB_LIBS@ +GLIB_MKENUMS = @GLIB_MKENUMS@ GLIB_PREFIX = @GLIB_PREFIX@ GLIB_REQ = @GLIB_REQ@ GME_LIBS = @GME_LIBS@ @@ -330,13 +331,14 @@ HAVE_CXX = @HAVE_CXX@ HAVE_DIRECT3D = @HAVE_DIRECT3D@ HAVE_DIRECT3D9 = @HAVE_DIRECT3D9@ HAVE_DIRECTDRAW = @HAVE_DIRECTDRAW@ +HAVE_DIRECTSHOW = @HAVE_DIRECTSHOW@ HAVE_DIRECTSOUND = @HAVE_DIRECTSOUND@ HAVE_DTS = @HAVE_DTS@ HAVE_FAAC = @HAVE_FAAC@ HAVE_FAAD = @HAVE_FAAD@ HAVE_FLITE = @HAVE_FLITE@ HAVE_GSM = @HAVE_GSM@ -HAVE_JP2K = @HAVE_JP2K@ +HAVE_JASPER = @HAVE_JASPER@ HAVE_NAS = @HAVE_NAS@ HAVE_VPX = @HAVE_VPX@ HAVE_WILDMIDI = @HAVE_WILDMIDI@ @@ -350,7 +352,7 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ INTLLIBS = @INTLLIBS@ INTL_MACOSX_LIBS = @INTL_MACOSX_LIBS@ -JP2K_LIBS = @JP2K_LIBS@ +JASPER_LIBS = @JASPER_LIBS@ KATE_CFLAGS = @KATE_CFLAGS@ KATE_LIBS = @KATE_LIBS@ LD = @LD@ @@ -386,6 +388,8 @@ MODPLUG_CFLAGS = @MODPLUG_CFLAGS@ MODPLUG_LIBS = @MODPLUG_LIBS@ MPEG2ENC_CFLAGS = @MPEG2ENC_CFLAGS@ MPEG2ENC_LIBS = @MPEG2ENC_LIBS@ +MPG123_CFLAGS = @MPG123_CFLAGS@ +MPG123_LIBS = @MPG123_LIBS@ MPLEX_CFLAGS = @MPLEX_CFLAGS@ MPLEX_LDFLAGS = @MPLEX_LDFLAGS@ MPLEX_LIBS = @MPLEX_LIBS@ @@ -583,28 +587,10 @@ top_srcdir = @top_srcdir@ @USE_APEXSINK_FALSE@APEXSINK_DIR = @USE_APEXSINK_TRUE@APEXSINK_DIR = apexsink -# if USE_ARTS -# ARTS_DIR=arts -# else -ARTS_DIR = -# endif - -# if USE_ARTSC -# ARTSC_DIR=artsd -# else -ARTSC_DIR = -# endif - # if USE_AUDIOFILE # AUDIOFILE_DIR=audiofile # else AUDIOFILE_DIR = -# endif - -# if USE_AUDIORESAMPLE -# AUDIORESAMPLE_DIR=audioresample -# else -AUDIORESAMPLE_DIR = @USE_BZ2_FALSE@BZ2_DIR = # endif @USE_BZ2_TRUE@BZ2_DIR = bz2 @@ -626,8 +612,6 @@ AUDIORESAMPLE_DIR = @USE_DIRECTFB_TRUE@DIRECTFB_DIR = directfb @USE_WAYLAND_FALSE@WAYLAND_DIR = @USE_WAYLAND_TRUE@WAYLAND_DIR = wayland -@USE_DIVX_FALSE@DIVX_DIR = -@USE_DIVX_TRUE@DIVX_DIR = divx @USE_DTS_FALSE@DTS_DIR = @USE_DTS_TRUE@DTS_DIR = dts @USE_RESINDVD_FALSE@RESINDVD_DIR = @@ -648,14 +632,8 @@ G729_DIR = @USE_GSM_FALSE@GSM_DIR = #endif @USE_GSM_TRUE@GSM_DIR = gsm - -# if USE_HERMES -# HERMES_DIR=hermes -# else -HERMES_DIR = -@USE_JP2K_FALSE@JP2K_DIR = -# endif -@USE_JP2K_TRUE@JP2K_DIR = jp2k +@USE_JASPER_FALSE@JASPER_DIR = +@USE_JASPER_TRUE@JASPER_DIR = jasper @USE_KATE_FALSE@KATE_DIR = @USE_KATE_TRUE@KATE_DIR = kate @USE_LADSPA_FALSE@LADSPA_DIR = @@ -663,12 +641,6 @@ HERMES_DIR = @USE_LV2_FALSE@LV2_DIR = @USE_LV2_TRUE@LV2_DIR = lv2 -# if USE_LCS -# LCS_DIR=lcs -# else -LCS_DIR = -# endif - # if USE_LIBFAME # LIBFAME_DIR=libfame # else @@ -680,6 +652,8 @@ LIBFAME_DIR = @USE_MODPLUG_TRUE@MODPLUG_DIR = modplug @USE_MPEG2ENC_FALSE@MPEG2ENC_DIR = @USE_MPEG2ENC_TRUE@MPEG2ENC_DIR = mpeg2enc +@USE_MPG123_FALSE@MPG123_DIR = +@USE_MPG123_TRUE@MPG123_DIR = mpg123 @USE_MIMIC_FALSE@MIMIC_DIR = @USE_MIMIC_TRUE@MIMIC_DIR = mimic @USE_MPLEX_FALSE@MPLEX_DIR = @@ -712,12 +686,6 @@ LIBFAME_DIR = @USE_SDL_FALSE@SDL_DIR = @USE_SDL_TRUE@SDL_DIR = sdl -# if USE_SHOUT -# SHOUT_DIR=shout -# else -SHOUT_DIR = -# endif - # if USE_SMOOTHWAVE # SMOOTHWAVE_DIR=smoothwave # else @@ -755,10 +723,7 @@ SUBDIRS = \ $(ASSRENDER_DIR) \ $(VOAMRWBENC_DIR) \ $(APEXSINK_DIR) \ - $(ARTS_DIR) \ - $(ARTSC_DIR) \ $(AUDIOFILE_DIR) \ - $(AUDIORESAMPLE_DIR) \ $(BZ2_DIR) \ $(CDAUDIO_DIR) \ $(CELT_DIR) \ @@ -769,7 +734,6 @@ SUBDIRS = \ $(DIRAC_DIR) \ $(DIRECTFB_DIR) \ $(WAYLAND_DIR) \ - $(DIVX_DIR) \ $(DTS_DIR) \ $(RESINDVD_DIR) \ $(FAAC_DIR) \ @@ -778,16 +742,15 @@ SUBDIRS = \ $(GSETTINGS_DIR) \ $(GSM_DIR) \ $(G729_DIR) \ - $(HERMES_DIR) \ - $(JP2K_DIR) \ + $(JASPER_DIR) \ $(KATE_DIR) \ $(LADSPA_DIR) \ $(LV2_DIR) \ - $(LCS_DIR) \ $(LIBFAME_DIR) \ $(LIBMMS_DIR) \ $(MODPLUG_DIR) \ $(MPEG2ENC_DIR) \ + $(MPG123_DIR) \ $(MIMIC_DIR) \ $(MPLEX_DIR) \ $(MUSEPACK_DIR) \ @@ -802,7 +765,6 @@ SUBDIRS = \ $(RSVG_DIR) \ $(SCHRO_DIR) \ $(SDL_DIR) \ - $(SHOUT_DIR) \ $(SMOOTHWAVE_DIR) \ $(SNDFILE_DIR) \ $(SNDIO_DIR) \ @@ -830,22 +792,22 @@ DIST_SUBDIRS = \ dc1394 \ dirac \ directfb \ - wayland \ + wayland \ faac \ faad \ flite \ gsettings \ gsm \ ladspa \ - jp2k \ + jasper \ kate \ libmms \ lv2 \ dts \ - divx \ modplug \ mimic \ mpeg2enc \ + mpg123 \ mplex \ musepack \ musicbrainz \ diff --git a/ext/apexsink/Makefile.in b/ext/apexsink/Makefile.in index 028949ef..253fa9ab 100644 --- a/ext/apexsink/Makefile.in +++ b/ext/apexsink/Makefile.in @@ -1,4 +1,4 @@ -# Makefile.in generated by automake 1.11.5 from Makefile.am. +# Makefile.in generated by automake 1.11.6 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, @@ -240,11 +240,10 @@ DIRECT3D_LIBS = @DIRECT3D_LIBS@ DIRECTDRAW_LIBS = @DIRECTDRAW_LIBS@ DIRECTFB_CFLAGS = @DIRECTFB_CFLAGS@ DIRECTFB_LIBS = @DIRECTFB_LIBS@ +DIRECTSHOW_LIBS = @DIRECTSHOW_LIBS@ DIRECTSOUND_LIBS = @DIRECTSOUND_LIBS@ DIRECTX_CFLAGS = @DIRECTX_CFLAGS@ DIRECTX_LDFLAGS = @DIRECTX_LDFLAGS@ -DIVXDEC_LIBS = @DIVXDEC_LIBS@ -DIVXENC_LIBS = @DIVXENC_LIBS@ DLLTOOL = @DLLTOOL@ DSYMUTIL = @DSYMUTIL@ DTS_LIBS = @DTS_LIBS@ @@ -279,7 +278,9 @@ GIO_LIBS = @GIO_LIBS@ GLIB_CFLAGS = @GLIB_CFLAGS@ GLIB_COMPILE_SCHEMAS = @GLIB_COMPILE_SCHEMAS@ GLIB_EXTRA_CFLAGS = @GLIB_EXTRA_CFLAGS@ +GLIB_GENMARSHAL = @GLIB_GENMARSHAL@ GLIB_LIBS = @GLIB_LIBS@ +GLIB_MKENUMS = @GLIB_MKENUMS@ GLIB_PREFIX = @GLIB_PREFIX@ GLIB_REQ = @GLIB_REQ@ GME_LIBS = @GME_LIBS@ @@ -355,13 +356,14 @@ HAVE_CXX = @HAVE_CXX@ HAVE_DIRECT3D = @HAVE_DIRECT3D@ HAVE_DIRECT3D9 = @HAVE_DIRECT3D9@ HAVE_DIRECTDRAW = @HAVE_DIRECTDRAW@ +HAVE_DIRECTSHOW = @HAVE_DIRECTSHOW@ HAVE_DIRECTSOUND = @HAVE_DIRECTSOUND@ HAVE_DTS = @HAVE_DTS@ HAVE_FAAC = @HAVE_FAAC@ HAVE_FAAD = @HAVE_FAAD@ HAVE_FLITE = @HAVE_FLITE@ HAVE_GSM = @HAVE_GSM@ -HAVE_JP2K = @HAVE_JP2K@ +HAVE_JASPER = @HAVE_JASPER@ HAVE_NAS = @HAVE_NAS@ HAVE_VPX = @HAVE_VPX@ HAVE_WILDMIDI = @HAVE_WILDMIDI@ @@ -375,7 +377,7 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ INTLLIBS = @INTLLIBS@ INTL_MACOSX_LIBS = @INTL_MACOSX_LIBS@ -JP2K_LIBS = @JP2K_LIBS@ +JASPER_LIBS = @JASPER_LIBS@ KATE_CFLAGS = @KATE_CFLAGS@ KATE_LIBS = @KATE_LIBS@ LD = @LD@ @@ -411,6 +413,8 @@ MODPLUG_CFLAGS = @MODPLUG_CFLAGS@ MODPLUG_LIBS = @MODPLUG_LIBS@ MPEG2ENC_CFLAGS = @MPEG2ENC_CFLAGS@ MPEG2ENC_LIBS = @MPEG2ENC_LIBS@ +MPG123_CFLAGS = @MPG123_CFLAGS@ +MPG123_LIBS = @MPG123_LIBS@ MPLEX_CFLAGS = @MPLEX_CFLAGS@ MPLEX_LDFLAGS = @MPLEX_LDFLAGS@ MPLEX_LIBS = @MPLEX_LIBS@ diff --git a/ext/assrender/Makefile.in b/ext/assrender/Makefile.in index 67be4de0..a6bbf4f2 100644 --- a/ext/assrender/Makefile.in +++ b/ext/assrender/Makefile.in @@ -1,4 +1,4 @@ -# Makefile.in generated by automake 1.11.5 from Makefile.am. +# Makefile.in generated by automake 1.11.6 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, @@ -237,11 +237,10 @@ DIRECT3D_LIBS = @DIRECT3D_LIBS@ DIRECTDRAW_LIBS = @DIRECTDRAW_LIBS@ DIRECTFB_CFLAGS = @DIRECTFB_CFLAGS@ DIRECTFB_LIBS = @DIRECTFB_LIBS@ +DIRECTSHOW_LIBS = @DIRECTSHOW_LIBS@ DIRECTSOUND_LIBS = @DIRECTSOUND_LIBS@ DIRECTX_CFLAGS = @DIRECTX_CFLAGS@ DIRECTX_LDFLAGS = @DIRECTX_LDFLAGS@ -DIVXDEC_LIBS = @DIVXDEC_LIBS@ -DIVXENC_LIBS = @DIVXENC_LIBS@ DLLTOOL = @DLLTOOL@ DSYMUTIL = @DSYMUTIL@ DTS_LIBS = @DTS_LIBS@ @@ -276,7 +275,9 @@ GIO_LIBS = @GIO_LIBS@ GLIB_CFLAGS = @GLIB_CFLAGS@ GLIB_COMPILE_SCHEMAS = @GLIB_COMPILE_SCHEMAS@ GLIB_EXTRA_CFLAGS = @GLIB_EXTRA_CFLAGS@ +GLIB_GENMARSHAL = @GLIB_GENMARSHAL@ GLIB_LIBS = @GLIB_LIBS@ +GLIB_MKENUMS = @GLIB_MKENUMS@ GLIB_PREFIX = @GLIB_PREFIX@ GLIB_REQ = @GLIB_REQ@ GME_LIBS = @GME_LIBS@ @@ -352,13 +353,14 @@ HAVE_CXX = @HAVE_CXX@ HAVE_DIRECT3D = @HAVE_DIRECT3D@ HAVE_DIRECT3D9 = @HAVE_DIRECT3D9@ HAVE_DIRECTDRAW = @HAVE_DIRECTDRAW@ +HAVE_DIRECTSHOW = @HAVE_DIRECTSHOW@ HAVE_DIRECTSOUND = @HAVE_DIRECTSOUND@ HAVE_DTS = @HAVE_DTS@ HAVE_FAAC = @HAVE_FAAC@ HAVE_FAAD = @HAVE_FAAD@ HAVE_FLITE = @HAVE_FLITE@ HAVE_GSM = @HAVE_GSM@ -HAVE_JP2K = @HAVE_JP2K@ +HAVE_JASPER = @HAVE_JASPER@ HAVE_NAS = @HAVE_NAS@ HAVE_VPX = @HAVE_VPX@ HAVE_WILDMIDI = @HAVE_WILDMIDI@ @@ -372,7 +374,7 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ INTLLIBS = @INTLLIBS@ INTL_MACOSX_LIBS = @INTL_MACOSX_LIBS@ -JP2K_LIBS = @JP2K_LIBS@ +JASPER_LIBS = @JASPER_LIBS@ KATE_CFLAGS = @KATE_CFLAGS@ KATE_LIBS = @KATE_LIBS@ LD = @LD@ @@ -408,6 +410,8 @@ MODPLUG_CFLAGS = @MODPLUG_CFLAGS@ MODPLUG_LIBS = @MODPLUG_LIBS@ MPEG2ENC_CFLAGS = @MPEG2ENC_CFLAGS@ MPEG2ENC_LIBS = @MPEG2ENC_LIBS@ +MPG123_CFLAGS = @MPG123_CFLAGS@ +MPG123_LIBS = @MPG123_LIBS@ MPLEX_CFLAGS = @MPLEX_CFLAGS@ MPLEX_LDFLAGS = @MPLEX_LDFLAGS@ MPLEX_LIBS = @MPLEX_LIBS@ diff --git a/ext/assrender/gstassrender.c b/ext/assrender/gstassrender.c index 955c8666..efa536f0 100644 --- a/ext/assrender/gstassrender.c +++ b/ext/assrender/gstassrender.c @@ -1302,7 +1302,6 @@ beach: static void gst_ass_render_handle_tags (GstAssRender * render, GstTagList * taglist) { -#if 0 static const gchar *mimetypes[] = { "application/x-font-ttf", "application/x-font-otf", @@ -1312,7 +1311,6 @@ gst_ass_render_handle_tags (GstAssRender * render, GstTagList * taglist) ".otf", ".ttf" }; -#endif guint tag_size; if (!taglist) @@ -1320,28 +1318,25 @@ gst_ass_render_handle_tags (GstAssRender * render, GstTagList * taglist) tag_size = gst_tag_list_get_tag_size (taglist, GST_TAG_ATTACHMENT); if (tag_size > 0 && render->embeddedfonts) { -#if 0 - const GValue *value; + GstSample *sample; GstBuffer *buf; - GstCaps *caps; - GstStructure *structure; + const GstStructure *structure; gboolean valid_mimetype, valid_extension; guint j; const gchar *filename; -#endif guint index; + GstMapInfo map; GST_DEBUG_OBJECT (render, "TAG event has attachments"); for (index = 0; index < tag_size; index++) { -#if 0 - value = gst_tag_list_get_value_index (taglist, GST_TAG_ATTACHMENT, index); - buf = gst_value_get_buffer (value); - if (!buf || !GST_BUFFER_CAPS (buf)) + if (!gst_tag_list_get_sample_index (taglist, GST_TAG_ATTACHMENT, index, + &sample)) + continue; + buf = gst_sample_get_buffer (sample); + structure = gst_sample_get_info (sample); + if (!buf || !structure) continue; - - caps = GST_BUFFER_CAPS (buf); - structure = gst_caps_get_structure (caps, 0); valid_mimetype = FALSE; valid_extension = FALSE; @@ -1369,12 +1364,13 @@ gst_ass_render_handle_tags (GstAssRender * render, GstTagList * taglist) if (valid_mimetype || valid_extension) { g_mutex_lock (&render->ass_mutex); + gst_buffer_map (buf, &map, GST_MAP_READ); ass_add_font (render->ass_library, (gchar *) filename, - (gchar *) GST_BUFFER_DATA (buf), GST_BUFFER_SIZE (buf)); + (gchar *) map.data, map.size); + gst_buffer_unmap (buf, &map); GST_DEBUG_OBJECT (render, "registered new font %s", filename); g_mutex_unlock (&render->ass_mutex); } -#endif } } } diff --git a/ext/bz2/Makefile.in b/ext/bz2/Makefile.in index ca98a8b2..f19442af 100644 --- a/ext/bz2/Makefile.in +++ b/ext/bz2/Makefile.in @@ -1,4 +1,4 @@ -# Makefile.in generated by automake 1.11.5 from Makefile.am. +# Makefile.in generated by automake 1.11.6 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, @@ -238,11 +238,10 @@ DIRECT3D_LIBS = @DIRECT3D_LIBS@ DIRECTDRAW_LIBS = @DIRECTDRAW_LIBS@ DIRECTFB_CFLAGS = @DIRECTFB_CFLAGS@ DIRECTFB_LIBS = @DIRECTFB_LIBS@ +DIRECTSHOW_LIBS = @DIRECTSHOW_LIBS@ DIRECTSOUND_LIBS = @DIRECTSOUND_LIBS@ DIRECTX_CFLAGS = @DIRECTX_CFLAGS@ DIRECTX_LDFLAGS = @DIRECTX_LDFLAGS@ -DIVXDEC_LIBS = @DIVXDEC_LIBS@ -DIVXENC_LIBS = @DIVXENC_LIBS@ DLLTOOL = @DLLTOOL@ DSYMUTIL = @DSYMUTIL@ DTS_LIBS = @DTS_LIBS@ @@ -277,7 +276,9 @@ GIO_LIBS = @GIO_LIBS@ GLIB_CFLAGS = @GLIB_CFLAGS@ GLIB_COMPILE_SCHEMAS = @GLIB_COMPILE_SCHEMAS@ GLIB_EXTRA_CFLAGS = @GLIB_EXTRA_CFLAGS@ +GLIB_GENMARSHAL = @GLIB_GENMARSHAL@ GLIB_LIBS = @GLIB_LIBS@ +GLIB_MKENUMS = @GLIB_MKENUMS@ GLIB_PREFIX = @GLIB_PREFIX@ GLIB_REQ = @GLIB_REQ@ GME_LIBS = @GME_LIBS@ @@ -353,13 +354,14 @@ HAVE_CXX = @HAVE_CXX@ HAVE_DIRECT3D = @HAVE_DIRECT3D@ HAVE_DIRECT3D9 = @HAVE_DIRECT3D9@ HAVE_DIRECTDRAW = @HAVE_DIRECTDRAW@ +HAVE_DIRECTSHOW = @HAVE_DIRECTSHOW@ HAVE_DIRECTSOUND = @HAVE_DIRECTSOUND@ HAVE_DTS = @HAVE_DTS@ HAVE_FAAC = @HAVE_FAAC@ HAVE_FAAD = @HAVE_FAAD@ HAVE_FLITE = @HAVE_FLITE@ HAVE_GSM = @HAVE_GSM@ -HAVE_JP2K = @HAVE_JP2K@ +HAVE_JASPER = @HAVE_JASPER@ HAVE_NAS = @HAVE_NAS@ HAVE_VPX = @HAVE_VPX@ HAVE_WILDMIDI = @HAVE_WILDMIDI@ @@ -373,7 +375,7 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ INTLLIBS = @INTLLIBS@ INTL_MACOSX_LIBS = @INTL_MACOSX_LIBS@ -JP2K_LIBS = @JP2K_LIBS@ +JASPER_LIBS = @JASPER_LIBS@ KATE_CFLAGS = @KATE_CFLAGS@ KATE_LIBS = @KATE_LIBS@ LD = @LD@ @@ -409,6 +411,8 @@ MODPLUG_CFLAGS = @MODPLUG_CFLAGS@ MODPLUG_LIBS = @MODPLUG_LIBS@ MPEG2ENC_CFLAGS = @MPEG2ENC_CFLAGS@ MPEG2ENC_LIBS = @MPEG2ENC_LIBS@ +MPG123_CFLAGS = @MPG123_CFLAGS@ +MPG123_LIBS = @MPG123_LIBS@ MPLEX_CFLAGS = @MPLEX_CFLAGS@ MPLEX_LDFLAGS = @MPLEX_LDFLAGS@ MPLEX_LIBS = @MPLEX_LIBS@ diff --git a/ext/cdaudio/Makefile.in b/ext/cdaudio/Makefile.in index 2d0a7b2d..9b20900b 100644 --- a/ext/cdaudio/Makefile.in +++ b/ext/cdaudio/Makefile.in @@ -1,4 +1,4 @@ -# Makefile.in generated by automake 1.11.5 from Makefile.am. +# Makefile.in generated by automake 1.11.6 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, @@ -233,11 +233,10 @@ DIRECT3D_LIBS = @DIRECT3D_LIBS@ DIRECTDRAW_LIBS = @DIRECTDRAW_LIBS@ DIRECTFB_CFLAGS = @DIRECTFB_CFLAGS@ DIRECTFB_LIBS = @DIRECTFB_LIBS@ +DIRECTSHOW_LIBS = @DIRECTSHOW_LIBS@ DIRECTSOUND_LIBS = @DIRECTSOUND_LIBS@ DIRECTX_CFLAGS = @DIRECTX_CFLAGS@ DIRECTX_LDFLAGS = @DIRECTX_LDFLAGS@ -DIVXDEC_LIBS = @DIVXDEC_LIBS@ -DIVXENC_LIBS = @DIVXENC_LIBS@ DLLTOOL = @DLLTOOL@ DSYMUTIL = @DSYMUTIL@ DTS_LIBS = @DTS_LIBS@ @@ -272,7 +271,9 @@ GIO_LIBS = @GIO_LIBS@ GLIB_CFLAGS = @GLIB_CFLAGS@ GLIB_COMPILE_SCHEMAS = @GLIB_COMPILE_SCHEMAS@ GLIB_EXTRA_CFLAGS = @GLIB_EXTRA_CFLAGS@ +GLIB_GENMARSHAL = @GLIB_GENMARSHAL@ GLIB_LIBS = @GLIB_LIBS@ +GLIB_MKENUMS = @GLIB_MKENUMS@ GLIB_PREFIX = @GLIB_PREFIX@ GLIB_REQ = @GLIB_REQ@ GME_LIBS = @GME_LIBS@ @@ -348,13 +349,14 @@ HAVE_CXX = @HAVE_CXX@ HAVE_DIRECT3D = @HAVE_DIRECT3D@ HAVE_DIRECT3D9 = @HAVE_DIRECT3D9@ HAVE_DIRECTDRAW = @HAVE_DIRECTDRAW@ +HAVE_DIRECTSHOW = @HAVE_DIRECTSHOW@ HAVE_DIRECTSOUND = @HAVE_DIRECTSOUND@ HAVE_DTS = @HAVE_DTS@ HAVE_FAAC = @HAVE_FAAC@ HAVE_FAAD = @HAVE_FAAD@ HAVE_FLITE = @HAVE_FLITE@ HAVE_GSM = @HAVE_GSM@ -HAVE_JP2K = @HAVE_JP2K@ +HAVE_JASPER = @HAVE_JASPER@ HAVE_NAS = @HAVE_NAS@ HAVE_VPX = @HAVE_VPX@ HAVE_WILDMIDI = @HAVE_WILDMIDI@ @@ -368,7 +370,7 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ INTLLIBS = @INTLLIBS@ INTL_MACOSX_LIBS = @INTL_MACOSX_LIBS@ -JP2K_LIBS = @JP2K_LIBS@ +JASPER_LIBS = @JASPER_LIBS@ KATE_CFLAGS = @KATE_CFLAGS@ KATE_LIBS = @KATE_LIBS@ LD = @LD@ @@ -404,6 +406,8 @@ MODPLUG_CFLAGS = @MODPLUG_CFLAGS@ MODPLUG_LIBS = @MODPLUG_LIBS@ MPEG2ENC_CFLAGS = @MPEG2ENC_CFLAGS@ MPEG2ENC_LIBS = @MPEG2ENC_LIBS@ +MPG123_CFLAGS = @MPG123_CFLAGS@ +MPG123_LIBS = @MPG123_LIBS@ MPLEX_CFLAGS = @MPLEX_CFLAGS@ MPLEX_LDFLAGS = @MPLEX_LDFLAGS@ MPLEX_LIBS = @MPLEX_LIBS@ diff --git a/ext/celt/Makefile.in b/ext/celt/Makefile.in index f3caa807..bb130568 100644 --- a/ext/celt/Makefile.in +++ b/ext/celt/Makefile.in @@ -1,4 +1,4 @@ -# Makefile.in generated by automake 1.11.5 from Makefile.am. +# Makefile.in generated by automake 1.11.6 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, @@ -239,11 +239,10 @@ DIRECT3D_LIBS = @DIRECT3D_LIBS@ DIRECTDRAW_LIBS = @DIRECTDRAW_LIBS@ DIRECTFB_CFLAGS = @DIRECTFB_CFLAGS@ DIRECTFB_LIBS = @DIRECTFB_LIBS@ +DIRECTSHOW_LIBS = @DIRECTSHOW_LIBS@ DIRECTSOUND_LIBS = @DIRECTSOUND_LIBS@ DIRECTX_CFLAGS = @DIRECTX_CFLAGS@ DIRECTX_LDFLAGS = @DIRECTX_LDFLAGS@ -DIVXDEC_LIBS = @DIVXDEC_LIBS@ -DIVXENC_LIBS = @DIVXENC_LIBS@ DLLTOOL = @DLLTOOL@ DSYMUTIL = @DSYMUTIL@ DTS_LIBS = @DTS_LIBS@ @@ -278,7 +277,9 @@ GIO_LIBS = @GIO_LIBS@ GLIB_CFLAGS = @GLIB_CFLAGS@ GLIB_COMPILE_SCHEMAS = @GLIB_COMPILE_SCHEMAS@ GLIB_EXTRA_CFLAGS = @GLIB_EXTRA_CFLAGS@ +GLIB_GENMARSHAL = @GLIB_GENMARSHAL@ GLIB_LIBS = @GLIB_LIBS@ +GLIB_MKENUMS = @GLIB_MKENUMS@ GLIB_PREFIX = @GLIB_PREFIX@ GLIB_REQ = @GLIB_REQ@ GME_LIBS = @GME_LIBS@ @@ -354,13 +355,14 @@ HAVE_CXX = @HAVE_CXX@ HAVE_DIRECT3D = @HAVE_DIRECT3D@ HAVE_DIRECT3D9 = @HAVE_DIRECT3D9@ HAVE_DIRECTDRAW = @HAVE_DIRECTDRAW@ +HAVE_DIRECTSHOW = @HAVE_DIRECTSHOW@ HAVE_DIRECTSOUND = @HAVE_DIRECTSOUND@ HAVE_DTS = @HAVE_DTS@ HAVE_FAAC = @HAVE_FAAC@ HAVE_FAAD = @HAVE_FAAD@ HAVE_FLITE = @HAVE_FLITE@ HAVE_GSM = @HAVE_GSM@ -HAVE_JP2K = @HAVE_JP2K@ +HAVE_JASPER = @HAVE_JASPER@ HAVE_NAS = @HAVE_NAS@ HAVE_VPX = @HAVE_VPX@ HAVE_WILDMIDI = @HAVE_WILDMIDI@ @@ -374,7 +376,7 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ INTLLIBS = @INTLLIBS@ INTL_MACOSX_LIBS = @INTL_MACOSX_LIBS@ -JP2K_LIBS = @JP2K_LIBS@ +JASPER_LIBS = @JASPER_LIBS@ KATE_CFLAGS = @KATE_CFLAGS@ KATE_LIBS = @KATE_LIBS@ LD = @LD@ @@ -410,6 +412,8 @@ MODPLUG_CFLAGS = @MODPLUG_CFLAGS@ MODPLUG_LIBS = @MODPLUG_LIBS@ MPEG2ENC_CFLAGS = @MPEG2ENC_CFLAGS@ MPEG2ENC_LIBS = @MPEG2ENC_LIBS@ +MPG123_CFLAGS = @MPG123_CFLAGS@ +MPG123_LIBS = @MPG123_LIBS@ MPLEX_CFLAGS = @MPLEX_CFLAGS@ MPLEX_LDFLAGS = @MPLEX_LDFLAGS@ MPLEX_LIBS = @MPLEX_LIBS@ diff --git a/ext/celt/gstceltenc.c b/ext/celt/gstceltenc.c index d0c7f80c..563af7c0 100644 --- a/ext/celt/gstceltenc.c +++ b/ext/celt/gstceltenc.c @@ -424,7 +424,7 @@ gst_celt_enc_create_metadata_buffer (GstCeltEnc * enc) GST_BUFFER_OFFSET_END (comments) = 0; if (empty_tags) - gst_tag_list_free (empty_tags); + gst_tag_list_unref (empty_tags); return comments; } @@ -614,8 +614,8 @@ gst_celt_enc_handle_frame (GstAudioEncoder * benc, GstBuffer * buf) enc->header_sent = TRUE; } - GST_DEBUG_OBJECT (enc, "received buffer %p of %u bytes", buf, - buf ? gst_buffer_get_size (buf) : 0); + GST_DEBUG_OBJECT (enc, "received buffer %p of %" G_GSIZE_FORMAT " bytes", + buf, buf ? gst_buffer_get_size (buf) : 0); ret = gst_celt_enc_encode (enc, buf); diff --git a/ext/chromaprint/Makefile.in b/ext/chromaprint/Makefile.in index dd214113..9da0bac4 100644 --- a/ext/chromaprint/Makefile.in +++ b/ext/chromaprint/Makefile.in @@ -1,4 +1,4 @@ -# Makefile.in generated by automake 1.11.5 from Makefile.am. +# Makefile.in generated by automake 1.11.6 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, @@ -238,11 +238,10 @@ DIRECT3D_LIBS = @DIRECT3D_LIBS@ DIRECTDRAW_LIBS = @DIRECTDRAW_LIBS@ DIRECTFB_CFLAGS = @DIRECTFB_CFLAGS@ DIRECTFB_LIBS = @DIRECTFB_LIBS@ +DIRECTSHOW_LIBS = @DIRECTSHOW_LIBS@ DIRECTSOUND_LIBS = @DIRECTSOUND_LIBS@ DIRECTX_CFLAGS = @DIRECTX_CFLAGS@ DIRECTX_LDFLAGS = @DIRECTX_LDFLAGS@ -DIVXDEC_LIBS = @DIVXDEC_LIBS@ -DIVXENC_LIBS = @DIVXENC_LIBS@ DLLTOOL = @DLLTOOL@ DSYMUTIL = @DSYMUTIL@ DTS_LIBS = @DTS_LIBS@ @@ -277,7 +276,9 @@ GIO_LIBS = @GIO_LIBS@ GLIB_CFLAGS = @GLIB_CFLAGS@ GLIB_COMPILE_SCHEMAS = @GLIB_COMPILE_SCHEMAS@ GLIB_EXTRA_CFLAGS = @GLIB_EXTRA_CFLAGS@ +GLIB_GENMARSHAL = @GLIB_GENMARSHAL@ GLIB_LIBS = @GLIB_LIBS@ +GLIB_MKENUMS = @GLIB_MKENUMS@ GLIB_PREFIX = @GLIB_PREFIX@ GLIB_REQ = @GLIB_REQ@ GME_LIBS = @GME_LIBS@ @@ -353,13 +354,14 @@ HAVE_CXX = @HAVE_CXX@ HAVE_DIRECT3D = @HAVE_DIRECT3D@ HAVE_DIRECT3D9 = @HAVE_DIRECT3D9@ HAVE_DIRECTDRAW = @HAVE_DIRECTDRAW@ +HAVE_DIRECTSHOW = @HAVE_DIRECTSHOW@ HAVE_DIRECTSOUND = @HAVE_DIRECTSOUND@ HAVE_DTS = @HAVE_DTS@ HAVE_FAAC = @HAVE_FAAC@ HAVE_FAAD = @HAVE_FAAD@ HAVE_FLITE = @HAVE_FLITE@ HAVE_GSM = @HAVE_GSM@ -HAVE_JP2K = @HAVE_JP2K@ +HAVE_JASPER = @HAVE_JASPER@ HAVE_NAS = @HAVE_NAS@ HAVE_VPX = @HAVE_VPX@ HAVE_WILDMIDI = @HAVE_WILDMIDI@ @@ -373,7 +375,7 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ INTLLIBS = @INTLLIBS@ INTL_MACOSX_LIBS = @INTL_MACOSX_LIBS@ -JP2K_LIBS = @JP2K_LIBS@ +JASPER_LIBS = @JASPER_LIBS@ KATE_CFLAGS = @KATE_CFLAGS@ KATE_LIBS = @KATE_LIBS@ LD = @LD@ @@ -409,6 +411,8 @@ MODPLUG_CFLAGS = @MODPLUG_CFLAGS@ MODPLUG_LIBS = @MODPLUG_LIBS@ MPEG2ENC_CFLAGS = @MPEG2ENC_CFLAGS@ MPEG2ENC_LIBS = @MPEG2ENC_LIBS@ +MPG123_CFLAGS = @MPG123_CFLAGS@ +MPG123_LIBS = @MPG123_LIBS@ MPLEX_CFLAGS = @MPLEX_CFLAGS@ MPLEX_LDFLAGS = @MPLEX_LDFLAGS@ MPLEX_LIBS = @MPLEX_LIBS@ diff --git a/ext/cog/Makefile.in b/ext/cog/Makefile.in index 5d2df676..5ede7aba 100644 --- a/ext/cog/Makefile.in +++ b/ext/cog/Makefile.in @@ -1,4 +1,4 @@ -# Makefile.in generated by automake 1.11.5 from Makefile.am. +# Makefile.in generated by automake 1.11.6 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, @@ -281,11 +281,10 @@ DIRECT3D_LIBS = @DIRECT3D_LIBS@ DIRECTDRAW_LIBS = @DIRECTDRAW_LIBS@ DIRECTFB_CFLAGS = @DIRECTFB_CFLAGS@ DIRECTFB_LIBS = @DIRECTFB_LIBS@ +DIRECTSHOW_LIBS = @DIRECTSHOW_LIBS@ DIRECTSOUND_LIBS = @DIRECTSOUND_LIBS@ DIRECTX_CFLAGS = @DIRECTX_CFLAGS@ DIRECTX_LDFLAGS = @DIRECTX_LDFLAGS@ -DIVXDEC_LIBS = @DIVXDEC_LIBS@ -DIVXENC_LIBS = @DIVXENC_LIBS@ DLLTOOL = @DLLTOOL@ DSYMUTIL = @DSYMUTIL@ DTS_LIBS = @DTS_LIBS@ @@ -320,7 +319,9 @@ GIO_LIBS = @GIO_LIBS@ GLIB_CFLAGS = @GLIB_CFLAGS@ GLIB_COMPILE_SCHEMAS = @GLIB_COMPILE_SCHEMAS@ GLIB_EXTRA_CFLAGS = @GLIB_EXTRA_CFLAGS@ +GLIB_GENMARSHAL = @GLIB_GENMARSHAL@ GLIB_LIBS = @GLIB_LIBS@ +GLIB_MKENUMS = @GLIB_MKENUMS@ GLIB_PREFIX = @GLIB_PREFIX@ GLIB_REQ = @GLIB_REQ@ GME_LIBS = @GME_LIBS@ @@ -396,13 +397,14 @@ HAVE_CXX = @HAVE_CXX@ HAVE_DIRECT3D = @HAVE_DIRECT3D@ HAVE_DIRECT3D9 = @HAVE_DIRECT3D9@ HAVE_DIRECTDRAW = @HAVE_DIRECTDRAW@ +HAVE_DIRECTSHOW = @HAVE_DIRECTSHOW@ HAVE_DIRECTSOUND = @HAVE_DIRECTSOUND@ HAVE_DTS = @HAVE_DTS@ HAVE_FAAC = @HAVE_FAAC@ HAVE_FAAD = @HAVE_FAAD@ HAVE_FLITE = @HAVE_FLITE@ HAVE_GSM = @HAVE_GSM@ -HAVE_JP2K = @HAVE_JP2K@ +HAVE_JASPER = @HAVE_JASPER@ HAVE_NAS = @HAVE_NAS@ HAVE_VPX = @HAVE_VPX@ HAVE_WILDMIDI = @HAVE_WILDMIDI@ @@ -416,7 +418,7 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ INTLLIBS = @INTLLIBS@ INTL_MACOSX_LIBS = @INTL_MACOSX_LIBS@ -JP2K_LIBS = @JP2K_LIBS@ +JASPER_LIBS = @JASPER_LIBS@ KATE_CFLAGS = @KATE_CFLAGS@ KATE_LIBS = @KATE_LIBS@ LD = @LD@ @@ -452,6 +454,8 @@ MODPLUG_CFLAGS = @MODPLUG_CFLAGS@ MODPLUG_LIBS = @MODPLUG_LIBS@ MPEG2ENC_CFLAGS = @MPEG2ENC_CFLAGS@ MPEG2ENC_LIBS = @MPEG2ENC_LIBS@ +MPG123_CFLAGS = @MPG123_CFLAGS@ +MPG123_LIBS = @MPG123_LIBS@ MPLEX_CFLAGS = @MPLEX_CFLAGS@ MPLEX_LDFLAGS = @MPLEX_LDFLAGS@ MPLEX_LIBS = @MPLEX_LIBS@ diff --git a/ext/curl/Makefile.in b/ext/curl/Makefile.in index be37360b..9998a995 100644 --- a/ext/curl/Makefile.in +++ b/ext/curl/Makefile.in @@ -1,4 +1,4 @@ -# Makefile.in generated by automake 1.11.5 from Makefile.am. +# Makefile.in generated by automake 1.11.6 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, @@ -244,11 +244,10 @@ DIRECT3D_LIBS = @DIRECT3D_LIBS@ DIRECTDRAW_LIBS = @DIRECTDRAW_LIBS@ DIRECTFB_CFLAGS = @DIRECTFB_CFLAGS@ DIRECTFB_LIBS = @DIRECTFB_LIBS@ +DIRECTSHOW_LIBS = @DIRECTSHOW_LIBS@ DIRECTSOUND_LIBS = @DIRECTSOUND_LIBS@ DIRECTX_CFLAGS = @DIRECTX_CFLAGS@ DIRECTX_LDFLAGS = @DIRECTX_LDFLAGS@ -DIVXDEC_LIBS = @DIVXDEC_LIBS@ -DIVXENC_LIBS = @DIVXENC_LIBS@ DLLTOOL = @DLLTOOL@ DSYMUTIL = @DSYMUTIL@ DTS_LIBS = @DTS_LIBS@ @@ -283,7 +282,9 @@ GIO_LIBS = @GIO_LIBS@ GLIB_CFLAGS = @GLIB_CFLAGS@ GLIB_COMPILE_SCHEMAS = @GLIB_COMPILE_SCHEMAS@ GLIB_EXTRA_CFLAGS = @GLIB_EXTRA_CFLAGS@ +GLIB_GENMARSHAL = @GLIB_GENMARSHAL@ GLIB_LIBS = @GLIB_LIBS@ +GLIB_MKENUMS = @GLIB_MKENUMS@ GLIB_PREFIX = @GLIB_PREFIX@ GLIB_REQ = @GLIB_REQ@ GME_LIBS = @GME_LIBS@ @@ -359,13 +360,14 @@ HAVE_CXX = @HAVE_CXX@ HAVE_DIRECT3D = @HAVE_DIRECT3D@ HAVE_DIRECT3D9 = @HAVE_DIRECT3D9@ HAVE_DIRECTDRAW = @HAVE_DIRECTDRAW@ +HAVE_DIRECTSHOW = @HAVE_DIRECTSHOW@ HAVE_DIRECTSOUND = @HAVE_DIRECTSOUND@ HAVE_DTS = @HAVE_DTS@ HAVE_FAAC = @HAVE_FAAC@ HAVE_FAAD = @HAVE_FAAD@ HAVE_FLITE = @HAVE_FLITE@ HAVE_GSM = @HAVE_GSM@ -HAVE_JP2K = @HAVE_JP2K@ +HAVE_JASPER = @HAVE_JASPER@ HAVE_NAS = @HAVE_NAS@ HAVE_VPX = @HAVE_VPX@ HAVE_WILDMIDI = @HAVE_WILDMIDI@ @@ -379,7 +381,7 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ INTLLIBS = @INTLLIBS@ INTL_MACOSX_LIBS = @INTL_MACOSX_LIBS@ -JP2K_LIBS = @JP2K_LIBS@ +JASPER_LIBS = @JASPER_LIBS@ KATE_CFLAGS = @KATE_CFLAGS@ KATE_LIBS = @KATE_LIBS@ LD = @LD@ @@ -415,6 +417,8 @@ MODPLUG_CFLAGS = @MODPLUG_CFLAGS@ MODPLUG_LIBS = @MODPLUG_LIBS@ MPEG2ENC_CFLAGS = @MPEG2ENC_CFLAGS@ MPEG2ENC_LIBS = @MPEG2ENC_LIBS@ +MPG123_CFLAGS = @MPG123_CFLAGS@ +MPG123_LIBS = @MPG123_LIBS@ MPLEX_CFLAGS = @MPLEX_CFLAGS@ MPLEX_LDFLAGS = @MPLEX_LDFLAGS@ MPLEX_LIBS = @MPLEX_LIBS@ diff --git a/ext/curl/gstcurlbasesink.c b/ext/curl/gstcurlbasesink.c index 96b554e3..5e1faf22 100644 --- a/ext/curl/gstcurlbasesink.c +++ b/ext/curl/gstcurlbasesink.c @@ -377,7 +377,8 @@ gst_curl_base_sink_event (GstBaseSink * bsink, GstEvent * event) default: break; } - return TRUE; + + return GST_BASE_SINK_CLASS (parent_class)->event (bsink, event); } static gboolean diff --git a/ext/curl/gstcurlsmtpsink.c b/ext/curl/gstcurlsmtpsink.c index 6bf78efd..adf17396 100644 --- a/ext/curl/gstcurlsmtpsink.c +++ b/ext/curl/gstcurlsmtpsink.c @@ -203,7 +203,8 @@ gst_curl_smtp_sink_event (GstBaseSink * bsink, GstEvent * event) default: break; } - return TRUE; + + return GST_BASE_SINK_CLASS (parent_class)->event (bsink, event); } static void diff --git a/ext/dc1394/Makefile.in b/ext/dc1394/Makefile.in index d39f034c..61d51c10 100644 --- a/ext/dc1394/Makefile.in +++ b/ext/dc1394/Makefile.in @@ -1,4 +1,4 @@ -# Makefile.in generated by automake 1.11.5 from Makefile.am. +# Makefile.in generated by automake 1.11.6 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, @@ -237,11 +237,10 @@ DIRECT3D_LIBS = @DIRECT3D_LIBS@ DIRECTDRAW_LIBS = @DIRECTDRAW_LIBS@ DIRECTFB_CFLAGS = @DIRECTFB_CFLAGS@ DIRECTFB_LIBS = @DIRECTFB_LIBS@ +DIRECTSHOW_LIBS = @DIRECTSHOW_LIBS@ DIRECTSOUND_LIBS = @DIRECTSOUND_LIBS@ DIRECTX_CFLAGS = @DIRECTX_CFLAGS@ DIRECTX_LDFLAGS = @DIRECTX_LDFLAGS@ -DIVXDEC_LIBS = @DIVXDEC_LIBS@ -DIVXENC_LIBS = @DIVXENC_LIBS@ DLLTOOL = @DLLTOOL@ DSYMUTIL = @DSYMUTIL@ DTS_LIBS = @DTS_LIBS@ @@ -276,7 +275,9 @@ GIO_LIBS = @GIO_LIBS@ GLIB_CFLAGS = @GLIB_CFLAGS@ GLIB_COMPILE_SCHEMAS = @GLIB_COMPILE_SCHEMAS@ GLIB_EXTRA_CFLAGS = @GLIB_EXTRA_CFLAGS@ +GLIB_GENMARSHAL = @GLIB_GENMARSHAL@ GLIB_LIBS = @GLIB_LIBS@ +GLIB_MKENUMS = @GLIB_MKENUMS@ GLIB_PREFIX = @GLIB_PREFIX@ GLIB_REQ = @GLIB_REQ@ GME_LIBS = @GME_LIBS@ @@ -352,13 +353,14 @@ HAVE_CXX = @HAVE_CXX@ HAVE_DIRECT3D = @HAVE_DIRECT3D@ HAVE_DIRECT3D9 = @HAVE_DIRECT3D9@ HAVE_DIRECTDRAW = @HAVE_DIRECTDRAW@ +HAVE_DIRECTSHOW = @HAVE_DIRECTSHOW@ HAVE_DIRECTSOUND = @HAVE_DIRECTSOUND@ HAVE_DTS = @HAVE_DTS@ HAVE_FAAC = @HAVE_FAAC@ HAVE_FAAD = @HAVE_FAAD@ HAVE_FLITE = @HAVE_FLITE@ HAVE_GSM = @HAVE_GSM@ -HAVE_JP2K = @HAVE_JP2K@ +HAVE_JASPER = @HAVE_JASPER@ HAVE_NAS = @HAVE_NAS@ HAVE_VPX = @HAVE_VPX@ HAVE_WILDMIDI = @HAVE_WILDMIDI@ @@ -372,7 +374,7 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ INTLLIBS = @INTLLIBS@ INTL_MACOSX_LIBS = @INTL_MACOSX_LIBS@ -JP2K_LIBS = @JP2K_LIBS@ +JASPER_LIBS = @JASPER_LIBS@ KATE_CFLAGS = @KATE_CFLAGS@ KATE_LIBS = @KATE_LIBS@ LD = @LD@ @@ -408,6 +410,8 @@ MODPLUG_CFLAGS = @MODPLUG_CFLAGS@ MODPLUG_LIBS = @MODPLUG_LIBS@ MPEG2ENC_CFLAGS = @MPEG2ENC_CFLAGS@ MPEG2ENC_LIBS = @MPEG2ENC_LIBS@ +MPG123_CFLAGS = @MPG123_CFLAGS@ +MPG123_LIBS = @MPG123_LIBS@ MPLEX_CFLAGS = @MPLEX_CFLAGS@ MPLEX_LDFLAGS = @MPLEX_LDFLAGS@ MPLEX_LIBS = @MPLEX_LIBS@ diff --git a/ext/dirac/Makefile.in b/ext/dirac/Makefile.in index 88315985..16e36fc0 100644 --- a/ext/dirac/Makefile.in +++ b/ext/dirac/Makefile.in @@ -1,4 +1,4 @@ -# Makefile.in generated by automake 1.11.5 from Makefile.am. +# Makefile.in generated by automake 1.11.6 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, @@ -239,11 +239,10 @@ DIRECT3D_LIBS = @DIRECT3D_LIBS@ DIRECTDRAW_LIBS = @DIRECTDRAW_LIBS@ DIRECTFB_CFLAGS = @DIRECTFB_CFLAGS@ DIRECTFB_LIBS = @DIRECTFB_LIBS@ +DIRECTSHOW_LIBS = @DIRECTSHOW_LIBS@ DIRECTSOUND_LIBS = @DIRECTSOUND_LIBS@ DIRECTX_CFLAGS = @DIRECTX_CFLAGS@ DIRECTX_LDFLAGS = @DIRECTX_LDFLAGS@ -DIVXDEC_LIBS = @DIVXDEC_LIBS@ -DIVXENC_LIBS = @DIVXENC_LIBS@ DLLTOOL = @DLLTOOL@ DSYMUTIL = @DSYMUTIL@ DTS_LIBS = @DTS_LIBS@ @@ -278,7 +277,9 @@ GIO_LIBS = @GIO_LIBS@ GLIB_CFLAGS = @GLIB_CFLAGS@ GLIB_COMPILE_SCHEMAS = @GLIB_COMPILE_SCHEMAS@ GLIB_EXTRA_CFLAGS = @GLIB_EXTRA_CFLAGS@ +GLIB_GENMARSHAL = @GLIB_GENMARSHAL@ GLIB_LIBS = @GLIB_LIBS@ +GLIB_MKENUMS = @GLIB_MKENUMS@ GLIB_PREFIX = @GLIB_PREFIX@ GLIB_REQ = @GLIB_REQ@ GME_LIBS = @GME_LIBS@ @@ -354,13 +355,14 @@ HAVE_CXX = @HAVE_CXX@ HAVE_DIRECT3D = @HAVE_DIRECT3D@ HAVE_DIRECT3D9 = @HAVE_DIRECT3D9@ HAVE_DIRECTDRAW = @HAVE_DIRECTDRAW@ +HAVE_DIRECTSHOW = @HAVE_DIRECTSHOW@ HAVE_DIRECTSOUND = @HAVE_DIRECTSOUND@ HAVE_DTS = @HAVE_DTS@ HAVE_FAAC = @HAVE_FAAC@ HAVE_FAAD = @HAVE_FAAD@ HAVE_FLITE = @HAVE_FLITE@ HAVE_GSM = @HAVE_GSM@ -HAVE_JP2K = @HAVE_JP2K@ +HAVE_JASPER = @HAVE_JASPER@ HAVE_NAS = @HAVE_NAS@ HAVE_VPX = @HAVE_VPX@ HAVE_WILDMIDI = @HAVE_WILDMIDI@ @@ -374,7 +376,7 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ INTLLIBS = @INTLLIBS@ INTL_MACOSX_LIBS = @INTL_MACOSX_LIBS@ -JP2K_LIBS = @JP2K_LIBS@ +JASPER_LIBS = @JASPER_LIBS@ KATE_CFLAGS = @KATE_CFLAGS@ KATE_LIBS = @KATE_LIBS@ LD = @LD@ @@ -410,6 +412,8 @@ MODPLUG_CFLAGS = @MODPLUG_CFLAGS@ MODPLUG_LIBS = @MODPLUG_LIBS@ MPEG2ENC_CFLAGS = @MPEG2ENC_CFLAGS@ MPEG2ENC_LIBS = @MPEG2ENC_LIBS@ +MPG123_CFLAGS = @MPG123_CFLAGS@ +MPG123_LIBS = @MPG123_LIBS@ MPLEX_CFLAGS = @MPLEX_CFLAGS@ MPLEX_LDFLAGS = @MPLEX_LDFLAGS@ MPLEX_LIBS = @MPLEX_LIBS@ diff --git a/ext/directfb/Makefile.in b/ext/directfb/Makefile.in index 997eec5b..686676cb 100644 --- a/ext/directfb/Makefile.in +++ b/ext/directfb/Makefile.in @@ -1,4 +1,4 @@ -# Makefile.in generated by automake 1.11.5 from Makefile.am. +# Makefile.in generated by automake 1.11.6 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, @@ -247,11 +247,10 @@ DIRECT3D_LIBS = @DIRECT3D_LIBS@ DIRECTDRAW_LIBS = @DIRECTDRAW_LIBS@ DIRECTFB_CFLAGS = @DIRECTFB_CFLAGS@ DIRECTFB_LIBS = @DIRECTFB_LIBS@ +DIRECTSHOW_LIBS = @DIRECTSHOW_LIBS@ DIRECTSOUND_LIBS = @DIRECTSOUND_LIBS@ DIRECTX_CFLAGS = @DIRECTX_CFLAGS@ DIRECTX_LDFLAGS = @DIRECTX_LDFLAGS@ -DIVXDEC_LIBS = @DIVXDEC_LIBS@ -DIVXENC_LIBS = @DIVXENC_LIBS@ DLLTOOL = @DLLTOOL@ DSYMUTIL = @DSYMUTIL@ DTS_LIBS = @DTS_LIBS@ @@ -286,7 +285,9 @@ GIO_LIBS = @GIO_LIBS@ GLIB_CFLAGS = @GLIB_CFLAGS@ GLIB_COMPILE_SCHEMAS = @GLIB_COMPILE_SCHEMAS@ GLIB_EXTRA_CFLAGS = @GLIB_EXTRA_CFLAGS@ +GLIB_GENMARSHAL = @GLIB_GENMARSHAL@ GLIB_LIBS = @GLIB_LIBS@ +GLIB_MKENUMS = @GLIB_MKENUMS@ GLIB_PREFIX = @GLIB_PREFIX@ GLIB_REQ = @GLIB_REQ@ GME_LIBS = @GME_LIBS@ @@ -362,13 +363,14 @@ HAVE_CXX = @HAVE_CXX@ HAVE_DIRECT3D = @HAVE_DIRECT3D@ HAVE_DIRECT3D9 = @HAVE_DIRECT3D9@ HAVE_DIRECTDRAW = @HAVE_DIRECTDRAW@ +HAVE_DIRECTSHOW = @HAVE_DIRECTSHOW@ HAVE_DIRECTSOUND = @HAVE_DIRECTSOUND@ HAVE_DTS = @HAVE_DTS@ HAVE_FAAC = @HAVE_FAAC@ HAVE_FAAD = @HAVE_FAAD@ HAVE_FLITE = @HAVE_FLITE@ HAVE_GSM = @HAVE_GSM@ -HAVE_JP2K = @HAVE_JP2K@ +HAVE_JASPER = @HAVE_JASPER@ HAVE_NAS = @HAVE_NAS@ HAVE_VPX = @HAVE_VPX@ HAVE_WILDMIDI = @HAVE_WILDMIDI@ @@ -382,7 +384,7 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ INTLLIBS = @INTLLIBS@ INTL_MACOSX_LIBS = @INTL_MACOSX_LIBS@ -JP2K_LIBS = @JP2K_LIBS@ +JASPER_LIBS = @JASPER_LIBS@ KATE_CFLAGS = @KATE_CFLAGS@ KATE_LIBS = @KATE_LIBS@ LD = @LD@ @@ -418,6 +420,8 @@ MODPLUG_CFLAGS = @MODPLUG_CFLAGS@ MODPLUG_LIBS = @MODPLUG_LIBS@ MPEG2ENC_CFLAGS = @MPEG2ENC_CFLAGS@ MPEG2ENC_LIBS = @MPEG2ENC_LIBS@ +MPG123_CFLAGS = @MPG123_CFLAGS@ +MPG123_LIBS = @MPG123_LIBS@ MPLEX_CFLAGS = @MPLEX_CFLAGS@ MPLEX_LDFLAGS = @MPLEX_LDFLAGS@ MPLEX_LIBS = @MPLEX_LIBS@ diff --git a/ext/divx/Makefile.am b/ext/divx/Makefile.am deleted file mode 100644 index 1cf0a713..00000000 --- a/ext/divx/Makefile.am +++ /dev/null @@ -1,15 +0,0 @@ -plugin_LTLIBRARIES = libgstdivxdec.la libgstdivxenc.la - -AM_CFLAGS = $(GST_PLUGINS_BASE_CFLAGS) $(GST_CFLAGS) $(DIVX_CFLAGS) - -libgstdivxenc_la_SOURCES = gstdivxenc.c -libgstdivxenc_la_LIBADD = $(GST_PLUGINS_BASE_LIBS) $(DIVXENC_LIBS) -libgstdivxenc_la_LDFLAGS = $(GST_PLUGIN_LDFLAGS) -libgstdivxenc_la_LIBTOOLFLAGS = --tag=disable-static - -libgstdivxdec_la_SOURCES = gstdivxdec.c -libgstdivxdec_la_LIBADD = $(GST_PLUGINS_BASE_LIBS) $(DIVXDEC_LIBS) -libgstdivxdec_la_LDFLAGS = $(GST_PLUGIN_LDFLAGS) -libgstdivxdec_la_LIBTOOLFLAGS = --tag=disable-static - -noinst_HEADERS = gstdivxenc.h gstdivxdec.h diff --git a/ext/divx/gstdivxdec.c b/ext/divx/gstdivxdec.c deleted file mode 100644 index d43b6cf8..00000000 --- a/ext/divx/gstdivxdec.c +++ /dev/null @@ -1,577 +0,0 @@ -/* GStreamer divx decoder plugin - * Copyright (C) 2003 Ronald Bultje <rbultje@ronald.bitfreak.net> - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Library General Public - * License as published by the Free Software Foundation; either - * version 2 of the License, or (at your option) any later version. - * - * This library 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 - * Library General Public License for more details. - * - * You should have received a copy of the GNU Library General Public - * License along with this library; if not, write to the - * Free Software Foundation, Inc., 59 Temple Place - Suite 330, - * Boston, MA 02111-1307, USA. - */ - -#ifdef HAVE_CONFIG_H -#include "config.h" -#endif - -#include <string.h> -#include "gstdivxdec.h" -#include <gst/video/video.h> - -static GstStaticPadTemplate sink_template = GST_STATIC_PAD_TEMPLATE ("sink", - GST_PAD_SINK, - GST_PAD_ALWAYS, - GST_STATIC_CAPS ("video/x-divx, " - "divxversion = (int) [ 3, 5 ], " - "width = (int) [ 16, 4096 ], " - "height = (int) [ 16, 4096 ], " "framerate = (fraction) [0/1, MAX]") - ); - -static GstStaticPadTemplate src_template = GST_STATIC_PAD_TEMPLATE ("src", - GST_PAD_SRC, - GST_PAD_ALWAYS, - GST_STATIC_CAPS (GST_VIDEO_CAPS_YUV ("{ I420, YUY2, YV12, UYVY }") - /* FIXME: 15/16/24/32bpp RGB */ - ) - ); - - -/* DivxDec signals and args */ -enum -{ - /* FILL ME */ - LAST_SIGNAL -}; - -enum -{ - ARG_0 - /* FILL ME */ -}; - - -static void gst_divxdec_base_init (GstDivxDecClass * klass); -static void gst_divxdec_class_init (GstDivxDecClass * klass); -static void gst_divxdec_init (GstDivxDec * divxdec); -static void gst_divxdec_dispose (GObject * object); -static GstFlowReturn gst_divxdec_chain (GstPad * pad, GstBuffer * buf); -static gboolean gst_divxdec_connect (GstPad * pad, GstCaps * vscapslist); -static gboolean gst_divxdec_negotiate (GstDivxDec * divxdec); -static GstStateChangeReturn -gst_divxdec_change_state (GstElement * element, GstStateChange transition); -static GstElementClass *parent_class = NULL; - -/* static guint gst_divxdec_signals[LAST_SIGNAL] = { 0 }; */ - - -static const gchar * -gst_divxdec_error (int errorcode) -{ - const gchar *error; - - switch (errorcode) { - case DEC_OK: - error = "No error"; - break; - case DEC_MEMORY: - error = "Invalid memory"; - break; - case DEC_BAD_FORMAT: - error = "Invalid format"; - break; - case DEC_INVALID_ARGUMENT: - error = "Invalid argument"; - break; - case DEC_NOT_IMPLEMENTED: - error = "Not implemented"; - break; - default: - error = "Unknown error"; - break; - } - - return error; -} - -GType -gst_divxdec_get_type (void) -{ - static GType divxdec_type = 0; - - if (!divxdec_type) { - static const GTypeInfo divxdec_info = { - sizeof (GstDivxDecClass), - (GBaseInitFunc) gst_divxdec_base_init, - NULL, - (GClassInitFunc) gst_divxdec_class_init, - NULL, - NULL, - sizeof (GstDivxDec), - 0, - (GInstanceInitFunc) gst_divxdec_init, - }; - - divxdec_type = g_type_register_static (GST_TYPE_ELEMENT, - "GstDivxDec", &divxdec_info, 0); - } - return divxdec_type; -} - - -static void -gst_divxdec_base_init (GstDivxDecClass * klass) -{ - GstElementClass *element_class = GST_ELEMENT_CLASS (klass); - - gst_element_class_add_pad_template (element_class, - gst_static_pad_template_get (&sink_template)); - gst_element_class_add_pad_template (element_class, - gst_static_pad_template_get (&src_template)); - - gst_element_class_set_details_simple (element_class, - "Divx4linux video decoder", "Codec/Decoder/Video", - "Divx decoder based on divxdecore", - "Ronald Bultje <rbultje@ronald.bitfreak.net>"); -} - - -static void -gst_divxdec_class_init (GstDivxDecClass * klass) -{ - GstElementClass *gstelement_class = GST_ELEMENT_CLASS (klass); - GObjectClass *gobject_class = (GObjectClass *) klass; - - parent_class = g_type_class_peek_parent (klass); - - gstelement_class->change_state = gst_divxdec_change_state; - gobject_class->dispose = gst_divxdec_dispose; -} - - -static void -gst_divxdec_init (GstDivxDec * divxdec) -{ - /* create the sink pad */ - divxdec->sinkpad = gst_pad_new_from_static_template (&sink_template, "sink"); - gst_element_add_pad (GST_ELEMENT (divxdec), divxdec->sinkpad); - gst_pad_set_chain_function (divxdec->sinkpad, gst_divxdec_chain); - gst_pad_set_setcaps_function (divxdec->sinkpad, gst_divxdec_connect); - - /* create the src pad */ - divxdec->srcpad = gst_pad_new_from_static_template (&src_template, "src"); - gst_element_add_pad (GST_ELEMENT (divxdec), divxdec->srcpad); - gst_pad_use_fixed_caps (divxdec->srcpad); - - /* bitrate, etc. */ - divxdec->width = divxdec->height = divxdec->csp = divxdec->bitcnt = -1; - divxdec->version = 0; - - /* set divx handle to NULL */ - divxdec->handle = NULL; -} - - -static void -gst_divxdec_unset (GstDivxDec * divxdec) -{ - if (divxdec->handle) { - /* unref this instance */ - decore (divxdec->handle, DEC_OPT_RELEASE, NULL, NULL); - divxdec->handle = NULL; - } -} - - -static gboolean -gst_divxdec_setup (GstDivxDec * divxdec) -{ - void *handle; - DEC_INIT xinit; - DivXBitmapInfoHeader output; - int ret; - - /* initialize the handle */ - memset (&xinit, 0, sizeof (DEC_INIT)); - xinit.smooth_playback = 0; - switch (divxdec->version) { - case 3: - xinit.codec_version = 311; - break; - case 4: - xinit.codec_version = 400; - break; - case 5: - xinit.codec_version = 500; - break; - default: - xinit.codec_version = 0; - break; - } - if ((ret = decore (&handle, DEC_OPT_INIT, &xinit, NULL)) != 0) { - GST_ELEMENT_ERROR (divxdec, LIBRARY, INIT, (NULL), - ("divx library error: %s (%d)", gst_divxdec_error (ret), ret)); - return FALSE; - } - - /* we've got a handle now */ - divxdec->handle = handle; - - /* initialise parameters, see divx documentation */ - memset (&output, 0, sizeof (DivXBitmapInfoHeader)); - output.biSize = sizeof (DivXBitmapInfoHeader); - output.biWidth = divxdec->width; - output.biHeight = divxdec->height; - output.biBitCount = divxdec->bitcnt; - output.biCompression = divxdec->csp; - - if ((ret = decore (divxdec->handle, DEC_OPT_SETOUT, &output, NULL)) != 0) { - GST_ELEMENT_ERROR (divxdec, LIBRARY, SETTINGS, (NULL), - ("error setting output: %s (%d)", gst_divxdec_error (ret), ret)); - gst_divxdec_unset (divxdec); - return FALSE; - } - return TRUE; -} - -static void -gst_divxdec_dispose (GObject * object) -{ - GstDivxDec *divxdec = GST_DIVXDEC (object); - - gst_divxdec_unset (divxdec); - G_OBJECT_CLASS (parent_class)->dispose (object); -} - -static GstFlowReturn -gst_divxdec_chain (GstPad * pad, GstBuffer * buf) -{ - GstDivxDec *divxdec; - GstBuffer *outbuf; - DEC_FRAME xframe; - int res; - GstFlowReturn ret; - - divxdec = GST_DIVXDEC (gst_pad_get_parent (pad)); - if (!divxdec->handle) { - if (gst_divxdec_negotiate (divxdec) <= 0) { - goto not_negotiated; - } - } - - outbuf = gst_buffer_new_and_alloc (divxdec->width * - divxdec->height * divxdec->bpp / 8); - GST_BUFFER_TIMESTAMP (outbuf) = GST_BUFFER_TIMESTAMP (buf); - GST_BUFFER_SIZE (outbuf) = divxdec->width * - divxdec->height * divxdec->bpp / 8; - - /* encode and so ... */ - xframe.bitstream = (void *) GST_BUFFER_DATA (buf); - xframe.bmp = (void *) GST_BUFFER_DATA (outbuf); - xframe.length = GST_BUFFER_SIZE (buf); - xframe.stride = 0; - xframe.render_flag = 1; - - if ((res = decore (divxdec->handle, DEC_OPT_FRAME, &xframe, NULL))) { - goto not_decoding; - } - - gst_buffer_set_caps (outbuf, GST_PAD_CAPS (divxdec->srcpad)); - ret = gst_pad_push (divxdec->srcpad, outbuf); - goto cleanup; - -not_negotiated: - { - GST_ELEMENT_ERROR (divxdec, CORE, TOO_LAZY, (NULL), - ("No format set - aborting")); - ret = GST_FLOW_NOT_NEGOTIATED; - goto cleanup; - } - -not_decoding: - { - GST_ELEMENT_ERROR (divxdec, STREAM, DECODE, (NULL), - ("Error decoding divx frame: %s (%d)", gst_divxdec_error (res), res)); - gst_buffer_unref (outbuf); - ret = GST_FLOW_ERROR; - goto cleanup; - } - -cleanup: - - gst_buffer_unref (buf); - gst_object_unref (divxdec); - return ret; - -} - - -/* FIXME: moved all the bits out here that are broken so the syntax - * stays clear */ - -/* - { - GST_MAKE_FOURCC ('R', 'G', 'B', ' '), 32, 32, - #if (G_BYTE_ORDER == G_BIG_ENDIAN) - GST_MAKE_FOURCC ('A', 'B', 'G', 'R'), 32} - - , - #else - 0, 32} - - , - #endif - { - GST_MAKE_FOURCC ('R', 'G', 'B', ' '), 24, 24, - #if (G_BYTE_ORDER == G_BIG_ENDIAN) - GST_MAKE_FOURCC ('A', 'B', 'G', 'R'), 24} - - , - #else - 0, 24} - - , - #endif - { - GST_MAKE_FOURCC ('R', 'G', 'B', ' '), 16, 16, 3, 16} - - , { - GST_MAKE_FOURCC ('R', 'G', 'B', ' '), 15, 16, 0, 16} - - , - #endif - if (fmt_list[i].fourcc == GST_MAKE_FOURCC ('R', 'G', 'B', ' ')) { - guint32 r_mask = 0, b_mask = 0, g_mask = 0; - gint endianness = 0; - - switch (fmt_list[i].depth) { - case 15: - endianness = G_BYTE_ORDER; - r_mask = 0xf800; - g_mask = 0x07c0; - b_mask = 0x003e; - break; - case 16: - endianness = G_BYTE_ORDER; - r_mask = 0xf800; - g_mask = 0x07e0; - b_mask = 0x001f; - break; - case 24: - endianness = G_BIG_ENDIAN; - r_mask = GST_VIDEO_BYTE1_MASK_24_INT; - g_mask = GST_VIDEO_BYTE2_MASK_24_INT; - b_mask = GST_VIDEO_BYTE3_MASK_24_INT break; - case 32: - endianness = G_BIG_ENDIAN; - r_mask = GST_VIDEO_BYTE1_MASK_32_INT; - g_mask = GST_VIDEO_BYTE2_MASK_32_INT; - b_mask = GST_VIDEO_BYTE3_MASK_32_INT break; - } - caps = GST_CAPS_NEW ("divxdec_src_pad_rgb", - "video/x-raw-rgb", - "width", GST_PROPS_INT (divxdec->width), - "height", GST_PROPS_INT (divxdec->height), - "framerate", GST_PROPS_FLOAT (divxdec->fps), - "depth", GST_PROPS_INT (fmt_list[i].depth), - "bpp", GST_PROPS_INT (fmt_list[i].bpp), - "endianness", GST_PROPS_INT (endianness), - "red_mask", GST_PROPS_INT (r_mask), - "green_mask", GST_PROPS_INT (g_mask), - "blue_mask", GST_PROPS_INT (b_mask)); - } else { - #endif - - #endif -*/ - -static gboolean -gst_divxdec_negotiate (GstDivxDec * divxdec) -{ - GstCaps *caps = NULL; - gint i; - gint par_num, par_den; - gboolean ret = FALSE; - - struct - { - guint32 fourcc; - gint depth, bpp; - guint32 csp; - gint bitcnt; - } - - fmt_list[] = { - { - GST_MAKE_FOURCC ('Y', 'U', 'Y', '2'), 16, 16, - GST_MAKE_FOURCC ('Y', 'U', 'Y', '2'), 0} - , { - GST_MAKE_FOURCC ('U', 'Y', 'V', 'Y'), 16, 16, - GST_MAKE_FOURCC ('U', 'Y', 'V', 'Y'), 0} - , { - GST_MAKE_FOURCC ('I', '4', '2', '0'), 12, 12, - GST_MAKE_FOURCC ('I', '4', '2', '0'), 0} - , { - GST_MAKE_FOURCC ('Y', 'V', '1', '2'), 12, 12, - GST_MAKE_FOURCC ('Y', 'V', '1', '2'), 0} - , { - 0, 0, 0, 0, 0} - }; - - GST_DEBUG_OBJECT (divxdec, "fps %d/%d, PAR %d/%d", - divxdec->fps_n, divxdec->fps_d, divxdec->par_n, divxdec->par_d); - - /* calculate par - * the info.aspect_* values reflect PAR; - * 0:0 is allowed and can be interpreted as 1:1, so correct for it */ - par_num = divxdec->par_n; - par_den = divxdec->par_d; - if (par_num == 0 && par_den == 0) { - par_num = par_den = 1; - } - - for (i = 0; fmt_list[i].fourcc != 0; i++) { - divxdec->csp = fmt_list[i].csp; - - caps = gst_caps_new_simple ("video/x-raw-yuv", - "width", G_TYPE_INT, divxdec->width, - "height", G_TYPE_INT, divxdec->height, - "framerate", GST_TYPE_FRACTION, divxdec->fps_n, divxdec->fps_d, - "pixel-aspect-ratio", GST_TYPE_FRACTION, par_num, par_den, - "format", GST_TYPE_FOURCC, fmt_list[i].fourcc, NULL); - - if (caps) { - - if (gst_divxdec_setup (divxdec) && - gst_pad_set_caps (divxdec->srcpad, caps)) { - divxdec->csp = fmt_list[i].csp; - divxdec->bpp = fmt_list[i].bpp; - divxdec->bitcnt = fmt_list[i].bitcnt; - ret = TRUE; - goto done; - } - - gst_caps_unref (caps); - caps = NULL; - - } - - } - - /* if we got here - it's not good */ - -done: - - if (caps) { - gst_caps_unref (caps); - } - - return ret; -} - - -static gboolean -gst_divxdec_connect (GstPad * pad, GstCaps * caps) -{ - GstDivxDec *divxdec; - const GValue *par; - const GValue *fps; - gboolean ret = FALSE; - - GstStructure *structure = gst_caps_get_structure (caps, 0); - - divxdec = GST_DIVXDEC (gst_pad_get_parent (pad)); - - /* if there's something old around, remove it */ - if (divxdec->handle) { - gst_divxdec_unset (divxdec); - } - - /* if we get here, we know the input is divx. we - * only need to bother with the output colorspace */ - gst_structure_get_int (structure, "width", &divxdec->width); - gst_structure_get_int (structure, "height", &divxdec->height); - gst_structure_get_int (structure, "divxversion", &divxdec->version); - - /* get pixel aspect ratio if it's set */ - par = gst_structure_get_value (structure, "pixel-aspect-ratio"); - if (par) { - divxdec->par_n = gst_value_get_fraction_numerator (par), - divxdec->par_d = gst_value_get_fraction_denominator (par); - } - - fps = gst_structure_get_value (structure, "framerate"); - if (fps != NULL) { - divxdec->fps_n = gst_value_get_fraction_numerator (fps); - divxdec->fps_d = gst_value_get_fraction_denominator (fps); - } else { - divxdec->fps_n = -1; - } - - ret = gst_divxdec_negotiate (divxdec); - gst_object_unref (divxdec); - - return ret; -} - -static GstStateChangeReturn -gst_divxdec_change_state (GstElement * element, GstStateChange transition) -{ - GstStateChangeReturn ret; - - switch (transition) { - case GST_STATE_CHANGE_NULL_TO_READY: - break; - case GST_STATE_CHANGE_PAUSED_TO_PLAYING: - break; - default: - break; - } - - ret = parent_class->change_state (element, transition); - - switch (transition) { - case GST_STATE_CHANGE_PLAYING_TO_PAUSED: - break; - case GST_STATE_CHANGE_PAUSED_TO_READY: - break; - case GST_STATE_CHANGE_READY_TO_NULL: - break; - default: - break; - } - - return ret; -} - - -static gboolean -plugin_init (GstPlugin * plugin) -{ - int lib_version; - - lib_version = decore (NULL, DEC_OPT_VERSION, 0, 0); - if (lib_version != DECORE_VERSION) { - g_warning ("Version mismatch! This plugin was compiled for " - "DivX version %d, while your library has version %d!", - DECORE_VERSION, lib_version); - return FALSE; - } - - return gst_element_register (plugin, "divxdec", - GST_RANK_SECONDARY, GST_TYPE_DIVXDEC); -} - - -GST_PLUGIN_DEFINE (GST_VERSION_MAJOR, - GST_VERSION_MINOR, - divxdec, - "DivX decoder", - plugin_init, - "5.03", GST_LICENSE_UNKNOWN, "divx4linux", "http://www.divx.com/"); diff --git a/ext/divx/gstdivxdec.h b/ext/divx/gstdivxdec.h deleted file mode 100644 index 24819ebc..00000000 --- a/ext/divx/gstdivxdec.h +++ /dev/null @@ -1,74 +0,0 @@ -/* GStreamer divx decoder plugin - * Copyright (C) 2003 Ronald Bultje <rbultje@ronald.bitfreak.net> - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Library General Public - * License as published by the Free Software Foundation; either - * version 2 of the License, or (at your option) any later version. - * - * This library 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 - * Library General Public License for more details. - * - * You should have received a copy of the GNU Library General Public - * License along with this library; if not, write to the - * Free Software Foundation, Inc., 59 Temple Place - Suite 330, - * Boston, MA 02111-1307, USA. - */ - -#ifndef __GST_DIVXDEC_H__ -#define __GST_DIVXDEC_H__ - -#include <gst/gst.h> -#include <decore.h> - -#ifdef __cplusplus -extern "C" { -#endif /* __cplusplus */ - - -#define GST_TYPE_DIVXDEC \ - (gst_divxdec_get_type()) -#define GST_DIVXDEC(obj) \ - (G_TYPE_CHECK_INSTANCE_CAST((obj), GST_TYPE_DIVXDEC, GstDivxDec)) -#define GST_DIVXDEC_CLASS(klass) \ - (G_TYPE_CHECK_CLASS_CAST((klass), GST_TYPE_DIVXDEC, GstDivxDecClass)) -#define GST_IS_DIVXDEC(obj) \ - (G_TYPE_CHECK_INSTANCE_TYPE((obj), GST_TYPE_DIVXDEC)) -#define GST_IS_DIVXDEC_CLASS(klass) \ - (G_TYPE_CHECK_CLASS_TYPE((klass), GST_TYPE_DIVXDEC)) - -typedef struct _GstDivxDec GstDivxDec; -typedef struct _GstDivxDecClass GstDivxDecClass; - -struct _GstDivxDec { - GstElement element; - - /* pads */ - GstPad *sinkpad, *srcpad; - - /* divx handle */ - void *handle; - - /* video (output) settings */ - guint32 csp; - int bitcnt, bpp; - int version; - int width, height; - - gint fps_n, fps_d; - gint par_n, par_d; -}; - -struct _GstDivxDecClass { - GstElementClass parent_class; -}; - -GType gst_divxdec_get_type(void); - -#ifdef __cplusplus -} -#endif /* __cplusplus */ - -#endif /* __GST_DIVXDEC_H__ */ diff --git a/ext/divx/gstdivxenc.c b/ext/divx/gstdivxenc.c deleted file mode 100644 index f2c66bd4..00000000 --- a/ext/divx/gstdivxenc.c +++ /dev/null @@ -1,544 +0,0 @@ -/* GStreamer divx encoder plugin - * Copyright (C) 2003 Ronald Bultje <rbultje@ronald.bitfreak.net> - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Library General Public - * License as published by the Free Software Foundation; either - * version 2 of the License, or (at your option) any later version. - * - * This library 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 - * Library General Public License for more details. - * - * You should have received a copy of the GNU Library General Public - * License along with this library; if not, write to the - * Free Software Foundation, Inc., 59 Temple Place - Suite 330, - * Boston, MA 02111-1307, USA. - */ - -#ifdef HAVE_CONFIG_H -#include "config.h" -#endif - -#include <string.h> -#include "gstdivxenc.h" -#include <gst/video/video.h> -#include <encore2.h> - -static GstStaticPadTemplate sink_template = GST_STATIC_PAD_TEMPLATE ("sink", - GST_PAD_SINK, - GST_PAD_ALWAYS, - GST_STATIC_CAPS (GST_VIDEO_CAPS_YUV ("{ I420, YUY2, YV12, YVYU, UYVY }") - /* FIXME: 15/16/24/32bpp RGB */ - ) - ); - -static GstStaticPadTemplate src_template = GST_STATIC_PAD_TEMPLATE ("src", - GST_PAD_SRC, - GST_PAD_ALWAYS, - GST_STATIC_CAPS ("video/x-divx, " - "divxversion = (int) 5, " - "width = (int) [ 16, 4096 ], " - "height = (int) [ 16, 4096 ], " "framerate = (fraction) [0/1, MAX]") - ); - - -/* DivxEnc signals and args */ -enum -{ - FRAME_ENCODED, - LAST_SIGNAL -}; - -enum -{ - ARG_0, - ARG_BITRATE, - ARG_MAXKEYINTERVAL, - ARG_BUFSIZE, - ARG_QUALITY -}; - - -static void gst_divxenc_class_init (GstDivxEncClass * klass); -static void gst_divxenc_base_init (GstDivxEncClass * klass); -static void gst_divxenc_init (GstDivxEnc * divxenc); -static void gst_divxenc_dispose (GObject * object); -static GstFlowReturn gst_divxenc_chain (GstPad * pad, GstBuffer * buf); -static gboolean gst_divxenc_setcaps (GstPad * pad, GstCaps * caps); - -/* properties */ -static void gst_divxenc_set_property (GObject * object, - guint prop_id, const GValue * value, GParamSpec * pspec); -static void gst_divxenc_get_property (GObject * object, - guint prop_id, GValue * value, GParamSpec * pspec); - -static GstElementClass *parent_class = NULL; -static guint gst_divxenc_signals[LAST_SIGNAL] = { 0 }; - - -static const gchar * -gst_divxenc_error (int errorcode) -{ - const gchar *error; - - switch (errorcode) { - case ENC_BUFFER: - error = "Invalid buffer"; - break; - case ENC_FAIL: - error = "Operation failed"; - break; - case ENC_OK: - error = "No error"; - break; - case ENC_MEMORY: - error = "Bad memory location"; - break; - case ENC_BAD_FORMAT: - error = "Invalid format"; - break; - case ENC_INTERNAL: - error = "Internal error"; - break; - default: - error = "Unknown error"; - break; - } - - return error; -} - - -GType -gst_divxenc_get_type (void) -{ - static GType divxenc_type = 0; - - if (!divxenc_type) { - static const GTypeInfo divxenc_info = { - sizeof (GstDivxEncClass), - (GBaseInitFunc) gst_divxenc_base_init, - NULL, - (GClassInitFunc) gst_divxenc_class_init, - NULL, - NULL, - sizeof (GstDivxEnc), - 0, - (GInstanceInitFunc) gst_divxenc_init, - }; - - divxenc_type = g_type_register_static (GST_TYPE_ELEMENT, - "GstDivxEnc", &divxenc_info, 0); - } - return divxenc_type; -} - - -static void -gst_divxenc_base_init (GstDivxEncClass * klass) -{ - GstElementClass *element_class = GST_ELEMENT_CLASS (klass); - - gst_element_class_add_pad_template (element_class, - gst_static_pad_template_get (&sink_template)); - gst_element_class_add_pad_template (element_class, - gst_static_pad_template_get (&src_template)); - - gst_element_class_set_details_simple (element_class, - "Divx4linux video encoder", "Codec/Encoder/Video", - "Divx encoder based on divxencore", - "Ronald Bultje <rbultje@ronald.bitfreak.net>"); -} - - -static void -gst_divxenc_class_init (GstDivxEncClass * klass) -{ - GObjectClass *gobject_class = (GObjectClass *) klass; - - parent_class = g_type_class_peek_parent (klass); - - gobject_class->set_property = gst_divxenc_set_property; - gobject_class->get_property = gst_divxenc_get_property; - - g_object_class_install_property (G_OBJECT_CLASS (klass), ARG_BITRATE, - g_param_spec_ulong ("bitrate", "Bitrate", - "Target video bitrate", 0, G_MAXULONG, 0, - G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS)); - - g_object_class_install_property (G_OBJECT_CLASS (klass), ARG_MAXKEYINTERVAL, - g_param_spec_int ("max-key-interval", "Max. Key Interval", - "Maximum number of frames between two keyframes", - -1, G_MAXINT, -1, G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS)); - - g_object_class_install_property (G_OBJECT_CLASS (klass), ARG_BUFSIZE, - g_param_spec_ulong ("buffer-size", "Buffer Size", - "Size of the video buffers", 0, G_MAXULONG, 0, - G_PARAM_READABLE | G_PARAM_STATIC_STRINGS)); - - g_object_class_install_property (G_OBJECT_CLASS (klass), ARG_QUALITY, - g_param_spec_int ("quality", "Quality", - "Amount of Motion Estimation", 1, 5, 3, - G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS)); - - gobject_class->dispose = gst_divxenc_dispose; - - gst_divxenc_signals[FRAME_ENCODED] = - g_signal_new ("frame-encoded", G_TYPE_FROM_CLASS (klass), - G_SIGNAL_RUN_LAST, - G_STRUCT_OFFSET (GstDivxEncClass, frame_encoded), - NULL, NULL, g_cclosure_marshal_VOID__VOID, G_TYPE_NONE, 0); -} - - -static void -gst_divxenc_init (GstDivxEnc * divxenc) -{ - /* create the sink pad */ - divxenc->sinkpad = gst_pad_new_from_static_template (&sink_template, "sink"); - gst_element_add_pad (GST_ELEMENT (divxenc), divxenc->sinkpad); - - gst_pad_set_chain_function (divxenc->sinkpad, gst_divxenc_chain); - gst_pad_set_setcaps_function (divxenc->sinkpad, gst_divxenc_setcaps); - - /* create the src pad */ - divxenc->srcpad = gst_pad_new_from_static_template (&src_template, "src"); - gst_pad_use_fixed_caps (divxenc->srcpad); - gst_element_add_pad (GST_ELEMENT (divxenc), divxenc->srcpad); - - /* bitrate, etc. */ - divxenc->width = divxenc->height = divxenc->csp = divxenc->bitcnt = -1; - divxenc->bitrate = 512 * 1024; - divxenc->max_key_interval = -1; /* default - 2*fps */ - divxenc->buffer_size = 512 * 1024; - divxenc->quality = 3; - - /* set divx handle to NULL */ - divxenc->handle = NULL; -} - - -static gboolean -gst_divxenc_setup (GstDivxEnc * divxenc) -{ - void *handle = NULL; - SETTINGS output; - DivXBitmapInfoHeader input; - int ret; - - /* set it up */ - memset (&input, 0, sizeof (DivXBitmapInfoHeader)); - input.biSize = sizeof (DivXBitmapInfoHeader); - input.biWidth = divxenc->width; - input.biHeight = divxenc->height; - input.biBitCount = divxenc->bitcnt; - input.biCompression = divxenc->csp; - - memset (&output, 0, sizeof (SETTINGS)); - output.vbr_mode = RCMODE_VBV_1PASS; - output.bitrate = divxenc->bitrate; - output.quantizer = 0; - output.use_bidirect = 1; - output.input_clock = 0; - output.input_frame_period = 1000000; - output.internal_timescale = (divxenc->fps_n / divxenc->fps_d) * 1000000; /* FIX? */ - output.max_key_interval = (divxenc->max_key_interval == -1) ? - 150 : divxenc->max_key_interval; - output.key_frame_threshold = 50; - output.vbv_bitrate = 0; - output.vbv_size = 0; - output.vbv_occupancy = 0; - output.complexity_modulation = 0; - output.deinterlace = 0; - output.quality = divxenc->quality; - output.data_partitioning = 0; - output.quarter_pel = 1; - output.use_gmc = 1; - output.psychovisual = 0; - output.pv_strength_frame = 0; - output.pv_strength_MB = 0; - output.interlace_mode = 0; - output.enable_crop = 0; - output.enable_resize = 0; - output.temporal_enable = 1; - output.spatial_passes = 3; - output.spatial_level = 1.0; - output.temporal_level = 1.0; - - if ((ret = encore (&handle, ENC_OPT_INIT, &input, &output))) { - GST_ELEMENT_ERROR (divxenc, LIBRARY, SETTINGS, (NULL), - ("Error setting up divx encoder: %s (%d)", - gst_divxenc_error (ret), ret)); - return FALSE; - } - - divxenc->handle = handle; - - /* set buffer size to theoretical limit (see docs on divx.com) */ - divxenc->buffer_size = 6 * divxenc->width * divxenc->height; - - return TRUE; -} - - -static void -gst_divxenc_unset (GstDivxEnc * divxenc) -{ - if (divxenc->handle) { - encore (divxenc->handle, ENC_OPT_RELEASE, NULL, NULL); - divxenc->handle = NULL; - } -} - - -static void -gst_divxenc_dispose (GObject * object) -{ - GstDivxEnc *divxenc = GST_DIVXENC (object); - - gst_divxenc_unset (divxenc); - G_OBJECT_CLASS (parent_class)->dispose (object); -} - - -static GstFlowReturn -gst_divxenc_chain (GstPad * pad, GstBuffer * buf) -{ - GstDivxEnc *divxenc; - GstBuffer *outbuf; - ENC_FRAME xframe; - ENC_RESULT xres; - int res; - GstFlowReturn ret = GST_FLOW_OK; - - divxenc = GST_DIVXENC (gst_pad_get_parent (pad)); - - outbuf = gst_buffer_new_and_alloc (divxenc->buffer_size); - GST_BUFFER_TIMESTAMP (outbuf) = GST_BUFFER_TIMESTAMP (buf); - - /* encode and so ... */ - xframe.image = GST_BUFFER_DATA (buf); - xframe.bitstream = (void *) GST_BUFFER_DATA (outbuf); - xframe.length = GST_BUFFER_SIZE (outbuf); /* GST_BUFFER_MAXSIZE */ - xframe.produce_empty_frame = 0; - - if ((res = encore (divxenc->handle, ENC_OPT_ENCODE, &xframe, &xres))) { - goto not_encoding; - } - - GST_BUFFER_SIZE (outbuf) = xframe.length; - - /* go out, multiply! */ - gst_buffer_set_caps (outbuf, GST_PAD_CAPS (divxenc->srcpad)); - gst_pad_push (divxenc->srcpad, outbuf); - - /* proclaim destiny */ - g_signal_emit (G_OBJECT (divxenc), gst_divxenc_signals[FRAME_ENCODED], 0); - - /* until the final judgement */ - goto done; - -not_encoding: - - GST_ELEMENT_ERROR (divxenc, LIBRARY, ENCODE, (NULL), - ("Error encoding divx frame: %s (%d)", gst_divxenc_error (res), res)); - ret = GST_FLOW_ERROR; - gst_buffer_unref (outbuf); - goto done; - -done: - gst_buffer_unref (buf); - gst_object_unref (divxenc); - return ret; - -} - -/* FIXME: moving broken bits here for others to fix */ - /* someone fix RGB please */ -/* - case GST_MAKE_FOURCC ('R', 'G', 'B', ' '): - gst_caps_get_int (caps, "depth", &d); - switch (d) { - case 24: - divx_cs = 0; - bitcnt = 24; - break; - case 32: - divx_cs = 0; - bitcnt = 32; - break; -*/ - -static gboolean -gst_divxenc_setcaps (GstPad * pad, GstCaps * caps) -{ - GstDivxEnc *divxenc; - GstStructure *structure = gst_caps_get_structure (caps, 0); - gint w, h; - const GValue *fps; - guint32 fourcc; - guint32 divx_cs; - gint bitcnt = 0; - gboolean ret = FALSE; - - divxenc = GST_DIVXENC (gst_pad_get_parent (pad)); - - /* if there's something old around, remove it */ - gst_divxenc_unset (divxenc); - - gst_structure_get_int (structure, "width", &w); - gst_structure_get_int (structure, "height", &h); - gst_structure_get_fourcc (structure, "format", &fourcc); - - fps = gst_structure_get_value (structure, "framerate"); - if (fps != NULL && GST_VALUE_HOLDS_FRACTION (fps)) { - divxenc->fps_n = gst_value_get_fraction_numerator (fps); - divxenc->fps_d = gst_value_get_fraction_denominator (fps); - } else { - divxenc->fps_n = -1; - } - - switch (fourcc) { - case GST_MAKE_FOURCC ('I', '4', '2', '0'): - divx_cs = GST_MAKE_FOURCC ('I', '4', '2', '0'); - break; - case GST_MAKE_FOURCC ('Y', 'U', 'Y', '2'): - divx_cs = GST_MAKE_FOURCC ('Y', 'U', 'Y', '2'); - break; - case GST_MAKE_FOURCC ('Y', 'V', '1', '2'): - divx_cs = GST_MAKE_FOURCC ('Y', 'V', '1', '2'); - break; - case GST_MAKE_FOURCC ('Y', 'V', 'Y', 'U'): - divx_cs = GST_MAKE_FOURCC ('Y', 'V', 'Y', 'U'); - break; - case GST_MAKE_FOURCC ('U', 'Y', 'V', 'Y'): - divx_cs = GST_MAKE_FOURCC ('U', 'Y', 'V', 'Y'); - break; - default: - ret = FALSE; - goto done; - } - - divxenc->csp = divx_cs; - divxenc->bitcnt = bitcnt; - divxenc->width = w; - divxenc->height = h; - - /* try it */ - if (gst_divxenc_setup (divxenc)) { - GstCaps *new_caps = NULL; - - new_caps = gst_caps_new_simple ("video/x-divx", - "divxversion", G_TYPE_INT, 5, - "width", G_TYPE_INT, w, - "height", G_TYPE_INT, h, - "framerate", GST_TYPE_FRACTION, divxenc->fps_n, divxenc->fps_d, NULL); - - if (new_caps) { - - if (!gst_pad_set_caps (divxenc->srcpad, new_caps)) { - gst_divxenc_unset (divxenc); - ret = FALSE; - goto done; - } - gst_caps_unref (new_caps); - ret = TRUE; - goto done; - - } - - } - - /* if we got here - it's not good */ - - ret = FALSE; - -done: - gst_object_unref (divxenc); - return ret; -} - - -static void -gst_divxenc_set_property (GObject * object, - guint prop_id, const GValue * value, GParamSpec * pspec) -{ - GstDivxEnc *divxenc = GST_DIVXENC (object); - - GST_OBJECT_LOCK (divxenc); - - switch (prop_id) { - case ARG_BITRATE: - divxenc->bitrate = g_value_get_ulong (value); - break; - case ARG_MAXKEYINTERVAL: - divxenc->max_key_interval = g_value_get_int (value); - break; - case ARG_QUALITY: - divxenc->quality = g_value_get_int (value); - break; - default: - G_OBJECT_WARN_INVALID_PROPERTY_ID (object, prop_id, pspec); - break; - } - - GST_OBJECT_UNLOCK (divxenc); -} - - -static void -gst_divxenc_get_property (GObject * object, - guint prop_id, GValue * value, GParamSpec * pspec) -{ - GstDivxEnc *divxenc = GST_DIVXENC (object); - - GST_OBJECT_LOCK (divxenc); - - switch (prop_id) { - case ARG_BITRATE: - g_value_set_ulong (value, divxenc->bitrate); - break; - case ARG_BUFSIZE: - g_value_set_ulong (value, divxenc->buffer_size); - break; - case ARG_MAXKEYINTERVAL: - g_value_set_int (value, divxenc->max_key_interval); - break; - case ARG_QUALITY: - g_value_set_int (value, divxenc->quality); - break; - default: - G_OBJECT_WARN_INVALID_PROPERTY_ID (object, prop_id, pspec); - break; - } - - GST_OBJECT_UNLOCK (divxenc); -} - -static gboolean -plugin_init (GstPlugin * plugin) -{ - int lib_version; - - lib_version = encore (NULL, ENC_OPT_VERSION, 0, 0); - if (lib_version != ENCORE_VERSION) { - g_warning ("Version mismatch! This plugin was compiled for " - "DivX version %d, while your library has version %d!", - ENCORE_VERSION, lib_version); - return FALSE; - } - - /* create an elementfactory for the v4lmjpegsrcparse element */ - return gst_element_register (plugin, "divxenc", - GST_RANK_NONE, GST_TYPE_DIVXENC); -} - - -GST_PLUGIN_DEFINE (GST_VERSION_MAJOR, - GST_VERSION_MINOR, - divxenc, - "DivX encoder", - plugin_init, - "5.03", GST_LICENSE_UNKNOWN, "divx4linux", "http://www.divx.com/"); diff --git a/ext/divx/gstdivxenc.h b/ext/divx/gstdivxenc.h deleted file mode 100644 index b7bc1691..00000000 --- a/ext/divx/gstdivxenc.h +++ /dev/null @@ -1,83 +0,0 @@ -/* GStreamer divx encoder plugin - * Copyright (C) 2003 Ronald Bultje <rbultje@ronald.bitfreak.net> - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Library General Public - * License as published by the Free Software Foundation; either - * version 2 of the License, or (at your option) any later version. - * - * This library 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 - * Library General Public License for more details. - * - * You should have received a copy of the GNU Library General Public - * License along with this library; if not, write to the - * Free Software Foundation, Inc., 59 Temple Place - Suite 330, - * Boston, MA 02111-1307, USA. - */ - -#ifndef __GST_DIVXENC_H__ -#define __GST_DIVXENC_H__ - -#include <gst/gst.h> - -#ifdef __cplusplus -extern "C" { -#endif /* __cplusplus */ - - -#define GST_TYPE_DIVXENC \ - (gst_divxenc_get_type()) -#define GST_DIVXENC(obj) \ - (G_TYPE_CHECK_INSTANCE_CAST((obj), GST_TYPE_DIVXENC, GstDivxEnc)) -#define GST_DIVXENC_CLASS(klass) \ - (G_TYPE_CHECK_CLASS_CAST((klass), GST_TYPE_DIVXENC, GstDivxEncClass)) -#define GST_IS_DIVXENC(obj) \ - (G_TYPE_CHECK_INSTANCE_TYPE((obj), GST_TYPE_DIVXENC)) -#define GST_IS_DIVXENC_CLASS(klass) \ - (G_TYPE_CHECK_CLASS_TYPE((klass), GST_TYPE_DIVXENC)) - -typedef struct _GstDivxEnc GstDivxEnc; -typedef struct _GstDivxEncClass GstDivxEncClass; - -struct _GstDivxEnc { - GstElement element; - - /* pads */ - GstPad *sinkpad, *srcpad; - - /* quality of encoded image */ - gulong bitrate; - - /* size of the buffers */ - gulong buffer_size; - - /* max key interval */ - gint max_key_interval; - - /* amount of motion estimation to do */ - gint quality; - - /* divx handle */ - void *handle; - guint32 csp; - gint bitcnt; - gint width, height; - gint fps_n, fps_d; -}; - -struct _GstDivxEncClass { - GstElementClass parent_class; - - /* signals */ - void (*frame_encoded) (GstElement *element); -}; - -GType gst_divxenc_get_type(void); - -#ifdef __cplusplus -} -#endif /* __cplusplus */ - -#endif /* __GST_DIVXENC_H__ */ diff --git a/ext/dts/Makefile.in b/ext/dts/Makefile.in index 3347e73d..37b79f74 100644 --- a/ext/dts/Makefile.in +++ b/ext/dts/Makefile.in @@ -1,4 +1,4 @@ -# Makefile.in generated by automake 1.11.5 from Makefile.am. +# Makefile.in generated by automake 1.11.6 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, @@ -238,11 +238,10 @@ DIRECT3D_LIBS = @DIRECT3D_LIBS@ DIRECTDRAW_LIBS = @DIRECTDRAW_LIBS@ DIRECTFB_CFLAGS = @DIRECTFB_CFLAGS@ DIRECTFB_LIBS = @DIRECTFB_LIBS@ +DIRECTSHOW_LIBS = @DIRECTSHOW_LIBS@ DIRECTSOUND_LIBS = @DIRECTSOUND_LIBS@ DIRECTX_CFLAGS = @DIRECTX_CFLAGS@ DIRECTX_LDFLAGS = @DIRECTX_LDFLAGS@ -DIVXDEC_LIBS = @DIVXDEC_LIBS@ -DIVXENC_LIBS = @DIVXENC_LIBS@ DLLTOOL = @DLLTOOL@ DSYMUTIL = @DSYMUTIL@ DTS_LIBS = @DTS_LIBS@ @@ -277,7 +276,9 @@ GIO_LIBS = @GIO_LIBS@ GLIB_CFLAGS = @GLIB_CFLAGS@ GLIB_COMPILE_SCHEMAS = @GLIB_COMPILE_SCHEMAS@ GLIB_EXTRA_CFLAGS = @GLIB_EXTRA_CFLAGS@ +GLIB_GENMARSHAL = @GLIB_GENMARSHAL@ GLIB_LIBS = @GLIB_LIBS@ +GLIB_MKENUMS = @GLIB_MKENUMS@ GLIB_PREFIX = @GLIB_PREFIX@ GLIB_REQ = @GLIB_REQ@ GME_LIBS = @GME_LIBS@ @@ -353,13 +354,14 @@ HAVE_CXX = @HAVE_CXX@ HAVE_DIRECT3D = @HAVE_DIRECT3D@ HAVE_DIRECT3D9 = @HAVE_DIRECT3D9@ HAVE_DIRECTDRAW = @HAVE_DIRECTDRAW@ +HAVE_DIRECTSHOW = @HAVE_DIRECTSHOW@ HAVE_DIRECTSOUND = @HAVE_DIRECTSOUND@ HAVE_DTS = @HAVE_DTS@ HAVE_FAAC = @HAVE_FAAC@ HAVE_FAAD = @HAVE_FAAD@ HAVE_FLITE = @HAVE_FLITE@ HAVE_GSM = @HAVE_GSM@ -HAVE_JP2K = @HAVE_JP2K@ +HAVE_JASPER = @HAVE_JASPER@ HAVE_NAS = @HAVE_NAS@ HAVE_VPX = @HAVE_VPX@ HAVE_WILDMIDI = @HAVE_WILDMIDI@ @@ -373,7 +375,7 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ INTLLIBS = @INTLLIBS@ INTL_MACOSX_LIBS = @INTL_MACOSX_LIBS@ -JP2K_LIBS = @JP2K_LIBS@ +JASPER_LIBS = @JASPER_LIBS@ KATE_CFLAGS = @KATE_CFLAGS@ KATE_LIBS = @KATE_LIBS@ LD = @LD@ @@ -409,6 +411,8 @@ MODPLUG_CFLAGS = @MODPLUG_CFLAGS@ MODPLUG_LIBS = @MODPLUG_LIBS@ MPEG2ENC_CFLAGS = @MPEG2ENC_CFLAGS@ MPEG2ENC_LIBS = @MPEG2ENC_LIBS@ +MPG123_CFLAGS = @MPG123_CFLAGS@ +MPG123_LIBS = @MPG123_LIBS@ MPLEX_CFLAGS = @MPLEX_CFLAGS@ MPLEX_LDFLAGS = @MPLEX_LDFLAGS@ MPLEX_LIBS = @MPLEX_LIBS@ diff --git a/ext/faac/Makefile.in b/ext/faac/Makefile.in index b6c5f9c6..1465bc03 100644 --- a/ext/faac/Makefile.in +++ b/ext/faac/Makefile.in @@ -1,4 +1,4 @@ -# Makefile.in generated by automake 1.11.5 from Makefile.am. +# Makefile.in generated by automake 1.11.6 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, @@ -237,11 +237,10 @@ DIRECT3D_LIBS = @DIRECT3D_LIBS@ DIRECTDRAW_LIBS = @DIRECTDRAW_LIBS@ DIRECTFB_CFLAGS = @DIRECTFB_CFLAGS@ DIRECTFB_LIBS = @DIRECTFB_LIBS@ +DIRECTSHOW_LIBS = @DIRECTSHOW_LIBS@ DIRECTSOUND_LIBS = @DIRECTSOUND_LIBS@ DIRECTX_CFLAGS = @DIRECTX_CFLAGS@ DIRECTX_LDFLAGS = @DIRECTX_LDFLAGS@ -DIVXDEC_LIBS = @DIVXDEC_LIBS@ -DIVXENC_LIBS = @DIVXENC_LIBS@ DLLTOOL = @DLLTOOL@ DSYMUTIL = @DSYMUTIL@ DTS_LIBS = @DTS_LIBS@ @@ -276,7 +275,9 @@ GIO_LIBS = @GIO_LIBS@ GLIB_CFLAGS = @GLIB_CFLAGS@ GLIB_COMPILE_SCHEMAS = @GLIB_COMPILE_SCHEMAS@ GLIB_EXTRA_CFLAGS = @GLIB_EXTRA_CFLAGS@ +GLIB_GENMARSHAL = @GLIB_GENMARSHAL@ GLIB_LIBS = @GLIB_LIBS@ +GLIB_MKENUMS = @GLIB_MKENUMS@ GLIB_PREFIX = @GLIB_PREFIX@ GLIB_REQ = @GLIB_REQ@ GME_LIBS = @GME_LIBS@ @@ -352,13 +353,14 @@ HAVE_CXX = @HAVE_CXX@ HAVE_DIRECT3D = @HAVE_DIRECT3D@ HAVE_DIRECT3D9 = @HAVE_DIRECT3D9@ HAVE_DIRECTDRAW = @HAVE_DIRECTDRAW@ +HAVE_DIRECTSHOW = @HAVE_DIRECTSHOW@ HAVE_DIRECTSOUND = @HAVE_DIRECTSOUND@ HAVE_DTS = @HAVE_DTS@ HAVE_FAAC = @HAVE_FAAC@ HAVE_FAAD = @HAVE_FAAD@ HAVE_FLITE = @HAVE_FLITE@ HAVE_GSM = @HAVE_GSM@ -HAVE_JP2K = @HAVE_JP2K@ +HAVE_JASPER = @HAVE_JASPER@ HAVE_NAS = @HAVE_NAS@ HAVE_VPX = @HAVE_VPX@ HAVE_WILDMIDI = @HAVE_WILDMIDI@ @@ -372,7 +374,7 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ INTLLIBS = @INTLLIBS@ INTL_MACOSX_LIBS = @INTL_MACOSX_LIBS@ -JP2K_LIBS = @JP2K_LIBS@ +JASPER_LIBS = @JASPER_LIBS@ KATE_CFLAGS = @KATE_CFLAGS@ KATE_LIBS = @KATE_LIBS@ LD = @LD@ @@ -408,6 +410,8 @@ MODPLUG_CFLAGS = @MODPLUG_CFLAGS@ MODPLUG_LIBS = @MODPLUG_LIBS@ MPEG2ENC_CFLAGS = @MPEG2ENC_CFLAGS@ MPEG2ENC_LIBS = @MPEG2ENC_LIBS@ +MPG123_CFLAGS = @MPG123_CFLAGS@ +MPG123_LIBS = @MPG123_LIBS@ MPLEX_CFLAGS = @MPLEX_CFLAGS@ MPLEX_LDFLAGS = @MPLEX_LDFLAGS@ MPLEX_LIBS = @MPLEX_LIBS@ diff --git a/ext/faac/gstfaac.c b/ext/faac/gstfaac.c index 2f55f40e..3425b493 100644 --- a/ext/faac/gstfaac.c +++ b/ext/faac/gstfaac.c @@ -359,7 +359,7 @@ gst_faac_getcaps (GstAudioEncoder * enc, GstCaps * filter) g_once_init_leave (&sinkcaps, (gsize) tmp); } - return gst_audio_encoder_proxy_getcaps (enc, (GstCaps *) sinkcaps); + return gst_audio_encoder_proxy_getcaps (enc, (GstCaps *) sinkcaps, filter); } static gboolean diff --git a/ext/faad/Makefile.in b/ext/faad/Makefile.in index 472bb06a..49a36a1c 100644 --- a/ext/faad/Makefile.in +++ b/ext/faad/Makefile.in @@ -1,4 +1,4 @@ -# Makefile.in generated by automake 1.11.5 from Makefile.am. +# Makefile.in generated by automake 1.11.6 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, @@ -238,11 +238,10 @@ DIRECT3D_LIBS = @DIRECT3D_LIBS@ DIRECTDRAW_LIBS = @DIRECTDRAW_LIBS@ DIRECTFB_CFLAGS = @DIRECTFB_CFLAGS@ DIRECTFB_LIBS = @DIRECTFB_LIBS@ +DIRECTSHOW_LIBS = @DIRECTSHOW_LIBS@ DIRECTSOUND_LIBS = @DIRECTSOUND_LIBS@ DIRECTX_CFLAGS = @DIRECTX_CFLAGS@ DIRECTX_LDFLAGS = @DIRECTX_LDFLAGS@ -DIVXDEC_LIBS = @DIVXDEC_LIBS@ -DIVXENC_LIBS = @DIVXENC_LIBS@ DLLTOOL = @DLLTOOL@ DSYMUTIL = @DSYMUTIL@ DTS_LIBS = @DTS_LIBS@ @@ -277,7 +276,9 @@ GIO_LIBS = @GIO_LIBS@ GLIB_CFLAGS = @GLIB_CFLAGS@ GLIB_COMPILE_SCHEMAS = @GLIB_COMPILE_SCHEMAS@ GLIB_EXTRA_CFLAGS = @GLIB_EXTRA_CFLAGS@ +GLIB_GENMARSHAL = @GLIB_GENMARSHAL@ GLIB_LIBS = @GLIB_LIBS@ +GLIB_MKENUMS = @GLIB_MKENUMS@ GLIB_PREFIX = @GLIB_PREFIX@ GLIB_REQ = @GLIB_REQ@ GME_LIBS = @GME_LIBS@ @@ -353,13 +354,14 @@ HAVE_CXX = @HAVE_CXX@ HAVE_DIRECT3D = @HAVE_DIRECT3D@ HAVE_DIRECT3D9 = @HAVE_DIRECT3D9@ HAVE_DIRECTDRAW = @HAVE_DIRECTDRAW@ +HAVE_DIRECTSHOW = @HAVE_DIRECTSHOW@ HAVE_DIRECTSOUND = @HAVE_DIRECTSOUND@ HAVE_DTS = @HAVE_DTS@ HAVE_FAAC = @HAVE_FAAC@ HAVE_FAAD = @HAVE_FAAD@ HAVE_FLITE = @HAVE_FLITE@ HAVE_GSM = @HAVE_GSM@ -HAVE_JP2K = @HAVE_JP2K@ +HAVE_JASPER = @HAVE_JASPER@ HAVE_NAS = @HAVE_NAS@ HAVE_VPX = @HAVE_VPX@ HAVE_WILDMIDI = @HAVE_WILDMIDI@ @@ -373,7 +375,7 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ INTLLIBS = @INTLLIBS@ INTL_MACOSX_LIBS = @INTL_MACOSX_LIBS@ -JP2K_LIBS = @JP2K_LIBS@ +JASPER_LIBS = @JASPER_LIBS@ KATE_CFLAGS = @KATE_CFLAGS@ KATE_LIBS = @KATE_LIBS@ LD = @LD@ @@ -409,6 +411,8 @@ MODPLUG_CFLAGS = @MODPLUG_CFLAGS@ MODPLUG_LIBS = @MODPLUG_LIBS@ MPEG2ENC_CFLAGS = @MPEG2ENC_CFLAGS@ MPEG2ENC_LIBS = @MPEG2ENC_LIBS@ +MPG123_CFLAGS = @MPG123_CFLAGS@ +MPG123_LIBS = @MPG123_LIBS@ MPLEX_CFLAGS = @MPLEX_CFLAGS@ MPLEX_LDFLAGS = @MPLEX_LDFLAGS@ MPLEX_LIBS = @MPLEX_LIBS@ diff --git a/ext/faad/gstfaad.c b/ext/faad/gstfaad.c index c6f1e42e..4434e403 100644 --- a/ext/faad/gstfaad.c +++ b/ext/faad/gstfaad.c @@ -732,7 +732,7 @@ init: info.error = 0; do { - GstMapInfo map; + GstMapInfo omap; if (!faad->packetised) { /* faad only really parses ADTS header at Init time, not when decoding, @@ -749,6 +749,9 @@ init: out = faacDecDecode (faad->handle, &info, input_data, input_size); + gst_buffer_unmap (buffer, &map); + buffer = NULL; + if (info.error > 0) { /* give up on frame and bail out */ gst_audio_decoder_finish_frame (dec, NULL, 1); @@ -775,11 +778,11 @@ init: /* FIXME, add bufferpool and allocator support to the base class */ outbuf = gst_buffer_new_allocate (NULL, info.samples * faad->bps, NULL); - gst_buffer_map (outbuf, &map, GST_MAP_READWRITE); + gst_buffer_map (outbuf, &omap, GST_MAP_READWRITE); if (faad->need_reorder) { gint16 *dest, *src, i, j; - dest = (gint16 *) map.data; + dest = (gint16 *) omap.data; src = (gint16 *) out; for (i = 0; i < samples; i++) { @@ -789,16 +792,17 @@ init: dest += channels; } } else { - memcpy (map.data, out, map.size); + memcpy (omap.data, out, omap.size); } - gst_buffer_unmap (outbuf, &map); + gst_buffer_unmap (outbuf, &omap); ret = gst_audio_decoder_finish_frame (dec, outbuf, 1); } } while (FALSE); out: - gst_buffer_unmap (buffer, &map); + if (buffer) + gst_buffer_unmap (buffer, &map); return ret; @@ -828,8 +832,6 @@ decode_failed: { GST_AUDIO_DECODER_ERROR (faad, 1, STREAM, DECODE, (NULL), ("decoding error: %s", faacDecGetErrorMessage (info.error)), ret); - if (ret == GST_FLOW_OK) - gst_audio_decoder_finish_frame (dec, NULL, 1); goto out; } negotiation_failed: diff --git a/ext/flite/Makefile.in b/ext/flite/Makefile.in index 117e864b..922cf5b3 100644 --- a/ext/flite/Makefile.in +++ b/ext/flite/Makefile.in @@ -1,4 +1,4 @@ -# Makefile.in generated by automake 1.11.5 from Makefile.am. +# Makefile.in generated by automake 1.11.6 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, @@ -236,11 +236,10 @@ DIRECT3D_LIBS = @DIRECT3D_LIBS@ DIRECTDRAW_LIBS = @DIRECTDRAW_LIBS@ DIRECTFB_CFLAGS = @DIRECTFB_CFLAGS@ DIRECTFB_LIBS = @DIRECTFB_LIBS@ +DIRECTSHOW_LIBS = @DIRECTSHOW_LIBS@ DIRECTSOUND_LIBS = @DIRECTSOUND_LIBS@ DIRECTX_CFLAGS = @DIRECTX_CFLAGS@ DIRECTX_LDFLAGS = @DIRECTX_LDFLAGS@ -DIVXDEC_LIBS = @DIVXDEC_LIBS@ -DIVXENC_LIBS = @DIVXENC_LIBS@ DLLTOOL = @DLLTOOL@ DSYMUTIL = @DSYMUTIL@ DTS_LIBS = @DTS_LIBS@ @@ -275,7 +274,9 @@ GIO_LIBS = @GIO_LIBS@ GLIB_CFLAGS = @GLIB_CFLAGS@ GLIB_COMPILE_SCHEMAS = @GLIB_COMPILE_SCHEMAS@ GLIB_EXTRA_CFLAGS = @GLIB_EXTRA_CFLAGS@ +GLIB_GENMARSHAL = @GLIB_GENMARSHAL@ GLIB_LIBS = @GLIB_LIBS@ +GLIB_MKENUMS = @GLIB_MKENUMS@ GLIB_PREFIX = @GLIB_PREFIX@ GLIB_REQ = @GLIB_REQ@ GME_LIBS = @GME_LIBS@ @@ -351,13 +352,14 @@ HAVE_CXX = @HAVE_CXX@ HAVE_DIRECT3D = @HAVE_DIRECT3D@ HAVE_DIRECT3D9 = @HAVE_DIRECT3D9@ HAVE_DIRECTDRAW = @HAVE_DIRECTDRAW@ +HAVE_DIRECTSHOW = @HAVE_DIRECTSHOW@ HAVE_DIRECTSOUND = @HAVE_DIRECTSOUND@ HAVE_DTS = @HAVE_DTS@ HAVE_FAAC = @HAVE_FAAC@ HAVE_FAAD = @HAVE_FAAD@ HAVE_FLITE = @HAVE_FLITE@ HAVE_GSM = @HAVE_GSM@ -HAVE_JP2K = @HAVE_JP2K@ +HAVE_JASPER = @HAVE_JASPER@ HAVE_NAS = @HAVE_NAS@ HAVE_VPX = @HAVE_VPX@ HAVE_WILDMIDI = @HAVE_WILDMIDI@ @@ -371,7 +373,7 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ INTLLIBS = @INTLLIBS@ INTL_MACOSX_LIBS = @INTL_MACOSX_LIBS@ -JP2K_LIBS = @JP2K_LIBS@ +JASPER_LIBS = @JASPER_LIBS@ KATE_CFLAGS = @KATE_CFLAGS@ KATE_LIBS = @KATE_LIBS@ LD = @LD@ @@ -407,6 +409,8 @@ MODPLUG_CFLAGS = @MODPLUG_CFLAGS@ MODPLUG_LIBS = @MODPLUG_LIBS@ MPEG2ENC_CFLAGS = @MPEG2ENC_CFLAGS@ MPEG2ENC_LIBS = @MPEG2ENC_LIBS@ +MPG123_CFLAGS = @MPG123_CFLAGS@ +MPG123_LIBS = @MPG123_LIBS@ MPLEX_CFLAGS = @MPLEX_CFLAGS@ MPLEX_LDFLAGS = @MPLEX_LDFLAGS@ MPLEX_LIBS = @MPLEX_LIBS@ diff --git a/ext/gme/Makefile.in b/ext/gme/Makefile.in index 67564573..705ee201 100644 --- a/ext/gme/Makefile.in +++ b/ext/gme/Makefile.in @@ -1,4 +1,4 @@ -# Makefile.in generated by automake 1.11.5 from Makefile.am. +# Makefile.in generated by automake 1.11.6 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, @@ -237,11 +237,10 @@ DIRECT3D_LIBS = @DIRECT3D_LIBS@ DIRECTDRAW_LIBS = @DIRECTDRAW_LIBS@ DIRECTFB_CFLAGS = @DIRECTFB_CFLAGS@ DIRECTFB_LIBS = @DIRECTFB_LIBS@ +DIRECTSHOW_LIBS = @DIRECTSHOW_LIBS@ DIRECTSOUND_LIBS = @DIRECTSOUND_LIBS@ DIRECTX_CFLAGS = @DIRECTX_CFLAGS@ DIRECTX_LDFLAGS = @DIRECTX_LDFLAGS@ -DIVXDEC_LIBS = @DIVXDEC_LIBS@ -DIVXENC_LIBS = @DIVXENC_LIBS@ DLLTOOL = @DLLTOOL@ DSYMUTIL = @DSYMUTIL@ DTS_LIBS = @DTS_LIBS@ @@ -276,7 +275,9 @@ GIO_LIBS = @GIO_LIBS@ GLIB_CFLAGS = @GLIB_CFLAGS@ GLIB_COMPILE_SCHEMAS = @GLIB_COMPILE_SCHEMAS@ GLIB_EXTRA_CFLAGS = @GLIB_EXTRA_CFLAGS@ +GLIB_GENMARSHAL = @GLIB_GENMARSHAL@ GLIB_LIBS = @GLIB_LIBS@ +GLIB_MKENUMS = @GLIB_MKENUMS@ GLIB_PREFIX = @GLIB_PREFIX@ GLIB_REQ = @GLIB_REQ@ GME_LIBS = @GME_LIBS@ @@ -352,13 +353,14 @@ HAVE_CXX = @HAVE_CXX@ HAVE_DIRECT3D = @HAVE_DIRECT3D@ HAVE_DIRECT3D9 = @HAVE_DIRECT3D9@ HAVE_DIRECTDRAW = @HAVE_DIRECTDRAW@ +HAVE_DIRECTSHOW = @HAVE_DIRECTSHOW@ HAVE_DIRECTSOUND = @HAVE_DIRECTSOUND@ HAVE_DTS = @HAVE_DTS@ HAVE_FAAC = @HAVE_FAAC@ HAVE_FAAD = @HAVE_FAAD@ HAVE_FLITE = @HAVE_FLITE@ HAVE_GSM = @HAVE_GSM@ -HAVE_JP2K = @HAVE_JP2K@ +HAVE_JASPER = @HAVE_JASPER@ HAVE_NAS = @HAVE_NAS@ HAVE_VPX = @HAVE_VPX@ HAVE_WILDMIDI = @HAVE_WILDMIDI@ @@ -372,7 +374,7 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ INTLLIBS = @INTLLIBS@ INTL_MACOSX_LIBS = @INTL_MACOSX_LIBS@ -JP2K_LIBS = @JP2K_LIBS@ +JASPER_LIBS = @JASPER_LIBS@ KATE_CFLAGS = @KATE_CFLAGS@ KATE_LIBS = @KATE_LIBS@ LD = @LD@ @@ -408,6 +410,8 @@ MODPLUG_CFLAGS = @MODPLUG_CFLAGS@ MODPLUG_LIBS = @MODPLUG_LIBS@ MPEG2ENC_CFLAGS = @MPEG2ENC_CFLAGS@ MPEG2ENC_LIBS = @MPEG2ENC_LIBS@ +MPG123_CFLAGS = @MPG123_CFLAGS@ +MPG123_LIBS = @MPG123_LIBS@ MPLEX_CFLAGS = @MPLEX_CFLAGS@ MPLEX_LDFLAGS = @MPLEX_LDFLAGS@ MPLEX_LIBS = @MPLEX_LIBS@ diff --git a/ext/gme/gstgme.c b/ext/gme/gstgme.c index d787dbaf..93c27756 100644 --- a/ext/gme/gstgme.c +++ b/ext/gme/gstgme.c @@ -256,7 +256,7 @@ gst_gme_dec_src_event (GstPad * pad, GstObject * parent, GstEvent * event) gme->seeking = TRUE; gst_pad_start_task (gme->srcpad, (GstTaskFunction) gst_gme_play, - gme->srcpad); + gme->srcpad, NULL); GST_PAD_STREAM_UNLOCK (gme->srcpad); result = TRUE; @@ -446,7 +446,7 @@ gme_setup (GstGmeDec * gme) gst_tag_list_add (taglist, GST_TAG_MERGE_REPLACE, GST_TAG_DURATION, total_duration, NULL); - gst_pad_push_event (gme->srcpad, gst_event_new_tag ("GstDecoder", taglist)); + gst_pad_push_event (gme->srcpad, gst_event_new_tag (taglist)); g_free (info); @@ -461,7 +461,8 @@ gme_setup (GstGmeDec * gme) gst_segment_init (&seg, GST_FORMAT_TIME); gst_pad_push_event (gme->srcpad, gst_event_new_segment (&seg)); - gst_pad_start_task (gme->srcpad, (GstTaskFunction) gst_gme_play, gme->srcpad); + gst_pad_start_task (gme->srcpad, (GstTaskFunction) gst_gme_play, gme->srcpad, + NULL); gme->initialized = TRUE; gme->seeking = FALSE; diff --git a/ext/gsettings/Makefile.in b/ext/gsettings/Makefile.in index c8d1035a..5d46ccb8 100644 --- a/ext/gsettings/Makefile.in +++ b/ext/gsettings/Makefile.in @@ -1,4 +1,4 @@ -# Makefile.in generated by automake 1.11.5 from Makefile.am. +# Makefile.in generated by automake 1.11.6 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, @@ -248,11 +248,10 @@ DIRECT3D_LIBS = @DIRECT3D_LIBS@ DIRECTDRAW_LIBS = @DIRECTDRAW_LIBS@ DIRECTFB_CFLAGS = @DIRECTFB_CFLAGS@ DIRECTFB_LIBS = @DIRECTFB_LIBS@ +DIRECTSHOW_LIBS = @DIRECTSHOW_LIBS@ DIRECTSOUND_LIBS = @DIRECTSOUND_LIBS@ DIRECTX_CFLAGS = @DIRECTX_CFLAGS@ DIRECTX_LDFLAGS = @DIRECTX_LDFLAGS@ -DIVXDEC_LIBS = @DIVXDEC_LIBS@ -DIVXENC_LIBS = @DIVXENC_LIBS@ DLLTOOL = @DLLTOOL@ DSYMUTIL = @DSYMUTIL@ DTS_LIBS = @DTS_LIBS@ @@ -287,7 +286,9 @@ GIO_LIBS = @GIO_LIBS@ GLIB_CFLAGS = @GLIB_CFLAGS@ GLIB_COMPILE_SCHEMAS = @GLIB_COMPILE_SCHEMAS@ GLIB_EXTRA_CFLAGS = @GLIB_EXTRA_CFLAGS@ +GLIB_GENMARSHAL = @GLIB_GENMARSHAL@ GLIB_LIBS = @GLIB_LIBS@ +GLIB_MKENUMS = @GLIB_MKENUMS@ GLIB_PREFIX = @GLIB_PREFIX@ GLIB_REQ = @GLIB_REQ@ GME_LIBS = @GME_LIBS@ @@ -363,13 +364,14 @@ HAVE_CXX = @HAVE_CXX@ HAVE_DIRECT3D = @HAVE_DIRECT3D@ HAVE_DIRECT3D9 = @HAVE_DIRECT3D9@ HAVE_DIRECTDRAW = @HAVE_DIRECTDRAW@ +HAVE_DIRECTSHOW = @HAVE_DIRECTSHOW@ HAVE_DIRECTSOUND = @HAVE_DIRECTSOUND@ HAVE_DTS = @HAVE_DTS@ HAVE_FAAC = @HAVE_FAAC@ HAVE_FAAD = @HAVE_FAAD@ HAVE_FLITE = @HAVE_FLITE@ HAVE_GSM = @HAVE_GSM@ -HAVE_JP2K = @HAVE_JP2K@ +HAVE_JASPER = @HAVE_JASPER@ HAVE_NAS = @HAVE_NAS@ HAVE_VPX = @HAVE_VPX@ HAVE_WILDMIDI = @HAVE_WILDMIDI@ @@ -383,7 +385,7 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ INTLLIBS = @INTLLIBS@ INTL_MACOSX_LIBS = @INTL_MACOSX_LIBS@ -JP2K_LIBS = @JP2K_LIBS@ +JASPER_LIBS = @JASPER_LIBS@ KATE_CFLAGS = @KATE_CFLAGS@ KATE_LIBS = @KATE_LIBS@ LD = @LD@ @@ -419,6 +421,8 @@ MODPLUG_CFLAGS = @MODPLUG_CFLAGS@ MODPLUG_LIBS = @MODPLUG_LIBS@ MPEG2ENC_CFLAGS = @MPEG2ENC_CFLAGS@ MPEG2ENC_LIBS = @MPEG2ENC_LIBS@ +MPG123_CFLAGS = @MPG123_CFLAGS@ +MPG123_LIBS = @MPG123_LIBS@ MPLEX_CFLAGS = @MPLEX_CFLAGS@ MPLEX_LDFLAGS = @MPLEX_LDFLAGS@ MPLEX_LIBS = @MPLEX_LIBS@ diff --git a/ext/gsm/Makefile.in b/ext/gsm/Makefile.in index 603cfd19..49827359 100644 --- a/ext/gsm/Makefile.in +++ b/ext/gsm/Makefile.in @@ -1,4 +1,4 @@ -# Makefile.in generated by automake 1.11.5 from Makefile.am. +# Makefile.in generated by automake 1.11.6 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, @@ -238,11 +238,10 @@ DIRECT3D_LIBS = @DIRECT3D_LIBS@ DIRECTDRAW_LIBS = @DIRECTDRAW_LIBS@ DIRECTFB_CFLAGS = @DIRECTFB_CFLAGS@ DIRECTFB_LIBS = @DIRECTFB_LIBS@ +DIRECTSHOW_LIBS = @DIRECTSHOW_LIBS@ DIRECTSOUND_LIBS = @DIRECTSOUND_LIBS@ DIRECTX_CFLAGS = @DIRECTX_CFLAGS@ DIRECTX_LDFLAGS = @DIRECTX_LDFLAGS@ -DIVXDEC_LIBS = @DIVXDEC_LIBS@ -DIVXENC_LIBS = @DIVXENC_LIBS@ DLLTOOL = @DLLTOOL@ DSYMUTIL = @DSYMUTIL@ DTS_LIBS = @DTS_LIBS@ @@ -277,7 +276,9 @@ GIO_LIBS = @GIO_LIBS@ GLIB_CFLAGS = @GLIB_CFLAGS@ GLIB_COMPILE_SCHEMAS = @GLIB_COMPILE_SCHEMAS@ GLIB_EXTRA_CFLAGS = @GLIB_EXTRA_CFLAGS@ +GLIB_GENMARSHAL = @GLIB_GENMARSHAL@ GLIB_LIBS = @GLIB_LIBS@ +GLIB_MKENUMS = @GLIB_MKENUMS@ GLIB_PREFIX = @GLIB_PREFIX@ GLIB_REQ = @GLIB_REQ@ GME_LIBS = @GME_LIBS@ @@ -353,13 +354,14 @@ HAVE_CXX = @HAVE_CXX@ HAVE_DIRECT3D = @HAVE_DIRECT3D@ HAVE_DIRECT3D9 = @HAVE_DIRECT3D9@ HAVE_DIRECTDRAW = @HAVE_DIRECTDRAW@ +HAVE_DIRECTSHOW = @HAVE_DIRECTSHOW@ HAVE_DIRECTSOUND = @HAVE_DIRECTSOUND@ HAVE_DTS = @HAVE_DTS@ HAVE_FAAC = @HAVE_FAAC@ HAVE_FAAD = @HAVE_FAAD@ HAVE_FLITE = @HAVE_FLITE@ HAVE_GSM = @HAVE_GSM@ -HAVE_JP2K = @HAVE_JP2K@ +HAVE_JASPER = @HAVE_JASPER@ HAVE_NAS = @HAVE_NAS@ HAVE_VPX = @HAVE_VPX@ HAVE_WILDMIDI = @HAVE_WILDMIDI@ @@ -373,7 +375,7 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ INTLLIBS = @INTLLIBS@ INTL_MACOSX_LIBS = @INTL_MACOSX_LIBS@ -JP2K_LIBS = @JP2K_LIBS@ +JASPER_LIBS = @JASPER_LIBS@ KATE_CFLAGS = @KATE_CFLAGS@ KATE_LIBS = @KATE_LIBS@ LD = @LD@ @@ -409,6 +411,8 @@ MODPLUG_CFLAGS = @MODPLUG_CFLAGS@ MODPLUG_LIBS = @MODPLUG_LIBS@ MPEG2ENC_CFLAGS = @MPEG2ENC_CFLAGS@ MPEG2ENC_LIBS = @MPEG2ENC_LIBS@ +MPG123_CFLAGS = @MPG123_CFLAGS@ +MPG123_LIBS = @MPG123_LIBS@ MPLEX_CFLAGS = @MPLEX_CFLAGS@ MPLEX_LDFLAGS = @MPLEX_LDFLAGS@ MPLEX_LIBS = @MPLEX_LIBS@ diff --git a/ext/jasper/Makefile.am b/ext/jasper/Makefile.am new file mode 100644 index 00000000..2be4c4bc --- /dev/null +++ b/ext/jasper/Makefile.am @@ -0,0 +1,14 @@ +plugin_LTLIBRARIES = libgstjasper.la + +libgstjasper_la_SOURCES = gstjasperdec.c gstjasperenc.c gstjasper.c +libgstjasper_la_CFLAGS = \ + $(GST_PLUGINS_BASE_CFLAGS) $(GST_CFLAGS) $(JASPER_CFLAGS) +libgstjasper_la_LIBADD = \ + $(GST_PLUGINS_BASE_LIBS) -lgstvideo-$(GST_API_VERSION) \ + $(GST_LIBS) $(JASPER_LIBS) +libgstjasper_la_LDFLAGS = $(GST_PLUGIN_LDFLAGS) +libgstjasper_la_LIBTOOLFLAGS = --tag=disable-static + +noinst_HEADERS = \ + gstjasperdec.h \ + gstjasperenc.h diff --git a/ext/jp2k/Makefile.in b/ext/jasper/Makefile.in index f014833e..d87007b1 100644 --- a/ext/jp2k/Makefile.in +++ b/ext/jasper/Makefile.in @@ -1,4 +1,4 @@ -# Makefile.in generated by automake 1.11.5 from Makefile.am. +# Makefile.in generated by automake 1.11.6 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, @@ -53,7 +53,7 @@ POST_UNINSTALL = : build_triplet = @build@ host_triplet = @host@ target_triplet = @target@ -subdir = ext/jp2k +subdir = ext/jasper DIST_COMMON = $(noinst_HEADERS) $(srcdir)/Makefile.am \ $(srcdir)/Makefile.in ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 @@ -127,18 +127,18 @@ am__uninstall_files_from_dir = { \ am__installdirs = "$(DESTDIR)$(plugindir)" LTLIBRARIES = $(plugin_LTLIBRARIES) am__DEPENDENCIES_1 = -libgstjp2k_la_DEPENDENCIES = $(am__DEPENDENCIES_1) \ +libgstjasper_la_DEPENDENCIES = $(am__DEPENDENCIES_1) \ $(am__DEPENDENCIES_1) $(am__DEPENDENCIES_1) -am_libgstjp2k_la_OBJECTS = libgstjp2k_la-gstjasperdec.lo \ - libgstjp2k_la-gstjasperenc.lo libgstjp2k_la-gstjp2k.lo -libgstjp2k_la_OBJECTS = $(am_libgstjp2k_la_OBJECTS) +am_libgstjasper_la_OBJECTS = libgstjasper_la-gstjasperdec.lo \ + libgstjasper_la-gstjasperenc.lo libgstjasper_la-gstjasper.lo +libgstjasper_la_OBJECTS = $(am_libgstjasper_la_OBJECTS) AM_V_lt = $(am__v_lt_@AM_V@) am__v_lt_ = $(am__v_lt_@AM_DEFAULT_V@) am__v_lt_0 = --silent -libgstjp2k_la_LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC \ - $(libgstjp2k_la_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=link \ - $(CCLD) $(libgstjp2k_la_CFLAGS) $(CFLAGS) \ - $(libgstjp2k_la_LDFLAGS) $(LDFLAGS) -o $@ +libgstjasper_la_LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC \ + $(libgstjasper_la_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=link \ + $(CCLD) $(libgstjasper_la_CFLAGS) $(CFLAGS) \ + $(libgstjasper_la_LDFLAGS) $(LDFLAGS) -o $@ DEFAULT_INCLUDES = -I.@am__isrc@ -I$(top_builddir) depcomp = $(SHELL) $(top_srcdir)/depcomp am__depfiles_maybe = depfiles @@ -165,8 +165,8 @@ am__v_CCLD_0 = @echo " CCLD " $@; AM_V_GEN = $(am__v_GEN_@AM_V@) am__v_GEN_ = $(am__v_GEN_@AM_DEFAULT_V@) am__v_GEN_0 = @echo " GEN " $@; -SOURCES = $(libgstjp2k_la_SOURCES) -DIST_SOURCES = $(libgstjp2k_la_SOURCES) +SOURCES = $(libgstjasper_la_SOURCES) +DIST_SOURCES = $(libgstjasper_la_SOURCES) am__can_run_installinfo = \ case $$AM_UPDATE_INFO_DIR in \ n|no|NO) false;; \ @@ -238,11 +238,10 @@ DIRECT3D_LIBS = @DIRECT3D_LIBS@ DIRECTDRAW_LIBS = @DIRECTDRAW_LIBS@ DIRECTFB_CFLAGS = @DIRECTFB_CFLAGS@ DIRECTFB_LIBS = @DIRECTFB_LIBS@ +DIRECTSHOW_LIBS = @DIRECTSHOW_LIBS@ DIRECTSOUND_LIBS = @DIRECTSOUND_LIBS@ DIRECTX_CFLAGS = @DIRECTX_CFLAGS@ DIRECTX_LDFLAGS = @DIRECTX_LDFLAGS@ -DIVXDEC_LIBS = @DIVXDEC_LIBS@ -DIVXENC_LIBS = @DIVXENC_LIBS@ DLLTOOL = @DLLTOOL@ DSYMUTIL = @DSYMUTIL@ DTS_LIBS = @DTS_LIBS@ @@ -277,7 +276,9 @@ GIO_LIBS = @GIO_LIBS@ GLIB_CFLAGS = @GLIB_CFLAGS@ GLIB_COMPILE_SCHEMAS = @GLIB_COMPILE_SCHEMAS@ GLIB_EXTRA_CFLAGS = @GLIB_EXTRA_CFLAGS@ +GLIB_GENMARSHAL = @GLIB_GENMARSHAL@ GLIB_LIBS = @GLIB_LIBS@ +GLIB_MKENUMS = @GLIB_MKENUMS@ GLIB_PREFIX = @GLIB_PREFIX@ GLIB_REQ = @GLIB_REQ@ GME_LIBS = @GME_LIBS@ @@ -353,13 +354,14 @@ HAVE_CXX = @HAVE_CXX@ HAVE_DIRECT3D = @HAVE_DIRECT3D@ HAVE_DIRECT3D9 = @HAVE_DIRECT3D9@ HAVE_DIRECTDRAW = @HAVE_DIRECTDRAW@ +HAVE_DIRECTSHOW = @HAVE_DIRECTSHOW@ HAVE_DIRECTSOUND = @HAVE_DIRECTSOUND@ HAVE_DTS = @HAVE_DTS@ HAVE_FAAC = @HAVE_FAAC@ HAVE_FAAD = @HAVE_FAAD@ HAVE_FLITE = @HAVE_FLITE@ HAVE_GSM = @HAVE_GSM@ -HAVE_JP2K = @HAVE_JP2K@ +HAVE_JASPER = @HAVE_JASPER@ HAVE_NAS = @HAVE_NAS@ HAVE_VPX = @HAVE_VPX@ HAVE_WILDMIDI = @HAVE_WILDMIDI@ @@ -373,7 +375,7 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ INTLLIBS = @INTLLIBS@ INTL_MACOSX_LIBS = @INTL_MACOSX_LIBS@ -JP2K_LIBS = @JP2K_LIBS@ +JASPER_LIBS = @JASPER_LIBS@ KATE_CFLAGS = @KATE_CFLAGS@ KATE_LIBS = @KATE_LIBS@ LD = @LD@ @@ -409,6 +411,8 @@ MODPLUG_CFLAGS = @MODPLUG_CFLAGS@ MODPLUG_LIBS = @MODPLUG_LIBS@ MPEG2ENC_CFLAGS = @MPEG2ENC_CFLAGS@ MPEG2ENC_LIBS = @MPEG2ENC_LIBS@ +MPG123_CFLAGS = @MPG123_CFLAGS@ +MPG123_LIBS = @MPG123_LIBS@ MPLEX_CFLAGS = @MPLEX_CFLAGS@ MPLEX_LDFLAGS = @MPLEX_LDFLAGS@ MPLEX_LIBS = @MPLEX_LIBS@ @@ -599,17 +603,17 @@ target_vendor = @target_vendor@ top_build_prefix = @top_build_prefix@ top_builddir = @top_builddir@ top_srcdir = @top_srcdir@ -plugin_LTLIBRARIES = libgstjp2k.la -libgstjp2k_la_SOURCES = gstjasperdec.c gstjasperenc.c gstjp2k.c -libgstjp2k_la_CFLAGS = \ - $(GST_PLUGINS_BASE_CFLAGS) $(GST_CFLAGS) $(JP2K_CFLAGS) +plugin_LTLIBRARIES = libgstjasper.la +libgstjasper_la_SOURCES = gstjasperdec.c gstjasperenc.c gstjasper.c +libgstjasper_la_CFLAGS = \ + $(GST_PLUGINS_BASE_CFLAGS) $(GST_CFLAGS) $(JASPER_CFLAGS) -libgstjp2k_la_LIBADD = \ +libgstjasper_la_LIBADD = \ $(GST_PLUGINS_BASE_LIBS) -lgstvideo-$(GST_API_VERSION) \ - $(GST_LIBS) $(JP2K_LIBS) + $(GST_LIBS) $(JASPER_LIBS) -libgstjp2k_la_LDFLAGS = $(GST_PLUGIN_LDFLAGS) -libgstjp2k_la_LIBTOOLFLAGS = --tag=disable-static +libgstjasper_la_LDFLAGS = $(GST_PLUGIN_LDFLAGS) +libgstjasper_la_LIBTOOLFLAGS = --tag=disable-static noinst_HEADERS = \ gstjasperdec.h \ gstjasperenc.h @@ -627,9 +631,9 @@ $(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(am__confi exit 1;; \ esac; \ done; \ - echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu ext/jp2k/Makefile'; \ + echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu ext/jasper/Makefile'; \ $(am__cd) $(top_srcdir) && \ - $(AUTOMAKE) --gnu ext/jp2k/Makefile + $(AUTOMAKE) --gnu ext/jasper/Makefile .PRECIOUS: Makefile Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status @case '$?' in \ @@ -680,8 +684,8 @@ clean-pluginLTLIBRARIES: echo "rm -f \"$${dir}/so_locations\""; \ rm -f "$${dir}/so_locations"; \ done -libgstjp2k.la: $(libgstjp2k_la_OBJECTS) $(libgstjp2k_la_DEPENDENCIES) $(EXTRA_libgstjp2k_la_DEPENDENCIES) - $(AM_V_CCLD)$(libgstjp2k_la_LINK) -rpath $(plugindir) $(libgstjp2k_la_OBJECTS) $(libgstjp2k_la_LIBADD) $(LIBS) +libgstjasper.la: $(libgstjasper_la_OBJECTS) $(libgstjasper_la_DEPENDENCIES) $(EXTRA_libgstjasper_la_DEPENDENCIES) + $(AM_V_CCLD)$(libgstjasper_la_LINK) -rpath $(plugindir) $(libgstjasper_la_OBJECTS) $(libgstjasper_la_LIBADD) $(LIBS) mostlyclean-compile: -rm -f *.$(OBJEXT) @@ -689,9 +693,9 @@ mostlyclean-compile: distclean-compile: -rm -f *.tab.c -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libgstjp2k_la-gstjasperdec.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libgstjp2k_la-gstjasperenc.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libgstjp2k_la-gstjp2k.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libgstjasper_la-gstjasper.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libgstjasper_la-gstjasperdec.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libgstjasper_la-gstjasperenc.Plo@am__quote@ .c.o: @am__fastdepCC_TRUE@ $(AM_V_CC)$(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $< @@ -714,26 +718,26 @@ distclean-compile: @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LTCOMPILE) -c -o $@ $< -libgstjp2k_la-gstjasperdec.lo: gstjasperdec.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(libgstjp2k_la_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libgstjp2k_la_CFLAGS) $(CFLAGS) -MT libgstjp2k_la-gstjasperdec.lo -MD -MP -MF $(DEPDIR)/libgstjp2k_la-gstjasperdec.Tpo -c -o libgstjp2k_la-gstjasperdec.lo `test -f 'gstjasperdec.c' || echo '$(srcdir)/'`gstjasperdec.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libgstjp2k_la-gstjasperdec.Tpo $(DEPDIR)/libgstjp2k_la-gstjasperdec.Plo -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='gstjasperdec.c' object='libgstjp2k_la-gstjasperdec.lo' libtool=yes @AMDEPBACKSLASH@ +libgstjasper_la-gstjasperdec.lo: gstjasperdec.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(libgstjasper_la_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libgstjasper_la_CFLAGS) $(CFLAGS) -MT libgstjasper_la-gstjasperdec.lo -MD -MP -MF $(DEPDIR)/libgstjasper_la-gstjasperdec.Tpo -c -o libgstjasper_la-gstjasperdec.lo `test -f 'gstjasperdec.c' || echo '$(srcdir)/'`gstjasperdec.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libgstjasper_la-gstjasperdec.Tpo $(DEPDIR)/libgstjasper_la-gstjasperdec.Plo +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='gstjasperdec.c' object='libgstjasper_la-gstjasperdec.lo' libtool=yes @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(libgstjp2k_la_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libgstjp2k_la_CFLAGS) $(CFLAGS) -c -o libgstjp2k_la-gstjasperdec.lo `test -f 'gstjasperdec.c' || echo '$(srcdir)/'`gstjasperdec.c +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(libgstjasper_la_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libgstjasper_la_CFLAGS) $(CFLAGS) -c -o libgstjasper_la-gstjasperdec.lo `test -f 'gstjasperdec.c' || echo '$(srcdir)/'`gstjasperdec.c -libgstjp2k_la-gstjasperenc.lo: gstjasperenc.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(libgstjp2k_la_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libgstjp2k_la_CFLAGS) $(CFLAGS) -MT libgstjp2k_la-gstjasperenc.lo -MD -MP -MF $(DEPDIR)/libgstjp2k_la-gstjasperenc.Tpo -c -o libgstjp2k_la-gstjasperenc.lo `test -f 'gstjasperenc.c' || echo '$(srcdir)/'`gstjasperenc.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libgstjp2k_la-gstjasperenc.Tpo $(DEPDIR)/libgstjp2k_la-gstjasperenc.Plo -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='gstjasperenc.c' object='libgstjp2k_la-gstjasperenc.lo' libtool=yes @AMDEPBACKSLASH@ +libgstjasper_la-gstjasperenc.lo: gstjasperenc.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(libgstjasper_la_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libgstjasper_la_CFLAGS) $(CFLAGS) -MT libgstjasper_la-gstjasperenc.lo -MD -MP -MF $(DEPDIR)/libgstjasper_la-gstjasperenc.Tpo -c -o libgstjasper_la-gstjasperenc.lo `test -f 'gstjasperenc.c' || echo '$(srcdir)/'`gstjasperenc.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libgstjasper_la-gstjasperenc.Tpo $(DEPDIR)/libgstjasper_la-gstjasperenc.Plo +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='gstjasperenc.c' object='libgstjasper_la-gstjasperenc.lo' libtool=yes @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(libgstjp2k_la_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libgstjp2k_la_CFLAGS) $(CFLAGS) -c -o libgstjp2k_la-gstjasperenc.lo `test -f 'gstjasperenc.c' || echo '$(srcdir)/'`gstjasperenc.c +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(libgstjasper_la_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libgstjasper_la_CFLAGS) $(CFLAGS) -c -o libgstjasper_la-gstjasperenc.lo `test -f 'gstjasperenc.c' || echo '$(srcdir)/'`gstjasperenc.c -libgstjp2k_la-gstjp2k.lo: gstjp2k.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(libgstjp2k_la_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libgstjp2k_la_CFLAGS) $(CFLAGS) -MT libgstjp2k_la-gstjp2k.lo -MD -MP -MF $(DEPDIR)/libgstjp2k_la-gstjp2k.Tpo -c -o libgstjp2k_la-gstjp2k.lo `test -f 'gstjp2k.c' || echo '$(srcdir)/'`gstjp2k.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libgstjp2k_la-gstjp2k.Tpo $(DEPDIR)/libgstjp2k_la-gstjp2k.Plo -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='gstjp2k.c' object='libgstjp2k_la-gstjp2k.lo' libtool=yes @AMDEPBACKSLASH@ +libgstjasper_la-gstjasper.lo: gstjasper.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(libgstjasper_la_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libgstjasper_la_CFLAGS) $(CFLAGS) -MT libgstjasper_la-gstjasper.lo -MD -MP -MF $(DEPDIR)/libgstjasper_la-gstjasper.Tpo -c -o libgstjasper_la-gstjasper.lo `test -f 'gstjasper.c' || echo '$(srcdir)/'`gstjasper.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libgstjasper_la-gstjasper.Tpo $(DEPDIR)/libgstjasper_la-gstjasper.Plo +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='gstjasper.c' object='libgstjasper_la-gstjasper.lo' libtool=yes @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(libgstjp2k_la_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libgstjp2k_la_CFLAGS) $(CFLAGS) -c -o libgstjp2k_la-gstjp2k.lo `test -f 'gstjp2k.c' || echo '$(srcdir)/'`gstjp2k.c +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(libgstjasper_la_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libgstjasper_la_CFLAGS) $(CFLAGS) -c -o libgstjasper_la-gstjasper.lo `test -f 'gstjasper.c' || echo '$(srcdir)/'`gstjasper.c mostlyclean-libtool: -rm -f *.lo diff --git a/ext/jp2k/gstjp2k.c b/ext/jasper/gstjasper.c index 5500aa91..14dbf4db 100644 --- a/ext/jp2k/gstjp2k.c +++ b/ext/jasper/gstjasper.c @@ -32,11 +32,11 @@ static gboolean plugin_init (GstPlugin * plugin) { - if (!gst_element_register (plugin, "jp2kdec", GST_RANK_MARGINAL, + if (!gst_element_register (plugin, "jasperdec", GST_RANK_MARGINAL, GST_TYPE_JASPER_DEC)) return FALSE; - if (!gst_element_register (plugin, "jp2kenc", GST_RANK_MARGINAL, + if (!gst_element_register (plugin, "jasperenc", GST_RANK_MARGINAL, GST_TYPE_JASPER_ENC)) return FALSE; @@ -49,6 +49,6 @@ plugin_init (GstPlugin * plugin) * so keep the name plugin_desc, or you cannot get your plug-in registered */ GST_PLUGIN_DEFINE (GST_VERSION_MAJOR, GST_VERSION_MINOR, - jp2k, + jasper, "Jasper-based JPEG2000 image decoder/encoder", plugin_init, VERSION, "LGPL", GST_PACKAGE_NAME, GST_PACKAGE_ORIGIN) diff --git a/ext/jp2k/gstjasperdec.c b/ext/jasper/gstjasperdec.c index 84de1d9f..4435077d 100644 --- a/ext/jp2k/gstjasperdec.c +++ b/ext/jasper/gstjasperdec.c @@ -85,10 +85,7 @@ static void gst_jasper_dec_read_qos (GstJasperDec * dec, gdouble * proportion, * keep original naming but use unique name here for a happy type system */ -typedef GstJasperDec GstJp2kDec; -typedef GstJasperDecClass GstJp2kDecClass; - -GST_BOILERPLATE (GstJp2kDec, gst_jasper_dec, GstElement, GST_TYPE_ELEMENT); +GST_BOILERPLATE (GstJasperDec, gst_jasper_dec, GstElement, GST_TYPE_ELEMENT); static void gst_jasper_dec_base_init (gpointer g_class) @@ -113,7 +110,7 @@ gst_jasper_dec_class_init (GstJasperDecClass * klass) gstelement_class = (GstElementClass *) klass; - GST_DEBUG_CATEGORY_INIT (gst_jasper_dec_debug, "jp2kdec", 0, + GST_DEBUG_CATEGORY_INIT (gst_jasper_dec_debug, "jasperdec", 0, "Jasper JPEG2000 decoder"); gstelement_class->change_state = diff --git a/ext/jp2k/gstjasperdec.h b/ext/jasper/gstjasperdec.h index cc0f3394..cc0f3394 100644 --- a/ext/jp2k/gstjasperdec.h +++ b/ext/jasper/gstjasperdec.h diff --git a/ext/jp2k/gstjasperenc.c b/ext/jasper/gstjasperenc.c index ae7b9256..13eb7ab8 100644 --- a/ext/jp2k/gstjasperenc.c +++ b/ext/jasper/gstjasperenc.c @@ -75,9 +75,6 @@ static GstFlowReturn gst_jasper_enc_chain (GstPad * pad, GstBuffer * buffer); * keep original naming but use unique name here for a happy type system */ -typedef GstJasperEnc GstJp2kEnc; -typedef GstJasperEncClass GstJp2kEncClass; - static void _do_init (GType object_type) { @@ -91,8 +88,8 @@ _do_init (GType object_type) &preset_interface_info); } -GST_BOILERPLATE_FULL (GstJp2kEnc, gst_jasper_enc, GstElement, GST_TYPE_ELEMENT, - _do_init); +GST_BOILERPLATE_FULL (GstJasperEnc, gst_jasper_enc, GstElement, + GST_TYPE_ELEMENT, _do_init); static void gst_jasper_enc_base_init (gpointer g_class) @@ -117,7 +114,7 @@ gst_jasper_enc_class_init (GstJasperEncClass * klass) gstelement_class = (GstElementClass *) klass; - GST_DEBUG_CATEGORY_INIT (gst_jasper_enc_debug, "jp2kenc", 0, + GST_DEBUG_CATEGORY_INIT (gst_jasper_enc_debug, "jasperenc", 0, "Jasper JPEG2000 encoder"); /* FIXME add some encoder properties */ diff --git a/ext/jp2k/gstjasperenc.h b/ext/jasper/gstjasperenc.h index 7cfd2fff..7cfd2fff 100644 --- a/ext/jp2k/gstjasperenc.h +++ b/ext/jasper/gstjasperenc.h diff --git a/ext/jp2k/Makefile.am b/ext/jp2k/Makefile.am deleted file mode 100644 index c5a9dc68..00000000 --- a/ext/jp2k/Makefile.am +++ /dev/null @@ -1,14 +0,0 @@ -plugin_LTLIBRARIES = libgstjp2k.la - -libgstjp2k_la_SOURCES = gstjasperdec.c gstjasperenc.c gstjp2k.c -libgstjp2k_la_CFLAGS = \ - $(GST_PLUGINS_BASE_CFLAGS) $(GST_CFLAGS) $(JP2K_CFLAGS) -libgstjp2k_la_LIBADD = \ - $(GST_PLUGINS_BASE_LIBS) -lgstvideo-$(GST_API_VERSION) \ - $(GST_LIBS) $(JP2K_LIBS) -libgstjp2k_la_LDFLAGS = $(GST_PLUGIN_LDFLAGS) -libgstjp2k_la_LIBTOOLFLAGS = --tag=disable-static - -noinst_HEADERS = \ - gstjasperdec.h \ - gstjasperenc.h
\ No newline at end of file diff --git a/ext/kate/Makefile.in b/ext/kate/Makefile.in index 0d9e0968..70a81a3c 100644 --- a/ext/kate/Makefile.in +++ b/ext/kate/Makefile.in @@ -1,4 +1,4 @@ -# Makefile.in generated by automake 1.11.5 from Makefile.am. +# Makefile.in generated by automake 1.11.6 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, @@ -249,11 +249,10 @@ DIRECT3D_LIBS = @DIRECT3D_LIBS@ DIRECTDRAW_LIBS = @DIRECTDRAW_LIBS@ DIRECTFB_CFLAGS = @DIRECTFB_CFLAGS@ DIRECTFB_LIBS = @DIRECTFB_LIBS@ +DIRECTSHOW_LIBS = @DIRECTSHOW_LIBS@ DIRECTSOUND_LIBS = @DIRECTSOUND_LIBS@ DIRECTX_CFLAGS = @DIRECTX_CFLAGS@ DIRECTX_LDFLAGS = @DIRECTX_LDFLAGS@ -DIVXDEC_LIBS = @DIVXDEC_LIBS@ -DIVXENC_LIBS = @DIVXENC_LIBS@ DLLTOOL = @DLLTOOL@ DSYMUTIL = @DSYMUTIL@ DTS_LIBS = @DTS_LIBS@ @@ -288,7 +287,9 @@ GIO_LIBS = @GIO_LIBS@ GLIB_CFLAGS = @GLIB_CFLAGS@ GLIB_COMPILE_SCHEMAS = @GLIB_COMPILE_SCHEMAS@ GLIB_EXTRA_CFLAGS = @GLIB_EXTRA_CFLAGS@ +GLIB_GENMARSHAL = @GLIB_GENMARSHAL@ GLIB_LIBS = @GLIB_LIBS@ +GLIB_MKENUMS = @GLIB_MKENUMS@ GLIB_PREFIX = @GLIB_PREFIX@ GLIB_REQ = @GLIB_REQ@ GME_LIBS = @GME_LIBS@ @@ -364,13 +365,14 @@ HAVE_CXX = @HAVE_CXX@ HAVE_DIRECT3D = @HAVE_DIRECT3D@ HAVE_DIRECT3D9 = @HAVE_DIRECT3D9@ HAVE_DIRECTDRAW = @HAVE_DIRECTDRAW@ +HAVE_DIRECTSHOW = @HAVE_DIRECTSHOW@ HAVE_DIRECTSOUND = @HAVE_DIRECTSOUND@ HAVE_DTS = @HAVE_DTS@ HAVE_FAAC = @HAVE_FAAC@ HAVE_FAAD = @HAVE_FAAD@ HAVE_FLITE = @HAVE_FLITE@ HAVE_GSM = @HAVE_GSM@ -HAVE_JP2K = @HAVE_JP2K@ +HAVE_JASPER = @HAVE_JASPER@ HAVE_NAS = @HAVE_NAS@ HAVE_VPX = @HAVE_VPX@ HAVE_WILDMIDI = @HAVE_WILDMIDI@ @@ -384,7 +386,7 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ INTLLIBS = @INTLLIBS@ INTL_MACOSX_LIBS = @INTL_MACOSX_LIBS@ -JP2K_LIBS = @JP2K_LIBS@ +JASPER_LIBS = @JASPER_LIBS@ KATE_CFLAGS = @KATE_CFLAGS@ KATE_LIBS = @KATE_LIBS@ LD = @LD@ @@ -420,6 +422,8 @@ MODPLUG_CFLAGS = @MODPLUG_CFLAGS@ MODPLUG_LIBS = @MODPLUG_LIBS@ MPEG2ENC_CFLAGS = @MPEG2ENC_CFLAGS@ MPEG2ENC_LIBS = @MPEG2ENC_LIBS@ +MPG123_CFLAGS = @MPG123_CFLAGS@ +MPG123_LIBS = @MPG123_LIBS@ MPLEX_CFLAGS = @MPLEX_CFLAGS@ MPLEX_LDFLAGS = @MPLEX_LDFLAGS@ MPLEX_LIBS = @MPLEX_LIBS@ diff --git a/ext/kate/gstkateenc.c b/ext/kate/gstkateenc.c index 1e03c359..fb84c4c1 100644 --- a/ext/kate/gstkateenc.c +++ b/ext/kate/gstkateenc.c @@ -497,7 +497,7 @@ gst_kate_enc_set_metadata (GstKateEnc * ke) if (merged_tags) { GST_DEBUG_OBJECT (ke, "merged tags = %" GST_PTR_FORMAT, merged_tags); gst_tag_list_foreach (merged_tags, gst_kate_enc_metadata_set1, ke); - gst_tag_list_free (merged_tags); + gst_tag_list_unref (merged_tags); } } @@ -1081,7 +1081,7 @@ gst_kate_enc_change_state (GstElement * element, GstStateChange transition) case GST_STATE_CHANGE_PAUSED_TO_PLAYING: break; case GST_STATE_CHANGE_READY_TO_NULL: - gst_tag_list_free (ke->tags); + gst_tag_list_unref (ke->tags); ke->tags = NULL; break; default: diff --git a/ext/kate/gstkatetag.c b/ext/kate/gstkatetag.c index 38e2a3c3..0f0f05d0 100644 --- a/ext/kate/gstkatetag.c +++ b/ext/kate/gstkatetag.c @@ -316,14 +316,14 @@ gst_kate_tag_parse_packet (GstKateParse * parse, GstBuffer * buffer) /* build new tag list */ new_tags = gst_tag_list_merge (user_tags, old_tags, gst_tag_setter_get_tag_merge_mode (GST_TAG_SETTER (kt))); - gst_tag_list_free (old_tags); + gst_tag_list_unref (old_tags); new_buf = gst_tag_list_to_vorbiscomment_buffer (new_tags, (const guint8 *) "\201kate\0\0\0\0", 9, encoder); gst_buffer_copy_into (new_buf, buffer, GST_BUFFER_COPY_TIMESTAMPS, 0, -1); - gst_tag_list_free (new_tags); + gst_tag_list_unref (new_tags); g_free (encoder); gst_buffer_unref (buffer); diff --git a/ext/kate/gstkateutil.c b/ext/kate/gstkateutil.c index d2815875..d4ca3112 100644 --- a/ext/kate/gstkateutil.c +++ b/ext/kate/gstkateutil.c @@ -129,7 +129,7 @@ gst_kate_util_decode_base_reset (GstKateDecoderBase * decoder) g_free (decoder->category); decoder->category = NULL; if (decoder->tags) { - gst_tag_list_free (decoder->tags); + gst_tag_list_unref (decoder->tags); decoder->tags = NULL; } decoder->original_canvas_width = 0; @@ -325,9 +325,9 @@ gst_kate_util_decoder_base_chain_kate_packet (GstKateDecoderBase * decoder, /* TODO: category - where should it go ? */ decoder->tags = gst_tag_list_merge (decoder->tags, tags, GST_TAG_MERGE_REPLACE); - gst_tag_list_free (tags); + gst_tag_list_unref (tags); if (old) - gst_tag_list_free (old); + gst_tag_list_unref (old); } } @@ -356,7 +356,7 @@ gst_kate_util_decoder_base_chain_kate_packet (GstKateDecoderBase * decoder, if (list) { decoder->tags = gst_tag_list_merge (decoder->tags, list, GST_TAG_MERGE_REPLACE); - gst_tag_list_free (list); + gst_tag_list_unref (list); } if (!decoder->tags) { @@ -375,7 +375,7 @@ gst_kate_util_decoder_base_chain_kate_packet (GstKateDecoderBase * decoder, NULL); if (old) - gst_tag_list_free (old); + gst_tag_list_unref (old); if (decoder->initialized) { gst_element_found_tags_for_pad (element, tagpad, decoder->tags); @@ -422,7 +422,7 @@ gst_kate_util_decoder_base_chain_kate_packet (GstKateDecoderBase * decoder, } } if (gst_tag_list_is_empty (evtags)) - gst_tag_list_free (evtags); + gst_tag_list_unref (evtags); else gst_element_found_tags_for_pad (element, tagpad, evtags); } diff --git a/ext/ladspa/Makefile.in b/ext/ladspa/Makefile.in index 6896fd55..da032ce0 100644 --- a/ext/ladspa/Makefile.in +++ b/ext/ladspa/Makefile.in @@ -1,4 +1,4 @@ -# Makefile.in generated by automake 1.11.5 from Makefile.am. +# Makefile.in generated by automake 1.11.6 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, @@ -238,11 +238,10 @@ DIRECT3D_LIBS = @DIRECT3D_LIBS@ DIRECTDRAW_LIBS = @DIRECTDRAW_LIBS@ DIRECTFB_CFLAGS = @DIRECTFB_CFLAGS@ DIRECTFB_LIBS = @DIRECTFB_LIBS@ +DIRECTSHOW_LIBS = @DIRECTSHOW_LIBS@ DIRECTSOUND_LIBS = @DIRECTSOUND_LIBS@ DIRECTX_CFLAGS = @DIRECTX_CFLAGS@ DIRECTX_LDFLAGS = @DIRECTX_LDFLAGS@ -DIVXDEC_LIBS = @DIVXDEC_LIBS@ -DIVXENC_LIBS = @DIVXENC_LIBS@ DLLTOOL = @DLLTOOL@ DSYMUTIL = @DSYMUTIL@ DTS_LIBS = @DTS_LIBS@ @@ -277,7 +276,9 @@ GIO_LIBS = @GIO_LIBS@ GLIB_CFLAGS = @GLIB_CFLAGS@ GLIB_COMPILE_SCHEMAS = @GLIB_COMPILE_SCHEMAS@ GLIB_EXTRA_CFLAGS = @GLIB_EXTRA_CFLAGS@ +GLIB_GENMARSHAL = @GLIB_GENMARSHAL@ GLIB_LIBS = @GLIB_LIBS@ +GLIB_MKENUMS = @GLIB_MKENUMS@ GLIB_PREFIX = @GLIB_PREFIX@ GLIB_REQ = @GLIB_REQ@ GME_LIBS = @GME_LIBS@ @@ -353,13 +354,14 @@ HAVE_CXX = @HAVE_CXX@ HAVE_DIRECT3D = @HAVE_DIRECT3D@ HAVE_DIRECT3D9 = @HAVE_DIRECT3D9@ HAVE_DIRECTDRAW = @HAVE_DIRECTDRAW@ +HAVE_DIRECTSHOW = @HAVE_DIRECTSHOW@ HAVE_DIRECTSOUND = @HAVE_DIRECTSOUND@ HAVE_DTS = @HAVE_DTS@ HAVE_FAAC = @HAVE_FAAC@ HAVE_FAAD = @HAVE_FAAD@ HAVE_FLITE = @HAVE_FLITE@ HAVE_GSM = @HAVE_GSM@ -HAVE_JP2K = @HAVE_JP2K@ +HAVE_JASPER = @HAVE_JASPER@ HAVE_NAS = @HAVE_NAS@ HAVE_VPX = @HAVE_VPX@ HAVE_WILDMIDI = @HAVE_WILDMIDI@ @@ -373,7 +375,7 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ INTLLIBS = @INTLLIBS@ INTL_MACOSX_LIBS = @INTL_MACOSX_LIBS@ -JP2K_LIBS = @JP2K_LIBS@ +JASPER_LIBS = @JASPER_LIBS@ KATE_CFLAGS = @KATE_CFLAGS@ KATE_LIBS = @KATE_LIBS@ LD = @LD@ @@ -409,6 +411,8 @@ MODPLUG_CFLAGS = @MODPLUG_CFLAGS@ MODPLUG_LIBS = @MODPLUG_LIBS@ MPEG2ENC_CFLAGS = @MPEG2ENC_CFLAGS@ MPEG2ENC_LIBS = @MPEG2ENC_LIBS@ +MPG123_CFLAGS = @MPG123_CFLAGS@ +MPG123_LIBS = @MPG123_LIBS@ MPLEX_CFLAGS = @MPLEX_CFLAGS@ MPLEX_LDFLAGS = @MPLEX_LDFLAGS@ MPLEX_LIBS = @MPLEX_LIBS@ diff --git a/ext/libmms/Makefile.in b/ext/libmms/Makefile.in index 8c9d4422..ffd43063 100644 --- a/ext/libmms/Makefile.in +++ b/ext/libmms/Makefile.in @@ -1,4 +1,4 @@ -# Makefile.in generated by automake 1.11.5 from Makefile.am. +# Makefile.in generated by automake 1.11.6 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, @@ -238,11 +238,10 @@ DIRECT3D_LIBS = @DIRECT3D_LIBS@ DIRECTDRAW_LIBS = @DIRECTDRAW_LIBS@ DIRECTFB_CFLAGS = @DIRECTFB_CFLAGS@ DIRECTFB_LIBS = @DIRECTFB_LIBS@ +DIRECTSHOW_LIBS = @DIRECTSHOW_LIBS@ DIRECTSOUND_LIBS = @DIRECTSOUND_LIBS@ DIRECTX_CFLAGS = @DIRECTX_CFLAGS@ DIRECTX_LDFLAGS = @DIRECTX_LDFLAGS@ -DIVXDEC_LIBS = @DIVXDEC_LIBS@ -DIVXENC_LIBS = @DIVXENC_LIBS@ DLLTOOL = @DLLTOOL@ DSYMUTIL = @DSYMUTIL@ DTS_LIBS = @DTS_LIBS@ @@ -277,7 +276,9 @@ GIO_LIBS = @GIO_LIBS@ GLIB_CFLAGS = @GLIB_CFLAGS@ GLIB_COMPILE_SCHEMAS = @GLIB_COMPILE_SCHEMAS@ GLIB_EXTRA_CFLAGS = @GLIB_EXTRA_CFLAGS@ +GLIB_GENMARSHAL = @GLIB_GENMARSHAL@ GLIB_LIBS = @GLIB_LIBS@ +GLIB_MKENUMS = @GLIB_MKENUMS@ GLIB_PREFIX = @GLIB_PREFIX@ GLIB_REQ = @GLIB_REQ@ GME_LIBS = @GME_LIBS@ @@ -353,13 +354,14 @@ HAVE_CXX = @HAVE_CXX@ HAVE_DIRECT3D = @HAVE_DIRECT3D@ HAVE_DIRECT3D9 = @HAVE_DIRECT3D9@ HAVE_DIRECTDRAW = @HAVE_DIRECTDRAW@ +HAVE_DIRECTSHOW = @HAVE_DIRECTSHOW@ HAVE_DIRECTSOUND = @HAVE_DIRECTSOUND@ HAVE_DTS = @HAVE_DTS@ HAVE_FAAC = @HAVE_FAAC@ HAVE_FAAD = @HAVE_FAAD@ HAVE_FLITE = @HAVE_FLITE@ HAVE_GSM = @HAVE_GSM@ -HAVE_JP2K = @HAVE_JP2K@ +HAVE_JASPER = @HAVE_JASPER@ HAVE_NAS = @HAVE_NAS@ HAVE_VPX = @HAVE_VPX@ HAVE_WILDMIDI = @HAVE_WILDMIDI@ @@ -373,7 +375,7 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ INTLLIBS = @INTLLIBS@ INTL_MACOSX_LIBS = @INTL_MACOSX_LIBS@ -JP2K_LIBS = @JP2K_LIBS@ +JASPER_LIBS = @JASPER_LIBS@ KATE_CFLAGS = @KATE_CFLAGS@ KATE_LIBS = @KATE_LIBS@ LD = @LD@ @@ -409,6 +411,8 @@ MODPLUG_CFLAGS = @MODPLUG_CFLAGS@ MODPLUG_LIBS = @MODPLUG_LIBS@ MPEG2ENC_CFLAGS = @MPEG2ENC_CFLAGS@ MPEG2ENC_LIBS = @MPEG2ENC_LIBS@ +MPG123_CFLAGS = @MPG123_CFLAGS@ +MPG123_LIBS = @MPG123_LIBS@ MPLEX_CFLAGS = @MPLEX_CFLAGS@ MPLEX_LDFLAGS = @MPLEX_LDFLAGS@ MPLEX_LIBS = @MPLEX_LIBS@ diff --git a/ext/lv2/Makefile.in b/ext/lv2/Makefile.in index 1c7152c8..c22f5f88 100644 --- a/ext/lv2/Makefile.in +++ b/ext/lv2/Makefile.in @@ -1,4 +1,4 @@ -# Makefile.in generated by automake 1.11.5 from Makefile.am. +# Makefile.in generated by automake 1.11.6 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, @@ -238,11 +238,10 @@ DIRECT3D_LIBS = @DIRECT3D_LIBS@ DIRECTDRAW_LIBS = @DIRECTDRAW_LIBS@ DIRECTFB_CFLAGS = @DIRECTFB_CFLAGS@ DIRECTFB_LIBS = @DIRECTFB_LIBS@ +DIRECTSHOW_LIBS = @DIRECTSHOW_LIBS@ DIRECTSOUND_LIBS = @DIRECTSOUND_LIBS@ DIRECTX_CFLAGS = @DIRECTX_CFLAGS@ DIRECTX_LDFLAGS = @DIRECTX_LDFLAGS@ -DIVXDEC_LIBS = @DIVXDEC_LIBS@ -DIVXENC_LIBS = @DIVXENC_LIBS@ DLLTOOL = @DLLTOOL@ DSYMUTIL = @DSYMUTIL@ DTS_LIBS = @DTS_LIBS@ @@ -277,7 +276,9 @@ GIO_LIBS = @GIO_LIBS@ GLIB_CFLAGS = @GLIB_CFLAGS@ GLIB_COMPILE_SCHEMAS = @GLIB_COMPILE_SCHEMAS@ GLIB_EXTRA_CFLAGS = @GLIB_EXTRA_CFLAGS@ +GLIB_GENMARSHAL = @GLIB_GENMARSHAL@ GLIB_LIBS = @GLIB_LIBS@ +GLIB_MKENUMS = @GLIB_MKENUMS@ GLIB_PREFIX = @GLIB_PREFIX@ GLIB_REQ = @GLIB_REQ@ GME_LIBS = @GME_LIBS@ @@ -353,13 +354,14 @@ HAVE_CXX = @HAVE_CXX@ HAVE_DIRECT3D = @HAVE_DIRECT3D@ HAVE_DIRECT3D9 = @HAVE_DIRECT3D9@ HAVE_DIRECTDRAW = @HAVE_DIRECTDRAW@ +HAVE_DIRECTSHOW = @HAVE_DIRECTSHOW@ HAVE_DIRECTSOUND = @HAVE_DIRECTSOUND@ HAVE_DTS = @HAVE_DTS@ HAVE_FAAC = @HAVE_FAAC@ HAVE_FAAD = @HAVE_FAAD@ HAVE_FLITE = @HAVE_FLITE@ HAVE_GSM = @HAVE_GSM@ -HAVE_JP2K = @HAVE_JP2K@ +HAVE_JASPER = @HAVE_JASPER@ HAVE_NAS = @HAVE_NAS@ HAVE_VPX = @HAVE_VPX@ HAVE_WILDMIDI = @HAVE_WILDMIDI@ @@ -373,7 +375,7 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ INTLLIBS = @INTLLIBS@ INTL_MACOSX_LIBS = @INTL_MACOSX_LIBS@ -JP2K_LIBS = @JP2K_LIBS@ +JASPER_LIBS = @JASPER_LIBS@ KATE_CFLAGS = @KATE_CFLAGS@ KATE_LIBS = @KATE_LIBS@ LD = @LD@ @@ -409,6 +411,8 @@ MODPLUG_CFLAGS = @MODPLUG_CFLAGS@ MODPLUG_LIBS = @MODPLUG_LIBS@ MPEG2ENC_CFLAGS = @MPEG2ENC_CFLAGS@ MPEG2ENC_LIBS = @MPEG2ENC_LIBS@ +MPG123_CFLAGS = @MPG123_CFLAGS@ +MPG123_LIBS = @MPG123_LIBS@ MPLEX_CFLAGS = @MPLEX_CFLAGS@ MPLEX_LDFLAGS = @MPLEX_LDFLAGS@ MPLEX_LIBS = @MPLEX_LIBS@ diff --git a/ext/mimic/Makefile.in b/ext/mimic/Makefile.in index c79e86a2..cc3387ae 100644 --- a/ext/mimic/Makefile.in +++ b/ext/mimic/Makefile.in @@ -1,4 +1,4 @@ -# Makefile.in generated by automake 1.11.5 from Makefile.am. +# Makefile.in generated by automake 1.11.6 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, @@ -238,11 +238,10 @@ DIRECT3D_LIBS = @DIRECT3D_LIBS@ DIRECTDRAW_LIBS = @DIRECTDRAW_LIBS@ DIRECTFB_CFLAGS = @DIRECTFB_CFLAGS@ DIRECTFB_LIBS = @DIRECTFB_LIBS@ +DIRECTSHOW_LIBS = @DIRECTSHOW_LIBS@ DIRECTSOUND_LIBS = @DIRECTSOUND_LIBS@ DIRECTX_CFLAGS = @DIRECTX_CFLAGS@ DIRECTX_LDFLAGS = @DIRECTX_LDFLAGS@ -DIVXDEC_LIBS = @DIVXDEC_LIBS@ -DIVXENC_LIBS = @DIVXENC_LIBS@ DLLTOOL = @DLLTOOL@ DSYMUTIL = @DSYMUTIL@ DTS_LIBS = @DTS_LIBS@ @@ -277,7 +276,9 @@ GIO_LIBS = @GIO_LIBS@ GLIB_CFLAGS = @GLIB_CFLAGS@ GLIB_COMPILE_SCHEMAS = @GLIB_COMPILE_SCHEMAS@ GLIB_EXTRA_CFLAGS = @GLIB_EXTRA_CFLAGS@ +GLIB_GENMARSHAL = @GLIB_GENMARSHAL@ GLIB_LIBS = @GLIB_LIBS@ +GLIB_MKENUMS = @GLIB_MKENUMS@ GLIB_PREFIX = @GLIB_PREFIX@ GLIB_REQ = @GLIB_REQ@ GME_LIBS = @GME_LIBS@ @@ -353,13 +354,14 @@ HAVE_CXX = @HAVE_CXX@ HAVE_DIRECT3D = @HAVE_DIRECT3D@ HAVE_DIRECT3D9 = @HAVE_DIRECT3D9@ HAVE_DIRECTDRAW = @HAVE_DIRECTDRAW@ +HAVE_DIRECTSHOW = @HAVE_DIRECTSHOW@ HAVE_DIRECTSOUND = @HAVE_DIRECTSOUND@ HAVE_DTS = @HAVE_DTS@ HAVE_FAAC = @HAVE_FAAC@ HAVE_FAAD = @HAVE_FAAD@ HAVE_FLITE = @HAVE_FLITE@ HAVE_GSM = @HAVE_GSM@ -HAVE_JP2K = @HAVE_JP2K@ +HAVE_JASPER = @HAVE_JASPER@ HAVE_NAS = @HAVE_NAS@ HAVE_VPX = @HAVE_VPX@ HAVE_WILDMIDI = @HAVE_WILDMIDI@ @@ -373,7 +375,7 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ INTLLIBS = @INTLLIBS@ INTL_MACOSX_LIBS = @INTL_MACOSX_LIBS@ -JP2K_LIBS = @JP2K_LIBS@ +JASPER_LIBS = @JASPER_LIBS@ KATE_CFLAGS = @KATE_CFLAGS@ KATE_LIBS = @KATE_LIBS@ LD = @LD@ @@ -409,6 +411,8 @@ MODPLUG_CFLAGS = @MODPLUG_CFLAGS@ MODPLUG_LIBS = @MODPLUG_LIBS@ MPEG2ENC_CFLAGS = @MPEG2ENC_CFLAGS@ MPEG2ENC_LIBS = @MPEG2ENC_LIBS@ +MPG123_CFLAGS = @MPG123_CFLAGS@ +MPG123_LIBS = @MPG123_LIBS@ MPLEX_CFLAGS = @MPLEX_CFLAGS@ MPLEX_LDFLAGS = @MPLEX_LDFLAGS@ MPLEX_LIBS = @MPLEX_LIBS@ diff --git a/ext/mimic/gstmimdec.c b/ext/mimic/gstmimdec.c index 623f7496..5029655b 100644 --- a/ext/mimic/gstmimdec.c +++ b/ext/mimic/gstmimdec.c @@ -51,48 +51,41 @@ static GstStaticPadTemplate sink_factory = GST_STATIC_PAD_TEMPLATE ("sink", static GstStaticPadTemplate src_factory = GST_STATIC_PAD_TEMPLATE ("src", GST_PAD_SRC, GST_PAD_ALWAYS, - GST_STATIC_CAPS ("video/x-raw-rgb, " - "bpp = (int) 24, " - "depth = (int) 24, " - "endianness = (int) 4321, " - "framerate = (fraction) 0/1, " - "red_mask = (int) 16711680, " - "green_mask = (int) 65280, " - "blue_mask = (int) 255, " - "width = (int) 320, " - "height = (int) 240" - ";video/x-raw-rgb, " - "bpp = (int) 24, " - "depth = (int) 24, " - "endianness = (int) 4321, " - "framerate = (fraction) 0/1, " - "red_mask = (int) 16711680, " - "green_mask = (int) 65280, " - "blue_mask = (int) 255, " "width = (int) 160, " "height = (int) 120") + GST_STATIC_CAPS ("video/x-raw, format= (string) \"RGB\", " + "framerate = (fraction) 0/1, width = (int) 320, height = (int) 240;" + "video/x-raw, format= (string) \"RGB\", " + "framerate = (fraction) 0/1, width = (int) 160, height = (int) 120") ); static void gst_mim_dec_finalize (GObject * object); -static GstFlowReturn gst_mim_dec_chain (GstPad * pad, GstBuffer * in); +static GstFlowReturn gst_mim_dec_chain (GstPad * pad, GstObject * parent, + GstBuffer * in); static GstStateChangeReturn gst_mim_dec_change_state (GstElement * element, GstStateChange transition); -static gboolean gst_mim_dec_sink_event (GstPad * pad, GstEvent * event); +static gboolean gst_mim_dec_sink_event (GstPad * pad, GstObject * parent, + GstEvent * event); -GST_BOILERPLATE (GstMimDec, gst_mim_dec, GstElement, GST_TYPE_ELEMENT); +G_DEFINE_TYPE (GstMimDec, gst_mim_dec, GST_TYPE_ELEMENT); static void -gst_mim_dec_base_init (gpointer klass) +gst_mim_dec_class_init (GstMimDecClass * klass) { - GstElementClass *element_class = GST_ELEMENT_CLASS (klass); + GObjectClass *gobject_class; + GstElementClass *gstelement_class; + + gobject_class = (GObjectClass *) klass; + gstelement_class = (GstElementClass *) klass; + gstelement_class->change_state = GST_DEBUG_FUNCPTR (gst_mim_dec_change_state); - gst_element_class_add_pad_template (element_class, + gst_element_class_add_pad_template (gstelement_class, gst_static_pad_template_get (&src_factory)); - gst_element_class_add_pad_template (element_class, + gst_element_class_add_pad_template (gstelement_class, gst_static_pad_template_get (&sink_factory)); - gst_element_class_set_details_simple (element_class, + gst_element_class_set_details_simple (gstelement_class, "Mimic Decoder", "Codec/Decoder/Video", "MSN Messenger compatible Mimic video decoder element", @@ -101,17 +94,6 @@ gst_mim_dec_base_init (gpointer klass) "Philippe Khalaf <burger@speedy.org>, " "Ole André Vadla Ravnås <oleavr@gmail.com>," "Olivier Crête <olivier.crete@collabora.co.uk"); -} - -static void -gst_mim_dec_class_init (GstMimDecClass * klass) -{ - GObjectClass *gobject_class; - GstElementClass *gstelement_class; - - gobject_class = (GObjectClass *) klass; - gstelement_class = (GstElementClass *) klass; - gstelement_class->change_state = GST_DEBUG_FUNCPTR (gst_mim_dec_change_state); gobject_class->finalize = gst_mim_dec_finalize; @@ -119,16 +101,18 @@ gst_mim_dec_class_init (GstMimDecClass * klass) } static void -gst_mim_dec_init (GstMimDec * mimdec, GstMimDecClass * klass) +gst_mim_dec_init (GstMimDec * mimdec) { mimdec->sinkpad = gst_pad_new_from_static_template (&sink_factory, "sink"); - gst_element_add_pad (GST_ELEMENT (mimdec), mimdec->sinkpad); + gst_pad_use_fixed_caps (mimdec->sinkpad); gst_pad_set_chain_function (mimdec->sinkpad, GST_DEBUG_FUNCPTR (gst_mim_dec_chain)); gst_pad_set_event_function (mimdec->sinkpad, GST_DEBUG_FUNCPTR (gst_mim_dec_sink_event)); + gst_element_add_pad (GST_ELEMENT (mimdec), mimdec->sinkpad); mimdec->srcpad = gst_pad_new_from_static_template (&src_factory, "src"); + gst_pad_use_fixed_caps (mimdec->srcpad); gst_element_add_pad (GST_ELEMENT (mimdec), mimdec->srcpad); mimdec->adapter = gst_adapter_new (); @@ -144,16 +128,15 @@ gst_mim_dec_finalize (GObject * object) gst_adapter_clear (mimdec->adapter); g_object_unref (mimdec->adapter); - - GST_CALL_PARENT (G_OBJECT_CLASS, finalize, (object)); + G_OBJECT_CLASS (gst_mim_dec_parent_class)->finalize (object); } static GstFlowReturn -gst_mim_dec_chain (GstPad * pad, GstBuffer * buf) +gst_mim_dec_chain (GstPad * pad, GstObject * parent, GstBuffer * buf) { - GstMimDec *mimdec; + GstMimDec *mimdec = GST_MIM_DEC (parent); GstBuffer *out_buf; - guchar *header, *frame_body; + const guchar *header, *frame_body; guint32 fourcc; guint16 header_size; gint width, height; @@ -164,93 +147,107 @@ gst_mim_dec_chain (GstPad * pad, GstBuffer * buf) gboolean result = TRUE; guint32 payload_size; guint32 current_ts; - - g_return_val_if_fail (GST_IS_PAD (pad), GST_FLOW_ERROR); - - mimdec = GST_MIM_DEC (gst_pad_get_parent (pad)); - g_return_val_if_fail (GST_IS_MIM_DEC (mimdec), GST_FLOW_ERROR); + GstMapInfo map; gst_adapter_push (mimdec->adapter, buf); /* do we have enough bytes to read a header */ while (gst_adapter_available (mimdec->adapter) >= 24) { - header = (guchar *) gst_adapter_peek (mimdec->adapter, 24); + header = gst_adapter_map (mimdec->adapter, 24); header_size = header[0]; if (header_size != 24) { + gst_adapter_unmap (mimdec->adapter); gst_adapter_flush (mimdec->adapter, 24); GST_ELEMENT_ERROR (mimdec, STREAM, DECODE, (NULL), ("invalid frame: header size %d incorrect", header_size)); - res = GST_FLOW_ERROR; - goto out; + return GST_FLOW_ERROR; } if (header[1] == 1) { /* This is a a paused frame, skip it */ + gst_adapter_unmap (mimdec->adapter); gst_adapter_flush (mimdec->adapter, 24); continue; } fourcc = GUINT32_FROM_LE (*((guint32 *) (header + 12))); if (GST_MAKE_FOURCC ('M', 'L', '2', '0') != fourcc) { + gst_adapter_unmap (mimdec->adapter); gst_adapter_flush (mimdec->adapter, 24); GST_ELEMENT_ERROR (mimdec, STREAM, WRONG_TYPE, (NULL), ("invalid frame: unknown FOURCC code %X (%" GST_FOURCC_FORMAT ")", fourcc, GST_FOURCC_ARGS (fourcc))); - res = GST_FLOW_ERROR; - goto out; + return GST_FLOW_ERROR; } payload_size = GUINT32_FROM_LE (*((guint32 *) (header + 8))); current_ts = GUINT32_FROM_LE (*((guint32 *) (header + 20))); + gst_adapter_unmap (mimdec->adapter); + GST_LOG_OBJECT (mimdec, "Got packet, payload size %d", payload_size); if (gst_adapter_available (mimdec->adapter) < payload_size + 24) - goto out; + return GST_FLOW_OK; /* We have a whole packet and have read the header, lets flush it out */ gst_adapter_flush (mimdec->adapter, 24); - frame_body = (guchar *) gst_adapter_peek (mimdec->adapter, payload_size); + frame_body = gst_adapter_map (mimdec->adapter, payload_size); if (mimdec->buffer_size < 0) { /* Check if its a keyframe, otherwise skip it */ if (GUINT32_FROM_LE (*((guint32 *) (frame_body + 12))) != 0) { + gst_adapter_unmap (mimdec->adapter); gst_adapter_flush (mimdec->adapter, payload_size); - res = GST_FLOW_OK; - goto out; + return GST_FLOW_OK; } if (!mimic_decoder_init (mimdec->dec, frame_body)) { + gst_adapter_unmap (mimdec->adapter); gst_adapter_flush (mimdec->adapter, payload_size); GST_ELEMENT_ERROR (mimdec, LIBRARY, INIT, (NULL), ("mimic_decoder_init error")); - res = GST_FLOW_ERROR; - goto out; + return GST_FLOW_ERROR; } if (!mimic_get_property (mimdec->dec, "buffer_size", &mimdec->buffer_size)) { + gst_adapter_unmap (mimdec->adapter); gst_adapter_flush (mimdec->adapter, payload_size); GST_ELEMENT_ERROR (mimdec, LIBRARY, INIT, (NULL), ("mimic_get_property('buffer_size') error")); - res = GST_FLOW_ERROR; - goto out; + return GST_FLOW_ERROR; } + + mimic_get_property (mimdec->dec, "width", &width); + mimic_get_property (mimdec->dec, "height", &height); + GST_DEBUG_OBJECT (mimdec, + "Initialised decoder with %d x %d payload size %d buffer_size %d", + width, height, payload_size, mimdec->buffer_size); + caps = gst_caps_new_simple ("video/x-raw", + "format", G_TYPE_STRING, "RGB", + "framerate", GST_TYPE_FRACTION, 0, 1, + "width", G_TYPE_INT, width, "height", G_TYPE_INT, height, NULL); + gst_pad_set_caps (mimdec->srcpad, caps); + gst_caps_unref (caps); } - if (mimdec->need_newsegment) { + if (mimdec->need_segment) { + GstSegment segment; + + gst_segment_init (&segment, GST_FORMAT_TIME); + if (GST_CLOCK_TIME_IS_VALID (in_time)) - event = gst_event_new_new_segment (FALSE, 1.0, GST_FORMAT_TIME, - in_time, -1, 0); + segment.start = in_time; else - event = gst_event_new_new_segment (FALSE, 1.0, GST_FORMAT_TIME, - current_ts * GST_MSECOND, -1, 0); + segment.start = current_ts * GST_MSECOND; + event = gst_event_new_segment (&segment); } - mimdec->need_newsegment = FALSE; + mimdec->need_segment = FALSE; if (event) result = gst_pad_push_event (mimdec->srcpad, event); @@ -258,25 +255,25 @@ gst_mim_dec_chain (GstPad * pad, GstBuffer * buf) if (!result) { GST_WARNING_OBJECT (mimdec, "gst_pad_push_event failed"); - res = GST_FLOW_ERROR; - goto out; + return GST_FLOW_ERROR; } - out_buf = gst_buffer_new_and_alloc (mimdec->buffer_size); + out_buf = gst_buffer_new_allocate (NULL, mimdec->buffer_size, NULL); + gst_buffer_map (out_buf, &map, GST_MAP_READWRITE); - if (!mimic_decode_frame (mimdec->dec, frame_body, - GST_BUFFER_DATA (out_buf))) { + if (!mimic_decode_frame (mimdec->dec, frame_body, map.data)) { GST_WARNING_OBJECT (mimdec, "mimic_decode_frame error\n"); gst_adapter_flush (mimdec->adapter, payload_size); + gst_buffer_unmap (out_buf, &map); gst_buffer_unref (out_buf); GST_ELEMENT_ERROR (mimdec, STREAM, DECODE, (NULL), ("mimic_decode_frame error")); - res = GST_FLOW_ERROR; - goto out; + return GST_FLOW_ERROR; } + gst_buffer_unmap (out_buf, &map); gst_adapter_flush (mimdec->adapter, payload_size); if (GST_CLOCK_TIME_IS_VALID (in_time)) @@ -284,33 +281,13 @@ gst_mim_dec_chain (GstPad * pad, GstBuffer * buf) else GST_BUFFER_TIMESTAMP (out_buf) = current_ts * GST_MSECOND; - mimic_get_property (mimdec->dec, "width", &width); - mimic_get_property (mimdec->dec, "height", &height); - GST_DEBUG_OBJECT (mimdec, - "got WxH %d x %d payload size %d buffer_size %d", - width, height, payload_size, mimdec->buffer_size); - caps = gst_caps_new_simple ("video/x-raw-rgb", - "bpp", G_TYPE_INT, 24, - "depth", G_TYPE_INT, 24, - "endianness", G_TYPE_INT, 4321, - "red_mask", G_TYPE_INT, 16711680, - "green_mask", G_TYPE_INT, 65280, - "blue_mask", G_TYPE_INT, 255, - "framerate", GST_TYPE_FRACTION, 0, 1, - "width", G_TYPE_INT, width, "height", G_TYPE_INT, height, NULL); - gst_buffer_set_caps (out_buf, caps); - gst_caps_unref (caps); res = gst_pad_push (mimdec->srcpad, out_buf); if (res != GST_FLOW_OK) break; } -out: - gst_object_unref (mimdec); - return res; - } static GstStateChangeReturn @@ -322,34 +299,33 @@ gst_mim_dec_change_state (GstElement * element, GstStateChange transition) mimdec = GST_MIM_DEC (element); switch (transition) { - case GST_STATE_CHANGE_NULL_TO_READY: + case GST_STATE_CHANGE_READY_TO_PAUSED: + mimdec->buffer_size = -1; mimdec->dec = mimic_open (); if (!mimdec) { GST_ERROR_OBJECT (mimdec, "mimic_open failed"); return GST_STATE_CHANGE_FAILURE; } - break; - - case GST_STATE_CHANGE_READY_TO_PAUSED: - mimdec->need_newsegment = TRUE; + mimdec->need_segment = TRUE; gst_adapter_clear (mimdec->adapter); + break; default: break; } - ret = GST_ELEMENT_CLASS (parent_class)->change_state (element, transition); + ret = GST_ELEMENT_CLASS (gst_mim_dec_parent_class)->change_state (element, + transition); if (ret == GST_STATE_CHANGE_FAILURE) return ret; switch (transition) { - case GST_STATE_CHANGE_READY_TO_NULL: + case GST_STATE_CHANGE_PAUSED_TO_READY: if (mimdec->dec != NULL) { mimic_close (mimdec->dec); mimdec->dec = NULL; - mimdec->buffer_size = -1; } break; default: @@ -360,65 +336,34 @@ gst_mim_dec_change_state (GstElement * element, GstStateChange transition) } static gboolean -gst_mim_dec_sink_event (GstPad * pad, GstEvent * event) +gst_mim_dec_sink_event (GstPad * pad, GstObject * parent, GstEvent * event) { gboolean res = TRUE; - GstMimDec *mimdec = GST_MIM_DEC (gst_pad_get_parent (pad)); + gboolean forward = TRUE; + GstMimDec *mimdec = GST_MIM_DEC (parent); /* - * Ignore upstream newsegment event, its EVIL, we should implement + * Ignore upstream segment event, its EVIL, we should implement * proper seeking instead */ switch (GST_EVENT_TYPE (event)) { - case GST_EVENT_NEWSEGMENT: - { - gboolean update; - GstFormat format; - gdouble rate, arate; - gint64 start, stop, time; - - gst_event_parse_new_segment_full (event, &update, &rate, &arate, - &format, &start, &stop, &time); - - /* we need TIME and a positive rate */ - if (format != GST_FORMAT_TIME) - goto newseg_wrong_format; - - if (rate <= 0.0) - goto newseg_wrong_rate; - - mimdec->need_newsegment = FALSE; - + case GST_EVENT_SEGMENT: + forward = FALSE; break; - } + case GST_EVENT_STREAM_START: case GST_EVENT_FLUSH_STOP: - mimdec->need_newsegment = TRUE; + case GST_EVENT_EOS: + mimdec->need_segment = FALSE; gst_adapter_clear (mimdec->adapter); break; default: break; } - res = gst_pad_push_event (mimdec->srcpad, event); - -done: - - gst_object_unref (mimdec); - - return res; - -newseg_wrong_format: - { - GST_DEBUG_OBJECT (mimdec, "received non TIME newsegment"); - gst_event_unref (event); - goto done; - } -newseg_wrong_rate: - { - GST_DEBUG_OBJECT (mimdec, "negative rates not supported yet"); + if (forward) + res = gst_pad_event_default (pad, parent, event); + else gst_event_unref (event); - goto done; - } - + return res; } diff --git a/ext/mimic/gstmimdec.h b/ext/mimic/gstmimdec.h index ae5c46c0..521da03a 100644 --- a/ext/mimic/gstmimdec.h +++ b/ext/mimic/gstmimdec.h @@ -51,7 +51,7 @@ struct _GstMimDec GstAdapter *adapter; MimCtx *dec; gint buffer_size; - gboolean need_newsegment; + gboolean need_segment; }; struct _GstMimDecClass diff --git a/ext/mimic/gstmimenc.c b/ext/mimic/gstmimenc.c index f4957ccb..cabb1736 100644 --- a/ext/mimic/gstmimenc.c +++ b/ext/mimic/gstmimenc.c @@ -67,24 +67,13 @@ enum static GstStaticPadTemplate sink_factory = GST_STATIC_PAD_TEMPLATE ("sink", GST_PAD_SINK, GST_PAD_ALWAYS, - GST_STATIC_CAPS ("video/x-raw-rgb, " - "bpp = (int) 24, " - "depth = (int) 24, " - "endianness = (int) 4321, " + GST_STATIC_CAPS ("video/x-raw, format = (string) \"RGB\", " "framerate = (fraction) [1/1, 30/1], " - "red_mask = (int) 16711680, " - "green_mask = (int) 65280, " - "blue_mask = (int) 255, " "width = (int) 320, " - "height = (int) 240" - ";video/x-raw-rgb, " - "bpp = (int) 24, " - "depth = (int) 24, " - "endianness = (int) 4321, " + "height = (int) 240;" + "video/x-raw, format = (string) \"RGB\", " "framerate = (fraction) [1/1, 30/1], " - "red_mask = (int) 16711680, " - "green_mask = (int) 65280, " - "blue_mask = (int) 255, " "width = (int) 160, " "height = (int) 120") + "width = (int) 160, " "height = (int) 120") ); static GstStaticPadTemplate src_factory = GST_STATIC_PAD_TEMPLATE ("src", @@ -94,11 +83,13 @@ static GstStaticPadTemplate src_factory = GST_STATIC_PAD_TEMPLATE ("src", ); -static gboolean gst_mim_enc_setcaps (GstPad * pad, GstCaps * caps); -static GstFlowReturn gst_mim_enc_chain (GstPad * pad, GstBuffer * in); -static void gst_mim_enc_create_tcp_header (GstMimEnc * mimenc, GstBuffer * buf, - guint32 payload_size, gboolean keyframe, gboolean paused); -static gboolean gst_mim_enc_event (GstPad * pad, GstEvent * event); +static gboolean gst_mim_enc_setcaps (GstMimEnc * mimenc, GstCaps * caps); +static GstFlowReturn gst_mim_enc_chain (GstPad * pad, GstObject * parent, + GstBuffer * in); +static void gst_mim_enc_create_tcp_header (GstMimEnc * mimenc, guint8 * p, + guint32 payload_size, GstClockTime ts, gboolean keyframe, gboolean paused); +static gboolean gst_mim_enc_event (GstPad * pad, GstObject * parent, + GstEvent * event); static GstStateChangeReturn gst_mim_enc_change_state (GstElement * element, GstStateChange transition); @@ -108,28 +99,34 @@ static void gst_mim_enc_set_property (GObject * object, guint prop_id, static void gst_mim_enc_get_property (GObject * object, guint prop_id, GValue * value, GParamSpec * pspec); -GST_BOILERPLATE (GstMimEnc, gst_mim_enc, GstElement, GST_TYPE_ELEMENT); +G_DEFINE_TYPE (GstMimEnc, gst_mim_enc, GST_TYPE_ELEMENT); + static void -gst_mim_enc_base_init (gpointer klass) +gst_mim_enc_class_init (GstMimEncClass * klass) { - GstElementClass *element_class = GST_ELEMENT_CLASS (klass); + GstElementClass *gstelement_class = GST_ELEMENT_CLASS (klass); GObjectClass *gobject_class = G_OBJECT_CLASS (klass); gobject_class->set_property = gst_mim_enc_set_property; gobject_class->get_property = gst_mim_enc_get_property; + gstelement_class->change_state = GST_DEBUG_FUNCPTR (gst_mim_enc_change_state); + + GST_DEBUG_CATEGORY_INIT (mimenc_debug, "mimenc", 0, "Mimic encoder plugin"); + + g_object_class_install_property (gobject_class, PROP_PAUSED_MODE, g_param_spec_boolean ("paused-mode", "Paused mode", "If enabled, empty frames will be generated every 4 seconds" " when no data is received", FALSE, G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS)); - gst_element_class_add_pad_template (element_class, + gst_element_class_add_pad_template (gstelement_class, gst_static_pad_template_get (&src_factory)); - gst_element_class_add_pad_template (element_class, + gst_element_class_add_pad_template (gstelement_class, gst_static_pad_template_get (&sink_factory)); - gst_element_class_set_details_simple (element_class, + gst_element_class_set_details_simple (gstelement_class, "Mimic Encoder", "Codec/Encoder/Video", "MSN Messenger compatible Mimic video encoder element", @@ -138,34 +135,22 @@ gst_mim_enc_base_init (gpointer klass) } static void -gst_mim_enc_class_init (GstMimEncClass * klass) -{ - GstElementClass *gstelement_class; - - gstelement_class = (GstElementClass *) klass; - gstelement_class->change_state = GST_DEBUG_FUNCPTR (gst_mim_enc_change_state); - - GST_DEBUG_CATEGORY_INIT (mimenc_debug, "mimenc", 0, "Mimic encoder plugin"); -} - -static void -gst_mim_enc_init (GstMimEnc * mimenc, GstMimEncClass * klass) +gst_mim_enc_init (GstMimEnc * mimenc) { mimenc->sinkpad = gst_pad_new_from_static_template (&sink_factory, "sink"); - gst_element_add_pad (GST_ELEMENT (mimenc), mimenc->sinkpad); - gst_pad_set_setcaps_function (mimenc->sinkpad, - GST_DEBUG_FUNCPTR (gst_mim_enc_setcaps)); gst_pad_set_chain_function (mimenc->sinkpad, GST_DEBUG_FUNCPTR (gst_mim_enc_chain)); gst_pad_set_event_function (mimenc->sinkpad, GST_DEBUG_FUNCPTR (gst_mim_enc_event)); + gst_element_add_pad (GST_ELEMENT (mimenc), mimenc->sinkpad); mimenc->srcpad = gst_pad_new_from_static_template (&src_factory, "src"); + gst_pad_use_fixed_caps (mimenc->srcpad); gst_element_add_pad (GST_ELEMENT (mimenc), mimenc->srcpad); mimenc->enc = NULL; - gst_segment_init (&mimenc->segment, GST_FORMAT_UNDEFINED); + gst_segment_init (&mimenc->segment, GST_FORMAT_TIME); mimenc->res = MIMIC_RES_HIGH; mimenc->buffer_size = -1; @@ -213,145 +198,148 @@ gst_mim_enc_get_property (GObject * object, guint prop_id, } } +static void +gst_mim_enc_reset_locked (GstMimEnc * mimenc) +{ + if (mimenc->enc != NULL) { + mimic_close (mimenc->enc); + mimenc->enc = NULL; + mimenc->buffer_size = -1; + mimenc->frames = 0; + mimenc->width = 0; + mimenc->height = 0; + } +} + +static void +gst_mim_enc_reset (GstMimEnc * mimenc) +{ + GST_OBJECT_LOCK (mimenc); + gst_mim_enc_reset_locked (mimenc); + GST_OBJECT_UNLOCK (mimenc); +} + static gboolean -gst_mim_enc_setcaps (GstPad * pad, GstCaps * caps) +gst_mim_enc_setcaps (GstMimEnc * mimenc, GstCaps * caps) { - GstMimEnc *mimenc; GstStructure *structure; - int ret = TRUE, height, width; - - mimenc = GST_MIM_ENC (gst_pad_get_parent (pad)); - g_return_val_if_fail (mimenc != NULL, FALSE); - g_return_val_if_fail (GST_IS_MIM_ENC (mimenc), FALSE); + int height, width; + gboolean ret = FALSE; structure = gst_caps_get_structure (caps, 0); - ret = gst_structure_get_int (structure, "width", &width); - if (!ret) { + if (!gst_structure_get_int (structure, "width", &width)) { GST_DEBUG_OBJECT (mimenc, "No width set"); - goto out; + return FALSE; } - ret = gst_structure_get_int (structure, "height", &height); - if (!ret) { + if (!gst_structure_get_int (structure, "height", &height)) { GST_DEBUG_OBJECT (mimenc, "No height set"); - goto out; + return FALSE; } GST_OBJECT_LOCK (mimenc); + if (mimenc->width == width && mimenc->height == height) { + ret = TRUE; + goto out; + } + + if (width == 320 && height == 240) mimenc->res = MIMIC_RES_HIGH; else if (width == 160 && height == 120) mimenc->res = MIMIC_RES_LOW; else { GST_WARNING_OBJECT (mimenc, "Invalid resolution %dx%d", width, height); - ret = FALSE; - GST_OBJECT_UNLOCK (mimenc); goto out; } + gst_mim_enc_reset_locked (mimenc); + mimenc->width = (guint16) width; mimenc->height = (guint16) height; GST_DEBUG_OBJECT (mimenc, "Got info from caps w : %d, h : %d", mimenc->width, mimenc->height); + mimenc->enc = mimic_open (); + if (!mimenc->enc) { + GST_ERROR_OBJECT (mimenc, "mimic_open failed"); + goto out; + } + if (!mimic_encoder_init (mimenc->enc, mimenc->res)) { GST_ERROR_OBJECT (mimenc, "mimic_encoder_init error"); - ret = FALSE; - GST_OBJECT_UNLOCK (mimenc); goto out; } if (!mimic_get_property (mimenc->enc, "buffer_size", &mimenc->buffer_size)) { GST_ERROR_OBJECT (mimenc, "mimic_get_property(buffer_size) error"); - ret = FALSE; } - GST_OBJECT_UNLOCK (mimenc); + ret = TRUE; + out: - gst_object_unref (mimenc); + GST_OBJECT_UNLOCK (mimenc); return ret; } static GstFlowReturn -gst_mim_enc_chain (GstPad * pad, GstBuffer * in) +gst_mim_enc_chain (GstPad * pad, GstObject * parent, GstBuffer * in) { - GstMimEnc *mimenc; - GstBuffer *out_buf = NULL, *buf = NULL; - guchar *data; - gint buffer_size; + GstMimEnc *mimenc = GST_MIM_ENC (parent); + GstBuffer *out = NULL; + GstMapInfo in_map; + GstMapInfo out_map; GstFlowReturn res = GST_FLOW_OK; - GstEvent *event = NULL; gboolean keyframe; - - g_return_val_if_fail (GST_IS_PAD (pad), GST_FLOW_ERROR); - mimenc = GST_MIM_ENC (gst_pad_get_parent (pad)); - - g_return_val_if_fail (GST_IS_MIM_ENC (mimenc), GST_FLOW_ERROR); + gint buffer_size; GST_OBJECT_LOCK (mimenc); - if (mimenc->segment.format == GST_FORMAT_UNDEFINED) { - GST_WARNING_OBJECT (mimenc, "No new-segment received," - " initializing segment with time 0..-1"); - gst_segment_init (&mimenc->segment, GST_FORMAT_TIME); - gst_segment_set_newsegment (&mimenc->segment, - FALSE, 1.0, GST_FORMAT_TIME, 0, -1, 0); - } - if (mimenc->enc == NULL) { - } + gst_buffer_map (in, &in_map, GST_MAP_READ); - buf = in; - data = GST_BUFFER_DATA (buf); - - out_buf = gst_buffer_new_and_alloc (mimenc->buffer_size + TCP_HEADER_SIZE); - GST_BUFFER_TIMESTAMP (out_buf) = + out = gst_buffer_new_and_alloc (mimenc->buffer_size + TCP_HEADER_SIZE); + gst_buffer_map (out, &out_map, GST_MAP_READWRITE); + GST_BUFFER_TIMESTAMP (out) = gst_segment_to_running_time (&mimenc->segment, GST_FORMAT_TIME, - GST_BUFFER_TIMESTAMP (buf)); - mimenc->last_buffer = GST_BUFFER_TIMESTAMP (out_buf); + GST_BUFFER_TIMESTAMP (in)); + mimenc->last_buffer = GST_BUFFER_TIMESTAMP (out); buffer_size = mimenc->buffer_size; keyframe = (mimenc->frames % MAX_INTERFRAMES) == 0 ? TRUE : FALSE; - if (!mimic_encode_frame (mimenc->enc, data, - GST_BUFFER_DATA (out_buf) + TCP_HEADER_SIZE, &buffer_size, - keyframe)) { - gst_buffer_unref (out_buf); - gst_buffer_unref (buf); + if (!mimic_encode_frame (mimenc->enc, in_map.data, + out_map.data + TCP_HEADER_SIZE, &buffer_size, keyframe)) { + gst_buffer_unmap (in, &in_map); + gst_buffer_unmap (out, &out_map); + gst_buffer_unref (out); GST_ELEMENT_ERROR (mimenc, STREAM, ENCODE, (NULL), ("mimic_encode_frame error")); res = GST_FLOW_ERROR; goto out_unlock; } + gst_buffer_unmap (in, &in_map); + if (!keyframe) - GST_BUFFER_FLAG_SET (buf, GST_BUFFER_FLAG_DELTA_UNIT); + GST_BUFFER_FLAG_SET (out, GST_BUFFER_FLAG_DELTA_UNIT); - GST_BUFFER_SIZE (out_buf) = buffer_size + TCP_HEADER_SIZE; GST_LOG_OBJECT (mimenc, "incoming buf size %d, encoded size %d", - GST_BUFFER_SIZE (buf), GST_BUFFER_SIZE (out_buf)); + gst_buffer_get_size (in), gst_buffer_get_size (out)); ++mimenc->frames; /* now let's create that tcp header */ - gst_mim_enc_create_tcp_header (mimenc, out_buf, buffer_size, keyframe, FALSE); + gst_mim_enc_create_tcp_header (mimenc, out_map.data, buffer_size, + GST_BUFFER_TIMESTAMP (out), keyframe, FALSE); - if (mimenc->need_newsegment) { - event = gst_event_new_new_segment (FALSE, 1.0, GST_FORMAT_TIME, 0, -1, 0); - mimenc->need_newsegment = FALSE; - } + gst_buffer_unmap (out, &out_map); + gst_buffer_resize (out, 0, buffer_size + TCP_HEADER_SIZE); GST_OBJECT_UNLOCK (mimenc); - if (event) { - if (!gst_pad_push_event (mimenc->srcpad, event)) - GST_WARNING_OBJECT (mimenc, "Failed to push NEWSEGMENT event"); - } - - res = gst_pad_push (mimenc->srcpad, out_buf); + res = gst_pad_push (mimenc->srcpad, out); out: - if (buf) - gst_buffer_unref (buf); - gst_object_unref (mimenc); + gst_buffer_unref (in); return res; @@ -361,12 +349,9 @@ out_unlock: } static void -gst_mim_enc_create_tcp_header (GstMimEnc * mimenc, GstBuffer * buf, - guint32 payload_size, gboolean keyframe, gboolean paused) +gst_mim_enc_create_tcp_header (GstMimEnc * mimenc, guint8 * p, + guint32 payload_size, GstClockTime ts, gboolean keyframe, gboolean paused) { - /* 24 bytes */ - guchar *p = (guchar *) GST_BUFFER_DATA (buf); - p[0] = 24; p[1] = paused ? 1 : 0; GST_WRITE_UINT16_LE (p + 2, mimenc->width); @@ -376,66 +361,55 @@ gst_mim_enc_create_tcp_header (GstMimEnc * mimenc, GstBuffer * buf, GST_WRITE_UINT32_LE (p + 12, paused ? 0 : GST_MAKE_FOURCC ('M', 'L', '2', '0')); GST_WRITE_UINT32_LE (p + 16, 0); - GST_WRITE_UINT32_LE (p + 20, GST_BUFFER_TIMESTAMP (buf) / GST_MSECOND); + GST_WRITE_UINT32_LE (p + 20, ts / GST_MSECOND); } + static gboolean -gst_mim_enc_event (GstPad * pad, GstEvent * event) +gst_mim_enc_event (GstPad * pad, GstObject * parent, GstEvent * event) { - GstMimEnc *mimenc = GST_MIM_ENC (gst_pad_get_parent (pad)); + GstMimEnc *mimenc = GST_MIM_ENC (parent); gboolean ret = TRUE; gboolean forward = TRUE; switch (GST_EVENT_TYPE (event)) { - case GST_EVENT_NEWSEGMENT: + case GST_EVENT_EOS: + gst_mim_enc_reset (mimenc); + break; + case GST_EVENT_CAPS: { - GstFormat format; - gdouble rate, arate; - gint64 start, stop, time; - gboolean update; + GstCaps *caps; + gst_event_parse_caps (event, &caps); + + ret = gst_mim_enc_setcaps (mimenc, caps); - gst_event_parse_new_segment_full (event, &update, &rate, &arate, - &format, &start, &stop, &time); + forward = FALSE; + break; + } + case GST_EVENT_SEGMENT: + { + gst_event_copy_segment (event, &mimenc->segment); /* we need time for now */ - if (format != GST_FORMAT_TIME) + if (mimenc->segment.format != GST_FORMAT_TIME) goto newseg_wrong_format; - GST_DEBUG_OBJECT (mimenc, - "newsegment: update %d, rate %g, arate %g, start %" GST_TIME_FORMAT - ", stop %" GST_TIME_FORMAT ", time %" GST_TIME_FORMAT, - update, rate, arate, GST_TIME_ARGS (start), GST_TIME_ARGS (stop), - GST_TIME_ARGS (time)); - - /* now configure the values, we need these to time the release of the - * buffers on the srcpad. */ - GST_OBJECT_LOCK (mimenc); - gst_segment_set_newsegment_full (&mimenc->segment, update, - rate, arate, format, start, stop, time); - GST_OBJECT_UNLOCK (mimenc); forward = FALSE; break; } break; - case GST_EVENT_FLUSH_STOP: - GST_OBJECT_LOCK (mimenc); - gst_segment_init (&mimenc->segment, GST_FORMAT_UNDEFINED); - mimenc->need_newsegment = TRUE; - GST_OBJECT_UNLOCK (mimenc); - break; default: break; } if (forward) - ret = gst_pad_push_event (mimenc->srcpad, event); + ret = gst_pad_event_default (pad, parent, event); else gst_event_unref (event); done: - gst_object_unref (mimenc); return ret; @@ -478,27 +452,21 @@ paused_mode_task (gpointer data) if (diff > 3.95 * GST_SECOND) { GstBuffer *buffer; - GstEvent *event = NULL; + GstMapInfo out_map; buffer = gst_buffer_new_and_alloc (TCP_HEADER_SIZE); + gst_buffer_map (buffer, &out_map, GST_MAP_WRITE); GST_BUFFER_TIMESTAMP (buffer) = mimenc->last_buffer + PAUSED_MODE_INTERVAL; - gst_mim_enc_create_tcp_header (mimenc, buffer, 0, FALSE, TRUE); + gst_mim_enc_create_tcp_header (mimenc, out_map.data, 0, + GST_BUFFER_TIMESTAMP (buffer), FALSE, TRUE); + gst_buffer_unmap (buffer, &out_map); mimenc->last_buffer += PAUSED_MODE_INTERVAL; - if (mimenc->need_newsegment) { - event = gst_event_new_new_segment (FALSE, 1.0, GST_FORMAT_TIME, 0, -1, 0); - mimenc->need_newsegment = FALSE; - } - GST_OBJECT_UNLOCK (mimenc); GST_LOG_OBJECT (mimenc, "Haven't had an incoming buffer in 4 seconds," " sending out a pause frame"); - if (event) { - if (!gst_pad_push_event (mimenc->srcpad, event)) - GST_WARNING_OBJECT (mimenc, "Failed to push NEWSEGMENT event"); - } ret = gst_pad_push (mimenc->srcpad, buffer); if (ret < 0) { GST_WARNING_OBJECT (mimenc, "Error pushing paused header: %s", @@ -545,18 +513,12 @@ gst_mim_enc_change_state (GstElement * element, GstStateChange transition) switch (transition) { case GST_STATE_CHANGE_NULL_TO_READY: - mimenc->enc = mimic_open (); - if (!mimenc) { - GST_ERROR_OBJECT (mimenc, "mimic_open failed"); - return GST_STATE_CHANGE_FAILURE; - } - break; + case GST_STATE_CHANGE_READY_TO_PAUSED: GST_OBJECT_LOCK (mimenc); gst_segment_init (&mimenc->segment, GST_FORMAT_UNDEFINED); mimenc->last_buffer = GST_CLOCK_TIME_NONE; - mimenc->need_newsegment = TRUE; GST_OBJECT_UNLOCK (mimenc); break; case GST_STATE_CHANGE_PLAYING_TO_PAUSED: @@ -573,7 +535,8 @@ gst_mim_enc_change_state (GstElement * element, GstStateChange transition) break; } - ret = GST_ELEMENT_CLASS (parent_class)->change_state (element, transition); + ret = GST_ELEMENT_CLASS (gst_mim_enc_parent_class)->change_state (element, + transition); if (ret == GST_STATE_CHANGE_FAILURE) return ret; @@ -597,21 +560,15 @@ gst_mim_enc_change_state (GstElement * element, GstStateChange transition) } GST_OBJECT_UNLOCK (mimenc); if (paused_mode) { - if (!gst_pad_start_task (mimenc->srcpad, paused_mode_task, mimenc)) { + if (!gst_pad_start_task (mimenc->srcpad, paused_mode_task, mimenc, + NULL)) { ret = GST_STATE_CHANGE_FAILURE; GST_ERROR_OBJECT (mimenc, "Can not start task"); } } break; case GST_STATE_CHANGE_READY_TO_NULL: - GST_OBJECT_LOCK (element); - if (mimenc->enc != NULL) { - mimic_close (mimenc->enc); - mimenc->enc = NULL; - mimenc->buffer_size = -1; - mimenc->frames = 0; - } - GST_OBJECT_UNLOCK (element); + gst_mim_enc_reset (mimenc); break; default: diff --git a/ext/mimic/gstmimenc.h b/ext/mimic/gstmimenc.h index 26ad42d6..f27d3064 100644 --- a/ext/mimic/gstmimenc.h +++ b/ext/mimic/gstmimenc.h @@ -57,7 +57,6 @@ struct _GstMimEnc gboolean paused_mode; GstSegment segment; - gboolean need_newsegment; GstClockTime last_buffer; GstClockID clock_id; gboolean stop_paused_mode; diff --git a/ext/modplug/Makefile.in b/ext/modplug/Makefile.in index 1740d714..7dd5832a 100644 --- a/ext/modplug/Makefile.in +++ b/ext/modplug/Makefile.in @@ -1,4 +1,4 @@ -# Makefile.in generated by automake 1.11.5 from Makefile.am. +# Makefile.in generated by automake 1.11.6 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, @@ -237,11 +237,10 @@ DIRECT3D_LIBS = @DIRECT3D_LIBS@ DIRECTDRAW_LIBS = @DIRECTDRAW_LIBS@ DIRECTFB_CFLAGS = @DIRECTFB_CFLAGS@ DIRECTFB_LIBS = @DIRECTFB_LIBS@ +DIRECTSHOW_LIBS = @DIRECTSHOW_LIBS@ DIRECTSOUND_LIBS = @DIRECTSOUND_LIBS@ DIRECTX_CFLAGS = @DIRECTX_CFLAGS@ DIRECTX_LDFLAGS = @DIRECTX_LDFLAGS@ -DIVXDEC_LIBS = @DIVXDEC_LIBS@ -DIVXENC_LIBS = @DIVXENC_LIBS@ DLLTOOL = @DLLTOOL@ DSYMUTIL = @DSYMUTIL@ DTS_LIBS = @DTS_LIBS@ @@ -276,7 +275,9 @@ GIO_LIBS = @GIO_LIBS@ GLIB_CFLAGS = @GLIB_CFLAGS@ GLIB_COMPILE_SCHEMAS = @GLIB_COMPILE_SCHEMAS@ GLIB_EXTRA_CFLAGS = @GLIB_EXTRA_CFLAGS@ +GLIB_GENMARSHAL = @GLIB_GENMARSHAL@ GLIB_LIBS = @GLIB_LIBS@ +GLIB_MKENUMS = @GLIB_MKENUMS@ GLIB_PREFIX = @GLIB_PREFIX@ GLIB_REQ = @GLIB_REQ@ GME_LIBS = @GME_LIBS@ @@ -352,13 +353,14 @@ HAVE_CXX = @HAVE_CXX@ HAVE_DIRECT3D = @HAVE_DIRECT3D@ HAVE_DIRECT3D9 = @HAVE_DIRECT3D9@ HAVE_DIRECTDRAW = @HAVE_DIRECTDRAW@ +HAVE_DIRECTSHOW = @HAVE_DIRECTSHOW@ HAVE_DIRECTSOUND = @HAVE_DIRECTSOUND@ HAVE_DTS = @HAVE_DTS@ HAVE_FAAC = @HAVE_FAAC@ HAVE_FAAD = @HAVE_FAAD@ HAVE_FLITE = @HAVE_FLITE@ HAVE_GSM = @HAVE_GSM@ -HAVE_JP2K = @HAVE_JP2K@ +HAVE_JASPER = @HAVE_JASPER@ HAVE_NAS = @HAVE_NAS@ HAVE_VPX = @HAVE_VPX@ HAVE_WILDMIDI = @HAVE_WILDMIDI@ @@ -372,7 +374,7 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ INTLLIBS = @INTLLIBS@ INTL_MACOSX_LIBS = @INTL_MACOSX_LIBS@ -JP2K_LIBS = @JP2K_LIBS@ +JASPER_LIBS = @JASPER_LIBS@ KATE_CFLAGS = @KATE_CFLAGS@ KATE_LIBS = @KATE_LIBS@ LD = @LD@ @@ -408,6 +410,8 @@ MODPLUG_CFLAGS = @MODPLUG_CFLAGS@ MODPLUG_LIBS = @MODPLUG_LIBS@ MPEG2ENC_CFLAGS = @MPEG2ENC_CFLAGS@ MPEG2ENC_LIBS = @MPEG2ENC_LIBS@ +MPG123_CFLAGS = @MPG123_CFLAGS@ +MPG123_LIBS = @MPG123_LIBS@ MPLEX_CFLAGS = @MPLEX_CFLAGS@ MPLEX_LDFLAGS = @MPLEX_LDFLAGS@ MPLEX_LIBS = @MPLEX_LIBS@ diff --git a/ext/modplug/gstmodplug.cc b/ext/modplug/gstmodplug.cc index 645f4fd1..103812eb 100644 --- a/ext/modplug/gstmodplug.cc +++ b/ext/modplug/gstmodplug.cc @@ -98,7 +98,7 @@ enum #define FORMATS "{ "GST_AUDIO_NE (S32)", "GST_AUDIO_NE (S16)", U8 }" static GstStaticPadTemplate modplug_src_template_factory = - GST_STATIC_PAD_TEMPLATE ("src", +GST_STATIC_PAD_TEMPLATE ("src", GST_PAD_SRC, GST_PAD_ALWAYS, GST_STATIC_CAPS ("audio/x-raw," @@ -402,7 +402,7 @@ gst_modplug_do_seek (GstModPlug * modplug, GstEvent * event) gst_util_uint64_scale_int (cur, modplug->frequency, GST_SECOND); gst_pad_start_task (modplug->sinkpad, - (GstTaskFunction) gst_modplug_loop, modplug); + (GstTaskFunction) gst_modplug_loop, modplug, NULL); GST_PAD_STREAM_UNLOCK (modplug->sinkpad); @@ -451,7 +451,7 @@ gst_modplug_load_song (GstModPlug * modplug) GstCaps *newcaps; GstStructure *structure; GstMapInfo map; - const gchar * format; + const gchar *format; GST_DEBUG_OBJECT (modplug, "Setting caps"); @@ -461,22 +461,24 @@ gst_modplug_load_song (GstModPlug * modplug) } newcaps = gst_caps_make_writable (newcaps); - GST_DEBUG_OBJECT (modplug, "allowed caps %"GST_PTR_FORMAT, newcaps); + GST_DEBUG_OBJECT (modplug, "allowed caps %" GST_PTR_FORMAT, newcaps); structure = gst_caps_get_structure (newcaps, 0); - if (!gst_structure_fixate_field_string (structure, "format", GST_AUDIO_NE (S16))) + if (!gst_structure_fixate_field_string (structure, "format", + GST_AUDIO_NE (S16))) GST_WARNING_OBJECT (modplug, "Failed to fixate format to S16NE"); if (!gst_structure_fixate_field_nearest_int (structure, "rate", 44100)) GST_WARNING_OBJECT (modplug, "Failed to fixate rate to 44100"); if (!gst_structure_fixate_field_nearest_int (structure, "channels", 2)) - GST_WARNING_OBJECT (modplug, "Failed to fixate number of channels to stereo"); + GST_WARNING_OBJECT (modplug, + "Failed to fixate number of channels to stereo"); - GST_DEBUG_OBJECT (modplug, "normalized caps %"GST_PTR_FORMAT, newcaps); + GST_DEBUG_OBJECT (modplug, "normalized caps %" GST_PTR_FORMAT, newcaps); newcaps = gst_caps_fixate (newcaps); - GST_DEBUG_OBJECT (modplug, "fixated caps %"GST_PTR_FORMAT, newcaps); + GST_DEBUG_OBJECT (modplug, "fixated caps %" GST_PTR_FORMAT, newcaps); /* set up modplug to output the negotiated format */ structure = gst_caps_get_structure (newcaps, 0); @@ -491,8 +493,8 @@ gst_modplug_load_song (GstModPlug * modplug) gst_structure_get_int (structure, "channels", &modplug->channel); gst_structure_get_int (structure, "rate", &modplug->frequency); - - GST_DEBUG_OBJECT (modplug, + + GST_DEBUG_OBJECT (modplug, "Audio settings: %d bits, %d channel(s), %d Hz sampling rate", modplug->bits, modplug->channel, modplug->frequency); @@ -593,7 +595,7 @@ gst_modplug_sinkpad_activate_mode (GstPad * pad, GstObject * parent, case GST_PAD_MODE_PULL: if (active) { res = gst_pad_start_task (pad, (GstTaskFunction) gst_modplug_loop, - modplug); + modplug, NULL); } else { res = gst_pad_stop_task (pad); } @@ -676,7 +678,7 @@ gst_modplug_loop (GstModPlug * modplug) if (modplug->offset == modplug->song_size) { GstTagList *tags; gboolean ok; - #define COMMENT_SIZE 16384 +#define COMMENT_SIZE 16384 gchar comment[COMMENT_SIZE]; GstSegment seg; @@ -701,12 +703,12 @@ gst_modplug_loop (GstModPlug * modplug) (gdouble) modplug->mSoundFile->GetMusicTempo (), NULL); if (modplug->mSoundFile->GetSongComments ((gchar *) & comment, - COMMENT_SIZE, 32)) { + COMMENT_SIZE, 32)) { comment[COMMENT_SIZE - 1] = '\0'; gst_tag_list_add (tags, GST_TAG_MERGE_APPEND, GST_TAG_COMMENT, comment, NULL); } - gst_pad_push_event (modplug->srcpad, gst_event_new_tag ("GstDecoder", tags)); + gst_pad_push_event (modplug->srcpad, gst_event_new_tag (tags)); } else { /* not fully loaded yet */ return; @@ -729,7 +731,7 @@ gst_modplug_loop (GstModPlug * modplug) } /* read and output a buffer */ - GST_LOG_OBJECT (modplug, "Read %d bytes", (gint)modplug->read_bytes); + GST_LOG_OBJECT (modplug, "Read %d bytes", (gint) modplug->read_bytes); /* libmodplug 0.8.7 trashes memory */ out = gst_buffer_new_allocate (NULL, modplug->read_bytes * 2, NULL); diff --git a/ext/mpeg2enc/Makefile.in b/ext/mpeg2enc/Makefile.in index f7ab7150..2ef44b81 100644 --- a/ext/mpeg2enc/Makefile.in +++ b/ext/mpeg2enc/Makefile.in @@ -1,4 +1,4 @@ -# Makefile.in generated by automake 1.11.5 from Makefile.am. +# Makefile.in generated by automake 1.11.6 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, @@ -241,11 +241,10 @@ DIRECT3D_LIBS = @DIRECT3D_LIBS@ DIRECTDRAW_LIBS = @DIRECTDRAW_LIBS@ DIRECTFB_CFLAGS = @DIRECTFB_CFLAGS@ DIRECTFB_LIBS = @DIRECTFB_LIBS@ +DIRECTSHOW_LIBS = @DIRECTSHOW_LIBS@ DIRECTSOUND_LIBS = @DIRECTSOUND_LIBS@ DIRECTX_CFLAGS = @DIRECTX_CFLAGS@ DIRECTX_LDFLAGS = @DIRECTX_LDFLAGS@ -DIVXDEC_LIBS = @DIVXDEC_LIBS@ -DIVXENC_LIBS = @DIVXENC_LIBS@ DLLTOOL = @DLLTOOL@ DSYMUTIL = @DSYMUTIL@ DTS_LIBS = @DTS_LIBS@ @@ -280,7 +279,9 @@ GIO_LIBS = @GIO_LIBS@ GLIB_CFLAGS = @GLIB_CFLAGS@ GLIB_COMPILE_SCHEMAS = @GLIB_COMPILE_SCHEMAS@ GLIB_EXTRA_CFLAGS = @GLIB_EXTRA_CFLAGS@ +GLIB_GENMARSHAL = @GLIB_GENMARSHAL@ GLIB_LIBS = @GLIB_LIBS@ +GLIB_MKENUMS = @GLIB_MKENUMS@ GLIB_PREFIX = @GLIB_PREFIX@ GLIB_REQ = @GLIB_REQ@ GME_LIBS = @GME_LIBS@ @@ -356,13 +357,14 @@ HAVE_CXX = @HAVE_CXX@ HAVE_DIRECT3D = @HAVE_DIRECT3D@ HAVE_DIRECT3D9 = @HAVE_DIRECT3D9@ HAVE_DIRECTDRAW = @HAVE_DIRECTDRAW@ +HAVE_DIRECTSHOW = @HAVE_DIRECTSHOW@ HAVE_DIRECTSOUND = @HAVE_DIRECTSOUND@ HAVE_DTS = @HAVE_DTS@ HAVE_FAAC = @HAVE_FAAC@ HAVE_FAAD = @HAVE_FAAD@ HAVE_FLITE = @HAVE_FLITE@ HAVE_GSM = @HAVE_GSM@ -HAVE_JP2K = @HAVE_JP2K@ +HAVE_JASPER = @HAVE_JASPER@ HAVE_NAS = @HAVE_NAS@ HAVE_VPX = @HAVE_VPX@ HAVE_WILDMIDI = @HAVE_WILDMIDI@ @@ -376,7 +378,7 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ INTLLIBS = @INTLLIBS@ INTL_MACOSX_LIBS = @INTL_MACOSX_LIBS@ -JP2K_LIBS = @JP2K_LIBS@ +JASPER_LIBS = @JASPER_LIBS@ KATE_CFLAGS = @KATE_CFLAGS@ KATE_LIBS = @KATE_LIBS@ LD = @LD@ @@ -412,6 +414,8 @@ MODPLUG_CFLAGS = @MODPLUG_CFLAGS@ MODPLUG_LIBS = @MODPLUG_LIBS@ MPEG2ENC_CFLAGS = @MPEG2ENC_CFLAGS@ MPEG2ENC_LIBS = @MPEG2ENC_LIBS@ +MPG123_CFLAGS = @MPG123_CFLAGS@ +MPG123_LIBS = @MPG123_LIBS@ MPLEX_CFLAGS = @MPLEX_CFLAGS@ MPLEX_LDFLAGS = @MPLEX_LDFLAGS@ MPLEX_LIBS = @MPLEX_LIBS@ diff --git a/ext/mpeg2enc/gstmpeg2enc.cc b/ext/mpeg2enc/gstmpeg2enc.cc index ec86693c..1482ae16 100644 --- a/ext/mpeg2enc/gstmpeg2enc.cc +++ b/ext/mpeg2enc/gstmpeg2enc.cc @@ -406,7 +406,7 @@ gst_mpeg2enc_setcaps (GstMpeg2enc * enc, GstPad * pad, GstCaps * caps) /* now that we have all the setup and buffers are expected incoming; * task can get going */ - gst_pad_start_task (enc->srcpad, (GstTaskFunction) gst_mpeg2enc_loop, enc); + gst_pad_start_task (enc->srcpad, (GstTaskFunction) gst_mpeg2enc_loop, enc, NULL); return TRUE; diff --git a/ext/mpg123/Makefile.am b/ext/mpg123/Makefile.am new file mode 100644 index 00000000..365fc764 --- /dev/null +++ b/ext/mpg123/Makefile.am @@ -0,0 +1,27 @@ +plugin_LTLIBRARIES = libgstmpg123.la + +libgstmpg123_la_SOURCES = gstmpg123audiodec.c +libgstmpg123_la_CFLAGS = -DGST_USE_UNSTABLE_API \ + $(GST_PLUGINS_BASE_CFLAGS) \ + $(GST_BASE_CFLAGS) $(GST_CFLAGS) $(MPG123_CFLAGS) +libgstmpg123_la_LIBADD = $(GST_PLUGINS_BASE_LIBS) -lgstaudio-@GST_API_VERSION@ \ + $(GST_BASE_LIBS) $(GST_LIBS) $(MPG123_LIBS) +libgstmpg123_la_LDFLAGS = $(GST_PLUGIN_LDFLAGS) +libgstmpg123_la_LIBTOOLFLAGS = --tag=disable-static + +noinst_HEADERS = gstmpg123audiodec.h + +Android.mk: Makefile.am $(BUILT_SOURCES) + androgenizer \ + -:PROJECT libgstmpg123 -:SHARED libgstmpg123 \ + -:TAGS eng debug \ + -:REL_TOP $(top_srcdir) -:ABS_TOP $(abs_top_srcdir) \ + -:SOURCES $(libgstmpg123_la_SOURCES) \ + -:CPPFLAGS $(CPPFLAGS) \ + -:CFLAGS $(DEFS) $(DEFAULT_INCLUDES) $(libgstmpg123_la_CFLAGS) \ + -:LDFLAGS $(libgstmpg123_la_LDFLAGS) \ + $(libgstmpg123_la_LIBADD) \ + -ldl \ + -:PASSTHROUGH LOCAL_ARM_MODE:=arm \ + LOCAL_MODULE_PATH:='$$(TARGET_OUT)/lib/gstreamer-@GST_API_VERSION@' \ + > $@ diff --git a/ext/divx/Makefile.in b/ext/mpg123/Makefile.in index e1649bbd..d3e7b699 100644 --- a/ext/divx/Makefile.in +++ b/ext/mpg123/Makefile.in @@ -1,4 +1,4 @@ -# Makefile.in generated by automake 1.11.5 from Makefile.am. +# Makefile.in generated by automake 1.11.6 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, @@ -53,7 +53,7 @@ POST_UNINSTALL = : build_triplet = @build@ host_triplet = @host@ target_triplet = @target@ -subdir = ext/divx +subdir = ext/mpg123 DIST_COMMON = $(noinst_HEADERS) $(srcdir)/Makefile.am \ $(srcdir)/Makefile.in ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 @@ -127,25 +127,18 @@ am__uninstall_files_from_dir = { \ am__installdirs = "$(DESTDIR)$(plugindir)" LTLIBRARIES = $(plugin_LTLIBRARIES) am__DEPENDENCIES_1 = -libgstdivxdec_la_DEPENDENCIES = $(am__DEPENDENCIES_1) \ +libgstmpg123_la_DEPENDENCIES = $(am__DEPENDENCIES_1) \ + $(am__DEPENDENCIES_1) $(am__DEPENDENCIES_1) \ $(am__DEPENDENCIES_1) -am_libgstdivxdec_la_OBJECTS = libgstdivxdec_la-gstdivxdec.lo -libgstdivxdec_la_OBJECTS = $(am_libgstdivxdec_la_OBJECTS) +am_libgstmpg123_la_OBJECTS = libgstmpg123_la-gstmpg123audiodec.lo +libgstmpg123_la_OBJECTS = $(am_libgstmpg123_la_OBJECTS) AM_V_lt = $(am__v_lt_@AM_V@) am__v_lt_ = $(am__v_lt_@AM_DEFAULT_V@) am__v_lt_0 = --silent -libgstdivxdec_la_LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC \ - $(libgstdivxdec_la_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=link \ - $(CCLD) $(AM_CFLAGS) $(CFLAGS) $(libgstdivxdec_la_LDFLAGS) \ - $(LDFLAGS) -o $@ -libgstdivxenc_la_DEPENDENCIES = $(am__DEPENDENCIES_1) \ - $(am__DEPENDENCIES_1) -am_libgstdivxenc_la_OBJECTS = libgstdivxenc_la-gstdivxenc.lo -libgstdivxenc_la_OBJECTS = $(am_libgstdivxenc_la_OBJECTS) -libgstdivxenc_la_LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC \ - $(libgstdivxenc_la_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=link \ - $(CCLD) $(AM_CFLAGS) $(CFLAGS) $(libgstdivxenc_la_LDFLAGS) \ - $(LDFLAGS) -o $@ +libgstmpg123_la_LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC \ + $(libgstmpg123_la_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=link \ + $(CCLD) $(libgstmpg123_la_CFLAGS) $(CFLAGS) \ + $(libgstmpg123_la_LDFLAGS) $(LDFLAGS) -o $@ DEFAULT_INCLUDES = -I.@am__isrc@ -I$(top_builddir) depcomp = $(SHELL) $(top_srcdir)/depcomp am__depfiles_maybe = depfiles @@ -172,8 +165,8 @@ am__v_CCLD_0 = @echo " CCLD " $@; AM_V_GEN = $(am__v_GEN_@AM_V@) am__v_GEN_ = $(am__v_GEN_@AM_DEFAULT_V@) am__v_GEN_0 = @echo " GEN " $@; -SOURCES = $(libgstdivxdec_la_SOURCES) $(libgstdivxenc_la_SOURCES) -DIST_SOURCES = $(libgstdivxdec_la_SOURCES) $(libgstdivxenc_la_SOURCES) +SOURCES = $(libgstmpg123_la_SOURCES) +DIST_SOURCES = $(libgstmpg123_la_SOURCES) am__can_run_installinfo = \ case $$AM_UPDATE_INFO_DIR in \ n|no|NO) false;; \ @@ -245,11 +238,10 @@ DIRECT3D_LIBS = @DIRECT3D_LIBS@ DIRECTDRAW_LIBS = @DIRECTDRAW_LIBS@ DIRECTFB_CFLAGS = @DIRECTFB_CFLAGS@ DIRECTFB_LIBS = @DIRECTFB_LIBS@ +DIRECTSHOW_LIBS = @DIRECTSHOW_LIBS@ DIRECTSOUND_LIBS = @DIRECTSOUND_LIBS@ DIRECTX_CFLAGS = @DIRECTX_CFLAGS@ DIRECTX_LDFLAGS = @DIRECTX_LDFLAGS@ -DIVXDEC_LIBS = @DIVXDEC_LIBS@ -DIVXENC_LIBS = @DIVXENC_LIBS@ DLLTOOL = @DLLTOOL@ DSYMUTIL = @DSYMUTIL@ DTS_LIBS = @DTS_LIBS@ @@ -284,7 +276,9 @@ GIO_LIBS = @GIO_LIBS@ GLIB_CFLAGS = @GLIB_CFLAGS@ GLIB_COMPILE_SCHEMAS = @GLIB_COMPILE_SCHEMAS@ GLIB_EXTRA_CFLAGS = @GLIB_EXTRA_CFLAGS@ +GLIB_GENMARSHAL = @GLIB_GENMARSHAL@ GLIB_LIBS = @GLIB_LIBS@ +GLIB_MKENUMS = @GLIB_MKENUMS@ GLIB_PREFIX = @GLIB_PREFIX@ GLIB_REQ = @GLIB_REQ@ GME_LIBS = @GME_LIBS@ @@ -360,13 +354,14 @@ HAVE_CXX = @HAVE_CXX@ HAVE_DIRECT3D = @HAVE_DIRECT3D@ HAVE_DIRECT3D9 = @HAVE_DIRECT3D9@ HAVE_DIRECTDRAW = @HAVE_DIRECTDRAW@ +HAVE_DIRECTSHOW = @HAVE_DIRECTSHOW@ HAVE_DIRECTSOUND = @HAVE_DIRECTSOUND@ HAVE_DTS = @HAVE_DTS@ HAVE_FAAC = @HAVE_FAAC@ HAVE_FAAD = @HAVE_FAAD@ HAVE_FLITE = @HAVE_FLITE@ HAVE_GSM = @HAVE_GSM@ -HAVE_JP2K = @HAVE_JP2K@ +HAVE_JASPER = @HAVE_JASPER@ HAVE_NAS = @HAVE_NAS@ HAVE_VPX = @HAVE_VPX@ HAVE_WILDMIDI = @HAVE_WILDMIDI@ @@ -380,7 +375,7 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ INTLLIBS = @INTLLIBS@ INTL_MACOSX_LIBS = @INTL_MACOSX_LIBS@ -JP2K_LIBS = @JP2K_LIBS@ +JASPER_LIBS = @JASPER_LIBS@ KATE_CFLAGS = @KATE_CFLAGS@ KATE_LIBS = @KATE_LIBS@ LD = @LD@ @@ -416,6 +411,8 @@ MODPLUG_CFLAGS = @MODPLUG_CFLAGS@ MODPLUG_LIBS = @MODPLUG_LIBS@ MPEG2ENC_CFLAGS = @MPEG2ENC_CFLAGS@ MPEG2ENC_LIBS = @MPEG2ENC_LIBS@ +MPG123_CFLAGS = @MPG123_CFLAGS@ +MPG123_LIBS = @MPG123_LIBS@ MPLEX_CFLAGS = @MPLEX_CFLAGS@ MPLEX_LDFLAGS = @MPLEX_LDFLAGS@ MPLEX_LIBS = @MPLEX_LIBS@ @@ -606,17 +603,18 @@ target_vendor = @target_vendor@ top_build_prefix = @top_build_prefix@ top_builddir = @top_builddir@ top_srcdir = @top_srcdir@ -plugin_LTLIBRARIES = libgstdivxdec.la libgstdivxenc.la -AM_CFLAGS = $(GST_PLUGINS_BASE_CFLAGS) $(GST_CFLAGS) $(DIVX_CFLAGS) -libgstdivxenc_la_SOURCES = gstdivxenc.c -libgstdivxenc_la_LIBADD = $(GST_PLUGINS_BASE_LIBS) $(DIVXENC_LIBS) -libgstdivxenc_la_LDFLAGS = $(GST_PLUGIN_LDFLAGS) -libgstdivxenc_la_LIBTOOLFLAGS = --tag=disable-static -libgstdivxdec_la_SOURCES = gstdivxdec.c -libgstdivxdec_la_LIBADD = $(GST_PLUGINS_BASE_LIBS) $(DIVXDEC_LIBS) -libgstdivxdec_la_LDFLAGS = $(GST_PLUGIN_LDFLAGS) -libgstdivxdec_la_LIBTOOLFLAGS = --tag=disable-static -noinst_HEADERS = gstdivxenc.h gstdivxdec.h +plugin_LTLIBRARIES = libgstmpg123.la +libgstmpg123_la_SOURCES = gstmpg123audiodec.c +libgstmpg123_la_CFLAGS = -DGST_USE_UNSTABLE_API \ + $(GST_PLUGINS_BASE_CFLAGS) \ + $(GST_BASE_CFLAGS) $(GST_CFLAGS) $(MPG123_CFLAGS) + +libgstmpg123_la_LIBADD = $(GST_PLUGINS_BASE_LIBS) -lgstaudio-@GST_API_VERSION@ \ + $(GST_BASE_LIBS) $(GST_LIBS) $(MPG123_LIBS) + +libgstmpg123_la_LDFLAGS = $(GST_PLUGIN_LDFLAGS) +libgstmpg123_la_LIBTOOLFLAGS = --tag=disable-static +noinst_HEADERS = gstmpg123audiodec.h all: all-am .SUFFIXES: @@ -630,9 +628,9 @@ $(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(am__confi exit 1;; \ esac; \ done; \ - echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu ext/divx/Makefile'; \ + echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu ext/mpg123/Makefile'; \ $(am__cd) $(top_srcdir) && \ - $(AUTOMAKE) --gnu ext/divx/Makefile + $(AUTOMAKE) --gnu ext/mpg123/Makefile .PRECIOUS: Makefile Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status @case '$?' in \ @@ -683,10 +681,8 @@ clean-pluginLTLIBRARIES: echo "rm -f \"$${dir}/so_locations\""; \ rm -f "$${dir}/so_locations"; \ done -libgstdivxdec.la: $(libgstdivxdec_la_OBJECTS) $(libgstdivxdec_la_DEPENDENCIES) $(EXTRA_libgstdivxdec_la_DEPENDENCIES) - $(AM_V_CCLD)$(libgstdivxdec_la_LINK) -rpath $(plugindir) $(libgstdivxdec_la_OBJECTS) $(libgstdivxdec_la_LIBADD) $(LIBS) -libgstdivxenc.la: $(libgstdivxenc_la_OBJECTS) $(libgstdivxenc_la_DEPENDENCIES) $(EXTRA_libgstdivxenc_la_DEPENDENCIES) - $(AM_V_CCLD)$(libgstdivxenc_la_LINK) -rpath $(plugindir) $(libgstdivxenc_la_OBJECTS) $(libgstdivxenc_la_LIBADD) $(LIBS) +libgstmpg123.la: $(libgstmpg123_la_OBJECTS) $(libgstmpg123_la_DEPENDENCIES) $(EXTRA_libgstmpg123_la_DEPENDENCIES) + $(AM_V_CCLD)$(libgstmpg123_la_LINK) -rpath $(plugindir) $(libgstmpg123_la_OBJECTS) $(libgstmpg123_la_LIBADD) $(LIBS) mostlyclean-compile: -rm -f *.$(OBJEXT) @@ -694,8 +690,7 @@ mostlyclean-compile: distclean-compile: -rm -f *.tab.c -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libgstdivxdec_la-gstdivxdec.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libgstdivxenc_la-gstdivxenc.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libgstmpg123_la-gstmpg123audiodec.Plo@am__quote@ .c.o: @am__fastdepCC_TRUE@ $(AM_V_CC)$(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $< @@ -718,19 +713,12 @@ distclean-compile: @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LTCOMPILE) -c -o $@ $< -libgstdivxdec_la-gstdivxdec.lo: gstdivxdec.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(libgstdivxdec_la_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT libgstdivxdec_la-gstdivxdec.lo -MD -MP -MF $(DEPDIR)/libgstdivxdec_la-gstdivxdec.Tpo -c -o libgstdivxdec_la-gstdivxdec.lo `test -f 'gstdivxdec.c' || echo '$(srcdir)/'`gstdivxdec.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libgstdivxdec_la-gstdivxdec.Tpo $(DEPDIR)/libgstdivxdec_la-gstdivxdec.Plo -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='gstdivxdec.c' object='libgstdivxdec_la-gstdivxdec.lo' libtool=yes @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(libgstdivxdec_la_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o libgstdivxdec_la-gstdivxdec.lo `test -f 'gstdivxdec.c' || echo '$(srcdir)/'`gstdivxdec.c - -libgstdivxenc_la-gstdivxenc.lo: gstdivxenc.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(libgstdivxenc_la_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT libgstdivxenc_la-gstdivxenc.lo -MD -MP -MF $(DEPDIR)/libgstdivxenc_la-gstdivxenc.Tpo -c -o libgstdivxenc_la-gstdivxenc.lo `test -f 'gstdivxenc.c' || echo '$(srcdir)/'`gstdivxenc.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libgstdivxenc_la-gstdivxenc.Tpo $(DEPDIR)/libgstdivxenc_la-gstdivxenc.Plo -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='gstdivxenc.c' object='libgstdivxenc_la-gstdivxenc.lo' libtool=yes @AMDEPBACKSLASH@ +libgstmpg123_la-gstmpg123audiodec.lo: gstmpg123audiodec.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(libgstmpg123_la_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libgstmpg123_la_CFLAGS) $(CFLAGS) -MT libgstmpg123_la-gstmpg123audiodec.lo -MD -MP -MF $(DEPDIR)/libgstmpg123_la-gstmpg123audiodec.Tpo -c -o libgstmpg123_la-gstmpg123audiodec.lo `test -f 'gstmpg123audiodec.c' || echo '$(srcdir)/'`gstmpg123audiodec.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libgstmpg123_la-gstmpg123audiodec.Tpo $(DEPDIR)/libgstmpg123_la-gstmpg123audiodec.Plo +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='gstmpg123audiodec.c' object='libgstmpg123_la-gstmpg123audiodec.lo' libtool=yes @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(libgstdivxenc_la_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o libgstdivxenc_la-gstdivxenc.lo `test -f 'gstdivxenc.c' || echo '$(srcdir)/'`gstdivxenc.c +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(libgstmpg123_la_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libgstmpg123_la_CFLAGS) $(CFLAGS) -c -o libgstmpg123_la-gstmpg123audiodec.lo `test -f 'gstmpg123audiodec.c' || echo '$(srcdir)/'`gstmpg123audiodec.c mostlyclean-libtool: -rm -f *.lo @@ -945,6 +933,21 @@ uninstall-am: uninstall-pluginLTLIBRARIES tags uninstall uninstall-am uninstall-pluginLTLIBRARIES +Android.mk: Makefile.am $(BUILT_SOURCES) + androgenizer \ + -:PROJECT libgstmpg123 -:SHARED libgstmpg123 \ + -:TAGS eng debug \ + -:REL_TOP $(top_srcdir) -:ABS_TOP $(abs_top_srcdir) \ + -:SOURCES $(libgstmpg123_la_SOURCES) \ + -:CPPFLAGS $(CPPFLAGS) \ + -:CFLAGS $(DEFS) $(DEFAULT_INCLUDES) $(libgstmpg123_la_CFLAGS) \ + -:LDFLAGS $(libgstmpg123_la_LDFLAGS) \ + $(libgstmpg123_la_LIBADD) \ + -ldl \ + -:PASSTHROUGH LOCAL_ARM_MODE:=arm \ + LOCAL_MODULE_PATH:='$$(TARGET_OUT)/lib/gstreamer-@GST_API_VERSION@' \ + > $@ + # Tell versions [3.59,3.63) of GNU make to not export all variables. # Otherwise a system limit (for SysV at least) may be exceeded. .NOEXPORT: diff --git a/ext/mpg123/gstmpg123audiodec.c b/ext/mpg123/gstmpg123audiodec.c new file mode 100644 index 00000000..ec6a2fc1 --- /dev/null +++ b/ext/mpg123/gstmpg123audiodec.c @@ -0,0 +1,625 @@ +/* MP3 decoding plugin for GStreamer using the mpg123 library + * Copyright (C) 2012 Carlos Rafael Giani + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library 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 + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA + */ + +#ifdef HAVE_CONFIG_H +#include <config.h> +#endif + +#include "gstmpg123audiodec.h" + +#include <stdlib.h> +#include <string.h> + +GST_DEBUG_CATEGORY_STATIC (mpg123_debug); +#define GST_CAT_DEFAULT mpg123_debug + +/* + * Omitted sample formats that mpg123 supports (or at least can support): + * - 8bit integer signed + * - 8bit integer unsigned + * - a-law + * - mu-law + * - 64bit float + * + * The first four formats are not supported by the GstAudioDecoder base class. + * (The internal gst_audio_format_from_caps_structure() call fails.) + * + * The 64bit float issue is tricky. mpg123 actually decodes to "real", + * not necessarily to "float". + * + * "real" can be fixed point, 32bit float, 64bit float. There seems to be + * no way how to find out which one of them is actually used. + * + * However, in all known installations, "real" equals 32bit float, so that's + * what is used. + */ + +static GstStaticPadTemplate sink_template = GST_STATIC_PAD_TEMPLATE ("sink", + GST_PAD_SINK, + GST_PAD_ALWAYS, + GST_STATIC_CAPS ("audio/mpeg, " + "mpegversion = (int) { 1 }, " + "layer = (int) [ 1, 3 ], " + "rate = (int) { 8000, 11025, 12000, 16000, 22050, 24000, 32000, 44100, 48000 }, " + "channels = (int) [ 1, 2 ], " "parsed = (boolean) true ") + ); + +static void gst_mpg123_audio_dec_finalize (GObject * object); +static gboolean gst_mpg123_audio_dec_start (GstAudioDecoder * dec); +static gboolean gst_mpg123_audio_dec_stop (GstAudioDecoder * dec); +static GstFlowReturn gst_mpg123_audio_dec_push_decoded_bytes (GstMpg123AudioDec + * mpg123_decoder, unsigned char const *decoded_bytes, + size_t const num_decoded_bytes); +static GstFlowReturn gst_mpg123_audio_dec_handle_frame (GstAudioDecoder * dec, + GstBuffer * buffer); +static gboolean gst_mpg123_audio_dec_set_format (GstAudioDecoder * dec, + GstCaps * incoming_caps); +static void gst_mpg123_audio_dec_flush (GstAudioDecoder * dec, gboolean hard); + +G_DEFINE_TYPE (GstMpg123AudioDec, gst_mpg123_audio_dec, GST_TYPE_AUDIO_DECODER); + +static void +gst_mpg123_audio_dec_class_init (GstMpg123AudioDecClass * klass) +{ + GObjectClass *object_class; + GstAudioDecoderClass *base_class; + GstElementClass *element_class; + GstPadTemplate *src_template; + int error; + + GST_DEBUG_CATEGORY_INIT (mpg123_debug, "mpg123", 0, "mpg123 mp3 decoder"); + + object_class = G_OBJECT_CLASS (klass); + base_class = GST_AUDIO_DECODER_CLASS (klass); + element_class = GST_ELEMENT_CLASS (klass); + + object_class->finalize = gst_mpg123_audio_dec_finalize; + + gst_element_class_set_static_metadata (element_class, + "mpg123 mp3 decoder", + "Codec/Decoder/Audio", + "Decodes mp3 streams using the mpg123 library", + "Carlos Rafael Giani <dv@pseudoterminal.org>"); + + /* + Not using static pad template for srccaps, since the comma-separated list of formats needs to be + created depending on whatever mpg123 supports + */ + { + const int *format_list; + const long *rates_list; + size_t num, i; + GString *s; + + s = g_string_new ("audio/x-raw, "); + + mpg123_encodings (&format_list, &num); + g_string_append (s, "format = { "); + for (i = 0; i < num; ++i) { + switch (format_list[i]) { + case MPG123_ENC_SIGNED_16: + g_string_append (s, (i > 0) ? ", " : ""); + g_string_append (s, GST_AUDIO_NE (S16)); + break; + case MPG123_ENC_UNSIGNED_16: + g_string_append (s, (i > 0) ? ", " : ""); + g_string_append (s, GST_AUDIO_NE (U16)); + break; + case MPG123_ENC_SIGNED_24: + g_string_append (s, (i > 0) ? ", " : ""); + g_string_append (s, GST_AUDIO_NE (S24)); + break; + case MPG123_ENC_UNSIGNED_24: + g_string_append (s, (i > 0) ? ", " : ""); + g_string_append (s, GST_AUDIO_NE (U24)); + break; + case MPG123_ENC_SIGNED_32: + g_string_append (s, (i > 0) ? ", " : ""); + g_string_append (s, GST_AUDIO_NE (S32)); + break; + case MPG123_ENC_UNSIGNED_32: + g_string_append (s, (i > 0) ? ", " : ""); + g_string_append (s, GST_AUDIO_NE (U32)); + break; + case MPG123_ENC_FLOAT_32: + g_string_append (s, (i > 0) ? ", " : ""); + g_string_append (s, GST_AUDIO_NE (F32)); + break; + default: + GST_DEBUG ("Ignoring mpg123 format %d", format_list[i]); + break; + } + } + g_string_append (s, " }, "); + + mpg123_rates (&rates_list, &num); + g_string_append (s, "rate = (int) { "); + for (i = 0; i < num; ++i) { + g_string_append_printf (s, "%s%lu", (i > 0) ? ", " : "", rates_list[i]); + } + g_string_append (s, "}, "); + + g_string_append (s, "channels = (int) [ 1, 2 ], "); + g_string_append (s, "layout = (string) interleaved"); + + src_template = gst_pad_template_new ("src", GST_PAD_SRC, GST_PAD_ALWAYS, + gst_caps_from_string (s->str)); + + g_string_free (s, TRUE); + } + + gst_element_class_add_pad_template (element_class, + gst_static_pad_template_get (&sink_template)); + gst_element_class_add_pad_template (element_class, src_template); + + base_class->start = GST_DEBUG_FUNCPTR (gst_mpg123_audio_dec_start); + base_class->stop = GST_DEBUG_FUNCPTR (gst_mpg123_audio_dec_stop); + base_class->handle_frame = + GST_DEBUG_FUNCPTR (gst_mpg123_audio_dec_handle_frame); + base_class->set_format = GST_DEBUG_FUNCPTR (gst_mpg123_audio_dec_set_format); + base_class->flush = GST_DEBUG_FUNCPTR (gst_mpg123_audio_dec_flush); + + error = mpg123_init (); + if (G_UNLIKELY (error != MPG123_OK)) + GST_ERROR ("Could not initialize mpg123 library: %s", + mpg123_plain_strerror (error)); + else + GST_TRACE ("mpg123 library initialized"); +} + + +void +gst_mpg123_audio_dec_init (GstMpg123AudioDec * mpg123_decoder) +{ + mpg123_decoder->handle = NULL; +} + + +static void +gst_mpg123_audio_dec_finalize (GObject * object) +{ + GstMpg123AudioDec *mpg123_decoder = GST_MPG123_AUDIO_DEC (object); + if (G_LIKELY (mpg123_decoder->handle != NULL)) { + mpg123_delete (mpg123_decoder->handle); + mpg123_decoder->handle = NULL; + } +} + + +static gboolean +gst_mpg123_audio_dec_start (GstAudioDecoder * dec) +{ + GstMpg123AudioDec *mpg123_decoder; + int error; + + mpg123_decoder = GST_MPG123_AUDIO_DEC (dec); + error = 0; + + mpg123_decoder->handle = mpg123_new (NULL, &error); + mpg123_decoder->has_next_audioinfo = FALSE; + mpg123_decoder->frame_offset = 0; + + /* + Initially, the mpg123 handle comes with a set of default formats supported. This clears this set. + This is necessary, since only one format shall be supported (see set_format for more). + */ + mpg123_format_none (mpg123_decoder->handle); + + mpg123_param (mpg123_decoder->handle, MPG123_REMOVE_FLAGS, MPG123_GAPLESS, 0); /* Built-in mpg123 support for gapless decoding is disabled for now, since it does not work well with seeking */ + mpg123_param (mpg123_decoder->handle, MPG123_ADD_FLAGS, MPG123_SEEKBUFFER, 0); /* Tells mpg123 to use a small read-ahead buffer for better MPEG sync; essential for MP3 radio streams */ + mpg123_param (mpg123_decoder->handle, MPG123_RESYNC_LIMIT, -1, 0); /* Sets the resync limit to the end of the stream (e.g. don't give up prematurely) */ + + /* Open in feed mode (= encoded data is fed manually into the handle). */ + error = mpg123_open_feed (mpg123_decoder->handle); + + if (G_UNLIKELY (error != MPG123_OK)) { + GstElement *element = GST_ELEMENT (dec); + GST_ELEMENT_ERROR (element, STREAM, DECODE, (NULL), + ("Error opening mpg123 feed: %s", mpg123_plain_strerror (error))); + mpg123_close (mpg123_decoder->handle); + mpg123_delete (mpg123_decoder->handle); + mpg123_decoder->handle = NULL; + return FALSE; + } + + GST_DEBUG_OBJECT (dec, "mpg123 decoder started"); + + return TRUE; +} + + +static gboolean +gst_mpg123_audio_dec_stop (GstAudioDecoder * dec) +{ + GstMpg123AudioDec *mpg123_decoder = GST_MPG123_AUDIO_DEC (dec); + + if (G_LIKELY (mpg123_decoder->handle != NULL)) { + mpg123_close (mpg123_decoder->handle); + mpg123_delete (mpg123_decoder->handle); + mpg123_decoder->handle = NULL; + } + + GST_DEBUG_OBJECT (dec, "mpg123 decoder stopped"); + + return TRUE; +} + + +static GstFlowReturn +gst_mpg123_audio_dec_push_decoded_bytes (GstMpg123AudioDec * mpg123_decoder, + unsigned char const *decoded_bytes, size_t const num_decoded_bytes) +{ + GstBuffer *output_buffer; + GstFlowReturn alloc_error; + GstAudioDecoder *dec; + + output_buffer = NULL; + dec = GST_AUDIO_DECODER (mpg123_decoder); + + if ((num_decoded_bytes == 0) || (decoded_bytes == NULL)) { + /* This occurs in the first few frames, which do not carry data; once MPG123_AUDIO_DEC_NEW_FORMAT is received, the empty frames stop occurring */ + GST_TRACE_OBJECT (mpg123_decoder, + "Nothing was decoded -> no output buffer to push"); + return GST_FLOW_OK; + } + + output_buffer = gst_buffer_new_allocate (NULL, num_decoded_bytes, NULL); + alloc_error = (output_buffer == NULL) ? GST_FLOW_ERROR : GST_FLOW_OK; + + if (alloc_error != GST_FLOW_OK) { + /* This is necessary to advance playback in time, even when nothing was decoded. */ + return gst_audio_decoder_finish_frame (dec, NULL, 1); + } else { + GstMapInfo info; + + if (gst_buffer_map (output_buffer, &info, GST_MAP_WRITE)) { + if (info.size != num_decoded_bytes) + GST_ERROR_OBJECT (mpg123_decoder, + "Mapped memory region has size %u instead of expected size %u", + info.size, num_decoded_bytes); + else + memcpy (info.data, decoded_bytes, num_decoded_bytes); + + gst_buffer_unmap (output_buffer, &info); + } else + GST_ERROR_OBJECT (mpg123_decoder, "Could not map buffer"); + + return gst_audio_decoder_finish_frame (dec, output_buffer, 1); + } +} + + +static GstFlowReturn +gst_mpg123_audio_dec_handle_frame (GstAudioDecoder * dec, GstBuffer * buffer) +{ + GstMpg123AudioDec *mpg123_decoder; + int decode_error; + unsigned char *decoded_bytes; + size_t num_decoded_bytes; + + if (G_UNLIKELY (!buffer)) + return GST_FLOW_OK; + + mpg123_decoder = GST_MPG123_AUDIO_DEC (dec); + + if (G_UNLIKELY (mpg123_decoder->handle == NULL)) { + GstElement *element = GST_ELEMENT (dec); + GST_ELEMENT_ERROR (element, STREAM, DECODE, (NULL), + ("mpg123 handle is NULL")); + return GST_FLOW_ERROR; + } + + /* The actual decoding */ + { + unsigned char const *inmemory; + size_t inmemsize; + GstMemory *memory; + GstMapInfo info; + + memory = gst_buffer_get_all_memory (buffer); + if (memory == NULL) + return GST_FLOW_ERROR; + + if (!gst_memory_map (memory, &info, GST_MAP_READ)) { + gst_memory_unref (memory); + return GST_FLOW_ERROR; + } + + inmemory = info.data; + inmemsize = info.size; + + mpg123_feed (mpg123_decoder->handle, inmemory, inmemsize); + decoded_bytes = NULL; + num_decoded_bytes = 0; + decode_error = mpg123_decode_frame (mpg123_decoder->handle, + &mpg123_decoder->frame_offset, &decoded_bytes, &num_decoded_bytes); + + gst_memory_unmap (memory, &info); + gst_memory_unref (memory); + } + + switch (decode_error) { + case MPG123_NEW_FORMAT: + /* + As mentioned in gst_mpg123_audio_dec_set_format(), the next audioinfo is not set immediately; + instead, the code waits for mpg123 to take note of the new format, and then sets the audioinfo + This fixes glitches with mp3s containing several format headers (for example, first half using 44.1kHz, second half 32 kHz) + */ + + GST_DEBUG_OBJECT (dec, + "mpg123 reported a new format -> setting next srccaps"); + + gst_mpg123_audio_dec_push_decoded_bytes (mpg123_decoder, decoded_bytes, + num_decoded_bytes); + + /* + If there is a next audioinfo, use it, then set has_next_audioinfo to FALSE, to make sure + gst_audio_decoder_set_output_format() isn't called again until set_format is called by the base class + */ + if (mpg123_decoder->has_next_audioinfo) { + if (!gst_audio_decoder_set_output_format (dec, + &(mpg123_decoder->next_audioinfo))) { + GstElement *element = GST_ELEMENT (dec); + GST_ELEMENT_ERROR (element, STREAM, DECODE, (NULL), + ("Unable to set output format")); + } + mpg123_decoder->has_next_audioinfo = FALSE; + } + + break; + + case MPG123_NEED_MORE: + case MPG123_OK: + return gst_mpg123_audio_dec_push_decoded_bytes (mpg123_decoder, + decoded_bytes, num_decoded_bytes); + + /* If this happens, then the upstream parser somehow missed the ending of the bitstream */ + case MPG123_DONE: + GST_DEBUG_OBJECT (dec, "mpg123 is done decoding"); + gst_mpg123_audio_dec_push_decoded_bytes (mpg123_decoder, decoded_bytes, + num_decoded_bytes); + return GST_FLOW_EOS; + + /* Anything else is considered an error */ + default: + { + GstElement *element = GST_ELEMENT (dec); + GST_ELEMENT_ERROR (element, STREAM, DECODE, (NULL), ("Decoding error: %s", + mpg123_plain_strerror (decode_error))); + + return GST_FLOW_ERROR; + } + } + + return GST_FLOW_OK; +} + + +static gboolean +gst_mpg123_audio_dec_set_format (GstAudioDecoder * dec, GstCaps * incoming_caps) +{ +/* + Using the parsed information upstream, and the list of allowed caps downstream, this code + tries to find a suitable audio info. It is important to keep in mind that the rate and number of channels + should never deviate from the one the bitstream has, otherwise mpg123 has to mix channels and/or + resample (and as its docs say, its internal resampler is very crude). The sample format, however, + can be chosen freely, because the MPEG specs do not mandate any special format. + Therefore, rate and number of channels are taken from upstream (which parsed the MPEG frames, so + the incoming_caps contain exactly the rate and number of channels the bitstream actually has), while + the sample format is chosen by trying out all caps that are allowed by downstream. This way, the output + is adjusted to what the downstream prefers. + + Also, the new output audio info is not set immediately. Instead, it is considered the "next audioinfo". + The code waits for mpg123 to notice the new format (= when mpg123_decode_frame() returns MPG123_AUDIO_DEC_NEW_FORMAT), + and then sets the next audioinfo. Otherwise, the next audioinfo is set too soon, which may cause problems with + mp3s containing several format headers. One example would be an mp3 with the first 30 seconds using 44.1 kHz, + then the next 30 seconds using 32 kHz. Rare, but possible. + + STEPS: + + 1. get rate and channels from incoming_caps + 2. get allowed caps from src pad + 3. for each structure in allowed caps: + 3.1. take format + 3.2. if the combination of format with rate and channels is unsupported by mpg123, go to (3), + or exit with error if there are no more structures to try + 3.3. create next audioinfo out of rate,channels,format, and exit +*/ + + + int rate, channels; + GstMpg123AudioDec *mpg123_decoder; + GstCaps *allowed_srccaps; + guint structure_nr; + gboolean match_found = FALSE; + + mpg123_decoder = GST_MPG123_AUDIO_DEC (dec); + + if (G_UNLIKELY (mpg123_decoder->handle == NULL)) { + GstElement *element = GST_ELEMENT (dec); + GST_ELEMENT_ERROR (element, STREAM, DECODE, (NULL), + ("mpg123 handle is NULL")); + return FALSE; + } + + mpg123_decoder->has_next_audioinfo = FALSE; + + /* Get rate and channels from incoming_caps */ + { + GstStructure *structure; + gboolean err = FALSE; + + /* Only the first structure is used (multiple incoming structures don't make sense */ + structure = gst_caps_get_structure (incoming_caps, 0); + + if (!gst_structure_get_int (structure, "rate", &rate)) { + err = TRUE; + GST_ERROR_OBJECT (dec, "Incoming caps do not have a rate value"); + } + if (!gst_structure_get_int (structure, "channels", &channels)) { + err = TRUE; + GST_ERROR_OBJECT (dec, "Incoming caps do not have a channel value"); + } + + if (err) + return FALSE; + } + + /* Get the caps that are allowed by downstream */ + { + GstCaps *allowed_srccaps_unnorm = + gst_pad_get_allowed_caps (GST_AUDIO_DECODER_SRC_PAD (dec)); + allowed_srccaps = gst_caps_normalize (allowed_srccaps_unnorm); + /* TODO: this causes errors with 1.0 - perhaps a bug? */ + /*gst_caps_unref(allowed_srccaps_unnorm); */ + } + + /* Go through all allowed caps, pick the first one that matches */ + for (structure_nr = 0; structure_nr < gst_caps_get_size (allowed_srccaps); + ++structure_nr) { + GstStructure *structure; + gchar const *format_str; + GstAudioFormat format; + int encoding; + + structure = gst_caps_get_structure (allowed_srccaps, structure_nr); + + format_str = gst_structure_get_string (structure, "format"); + if (format_str == NULL) { + GST_DEBUG_OBJECT (dec, "Could not get format from src caps"); + continue; + } + + format = gst_audio_format_from_string (format_str); + if (format == GST_AUDIO_FORMAT_UNKNOWN) { + GST_DEBUG_OBJECT (dec, "Unknown format %s", format_str); + continue; + } + + switch (format) { + case GST_AUDIO_FORMAT_S16: + encoding = MPG123_ENC_SIGNED_16; + break; + case GST_AUDIO_FORMAT_S24: + encoding = MPG123_ENC_SIGNED_24; + break; + case GST_AUDIO_FORMAT_S32: + encoding = MPG123_ENC_SIGNED_32; + break; + case GST_AUDIO_FORMAT_U16: + encoding = MPG123_ENC_UNSIGNED_16; + break; + case GST_AUDIO_FORMAT_U24: + encoding = MPG123_ENC_UNSIGNED_24; + break; + case GST_AUDIO_FORMAT_U32: + encoding = MPG123_ENC_UNSIGNED_32; + break; + case GST_AUDIO_FORMAT_F32: + encoding = MPG123_ENC_FLOAT_32; + break; + default: + GST_DEBUG_OBJECT (dec, + "Format %s in srccaps is not supported", format_str); + continue; + } + + { + int err; + + /* Cleanup old formats & set new one */ + mpg123_format_none (mpg123_decoder->handle); + err = mpg123_format (mpg123_decoder->handle, rate, channels, encoding); + if (err != MPG123_OK) { + GST_DEBUG_OBJECT (dec, + "mpg123 cannot use caps %" GST_PTR_FORMAT + " because mpg123_format() failed: %s", structure, + mpg123_plain_strerror (err)); + continue; + } + } + + gst_audio_info_init (&(mpg123_decoder->next_audioinfo)); + gst_audio_info_set_format (&(mpg123_decoder->next_audioinfo), format, rate, + channels, NULL); + GST_DEBUG_OBJECT (dec, "The next audio format is: %s, %u Hz, %u channels", + format_str, rate, channels); + mpg123_decoder->has_next_audioinfo = TRUE; + + match_found = TRUE; + + break; + } + + gst_caps_unref (allowed_srccaps); + + return match_found; +} + + +static void +gst_mpg123_audio_dec_flush (GstAudioDecoder * dec, gboolean hard) +{ + int error; + GstMpg123AudioDec *mpg123_decoder; + + hard = hard; + + GST_DEBUG_OBJECT (dec, "Flushing decoder"); + + mpg123_decoder = GST_MPG123_AUDIO_DEC (dec); + + if (G_UNLIKELY (mpg123_decoder->handle == NULL)) { + GstElement *element = GST_ELEMENT (dec); + GST_ELEMENT_ERROR (element, STREAM, DECODE, (NULL), + ("mpg123 handle is NULL")); + return; + } + + /* Flush by reopening the feed */ + mpg123_close (mpg123_decoder->handle); + error = mpg123_open_feed (mpg123_decoder->handle); + + if (G_UNLIKELY (error != MPG123_OK)) { + GstElement *element = GST_ELEMENT (dec); + GST_ELEMENT_ERROR (element, STREAM, DECODE, (NULL), + ("Error reopening mpg123 feed: %s", mpg123_plain_strerror (error))); + mpg123_close (mpg123_decoder->handle); + mpg123_delete (mpg123_decoder->handle); + mpg123_decoder->handle = NULL; + } + + mpg123_decoder->has_next_audioinfo = FALSE; + + /* + opening/closing feeds do not affect the format defined by the mpg123_format() call that was made in gst_mpg123_audio_dec_set_format(), + and since the up/downstream caps are not expected to change here, no mpg123_format() calls are done + */ +} + +static gboolean +plugin_init (GstPlugin * plugin) +{ + return gst_element_register (plugin, "mpg123audiodec", + GST_RANK_NONE, gst_mpg123_audio_dec_get_type ()); +} + +GST_PLUGIN_DEFINE (GST_VERSION_MAJOR, + GST_VERSION_MINOR, + mpg123, "mp3 decoding based on the mpg123 library", + plugin_init, VERSION, "LGPL", GST_PACKAGE_NAME, GST_PACKAGE_ORIGIN) diff --git a/ext/mpg123/gstmpg123audiodec.h b/ext/mpg123/gstmpg123audiodec.h new file mode 100644 index 00000000..e837a56b --- /dev/null +++ b/ext/mpg123/gstmpg123audiodec.h @@ -0,0 +1,62 @@ +/* MP3 decoding plugin for GStreamer using the mpg123 library + * Copyright (C) 2012 Carlos Rafael Giani + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library 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 + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA + */ + +#ifndef __GST_MPG123_AUDIO_DEC_H__ +#define __GST_MPG123_AUDIO_DEC_H__ + +#include <gst/gst.h> +#include <gst/audio/gstaudiodecoder.h> +#include <mpg123.h> + + +G_BEGIN_DECLS + + +typedef struct _GstMpg123AudioDec GstMpg123AudioDec; +typedef struct _GstMpg123AudioDecClass GstMpg123AudioDecClass; + + +#define GST_TYPE_MPG123_AUDIO_DEC (gst_mpg123_audio_dec_get_type()) +#define GST_MPG123_AUDIO_DEC(obj) (G_TYPE_CHECK_INSTANCE_CAST((obj), GST_TYPE_MPG123_AUDIO_DEC,GstMpg123AudioDec)) +#define GST_MPG123_AUDIO_DEC_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST((klass), GST_TYPE_MPG123_AUDIO_DEC,GstMpg123AudioDecClass)) +#define GST_IS_MPG123_AUDIO_DEC(obj) (G_TYPE_CHECK_INSTANCE_TYPE((obj), GST_TYPE_MPG123_AUDIO_DEC)) +#define GST_IS_MPG123_AUDIO_DEC_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE((klass), GST_TYPE_MPG123_AUDIO_DEC)) + +struct _GstMpg123AudioDec +{ + GstAudioDecoder parent; + + mpg123_handle *handle; + + GstAudioInfo next_audioinfo; + gboolean has_next_audioinfo; + + off_t frame_offset; +}; + + +struct _GstMpg123AudioDecClass +{ + GstAudioDecoderClass parent_class; +}; + +G_GNUC_INTERNAL GType gst_mpg123_audio_dec_get_type (void); + +G_END_DECLS + +#endif diff --git a/ext/mplex/Makefile.in b/ext/mplex/Makefile.in index 27b235aa..b1d34c62 100644 --- a/ext/mplex/Makefile.in +++ b/ext/mplex/Makefile.in @@ -1,4 +1,4 @@ -# Makefile.in generated by automake 1.11.5 from Makefile.am. +# Makefile.in generated by automake 1.11.6 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, @@ -241,11 +241,10 @@ DIRECT3D_LIBS = @DIRECT3D_LIBS@ DIRECTDRAW_LIBS = @DIRECTDRAW_LIBS@ DIRECTFB_CFLAGS = @DIRECTFB_CFLAGS@ DIRECTFB_LIBS = @DIRECTFB_LIBS@ +DIRECTSHOW_LIBS = @DIRECTSHOW_LIBS@ DIRECTSOUND_LIBS = @DIRECTSOUND_LIBS@ DIRECTX_CFLAGS = @DIRECTX_CFLAGS@ DIRECTX_LDFLAGS = @DIRECTX_LDFLAGS@ -DIVXDEC_LIBS = @DIVXDEC_LIBS@ -DIVXENC_LIBS = @DIVXENC_LIBS@ DLLTOOL = @DLLTOOL@ DSYMUTIL = @DSYMUTIL@ DTS_LIBS = @DTS_LIBS@ @@ -280,7 +279,9 @@ GIO_LIBS = @GIO_LIBS@ GLIB_CFLAGS = @GLIB_CFLAGS@ GLIB_COMPILE_SCHEMAS = @GLIB_COMPILE_SCHEMAS@ GLIB_EXTRA_CFLAGS = @GLIB_EXTRA_CFLAGS@ +GLIB_GENMARSHAL = @GLIB_GENMARSHAL@ GLIB_LIBS = @GLIB_LIBS@ +GLIB_MKENUMS = @GLIB_MKENUMS@ GLIB_PREFIX = @GLIB_PREFIX@ GLIB_REQ = @GLIB_REQ@ GME_LIBS = @GME_LIBS@ @@ -356,13 +357,14 @@ HAVE_CXX = @HAVE_CXX@ HAVE_DIRECT3D = @HAVE_DIRECT3D@ HAVE_DIRECT3D9 = @HAVE_DIRECT3D9@ HAVE_DIRECTDRAW = @HAVE_DIRECTDRAW@ +HAVE_DIRECTSHOW = @HAVE_DIRECTSHOW@ HAVE_DIRECTSOUND = @HAVE_DIRECTSOUND@ HAVE_DTS = @HAVE_DTS@ HAVE_FAAC = @HAVE_FAAC@ HAVE_FAAD = @HAVE_FAAD@ HAVE_FLITE = @HAVE_FLITE@ HAVE_GSM = @HAVE_GSM@ -HAVE_JP2K = @HAVE_JP2K@ +HAVE_JASPER = @HAVE_JASPER@ HAVE_NAS = @HAVE_NAS@ HAVE_VPX = @HAVE_VPX@ HAVE_WILDMIDI = @HAVE_WILDMIDI@ @@ -376,7 +378,7 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ INTLLIBS = @INTLLIBS@ INTL_MACOSX_LIBS = @INTL_MACOSX_LIBS@ -JP2K_LIBS = @JP2K_LIBS@ +JASPER_LIBS = @JASPER_LIBS@ KATE_CFLAGS = @KATE_CFLAGS@ KATE_LIBS = @KATE_LIBS@ LD = @LD@ @@ -412,6 +414,8 @@ MODPLUG_CFLAGS = @MODPLUG_CFLAGS@ MODPLUG_LIBS = @MODPLUG_LIBS@ MPEG2ENC_CFLAGS = @MPEG2ENC_CFLAGS@ MPEG2ENC_LIBS = @MPEG2ENC_LIBS@ +MPG123_CFLAGS = @MPG123_CFLAGS@ +MPG123_LIBS = @MPG123_LIBS@ MPLEX_CFLAGS = @MPLEX_CFLAGS@ MPLEX_LDFLAGS = @MPLEX_LDFLAGS@ MPLEX_LIBS = @MPLEX_LIBS@ diff --git a/ext/mplex/gstmplex.cc b/ext/mplex/gstmplex.cc index d548f783..fc5c459b 100644 --- a/ext/mplex/gstmplex.cc +++ b/ext/mplex/gstmplex.cc @@ -537,7 +537,7 @@ gst_mplex_start_task (GstMplex * mplex) if (G_UNLIKELY (mplex->srcresult == GST_FLOW_CUSTOM_SUCCESS) && mplex->job->video_tracks == mplex->num_vpads && mplex->job->audio_tracks == mplex->num_apads) { - gst_pad_start_task (mplex->srcpad, (GstTaskFunction) gst_mplex_loop, mplex); + gst_pad_start_task (mplex->srcpad, (GstTaskFunction) gst_mplex_loop, mplex, NULL); mplex->srcresult = GST_FLOW_OK; } } diff --git a/ext/mplex/gstmplexjob.cc b/ext/mplex/gstmplexjob.cc index fa6f8b7a..90479585 100644 --- a/ext/mplex/gstmplexjob.cc +++ b/ext/mplex/gstmplexjob.cc @@ -41,6 +41,7 @@ enum /* FILL ME */ }; +#define DEFAULT_FORMAT MPEG_FORMAT_DVD /* * Property enumeration types. */ @@ -55,16 +56,20 @@ gst_mplex_format_get_type (void) if (!mplex_format_type) { static const GEnumValue mplex_formats[] = { - {0, "Generic MPEG-1", "0"}, - {1, "Standard VCD", "1"}, - {2, "User VCD", "2"}, - {3, "Generic MPEG-2", "3"}, - {4, "Standard SVCD", "4"}, - {5, "User SVCD", "5"}, - {6, "VCD Stills sequences", "6"}, - {7, "SVCD Stills sequences", "7"}, - {8, "DVD MPEG-2 for dvdauthor", "8"}, - {9, "DVD MPEG-2", "9"}, + {MPEG_FORMAT_MPEG1, "Generic MPEG-1", "mpeg-1"}, + {MPEG_FORMAT_VCD, "Standard VCD", "vcd"}, + {MPEG_FORMAT_VCD_NSR, "User VCD", "vcd-nsr"}, + {MPEG_FORMAT_MPEG2, "Generic MPEG-2", "mpeg-2"}, + {MPEG_FORMAT_SVCD, "Standard SVCD", "svcd"}, + {MPEG_FORMAT_SVCD_NSR, "User SVCD", "svcd-nsr"}, + {MPEG_FORMAT_VCD_STILL, "VCD Stills sequences", "vcd-still"}, + {MPEG_FORMAT_SVCD_STILL, "SVCD Stills sequences", "svcd-still"}, + {MPEG_FORMAT_DVD_NAV, "DVD MPEG-2 for dvdauthor", "dvd-nav"}, + {MPEG_FORMAT_DVD, "DVD MPEG-2", "dvd"}, + {MPEG_FORMAT_ATSC480i, "ATSC 480i", "atsc-480i"}, + {MPEG_FORMAT_ATSC480p, "ATSC 480p", "atsc-480p"}, + {MPEG_FORMAT_ATSC720p, "ATSC 720p", "atsc-720p"}, + {MPEG_FORMAT_ATSC1080i, "ATSC 1080i", "atsc-1080i"}, {0, NULL, NULL}, }; @@ -96,7 +101,7 @@ GstMplexJob::initProperties (GObjectClass * klass) /* encoding profile */ g_object_class_install_property (klass, ARG_FORMAT, g_param_spec_enum ("format", "Format", "Encoding profile format", - GST_TYPE_MPLEX_FORMAT, 0, + GST_TYPE_MPLEX_FORMAT, DEFAULT_FORMAT, (GParamFlags) (G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS))); /* total stream datarate. Normally, this shouldn't be needed, but diff --git a/ext/musepack/Makefile.in b/ext/musepack/Makefile.in index 22781f64..f6f7aa11 100644 --- a/ext/musepack/Makefile.in +++ b/ext/musepack/Makefile.in @@ -1,4 +1,4 @@ -# Makefile.in generated by automake 1.11.5 from Makefile.am. +# Makefile.in generated by automake 1.11.6 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, @@ -238,11 +238,10 @@ DIRECT3D_LIBS = @DIRECT3D_LIBS@ DIRECTDRAW_LIBS = @DIRECTDRAW_LIBS@ DIRECTFB_CFLAGS = @DIRECTFB_CFLAGS@ DIRECTFB_LIBS = @DIRECTFB_LIBS@ +DIRECTSHOW_LIBS = @DIRECTSHOW_LIBS@ DIRECTSOUND_LIBS = @DIRECTSOUND_LIBS@ DIRECTX_CFLAGS = @DIRECTX_CFLAGS@ DIRECTX_LDFLAGS = @DIRECTX_LDFLAGS@ -DIVXDEC_LIBS = @DIVXDEC_LIBS@ -DIVXENC_LIBS = @DIVXENC_LIBS@ DLLTOOL = @DLLTOOL@ DSYMUTIL = @DSYMUTIL@ DTS_LIBS = @DTS_LIBS@ @@ -277,7 +276,9 @@ GIO_LIBS = @GIO_LIBS@ GLIB_CFLAGS = @GLIB_CFLAGS@ GLIB_COMPILE_SCHEMAS = @GLIB_COMPILE_SCHEMAS@ GLIB_EXTRA_CFLAGS = @GLIB_EXTRA_CFLAGS@ +GLIB_GENMARSHAL = @GLIB_GENMARSHAL@ GLIB_LIBS = @GLIB_LIBS@ +GLIB_MKENUMS = @GLIB_MKENUMS@ GLIB_PREFIX = @GLIB_PREFIX@ GLIB_REQ = @GLIB_REQ@ GME_LIBS = @GME_LIBS@ @@ -353,13 +354,14 @@ HAVE_CXX = @HAVE_CXX@ HAVE_DIRECT3D = @HAVE_DIRECT3D@ HAVE_DIRECT3D9 = @HAVE_DIRECT3D9@ HAVE_DIRECTDRAW = @HAVE_DIRECTDRAW@ +HAVE_DIRECTSHOW = @HAVE_DIRECTSHOW@ HAVE_DIRECTSOUND = @HAVE_DIRECTSOUND@ HAVE_DTS = @HAVE_DTS@ HAVE_FAAC = @HAVE_FAAC@ HAVE_FAAD = @HAVE_FAAD@ HAVE_FLITE = @HAVE_FLITE@ HAVE_GSM = @HAVE_GSM@ -HAVE_JP2K = @HAVE_JP2K@ +HAVE_JASPER = @HAVE_JASPER@ HAVE_NAS = @HAVE_NAS@ HAVE_VPX = @HAVE_VPX@ HAVE_WILDMIDI = @HAVE_WILDMIDI@ @@ -373,7 +375,7 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ INTLLIBS = @INTLLIBS@ INTL_MACOSX_LIBS = @INTL_MACOSX_LIBS@ -JP2K_LIBS = @JP2K_LIBS@ +JASPER_LIBS = @JASPER_LIBS@ KATE_CFLAGS = @KATE_CFLAGS@ KATE_LIBS = @KATE_LIBS@ LD = @LD@ @@ -409,6 +411,8 @@ MODPLUG_CFLAGS = @MODPLUG_CFLAGS@ MODPLUG_LIBS = @MODPLUG_LIBS@ MPEG2ENC_CFLAGS = @MPEG2ENC_CFLAGS@ MPEG2ENC_LIBS = @MPEG2ENC_LIBS@ +MPG123_CFLAGS = @MPG123_CFLAGS@ +MPG123_LIBS = @MPG123_LIBS@ MPLEX_CFLAGS = @MPLEX_CFLAGS@ MPLEX_LDFLAGS = @MPLEX_LDFLAGS@ MPLEX_LIBS = @MPLEX_LIBS@ diff --git a/ext/musepack/gstmusepackdec.c b/ext/musepack/gstmusepackdec.c index 73de6823..4aeaf17c 100644 --- a/ext/musepack/gstmusepackdec.c +++ b/ext/musepack/gstmusepackdec.c @@ -261,7 +261,7 @@ gst_musepackdec_handle_seek_event (GstMusepackDec * dec, GstEvent * event) GST_DEBUG_OBJECT (dec, "seek successful"); gst_pad_start_task (dec->sinkpad, - (GstTaskFunction) gst_musepackdec_loop, dec->sinkpad); + (GstTaskFunction) gst_musepackdec_loop, dec->sinkpad, NULL); GST_PAD_STREAM_UNLOCK (dec->sinkpad); @@ -493,7 +493,7 @@ gst_musepackdec_sink_activate_pull (GstPad * sinkpad, gboolean active) if (active) { result = gst_pad_start_task (sinkpad, - (GstTaskFunction) gst_musepackdec_loop, sinkpad); + (GstTaskFunction) gst_musepackdec_loop, sinkpad, NULL); } else { result = gst_pad_stop_task (sinkpad); } @@ -601,6 +601,8 @@ gst_musepackdec_loop (GstPad * sinkpad) gst_element_post_message (GST_ELEMENT (musepackdec), gst_message_new_segment_done (GST_OBJECT (musepackdec), GST_FORMAT_TIME, stop_time)); + gst_pad_push_event (musepackdec->srcpad, + gst_event_new_segment_done (GST_FORMAT_TIME, stop_time)); goto pause_task; } diff --git a/ext/musicbrainz/Makefile.in b/ext/musicbrainz/Makefile.in index 91582b02..55588b5e 100644 --- a/ext/musicbrainz/Makefile.in +++ b/ext/musicbrainz/Makefile.in @@ -1,4 +1,4 @@ -# Makefile.in generated by automake 1.11.5 from Makefile.am. +# Makefile.in generated by automake 1.11.6 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, @@ -237,11 +237,10 @@ DIRECT3D_LIBS = @DIRECT3D_LIBS@ DIRECTDRAW_LIBS = @DIRECTDRAW_LIBS@ DIRECTFB_CFLAGS = @DIRECTFB_CFLAGS@ DIRECTFB_LIBS = @DIRECTFB_LIBS@ +DIRECTSHOW_LIBS = @DIRECTSHOW_LIBS@ DIRECTSOUND_LIBS = @DIRECTSOUND_LIBS@ DIRECTX_CFLAGS = @DIRECTX_CFLAGS@ DIRECTX_LDFLAGS = @DIRECTX_LDFLAGS@ -DIVXDEC_LIBS = @DIVXDEC_LIBS@ -DIVXENC_LIBS = @DIVXENC_LIBS@ DLLTOOL = @DLLTOOL@ DSYMUTIL = @DSYMUTIL@ DTS_LIBS = @DTS_LIBS@ @@ -276,7 +275,9 @@ GIO_LIBS = @GIO_LIBS@ GLIB_CFLAGS = @GLIB_CFLAGS@ GLIB_COMPILE_SCHEMAS = @GLIB_COMPILE_SCHEMAS@ GLIB_EXTRA_CFLAGS = @GLIB_EXTRA_CFLAGS@ +GLIB_GENMARSHAL = @GLIB_GENMARSHAL@ GLIB_LIBS = @GLIB_LIBS@ +GLIB_MKENUMS = @GLIB_MKENUMS@ GLIB_PREFIX = @GLIB_PREFIX@ GLIB_REQ = @GLIB_REQ@ GME_LIBS = @GME_LIBS@ @@ -352,13 +353,14 @@ HAVE_CXX = @HAVE_CXX@ HAVE_DIRECT3D = @HAVE_DIRECT3D@ HAVE_DIRECT3D9 = @HAVE_DIRECT3D9@ HAVE_DIRECTDRAW = @HAVE_DIRECTDRAW@ +HAVE_DIRECTSHOW = @HAVE_DIRECTSHOW@ HAVE_DIRECTSOUND = @HAVE_DIRECTSOUND@ HAVE_DTS = @HAVE_DTS@ HAVE_FAAC = @HAVE_FAAC@ HAVE_FAAD = @HAVE_FAAD@ HAVE_FLITE = @HAVE_FLITE@ HAVE_GSM = @HAVE_GSM@ -HAVE_JP2K = @HAVE_JP2K@ +HAVE_JASPER = @HAVE_JASPER@ HAVE_NAS = @HAVE_NAS@ HAVE_VPX = @HAVE_VPX@ HAVE_WILDMIDI = @HAVE_WILDMIDI@ @@ -372,7 +374,7 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ INTLLIBS = @INTLLIBS@ INTL_MACOSX_LIBS = @INTL_MACOSX_LIBS@ -JP2K_LIBS = @JP2K_LIBS@ +JASPER_LIBS = @JASPER_LIBS@ KATE_CFLAGS = @KATE_CFLAGS@ KATE_LIBS = @KATE_LIBS@ LD = @LD@ @@ -408,6 +410,8 @@ MODPLUG_CFLAGS = @MODPLUG_CFLAGS@ MODPLUG_LIBS = @MODPLUG_LIBS@ MPEG2ENC_CFLAGS = @MPEG2ENC_CFLAGS@ MPEG2ENC_LIBS = @MPEG2ENC_LIBS@ +MPG123_CFLAGS = @MPG123_CFLAGS@ +MPG123_LIBS = @MPG123_LIBS@ MPLEX_CFLAGS = @MPLEX_CFLAGS@ MPLEX_LDFLAGS = @MPLEX_LDFLAGS@ MPLEX_LIBS = @MPLEX_LIBS@ diff --git a/ext/mythtv/Makefile.in b/ext/mythtv/Makefile.in index fdc8a519..5c347b3f 100644 --- a/ext/mythtv/Makefile.in +++ b/ext/mythtv/Makefile.in @@ -1,4 +1,4 @@ -# Makefile.in generated by automake 1.11.5 from Makefile.am. +# Makefile.in generated by automake 1.11.6 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, @@ -237,11 +237,10 @@ DIRECT3D_LIBS = @DIRECT3D_LIBS@ DIRECTDRAW_LIBS = @DIRECTDRAW_LIBS@ DIRECTFB_CFLAGS = @DIRECTFB_CFLAGS@ DIRECTFB_LIBS = @DIRECTFB_LIBS@ +DIRECTSHOW_LIBS = @DIRECTSHOW_LIBS@ DIRECTSOUND_LIBS = @DIRECTSOUND_LIBS@ DIRECTX_CFLAGS = @DIRECTX_CFLAGS@ DIRECTX_LDFLAGS = @DIRECTX_LDFLAGS@ -DIVXDEC_LIBS = @DIVXDEC_LIBS@ -DIVXENC_LIBS = @DIVXENC_LIBS@ DLLTOOL = @DLLTOOL@ DSYMUTIL = @DSYMUTIL@ DTS_LIBS = @DTS_LIBS@ @@ -276,7 +275,9 @@ GIO_LIBS = @GIO_LIBS@ GLIB_CFLAGS = @GLIB_CFLAGS@ GLIB_COMPILE_SCHEMAS = @GLIB_COMPILE_SCHEMAS@ GLIB_EXTRA_CFLAGS = @GLIB_EXTRA_CFLAGS@ +GLIB_GENMARSHAL = @GLIB_GENMARSHAL@ GLIB_LIBS = @GLIB_LIBS@ +GLIB_MKENUMS = @GLIB_MKENUMS@ GLIB_PREFIX = @GLIB_PREFIX@ GLIB_REQ = @GLIB_REQ@ GME_LIBS = @GME_LIBS@ @@ -352,13 +353,14 @@ HAVE_CXX = @HAVE_CXX@ HAVE_DIRECT3D = @HAVE_DIRECT3D@ HAVE_DIRECT3D9 = @HAVE_DIRECT3D9@ HAVE_DIRECTDRAW = @HAVE_DIRECTDRAW@ +HAVE_DIRECTSHOW = @HAVE_DIRECTSHOW@ HAVE_DIRECTSOUND = @HAVE_DIRECTSOUND@ HAVE_DTS = @HAVE_DTS@ HAVE_FAAC = @HAVE_FAAC@ HAVE_FAAD = @HAVE_FAAD@ HAVE_FLITE = @HAVE_FLITE@ HAVE_GSM = @HAVE_GSM@ -HAVE_JP2K = @HAVE_JP2K@ +HAVE_JASPER = @HAVE_JASPER@ HAVE_NAS = @HAVE_NAS@ HAVE_VPX = @HAVE_VPX@ HAVE_WILDMIDI = @HAVE_WILDMIDI@ @@ -372,7 +374,7 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ INTLLIBS = @INTLLIBS@ INTL_MACOSX_LIBS = @INTL_MACOSX_LIBS@ -JP2K_LIBS = @JP2K_LIBS@ +JASPER_LIBS = @JASPER_LIBS@ KATE_CFLAGS = @KATE_CFLAGS@ KATE_LIBS = @KATE_LIBS@ LD = @LD@ @@ -408,6 +410,8 @@ MODPLUG_CFLAGS = @MODPLUG_CFLAGS@ MODPLUG_LIBS = @MODPLUG_LIBS@ MPEG2ENC_CFLAGS = @MPEG2ENC_CFLAGS@ MPEG2ENC_LIBS = @MPEG2ENC_LIBS@ +MPG123_CFLAGS = @MPG123_CFLAGS@ +MPG123_LIBS = @MPG123_LIBS@ MPLEX_CFLAGS = @MPLEX_CFLAGS@ MPLEX_LDFLAGS = @MPLEX_LDFLAGS@ MPLEX_LIBS = @MPLEX_LIBS@ diff --git a/ext/nas/Makefile.in b/ext/nas/Makefile.in index a78b19f5..70065ab0 100644 --- a/ext/nas/Makefile.in +++ b/ext/nas/Makefile.in @@ -1,4 +1,4 @@ -# Makefile.in generated by automake 1.11.5 from Makefile.am. +# Makefile.in generated by automake 1.11.6 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, @@ -237,11 +237,10 @@ DIRECT3D_LIBS = @DIRECT3D_LIBS@ DIRECTDRAW_LIBS = @DIRECTDRAW_LIBS@ DIRECTFB_CFLAGS = @DIRECTFB_CFLAGS@ DIRECTFB_LIBS = @DIRECTFB_LIBS@ +DIRECTSHOW_LIBS = @DIRECTSHOW_LIBS@ DIRECTSOUND_LIBS = @DIRECTSOUND_LIBS@ DIRECTX_CFLAGS = @DIRECTX_CFLAGS@ DIRECTX_LDFLAGS = @DIRECTX_LDFLAGS@ -DIVXDEC_LIBS = @DIVXDEC_LIBS@ -DIVXENC_LIBS = @DIVXENC_LIBS@ DLLTOOL = @DLLTOOL@ DSYMUTIL = @DSYMUTIL@ DTS_LIBS = @DTS_LIBS@ @@ -276,7 +275,9 @@ GIO_LIBS = @GIO_LIBS@ GLIB_CFLAGS = @GLIB_CFLAGS@ GLIB_COMPILE_SCHEMAS = @GLIB_COMPILE_SCHEMAS@ GLIB_EXTRA_CFLAGS = @GLIB_EXTRA_CFLAGS@ +GLIB_GENMARSHAL = @GLIB_GENMARSHAL@ GLIB_LIBS = @GLIB_LIBS@ +GLIB_MKENUMS = @GLIB_MKENUMS@ GLIB_PREFIX = @GLIB_PREFIX@ GLIB_REQ = @GLIB_REQ@ GME_LIBS = @GME_LIBS@ @@ -352,13 +353,14 @@ HAVE_CXX = @HAVE_CXX@ HAVE_DIRECT3D = @HAVE_DIRECT3D@ HAVE_DIRECT3D9 = @HAVE_DIRECT3D9@ HAVE_DIRECTDRAW = @HAVE_DIRECTDRAW@ +HAVE_DIRECTSHOW = @HAVE_DIRECTSHOW@ HAVE_DIRECTSOUND = @HAVE_DIRECTSOUND@ HAVE_DTS = @HAVE_DTS@ HAVE_FAAC = @HAVE_FAAC@ HAVE_FAAD = @HAVE_FAAD@ HAVE_FLITE = @HAVE_FLITE@ HAVE_GSM = @HAVE_GSM@ -HAVE_JP2K = @HAVE_JP2K@ +HAVE_JASPER = @HAVE_JASPER@ HAVE_NAS = @HAVE_NAS@ HAVE_VPX = @HAVE_VPX@ HAVE_WILDMIDI = @HAVE_WILDMIDI@ @@ -372,7 +374,7 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ INTLLIBS = @INTLLIBS@ INTL_MACOSX_LIBS = @INTL_MACOSX_LIBS@ -JP2K_LIBS = @JP2K_LIBS@ +JASPER_LIBS = @JASPER_LIBS@ KATE_CFLAGS = @KATE_CFLAGS@ KATE_LIBS = @KATE_LIBS@ LD = @LD@ @@ -408,6 +410,8 @@ MODPLUG_CFLAGS = @MODPLUG_CFLAGS@ MODPLUG_LIBS = @MODPLUG_LIBS@ MPEG2ENC_CFLAGS = @MPEG2ENC_CFLAGS@ MPEG2ENC_LIBS = @MPEG2ENC_LIBS@ +MPG123_CFLAGS = @MPG123_CFLAGS@ +MPG123_LIBS = @MPG123_LIBS@ MPLEX_CFLAGS = @MPLEX_CFLAGS@ MPLEX_LDFLAGS = @MPLEX_LDFLAGS@ MPLEX_LIBS = @MPLEX_LIBS@ diff --git a/ext/neon/Makefile.in b/ext/neon/Makefile.in index fc71c05d..8c28ac70 100644 --- a/ext/neon/Makefile.in +++ b/ext/neon/Makefile.in @@ -1,4 +1,4 @@ -# Makefile.in generated by automake 1.11.5 from Makefile.am. +# Makefile.in generated by automake 1.11.6 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, @@ -238,11 +238,10 @@ DIRECT3D_LIBS = @DIRECT3D_LIBS@ DIRECTDRAW_LIBS = @DIRECTDRAW_LIBS@ DIRECTFB_CFLAGS = @DIRECTFB_CFLAGS@ DIRECTFB_LIBS = @DIRECTFB_LIBS@ +DIRECTSHOW_LIBS = @DIRECTSHOW_LIBS@ DIRECTSOUND_LIBS = @DIRECTSOUND_LIBS@ DIRECTX_CFLAGS = @DIRECTX_CFLAGS@ DIRECTX_LDFLAGS = @DIRECTX_LDFLAGS@ -DIVXDEC_LIBS = @DIVXDEC_LIBS@ -DIVXENC_LIBS = @DIVXENC_LIBS@ DLLTOOL = @DLLTOOL@ DSYMUTIL = @DSYMUTIL@ DTS_LIBS = @DTS_LIBS@ @@ -277,7 +276,9 @@ GIO_LIBS = @GIO_LIBS@ GLIB_CFLAGS = @GLIB_CFLAGS@ GLIB_COMPILE_SCHEMAS = @GLIB_COMPILE_SCHEMAS@ GLIB_EXTRA_CFLAGS = @GLIB_EXTRA_CFLAGS@ +GLIB_GENMARSHAL = @GLIB_GENMARSHAL@ GLIB_LIBS = @GLIB_LIBS@ +GLIB_MKENUMS = @GLIB_MKENUMS@ GLIB_PREFIX = @GLIB_PREFIX@ GLIB_REQ = @GLIB_REQ@ GME_LIBS = @GME_LIBS@ @@ -353,13 +354,14 @@ HAVE_CXX = @HAVE_CXX@ HAVE_DIRECT3D = @HAVE_DIRECT3D@ HAVE_DIRECT3D9 = @HAVE_DIRECT3D9@ HAVE_DIRECTDRAW = @HAVE_DIRECTDRAW@ +HAVE_DIRECTSHOW = @HAVE_DIRECTSHOW@ HAVE_DIRECTSOUND = @HAVE_DIRECTSOUND@ HAVE_DTS = @HAVE_DTS@ HAVE_FAAC = @HAVE_FAAC@ HAVE_FAAD = @HAVE_FAAD@ HAVE_FLITE = @HAVE_FLITE@ HAVE_GSM = @HAVE_GSM@ -HAVE_JP2K = @HAVE_JP2K@ +HAVE_JASPER = @HAVE_JASPER@ HAVE_NAS = @HAVE_NAS@ HAVE_VPX = @HAVE_VPX@ HAVE_WILDMIDI = @HAVE_WILDMIDI@ @@ -373,7 +375,7 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ INTLLIBS = @INTLLIBS@ INTL_MACOSX_LIBS = @INTL_MACOSX_LIBS@ -JP2K_LIBS = @JP2K_LIBS@ +JASPER_LIBS = @JASPER_LIBS@ KATE_CFLAGS = @KATE_CFLAGS@ KATE_LIBS = @KATE_LIBS@ LD = @LD@ @@ -409,6 +411,8 @@ MODPLUG_CFLAGS = @MODPLUG_CFLAGS@ MODPLUG_LIBS = @MODPLUG_LIBS@ MPEG2ENC_CFLAGS = @MPEG2ENC_CFLAGS@ MPEG2ENC_LIBS = @MPEG2ENC_LIBS@ +MPG123_CFLAGS = @MPG123_CFLAGS@ +MPG123_LIBS = @MPG123_LIBS@ MPLEX_CFLAGS = @MPLEX_CFLAGS@ MPLEX_LDFLAGS = @MPLEX_LDFLAGS@ MPLEX_LIBS = @MPLEX_LIBS@ diff --git a/ext/ofa/Makefile.in b/ext/ofa/Makefile.in index a77e69cb..b058e6dd 100644 --- a/ext/ofa/Makefile.in +++ b/ext/ofa/Makefile.in @@ -1,4 +1,4 @@ -# Makefile.in generated by automake 1.11.5 from Makefile.am. +# Makefile.in generated by automake 1.11.6 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, @@ -238,11 +238,10 @@ DIRECT3D_LIBS = @DIRECT3D_LIBS@ DIRECTDRAW_LIBS = @DIRECTDRAW_LIBS@ DIRECTFB_CFLAGS = @DIRECTFB_CFLAGS@ DIRECTFB_LIBS = @DIRECTFB_LIBS@ +DIRECTSHOW_LIBS = @DIRECTSHOW_LIBS@ DIRECTSOUND_LIBS = @DIRECTSOUND_LIBS@ DIRECTX_CFLAGS = @DIRECTX_CFLAGS@ DIRECTX_LDFLAGS = @DIRECTX_LDFLAGS@ -DIVXDEC_LIBS = @DIVXDEC_LIBS@ -DIVXENC_LIBS = @DIVXENC_LIBS@ DLLTOOL = @DLLTOOL@ DSYMUTIL = @DSYMUTIL@ DTS_LIBS = @DTS_LIBS@ @@ -277,7 +276,9 @@ GIO_LIBS = @GIO_LIBS@ GLIB_CFLAGS = @GLIB_CFLAGS@ GLIB_COMPILE_SCHEMAS = @GLIB_COMPILE_SCHEMAS@ GLIB_EXTRA_CFLAGS = @GLIB_EXTRA_CFLAGS@ +GLIB_GENMARSHAL = @GLIB_GENMARSHAL@ GLIB_LIBS = @GLIB_LIBS@ +GLIB_MKENUMS = @GLIB_MKENUMS@ GLIB_PREFIX = @GLIB_PREFIX@ GLIB_REQ = @GLIB_REQ@ GME_LIBS = @GME_LIBS@ @@ -353,13 +354,14 @@ HAVE_CXX = @HAVE_CXX@ HAVE_DIRECT3D = @HAVE_DIRECT3D@ HAVE_DIRECT3D9 = @HAVE_DIRECT3D9@ HAVE_DIRECTDRAW = @HAVE_DIRECTDRAW@ +HAVE_DIRECTSHOW = @HAVE_DIRECTSHOW@ HAVE_DIRECTSOUND = @HAVE_DIRECTSOUND@ HAVE_DTS = @HAVE_DTS@ HAVE_FAAC = @HAVE_FAAC@ HAVE_FAAD = @HAVE_FAAD@ HAVE_FLITE = @HAVE_FLITE@ HAVE_GSM = @HAVE_GSM@ -HAVE_JP2K = @HAVE_JP2K@ +HAVE_JASPER = @HAVE_JASPER@ HAVE_NAS = @HAVE_NAS@ HAVE_VPX = @HAVE_VPX@ HAVE_WILDMIDI = @HAVE_WILDMIDI@ @@ -373,7 +375,7 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ INTLLIBS = @INTLLIBS@ INTL_MACOSX_LIBS = @INTL_MACOSX_LIBS@ -JP2K_LIBS = @JP2K_LIBS@ +JASPER_LIBS = @JASPER_LIBS@ KATE_CFLAGS = @KATE_CFLAGS@ KATE_LIBS = @KATE_LIBS@ LD = @LD@ @@ -409,6 +411,8 @@ MODPLUG_CFLAGS = @MODPLUG_CFLAGS@ MODPLUG_LIBS = @MODPLUG_LIBS@ MPEG2ENC_CFLAGS = @MPEG2ENC_CFLAGS@ MPEG2ENC_LIBS = @MPEG2ENC_LIBS@ +MPG123_CFLAGS = @MPG123_CFLAGS@ +MPG123_LIBS = @MPG123_LIBS@ MPLEX_CFLAGS = @MPLEX_CFLAGS@ MPLEX_LDFLAGS = @MPLEX_LDFLAGS@ MPLEX_LIBS = @MPLEX_LIBS@ diff --git a/ext/openal/Makefile.in b/ext/openal/Makefile.in index 442a7b28..ac45642a 100644 --- a/ext/openal/Makefile.in +++ b/ext/openal/Makefile.in @@ -1,4 +1,4 @@ -# Makefile.in generated by automake 1.11.5 from Makefile.am. +# Makefile.in generated by automake 1.11.6 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, @@ -242,11 +242,10 @@ DIRECT3D_LIBS = @DIRECT3D_LIBS@ DIRECTDRAW_LIBS = @DIRECTDRAW_LIBS@ DIRECTFB_CFLAGS = @DIRECTFB_CFLAGS@ DIRECTFB_LIBS = @DIRECTFB_LIBS@ +DIRECTSHOW_LIBS = @DIRECTSHOW_LIBS@ DIRECTSOUND_LIBS = @DIRECTSOUND_LIBS@ DIRECTX_CFLAGS = @DIRECTX_CFLAGS@ DIRECTX_LDFLAGS = @DIRECTX_LDFLAGS@ -DIVXDEC_LIBS = @DIVXDEC_LIBS@ -DIVXENC_LIBS = @DIVXENC_LIBS@ DLLTOOL = @DLLTOOL@ DSYMUTIL = @DSYMUTIL@ DTS_LIBS = @DTS_LIBS@ @@ -281,7 +280,9 @@ GIO_LIBS = @GIO_LIBS@ GLIB_CFLAGS = @GLIB_CFLAGS@ GLIB_COMPILE_SCHEMAS = @GLIB_COMPILE_SCHEMAS@ GLIB_EXTRA_CFLAGS = @GLIB_EXTRA_CFLAGS@ +GLIB_GENMARSHAL = @GLIB_GENMARSHAL@ GLIB_LIBS = @GLIB_LIBS@ +GLIB_MKENUMS = @GLIB_MKENUMS@ GLIB_PREFIX = @GLIB_PREFIX@ GLIB_REQ = @GLIB_REQ@ GME_LIBS = @GME_LIBS@ @@ -357,13 +358,14 @@ HAVE_CXX = @HAVE_CXX@ HAVE_DIRECT3D = @HAVE_DIRECT3D@ HAVE_DIRECT3D9 = @HAVE_DIRECT3D9@ HAVE_DIRECTDRAW = @HAVE_DIRECTDRAW@ +HAVE_DIRECTSHOW = @HAVE_DIRECTSHOW@ HAVE_DIRECTSOUND = @HAVE_DIRECTSOUND@ HAVE_DTS = @HAVE_DTS@ HAVE_FAAC = @HAVE_FAAC@ HAVE_FAAD = @HAVE_FAAD@ HAVE_FLITE = @HAVE_FLITE@ HAVE_GSM = @HAVE_GSM@ -HAVE_JP2K = @HAVE_JP2K@ +HAVE_JASPER = @HAVE_JASPER@ HAVE_NAS = @HAVE_NAS@ HAVE_VPX = @HAVE_VPX@ HAVE_WILDMIDI = @HAVE_WILDMIDI@ @@ -377,7 +379,7 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ INTLLIBS = @INTLLIBS@ INTL_MACOSX_LIBS = @INTL_MACOSX_LIBS@ -JP2K_LIBS = @JP2K_LIBS@ +JASPER_LIBS = @JASPER_LIBS@ KATE_CFLAGS = @KATE_CFLAGS@ KATE_LIBS = @KATE_LIBS@ LD = @LD@ @@ -413,6 +415,8 @@ MODPLUG_CFLAGS = @MODPLUG_CFLAGS@ MODPLUG_LIBS = @MODPLUG_LIBS@ MPEG2ENC_CFLAGS = @MPEG2ENC_CFLAGS@ MPEG2ENC_LIBS = @MPEG2ENC_LIBS@ +MPG123_CFLAGS = @MPG123_CFLAGS@ +MPG123_LIBS = @MPG123_LIBS@ MPLEX_CFLAGS = @MPLEX_CFLAGS@ MPLEX_LDFLAGS = @MPLEX_LDFLAGS@ MPLEX_LIBS = @MPLEX_LIBS@ diff --git a/ext/opencv/Makefile.in b/ext/opencv/Makefile.in index 3c5553e2..966b71b3 100644 --- a/ext/opencv/Makefile.in +++ b/ext/opencv/Makefile.in @@ -1,4 +1,4 @@ -# Makefile.in generated by automake 1.11.5 from Makefile.am. +# Makefile.in generated by automake 1.11.6 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, @@ -269,11 +269,10 @@ DIRECT3D_LIBS = @DIRECT3D_LIBS@ DIRECTDRAW_LIBS = @DIRECTDRAW_LIBS@ DIRECTFB_CFLAGS = @DIRECTFB_CFLAGS@ DIRECTFB_LIBS = @DIRECTFB_LIBS@ +DIRECTSHOW_LIBS = @DIRECTSHOW_LIBS@ DIRECTSOUND_LIBS = @DIRECTSOUND_LIBS@ DIRECTX_CFLAGS = @DIRECTX_CFLAGS@ DIRECTX_LDFLAGS = @DIRECTX_LDFLAGS@ -DIVXDEC_LIBS = @DIVXDEC_LIBS@ -DIVXENC_LIBS = @DIVXENC_LIBS@ DLLTOOL = @DLLTOOL@ DSYMUTIL = @DSYMUTIL@ DTS_LIBS = @DTS_LIBS@ @@ -308,7 +307,9 @@ GIO_LIBS = @GIO_LIBS@ GLIB_CFLAGS = @GLIB_CFLAGS@ GLIB_COMPILE_SCHEMAS = @GLIB_COMPILE_SCHEMAS@ GLIB_EXTRA_CFLAGS = @GLIB_EXTRA_CFLAGS@ +GLIB_GENMARSHAL = @GLIB_GENMARSHAL@ GLIB_LIBS = @GLIB_LIBS@ +GLIB_MKENUMS = @GLIB_MKENUMS@ GLIB_PREFIX = @GLIB_PREFIX@ GLIB_REQ = @GLIB_REQ@ GME_LIBS = @GME_LIBS@ @@ -384,13 +385,14 @@ HAVE_CXX = @HAVE_CXX@ HAVE_DIRECT3D = @HAVE_DIRECT3D@ HAVE_DIRECT3D9 = @HAVE_DIRECT3D9@ HAVE_DIRECTDRAW = @HAVE_DIRECTDRAW@ +HAVE_DIRECTSHOW = @HAVE_DIRECTSHOW@ HAVE_DIRECTSOUND = @HAVE_DIRECTSOUND@ HAVE_DTS = @HAVE_DTS@ HAVE_FAAC = @HAVE_FAAC@ HAVE_FAAD = @HAVE_FAAD@ HAVE_FLITE = @HAVE_FLITE@ HAVE_GSM = @HAVE_GSM@ -HAVE_JP2K = @HAVE_JP2K@ +HAVE_JASPER = @HAVE_JASPER@ HAVE_NAS = @HAVE_NAS@ HAVE_VPX = @HAVE_VPX@ HAVE_WILDMIDI = @HAVE_WILDMIDI@ @@ -404,7 +406,7 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ INTLLIBS = @INTLLIBS@ INTL_MACOSX_LIBS = @INTL_MACOSX_LIBS@ -JP2K_LIBS = @JP2K_LIBS@ +JASPER_LIBS = @JASPER_LIBS@ KATE_CFLAGS = @KATE_CFLAGS@ KATE_LIBS = @KATE_LIBS@ LD = @LD@ @@ -440,6 +442,8 @@ MODPLUG_CFLAGS = @MODPLUG_CFLAGS@ MODPLUG_LIBS = @MODPLUG_LIBS@ MPEG2ENC_CFLAGS = @MPEG2ENC_CFLAGS@ MPEG2ENC_LIBS = @MPEG2ENC_LIBS@ +MPG123_CFLAGS = @MPG123_CFLAGS@ +MPG123_LIBS = @MPG123_LIBS@ MPLEX_CFLAGS = @MPLEX_CFLAGS@ MPLEX_LDFLAGS = @MPLEX_LDFLAGS@ MPLEX_LIBS = @MPLEX_LIBS@ diff --git a/ext/opencv/gstcvdilate.c b/ext/opencv/gstcvdilate.c index e03627b6..ff6f25e0 100644 --- a/ext/opencv/gstcvdilate.c +++ b/ext/opencv/gstcvdilate.c @@ -52,39 +52,29 @@ GST_DEBUG_CATEGORY_STATIC (gst_cv_dilate_debug); #define GST_CAT_DEFAULT gst_cv_dilate_debug -GST_BOILERPLATE (GstCvDilate, gst_cv_dilate, GstCvDilateErode, - GST_TYPE_CV_DILATE_ERODE); +G_DEFINE_TYPE (GstCvDilate, gst_cv_dilate, GST_TYPE_CV_DILATE_ERODE); static GstFlowReturn gst_cv_dilate_transform_ip (GstOpencvVideoFilter * filter, GstBuffer * buf, IplImage * img); static GstFlowReturn gst_cv_dilate_transform (GstOpencvVideoFilter * filter, GstBuffer * buf, IplImage * img, GstBuffer * outbuf, IplImage * outimg); -/* GObject vmethod implementations */ -static void -gst_cv_dilate_base_init (gpointer gclass) -{ - GstElementClass *element_class = GST_ELEMENT_CLASS (gclass); - - gst_element_class_set_details_simple (element_class, - "cvdilate", - "Transform/Effect/Video", - "Applies cvDilate OpenCV function to the image", - "Thiago Santos<thiago.sousa.santos@collabora.co.uk>"); -} - /* initialize the cvdilate's class */ static void gst_cv_dilate_class_init (GstCvDilateClass * klass) { GstOpencvVideoFilterClass *gstopencvbasefilter_class; + GstElementClass *element_class = GST_ELEMENT_CLASS (klass); gstopencvbasefilter_class = (GstOpencvVideoFilterClass *) klass; - parent_class = g_type_class_peek_parent (klass); - gstopencvbasefilter_class->cv_trans_ip_func = gst_cv_dilate_transform_ip; gstopencvbasefilter_class->cv_trans_func = gst_cv_dilate_transform; + gst_element_class_set_details_simple (element_class, + "cvdilate", + "Transform/Effect/Video", + "Applies cvDilate OpenCV function to the image", + "Thiago Santos<thiago.sousa.santos@collabora.co.uk>"); } /* initialize the new element @@ -93,7 +83,7 @@ gst_cv_dilate_class_init (GstCvDilateClass * klass) * initialize instance structure */ static void -gst_cv_dilate_init (GstCvDilate * filter, GstCvDilateClass * gclass) +gst_cv_dilate_init (GstCvDilate * filter) { } diff --git a/ext/opencv/gstcvdilateerode.c b/ext/opencv/gstcvdilateerode.c index 193f69e5..181ec92d 100644 --- a/ext/opencv/gstcvdilateerode.c +++ b/ext/opencv/gstcvdilateerode.c @@ -75,9 +75,6 @@ enum #define DEFAULT_ITERATIONS 1 -static GstElementClass *parent_class = NULL; - -static void gst_cv_dilate_erode_base_init (gpointer gclass); static void gst_cv_dilate_erode_class_init (GstCvDilateErodeClass * klass); static void gst_cv_dilate_erode_init (GstCvDilateErode * filter, GstCvDilateErodeClass * gclass); @@ -96,7 +93,7 @@ gst_cv_dilate_erode_get_type (void) GType _type; static const GTypeInfo opencv_dilate_erode_info = { sizeof (GstCvDilateErodeClass), - (GBaseInitFunc) gst_cv_dilate_erode_base_init, + NULL, NULL, (GClassInitFunc) gst_cv_dilate_erode_class_init, NULL, @@ -117,39 +114,17 @@ gst_cv_dilate_erode_get_type (void) return opencv_dilate_erode_type; } -/* GObject vmethod implementations */ - -static void -gst_cv_dilate_erode_base_init (gpointer gclass) -{ - GstElementClass *element_class = GST_ELEMENT_CLASS (gclass); - GstCaps *caps; - GstPadTemplate *templ; - - /* add sink and source pad templates */ - caps = gst_opencv_caps_from_cv_image_type (CV_16UC1); - gst_caps_append (caps, gst_opencv_caps_from_cv_image_type (CV_8UC4)); - gst_caps_append (caps, gst_opencv_caps_from_cv_image_type (CV_8UC3)); - gst_caps_append (caps, gst_opencv_caps_from_cv_image_type (CV_8UC1)); - templ = gst_pad_template_new ("sink", GST_PAD_SINK, GST_PAD_ALWAYS, - gst_caps_ref (caps)); - gst_element_class_add_pad_template (element_class, templ); - gst_object_unref (templ); - templ = gst_pad_template_new ("src", GST_PAD_SRC, GST_PAD_ALWAYS, caps); - gst_element_class_add_pad_template (element_class, templ); - gst_object_unref (templ); -} - /* initialize the cvdilate_erode's class */ static void gst_cv_dilate_erode_class_init (GstCvDilateErodeClass * klass) { GObjectClass *gobject_class; + GstElementClass *element_class = GST_ELEMENT_CLASS (klass); + GstCaps *caps; + GstPadTemplate *templ; gobject_class = (GObjectClass *) klass; - parent_class = g_type_class_peek_parent (klass); - gobject_class->set_property = gst_cv_dilate_erode_set_property; gobject_class->get_property = gst_cv_dilate_erode_get_property; @@ -157,6 +132,17 @@ gst_cv_dilate_erode_class_init (GstCvDilateErodeClass * klass) g_param_spec_int ("iterations", "iterations", "Number of iterations to run the algorithm", 1, G_MAXINT, DEFAULT_ITERATIONS, G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS)); + + /* add sink and source pad templates */ + caps = gst_opencv_caps_from_cv_image_type (CV_16UC1); + gst_caps_append (caps, gst_opencv_caps_from_cv_image_type (CV_8UC4)); + gst_caps_append (caps, gst_opencv_caps_from_cv_image_type (CV_8UC3)); + gst_caps_append (caps, gst_opencv_caps_from_cv_image_type (CV_8UC1)); + templ = gst_pad_template_new ("sink", GST_PAD_SINK, GST_PAD_ALWAYS, + gst_caps_ref (caps)); + gst_element_class_add_pad_template (element_class, templ); + templ = gst_pad_template_new ("src", GST_PAD_SRC, GST_PAD_ALWAYS, caps); + gst_element_class_add_pad_template (element_class, templ); } /* initialize the new element diff --git a/ext/opencv/gstcvequalizehist.c b/ext/opencv/gstcvequalizehist.c index 3a086bed..8072463e 100644 --- a/ext/opencv/gstcvequalizehist.c +++ b/ext/opencv/gstcvequalizehist.c @@ -56,26 +56,29 @@ GST_DEBUG_CATEGORY_STATIC (gst_cv_equalize_hist_debug); static GstStaticPadTemplate sink_factory = GST_STATIC_PAD_TEMPLATE ("sink", GST_PAD_SINK, GST_PAD_ALWAYS, - GST_STATIC_CAPS (GST_VIDEO_CAPS_GRAY8)); + GST_STATIC_CAPS (GST_VIDEO_CAPS_MAKE ("GRAY8"))); static GstStaticPadTemplate src_factory = GST_STATIC_PAD_TEMPLATE ("src", GST_PAD_SRC, GST_PAD_ALWAYS, - GST_STATIC_CAPS (GST_VIDEO_CAPS_GRAY8)); + GST_STATIC_CAPS (GST_VIDEO_CAPS_MAKE ("GRAY8"))); -GST_BOILERPLATE (GstCvEqualizeHist, gst_cv_equalize_hist, - GstOpencvVideoFilter, GST_TYPE_OPENCV_VIDEO_FILTER); +G_DEFINE_TYPE (GstCvEqualizeHist, gst_cv_equalize_hist, + GST_TYPE_OPENCV_VIDEO_FILTER); static GstFlowReturn gst_cv_equalize_hist_transform (GstOpencvVideoFilter * filter, GstBuffer * buf, IplImage * img, GstBuffer * outbuf, IplImage * outimg); -/* GObject vmethod implementations */ static void -gst_cv_equalize_hist_base_init (gpointer gclass) +gst_cv_equalize_hist_class_init (GstCvEqualizeHistClass * klass) { - GstElementClass *element_class = GST_ELEMENT_CLASS (gclass); + GstOpencvVideoFilterClass *gstopencvbasefilter_class; + GstElementClass *element_class = GST_ELEMENT_CLASS (klass); + gstopencvbasefilter_class = (GstOpencvVideoFilterClass *) klass; + + gstopencvbasefilter_class->cv_trans_func = gst_cv_equalize_hist_transform; gst_element_class_add_pad_template (element_class, gst_static_pad_template_get (&src_factory)); @@ -90,19 +93,7 @@ gst_cv_equalize_hist_base_init (gpointer gclass) } static void -gst_cv_equalize_hist_class_init (GstCvEqualizeHistClass * klass) -{ - GstOpencvVideoFilterClass *gstopencvbasefilter_class; - - gstopencvbasefilter_class = (GstOpencvVideoFilterClass *) klass; - - parent_class = g_type_class_peek_parent (klass); - gstopencvbasefilter_class->cv_trans_func = gst_cv_equalize_hist_transform; -} - -static void -gst_cv_equalize_hist_init (GstCvEqualizeHist * filter, - GstCvEqualizeHistClass * gclass) +gst_cv_equalize_hist_init (GstCvEqualizeHist * filter) { gst_base_transform_set_in_place (GST_BASE_TRANSFORM (filter), FALSE); } diff --git a/ext/opencv/gstcverode.c b/ext/opencv/gstcverode.c index 2a0cb36a..5d0fa87f 100644 --- a/ext/opencv/gstcverode.c +++ b/ext/opencv/gstcverode.c @@ -52,39 +52,29 @@ GST_DEBUG_CATEGORY_STATIC (gst_cv_erode_debug); #define GST_CAT_DEFAULT gst_cv_erode_debug -GST_BOILERPLATE (GstCvErode, gst_cv_erode, GstCvDilateErode, - GST_TYPE_CV_DILATE_ERODE); +G_DEFINE_TYPE (GstCvErode, gst_cv_erode, GST_TYPE_CV_DILATE_ERODE); static GstFlowReturn gst_cv_erode_transform_ip (GstOpencvVideoFilter * filter, GstBuffer * buf, IplImage * img); static GstFlowReturn gst_cv_erode_transform (GstOpencvVideoFilter * filter, GstBuffer * buf, IplImage * img, GstBuffer * outbuf, IplImage * outimg); -/* GObject vmethod implementations */ -static void -gst_cv_erode_base_init (gpointer gclass) -{ - GstElementClass *element_class = GST_ELEMENT_CLASS (gclass); - - gst_element_class_set_details_simple (element_class, - "cverode", - "Transform/Effect/Video", - "Applies cvErode OpenCV function to the image", - "Thiago Santos<thiago.sousa.santos@collabora.co.uk>"); -} - /* initialize the cverode's class */ static void gst_cv_erode_class_init (GstCvErodeClass * klass) { GstOpencvVideoFilterClass *gstopencvbasefilter_class; + GstElementClass *element_class = GST_ELEMENT_CLASS (klass); gstopencvbasefilter_class = (GstOpencvVideoFilterClass *) klass; - parent_class = g_type_class_peek_parent (klass); - gstopencvbasefilter_class->cv_trans_ip_func = gst_cv_erode_transform_ip; gstopencvbasefilter_class->cv_trans_func = gst_cv_erode_transform; + gst_element_class_set_details_simple (element_class, + "cverode", + "Transform/Effect/Video", + "Applies cvErode OpenCV function to the image", + "Thiago Santos<thiago.sousa.santos@collabora.co.uk>"); } /* initialize the new element @@ -93,7 +83,7 @@ gst_cv_erode_class_init (GstCvErodeClass * klass) * initialize instance structure */ static void -gst_cv_erode_init (GstCvErode * filter, GstCvErodeClass * gclass) +gst_cv_erode_init (GstCvErode * filter) { } diff --git a/ext/opencv/gstcvlaplace.c b/ext/opencv/gstcvlaplace.c index de8649cd..8269e6df 100644 --- a/ext/opencv/gstcvlaplace.c +++ b/ext/opencv/gstcvlaplace.c @@ -56,20 +56,22 @@ GST_DEBUG_CATEGORY_STATIC (gst_cv_laplace_debug); static GstStaticPadTemplate sink_factory = GST_STATIC_PAD_TEMPLATE ("sink", GST_PAD_SINK, GST_PAD_ALWAYS, - GST_STATIC_CAPS (GST_VIDEO_CAPS_GRAY8) + GST_STATIC_CAPS (GST_VIDEO_CAPS_MAKE ("GRAY8")) ); #if G_BYTE_ORDER == G_BIG_ENDIAN -#define BYTE_ORDER_STRING "BIG_ENDIAN" +static GstStaticPadTemplate src_factory = GST_STATIC_PAD_TEMPLATE ("src", + GST_PAD_SRC, + GST_PAD_ALWAYS, + GST_STATIC_CAPS (GST_VIDEO_CAPS_MAKE ("GRAY16_BE")) + ); #else -#define BYTE_ORDER_STRING "LITTLE_ENDIAN" -#endif - static GstStaticPadTemplate src_factory = GST_STATIC_PAD_TEMPLATE ("src", GST_PAD_SRC, GST_PAD_ALWAYS, - GST_STATIC_CAPS (GST_VIDEO_CAPS_GRAY16 (BYTE_ORDER_STRING)) + GST_STATIC_CAPS (GST_VIDEO_CAPS_MAKE ("GRAY16_LE")) ); +#endif /* Filter signals and args */ enum @@ -85,8 +87,7 @@ enum #define DEFAULT_APERTURE_SIZE 3 -GST_BOILERPLATE (GstCvLaplace, gst_cv_laplace, GstOpencvVideoFilter, - GST_TYPE_OPENCV_VIDEO_FILTER); +G_DEFINE_TYPE (GstCvLaplace, gst_cv_laplace, GST_TYPE_OPENCV_VIDEO_FILTER); static void gst_cv_laplace_set_property (GObject * object, guint prop_id, const GValue * value, GParamSpec * pspec); @@ -94,7 +95,7 @@ static void gst_cv_laplace_get_property (GObject * object, guint prop_id, GValue * value, GParamSpec * pspec); static GstCaps *gst_cv_laplace_transform_caps (GstBaseTransform * trans, - GstPadDirection dir, GstCaps * caps); + GstPadDirection dir, GstCaps * caps, GstCaps * filter); static GstFlowReturn gst_cv_laplace_transform (GstOpencvVideoFilter * filter, GstBuffer * buf, IplImage * img, GstBuffer * outbuf, IplImage * outimg); @@ -112,26 +113,7 @@ gst_cv_laplace_finalize (GObject * obj) if (filter->intermediary_img) cvReleaseImage (&filter->intermediary_img); - G_OBJECT_CLASS (parent_class)->finalize (obj); -} - -/* GObject vmethod implementations */ - -static void -gst_cv_laplace_base_init (gpointer gclass) -{ - GstElementClass *element_class = GST_ELEMENT_CLASS (gclass); - - gst_element_class_add_pad_template (element_class, - gst_static_pad_template_get (&src_factory)); - gst_element_class_add_pad_template (element_class, - gst_static_pad_template_get (&sink_factory)); - - gst_element_class_set_details_simple (element_class, - "cvlaplace", - "Transform/Effect/Video", - "Applies cvLaplace OpenCV function to the image", - "Thiago Santos<thiago.sousa.santos@collabora.co.uk>"); + G_OBJECT_CLASS (gst_cv_laplace_parent_class)->finalize (obj); } /* initialize the cvlaplace's class */ @@ -141,13 +123,12 @@ gst_cv_laplace_class_init (GstCvLaplaceClass * klass) GObjectClass *gobject_class; GstBaseTransformClass *gstbasetransform_class; GstOpencvVideoFilterClass *gstopencvbasefilter_class; + GstElementClass *element_class = GST_ELEMENT_CLASS (klass); gobject_class = (GObjectClass *) klass; gstbasetransform_class = (GstBaseTransformClass *) klass; gstopencvbasefilter_class = (GstOpencvVideoFilterClass *) klass; - parent_class = g_type_class_peek_parent (klass); - gobject_class->finalize = GST_DEBUG_FUNCPTR (gst_cv_laplace_finalize); gobject_class->set_property = gst_cv_laplace_set_property; gobject_class->get_property = gst_cv_laplace_get_property; @@ -161,10 +142,21 @@ gst_cv_laplace_class_init (GstCvLaplaceClass * klass) g_param_spec_int ("aperture-size", "aperture size", "Size of the extended Laplace Kernel (1, 3, 5 or 7)", 1, 7, DEFAULT_APERTURE_SIZE, G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS)); + + gst_element_class_add_pad_template (element_class, + gst_static_pad_template_get (&src_factory)); + gst_element_class_add_pad_template (element_class, + gst_static_pad_template_get (&sink_factory)); + + gst_element_class_set_details_simple (element_class, + "cvlaplace", + "Transform/Effect/Video", + "Applies cvLaplace OpenCV function to the image", + "Thiago Santos<thiago.sousa.santos@collabora.co.uk>"); } static void -gst_cv_laplace_init (GstCvLaplace * filter, GstCvLaplaceClass * gclass) +gst_cv_laplace_init (GstCvLaplace * filter) { filter->aperture_size = DEFAULT_APERTURE_SIZE; @@ -189,7 +181,6 @@ gst_cv_laplace_cv_set_caps (GstOpencvVideoFilter * trans, gint in_width, GST_WARNING_OBJECT (filter, "Unsupported output depth %d", out_depth); return FALSE; } - if (filter->intermediary_img) { cvReleaseImage (&filter->intermediary_img); } @@ -202,41 +193,71 @@ gst_cv_laplace_cv_set_caps (GstOpencvVideoFilter * trans, gint in_width, static GstCaps * gst_cv_laplace_transform_caps (GstBaseTransform * trans, GstPadDirection dir, - GstCaps * caps) + GstCaps * caps, GstCaps * filter) { - GstCaps *output = NULL; + GstCaps *to, *ret; + GstCaps *templ; GstStructure *structure; + GstPad *other; gint i; - output = gst_caps_copy (caps); - - /* we accept anything from the template caps for either side */ - switch (dir) { - case GST_PAD_SINK: - for (i = 0; i < gst_caps_get_size (output); i++) { - structure = gst_caps_get_structure (output, i); - gst_structure_set (structure, - "depth", G_TYPE_INT, 16, - "bpp", G_TYPE_INT, 16, - "endianness", G_TYPE_INT, G_BYTE_ORDER, NULL); - } - break; - case GST_PAD_SRC: - for (i = 0; i < gst_caps_get_size (output); i++) { - structure = gst_caps_get_structure (output, i); - gst_structure_set (structure, - "depth", G_TYPE_INT, 8, "bpp", G_TYPE_INT, 8, NULL); - gst_structure_remove_field (structure, "endianness"); - } - break; - default: - gst_caps_unref (output); - output = NULL; - g_assert_not_reached (); - break; + to = gst_caps_new_empty (); + + for (i = 0; i < gst_caps_get_size (caps); i++) { + const GValue *v; + GValue list = { 0, }; + GValue val = { 0, }; + + structure = gst_structure_copy (gst_caps_get_structure (caps, i)); + + g_value_init (&list, GST_TYPE_LIST); + + g_value_init (&val, G_TYPE_STRING); + g_value_set_string (&val, "GRAY8"); + gst_value_list_append_value (&list, &val); + g_value_unset (&val); + + g_value_init (&val, G_TYPE_STRING); +#if G_BYTE_ORDER == G_BIG_ENDIAN + g_value_set_string (&val, "GRAY16_BE"); +#else + g_value_set_string (&val, "GRAY16_LE"); +#endif + gst_value_list_append_value (&list, &val); + g_value_unset (&val); + + v = gst_structure_get_value (structure, "format"); + + gst_value_list_merge (&val, v, &list); + gst_structure_set_value (structure, "format", &val); + g_value_unset (&val); + g_value_unset (&list); + + gst_structure_remove_field (structure, "colorimetry"); + gst_structure_remove_field (structure, "chroma-site"); + + gst_caps_append_structure (to, structure); + } - return output; + /* filter against set allowed caps on the pad */ + other = (dir == GST_PAD_SINK) ? trans->srcpad : trans->sinkpad; + templ = gst_pad_get_pad_template_caps (other); + ret = gst_caps_intersect (to, templ); + gst_caps_unref (to); + gst_caps_unref (templ); + + if (ret && filter) { + GstCaps *intersection; + + intersection = + gst_caps_intersect_full (filter, ret, GST_CAPS_INTERSECT_FIRST); + gst_caps_unref (ret); + ret = intersection; + } + + return ret; + } static void diff --git a/ext/opencv/gstcvsmooth.c b/ext/opencv/gstcvsmooth.c index 8cf08b87..4ed438aa 100644 --- a/ext/opencv/gstcvsmooth.c +++ b/ext/opencv/gstcvsmooth.c @@ -106,8 +106,7 @@ gst_cv_smooth_type_get_type (void) #define DEFAULT_PARAM3 0.0 #define DEFAULT_PARAM4 0.0 -GST_BOILERPLATE (GstCvSmooth, gst_cv_smooth, GstOpencvVideoFilter, - GST_TYPE_OPENCV_VIDEO_FILTER); +G_DEFINE_TYPE (GstCvSmooth, gst_cv_smooth, GST_TYPE_OPENCV_VIDEO_FILTER); static void gst_cv_smooth_set_property (GObject * object, guint prop_id, const GValue * value, GParamSpec * pspec); @@ -119,45 +118,19 @@ static GstFlowReturn gst_cv_smooth_transform_ip (GstOpencvVideoFilter * static GstFlowReturn gst_cv_smooth_transform (GstOpencvVideoFilter * filter, GstBuffer * buf, IplImage * img, GstBuffer * outbuf, IplImage * outimg); -/* GObject vmethod implementations */ - -static void -gst_cv_smooth_base_init (gpointer gclass) -{ - GstElementClass *element_class = GST_ELEMENT_CLASS (gclass); - GstCaps *caps; - GstPadTemplate *templ; - - gst_element_class_set_details_simple (element_class, - "cvsmooth", - "Transform/Effect/Video", - "Applies cvSmooth OpenCV function to the image", - "Thiago Santos<thiago.sousa.santos@collabora.co.uk>"); - - /* add sink and source pad templates */ - caps = gst_opencv_caps_from_cv_image_type (CV_8UC3); - gst_caps_append (caps, gst_opencv_caps_from_cv_image_type (CV_8UC1)); - templ = gst_pad_template_new ("sink", GST_PAD_SINK, GST_PAD_ALWAYS, - gst_caps_ref (caps)); - gst_element_class_add_pad_template (element_class, templ); - gst_object_unref (templ); - templ = gst_pad_template_new ("src", GST_PAD_SRC, GST_PAD_ALWAYS, caps); - gst_element_class_add_pad_template (element_class, templ); - gst_object_unref (templ); -} - /* initialize the cvsmooth's class */ static void gst_cv_smooth_class_init (GstCvSmoothClass * klass) { GObjectClass *gobject_class; GstOpencvVideoFilterClass *gstopencvbasefilter_class; + GstElementClass *element_class = GST_ELEMENT_CLASS (klass); + GstCaps *caps; + GstPadTemplate *templ; gobject_class = (GObjectClass *) klass; gstopencvbasefilter_class = (GstOpencvVideoFilterClass *) klass; - parent_class = g_type_class_peek_parent (klass); - gobject_class->set_property = gst_cv_smooth_set_property; gobject_class->get_property = gst_cv_smooth_get_property; @@ -201,6 +174,21 @@ gst_cv_smooth_class_init (GstCvSmoothClass * klass) "/documentation/image_filtering.html#cvSmooth", 0, G_MAXDOUBLE, DEFAULT_PARAM4, G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS)); + + gst_element_class_set_details_simple (element_class, + "cvsmooth", + "Transform/Effect/Video", + "Applies cvSmooth OpenCV function to the image", + "Thiago Santos<thiago.sousa.santos@collabora.co.uk>"); + + /* add sink and source pad templates */ + caps = gst_opencv_caps_from_cv_image_type (CV_8UC3); + gst_caps_append (caps, gst_opencv_caps_from_cv_image_type (CV_8UC1)); + templ = gst_pad_template_new ("sink", GST_PAD_SINK, GST_PAD_ALWAYS, + gst_caps_ref (caps)); + gst_element_class_add_pad_template (element_class, templ); + templ = gst_pad_template_new ("src", GST_PAD_SRC, GST_PAD_ALWAYS, caps); + gst_element_class_add_pad_template (element_class, templ); } /* initialize the new element @@ -209,7 +197,7 @@ gst_cv_smooth_class_init (GstCvSmoothClass * klass) * initialize instance structure */ static void -gst_cv_smooth_init (GstCvSmooth * filter, GstCvSmoothClass * gclass) +gst_cv_smooth_init (GstCvSmooth * filter) { filter->type = DEFAULT_CV_SMOOTH_TYPE; filter->param1 = DEFAULT_PARAM1; diff --git a/ext/opencv/gstcvsobel.c b/ext/opencv/gstcvsobel.c index 8aaeedd4..aedf9b79 100644 --- a/ext/opencv/gstcvsobel.c +++ b/ext/opencv/gstcvsobel.c @@ -56,20 +56,23 @@ GST_DEBUG_CATEGORY_STATIC (gst_cv_sobel_debug); static GstStaticPadTemplate sink_factory = GST_STATIC_PAD_TEMPLATE ("sink", GST_PAD_SINK, GST_PAD_ALWAYS, - GST_STATIC_CAPS (GST_VIDEO_CAPS_GRAY8) + GST_STATIC_CAPS (GST_VIDEO_CAPS_MAKE ("GRAY8")) ); + #if G_BYTE_ORDER == G_BIG_ENDIAN -#define BYTE_ORDER_STRING "BIG_ENDIAN" +static GstStaticPadTemplate src_factory = GST_STATIC_PAD_TEMPLATE ("src", + GST_PAD_SRC, + GST_PAD_ALWAYS, + GST_STATIC_CAPS (GST_VIDEO_CAPS_MAKE ("GRAY16_BE")) + ); #else -#define BYTE_ORDER_STRING "LITTLE_ENDIAN" -#endif - static GstStaticPadTemplate src_factory = GST_STATIC_PAD_TEMPLATE ("src", GST_PAD_SRC, GST_PAD_ALWAYS, - GST_STATIC_CAPS (GST_VIDEO_CAPS_GRAY16 (BYTE_ORDER_STRING)) + GST_STATIC_CAPS (GST_VIDEO_CAPS_MAKE ("GRAY16_LE")) ); +#endif /* Filter signals and args */ enum @@ -89,8 +92,7 @@ enum #define DEFAULT_Y_ORDER 0 #define DEFAULT_APERTURE_SIZE 3 -GST_BOILERPLATE (GstCvSobel, gst_cv_sobel, GstOpencvVideoFilter, - GST_TYPE_OPENCV_VIDEO_FILTER); +G_DEFINE_TYPE (GstCvSobel, gst_cv_sobel, GST_TYPE_OPENCV_VIDEO_FILTER); static void gst_cv_sobel_set_property (GObject * object, guint prop_id, const GValue * value, GParamSpec * pspec); @@ -98,30 +100,11 @@ static void gst_cv_sobel_get_property (GObject * object, guint prop_id, GValue * value, GParamSpec * pspec); static GstCaps *gst_cv_sobel_transform_caps (GstBaseTransform * trans, - GstPadDirection dir, GstCaps * caps); + GstPadDirection dir, GstCaps * caps, GstCaps * filter); static GstFlowReturn gst_cv_sobel_transform (GstOpencvVideoFilter * filter, GstBuffer * buf, IplImage * img, GstBuffer * outbuf, IplImage * outimg); -/* GObject vmethod implementations */ - -static void -gst_cv_sobel_base_init (gpointer gclass) -{ - GstElementClass *element_class = GST_ELEMENT_CLASS (gclass); - - gst_element_class_add_pad_template (element_class, - gst_static_pad_template_get (&src_factory)); - gst_element_class_add_pad_template (element_class, - gst_static_pad_template_get (&sink_factory)); - - gst_element_class_set_details_simple (element_class, - "cvsobel", - "Transform/Effect/Video", - "Applies cvSobel OpenCV function to the image", - "Thiago Santos<thiago.sousa.santos@collabora.co.uk>"); -} - /* initialize the cvsobel's class */ static void gst_cv_sobel_class_init (GstCvSobelClass * klass) @@ -130,12 +113,11 @@ gst_cv_sobel_class_init (GstCvSobelClass * klass) GstBaseTransformClass *gstbasetransform_class; GstOpencvVideoFilterClass *gstopencvbasefilter_class; + GstElementClass *element_class = GST_ELEMENT_CLASS (klass); gobject_class = (GObjectClass *) klass; gstbasetransform_class = (GstBaseTransformClass *) klass; gstopencvbasefilter_class = (GstOpencvVideoFilterClass *) klass; - parent_class = g_type_class_peek_parent (klass); - gobject_class->set_property = gst_cv_sobel_set_property; gobject_class->get_property = gst_cv_sobel_get_property; @@ -155,10 +137,21 @@ gst_cv_sobel_class_init (GstCvSobelClass * klass) g_param_spec_int ("aperture-size", "aperture size", "Size of the extended Sobel Kernel (1, 3, 5 or 7)", 1, 7, DEFAULT_APERTURE_SIZE, G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS)); + + gst_element_class_add_pad_template (element_class, + gst_static_pad_template_get (&src_factory)); + gst_element_class_add_pad_template (element_class, + gst_static_pad_template_get (&sink_factory)); + + gst_element_class_set_details_simple (element_class, + "cvsobel", + "Transform/Effect/Video", + "Applies cvSobel OpenCV function to the image", + "Thiago Santos<thiago.sousa.santos@collabora.co.uk>"); } static void -gst_cv_sobel_init (GstCvSobel * filter, GstCvSobelClass * gclass) +gst_cv_sobel_init (GstCvSobel * filter) { filter->x_order = DEFAULT_X_ORDER; filter->y_order = DEFAULT_Y_ORDER; @@ -169,41 +162,69 @@ gst_cv_sobel_init (GstCvSobel * filter, GstCvSobelClass * gclass) static GstCaps * gst_cv_sobel_transform_caps (GstBaseTransform * trans, GstPadDirection dir, - GstCaps * caps) + GstCaps * caps, GstCaps * filter) { - GstCaps *output = NULL; + GstCaps *to, *ret; + GstCaps *templ; GstStructure *structure; + GstPad *other; gint i; - output = gst_caps_copy (caps); - - /* we accept anything from the template caps for either side */ - switch (dir) { - case GST_PAD_SINK: - for (i = 0; i < gst_caps_get_size (output); i++) { - structure = gst_caps_get_structure (output, i); - gst_structure_set (structure, - "depth", G_TYPE_INT, 16, - "bpp", G_TYPE_INT, 16, - "endianness", G_TYPE_INT, G_BYTE_ORDER, NULL); - } - break; - case GST_PAD_SRC: - for (i = 0; i < gst_caps_get_size (output); i++) { - structure = gst_caps_get_structure (output, i); - gst_structure_set (structure, - "depth", G_TYPE_INT, 8, "bpp", G_TYPE_INT, 8, NULL); - gst_structure_remove_field (structure, "endianness"); - } - break; - default: - gst_caps_unref (output); - output = NULL; - g_assert_not_reached (); - break; + to = gst_caps_new_empty (); + + for (i = 0; i < gst_caps_get_size (caps); i++) { + const GValue *v; + GValue list = { 0, }; + GValue val = { 0, }; + + structure = gst_structure_copy (gst_caps_get_structure (caps, i)); + + g_value_init (&list, GST_TYPE_LIST); + + g_value_init (&val, G_TYPE_STRING); + g_value_set_string (&val, "GRAY8"); + gst_value_list_append_value (&list, &val); + g_value_unset (&val); + + g_value_init (&val, G_TYPE_STRING); +#if G_BYTE_ORDER == G_BIG_ENDIAN + g_value_set_string (&val, "GRAY16_BE"); +#else + g_value_set_string (&val, "GRAY16_LE"); +#endif + gst_value_list_append_value (&list, &val); + g_value_unset (&val); + + v = gst_structure_get_value (structure, "format"); + + gst_value_list_merge (&val, v, &list); + gst_structure_set_value (structure, "format", &val); + g_value_unset (&val); + g_value_unset (&list); + + gst_structure_remove_field (structure, "colorimetry"); + gst_structure_remove_field (structure, "chroma-site"); + + gst_caps_append_structure (to, structure); + + } + /* filter against set allowed caps on the pad */ + other = (dir == GST_PAD_SINK) ? trans->srcpad : trans->sinkpad; + templ = gst_pad_get_pad_template_caps (other); + ret = gst_caps_intersect (to, templ); + gst_caps_unref (to); + gst_caps_unref (templ); + + if (ret && filter) { + GstCaps *intersection; + + intersection = + gst_caps_intersect_full (filter, ret, GST_CAPS_INTERSECT_FIRST); + gst_caps_unref (ret); + ret = intersection; } - return output; + return ret; } static void diff --git a/ext/opencv/gstedgedetect.c b/ext/opencv/gstedgedetect.c index 42728998..68840f30 100644 --- a/ext/opencv/gstedgedetect.c +++ b/ext/opencv/gstedgedetect.c @@ -91,24 +91,26 @@ enum static GstStaticPadTemplate sink_factory = GST_STATIC_PAD_TEMPLATE ("sink", GST_PAD_SINK, GST_PAD_ALWAYS, - GST_STATIC_CAPS (GST_VIDEO_CAPS_RGB) + GST_STATIC_CAPS (GST_VIDEO_CAPS_MAKE ("RGB")) ); static GstStaticPadTemplate src_factory = GST_STATIC_PAD_TEMPLATE ("src", GST_PAD_SRC, GST_PAD_ALWAYS, - GST_STATIC_CAPS (GST_VIDEO_CAPS_RGB) + GST_STATIC_CAPS (GST_VIDEO_CAPS_MAKE ("RGB")) ); -GST_BOILERPLATE (GstEdgeDetect, gst_edge_detect, GstElement, GST_TYPE_ELEMENT); +G_DEFINE_TYPE (GstEdgeDetect, gst_edge_detect, GST_TYPE_ELEMENT); static void gst_edge_detect_set_property (GObject * object, guint prop_id, const GValue * value, GParamSpec * pspec); static void gst_edge_detect_get_property (GObject * object, guint prop_id, GValue * value, GParamSpec * pspec); -static gboolean gst_edge_detect_set_caps (GstPad * pad, GstCaps * caps); -static GstFlowReturn gst_edge_detect_chain (GstPad * pad, GstBuffer * buf); +static gboolean gst_edge_detect_handle_sink_event (GstPad * pad, + GstObject * parent, GstEvent * event); +static GstFlowReturn gst_edge_detect_chain (GstPad * pad, GstObject * parent, + GstBuffer * buf); /* Clean up */ static void @@ -123,25 +125,7 @@ gst_edge_detect_finalize (GObject * obj) cvReleaseImage (&filter->cvEdge); } - G_OBJECT_CLASS (parent_class)->finalize (obj); -} - -/* GObject vmethod implementations */ -static void -gst_edge_detect_base_init (gpointer gclass) -{ - GstElementClass *element_class = GST_ELEMENT_CLASS (gclass); - - gst_element_class_set_details_simple (element_class, - "edgedetect", - "Filter/Effect/Video", - "Performs canny edge detection on videos and images.", - "Michael Sheldon <mike@mikeasoft.com>"); - - gst_element_class_add_pad_template (element_class, - gst_static_pad_template_get (&src_factory)); - gst_element_class_add_pad_template (element_class, - gst_static_pad_template_get (&sink_factory)); + G_OBJECT_CLASS (gst_edge_detect_parent_class)->finalize (obj); } /* initialize the edgedetect's class */ @@ -150,6 +134,7 @@ gst_edge_detect_class_init (GstEdgeDetectClass * klass) { GObjectClass *gobject_class; + GstElementClass *element_class = GST_ELEMENT_CLASS (klass); gobject_class = (GObjectClass *) klass; gobject_class->finalize = GST_DEBUG_FUNCPTR (gst_edge_detect_finalize); @@ -172,6 +157,17 @@ gst_edge_detect_class_init (GstEdgeDetectClass * klass) g_param_spec_int ("aperture", "Aperture", "Aperture size for Sobel operator (Must be either 3, 5 or 7", 3, 7, 3, G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS)); + + gst_element_class_set_details_simple (element_class, + "edgedetect", + "Filter/Effect/Video", + "Performs canny edge detection on videos and images.", + "Michael Sheldon <mike@mikeasoft.com>"); + + gst_element_class_add_pad_template (element_class, + gst_static_pad_template_get (&src_factory)); + gst_element_class_add_pad_template (element_class, + gst_static_pad_template_get (&sink_factory)); } /* initialize the new element @@ -180,19 +176,17 @@ gst_edge_detect_class_init (GstEdgeDetectClass * klass) * initialize instance structure */ static void -gst_edge_detect_init (GstEdgeDetect * filter, GstEdgeDetectClass * gclass) +gst_edge_detect_init (GstEdgeDetect * filter) { filter->sinkpad = gst_pad_new_from_static_template (&sink_factory, "sink"); - gst_pad_set_setcaps_function (filter->sinkpad, - GST_DEBUG_FUNCPTR (gst_edge_detect_set_caps)); - gst_pad_set_getcaps_function (filter->sinkpad, - GST_DEBUG_FUNCPTR (gst_pad_proxy_getcaps)); + GST_PAD_SET_PROXY_CAPS (filter->sinkpad); + gst_pad_set_event_function (filter->sinkpad, + GST_DEBUG_FUNCPTR (gst_edge_detect_handle_sink_event)); gst_pad_set_chain_function (filter->sinkpad, GST_DEBUG_FUNCPTR (gst_edge_detect_chain)); filter->srcpad = gst_pad_new_from_static_template (&src_factory, "src"); - gst_pad_set_getcaps_function (filter->srcpad, - GST_DEBUG_FUNCPTR (gst_pad_proxy_getcaps)); + GST_PAD_SET_PROXY_CAPS (filter->srcpad); gst_element_add_pad (GST_ELEMENT (filter), filter->sinkpad); gst_element_add_pad (GST_ELEMENT (filter), filter->srcpad); @@ -256,41 +250,58 @@ gst_edge_detect_get_property (GObject * object, guint prop_id, /* this function handles the link with other elements */ static gboolean -gst_edge_detect_set_caps (GstPad * pad, GstCaps * caps) +gst_edge_detect_handle_sink_event (GstPad * pad, GstObject * parent, + GstEvent * event) { GstEdgeDetect *filter; - GstPad *otherpad; gint width, height; GstStructure *structure; + gboolean res = TRUE; - filter = GST_EDGE_DETECT (gst_pad_get_parent (pad)); - structure = gst_caps_get_structure (caps, 0); - gst_structure_get_int (structure, "width", &width); - gst_structure_get_int (structure, "height", &height); + filter = GST_EDGE_DETECT (parent); - filter->cvImage = cvCreateImage (cvSize (width, height), IPL_DEPTH_8U, 3); - filter->cvCEdge = cvCreateImage (cvSize (width, height), IPL_DEPTH_8U, 3); - filter->cvGray = cvCreateImage (cvSize (width, height), IPL_DEPTH_8U, 1); - filter->cvEdge = cvCreateImage (cvSize (width, height), IPL_DEPTH_8U, 1); + switch (GST_EVENT_TYPE (event)) { + case GST_EVENT_CAPS: + { + GstCaps *caps; + gst_event_parse_caps (event, &caps); - otherpad = (pad == filter->srcpad) ? filter->sinkpad : filter->srcpad; - gst_object_unref (filter); + structure = gst_caps_get_structure (caps, 0); + gst_structure_get_int (structure, "width", &width); + gst_structure_get_int (structure, "height", &height); + + filter->cvImage = cvCreateImage (cvSize (width, height), IPL_DEPTH_8U, 3); + filter->cvCEdge = cvCreateImage (cvSize (width, height), IPL_DEPTH_8U, 3); + filter->cvGray = cvCreateImage (cvSize (width, height), IPL_DEPTH_8U, 1); + filter->cvEdge = cvCreateImage (cvSize (width, height), IPL_DEPTH_8U, 1); + break; + } + default: + break; + } + + res = gst_pad_event_default (pad, parent, event); + + return res; - return gst_pad_set_caps (otherpad, caps); } /* chain function * this function does the actual processing */ static GstFlowReturn -gst_edge_detect_chain (GstPad * pad, GstBuffer * buf) +gst_edge_detect_chain (GstPad * pad, GstObject * parent, GstBuffer * buf) { GstEdgeDetect *filter; GstBuffer *outbuf; + GstMapInfo in_info; + GstMapInfo out_info; - filter = GST_EDGE_DETECT (GST_OBJECT_PARENT (pad)); + filter = GST_EDGE_DETECT (parent); - filter->cvImage->imageData = (char *) GST_BUFFER_DATA (buf); + buf = gst_buffer_make_writable (buf); + gst_buffer_map (buf, &in_info, GST_MAP_WRITE); + filter->cvImage->imageData = (char *) in_info.data; cvCvtColor (filter->cvImage, filter->cvGray, CV_RGB2GRAY); cvSmooth (filter->cvGray, filter->cvEdge, CV_BLUR, 3, 3, 0, 0); @@ -306,10 +317,14 @@ gst_edge_detect_chain (GstPad * pad, GstBuffer * buf) } outbuf = gst_buffer_new_and_alloc (filter->cvCEdge->imageSize); - gst_buffer_copy_metadata (outbuf, buf, GST_BUFFER_COPY_ALL); - memcpy (GST_BUFFER_DATA (outbuf), filter->cvCEdge->imageData, - GST_BUFFER_SIZE (outbuf)); + gst_buffer_copy_into (outbuf, buf, GST_BUFFER_COPY_METADATA, 0, -1); + + gst_buffer_map (outbuf, &out_info, GST_MAP_WRITE); + memcpy (out_info.data, filter->cvCEdge->imageData, + gst_buffer_get_size (outbuf)); + gst_buffer_unmap (buf, &in_info); + gst_buffer_unmap (outbuf, &out_info); gst_buffer_unref (buf); return gst_pad_push (filter->srcpad, outbuf); } diff --git a/ext/opencv/gstfaceblur.c b/ext/opencv/gstfaceblur.c index 6a73db91..8820b030 100644 --- a/ext/opencv/gstfaceblur.c +++ b/ext/opencv/gstfaceblur.c @@ -89,24 +89,26 @@ enum static GstStaticPadTemplate sink_factory = GST_STATIC_PAD_TEMPLATE ("sink", GST_PAD_SINK, GST_PAD_ALWAYS, - GST_STATIC_CAPS (GST_VIDEO_CAPS_RGB) + GST_STATIC_CAPS (GST_VIDEO_CAPS_MAKE ("RGB")) ); static GstStaticPadTemplate src_factory = GST_STATIC_PAD_TEMPLATE ("src", GST_PAD_SRC, GST_PAD_ALWAYS, - GST_STATIC_CAPS (GST_VIDEO_CAPS_RGB) + GST_STATIC_CAPS (GST_VIDEO_CAPS_MAKE ("RGB")) ); -GST_BOILERPLATE (GstFaceBlur, gst_face_blur, GstElement, GST_TYPE_ELEMENT); +G_DEFINE_TYPE (GstFaceBlur, gst_face_blur, GST_TYPE_ELEMENT); static void gst_face_blur_set_property (GObject * object, guint prop_id, const GValue * value, GParamSpec * pspec); static void gst_face_blur_get_property (GObject * object, guint prop_id, GValue * value, GParamSpec * pspec); -static gboolean gst_face_blur_set_caps (GstPad * pad, GstCaps * caps); -static GstFlowReturn gst_face_blur_chain (GstPad * pad, GstBuffer * buf); +static gboolean gst_face_blur_handle_sink_event (GstPad * pad, + GstObject * parent, GstEvent * event); +static GstFlowReturn gst_face_blur_chain (GstPad * pad, GstObject * parent, + GstBuffer * buf); static void gst_face_blur_load_profile (GstFaceBlur * filter); @@ -123,36 +125,18 @@ gst_face_blur_finalize (GObject * obj) g_free (filter->profile); - G_OBJECT_CLASS (parent_class)->finalize (obj); + G_OBJECT_CLASS (gst_face_blur_parent_class)->finalize (obj); } -/* GObject vmethod implementations */ -static void -gst_face_blur_base_init (gpointer gclass) -{ - GstElementClass *element_class = GST_ELEMENT_CLASS (gclass); - - gst_element_class_set_details_simple (element_class, - "faceblur", - "Filter/Effect/Video", - "Blurs faces in images and videos", - "Michael Sheldon <mike@mikeasoft.com>"); - - gst_element_class_add_pad_template (element_class, - gst_static_pad_template_get (&src_factory)); - gst_element_class_add_pad_template (element_class, - gst_static_pad_template_get (&sink_factory)); -} - /* initialize the faceblur's class */ static void gst_face_blur_class_init (GstFaceBlurClass * klass) { GObjectClass *gobject_class; + GstElementClass *element_class = GST_ELEMENT_CLASS (klass); gobject_class = (GObjectClass *) klass; - parent_class = g_type_class_peek_parent (klass); gobject_class->finalize = GST_DEBUG_FUNCPTR (gst_face_blur_finalize); gobject_class->set_property = gst_face_blur_set_property; @@ -162,6 +146,17 @@ gst_face_blur_class_init (GstFaceBlurClass * klass) g_param_spec_string ("profile", "Profile", "Location of Haar cascade file to use for face blurion", DEFAULT_PROFILE, G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS)); + + gst_element_class_set_details_simple (element_class, + "faceblur", + "Filter/Effect/Video", + "Blurs faces in images and videos", + "Michael Sheldon <mike@mikeasoft.com>"); + + gst_element_class_add_pad_template (element_class, + gst_static_pad_template_get (&src_factory)); + gst_element_class_add_pad_template (element_class, + gst_static_pad_template_get (&sink_factory)); } /* initialize the new element @@ -170,19 +165,17 @@ gst_face_blur_class_init (GstFaceBlurClass * klass) * initialize instance structure */ static void -gst_face_blur_init (GstFaceBlur * filter, GstFaceBlurClass * gclass) +gst_face_blur_init (GstFaceBlur * filter) { filter->sinkpad = gst_pad_new_from_static_template (&sink_factory, "sink"); - gst_pad_set_setcaps_function (filter->sinkpad, - GST_DEBUG_FUNCPTR (gst_face_blur_set_caps)); - gst_pad_set_getcaps_function (filter->sinkpad, - GST_DEBUG_FUNCPTR (gst_pad_proxy_getcaps)); + GST_PAD_SET_PROXY_CAPS (filter->sinkpad); + gst_pad_set_event_function (filter->sinkpad, + GST_DEBUG_FUNCPTR (gst_face_blur_handle_sink_event)); gst_pad_set_chain_function (filter->sinkpad, GST_DEBUG_FUNCPTR (gst_face_blur_chain)); filter->srcpad = gst_pad_new_from_static_template (&src_factory, "src"); - gst_pad_set_getcaps_function (filter->srcpad, - GST_DEBUG_FUNCPTR (gst_pad_proxy_getcaps)); + GST_PAD_SET_PROXY_CAPS (filter->srcpad); gst_element_add_pad (GST_ELEMENT (filter), filter->sinkpad); gst_element_add_pad (GST_ELEMENT (filter), filter->srcpad); @@ -228,41 +221,56 @@ gst_face_blur_get_property (GObject * object, guint prop_id, /* this function handles the link with other elements */ static gboolean -gst_face_blur_set_caps (GstPad * pad, GstCaps * caps) +gst_face_blur_handle_sink_event (GstPad * pad, GstObject * parent, + GstEvent * event) { GstFaceBlur *filter; - GstPad *otherpad; gint width, height; GstStructure *structure; + gboolean res = TRUE; + + filter = GST_FACE_BLUR (parent); - filter = GST_FACE_BLUR (gst_pad_get_parent (pad)); - structure = gst_caps_get_structure (caps, 0); - gst_structure_get_int (structure, "width", &width); - gst_structure_get_int (structure, "height", &height); + switch (GST_EVENT_TYPE (event)) { + case GST_EVENT_CAPS: + { + GstCaps *caps; + gst_event_parse_caps (event, &caps); - filter->cvImage = cvCreateImage (cvSize (width, height), IPL_DEPTH_8U, 3); - filter->cvGray = cvCreateImage (cvSize (width, height), IPL_DEPTH_8U, 1); - filter->cvStorage = cvCreateMemStorage (0); + structure = gst_caps_get_structure (caps, 0); + gst_structure_get_int (structure, "width", &width); + gst_structure_get_int (structure, "height", &height); + + filter->cvImage = cvCreateImage (cvSize (width, height), IPL_DEPTH_8U, 3); + filter->cvGray = cvCreateImage (cvSize (width, height), IPL_DEPTH_8U, 1); + filter->cvStorage = cvCreateMemStorage (0); + break; + } + default: + break; + } - otherpad = (pad == filter->srcpad) ? filter->sinkpad : filter->srcpad; - gst_object_unref (filter); + res = gst_pad_event_default (pad, parent, event); - return gst_pad_set_caps (otherpad, caps); + return res; } /* chain function * this function does the actual processing */ static GstFlowReturn -gst_face_blur_chain (GstPad * pad, GstBuffer * buf) +gst_face_blur_chain (GstPad * pad, GstObject * parent, GstBuffer * buf) { GstFaceBlur *filter; CvSeq *faces; + GstMapInfo info; int i; filter = GST_FACE_BLUR (GST_OBJECT_PARENT (pad)); - filter->cvImage->imageData = (char *) GST_BUFFER_DATA (buf); + buf = gst_buffer_make_writable (buf); + gst_buffer_map (buf, &info, GST_MAP_READWRITE); + filter->cvImage->imageData = (char *) info.data; cvCvtColor (filter->cvImage, filter->cvGray, CV_RGB2GRAY); cvClearMemStorage (filter->cvStorage); diff --git a/ext/opencv/gstfacedetect.c b/ext/opencv/gstfacedetect.c index 5a0c09fd..fa438570 100644 --- a/ext/opencv/gstfacedetect.c +++ b/ext/opencv/gstfacedetect.c @@ -154,17 +154,16 @@ gst_opencv_face_detect_flags_get_type (void) static GstStaticPadTemplate sink_factory = GST_STATIC_PAD_TEMPLATE ("sink", GST_PAD_SINK, GST_PAD_ALWAYS, - GST_STATIC_CAPS (GST_VIDEO_CAPS_RGB) + GST_STATIC_CAPS (GST_VIDEO_CAPS_MAKE ("RGB")) ); static GstStaticPadTemplate src_factory = GST_STATIC_PAD_TEMPLATE ("src", GST_PAD_SRC, GST_PAD_ALWAYS, - GST_STATIC_CAPS (GST_VIDEO_CAPS_RGB) + GST_STATIC_CAPS (GST_VIDEO_CAPS_MAKE ("RGB")) ); -GST_BOILERPLATE (GstFaceDetect, gst_face_detect, GstOpencvVideoFilter, - GST_TYPE_OPENCV_VIDEO_FILTER); +G_DEFINE_TYPE (GstFaceDetect, gst_face_detect, GST_TYPE_OPENCV_VIDEO_FILTER); static void gst_face_detect_set_property (GObject * object, guint prop_id, const GValue * value, GParamSpec * pspec); @@ -205,26 +204,7 @@ gst_face_detect_finalize (GObject * obj) if (filter->cvEyesDetect) cvReleaseHaarClassifierCascade (&filter->cvEyesDetect); - G_OBJECT_CLASS (parent_class)->finalize (obj); -} - - -/* GObject vmethod implementations */ -static void -gst_face_detect_base_init (gpointer gclass) -{ - GstElementClass *element_class = GST_ELEMENT_CLASS (gclass); - - gst_element_class_set_details_simple (element_class, - "facedetect", - "Filter/Effect/Video", - "Performs face detection on videos and images, providing detected positions via bus messages", - "Michael Sheldon <mike@mikeasoft.com>"); - - gst_element_class_add_pad_template (element_class, - gst_static_pad_template_get (&src_factory)); - gst_element_class_add_pad_template (element_class, - gst_static_pad_template_get (&sink_factory)); + G_OBJECT_CLASS (gst_face_detect_parent_class)->finalize (obj); } /* initialize the facedetect's class */ @@ -234,6 +214,7 @@ gst_face_detect_class_init (GstFaceDetectClass * klass) GObjectClass *gobject_class; GstOpencvVideoFilterClass *gstopencvbasefilter_class; + GstElementClass *element_class = GST_ELEMENT_CLASS (klass); gobject_class = (GObjectClass *) klass; gstopencvbasefilter_class = (GstOpencvVideoFilterClass *) klass; @@ -288,13 +269,24 @@ gst_face_detect_class_init (GstFaceDetectClass * klass) g_param_spec_int ("min-size-height", "Minimum face height", "Minimum area height to be recognized as a face", 0, G_MAXINT, DEFAULT_MIN_SIZE_HEIGHT, G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS)); + + gst_element_class_set_details_simple (element_class, + "facedetect", + "Filter/Effect/Video", + "Performs face detection on videos and images, providing detected positions via bus messages", + "Michael Sheldon <mike@mikeasoft.com>"); + + gst_element_class_add_pad_template (element_class, + gst_static_pad_template_get (&src_factory)); + gst_element_class_add_pad_template (element_class, + gst_static_pad_template_get (&sink_factory)); } /* initialize the new element * initialize instance structure */ static void -gst_face_detect_init (GstFaceDetect * filter, GstFaceDetectClass * gclass) +gst_face_detect_init (GstFaceDetect * filter) { filter->face_profile = g_strdup (DEFAULT_FACE_PROFILE); filter->nose_profile = g_strdup (DEFAULT_NOSE_PROFILE); @@ -679,7 +671,8 @@ gst_face_detect_transform_ip (GstOpencvVideoFilter * base, GstBuffer * buf, } } - gst_structure_set_value (msg->structure, "faces", &facelist); + gst_structure_set_value ((GstStructure *) gst_message_get_structure (msg), + "faces", &facelist); g_value_unset (&facelist); gst_element_post_message (GST_ELEMENT (filter), msg); } diff --git a/ext/opencv/gstmotioncells.c b/ext/opencv/gstmotioncells.c index d300f9d3..ad5758c4 100644 --- a/ext/opencv/gstmotioncells.c +++ b/ext/opencv/gstmotioncells.c @@ -143,23 +143,24 @@ enum static GstStaticPadTemplate sink_factory = GST_STATIC_PAD_TEMPLATE ("sink", GST_PAD_SINK, GST_PAD_ALWAYS, - GST_STATIC_CAPS (GST_VIDEO_CAPS_RGB)); + GST_STATIC_CAPS (GST_VIDEO_CAPS_MAKE ("RGB"))); static GstStaticPadTemplate src_factory = GST_STATIC_PAD_TEMPLATE ("src", GST_PAD_SRC, GST_PAD_ALWAYS, - GST_STATIC_CAPS (GST_VIDEO_CAPS_RGB)); + GST_STATIC_CAPS (GST_VIDEO_CAPS_MAKE ("RGB"))); -GST_BOILERPLATE (GstMotioncells, gst_motion_cells, GstElement, - GST_TYPE_ELEMENT); +G_DEFINE_TYPE (GstMotioncells, gst_motion_cells, GST_TYPE_ELEMENT); static void gst_motion_cells_set_property (GObject * object, guint prop_id, const GValue * value, GParamSpec * pspec); static void gst_motion_cells_get_property (GObject * object, guint prop_id, GValue * value, GParamSpec * pspec); -static gboolean gst_motion_cells_set_caps (GstPad * pad, GstCaps * caps); -static GstFlowReturn gst_motion_cells_chain (GstPad * pad, GstBuffer * buf); +static gboolean gst_motion_cells_handle_sink_event (GstPad * pad, + GstObject * parent, GstEvent * event); +static GstFlowReturn gst_motion_cells_chain (GstPad * pad, GstObject * parent, + GstBuffer * buf); static void gst_motioncells_update_motion_cells (GstMotioncells * filter); static void gst_motioncells_update_motion_masks (GstMotioncells * filter); @@ -194,25 +195,7 @@ gst_motion_cells_finalize (GObject * obj) GFREE (filter->basename_datafile); GFREE (filter->datafile_extension); - G_OBJECT_CLASS (parent_class)->finalize (obj); -} - -/* GObject vmethod implementations */ -static void -gst_motion_cells_base_init (gpointer gclass) -{ - GstElementClass *element_class = GST_ELEMENT_CLASS (gclass); - - gst_element_class_set_details_simple (element_class, - "motioncells", - "Filter/Effect/Video", - "Performs motion detection on videos and images, providing detected motion cells index via bus messages", - "Robert Jobbagy <jobbagy dot robert at gmail dot com>, Nicola Murino <nicola dot murino at gmail.com>"); - - gst_element_class_add_pad_template (element_class, - gst_static_pad_template_get (&src_factory)); - gst_element_class_add_pad_template (element_class, - gst_static_pad_template_get (&sink_factory)); + G_OBJECT_CLASS (gst_motion_cells_parent_class)->finalize (obj); } /* initialize the motioncells's class */ @@ -221,8 +204,8 @@ gst_motion_cells_class_init (GstMotioncellsClass * klass) { GObjectClass *gobject_class; + GstElementClass *element_class = GST_ELEMENT_CLASS (klass); gobject_class = (GObjectClass *) klass; - parent_class = g_type_class_peek_parent (klass); gobject_class->finalize = GST_DEBUG_FUNCPTR (gst_motion_cells_finalize); gobject_class->set_property = gst_motion_cells_set_property; @@ -316,6 +299,17 @@ gst_motion_cells_class_init (GstMotioncellsClass * klass) "Motion Cell Border Thickness, if it's -1 then motion cell will be fill", THICKNESS_MIN, THICKNESS_MAX, THICKNESS_DEF, G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS)); + + gst_element_class_set_details_simple (element_class, + "motioncells", + "Filter/Effect/Video", + "Performs motion detection on videos and images, providing detected motion cells index via bus messages", + "Robert Jobbagy <jobbagy dot robert at gmail dot com>, Nicola Murino <nicola dot murino at gmail.com>"); + + gst_element_class_add_pad_template (element_class, + gst_static_pad_template_get (&src_factory)); + gst_element_class_add_pad_template (element_class, + gst_static_pad_template_get (&sink_factory)); } /* initialize the new element @@ -324,19 +318,18 @@ gst_motion_cells_class_init (GstMotioncellsClass * klass) * initialize instance structure */ static void -gst_motion_cells_init (GstMotioncells * filter, GstMotioncellsClass * gclass) +gst_motion_cells_init (GstMotioncells * filter) { filter->sinkpad = gst_pad_new_from_static_template (&sink_factory, "sink"); - gst_pad_set_setcaps_function (filter->sinkpad, - GST_DEBUG_FUNCPTR (gst_motion_cells_set_caps)); - gst_pad_set_getcaps_function (filter->sinkpad, - GST_DEBUG_FUNCPTR (gst_pad_proxy_getcaps)); + GST_PAD_SET_PROXY_CAPS (filter->sinkpad); + + gst_pad_set_event_function (filter->sinkpad, + GST_DEBUG_FUNCPTR (gst_motion_cells_handle_sink_event)); gst_pad_set_chain_function (filter->sinkpad, GST_DEBUG_FUNCPTR (gst_motion_cells_chain)); filter->srcpad = gst_pad_new_from_static_template (&src_factory, "src"); - gst_pad_set_getcaps_function (filter->srcpad, - GST_DEBUG_FUNCPTR (gst_pad_proxy_getcaps)); + GST_PAD_SET_PROXY_CAPS (filter->srcpad); gst_element_add_pad (GST_ELEMENT (filter), filter->sinkpad); gst_element_add_pad (GST_ELEMENT (filter), filter->srcpad); @@ -817,38 +810,53 @@ gst_motioncells_update_motion_masks (GstMotioncells * filter) /* this function handles the link with other elements */ static gboolean -gst_motion_cells_set_caps (GstPad * pad, GstCaps * caps) +gst_motion_cells_handle_sink_event (GstPad * pad, GstObject * parent, + GstEvent * event) { GstMotioncells *filter; - GstPad *otherpad; - GstStructure *structure; - int numerator, denominator; - - filter = gst_motion_cells (gst_pad_get_parent (pad)); - structure = gst_caps_get_structure (caps, 0); - gst_structure_get_int (structure, "width", &filter->width); - gst_structure_get_int (structure, "height", &filter->height); - gst_structure_get_fraction (structure, "framerate", &numerator, &denominator); - filter->framerate = (double) numerator / (double) denominator; - if (filter->cvImage) - cvReleaseImage (&filter->cvImage); - filter->cvImage = - cvCreateImage (cvSize (filter->width, filter->height), IPL_DEPTH_8U, 3); + GstVideoInfo info; + gboolean res = TRUE; + + filter = gst_motion_cells (parent); + + switch (GST_EVENT_TYPE (event)) { + case GST_EVENT_CAPS: + { + GstCaps *caps; + gst_event_parse_caps (event, &caps); + gst_video_info_from_caps (&info, caps); + + filter->width = info.width; + filter->height = info.height; + + filter->framerate = (double) info.fps_n / (double) info.fps_d; + if (filter->cvImage) + cvReleaseImage (&filter->cvImage); + filter->cvImage = + cvCreateImage (cvSize (filter->width, filter->height), IPL_DEPTH_8U, + 3); + break; + } + default: + break; + } + + res = gst_pad_event_default (pad, parent, event); + + return res; - otherpad = (pad == filter->srcpad) ? filter->sinkpad : filter->srcpad; - gst_object_unref (filter); - return gst_pad_set_caps (otherpad, caps); } /* chain function * this function does the actual processing */ static GstFlowReturn -gst_motion_cells_chain (GstPad * pad, GstBuffer * buf) +gst_motion_cells_chain (GstPad * pad, GstObject * parent, GstBuffer * buf) { GstMotioncells *filter; - filter = gst_motion_cells (GST_OBJECT_PARENT (pad)); + GstMapInfo info; + filter = gst_motion_cells (parent); GST_OBJECT_LOCK (filter); if (filter->calculate_motion) { double sensitivity; @@ -865,8 +873,10 @@ gst_motion_cells_chain (GstPad * pad, GstBuffer * buf) motioncellidx *motionmaskcellsidx; cellscolor motioncellscolor; motioncellidx *motioncellsidx; + buf = gst_buffer_make_writable (buf); - filter->cvImage->imageData = (char *) GST_BUFFER_DATA (buf); + gst_buffer_map (buf, &info, GST_MAP_WRITE); + filter->cvImage->imageData = (char *) info.data; if (filter->firstframe) { setPrevFrame (filter->cvImage, filter->id); filter->firstframe = FALSE; diff --git a/ext/opencv/gstopencvutils.c b/ext/opencv/gstopencvutils.c index daaf0651..363d61f4 100644 --- a/ext/opencv/gstopencvutils.c +++ b/ext/opencv/gstopencvutils.c @@ -29,31 +29,34 @@ static gboolean gst_opencv_get_ipl_depth_and_channels (GstStructure * structure, gint * ipldepth, gint * channels, GError ** err) { - gint depth, bpp; + GstVideoFormat format = GST_VIDEO_FORMAT_UNKNOWN; + const GstVideoFormatInfo *info; + gint depth = 0, i; + const gchar *s; - if (!gst_structure_get_int (structure, "depth", &depth) || - !gst_structure_get_int (structure, "bpp", &bpp)) { - g_set_error (err, GST_CORE_ERROR, GST_CORE_ERROR_NEGOTIATION, - "No depth/bpp in caps"); - return FALSE; + if (gst_structure_has_name (structure, "video/x-raw")) { + if (!(s = gst_structure_get_string (structure, "format"))) + return FALSE; + format = gst_video_format_from_string (s); + if (format == GST_VIDEO_FORMAT_UNKNOWN) + return FALSE; } - if (depth != bpp) { - g_set_error (err, GST_CORE_ERROR, GST_CORE_ERROR_NEGOTIATION, - "Depth and bpp should be equal"); - return FALSE; - } + info = gst_video_format_get_info (format); - if (gst_structure_has_name (structure, "video/x-raw-rgb")) { - *channels = 3; - } else if (gst_structure_has_name (structure, "video/x-raw-gray")) { - *channels = 1; - } else { + if (GST_VIDEO_FORMAT_INFO_IS_RGB (info)) + *channels=3; + else if (GST_VIDEO_FORMAT_INFO_IS_GRAY (info)) + *channels=1; + else { g_set_error (err, GST_CORE_ERROR, GST_CORE_ERROR_NEGOTIATION, - "Unsupported caps %s", gst_structure_get_name (structure)); + "Unsupported structure %s", gst_structure_get_name (structure)); return FALSE; } + for (i = 0; i < GST_VIDEO_FORMAT_INFO_N_COMPONENTS (info); i++) + depth += GST_VIDEO_FORMAT_INFO_DEPTH (info, i); + if (depth / *channels == 8) { /* TODO signdness? */ *ipldepth = IPL_DEPTH_8U; @@ -92,9 +95,42 @@ gboolean gst_opencv_parse_iplimage_params_from_caps (GstCaps * caps, gint * width, gint * height, gint * ipldepth, gint * channels, GError ** err) { - return - gst_opencv_parse_iplimage_params_from_structure (gst_caps_get_structure - (caps, 0), width, height, ipldepth, channels, err); + GstVideoInfo info; + gint i, depth = 0; + + if (!gst_video_info_from_caps (&info, caps)) { + GST_ERROR ("Failed to get the videoinfo from caps"); + g_set_error (err, GST_CORE_ERROR, GST_CORE_ERROR_NEGOTIATION, + "No width/heighti/depth/channels in caps"); + return FALSE; + } + + *width = GST_VIDEO_INFO_WIDTH (&info); + *height = GST_VIDEO_INFO_HEIGHT (&info); + if (GST_VIDEO_INFO_IS_RGB (&info)) + *channels = 3; + else if (GST_VIDEO_INFO_IS_GRAY (&info)) + *channels = 1; + else { + g_set_error (err, GST_CORE_ERROR, GST_CORE_ERROR_NEGOTIATION, + "Unsupported caps %s", gst_caps_to_string(caps)); + return FALSE; + } + + for (i = 0; i < GST_VIDEO_INFO_N_COMPONENTS (&info); i++) + depth += GST_VIDEO_INFO_COMP_DEPTH (&info, i); + + if (depth / *channels == 8) { + /* TODO signdness? */ + *ipldepth = IPL_DEPTH_8U; + } else if (depth / *channels == 16) { + *ipldepth = IPL_DEPTH_16U; + } else { + g_set_error (err, GST_CORE_ERROR, GST_CORE_ERROR_NEGOTIATION, + "Unsupported depth/channels %d/%d", depth, *channels); + return FALSE; + } + return TRUE; } GstCaps * diff --git a/ext/opencv/gstopencvvideofilter.c b/ext/opencv/gstopencvvideofilter.c index 5eeda942..4bb37f6d 100644 --- a/ext/opencv/gstopencvvideofilter.c +++ b/ext/opencv/gstopencvvideofilter.c @@ -73,7 +73,6 @@ static void gst_opencv_video_filter_class_init (GstOpencvVideoFilterClass * klass); static void gst_opencv_video_filter_init (GstOpencvVideoFilter * trans, GstOpencvVideoFilterClass * klass); -static void gst_opencv_video_filter_base_init (gpointer gclass); static gboolean gst_opencv_video_filter_set_caps (GstBaseTransform * trans, GstCaps * incaps, GstCaps * outcaps); @@ -96,7 +95,7 @@ gst_opencv_video_filter_get_type (void) GType _type; static const GTypeInfo opencv_base_transform_info = { sizeof (GstOpencvVideoFilterClass), - (GBaseInitFunc) gst_opencv_video_filter_base_init, + NULL, NULL, (GClassInitFunc) gst_opencv_video_filter_class_init, NULL, @@ -128,12 +127,6 @@ gst_opencv_video_filter_finalize (GObject * obj) G_OBJECT_CLASS (parent_class)->finalize (obj); } -/* GObject vmethod implementations */ -static void -gst_opencv_video_filter_base_init (gpointer gclass) -{ -} - static void gst_opencv_video_filter_class_init (GstOpencvVideoFilterClass * klass) { @@ -159,7 +152,7 @@ gst_opencv_video_filter_class_init (GstOpencvVideoFilterClass * klass) static void gst_opencv_video_filter_init (GstOpencvVideoFilter * transform, - GstOpencvVideoFilterClass * bclass) + GstOpencvVideoFilterClass * klass) { } @@ -169,6 +162,8 @@ gst_opencv_video_filter_transform (GstBaseTransform * trans, { GstOpencvVideoFilter *transform; GstOpencvVideoFilterClass *fclass; + GstMapInfo in_info; + GstMapInfo out_info; GstFlowReturn ret; transform = GST_OPENCV_VIDEO_FILTER (trans); @@ -178,16 +173,17 @@ gst_opencv_video_filter_transform (GstBaseTransform * trans, g_return_val_if_fail (transform->cvImage != NULL, GST_FLOW_ERROR); g_return_val_if_fail (transform->out_cvImage != NULL, GST_FLOW_ERROR); - transform->cvImage->imageData = (char *) gst_buffer_map (inbuf, - NULL, NULL, GST_MAP_READ); - transform->out_cvImage->imageData = (char *) gst_buffer_map (outbuf, - NULL, NULL, GST_MAP_WRITE); + gst_buffer_map (inbuf, &in_info, GST_MAP_READ); + transform->cvImage->imageData = (char *) in_info.data; + + gst_buffer_map (outbuf, &out_info, GST_MAP_WRITE); + transform->out_cvImage->imageData = (char *) out_info.data; ret = fclass->cv_trans_func (transform, inbuf, transform->cvImage, outbuf, transform->out_cvImage); - gst_buffer_unmap (inbuf, transform->cvImage->imageData, -1); - gst_buffer_unmap (outbuf, transform->out_cvImage->imageData, -1); + gst_buffer_unmap (inbuf, &in_info); + gst_buffer_unmap (outbuf, &out_info); return ret; } @@ -198,6 +194,7 @@ gst_opencv_video_filter_transform_ip (GstBaseTransform * trans, { GstOpencvVideoFilter *transform; GstOpencvVideoFilterClass *fclass; + GstMapInfo info; GstFlowReturn ret; transform = GST_OPENCV_VIDEO_FILTER (trans); @@ -210,13 +207,13 @@ gst_opencv_video_filter_transform_ip (GstBaseTransform * trans, * level */ buffer = gst_buffer_make_writable (buffer); - transform->cvImage->imageData = (char *) gst_buffer_map (buffer, - NULL, NULL, GST_MAP_READWRITE); + gst_buffer_map (buffer, &info, GST_MAP_READWRITE); + transform->cvImage->imageData = (char *) info.data; /* FIXME how to release buffer? */ ret = fclass->cv_trans_ip_func (transform, buffer, transform->cvImage); - gst_buffer_unmap (buffer, transform->cvImage->imageData, -1); + gst_buffer_unmap (buffer, &info); return ret; } diff --git a/ext/opencv/gstpyramidsegment.c b/ext/opencv/gstpyramidsegment.c index 33b1eb0b..030de939 100644 --- a/ext/opencv/gstpyramidsegment.c +++ b/ext/opencv/gstpyramidsegment.c @@ -93,25 +93,26 @@ enum static GstStaticPadTemplate sink_factory = GST_STATIC_PAD_TEMPLATE ("sink", GST_PAD_SINK, GST_PAD_ALWAYS, - GST_STATIC_CAPS (GST_VIDEO_CAPS_RGB) + GST_STATIC_CAPS (GST_VIDEO_CAPS_MAKE ("RGB")) ); static GstStaticPadTemplate src_factory = GST_STATIC_PAD_TEMPLATE ("src", GST_PAD_SRC, GST_PAD_ALWAYS, - GST_STATIC_CAPS (GST_VIDEO_CAPS_RGB) + GST_STATIC_CAPS (GST_VIDEO_CAPS_MAKE ("RGB")) ); -GST_BOILERPLATE (GstPyramidSegment, gst_pyramid_segment, GstElement, - GST_TYPE_ELEMENT); +G_DEFINE_TYPE (GstPyramidSegment, gst_pyramid_segment, GST_TYPE_ELEMENT); static void gst_pyramid_segment_set_property (GObject * object, guint prop_id, const GValue * value, GParamSpec * pspec); static void gst_pyramid_segment_get_property (GObject * object, guint prop_id, GValue * value, GParamSpec * pspec); -static gboolean gst_pyramid_segment_set_caps (GstPad * pad, GstCaps * caps); -static GstFlowReturn gst_pyramid_segment_chain (GstPad * pad, GstBuffer * buf); +static gboolean gst_pyramid_segment_handle_sink_event (GstPad * pad, + GstObject * parent, GstEvent * event); +static GstFlowReturn gst_pyramid_segment_chain (GstPad * pad, + GstObject * parent, GstBuffer * buf); /* Clean up */ static void @@ -124,26 +125,10 @@ gst_pyramid_segment_finalize (GObject * obj) cvReleaseImage (&filter->cvSegmentedImage); } - G_OBJECT_CLASS (parent_class)->finalize (obj); + G_OBJECT_CLASS (gst_pyramid_segment_parent_class)->finalize (obj); } -/* GObject vmethod implementations */ -static void -gst_pyramid_segment_base_init (gpointer gclass) -{ - GstElementClass *element_class = GST_ELEMENT_CLASS (gclass); - - gst_element_class_set_details_simple (element_class, - "pyramidsegment", - "Filter/Effect/Video", - "Applies pyramid segmentation to a video or image.", - "Michael Sheldon <mike@mikeasoft.com>"); - gst_element_class_add_pad_template (element_class, - gst_static_pad_template_get (&src_factory)); - gst_element_class_add_pad_template (element_class, - gst_static_pad_template_get (&sink_factory)); -} /* initialize the pyramidsegment's class */ static void @@ -151,8 +136,8 @@ gst_pyramid_segment_class_init (GstPyramidSegmentClass * klass) { GObjectClass *gobject_class; + GstElementClass *element_class = GST_ELEMENT_CLASS (klass); gobject_class = (GObjectClass *) klass; - parent_class = g_type_class_peek_parent (klass); gobject_class->finalize = GST_DEBUG_FUNCPTR (gst_pyramid_segment_finalize); gobject_class->set_property = gst_pyramid_segment_set_property; @@ -176,6 +161,17 @@ gst_pyramid_segment_class_init (GstPyramidSegmentClass * klass) g_param_spec_int ("level", "Level", "Maximum level of the pyramid segmentation", 0, 4, 4, G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS)); + + gst_element_class_set_details_simple (element_class, + "pyramidsegment", + "Filter/Effect/Video", + "Applies pyramid segmentation to a video or image.", + "Michael Sheldon <mike@mikeasoft.com>"); + + gst_element_class_add_pad_template (element_class, + gst_static_pad_template_get (&src_factory)); + gst_element_class_add_pad_template (element_class, + gst_static_pad_template_get (&sink_factory)); } /* initialize the new element @@ -184,20 +180,18 @@ gst_pyramid_segment_class_init (GstPyramidSegmentClass * klass) * initialize instance structure */ static void -gst_pyramid_segment_init (GstPyramidSegment * filter, - GstPyramidSegmentClass * gclass) +gst_pyramid_segment_init (GstPyramidSegment * filter) { filter->sinkpad = gst_pad_new_from_static_template (&sink_factory, "sink"); - gst_pad_set_setcaps_function (filter->sinkpad, - GST_DEBUG_FUNCPTR (gst_pyramid_segment_set_caps)); - gst_pad_set_getcaps_function (filter->sinkpad, - GST_DEBUG_FUNCPTR (gst_pad_proxy_getcaps)); + GST_PAD_SET_PROXY_CAPS (filter->sinkpad); + + gst_pad_set_event_function (filter->sinkpad, + GST_DEBUG_FUNCPTR (gst_pyramid_segment_handle_sink_event)); gst_pad_set_chain_function (filter->sinkpad, GST_DEBUG_FUNCPTR (gst_pyramid_segment_chain)); filter->srcpad = gst_pad_new_from_static_template (&src_factory, "src"); - gst_pad_set_getcaps_function (filter->srcpad, - GST_DEBUG_FUNCPTR (gst_pad_proxy_getcaps)); + GST_PAD_SET_PROXY_CAPS (filter->srcpad); gst_element_add_pad (GST_ELEMENT (filter), filter->sinkpad); gst_element_add_pad (GST_ELEMENT (filter), filter->srcpad); @@ -264,39 +258,50 @@ gst_pyramid_segment_get_property (GObject * object, guint prop_id, /* this function handles the link with other elements */ static gboolean -gst_pyramid_segment_set_caps (GstPad * pad, GstCaps * caps) +gst_pyramid_segment_handle_sink_event (GstPad * pad, GstObject * parent, + GstEvent * event) { GstPyramidSegment *filter; - GstPad *otherpad; - GstStructure *structure; - gint width, height; - - filter = GST_PYRAMID_SEGMENT (gst_pad_get_parent (pad)); - - structure = gst_caps_get_structure (caps, 0); - gst_structure_get_int (structure, "width", &width); - gst_structure_get_int (structure, "height", &height); - - filter->cvImage = cvCreateImage (cvSize (width, height), IPL_DEPTH_8U, 3); + GstVideoInfo info; + gboolean res = TRUE; + filter = GST_PYRAMID_SEGMENT (parent); + + switch (GST_EVENT_TYPE (event)) { + case GST_EVENT_CAPS: + { + GstCaps *caps; + gst_event_parse_caps (event, &caps); + gst_video_info_from_caps (&info, caps); + + filter->cvImage = + cvCreateImage (cvSize (info.width, info.height), IPL_DEPTH_8U, 3); + break; + } + default: + break; + } - otherpad = (pad == filter->srcpad) ? filter->sinkpad : filter->srcpad; - gst_object_unref (filter); + res = gst_pad_event_default (pad, parent, event); - return gst_pad_set_caps (otherpad, caps); + return res; } /* chain function * this function does the actual processing */ static GstFlowReturn -gst_pyramid_segment_chain (GstPad * pad, GstBuffer * buf) +gst_pyramid_segment_chain (GstPad * pad, GstObject * parent, GstBuffer * buf) { GstPyramidSegment *filter; GstBuffer *outbuf; + GstMapInfo info; + GstMapInfo outinfo; filter = GST_PYRAMID_SEGMENT (GST_OBJECT_PARENT (pad)); - filter->cvImage->imageData = (char *) GST_BUFFER_DATA (buf); + buf = gst_buffer_make_writable (buf); + gst_buffer_map (buf, &info, GST_MAP_READWRITE); + filter->cvImage->imageData = (char *) info.data; filter->cvSegmentedImage = cvCloneImage (filter->cvImage); cvPyrSegmentation (filter->cvImage, filter->cvSegmentedImage, filter->storage, @@ -306,14 +311,17 @@ gst_pyramid_segment_chain (GstPad * pad, GstBuffer * buf) * delete only the struct headers. Would avoid a memcpy here */ outbuf = gst_buffer_new_and_alloc (filter->cvSegmentedImage->imageSize); - gst_buffer_copy_metadata (outbuf, buf, GST_BUFFER_COPY_ALL); - memcpy (GST_BUFFER_DATA (outbuf), filter->cvSegmentedImage->imageData, - GST_BUFFER_SIZE (outbuf)); + gst_buffer_copy_into (outbuf, buf, GST_BUFFER_COPY_METADATA, 0, -1); + gst_buffer_map (outbuf, &outinfo, GST_MAP_WRITE); + memcpy (outinfo.data, filter->cvSegmentedImage->imageData, + gst_buffer_get_size (outbuf)); + gst_buffer_unmap (buf, &info); gst_buffer_unref (buf); cvReleaseImage (&filter->cvSegmentedImage); g_assert (filter->cvSegmentedImage == NULL); + gst_buffer_unmap (outbuf, &outinfo); return gst_pad_push (filter->srcpad, outbuf); } diff --git a/ext/opencv/gsttemplatematch.c b/ext/opencv/gsttemplatematch.c index 84640ff3..58a5e8aa 100644 --- a/ext/opencv/gsttemplatematch.c +++ b/ext/opencv/gsttemplatematch.c @@ -91,17 +91,16 @@ enum static GstStaticPadTemplate sink_factory = GST_STATIC_PAD_TEMPLATE ("sink", GST_PAD_SINK, GST_PAD_ALWAYS, - GST_STATIC_CAPS (GST_VIDEO_CAPS_RGB) + GST_STATIC_CAPS (GST_VIDEO_CAPS_MAKE ("RGB")) ); static GstStaticPadTemplate src_factory = GST_STATIC_PAD_TEMPLATE ("src", GST_PAD_SRC, GST_PAD_ALWAYS, - GST_STATIC_CAPS (GST_VIDEO_CAPS_RGB) + GST_STATIC_CAPS (GST_VIDEO_CAPS_MAKE ("RGB")) ); -GST_BOILERPLATE (GstTemplateMatch, gst_template_match, GstElement, - GST_TYPE_ELEMENT); +G_DEFINE_TYPE (GstTemplateMatch, gst_template_match, GST_TYPE_ELEMENT); static void gst_template_match_finalize (GObject * object); static void gst_template_match_set_property (GObject * object, guint prop_id, @@ -109,37 +108,23 @@ static void gst_template_match_set_property (GObject * object, guint prop_id, static void gst_template_match_get_property (GObject * object, guint prop_id, GValue * value, GParamSpec * pspec); -static gboolean gst_template_match_set_caps (GstPad * pad, GstCaps * caps); -static GstFlowReturn gst_template_match_chain (GstPad * pad, GstBuffer * buf); +static gboolean gst_template_match_handle_sink_event (GstPad * pad, + GstObject * parent, GstEvent * event); +static GstFlowReturn gst_template_match_chain (GstPad * pad, GstObject * parent, + GstBuffer * buf); static void gst_template_match_load_template (GstTemplateMatch * filter); static void gst_template_match_match (IplImage * input, IplImage * template, IplImage * dist_image, double *best_res, CvPoint * best_pos, int method); -/* GObject vmethod implementations */ -static void -gst_template_match_base_init (gpointer gclass) -{ - GstElementClass *element_class = GST_ELEMENT_CLASS (gclass); - - gst_element_class_set_details_simple (element_class, - "templatematch", - "Filter/Effect/Video", - "Performs template matching on videos and images, providing detected positions via bus messages.", - "Noam Lewis <jones.noamle@gmail.com>"); - - gst_element_class_add_pad_template (element_class, - gst_static_pad_template_get (&src_factory)); - gst_element_class_add_pad_template (element_class, - gst_static_pad_template_get (&sink_factory)); -} /* initialize the templatematch's class */ static void gst_template_match_class_init (GstTemplateMatchClass * klass) { GObjectClass *gobject_class; + GstElementClass *element_class = GST_ELEMENT_CLASS (klass); gobject_class = (GObjectClass *) klass; @@ -158,6 +143,17 @@ gst_template_match_class_init (GstTemplateMatchClass * klass) g_param_spec_boolean ("display", "Display", "Sets whether the detected template should be highlighted in the output", TRUE, G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS)); + + gst_element_class_set_details_simple (element_class, + "templatematch", + "Filter/Effect/Video", + "Performs template matching on videos and images, providing detected positions via bus messages.", + "Noam Lewis <jones.noamle@gmail.com>"); + + gst_element_class_add_pad_template (element_class, + gst_static_pad_template_get (&src_factory)); + gst_element_class_add_pad_template (element_class, + gst_static_pad_template_get (&sink_factory)); } /* initialize the new element @@ -166,20 +162,15 @@ gst_template_match_class_init (GstTemplateMatchClass * klass) * initialize instance structure */ static void -gst_template_match_init (GstTemplateMatch * filter, - GstTemplateMatchClass * gclass) +gst_template_match_init (GstTemplateMatch * filter) { filter->sinkpad = gst_pad_new_from_static_template (&sink_factory, "sink"); - gst_pad_set_setcaps_function (filter->sinkpad, - GST_DEBUG_FUNCPTR (gst_template_match_set_caps)); - gst_pad_set_getcaps_function (filter->sinkpad, - GST_DEBUG_FUNCPTR (gst_pad_proxy_getcaps)); + gst_pad_set_event_function (filter->sinkpad, + GST_DEBUG_FUNCPTR (gst_template_match_handle_sink_event)); gst_pad_set_chain_function (filter->sinkpad, GST_DEBUG_FUNCPTR (gst_template_match_chain)); filter->srcpad = gst_pad_new_from_static_template (&src_factory, "src"); - gst_pad_set_getcaps_function (filter->srcpad, - GST_DEBUG_FUNCPTR (gst_pad_proxy_getcaps)); gst_element_add_pad (GST_ELEMENT (filter), filter->sinkpad); gst_element_add_pad (GST_ELEMENT (filter), filter->srcpad); @@ -260,25 +251,35 @@ gst_template_match_get_property (GObject * object, guint prop_id, /* this function handles the link with other elements */ static gboolean -gst_template_match_set_caps (GstPad * pad, GstCaps * caps) +gst_template_match_handle_sink_event (GstPad * pad, GstObject * parent, + GstEvent * event) { GstTemplateMatch *filter; - GstPad *otherpad; - gint width, height; - GstStructure *structure; + GstVideoInfo info; + gboolean res = TRUE; + + filter = GST_TEMPLATE_MATCH (parent); + switch (GST_EVENT_TYPE (event)) { + case GST_EVENT_CAPS: + { + GstCaps *caps; + gst_event_parse_caps (event, &caps); + gst_video_info_from_caps (&info, caps); + + filter->cvImage = + cvCreateImageHeader (cvSize (info.width, info.height), IPL_DEPTH_8U, + 3); + break; + } + default: + break; + } - filter = GST_TEMPLATE_MATCH (gst_pad_get_parent (pad)); - structure = gst_caps_get_structure (caps, 0); - gst_structure_get_int (structure, "width", &width); - gst_structure_get_int (structure, "height", &height); + res = gst_pad_event_default (pad, parent, event); - filter->cvImage = - cvCreateImageHeader (cvSize (width, height), IPL_DEPTH_8U, 3); + return res; - otherpad = (pad == filter->srcpad) ? filter->sinkpad : filter->srcpad; - gst_object_unref (filter); - return gst_pad_set_caps (otherpad, caps); } static void @@ -297,29 +298,32 @@ gst_template_match_finalize (GObject * object) cvReleaseImage (&filter->cvTemplateImage); } - GST_CALL_PARENT (G_OBJECT_CLASS, finalize, (object)); + G_OBJECT_CLASS (gst_template_match_parent_class)->finalize (object); } /* chain function * this function does the actual processing */ static GstFlowReturn -gst_template_match_chain (GstPad * pad, GstBuffer * buf) +gst_template_match_chain (GstPad * pad, GstObject * parent, GstBuffer * buf) { GstTemplateMatch *filter; CvPoint best_pos; double best_res; + GstMapInfo info; - filter = GST_TEMPLATE_MATCH (GST_OBJECT_PARENT (pad)); + filter = GST_TEMPLATE_MATCH (parent); /* FIXME Why template == NULL returns OK? * shouldn't it be a passthrough instead? */ if ((!filter) || (!buf) || filter->template == NULL) { return GST_FLOW_OK; } - GST_DEBUG_OBJECT (filter, "Buffer size %u ", GST_BUFFER_SIZE (buf)); + GST_LOG_OBJECT (filter, "Buffer size %u", (guint) gst_buffer_get_size (buf)); - filter->cvImage->imageData = (char *) GST_BUFFER_DATA (buf); + buf = gst_buffer_make_writable (buf); + gst_buffer_map (buf, &info, GST_MAP_READWRITE); + filter->cvImage->imageData = (char *) info.data; if (!filter->cvDistImage) { if (filter->cvTemplateImage->width > filter->cvImage->width) { diff --git a/ext/opencv/gsttextoverlay.c b/ext/opencv/gsttextoverlay.c index 92169440..2ad94853 100644 --- a/ext/opencv/gsttextoverlay.c +++ b/ext/opencv/gsttextoverlay.c @@ -51,7 +51,7 @@ * <refsect2> * <title>Example launch line</title> * |[ - * gst-launch-0.10 videotestsrc ! ffmpegcolorspace ! opencvtextoverlay text="Opencv Text Overlay " ! ffmpegcolorspace ! xvimagesink + * gst-launch-1.0 videotestsrc ! videoconvert ! opencvtextoverlay text="Opencv Text Overlay " ! videoconvert ! xvimagesink * ]| * </refsect2> */ @@ -68,7 +68,7 @@ GST_DEBUG_CATEGORY_STATIC (gst_opencv_text_overlay_debug); #define GST_CAT_DEFAULT gst_opencv_opencv_text_overlay_debug -#define DEFAULT_PROP_TEXT "" +#define DEFAULT_PROP_TEXT "Opencv Text Overlay" #define DEFAULT_PROP_WIDTH 1 #define DEFAULT_PROP_HEIGHT 1 #define DEFAULT_PROP_XPOS 50 @@ -106,28 +106,26 @@ enum static GstStaticPadTemplate sink_factory = GST_STATIC_PAD_TEMPLATE ("sink", GST_PAD_SINK, GST_PAD_ALWAYS, - GST_STATIC_CAPS (GST_VIDEO_CAPS_RGB) + GST_STATIC_CAPS (GST_VIDEO_CAPS_MAKE ("RGB")) ); static GstStaticPadTemplate src_factory = GST_STATIC_PAD_TEMPLATE ("src", GST_PAD_SRC, GST_PAD_ALWAYS, - GST_STATIC_CAPS (GST_VIDEO_CAPS_RGB) + GST_STATIC_CAPS (GST_VIDEO_CAPS_MAKE ("RGB")) ); -GST_BOILERPLATE (GstOpencvTextOverlay, gst_opencv_text_overlay, GstElement, - GST_TYPE_ELEMENT); +G_DEFINE_TYPE (GstOpencvTextOverlay, gst_opencv_text_overlay, GST_TYPE_ELEMENT); static void gst_opencv_text_overlay_set_property (GObject * object, guint prop_id, const GValue * value, GParamSpec * pspec); static void gst_opencv_text_overlay_get_property (GObject * object, guint prop_id, GValue * value, GParamSpec * pspec); -static gboolean gst_opencv_text_overlay_set_caps (GstPad * pad, GstCaps * caps); +static gboolean gst_opencv_text_overlay_handle_sink_event (GstPad * pad, + GstObject * parent, GstEvent * event); static GstFlowReturn gst_opencv_text_overlay_chain (GstPad * pad, - GstBuffer * buf); - - + GstObject * parent, GstBuffer * buf); /* Clean up */ static void @@ -139,27 +137,7 @@ gst_opencv_text_overlay_finalize (GObject * obj) cvReleaseImage (&filter->cvImage); } - G_OBJECT_CLASS (parent_class)->finalize (obj); -} - - - -/* GObject vmethod implementations */ - -static void -gst_opencv_text_overlay_base_init (gpointer gclass) -{ - GstElementClass *element_class = GST_ELEMENT_CLASS (gclass); - - gst_element_class_set_details_simple (element_class, - "opencvtextoverlay", - "Filter/Effect/Video", - "Write text on the top of video", "sreerenj<bsreerenj@gmail.com>"); - - gst_element_class_add_pad_template (element_class, - gst_static_pad_template_get (&src_factory)); - gst_element_class_add_pad_template (element_class, - gst_static_pad_template_get (&sink_factory)); + G_OBJECT_CLASS (gst_opencv_text_overlay_parent_class)->finalize (obj); } /* initialize the opencvtextoverlay's class */ @@ -168,16 +146,15 @@ gst_opencv_text_overlay_class_init (GstOpencvTextOverlayClass * klass) { GObjectClass *gobject_class; + GstElementClass *element_class = GST_ELEMENT_CLASS (klass); gobject_class = (GObjectClass *) klass; - parent_class = g_type_class_peek_parent (klass); gobject_class->finalize = GST_DEBUG_FUNCPTR (gst_opencv_text_overlay_finalize); gobject_class->set_property = gst_opencv_text_overlay_set_property; gobject_class->get_property = gst_opencv_text_overlay_get_property; - g_object_class_install_property (gobject_class, PROP_TEXT, g_param_spec_string ("text", "text", "Text to be display.", DEFAULT_PROP_TEXT, @@ -223,6 +200,16 @@ gst_opencv_text_overlay_class_init (GstOpencvTextOverlayClass * klass) "Sets the width of fonts", 1.0, 5.0, DEFAULT_WIDTH, G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS)); + gst_element_class_set_details_simple (element_class, + "opencvtextoverlay", + "Filter/Effect/Video", + "Write text on the top of video", "sreerenj<bsreerenj@gmail.com>"); + + gst_element_class_add_pad_template (element_class, + gst_static_pad_template_get (&src_factory)); + gst_element_class_add_pad_template (element_class, + gst_static_pad_template_get (&sink_factory)); + } /* initialize the new element @@ -231,23 +218,22 @@ gst_opencv_text_overlay_class_init (GstOpencvTextOverlayClass * klass) * initialize instance structure */ static void -gst_opencv_text_overlay_init (GstOpencvTextOverlay * filter, - GstOpencvTextOverlayClass * gclass) +gst_opencv_text_overlay_init (GstOpencvTextOverlay * filter) { filter->sinkpad = gst_pad_new_from_static_template (&sink_factory, "sink"); - gst_pad_set_setcaps_function (filter->sinkpad, - GST_DEBUG_FUNCPTR (gst_opencv_text_overlay_set_caps)); - gst_pad_set_getcaps_function (filter->sinkpad, - GST_DEBUG_FUNCPTR (gst_pad_proxy_getcaps)); + GST_PAD_SET_PROXY_CAPS (filter->sinkpad); + gst_element_add_pad (GST_ELEMENT (filter), filter->sinkpad); + + gst_pad_set_event_function (filter->sinkpad, + GST_DEBUG_FUNCPTR (gst_opencv_text_overlay_handle_sink_event)); + gst_pad_set_chain_function (filter->sinkpad, GST_DEBUG_FUNCPTR (gst_opencv_text_overlay_chain)); filter->srcpad = gst_pad_new_from_static_template (&src_factory, "src"); - gst_pad_set_getcaps_function (filter->srcpad, - GST_DEBUG_FUNCPTR (gst_pad_proxy_getcaps)); - - gst_element_add_pad (GST_ELEMENT (filter), filter->sinkpad); + GST_PAD_SET_PROXY_CAPS (filter->srcpad); gst_element_add_pad (GST_ELEMENT (filter), filter->srcpad); + filter->textbuf = g_strdup (DEFAULT_PROP_TEXT); filter->width = DEFAULT_PROP_WIDTH; filter->height = DEFAULT_PROP_HEIGHT; @@ -343,44 +329,59 @@ gst_opencv_text_overlay_get_property (GObject * object, guint prop_id, } } -/* GstElement vmethod implementations */ - -/* this function handles the link with other elements */ static gboolean -gst_opencv_text_overlay_set_caps (GstPad * pad, GstCaps * caps) +gst_opencv_text_overlay_handle_sink_event (GstPad * pad, GstObject * parent, + GstEvent * event) { GstOpencvTextOverlay *filter; - GstPad *otherpad; - gint width, height; GstStructure *structure; + gboolean res = TRUE; - filter = GST_OPENCV_TEXT_OVERLAY (gst_pad_get_parent (pad)); + filter = GST_OPENCV_TEXT_OVERLAY (parent); - structure = gst_caps_get_structure (caps, 0); - gst_structure_get_int (structure, "width", &width); - gst_structure_get_int (structure, "height", &height); + switch (GST_EVENT_TYPE (event)) { + case GST_EVENT_CAPS: + { + GstCaps *caps; + gst_event_parse_caps (event, &caps); - filter->cvImage = cvCreateImage (cvSize (width, height), IPL_DEPTH_8U, 3); - filter->cvStorage = cvCreateMemStorage (0); + structure = gst_caps_get_structure (caps, 0); + gst_structure_get_int (structure, "width", &width); + gst_structure_get_int (structure, "height", &height); - otherpad = (pad == filter->srcpad) ? filter->sinkpad : filter->srcpad; - gst_object_unref (filter); + if (!filter->cvImage) { + filter->cvImage = cvCreateImage (cvSize (width, height), IPL_DEPTH_8U, 3); + filter->cvStorage = cvCreateMemStorage (0); + } + break; + } + default: + break; + } - return gst_pad_set_caps (otherpad, caps); + res = gst_pad_event_default (pad, parent, event); + return res; } + /* chain function * this function does the actual processing */ static GstFlowReturn -gst_opencv_text_overlay_chain (GstPad * pad, GstBuffer * buf) +gst_opencv_text_overlay_chain (GstPad * pad, GstObject * parent, + GstBuffer * buf) { GstOpencvTextOverlay *filter; + GstMapInfo map_info; + guint8 *data; + + filter = GST_OPENCV_TEXT_OVERLAY (parent); - filter = GST_OPENCV_TEXT_OVERLAY (GST_OBJECT_PARENT (pad)); + gst_buffer_map (buf, &map_info, GST_MAP_READ); + data = map_info.data; - filter->cvImage->imageData = (char *) GST_BUFFER_DATA (buf); + filter->cvImage->imageData = (char *) data; cvInitFont (&(filter->font), CV_FONT_VECTOR0, filter->width, filter->height, 0, filter->thickness, 0); @@ -390,6 +391,7 @@ gst_opencv_text_overlay_chain (GstPad * pad, GstBuffer * buf) filter->ypos), &(filter->font), cvScalar (filter->colorR, filter->colorG, filter->colorB, 0)); + gst_buffer_unmap (buf, &map_info); return gst_pad_push (filter->srcpad, buf); } diff --git a/ext/opencv/gsttextoverlay.h b/ext/opencv/gsttextoverlay.h index df0206bf..92fee920 100644 --- a/ext/opencv/gsttextoverlay.h +++ b/ext/opencv/gsttextoverlay.h @@ -47,7 +47,7 @@ #define __GST_OPENCV_TEXT_OVERLAY_H__ #include <gst/gst.h> - +#include "gstopencvutils.h" G_BEGIN_DECLS /* #defines don't like whitespacey bits */ diff --git a/ext/opus/Makefile.in b/ext/opus/Makefile.in index 5c7423f8..a17bead7 100644 --- a/ext/opus/Makefile.in +++ b/ext/opus/Makefile.in @@ -1,4 +1,4 @@ -# Makefile.in generated by automake 1.11.5 from Makefile.am. +# Makefile.in generated by automake 1.11.6 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, @@ -242,11 +242,10 @@ DIRECT3D_LIBS = @DIRECT3D_LIBS@ DIRECTDRAW_LIBS = @DIRECTDRAW_LIBS@ DIRECTFB_CFLAGS = @DIRECTFB_CFLAGS@ DIRECTFB_LIBS = @DIRECTFB_LIBS@ +DIRECTSHOW_LIBS = @DIRECTSHOW_LIBS@ DIRECTSOUND_LIBS = @DIRECTSOUND_LIBS@ DIRECTX_CFLAGS = @DIRECTX_CFLAGS@ DIRECTX_LDFLAGS = @DIRECTX_LDFLAGS@ -DIVXDEC_LIBS = @DIVXDEC_LIBS@ -DIVXENC_LIBS = @DIVXENC_LIBS@ DLLTOOL = @DLLTOOL@ DSYMUTIL = @DSYMUTIL@ DTS_LIBS = @DTS_LIBS@ @@ -281,7 +280,9 @@ GIO_LIBS = @GIO_LIBS@ GLIB_CFLAGS = @GLIB_CFLAGS@ GLIB_COMPILE_SCHEMAS = @GLIB_COMPILE_SCHEMAS@ GLIB_EXTRA_CFLAGS = @GLIB_EXTRA_CFLAGS@ +GLIB_GENMARSHAL = @GLIB_GENMARSHAL@ GLIB_LIBS = @GLIB_LIBS@ +GLIB_MKENUMS = @GLIB_MKENUMS@ GLIB_PREFIX = @GLIB_PREFIX@ GLIB_REQ = @GLIB_REQ@ GME_LIBS = @GME_LIBS@ @@ -357,13 +358,14 @@ HAVE_CXX = @HAVE_CXX@ HAVE_DIRECT3D = @HAVE_DIRECT3D@ HAVE_DIRECT3D9 = @HAVE_DIRECT3D9@ HAVE_DIRECTDRAW = @HAVE_DIRECTDRAW@ +HAVE_DIRECTSHOW = @HAVE_DIRECTSHOW@ HAVE_DIRECTSOUND = @HAVE_DIRECTSOUND@ HAVE_DTS = @HAVE_DTS@ HAVE_FAAC = @HAVE_FAAC@ HAVE_FAAD = @HAVE_FAAD@ HAVE_FLITE = @HAVE_FLITE@ HAVE_GSM = @HAVE_GSM@ -HAVE_JP2K = @HAVE_JP2K@ +HAVE_JASPER = @HAVE_JASPER@ HAVE_NAS = @HAVE_NAS@ HAVE_VPX = @HAVE_VPX@ HAVE_WILDMIDI = @HAVE_WILDMIDI@ @@ -377,7 +379,7 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ INTLLIBS = @INTLLIBS@ INTL_MACOSX_LIBS = @INTL_MACOSX_LIBS@ -JP2K_LIBS = @JP2K_LIBS@ +JASPER_LIBS = @JASPER_LIBS@ KATE_CFLAGS = @KATE_CFLAGS@ KATE_LIBS = @KATE_LIBS@ LD = @LD@ @@ -413,6 +415,8 @@ MODPLUG_CFLAGS = @MODPLUG_CFLAGS@ MODPLUG_LIBS = @MODPLUG_LIBS@ MPEG2ENC_CFLAGS = @MPEG2ENC_CFLAGS@ MPEG2ENC_LIBS = @MPEG2ENC_LIBS@ +MPG123_CFLAGS = @MPG123_CFLAGS@ +MPG123_LIBS = @MPG123_LIBS@ MPLEX_CFLAGS = @MPLEX_CFLAGS@ MPLEX_LDFLAGS = @MPLEX_LDFLAGS@ MPLEX_LIBS = @MPLEX_LIBS@ diff --git a/ext/opus/gstopusdec.c b/ext/opus/gstopusdec.c index b0f33ae7..0e2805cc 100644 --- a/ext/opus/gstopusdec.c +++ b/ext/opus/gstopusdec.c @@ -2,6 +2,7 @@ * Copyright (C) 2004 Wim Taymans <wim@fluendo.com> * Copyright (C) 2006 Tim-Philipp Müller <tim centricular net> * Copyright (C) 2008 Sebastian Dröge <sebastian.droege@collabora.co.uk> + * Copyright (C) 2011-2012 Vincent Penquerc'h <vincent.penquerch@collabora.co.uk> * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Library General Public @@ -123,7 +124,7 @@ gst_opus_dec_class_init (GstOpusDecClass * klass) gst_element_class_set_details_simple (element_class, "Opus audio decoder", "Codec/Decoder/Audio", "decode opus streams to audio", - "Sebastian Dröge <sebastian.droege@collabora.co.uk>"); + "Vincent Penquerc'h <vincent.penquerch@collabora.co.uk>"); g_object_class_install_property (gobject_class, PROP_USE_INBAND_FEC, g_param_spec_boolean ("use-inband-fec", "Use in-band FEC", "Use forward error correction if available", DEFAULT_USE_INBAND_FEC, diff --git a/ext/opus/gstopusdec.h b/ext/opus/gstopusdec.h index 0bea2c08..1367000e 100644 --- a/ext/opus/gstopusdec.h +++ b/ext/opus/gstopusdec.h @@ -1,6 +1,7 @@ /* GStreamer * Copyright (C) <1999> Erik Walthinsen <omega@cse.ogi.edu> * Copyright (C) <2008> Sebastian Dröge <sebastian.droege@collabora.co.uk> + * Copyright (C) <2011-2012> Vincent Penquerc'h <vincent.penquerch@collabora.co.uk> * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Library General Public diff --git a/ext/opus/gstopusenc.c b/ext/opus/gstopusenc.c index 43301de0..337be8c0 100644 --- a/ext/opus/gstopusenc.c +++ b/ext/opus/gstopusenc.c @@ -208,7 +208,7 @@ gst_opus_enc_class_init (GstOpusEncClass * klass) gst_element_class_set_details_simple (gstelement_class, "Opus audio encoder", "Codec/Encoder/Audio", "Encodes audio in Opus format", - "Sebastian Dröge <sebastian.droege@collabora.co.uk>"); + "Vincent Penquerc'h <vincent.penquerch@collabora.co.uk>"); base_class->start = GST_DEBUG_FUNCPTR (gst_opus_enc_start); base_class->stop = GST_DEBUG_FUNCPTR (gst_opus_enc_stop); @@ -344,7 +344,7 @@ gst_opus_enc_stop (GstAudioEncoder * benc) opus_multistream_encoder_destroy (enc->state); enc->state = NULL; } - gst_tag_list_free (enc->tags); + gst_tag_list_unref (enc->tags); enc->tags = NULL; g_slist_foreach (enc->headers, (GFunc) gst_buffer_unref, NULL); g_slist_free (enc->headers); @@ -621,8 +621,10 @@ gst_opus_enc_set_format (GstAudioEncoder * benc, GstAudioInfo * info) opus_multistream_encoder_destroy (enc->state); enc->state = NULL; } - if (!gst_opus_enc_setup (enc)) + if (!gst_opus_enc_setup (enc)) { + g_mutex_unlock (enc->property_lock); return FALSE; + } enc->frame_samples = gst_opus_enc_get_frame_samples (enc); diff --git a/ext/opus/gstopusenc.h b/ext/opus/gstopusenc.h index 1e39ad03..00f1b991 100644 --- a/ext/opus/gstopusenc.h +++ b/ext/opus/gstopusenc.h @@ -1,6 +1,7 @@ /* GStreamer Opus Encoder * Copyright (C) <1999> Erik Walthinsen <omega@cse.ogi.edu> * Copyright (C) <2008> Sebastian Dröge <sebastian.droege@collabora.co.uk> + * Copyright (C) <2011-2012> Vincent Penquerc'h <vincent.penquerch@collabora.co.uk> * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Library General Public diff --git a/ext/opus/gstopusheader.c b/ext/opus/gstopusheader.c index 5c4edba4..af971729 100644 --- a/ext/opus/gstopusheader.c +++ b/ext/opus/gstopusheader.c @@ -88,7 +88,7 @@ gst_opus_enc_create_metadata_buffer (const GstTagList * tags) GST_BUFFER_OFFSET_END (comments) = 0; if (empty_tags) - gst_tag_list_free (empty_tags); + gst_tag_list_unref (empty_tags); return comments; } diff --git a/ext/opus/gstopusheader.h b/ext/opus/gstopusheader.h index c6278eff..c6eaa033 100644 --- a/ext/opus/gstopusheader.h +++ b/ext/opus/gstopusheader.h @@ -1,6 +1,7 @@ /* GStreamer * Copyright (C) <1999> Erik Walthinsen <omega@cse.ogi.edu> * Copyright (C) <2008> Sebastian Dröge <sebastian.droege@collabora.co.uk> + * Copyright (C) <2011-2012> Vincent Penquerc'h <vincent.penquerch@collabora.co.uk> * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Library General Public diff --git a/ext/opus/gstopusparse.c b/ext/opus/gstopusparse.c index 097062f8..5f5ba65d 100644 --- a/ext/opus/gstopusparse.c +++ b/ext/opus/gstopusparse.c @@ -2,6 +2,7 @@ * Copyright (C) 2004 Wim Taymans <wim@fluendo.com> * Copyright (C) 2006 Tim-Philipp Müller <tim centricular net> * Copyright (C) 2008 Sebastian Dröge <sebastian.droege@collabora.co.uk> + * Copyright (C) <2011-2012> Vincent Penquerc'h <vincent.penquerch@collabora.co.uk> * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Library General Public diff --git a/ext/opus/gstopusparse.h b/ext/opus/gstopusparse.h index f0fd2419..ba311ab2 100644 --- a/ext/opus/gstopusparse.h +++ b/ext/opus/gstopusparse.h @@ -1,6 +1,7 @@ /* GStreamer * Copyright (C) <1999> Erik Walthinsen <omega@cse.ogi.edu> * Copyright (C) <2008> Sebastian Dröge <sebastian.droege@collabora.co.uk> + * Copyright (C) <2011-2012> Vincent Penquerc'h <vincent.penquerch@collabora.co.uk> * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Library General Public diff --git a/ext/resindvd/Makefile.am b/ext/resindvd/Makefile.am index 365fcb30..9c3651e7 100644 --- a/ext/resindvd/Makefile.am +++ b/ext/resindvd/Makefile.am @@ -1,8 +1,8 @@ # plugindir is set in configure -plugin_LTLIBRARIES = libresindvd.la +plugin_LTLIBRARIES = libgstresindvd.la -libresindvd_la_SOURCES = \ +libgstresindvd_la_SOURCES = \ plugin.c \ resindvdbin.c \ rsnaudiomunge.c \ @@ -15,15 +15,15 @@ libresindvd_la_SOURCES = \ rsnparsetter.c \ rsnwrappedbuffer.c -libresindvd_la_CFLAGS = $(GST_PLUGINS_BAD_CFLAGS) \ +libgstresindvd_la_CFLAGS = $(GST_PLUGINS_BAD_CFLAGS) \ $(GST_PLUGINS_BASE_CFLAGS) $(GST_BASE_CFLAGS) \ $(GST_CFLAGS) $(DVDNAV_CFLAGS) -libresindvd_la_LIBADD = $(GST_PLUGINS_BASE_LIBS) \ +libgstresindvd_la_LIBADD = $(GST_PLUGINS_BASE_LIBS) \ -lgstinterfaces-$(GST_API_VERSION) -lgstvideo-$(GST_API_VERSION) \ -lgstpbutils-$(GST_API_VERSION) \ $(GST_BASE_LIBS) $(GST_LIBS) $(DVDNAV_LIBS) -libresindvd_la_LDFLAGS = $(GST_PLUGIN_LDFLAGS) -libresindvd_la_LIBTOOLFLAGS = --tag=disable-static +libgstresindvd_la_LDFLAGS = $(GST_PLUGIN_LDFLAGS) +libgstresindvd_la_LIBTOOLFLAGS = --tag=disable-static noinst_HEADERS = resindvdbin.h \ rsnaudiomunge.h \ diff --git a/ext/resindvd/Makefile.in b/ext/resindvd/Makefile.in index eb1f133c..49562f0f 100644 --- a/ext/resindvd/Makefile.in +++ b/ext/resindvd/Makefile.in @@ -1,4 +1,4 @@ -# Makefile.in generated by automake 1.11.5 from Makefile.am. +# Makefile.in generated by automake 1.11.6 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, @@ -129,24 +129,27 @@ am__uninstall_files_from_dir = { \ am__installdirs = "$(DESTDIR)$(plugindir)" LTLIBRARIES = $(plugin_LTLIBRARIES) am__DEPENDENCIES_1 = -libresindvd_la_DEPENDENCIES = $(am__DEPENDENCIES_1) \ +libgstresindvd_la_DEPENDENCIES = $(am__DEPENDENCIES_1) \ $(am__DEPENDENCIES_1) $(am__DEPENDENCIES_1) \ $(am__DEPENDENCIES_1) -am_libresindvd_la_OBJECTS = libresindvd_la-plugin.lo \ - libresindvd_la-resindvdbin.lo libresindvd_la-rsnaudiomunge.lo \ - libresindvd_la-rsndec.lo libresindvd_la-rsnstreamselector.lo \ - libresindvd_la-resindvdsrc.lo libresindvd_la-gstmpegdesc.lo \ - libresindvd_la-gstmpegdemux.lo libresindvd_la-gstpesfilter.lo \ - libresindvd_la-rsnparsetter.lo \ - libresindvd_la-rsnwrappedbuffer.lo -libresindvd_la_OBJECTS = $(am_libresindvd_la_OBJECTS) +am_libgstresindvd_la_OBJECTS = libgstresindvd_la-plugin.lo \ + libgstresindvd_la-resindvdbin.lo \ + libgstresindvd_la-rsnaudiomunge.lo libgstresindvd_la-rsndec.lo \ + libgstresindvd_la-rsnstreamselector.lo \ + libgstresindvd_la-resindvdsrc.lo \ + libgstresindvd_la-gstmpegdesc.lo \ + libgstresindvd_la-gstmpegdemux.lo \ + libgstresindvd_la-gstpesfilter.lo \ + libgstresindvd_la-rsnparsetter.lo \ + libgstresindvd_la-rsnwrappedbuffer.lo +libgstresindvd_la_OBJECTS = $(am_libgstresindvd_la_OBJECTS) AM_V_lt = $(am__v_lt_@AM_V@) am__v_lt_ = $(am__v_lt_@AM_DEFAULT_V@) am__v_lt_0 = --silent -libresindvd_la_LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC \ - $(libresindvd_la_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=link \ - $(CCLD) $(libresindvd_la_CFLAGS) $(CFLAGS) \ - $(libresindvd_la_LDFLAGS) $(LDFLAGS) -o $@ +libgstresindvd_la_LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC \ + $(libgstresindvd_la_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=link \ + $(CCLD) $(libgstresindvd_la_CFLAGS) $(CFLAGS) \ + $(libgstresindvd_la_LDFLAGS) $(LDFLAGS) -o $@ DEFAULT_INCLUDES = -I.@am__isrc@ -I$(top_builddir) depcomp = $(SHELL) $(top_srcdir)/depcomp am__depfiles_maybe = depfiles @@ -173,8 +176,8 @@ am__v_CCLD_0 = @echo " CCLD " $@; AM_V_GEN = $(am__v_GEN_@AM_V@) am__v_GEN_ = $(am__v_GEN_@AM_DEFAULT_V@) am__v_GEN_0 = @echo " GEN " $@; -SOURCES = $(libresindvd_la_SOURCES) -DIST_SOURCES = $(libresindvd_la_SOURCES) +SOURCES = $(libgstresindvd_la_SOURCES) +DIST_SOURCES = $(libgstresindvd_la_SOURCES) am__can_run_installinfo = \ case $$AM_UPDATE_INFO_DIR in \ n|no|NO) false;; \ @@ -246,11 +249,10 @@ DIRECT3D_LIBS = @DIRECT3D_LIBS@ DIRECTDRAW_LIBS = @DIRECTDRAW_LIBS@ DIRECTFB_CFLAGS = @DIRECTFB_CFLAGS@ DIRECTFB_LIBS = @DIRECTFB_LIBS@ +DIRECTSHOW_LIBS = @DIRECTSHOW_LIBS@ DIRECTSOUND_LIBS = @DIRECTSOUND_LIBS@ DIRECTX_CFLAGS = @DIRECTX_CFLAGS@ DIRECTX_LDFLAGS = @DIRECTX_LDFLAGS@ -DIVXDEC_LIBS = @DIVXDEC_LIBS@ -DIVXENC_LIBS = @DIVXENC_LIBS@ DLLTOOL = @DLLTOOL@ DSYMUTIL = @DSYMUTIL@ DTS_LIBS = @DTS_LIBS@ @@ -285,7 +287,9 @@ GIO_LIBS = @GIO_LIBS@ GLIB_CFLAGS = @GLIB_CFLAGS@ GLIB_COMPILE_SCHEMAS = @GLIB_COMPILE_SCHEMAS@ GLIB_EXTRA_CFLAGS = @GLIB_EXTRA_CFLAGS@ +GLIB_GENMARSHAL = @GLIB_GENMARSHAL@ GLIB_LIBS = @GLIB_LIBS@ +GLIB_MKENUMS = @GLIB_MKENUMS@ GLIB_PREFIX = @GLIB_PREFIX@ GLIB_REQ = @GLIB_REQ@ GME_LIBS = @GME_LIBS@ @@ -361,13 +365,14 @@ HAVE_CXX = @HAVE_CXX@ HAVE_DIRECT3D = @HAVE_DIRECT3D@ HAVE_DIRECT3D9 = @HAVE_DIRECT3D9@ HAVE_DIRECTDRAW = @HAVE_DIRECTDRAW@ +HAVE_DIRECTSHOW = @HAVE_DIRECTSHOW@ HAVE_DIRECTSOUND = @HAVE_DIRECTSOUND@ HAVE_DTS = @HAVE_DTS@ HAVE_FAAC = @HAVE_FAAC@ HAVE_FAAD = @HAVE_FAAD@ HAVE_FLITE = @HAVE_FLITE@ HAVE_GSM = @HAVE_GSM@ -HAVE_JP2K = @HAVE_JP2K@ +HAVE_JASPER = @HAVE_JASPER@ HAVE_NAS = @HAVE_NAS@ HAVE_VPX = @HAVE_VPX@ HAVE_WILDMIDI = @HAVE_WILDMIDI@ @@ -381,7 +386,7 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ INTLLIBS = @INTLLIBS@ INTL_MACOSX_LIBS = @INTL_MACOSX_LIBS@ -JP2K_LIBS = @JP2K_LIBS@ +JASPER_LIBS = @JASPER_LIBS@ KATE_CFLAGS = @KATE_CFLAGS@ KATE_LIBS = @KATE_LIBS@ LD = @LD@ @@ -417,6 +422,8 @@ MODPLUG_CFLAGS = @MODPLUG_CFLAGS@ MODPLUG_LIBS = @MODPLUG_LIBS@ MPEG2ENC_CFLAGS = @MPEG2ENC_CFLAGS@ MPEG2ENC_LIBS = @MPEG2ENC_LIBS@ +MPG123_CFLAGS = @MPG123_CFLAGS@ +MPG123_LIBS = @MPG123_LIBS@ MPLEX_CFLAGS = @MPLEX_CFLAGS@ MPLEX_LDFLAGS = @MPLEX_LDFLAGS@ MPLEX_LIBS = @MPLEX_LIBS@ @@ -607,8 +614,8 @@ target_vendor = @target_vendor@ top_build_prefix = @top_build_prefix@ top_builddir = @top_builddir@ top_srcdir = @top_srcdir@ -plugin_LTLIBRARIES = libresindvd.la -libresindvd_la_SOURCES = \ +plugin_LTLIBRARIES = libgstresindvd.la +libgstresindvd_la_SOURCES = \ plugin.c \ resindvdbin.c \ rsnaudiomunge.c \ @@ -621,17 +628,17 @@ libresindvd_la_SOURCES = \ rsnparsetter.c \ rsnwrappedbuffer.c -libresindvd_la_CFLAGS = $(GST_PLUGINS_BAD_CFLAGS) \ +libgstresindvd_la_CFLAGS = $(GST_PLUGINS_BAD_CFLAGS) \ $(GST_PLUGINS_BASE_CFLAGS) $(GST_BASE_CFLAGS) \ $(GST_CFLAGS) $(DVDNAV_CFLAGS) -libresindvd_la_LIBADD = $(GST_PLUGINS_BASE_LIBS) \ +libgstresindvd_la_LIBADD = $(GST_PLUGINS_BASE_LIBS) \ -lgstinterfaces-$(GST_API_VERSION) -lgstvideo-$(GST_API_VERSION) \ -lgstpbutils-$(GST_API_VERSION) \ $(GST_BASE_LIBS) $(GST_LIBS) $(DVDNAV_LIBS) -libresindvd_la_LDFLAGS = $(GST_PLUGIN_LDFLAGS) -libresindvd_la_LIBTOOLFLAGS = --tag=disable-static +libgstresindvd_la_LDFLAGS = $(GST_PLUGIN_LDFLAGS) +libgstresindvd_la_LIBTOOLFLAGS = --tag=disable-static noinst_HEADERS = resindvdbin.h \ rsnaudiomunge.h \ rsndec.h \ @@ -711,8 +718,8 @@ clean-pluginLTLIBRARIES: echo "rm -f \"$${dir}/so_locations\""; \ rm -f "$${dir}/so_locations"; \ done -libresindvd.la: $(libresindvd_la_OBJECTS) $(libresindvd_la_DEPENDENCIES) $(EXTRA_libresindvd_la_DEPENDENCIES) - $(AM_V_CCLD)$(libresindvd_la_LINK) -rpath $(plugindir) $(libresindvd_la_OBJECTS) $(libresindvd_la_LIBADD) $(LIBS) +libgstresindvd.la: $(libgstresindvd_la_OBJECTS) $(libgstresindvd_la_DEPENDENCIES) $(EXTRA_libgstresindvd_la_DEPENDENCIES) + $(AM_V_CCLD)$(libgstresindvd_la_LINK) -rpath $(plugindir) $(libgstresindvd_la_OBJECTS) $(libgstresindvd_la_LIBADD) $(LIBS) mostlyclean-compile: -rm -f *.$(OBJEXT) @@ -720,17 +727,17 @@ mostlyclean-compile: distclean-compile: -rm -f *.tab.c -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libresindvd_la-gstmpegdemux.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libresindvd_la-gstmpegdesc.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libresindvd_la-gstpesfilter.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libresindvd_la-plugin.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libresindvd_la-resindvdbin.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libresindvd_la-resindvdsrc.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libresindvd_la-rsnaudiomunge.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libresindvd_la-rsndec.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libresindvd_la-rsnparsetter.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libresindvd_la-rsnstreamselector.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libresindvd_la-rsnwrappedbuffer.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libgstresindvd_la-gstmpegdemux.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libgstresindvd_la-gstmpegdesc.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libgstresindvd_la-gstpesfilter.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libgstresindvd_la-plugin.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libgstresindvd_la-resindvdbin.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libgstresindvd_la-resindvdsrc.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libgstresindvd_la-rsnaudiomunge.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libgstresindvd_la-rsndec.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libgstresindvd_la-rsnparsetter.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libgstresindvd_la-rsnstreamselector.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libgstresindvd_la-rsnwrappedbuffer.Plo@am__quote@ .c.o: @am__fastdepCC_TRUE@ $(AM_V_CC)$(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $< @@ -753,82 +760,82 @@ distclean-compile: @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LTCOMPILE) -c -o $@ $< -libresindvd_la-plugin.lo: plugin.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(libresindvd_la_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libresindvd_la_CFLAGS) $(CFLAGS) -MT libresindvd_la-plugin.lo -MD -MP -MF $(DEPDIR)/libresindvd_la-plugin.Tpo -c -o libresindvd_la-plugin.lo `test -f 'plugin.c' || echo '$(srcdir)/'`plugin.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libresindvd_la-plugin.Tpo $(DEPDIR)/libresindvd_la-plugin.Plo -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='plugin.c' object='libresindvd_la-plugin.lo' libtool=yes @AMDEPBACKSLASH@ +libgstresindvd_la-plugin.lo: plugin.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(libgstresindvd_la_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libgstresindvd_la_CFLAGS) $(CFLAGS) -MT libgstresindvd_la-plugin.lo -MD -MP -MF $(DEPDIR)/libgstresindvd_la-plugin.Tpo -c -o libgstresindvd_la-plugin.lo `test -f 'plugin.c' || echo '$(srcdir)/'`plugin.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libgstresindvd_la-plugin.Tpo $(DEPDIR)/libgstresindvd_la-plugin.Plo +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='plugin.c' object='libgstresindvd_la-plugin.lo' libtool=yes @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(libresindvd_la_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libresindvd_la_CFLAGS) $(CFLAGS) -c -o libresindvd_la-plugin.lo `test -f 'plugin.c' || echo '$(srcdir)/'`plugin.c +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(libgstresindvd_la_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libgstresindvd_la_CFLAGS) $(CFLAGS) -c -o libgstresindvd_la-plugin.lo `test -f 'plugin.c' || echo '$(srcdir)/'`plugin.c -libresindvd_la-resindvdbin.lo: resindvdbin.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(libresindvd_la_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libresindvd_la_CFLAGS) $(CFLAGS) -MT libresindvd_la-resindvdbin.lo -MD -MP -MF $(DEPDIR)/libresindvd_la-resindvdbin.Tpo -c -o libresindvd_la-resindvdbin.lo `test -f 'resindvdbin.c' || echo '$(srcdir)/'`resindvdbin.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libresindvd_la-resindvdbin.Tpo $(DEPDIR)/libresindvd_la-resindvdbin.Plo -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='resindvdbin.c' object='libresindvd_la-resindvdbin.lo' libtool=yes @AMDEPBACKSLASH@ +libgstresindvd_la-resindvdbin.lo: resindvdbin.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(libgstresindvd_la_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libgstresindvd_la_CFLAGS) $(CFLAGS) -MT libgstresindvd_la-resindvdbin.lo -MD -MP -MF $(DEPDIR)/libgstresindvd_la-resindvdbin.Tpo -c -o libgstresindvd_la-resindvdbin.lo `test -f 'resindvdbin.c' || echo '$(srcdir)/'`resindvdbin.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libgstresindvd_la-resindvdbin.Tpo $(DEPDIR)/libgstresindvd_la-resindvdbin.Plo +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='resindvdbin.c' object='libgstresindvd_la-resindvdbin.lo' libtool=yes @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(libresindvd_la_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libresindvd_la_CFLAGS) $(CFLAGS) -c -o libresindvd_la-resindvdbin.lo `test -f 'resindvdbin.c' || echo '$(srcdir)/'`resindvdbin.c +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(libgstresindvd_la_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libgstresindvd_la_CFLAGS) $(CFLAGS) -c -o libgstresindvd_la-resindvdbin.lo `test -f 'resindvdbin.c' || echo '$(srcdir)/'`resindvdbin.c -libresindvd_la-rsnaudiomunge.lo: rsnaudiomunge.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(libresindvd_la_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libresindvd_la_CFLAGS) $(CFLAGS) -MT libresindvd_la-rsnaudiomunge.lo -MD -MP -MF $(DEPDIR)/libresindvd_la-rsnaudiomunge.Tpo -c -o libresindvd_la-rsnaudiomunge.lo `test -f 'rsnaudiomunge.c' || echo '$(srcdir)/'`rsnaudiomunge.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libresindvd_la-rsnaudiomunge.Tpo $(DEPDIR)/libresindvd_la-rsnaudiomunge.Plo -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='rsnaudiomunge.c' object='libresindvd_la-rsnaudiomunge.lo' libtool=yes @AMDEPBACKSLASH@ +libgstresindvd_la-rsnaudiomunge.lo: rsnaudiomunge.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(libgstresindvd_la_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libgstresindvd_la_CFLAGS) $(CFLAGS) -MT libgstresindvd_la-rsnaudiomunge.lo -MD -MP -MF $(DEPDIR)/libgstresindvd_la-rsnaudiomunge.Tpo -c -o libgstresindvd_la-rsnaudiomunge.lo `test -f 'rsnaudiomunge.c' || echo '$(srcdir)/'`rsnaudiomunge.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libgstresindvd_la-rsnaudiomunge.Tpo $(DEPDIR)/libgstresindvd_la-rsnaudiomunge.Plo +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='rsnaudiomunge.c' object='libgstresindvd_la-rsnaudiomunge.lo' libtool=yes @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(libresindvd_la_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libresindvd_la_CFLAGS) $(CFLAGS) -c -o libresindvd_la-rsnaudiomunge.lo `test -f 'rsnaudiomunge.c' || echo '$(srcdir)/'`rsnaudiomunge.c +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(libgstresindvd_la_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libgstresindvd_la_CFLAGS) $(CFLAGS) -c -o libgstresindvd_la-rsnaudiomunge.lo `test -f 'rsnaudiomunge.c' || echo '$(srcdir)/'`rsnaudiomunge.c -libresindvd_la-rsndec.lo: rsndec.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(libresindvd_la_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libresindvd_la_CFLAGS) $(CFLAGS) -MT libresindvd_la-rsndec.lo -MD -MP -MF $(DEPDIR)/libresindvd_la-rsndec.Tpo -c -o libresindvd_la-rsndec.lo `test -f 'rsndec.c' || echo '$(srcdir)/'`rsndec.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libresindvd_la-rsndec.Tpo $(DEPDIR)/libresindvd_la-rsndec.Plo -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='rsndec.c' object='libresindvd_la-rsndec.lo' libtool=yes @AMDEPBACKSLASH@ +libgstresindvd_la-rsndec.lo: rsndec.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(libgstresindvd_la_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libgstresindvd_la_CFLAGS) $(CFLAGS) -MT libgstresindvd_la-rsndec.lo -MD -MP -MF $(DEPDIR)/libgstresindvd_la-rsndec.Tpo -c -o libgstresindvd_la-rsndec.lo `test -f 'rsndec.c' || echo '$(srcdir)/'`rsndec.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libgstresindvd_la-rsndec.Tpo $(DEPDIR)/libgstresindvd_la-rsndec.Plo +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='rsndec.c' object='libgstresindvd_la-rsndec.lo' libtool=yes @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(libresindvd_la_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libresindvd_la_CFLAGS) $(CFLAGS) -c -o libresindvd_la-rsndec.lo `test -f 'rsndec.c' || echo '$(srcdir)/'`rsndec.c +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(libgstresindvd_la_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libgstresindvd_la_CFLAGS) $(CFLAGS) -c -o libgstresindvd_la-rsndec.lo `test -f 'rsndec.c' || echo '$(srcdir)/'`rsndec.c -libresindvd_la-rsnstreamselector.lo: rsnstreamselector.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(libresindvd_la_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libresindvd_la_CFLAGS) $(CFLAGS) -MT libresindvd_la-rsnstreamselector.lo -MD -MP -MF $(DEPDIR)/libresindvd_la-rsnstreamselector.Tpo -c -o libresindvd_la-rsnstreamselector.lo `test -f 'rsnstreamselector.c' || echo '$(srcdir)/'`rsnstreamselector.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libresindvd_la-rsnstreamselector.Tpo $(DEPDIR)/libresindvd_la-rsnstreamselector.Plo -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='rsnstreamselector.c' object='libresindvd_la-rsnstreamselector.lo' libtool=yes @AMDEPBACKSLASH@ +libgstresindvd_la-rsnstreamselector.lo: rsnstreamselector.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(libgstresindvd_la_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libgstresindvd_la_CFLAGS) $(CFLAGS) -MT libgstresindvd_la-rsnstreamselector.lo -MD -MP -MF $(DEPDIR)/libgstresindvd_la-rsnstreamselector.Tpo -c -o libgstresindvd_la-rsnstreamselector.lo `test -f 'rsnstreamselector.c' || echo '$(srcdir)/'`rsnstreamselector.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libgstresindvd_la-rsnstreamselector.Tpo $(DEPDIR)/libgstresindvd_la-rsnstreamselector.Plo +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='rsnstreamselector.c' object='libgstresindvd_la-rsnstreamselector.lo' libtool=yes @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(libresindvd_la_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libresindvd_la_CFLAGS) $(CFLAGS) -c -o libresindvd_la-rsnstreamselector.lo `test -f 'rsnstreamselector.c' || echo '$(srcdir)/'`rsnstreamselector.c +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(libgstresindvd_la_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libgstresindvd_la_CFLAGS) $(CFLAGS) -c -o libgstresindvd_la-rsnstreamselector.lo `test -f 'rsnstreamselector.c' || echo '$(srcdir)/'`rsnstreamselector.c -libresindvd_la-resindvdsrc.lo: resindvdsrc.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(libresindvd_la_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libresindvd_la_CFLAGS) $(CFLAGS) -MT libresindvd_la-resindvdsrc.lo -MD -MP -MF $(DEPDIR)/libresindvd_la-resindvdsrc.Tpo -c -o libresindvd_la-resindvdsrc.lo `test -f 'resindvdsrc.c' || echo '$(srcdir)/'`resindvdsrc.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libresindvd_la-resindvdsrc.Tpo $(DEPDIR)/libresindvd_la-resindvdsrc.Plo -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='resindvdsrc.c' object='libresindvd_la-resindvdsrc.lo' libtool=yes @AMDEPBACKSLASH@ +libgstresindvd_la-resindvdsrc.lo: resindvdsrc.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(libgstresindvd_la_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libgstresindvd_la_CFLAGS) $(CFLAGS) -MT libgstresindvd_la-resindvdsrc.lo -MD -MP -MF $(DEPDIR)/libgstresindvd_la-resindvdsrc.Tpo -c -o libgstresindvd_la-resindvdsrc.lo `test -f 'resindvdsrc.c' || echo '$(srcdir)/'`resindvdsrc.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libgstresindvd_la-resindvdsrc.Tpo $(DEPDIR)/libgstresindvd_la-resindvdsrc.Plo +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='resindvdsrc.c' object='libgstresindvd_la-resindvdsrc.lo' libtool=yes @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(libresindvd_la_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libresindvd_la_CFLAGS) $(CFLAGS) -c -o libresindvd_la-resindvdsrc.lo `test -f 'resindvdsrc.c' || echo '$(srcdir)/'`resindvdsrc.c +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(libgstresindvd_la_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libgstresindvd_la_CFLAGS) $(CFLAGS) -c -o libgstresindvd_la-resindvdsrc.lo `test -f 'resindvdsrc.c' || echo '$(srcdir)/'`resindvdsrc.c -libresindvd_la-gstmpegdesc.lo: gstmpegdesc.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(libresindvd_la_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libresindvd_la_CFLAGS) $(CFLAGS) -MT libresindvd_la-gstmpegdesc.lo -MD -MP -MF $(DEPDIR)/libresindvd_la-gstmpegdesc.Tpo -c -o libresindvd_la-gstmpegdesc.lo `test -f 'gstmpegdesc.c' || echo '$(srcdir)/'`gstmpegdesc.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libresindvd_la-gstmpegdesc.Tpo $(DEPDIR)/libresindvd_la-gstmpegdesc.Plo -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='gstmpegdesc.c' object='libresindvd_la-gstmpegdesc.lo' libtool=yes @AMDEPBACKSLASH@ +libgstresindvd_la-gstmpegdesc.lo: gstmpegdesc.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(libgstresindvd_la_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libgstresindvd_la_CFLAGS) $(CFLAGS) -MT libgstresindvd_la-gstmpegdesc.lo -MD -MP -MF $(DEPDIR)/libgstresindvd_la-gstmpegdesc.Tpo -c -o libgstresindvd_la-gstmpegdesc.lo `test -f 'gstmpegdesc.c' || echo '$(srcdir)/'`gstmpegdesc.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libgstresindvd_la-gstmpegdesc.Tpo $(DEPDIR)/libgstresindvd_la-gstmpegdesc.Plo +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='gstmpegdesc.c' object='libgstresindvd_la-gstmpegdesc.lo' libtool=yes @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(libresindvd_la_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libresindvd_la_CFLAGS) $(CFLAGS) -c -o libresindvd_la-gstmpegdesc.lo `test -f 'gstmpegdesc.c' || echo '$(srcdir)/'`gstmpegdesc.c +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(libgstresindvd_la_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libgstresindvd_la_CFLAGS) $(CFLAGS) -c -o libgstresindvd_la-gstmpegdesc.lo `test -f 'gstmpegdesc.c' || echo '$(srcdir)/'`gstmpegdesc.c -libresindvd_la-gstmpegdemux.lo: gstmpegdemux.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(libresindvd_la_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libresindvd_la_CFLAGS) $(CFLAGS) -MT libresindvd_la-gstmpegdemux.lo -MD -MP -MF $(DEPDIR)/libresindvd_la-gstmpegdemux.Tpo -c -o libresindvd_la-gstmpegdemux.lo `test -f 'gstmpegdemux.c' || echo '$(srcdir)/'`gstmpegdemux.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libresindvd_la-gstmpegdemux.Tpo $(DEPDIR)/libresindvd_la-gstmpegdemux.Plo -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='gstmpegdemux.c' object='libresindvd_la-gstmpegdemux.lo' libtool=yes @AMDEPBACKSLASH@ +libgstresindvd_la-gstmpegdemux.lo: gstmpegdemux.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(libgstresindvd_la_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libgstresindvd_la_CFLAGS) $(CFLAGS) -MT libgstresindvd_la-gstmpegdemux.lo -MD -MP -MF $(DEPDIR)/libgstresindvd_la-gstmpegdemux.Tpo -c -o libgstresindvd_la-gstmpegdemux.lo `test -f 'gstmpegdemux.c' || echo '$(srcdir)/'`gstmpegdemux.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libgstresindvd_la-gstmpegdemux.Tpo $(DEPDIR)/libgstresindvd_la-gstmpegdemux.Plo +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='gstmpegdemux.c' object='libgstresindvd_la-gstmpegdemux.lo' libtool=yes @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(libresindvd_la_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libresindvd_la_CFLAGS) $(CFLAGS) -c -o libresindvd_la-gstmpegdemux.lo `test -f 'gstmpegdemux.c' || echo '$(srcdir)/'`gstmpegdemux.c +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(libgstresindvd_la_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libgstresindvd_la_CFLAGS) $(CFLAGS) -c -o libgstresindvd_la-gstmpegdemux.lo `test -f 'gstmpegdemux.c' || echo '$(srcdir)/'`gstmpegdemux.c -libresindvd_la-gstpesfilter.lo: gstpesfilter.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(libresindvd_la_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libresindvd_la_CFLAGS) $(CFLAGS) -MT libresindvd_la-gstpesfilter.lo -MD -MP -MF $(DEPDIR)/libresindvd_la-gstpesfilter.Tpo -c -o libresindvd_la-gstpesfilter.lo `test -f 'gstpesfilter.c' || echo '$(srcdir)/'`gstpesfilter.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libresindvd_la-gstpesfilter.Tpo $(DEPDIR)/libresindvd_la-gstpesfilter.Plo -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='gstpesfilter.c' object='libresindvd_la-gstpesfilter.lo' libtool=yes @AMDEPBACKSLASH@ +libgstresindvd_la-gstpesfilter.lo: gstpesfilter.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(libgstresindvd_la_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libgstresindvd_la_CFLAGS) $(CFLAGS) -MT libgstresindvd_la-gstpesfilter.lo -MD -MP -MF $(DEPDIR)/libgstresindvd_la-gstpesfilter.Tpo -c -o libgstresindvd_la-gstpesfilter.lo `test -f 'gstpesfilter.c' || echo '$(srcdir)/'`gstpesfilter.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libgstresindvd_la-gstpesfilter.Tpo $(DEPDIR)/libgstresindvd_la-gstpesfilter.Plo +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='gstpesfilter.c' object='libgstresindvd_la-gstpesfilter.lo' libtool=yes @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(libresindvd_la_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libresindvd_la_CFLAGS) $(CFLAGS) -c -o libresindvd_la-gstpesfilter.lo `test -f 'gstpesfilter.c' || echo '$(srcdir)/'`gstpesfilter.c +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(libgstresindvd_la_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libgstresindvd_la_CFLAGS) $(CFLAGS) -c -o libgstresindvd_la-gstpesfilter.lo `test -f 'gstpesfilter.c' || echo '$(srcdir)/'`gstpesfilter.c -libresindvd_la-rsnparsetter.lo: rsnparsetter.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(libresindvd_la_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libresindvd_la_CFLAGS) $(CFLAGS) -MT libresindvd_la-rsnparsetter.lo -MD -MP -MF $(DEPDIR)/libresindvd_la-rsnparsetter.Tpo -c -o libresindvd_la-rsnparsetter.lo `test -f 'rsnparsetter.c' || echo '$(srcdir)/'`rsnparsetter.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libresindvd_la-rsnparsetter.Tpo $(DEPDIR)/libresindvd_la-rsnparsetter.Plo -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='rsnparsetter.c' object='libresindvd_la-rsnparsetter.lo' libtool=yes @AMDEPBACKSLASH@ +libgstresindvd_la-rsnparsetter.lo: rsnparsetter.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(libgstresindvd_la_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libgstresindvd_la_CFLAGS) $(CFLAGS) -MT libgstresindvd_la-rsnparsetter.lo -MD -MP -MF $(DEPDIR)/libgstresindvd_la-rsnparsetter.Tpo -c -o libgstresindvd_la-rsnparsetter.lo `test -f 'rsnparsetter.c' || echo '$(srcdir)/'`rsnparsetter.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libgstresindvd_la-rsnparsetter.Tpo $(DEPDIR)/libgstresindvd_la-rsnparsetter.Plo +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='rsnparsetter.c' object='libgstresindvd_la-rsnparsetter.lo' libtool=yes @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(libresindvd_la_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libresindvd_la_CFLAGS) $(CFLAGS) -c -o libresindvd_la-rsnparsetter.lo `test -f 'rsnparsetter.c' || echo '$(srcdir)/'`rsnparsetter.c +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(libgstresindvd_la_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libgstresindvd_la_CFLAGS) $(CFLAGS) -c -o libgstresindvd_la-rsnparsetter.lo `test -f 'rsnparsetter.c' || echo '$(srcdir)/'`rsnparsetter.c -libresindvd_la-rsnwrappedbuffer.lo: rsnwrappedbuffer.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(libresindvd_la_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libresindvd_la_CFLAGS) $(CFLAGS) -MT libresindvd_la-rsnwrappedbuffer.lo -MD -MP -MF $(DEPDIR)/libresindvd_la-rsnwrappedbuffer.Tpo -c -o libresindvd_la-rsnwrappedbuffer.lo `test -f 'rsnwrappedbuffer.c' || echo '$(srcdir)/'`rsnwrappedbuffer.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libresindvd_la-rsnwrappedbuffer.Tpo $(DEPDIR)/libresindvd_la-rsnwrappedbuffer.Plo -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='rsnwrappedbuffer.c' object='libresindvd_la-rsnwrappedbuffer.lo' libtool=yes @AMDEPBACKSLASH@ +libgstresindvd_la-rsnwrappedbuffer.lo: rsnwrappedbuffer.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(libgstresindvd_la_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libgstresindvd_la_CFLAGS) $(CFLAGS) -MT libgstresindvd_la-rsnwrappedbuffer.lo -MD -MP -MF $(DEPDIR)/libgstresindvd_la-rsnwrappedbuffer.Tpo -c -o libgstresindvd_la-rsnwrappedbuffer.lo `test -f 'rsnwrappedbuffer.c' || echo '$(srcdir)/'`rsnwrappedbuffer.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libgstresindvd_la-rsnwrappedbuffer.Tpo $(DEPDIR)/libgstresindvd_la-rsnwrappedbuffer.Plo +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='rsnwrappedbuffer.c' object='libgstresindvd_la-rsnwrappedbuffer.lo' libtool=yes @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(libresindvd_la_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libresindvd_la_CFLAGS) $(CFLAGS) -c -o libresindvd_la-rsnwrappedbuffer.lo `test -f 'rsnwrappedbuffer.c' || echo '$(srcdir)/'`rsnwrappedbuffer.c +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(libgstresindvd_la_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libgstresindvd_la_CFLAGS) $(CFLAGS) -c -o libgstresindvd_la-rsnwrappedbuffer.lo `test -f 'rsnwrappedbuffer.c' || echo '$(srcdir)/'`rsnwrappedbuffer.c mostlyclean-libtool: -rm -f *.lo diff --git a/ext/resindvd/resindvdsrc.c b/ext/resindvd/resindvdsrc.c index 0b29615b..fff79b22 100644 --- a/ext/resindvd/resindvdsrc.c +++ b/ext/resindvd/resindvdsrc.c @@ -474,6 +474,12 @@ read_vts_info (resinDvdSrc * src) GST_ERROR ("Can't open VMG ifo"); return FALSE; } + if (!src->vmg_file->vts_atrt) { + GST_INFO ("No vts_atrt - odd, but apparently OK"); + g_array_set_size (src->vts_attrs, 0); + src->vts_attrs = NULL; + return TRUE; + } n_vts = src->vmg_file->vts_atrt->nr_of_vtss; memcpy (&src->vmgm_attr, src->vmg_file->vmgi_mat, sizeof (vmgi_mat_t)); @@ -1915,7 +1921,7 @@ rsn_dvdsrc_prepare_streamsinfo_event (resinDvdSrc * src) gboolean have_audio; gboolean have_subp; - if (src->vts_n == 0) { + if (src->vts_n == 0 || src->vts_attrs == NULL) { /* VMGM info */ vts_attr = NULL; v_attr = &src->vmgm_attr.vmgm_video_attr; diff --git a/ext/resindvd/rsnstreamselector.c b/ext/resindvd/rsnstreamselector.c index 9b30ea0f..d6106770 100644 --- a/ext/resindvd/rsnstreamselector.c +++ b/ext/resindvd/rsnstreamselector.c @@ -179,7 +179,7 @@ gst_selector_pad_finalize (GObject * object) pad = GST_SELECTOR_PAD_CAST (object); if (pad->tags) - gst_tag_list_free (pad->tags); + gst_tag_list_unref (pad->tags); G_OBJECT_CLASS (selector_pad_parent_class)->finalize (object); } @@ -268,7 +268,7 @@ gst_selector_pad_event (GstPad * pad, GstEvent * event) GST_OBJECT_LOCK (selpad); if (selpad->tags) - gst_tag_list_free (selpad->tags); + gst_tag_list_unref (selpad->tags); gst_event_parse_tag (event, &tags); if (tags) tags = gst_tag_list_copy (tags); diff --git a/ext/rsvg/Makefile.in b/ext/rsvg/Makefile.in index 5d1a1928..9e528f29 100644 --- a/ext/rsvg/Makefile.in +++ b/ext/rsvg/Makefile.in @@ -1,4 +1,4 @@ -# Makefile.in generated by automake 1.11.5 from Makefile.am. +# Makefile.in generated by automake 1.11.6 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, @@ -239,11 +239,10 @@ DIRECT3D_LIBS = @DIRECT3D_LIBS@ DIRECTDRAW_LIBS = @DIRECTDRAW_LIBS@ DIRECTFB_CFLAGS = @DIRECTFB_CFLAGS@ DIRECTFB_LIBS = @DIRECTFB_LIBS@ +DIRECTSHOW_LIBS = @DIRECTSHOW_LIBS@ DIRECTSOUND_LIBS = @DIRECTSOUND_LIBS@ DIRECTX_CFLAGS = @DIRECTX_CFLAGS@ DIRECTX_LDFLAGS = @DIRECTX_LDFLAGS@ -DIVXDEC_LIBS = @DIVXDEC_LIBS@ -DIVXENC_LIBS = @DIVXENC_LIBS@ DLLTOOL = @DLLTOOL@ DSYMUTIL = @DSYMUTIL@ DTS_LIBS = @DTS_LIBS@ @@ -278,7 +277,9 @@ GIO_LIBS = @GIO_LIBS@ GLIB_CFLAGS = @GLIB_CFLAGS@ GLIB_COMPILE_SCHEMAS = @GLIB_COMPILE_SCHEMAS@ GLIB_EXTRA_CFLAGS = @GLIB_EXTRA_CFLAGS@ +GLIB_GENMARSHAL = @GLIB_GENMARSHAL@ GLIB_LIBS = @GLIB_LIBS@ +GLIB_MKENUMS = @GLIB_MKENUMS@ GLIB_PREFIX = @GLIB_PREFIX@ GLIB_REQ = @GLIB_REQ@ GME_LIBS = @GME_LIBS@ @@ -354,13 +355,14 @@ HAVE_CXX = @HAVE_CXX@ HAVE_DIRECT3D = @HAVE_DIRECT3D@ HAVE_DIRECT3D9 = @HAVE_DIRECT3D9@ HAVE_DIRECTDRAW = @HAVE_DIRECTDRAW@ +HAVE_DIRECTSHOW = @HAVE_DIRECTSHOW@ HAVE_DIRECTSOUND = @HAVE_DIRECTSOUND@ HAVE_DTS = @HAVE_DTS@ HAVE_FAAC = @HAVE_FAAC@ HAVE_FAAD = @HAVE_FAAD@ HAVE_FLITE = @HAVE_FLITE@ HAVE_GSM = @HAVE_GSM@ -HAVE_JP2K = @HAVE_JP2K@ +HAVE_JASPER = @HAVE_JASPER@ HAVE_NAS = @HAVE_NAS@ HAVE_VPX = @HAVE_VPX@ HAVE_WILDMIDI = @HAVE_WILDMIDI@ @@ -374,7 +376,7 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ INTLLIBS = @INTLLIBS@ INTL_MACOSX_LIBS = @INTL_MACOSX_LIBS@ -JP2K_LIBS = @JP2K_LIBS@ +JASPER_LIBS = @JASPER_LIBS@ KATE_CFLAGS = @KATE_CFLAGS@ KATE_LIBS = @KATE_LIBS@ LD = @LD@ @@ -410,6 +412,8 @@ MODPLUG_CFLAGS = @MODPLUG_CFLAGS@ MODPLUG_LIBS = @MODPLUG_LIBS@ MPEG2ENC_CFLAGS = @MPEG2ENC_CFLAGS@ MPEG2ENC_LIBS = @MPEG2ENC_LIBS@ +MPG123_CFLAGS = @MPG123_CFLAGS@ +MPG123_LIBS = @MPG123_LIBS@ MPLEX_CFLAGS = @MPLEX_CFLAGS@ MPLEX_LDFLAGS = @MPLEX_LDFLAGS@ MPLEX_LIBS = @MPLEX_LIBS@ diff --git a/ext/rtmp/Makefile.in b/ext/rtmp/Makefile.in index 69b206c7..2e6aab66 100644 --- a/ext/rtmp/Makefile.in +++ b/ext/rtmp/Makefile.in @@ -1,4 +1,4 @@ -# Makefile.in generated by automake 1.11.5 from Makefile.am. +# Makefile.in generated by automake 1.11.6 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, @@ -239,11 +239,10 @@ DIRECT3D_LIBS = @DIRECT3D_LIBS@ DIRECTDRAW_LIBS = @DIRECTDRAW_LIBS@ DIRECTFB_CFLAGS = @DIRECTFB_CFLAGS@ DIRECTFB_LIBS = @DIRECTFB_LIBS@ +DIRECTSHOW_LIBS = @DIRECTSHOW_LIBS@ DIRECTSOUND_LIBS = @DIRECTSOUND_LIBS@ DIRECTX_CFLAGS = @DIRECTX_CFLAGS@ DIRECTX_LDFLAGS = @DIRECTX_LDFLAGS@ -DIVXDEC_LIBS = @DIVXDEC_LIBS@ -DIVXENC_LIBS = @DIVXENC_LIBS@ DLLTOOL = @DLLTOOL@ DSYMUTIL = @DSYMUTIL@ DTS_LIBS = @DTS_LIBS@ @@ -278,7 +277,9 @@ GIO_LIBS = @GIO_LIBS@ GLIB_CFLAGS = @GLIB_CFLAGS@ GLIB_COMPILE_SCHEMAS = @GLIB_COMPILE_SCHEMAS@ GLIB_EXTRA_CFLAGS = @GLIB_EXTRA_CFLAGS@ +GLIB_GENMARSHAL = @GLIB_GENMARSHAL@ GLIB_LIBS = @GLIB_LIBS@ +GLIB_MKENUMS = @GLIB_MKENUMS@ GLIB_PREFIX = @GLIB_PREFIX@ GLIB_REQ = @GLIB_REQ@ GME_LIBS = @GME_LIBS@ @@ -354,13 +355,14 @@ HAVE_CXX = @HAVE_CXX@ HAVE_DIRECT3D = @HAVE_DIRECT3D@ HAVE_DIRECT3D9 = @HAVE_DIRECT3D9@ HAVE_DIRECTDRAW = @HAVE_DIRECTDRAW@ +HAVE_DIRECTSHOW = @HAVE_DIRECTSHOW@ HAVE_DIRECTSOUND = @HAVE_DIRECTSOUND@ HAVE_DTS = @HAVE_DTS@ HAVE_FAAC = @HAVE_FAAC@ HAVE_FAAD = @HAVE_FAAD@ HAVE_FLITE = @HAVE_FLITE@ HAVE_GSM = @HAVE_GSM@ -HAVE_JP2K = @HAVE_JP2K@ +HAVE_JASPER = @HAVE_JASPER@ HAVE_NAS = @HAVE_NAS@ HAVE_VPX = @HAVE_VPX@ HAVE_WILDMIDI = @HAVE_WILDMIDI@ @@ -374,7 +376,7 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ INTLLIBS = @INTLLIBS@ INTL_MACOSX_LIBS = @INTL_MACOSX_LIBS@ -JP2K_LIBS = @JP2K_LIBS@ +JASPER_LIBS = @JASPER_LIBS@ KATE_CFLAGS = @KATE_CFLAGS@ KATE_LIBS = @KATE_LIBS@ LD = @LD@ @@ -410,6 +412,8 @@ MODPLUG_CFLAGS = @MODPLUG_CFLAGS@ MODPLUG_LIBS = @MODPLUG_LIBS@ MPEG2ENC_CFLAGS = @MPEG2ENC_CFLAGS@ MPEG2ENC_LIBS = @MPEG2ENC_LIBS@ +MPG123_CFLAGS = @MPG123_CFLAGS@ +MPG123_LIBS = @MPG123_LIBS@ MPLEX_CFLAGS = @MPLEX_CFLAGS@ MPLEX_LDFLAGS = @MPLEX_LDFLAGS@ MPLEX_LIBS = @MPLEX_LIBS@ diff --git a/ext/rtmp/gstrtmpsrc.c b/ext/rtmp/gstrtmpsrc.c index be94bae7..7d3ccaf3 100644 --- a/ext/rtmp/gstrtmpsrc.c +++ b/ext/rtmp/gstrtmpsrc.c @@ -345,8 +345,8 @@ gst_rtmp_src_create (GstPushSrc * pushsrc, GstBuffer ** buffer) todo -= read; bsize += read; } else { - todo = 0; bsize += todo; + todo = 0; } GST_LOG (" got size %d", read); } diff --git a/ext/schroedinger/Makefile.in b/ext/schroedinger/Makefile.in index 29d6fe39..b3d0136a 100644 --- a/ext/schroedinger/Makefile.in +++ b/ext/schroedinger/Makefile.in @@ -1,4 +1,4 @@ -# Makefile.in generated by automake 1.11.5 from Makefile.am. +# Makefile.in generated by automake 1.11.6 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, @@ -240,11 +240,10 @@ DIRECT3D_LIBS = @DIRECT3D_LIBS@ DIRECTDRAW_LIBS = @DIRECTDRAW_LIBS@ DIRECTFB_CFLAGS = @DIRECTFB_CFLAGS@ DIRECTFB_LIBS = @DIRECTFB_LIBS@ +DIRECTSHOW_LIBS = @DIRECTSHOW_LIBS@ DIRECTSOUND_LIBS = @DIRECTSOUND_LIBS@ DIRECTX_CFLAGS = @DIRECTX_CFLAGS@ DIRECTX_LDFLAGS = @DIRECTX_LDFLAGS@ -DIVXDEC_LIBS = @DIVXDEC_LIBS@ -DIVXENC_LIBS = @DIVXENC_LIBS@ DLLTOOL = @DLLTOOL@ DSYMUTIL = @DSYMUTIL@ DTS_LIBS = @DTS_LIBS@ @@ -279,7 +278,9 @@ GIO_LIBS = @GIO_LIBS@ GLIB_CFLAGS = @GLIB_CFLAGS@ GLIB_COMPILE_SCHEMAS = @GLIB_COMPILE_SCHEMAS@ GLIB_EXTRA_CFLAGS = @GLIB_EXTRA_CFLAGS@ +GLIB_GENMARSHAL = @GLIB_GENMARSHAL@ GLIB_LIBS = @GLIB_LIBS@ +GLIB_MKENUMS = @GLIB_MKENUMS@ GLIB_PREFIX = @GLIB_PREFIX@ GLIB_REQ = @GLIB_REQ@ GME_LIBS = @GME_LIBS@ @@ -355,13 +356,14 @@ HAVE_CXX = @HAVE_CXX@ HAVE_DIRECT3D = @HAVE_DIRECT3D@ HAVE_DIRECT3D9 = @HAVE_DIRECT3D9@ HAVE_DIRECTDRAW = @HAVE_DIRECTDRAW@ +HAVE_DIRECTSHOW = @HAVE_DIRECTSHOW@ HAVE_DIRECTSOUND = @HAVE_DIRECTSOUND@ HAVE_DTS = @HAVE_DTS@ HAVE_FAAC = @HAVE_FAAC@ HAVE_FAAD = @HAVE_FAAD@ HAVE_FLITE = @HAVE_FLITE@ HAVE_GSM = @HAVE_GSM@ -HAVE_JP2K = @HAVE_JP2K@ +HAVE_JASPER = @HAVE_JASPER@ HAVE_NAS = @HAVE_NAS@ HAVE_VPX = @HAVE_VPX@ HAVE_WILDMIDI = @HAVE_WILDMIDI@ @@ -375,7 +377,7 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ INTLLIBS = @INTLLIBS@ INTL_MACOSX_LIBS = @INTL_MACOSX_LIBS@ -JP2K_LIBS = @JP2K_LIBS@ +JASPER_LIBS = @JASPER_LIBS@ KATE_CFLAGS = @KATE_CFLAGS@ KATE_LIBS = @KATE_LIBS@ LD = @LD@ @@ -411,6 +413,8 @@ MODPLUG_CFLAGS = @MODPLUG_CFLAGS@ MODPLUG_LIBS = @MODPLUG_LIBS@ MPEG2ENC_CFLAGS = @MPEG2ENC_CFLAGS@ MPEG2ENC_LIBS = @MPEG2ENC_LIBS@ +MPG123_CFLAGS = @MPG123_CFLAGS@ +MPG123_LIBS = @MPG123_LIBS@ MPLEX_CFLAGS = @MPLEX_CFLAGS@ MPLEX_LDFLAGS = @MPLEX_LDFLAGS@ MPLEX_LIBS = @MPLEX_LIBS@ diff --git a/ext/schroedinger/gstschro.c b/ext/schroedinger/gstschro.c index c486473f..5752100c 100644 --- a/ext/schroedinger/gstschro.c +++ b/ext/schroedinger/gstschro.c @@ -46,6 +46,6 @@ plugin_init (GstPlugin * plugin) GST_PLUGIN_DEFINE (GST_VERSION_MAJOR, GST_VERSION_MINOR, - "schro", + schro, "Schroedinger plugin", plugin_init, VERSION, "LGPL", GST_PACKAGE_NAME, GST_PACKAGE_ORIGIN) diff --git a/ext/schroedinger/gstschrodec.c b/ext/schroedinger/gstschrodec.c index 77ce8a3b..9121a5f8 100644 --- a/ext/schroedinger/gstschrodec.c +++ b/ext/schroedinger/gstschrodec.c @@ -24,6 +24,8 @@ #include <gst/gst.h> #include <gst/base/gstadapter.h> #include <gst/video/video.h> +#include <gst/video/gstvideometa.h> +#include <gst/video/gstvideopool.h> #include <gst/video/gstvideodecoder.h> #include <string.h> #include <schroedinger/schro.h> @@ -89,6 +91,8 @@ static GstFlowReturn gst_schro_dec_handle_frame (GstVideoDecoder * decoder, GstVideoCodecFrame * frame); static gboolean gst_schro_dec_finish (GstVideoDecoder * base_video_decoder); static void gst_schrodec_send_tags (GstSchroDec * schro_dec); +static gboolean gst_schro_dec_decide_allocation (GstVideoDecoder * decoder, + GstQuery * query); static GstStaticPadTemplate gst_schro_dec_sink_template = GST_STATIC_PAD_TEMPLATE ("sink", @@ -136,6 +140,8 @@ gst_schro_dec_class_init (GstSchroDecClass * klass) base_video_decoder_class->handle_frame = GST_DEBUG_FUNCPTR (gst_schro_dec_handle_frame); base_video_decoder_class->finish = GST_DEBUG_FUNCPTR (gst_schro_dec_finish); + base_video_decoder_class->decide_allocation = + GST_DEBUG_FUNCPTR (gst_schro_dec_decide_allocation); } static void @@ -421,7 +427,7 @@ gst_schrodec_send_tags (GstSchroDec * schro_dec) GST_TAG_VIDEO_CODEC, "Dirac", NULL); gst_pad_push_event (GST_VIDEO_DECODER_SRC_PAD (schro_dec), - gst_event_new_tag ("GstDecoder", list)); + gst_event_new_tag (list)); } static GstFlowReturn @@ -455,11 +461,9 @@ gst_schro_dec_process (GstSchroDec * schro_dec, gboolean eos) state = gst_video_decoder_get_output_state (GST_VIDEO_DECODER (schro_dec)); outbuf = - gst_video_decoder_alloc_output_buffer (GST_VIDEO_DECODER + gst_video_decoder_allocate_output_buffer (GST_VIDEO_DECODER (schro_dec)); - schro_frame = - gst_schro_buffer_wrap (outbuf, GST_VIDEO_INFO_FORMAT (&state->info), - state->info.width, state->info.height); + schro_frame = gst_schro_buffer_wrap (outbuf, TRUE, &state->info); schro_decoder_add_output_picture (schro_dec->decoder, schro_frame); gst_video_codec_state_unref (state); break; @@ -551,3 +555,26 @@ gst_schro_dec_finish (GstVideoDecoder * base_video_decoder) return gst_schro_dec_process (schro_dec, TRUE); } + +static gboolean +gst_schro_dec_decide_allocation (GstVideoDecoder * decoder, GstQuery * query) +{ + GstBufferPool *pool; + GstStructure *config; + + if (!GST_VIDEO_DECODER_CLASS (parent_class)->decide_allocation (decoder, + query)) + return FALSE; + + gst_query_parse_nth_allocation_pool (query, 0, &pool, NULL, NULL, NULL); + + config = gst_buffer_pool_get_config (pool); + if (gst_query_find_allocation_meta (query, GST_VIDEO_META_API_TYPE, NULL)) { + gst_buffer_pool_config_add_option (config, + GST_BUFFER_POOL_OPTION_VIDEO_META); + } + + gst_object_unref (pool); + + return TRUE; +} diff --git a/ext/schroedinger/gstschroenc.c b/ext/schroedinger/gstschroenc.c index 48907a48..3b9118c1 100644 --- a/ext/schroedinger/gstschroenc.c +++ b/ext/schroedinger/gstschroenc.c @@ -23,6 +23,7 @@ #include <gst/gst.h> #include <gst/video/video.h> +#include <gst/video/gstvideometa.h> #include <gst/video/gstvideoencoder.h> #include <gst/video/gstvideoutils.h> #include <string.h> @@ -104,6 +105,8 @@ static GstFlowReturn gst_schro_enc_handle_frame (GstVideoEncoder * static GstFlowReturn gst_schro_enc_pre_push (GstVideoEncoder * base_video_encoder, GstVideoCodecFrame * frame); static void gst_schro_enc_finalize (GObject * object); +static gboolean gst_schro_enc_propose_allocation (GstVideoEncoder * encoder, + GstQuery * query); static GstStaticPadTemplate gst_schro_enc_sink_template = GST_STATIC_PAD_TEMPLATE ("sink", @@ -214,6 +217,8 @@ gst_schro_enc_class_init (GstSchroEncClass * klass) basevideocoder_class->handle_frame = GST_DEBUG_FUNCPTR (gst_schro_enc_handle_frame); basevideocoder_class->pre_push = GST_DEBUG_FUNCPTR (gst_schro_enc_pre_push); + basevideocoder_class->propose_allocation = + GST_DEBUG_FUNCPTR (gst_schro_enc_propose_allocation); } static void @@ -525,8 +530,7 @@ gst_schro_enc_handle_frame (GstVideoEncoder * base_video_encoder, /* FIXME : We could make that method just take GstVideoInfo ... */ schro_frame = gst_schro_buffer_wrap (gst_buffer_ref (frame->input_buffer), - GST_VIDEO_INFO_FORMAT (info), - GST_VIDEO_INFO_WIDTH (info), GST_VIDEO_INFO_HEIGHT (info)); + FALSE, info); GST_DEBUG ("pushing frame %p", frame); schro_encoder_push_frame_full (schro_enc->encoder, schro_frame, frame); @@ -579,6 +583,16 @@ gst_schro_enc_pre_push (GstVideoEncoder * base_video_encoder, return GST_FLOW_OK; } +static gboolean +gst_schro_enc_propose_allocation (GstVideoEncoder * encoder, GstQuery * query) +{ + gst_query_add_allocation_meta (query, GST_VIDEO_META_API_TYPE, NULL); + + return GST_VIDEO_ENCODER_CLASS (parent_class)->propose_allocation (encoder, + query); +} + + static GstFlowReturn gst_schro_enc_process (GstSchroEnc * schro_enc) { diff --git a/ext/schroedinger/gstschroutils.c b/ext/schroedinger/gstschroutils.c index c08a8ff6..db9ff3ba 100644 --- a/ext/schroedinger/gstschroutils.c +++ b/ext/schroedinger/gstschroutils.c @@ -38,8 +38,7 @@ GST_DEBUG_CATEGORY_EXTERN (schro_debug); typedef struct { - GstBuffer *buf; - GstMapInfo info; + GstVideoFrame frame; } FrameData; @@ -48,8 +47,7 @@ gst_schro_frame_free (SchroFrame * frame, void *priv) { FrameData *data = priv; - gst_buffer_unmap (data->buf, &data->info); - gst_buffer_unref (data->buf); + gst_video_frame_unmap (&data->frame); g_slice_free (FrameData, data); } @@ -58,58 +56,62 @@ GstBuffer * gst_schro_frame_get_buffer (SchroFrame * frame) { if (frame->priv) - return gst_buffer_ref (((FrameData *) frame->priv)->buf); + return gst_buffer_ref (((FrameData *) frame->priv)->frame.buffer); return NULL; } SchroFrame * -gst_schro_buffer_wrap (GstBuffer * buf, GstVideoFormat format, int width, - int height) +gst_schro_buffer_wrap (GstBuffer * buf, gboolean write, GstVideoInfo * vinfo) { SchroFrame *frame; - GstMapInfo info; + GstVideoFrame vframe; FrameData *data; + gint i; - if (!gst_buffer_map (buf, &info, GST_MAP_READ)) + if (!gst_video_frame_map (&vframe, vinfo, buf, + (write ? GST_MAP_READWRITE : GST_MAP_READ))) return NULL; - switch (format) { + frame = schro_frame_new (); + + frame->width = GST_VIDEO_FRAME_WIDTH (&vframe); + frame->height = GST_VIDEO_FRAME_HEIGHT (&vframe); + + switch (GST_VIDEO_FRAME_FORMAT (&vframe)) { case GST_VIDEO_FORMAT_I420: - frame = schro_frame_new_from_data_I420 (info.data, width, height); - break; case GST_VIDEO_FORMAT_YV12: - frame = schro_frame_new_from_data_YV12 (info.data, width, height); + frame->format = SCHRO_FRAME_FORMAT_U8_420; break; case GST_VIDEO_FORMAT_YUY2: - frame = schro_frame_new_from_data_YUY2 (info.data, width, height); + frame->format = SCHRO_FRAME_FORMAT_YUYV; break; case GST_VIDEO_FORMAT_UYVY: - frame = schro_frame_new_from_data_UYVY (info.data, width, height); + frame->format = SCHRO_FRAME_FORMAT_UYVY; break; case GST_VIDEO_FORMAT_AYUV: - frame = schro_frame_new_from_data_AYUV (info.data, width, height); + frame->format = SCHRO_FRAME_FORMAT_AYUV; break; #if SCHRO_CHECK_VERSION(1,0,12) case GST_VIDEO_FORMAT_ARGB: - frame = schro_frame_new_from_data_ARGB (info.data, width, height); + frame->format = SCHRO_FRAME_FORMAT_ARGB; break; #endif #if SCHRO_CHECK_VERSION(1,0,11) case GST_VIDEO_FORMAT_Y42B: - frame = schro_frame_new_from_data_Y42B (info.data, width, height); + frame->format = SCHRO_FRAME_FORMAT_U8_422; break; case GST_VIDEO_FORMAT_Y444: - frame = schro_frame_new_from_data_Y444 (info.data, width, height); + frame->format = SCHRO_FRAME_FORMAT_U8_444; break; case GST_VIDEO_FORMAT_v210: - frame = schro_frame_new_from_data_v210 (info.data, width, height); + frame->format = SCHRO_FRAME_FORMAT_v210; break; case GST_VIDEO_FORMAT_v216: - frame = schro_frame_new_from_data_v216 (info.data, width, height); + frame->format = SCHRO_FRAME_FORMAT_v216; break; case GST_VIDEO_FORMAT_AYUV64: - frame = schro_frame_new_from_data_AY64 (info.data, width, height); + frame->format = SCHRO_FRAME_FORMAT_AY64; break; #endif default: @@ -117,9 +119,38 @@ gst_schro_buffer_wrap (GstBuffer * buf, GstVideoFormat format, int width, return NULL; } + if (SCHRO_FRAME_IS_PACKED (frame->format)) { + frame->components[0].format = frame->format; + frame->components[0].width = frame->width; + frame->components[0].height = frame->height; + frame->components[0].stride = GST_VIDEO_FRAME_COMP_STRIDE (&vframe, 0); + frame->components[0].length = frame->components[0].stride * frame->height; + frame->components[0].data = vframe.data[0]; + frame->components[0].v_shift = 0; + frame->components[0].h_shift = 0; + } else { + for (i = 0; i < GST_VIDEO_FRAME_N_COMPONENTS (&vframe); i++) { + frame->components[i].format = frame->format; + frame->components[i].width = GST_VIDEO_FRAME_COMP_WIDTH (&vframe, i); + frame->components[i].height = GST_VIDEO_FRAME_COMP_HEIGHT (&vframe, i); + frame->components[i].stride = GST_VIDEO_FRAME_COMP_STRIDE (&vframe, i); + frame->components[i].length = + frame->components[i].stride * frame->components[i].height; + frame->components[i].data = GST_VIDEO_FRAME_COMP_DATA (&vframe, i); + if (i == 0) { + frame->components[i].v_shift = 0; + frame->components[i].h_shift = 0; + } else { + frame->components[i].v_shift = + SCHRO_FRAME_FORMAT_H_SHIFT (frame->format); + frame->components[i].h_shift = + SCHRO_FRAME_FORMAT_H_SHIFT (frame->format); + } + } + } + data = g_slice_new0 (FrameData); - data->buf = buf; - data->info = info; + data->frame = vframe; schro_frame_set_free_callback (frame, gst_schro_frame_free, data); return frame; diff --git a/ext/schroedinger/gstschroutils.h b/ext/schroedinger/gstschroutils.h index 149ab3e1..bdc41b60 100644 --- a/ext/schroedinger/gstschroutils.h +++ b/ext/schroedinger/gstschroutils.h @@ -35,8 +35,7 @@ #endif SchroFrame * -gst_schro_buffer_wrap (GstBuffer *buf, GstVideoFormat format, int width, - int height); +gst_schro_buffer_wrap (GstBuffer *buf, gboolean write, GstVideoInfo * vinfo); GstBuffer * gst_schro_frame_get_buffer (SchroFrame * frame); GstBuffer * gst_schro_wrap_schro_buffer (SchroBuffer *buffer); diff --git a/ext/sdl/Makefile.in b/ext/sdl/Makefile.in index 52ea390d..bedfcb5e 100644 --- a/ext/sdl/Makefile.in +++ b/ext/sdl/Makefile.in @@ -1,4 +1,4 @@ -# Makefile.in generated by automake 1.11.5 from Makefile.am. +# Makefile.in generated by automake 1.11.6 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, @@ -238,11 +238,10 @@ DIRECT3D_LIBS = @DIRECT3D_LIBS@ DIRECTDRAW_LIBS = @DIRECTDRAW_LIBS@ DIRECTFB_CFLAGS = @DIRECTFB_CFLAGS@ DIRECTFB_LIBS = @DIRECTFB_LIBS@ +DIRECTSHOW_LIBS = @DIRECTSHOW_LIBS@ DIRECTSOUND_LIBS = @DIRECTSOUND_LIBS@ DIRECTX_CFLAGS = @DIRECTX_CFLAGS@ DIRECTX_LDFLAGS = @DIRECTX_LDFLAGS@ -DIVXDEC_LIBS = @DIVXDEC_LIBS@ -DIVXENC_LIBS = @DIVXENC_LIBS@ DLLTOOL = @DLLTOOL@ DSYMUTIL = @DSYMUTIL@ DTS_LIBS = @DTS_LIBS@ @@ -277,7 +276,9 @@ GIO_LIBS = @GIO_LIBS@ GLIB_CFLAGS = @GLIB_CFLAGS@ GLIB_COMPILE_SCHEMAS = @GLIB_COMPILE_SCHEMAS@ GLIB_EXTRA_CFLAGS = @GLIB_EXTRA_CFLAGS@ +GLIB_GENMARSHAL = @GLIB_GENMARSHAL@ GLIB_LIBS = @GLIB_LIBS@ +GLIB_MKENUMS = @GLIB_MKENUMS@ GLIB_PREFIX = @GLIB_PREFIX@ GLIB_REQ = @GLIB_REQ@ GME_LIBS = @GME_LIBS@ @@ -353,13 +354,14 @@ HAVE_CXX = @HAVE_CXX@ HAVE_DIRECT3D = @HAVE_DIRECT3D@ HAVE_DIRECT3D9 = @HAVE_DIRECT3D9@ HAVE_DIRECTDRAW = @HAVE_DIRECTDRAW@ +HAVE_DIRECTSHOW = @HAVE_DIRECTSHOW@ HAVE_DIRECTSOUND = @HAVE_DIRECTSOUND@ HAVE_DTS = @HAVE_DTS@ HAVE_FAAC = @HAVE_FAAC@ HAVE_FAAD = @HAVE_FAAD@ HAVE_FLITE = @HAVE_FLITE@ HAVE_GSM = @HAVE_GSM@ -HAVE_JP2K = @HAVE_JP2K@ +HAVE_JASPER = @HAVE_JASPER@ HAVE_NAS = @HAVE_NAS@ HAVE_VPX = @HAVE_VPX@ HAVE_WILDMIDI = @HAVE_WILDMIDI@ @@ -373,7 +375,7 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ INTLLIBS = @INTLLIBS@ INTL_MACOSX_LIBS = @INTL_MACOSX_LIBS@ -JP2K_LIBS = @JP2K_LIBS@ +JASPER_LIBS = @JASPER_LIBS@ KATE_CFLAGS = @KATE_CFLAGS@ KATE_LIBS = @KATE_LIBS@ LD = @LD@ @@ -409,6 +411,8 @@ MODPLUG_CFLAGS = @MODPLUG_CFLAGS@ MODPLUG_LIBS = @MODPLUG_LIBS@ MPEG2ENC_CFLAGS = @MPEG2ENC_CFLAGS@ MPEG2ENC_LIBS = @MPEG2ENC_LIBS@ +MPG123_CFLAGS = @MPG123_CFLAGS@ +MPG123_LIBS = @MPG123_LIBS@ MPLEX_CFLAGS = @MPLEX_CFLAGS@ MPLEX_LDFLAGS = @MPLEX_LDFLAGS@ MPLEX_LIBS = @MPLEX_LIBS@ diff --git a/ext/sndfile/Makefile.in b/ext/sndfile/Makefile.in index e17797dd..6cb61a2a 100644 --- a/ext/sndfile/Makefile.in +++ b/ext/sndfile/Makefile.in @@ -1,4 +1,4 @@ -# Makefile.in generated by automake 1.11.5 from Makefile.am. +# Makefile.in generated by automake 1.11.6 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, @@ -238,11 +238,10 @@ DIRECT3D_LIBS = @DIRECT3D_LIBS@ DIRECTDRAW_LIBS = @DIRECTDRAW_LIBS@ DIRECTFB_CFLAGS = @DIRECTFB_CFLAGS@ DIRECTFB_LIBS = @DIRECTFB_LIBS@ +DIRECTSHOW_LIBS = @DIRECTSHOW_LIBS@ DIRECTSOUND_LIBS = @DIRECTSOUND_LIBS@ DIRECTX_CFLAGS = @DIRECTX_CFLAGS@ DIRECTX_LDFLAGS = @DIRECTX_LDFLAGS@ -DIVXDEC_LIBS = @DIVXDEC_LIBS@ -DIVXENC_LIBS = @DIVXENC_LIBS@ DLLTOOL = @DLLTOOL@ DSYMUTIL = @DSYMUTIL@ DTS_LIBS = @DTS_LIBS@ @@ -277,7 +276,9 @@ GIO_LIBS = @GIO_LIBS@ GLIB_CFLAGS = @GLIB_CFLAGS@ GLIB_COMPILE_SCHEMAS = @GLIB_COMPILE_SCHEMAS@ GLIB_EXTRA_CFLAGS = @GLIB_EXTRA_CFLAGS@ +GLIB_GENMARSHAL = @GLIB_GENMARSHAL@ GLIB_LIBS = @GLIB_LIBS@ +GLIB_MKENUMS = @GLIB_MKENUMS@ GLIB_PREFIX = @GLIB_PREFIX@ GLIB_REQ = @GLIB_REQ@ GME_LIBS = @GME_LIBS@ @@ -353,13 +354,14 @@ HAVE_CXX = @HAVE_CXX@ HAVE_DIRECT3D = @HAVE_DIRECT3D@ HAVE_DIRECT3D9 = @HAVE_DIRECT3D9@ HAVE_DIRECTDRAW = @HAVE_DIRECTDRAW@ +HAVE_DIRECTSHOW = @HAVE_DIRECTSHOW@ HAVE_DIRECTSOUND = @HAVE_DIRECTSOUND@ HAVE_DTS = @HAVE_DTS@ HAVE_FAAC = @HAVE_FAAC@ HAVE_FAAD = @HAVE_FAAD@ HAVE_FLITE = @HAVE_FLITE@ HAVE_GSM = @HAVE_GSM@ -HAVE_JP2K = @HAVE_JP2K@ +HAVE_JASPER = @HAVE_JASPER@ HAVE_NAS = @HAVE_NAS@ HAVE_VPX = @HAVE_VPX@ HAVE_WILDMIDI = @HAVE_WILDMIDI@ @@ -373,7 +375,7 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ INTLLIBS = @INTLLIBS@ INTL_MACOSX_LIBS = @INTL_MACOSX_LIBS@ -JP2K_LIBS = @JP2K_LIBS@ +JASPER_LIBS = @JASPER_LIBS@ KATE_CFLAGS = @KATE_CFLAGS@ KATE_LIBS = @KATE_LIBS@ LD = @LD@ @@ -409,6 +411,8 @@ MODPLUG_CFLAGS = @MODPLUG_CFLAGS@ MODPLUG_LIBS = @MODPLUG_LIBS@ MPEG2ENC_CFLAGS = @MPEG2ENC_CFLAGS@ MPEG2ENC_LIBS = @MPEG2ENC_LIBS@ +MPG123_CFLAGS = @MPG123_CFLAGS@ +MPG123_LIBS = @MPG123_LIBS@ MPLEX_CFLAGS = @MPLEX_CFLAGS@ MPLEX_LDFLAGS = @MPLEX_LDFLAGS@ MPLEX_LIBS = @MPLEX_LIBS@ diff --git a/ext/sndfile/gstsfsink.c b/ext/sndfile/gstsfsink.c index 56dc4b00..06fb451b 100644 --- a/ext/sndfile/gstsfsink.c +++ b/ext/sndfile/gstsfsink.c @@ -459,7 +459,7 @@ gst_sf_sink_activate_pull (GstBaseSink * basesink, gboolean active) if (active) { /* start task */ result = gst_pad_start_task (basesink->sinkpad, - (GstTaskFunction) gst_sf_sink_loop, basesink->sinkpad); + (GstTaskFunction) gst_sf_sink_loop, basesink->sinkpad, NULL); } else { /* step 2, make sure streaming finishes */ result = gst_pad_stop_task (basesink->sinkpad); diff --git a/ext/sndio/Makefile.in b/ext/sndio/Makefile.in index 92103ad6..4bdcd359 100644 --- a/ext/sndio/Makefile.in +++ b/ext/sndio/Makefile.in @@ -1,4 +1,4 @@ -# Makefile.in generated by automake 1.11.5 from Makefile.am. +# Makefile.in generated by automake 1.11.6 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, @@ -238,11 +238,10 @@ DIRECT3D_LIBS = @DIRECT3D_LIBS@ DIRECTDRAW_LIBS = @DIRECTDRAW_LIBS@ DIRECTFB_CFLAGS = @DIRECTFB_CFLAGS@ DIRECTFB_LIBS = @DIRECTFB_LIBS@ +DIRECTSHOW_LIBS = @DIRECTSHOW_LIBS@ DIRECTSOUND_LIBS = @DIRECTSOUND_LIBS@ DIRECTX_CFLAGS = @DIRECTX_CFLAGS@ DIRECTX_LDFLAGS = @DIRECTX_LDFLAGS@ -DIVXDEC_LIBS = @DIVXDEC_LIBS@ -DIVXENC_LIBS = @DIVXENC_LIBS@ DLLTOOL = @DLLTOOL@ DSYMUTIL = @DSYMUTIL@ DTS_LIBS = @DTS_LIBS@ @@ -277,7 +276,9 @@ GIO_LIBS = @GIO_LIBS@ GLIB_CFLAGS = @GLIB_CFLAGS@ GLIB_COMPILE_SCHEMAS = @GLIB_COMPILE_SCHEMAS@ GLIB_EXTRA_CFLAGS = @GLIB_EXTRA_CFLAGS@ +GLIB_GENMARSHAL = @GLIB_GENMARSHAL@ GLIB_LIBS = @GLIB_LIBS@ +GLIB_MKENUMS = @GLIB_MKENUMS@ GLIB_PREFIX = @GLIB_PREFIX@ GLIB_REQ = @GLIB_REQ@ GME_LIBS = @GME_LIBS@ @@ -353,13 +354,14 @@ HAVE_CXX = @HAVE_CXX@ HAVE_DIRECT3D = @HAVE_DIRECT3D@ HAVE_DIRECT3D9 = @HAVE_DIRECT3D9@ HAVE_DIRECTDRAW = @HAVE_DIRECTDRAW@ +HAVE_DIRECTSHOW = @HAVE_DIRECTSHOW@ HAVE_DIRECTSOUND = @HAVE_DIRECTSOUND@ HAVE_DTS = @HAVE_DTS@ HAVE_FAAC = @HAVE_FAAC@ HAVE_FAAD = @HAVE_FAAD@ HAVE_FLITE = @HAVE_FLITE@ HAVE_GSM = @HAVE_GSM@ -HAVE_JP2K = @HAVE_JP2K@ +HAVE_JASPER = @HAVE_JASPER@ HAVE_NAS = @HAVE_NAS@ HAVE_VPX = @HAVE_VPX@ HAVE_WILDMIDI = @HAVE_WILDMIDI@ @@ -373,7 +375,7 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ INTLLIBS = @INTLLIBS@ INTL_MACOSX_LIBS = @INTL_MACOSX_LIBS@ -JP2K_LIBS = @JP2K_LIBS@ +JASPER_LIBS = @JASPER_LIBS@ KATE_CFLAGS = @KATE_CFLAGS@ KATE_LIBS = @KATE_LIBS@ LD = @LD@ @@ -409,6 +411,8 @@ MODPLUG_CFLAGS = @MODPLUG_CFLAGS@ MODPLUG_LIBS = @MODPLUG_LIBS@ MPEG2ENC_CFLAGS = @MPEG2ENC_CFLAGS@ MPEG2ENC_LIBS = @MPEG2ENC_LIBS@ +MPG123_CFLAGS = @MPG123_CFLAGS@ +MPG123_LIBS = @MPG123_LIBS@ MPLEX_CFLAGS = @MPLEX_CFLAGS@ MPLEX_LDFLAGS = @MPLEX_LDFLAGS@ MPLEX_LIBS = @MPLEX_LIBS@ diff --git a/ext/soundtouch/Makefile.in b/ext/soundtouch/Makefile.in index 44adf98b..567bb97c 100644 --- a/ext/soundtouch/Makefile.in +++ b/ext/soundtouch/Makefile.in @@ -1,4 +1,4 @@ -# Makefile.in generated by automake 1.11.5 from Makefile.am. +# Makefile.in generated by automake 1.11.6 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, @@ -256,11 +256,10 @@ DIRECT3D_LIBS = @DIRECT3D_LIBS@ DIRECTDRAW_LIBS = @DIRECTDRAW_LIBS@ DIRECTFB_CFLAGS = @DIRECTFB_CFLAGS@ DIRECTFB_LIBS = @DIRECTFB_LIBS@ +DIRECTSHOW_LIBS = @DIRECTSHOW_LIBS@ DIRECTSOUND_LIBS = @DIRECTSOUND_LIBS@ DIRECTX_CFLAGS = @DIRECTX_CFLAGS@ DIRECTX_LDFLAGS = @DIRECTX_LDFLAGS@ -DIVXDEC_LIBS = @DIVXDEC_LIBS@ -DIVXENC_LIBS = @DIVXENC_LIBS@ DLLTOOL = @DLLTOOL@ DSYMUTIL = @DSYMUTIL@ DTS_LIBS = @DTS_LIBS@ @@ -295,7 +294,9 @@ GIO_LIBS = @GIO_LIBS@ GLIB_CFLAGS = @GLIB_CFLAGS@ GLIB_COMPILE_SCHEMAS = @GLIB_COMPILE_SCHEMAS@ GLIB_EXTRA_CFLAGS = @GLIB_EXTRA_CFLAGS@ +GLIB_GENMARSHAL = @GLIB_GENMARSHAL@ GLIB_LIBS = @GLIB_LIBS@ +GLIB_MKENUMS = @GLIB_MKENUMS@ GLIB_PREFIX = @GLIB_PREFIX@ GLIB_REQ = @GLIB_REQ@ GME_LIBS = @GME_LIBS@ @@ -371,13 +372,14 @@ HAVE_CXX = @HAVE_CXX@ HAVE_DIRECT3D = @HAVE_DIRECT3D@ HAVE_DIRECT3D9 = @HAVE_DIRECT3D9@ HAVE_DIRECTDRAW = @HAVE_DIRECTDRAW@ +HAVE_DIRECTSHOW = @HAVE_DIRECTSHOW@ HAVE_DIRECTSOUND = @HAVE_DIRECTSOUND@ HAVE_DTS = @HAVE_DTS@ HAVE_FAAC = @HAVE_FAAC@ HAVE_FAAD = @HAVE_FAAD@ HAVE_FLITE = @HAVE_FLITE@ HAVE_GSM = @HAVE_GSM@ -HAVE_JP2K = @HAVE_JP2K@ +HAVE_JASPER = @HAVE_JASPER@ HAVE_NAS = @HAVE_NAS@ HAVE_VPX = @HAVE_VPX@ HAVE_WILDMIDI = @HAVE_WILDMIDI@ @@ -391,7 +393,7 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ INTLLIBS = @INTLLIBS@ INTL_MACOSX_LIBS = @INTL_MACOSX_LIBS@ -JP2K_LIBS = @JP2K_LIBS@ +JASPER_LIBS = @JASPER_LIBS@ KATE_CFLAGS = @KATE_CFLAGS@ KATE_LIBS = @KATE_LIBS@ LD = @LD@ @@ -427,6 +429,8 @@ MODPLUG_CFLAGS = @MODPLUG_CFLAGS@ MODPLUG_LIBS = @MODPLUG_LIBS@ MPEG2ENC_CFLAGS = @MPEG2ENC_CFLAGS@ MPEG2ENC_LIBS = @MPEG2ENC_LIBS@ +MPG123_CFLAGS = @MPG123_CFLAGS@ +MPG123_LIBS = @MPG123_LIBS@ MPLEX_CFLAGS = @MPLEX_CFLAGS@ MPLEX_LDFLAGS = @MPLEX_LDFLAGS@ MPLEX_LIBS = @MPLEX_LIBS@ diff --git a/ext/soundtouch/gstbpmdetect.cc b/ext/soundtouch/gstbpmdetect.cc index 9908dcad..41edba5b 100644 --- a/ext/soundtouch/gstbpmdetect.cc +++ b/ext/soundtouch/gstbpmdetect.cc @@ -56,14 +56,13 @@ struct _GstBPMDetectPrivate }; #define ALLOWED_CAPS \ - "audio/x-raw-float, " \ - " width = (int) 32, " \ - " endianness = (int) BYTE_ORDER, " \ + "audio/x-raw, " \ + " format = (string) " GST_AUDIO_NE (F32) ", " \ " rate = (int) [ 8000, MAX ], " \ " channels = (int) [ 1, 2 ]" -GST_BOILERPLATE (GstBPMDetect, gst_bpm_detect, GstAudioFilter, - GST_TYPE_AUDIO_FILTER); +#define gst_bpm_detect_parent_class parent_class +G_DEFINE_TYPE (GstBPMDetect, gst_bpm_detect, GST_TYPE_AUDIO_FILTER); static void gst_bpm_detect_finalize (GObject * object); static gboolean gst_bpm_detect_stop (GstBaseTransform * trans); @@ -72,28 +71,14 @@ static gboolean gst_bpm_detect_event (GstBaseTransform * trans, static GstFlowReturn gst_bpm_detect_transform_ip (GstBaseTransform * trans, GstBuffer * in); static gboolean gst_bpm_detect_setup (GstAudioFilter * filter, - GstRingBufferSpec * format); - -static void -gst_bpm_detect_base_init (gpointer g_class) -{ - GstElementClass *element_class = GST_ELEMENT_CLASS (g_class); - GstCaps *caps; - - gst_element_class_set_details_simple (element_class, "BPM Detector", - "Filter/Analyzer/Audio", "Detect the BPM of an audio stream", - "Sebastian Dröge <slomo@circular-chaos.org>"); - - caps = gst_caps_from_string (ALLOWED_CAPS); - gst_audio_filter_class_add_pad_templates (GST_AUDIO_FILTER_CLASS (g_class), - caps); - gst_caps_unref (caps); -} + const GstAudioInfo * info); static void gst_bpm_detect_class_init (GstBPMDetectClass * klass) { + GstCaps *caps; GObjectClass *gobject_class = G_OBJECT_CLASS (klass); + GstElementClass *element_class = GST_ELEMENT_CLASS (klass); GstBaseTransformClass *trans_class = GST_BASE_TRANSFORM_CLASS (klass); GstAudioFilterClass *filter_class = GST_AUDIO_FILTER_CLASS (klass); @@ -102,8 +87,17 @@ gst_bpm_detect_class_init (GstBPMDetectClass * klass) gobject_class->finalize = gst_bpm_detect_finalize; + gst_element_class_set_details_simple (element_class, "BPM Detector", + "Filter/Analyzer/Audio", "Detect the BPM of an audio stream", + "Sebastian Dröge <slomo@circular-chaos.org>"); + + caps = gst_caps_from_string (ALLOWED_CAPS); + gst_audio_filter_class_add_pad_templates (GST_AUDIO_FILTER_CLASS (klass), + caps); + gst_caps_unref (caps); + trans_class->stop = GST_DEBUG_FUNCPTR (gst_bpm_detect_stop); - trans_class->event = GST_DEBUG_FUNCPTR (gst_bpm_detect_event); + trans_class->sink_event = GST_DEBUG_FUNCPTR (gst_bpm_detect_event); trans_class->transform_ip = GST_DEBUG_FUNCPTR (gst_bpm_detect_transform_ip); trans_class->passthrough_on_same_caps = TRUE; @@ -113,7 +107,7 @@ gst_bpm_detect_class_init (GstBPMDetectClass * klass) } static void -gst_bpm_detect_init (GstBPMDetect * bpm_detect, GstBPMDetectClass * g_class) +gst_bpm_detect_init (GstBPMDetect * bpm_detect) { bpm_detect->priv = G_TYPE_INSTANCE_GET_PRIVATE ((bpm_detect), GST_TYPE_BPM_DETECT, GstBPMDetectPrivate); @@ -159,7 +153,7 @@ gst_bpm_detect_event (GstBaseTransform * trans, GstEvent * event) switch (GST_EVENT_TYPE (event)) { case GST_EVENT_FLUSH_STOP: case GST_EVENT_EOS: - case GST_EVENT_NEWSEGMENT: + case GST_EVENT_SEGMENT: if (bpm_detect->priv->detect) { delete bpm_detect->priv->detect; @@ -175,7 +169,7 @@ gst_bpm_detect_event (GstBaseTransform * trans, GstEvent * event) } static gboolean -gst_bpm_detect_setup (GstAudioFilter * filter, GstRingBufferSpec * format) +gst_bpm_detect_setup (GstAudioFilter * filter, const GstAudioInfo * info) { GstBPMDetect *bpm_detect = GST_BPM_DETECT (filter); @@ -195,29 +189,33 @@ gst_bpm_detect_transform_ip (GstBaseTransform * trans, GstBuffer * in) GstAudioFilter *filter = GST_AUDIO_FILTER (trans); gint nsamples; gfloat bpm; + GstMapInfo info; if (G_UNLIKELY (!bpm_detect->priv->detect)) { - if (filter->format.channels == 0 || filter->format.rate == 0) { + if (GST_AUDIO_INFO_FORMAT (&filter->info) == GST_AUDIO_FORMAT_UNKNOWN) { GST_ERROR_OBJECT (bpm_detect, "No channels or rate set yet"); return GST_FLOW_ERROR; } #ifdef HAVE_SOUNDTOUCH_1_4 bpm_detect->priv->detect = - new soundtouch::BPMDetect (filter->format.channels, - filter->format.rate); + new soundtouch::BPMDetect (GST_AUDIO_INFO_CHANNELS (&filter->info), + GST_AUDIO_INFO_RATE (&filter->info)); #else bpm_detect->priv->detect = - new BPMDetect (filter->format.channels, filter->format.rate); + new BPMDetect (GST_AUDIO_INFO_CHANNELS (&filter->info), + GST_AUDIO_INFO_RATE (&filter->info)); #endif } - nsamples = GST_BUFFER_SIZE (in) / (4 * filter->format.channels); + gst_buffer_map (in, &info, GST_MAP_READ); + + nsamples = info.size / (4 * GST_AUDIO_INFO_CHANNELS (&filter->info)); /* For stereo BPMDetect->inputSamples() does downmixing into the input * data but our buffer data shouldn't be modified. */ - if (filter->format.channels == 1) { - gfloat *inbuf = (gfloat *) GST_BUFFER_DATA (in); + if (GST_AUDIO_INFO_CHANNELS (&filter->info) == 1) { + gfloat *inbuf = (gfloat *) info.data; while (nsamples > 0) { bpm_detect->priv->detect->inputSamples (inbuf, MIN (nsamples, 2048)); @@ -227,7 +225,7 @@ gst_bpm_detect_transform_ip (GstBaseTransform * trans, GstBuffer * in) } else { gfloat *inbuf, *intmp, data[2 * 2048]; - inbuf = (gfloat *) GST_BUFFER_DATA (in); + inbuf = (gfloat *) info.data; intmp = data; while (nsamples > 0) { @@ -237,14 +235,15 @@ gst_bpm_detect_transform_ip (GstBaseTransform * trans, GstBuffer * in) inbuf += 2048 * 2; } } + gst_buffer_unmap (in, &info); bpm = bpm_detect->priv->detect->getBpm (); if (bpm >= 1.0 && fabs (bpm_detect->bpm - bpm) >= 1.0) { - GstTagList *tags = gst_tag_list_new (); + GstTagList *tags = gst_tag_list_new_empty (); gst_tag_list_add (tags, GST_TAG_MERGE_REPLACE_ALL, GST_TAG_BEATS_PER_MINUTE, bpm, (void *) NULL); - gst_element_found_tags (GST_ELEMENT (bpm_detect), tags); + gst_pad_push_event (trans->srcpad, gst_event_new_tag (tags)); GST_INFO_OBJECT (bpm_detect, "Detected BPM: %lf\n", bpm); bpm_detect->bpm = bpm; diff --git a/ext/soundtouch/gstpitch.cc b/ext/soundtouch/gstpitch.cc index 6b5b95f1..0cba53a4 100644 --- a/ext/soundtouch/gstpitch.cc +++ b/ext/soundtouch/gstpitch.cc @@ -35,7 +35,8 @@ #include <soundtouch/SoundTouch.h> #include <gst/gst.h> -#include <gst/controller/gstcontroller.h> +#include <gst/audio/audio.h> + #include "gstpitch.hh" #include <math.h> @@ -62,25 +63,22 @@ enum }; #define SUPPORTED_CAPS \ -GST_STATIC_CAPS( \ - "audio/x-raw-float, " \ + "audio/x-raw, " \ + "format = (string) " GST_AUDIO_NE (F32) ", " \ "rate = (int) [ 8000, MAX ], " \ - "channels = (int) [ 1, 2 ], " \ - "endianness = (int) BYTE_ORDER, " \ - "width = (int) 32" \ -) + "channels = (int) [ 1, 2 ]" static GstStaticPadTemplate gst_pitch_sink_template = GST_STATIC_PAD_TEMPLATE ("sink", GST_PAD_SINK, GST_PAD_ALWAYS, - SUPPORTED_CAPS); + GST_STATIC_CAPS (SUPPORTED_CAPS)); static GstStaticPadTemplate gst_pitch_src_template = GST_STATIC_PAD_TEMPLATE ("src", GST_PAD_SRC, GST_PAD_ALWAYS, - SUPPORTED_CAPS); + GST_STATIC_CAPS (SUPPORTED_CAPS)); static void gst_pitch_dispose (GObject * object); static void gst_pitch_set_property (GObject * object, @@ -89,32 +87,17 @@ static void gst_pitch_get_property (GObject * object, guint prop_id, GValue * value, GParamSpec * pspec); -static gboolean gst_pitch_sink_setcaps (GstPad * pad, GstCaps * caps); -static GstFlowReturn gst_pitch_chain (GstPad * pad, GstBuffer * buffer); +static gboolean gst_pitch_setcaps (GstPitch * pitch, GstCaps * caps); +static GstFlowReturn gst_pitch_chain (GstPad * pad, GstObject * parent, GstBuffer * buffer); static GstStateChangeReturn gst_pitch_change_state (GstElement * element, GstStateChange transition); -static gboolean gst_pitch_sink_event (GstPad * pad, GstEvent * event); -static gboolean gst_pitch_src_event (GstPad * pad, GstEvent * event); - -static gboolean gst_pitch_src_query (GstPad * pad, GstQuery * query); -static const GstQueryType *gst_pitch_get_query_types (GstPad * pad); - -GST_BOILERPLATE (GstPitch, gst_pitch, GstElement, GST_TYPE_ELEMENT); - -static void -gst_pitch_base_init (gpointer g_class) -{ - GstElementClass *gstelement_class = GST_ELEMENT_CLASS (g_class); +static gboolean gst_pitch_sink_event (GstPad * pad, GstObject * parent, GstEvent * event); +static gboolean gst_pitch_src_event (GstPad * pad, GstObject * parent, GstEvent * event); - gst_element_class_add_pad_template (gstelement_class, - gst_static_pad_template_get (&gst_pitch_src_template)); - gst_element_class_add_pad_template (gstelement_class, - gst_static_pad_template_get (&gst_pitch_sink_template)); +static gboolean gst_pitch_src_query (GstPad * pad, GstObject * parent, GstQuery * query); - gst_element_class_set_details_simple (gstelement_class, "Pitch controller", - "Filter/Converter/Audio", "Control the pitch of an audio stream", - "Wouter Paesen <wouter@blue-gate.be>"); -} +#define gst_pitch_parent_class parent_class +G_DEFINE_TYPE (GstPitch, gst_pitch, GST_TYPE_ELEMENT); static void gst_pitch_class_init (GstPitchClass * klass) @@ -128,10 +111,11 @@ gst_pitch_class_init (GstPitchClass * klass) GST_DEBUG_CATEGORY_INIT (pitch_debug, "pitch", 0, "audio pitch control element"); + g_type_class_add_private (gobject_class, sizeof (GstPitchPrivate)); + gobject_class->set_property = gst_pitch_set_property; gobject_class->get_property = gst_pitch_get_property; gobject_class->dispose = GST_DEBUG_FUNCPTR (gst_pitch_dispose); - element_class->change_state = GST_DEBUG_FUNCPTR (gst_pitch_change_state); g_object_class_install_property (gobject_class, ARG_PITCH, g_param_spec_float ("pitch", "Pitch", @@ -153,11 +137,20 @@ gst_pitch_class_init (GstPitchClass * klass) "Output rate on downstream segment events", 0.1, 10.0, 1.0, (GParamFlags) (G_PARAM_READWRITE | GST_PARAM_CONTROLLABLE | G_PARAM_STATIC_STRINGS))); - g_type_class_add_private (gobject_class, sizeof (GstPitchPrivate)); + element_class->change_state = GST_DEBUG_FUNCPTR (gst_pitch_change_state); + + gst_element_class_add_pad_template (element_class, + gst_static_pad_template_get (&gst_pitch_src_template)); + gst_element_class_add_pad_template (element_class, + gst_static_pad_template_get (&gst_pitch_sink_template)); + + gst_element_class_set_details_simple (element_class, "Pitch controller", + "Filter/Effect/Audio", "Control the pitch of an audio stream", + "Wouter Paesen <wouter@blue-gate.be>"); } static void -gst_pitch_init (GstPitch * pitch, GstPitchClass * pitch_class) +gst_pitch_init (GstPitch * pitch) { pitch->priv = G_TYPE_INSTANCE_GET_PRIVATE ((pitch), GST_TYPE_PITCH, GstPitchPrivate); @@ -168,24 +161,16 @@ gst_pitch_init (GstPitch * pitch, GstPitchClass * pitch_class) GST_DEBUG_FUNCPTR (gst_pitch_chain)); gst_pad_set_event_function (pitch->sinkpad, GST_DEBUG_FUNCPTR (gst_pitch_sink_event)); - gst_pad_set_setcaps_function (pitch->sinkpad, - GST_DEBUG_FUNCPTR (gst_pitch_sink_setcaps)); - gst_pad_set_getcaps_function (pitch->sinkpad, - GST_DEBUG_FUNCPTR (gst_pad_proxy_getcaps)); + GST_PAD_SET_PROXY_CAPS (pitch->sinkpad); gst_element_add_pad (GST_ELEMENT (pitch), pitch->sinkpad); pitch->srcpad = gst_pad_new_from_static_template (&gst_pitch_src_template, "src"); gst_pad_set_event_function (pitch->srcpad, GST_DEBUG_FUNCPTR (gst_pitch_src_event)); - gst_pad_set_query_type_function (pitch->srcpad, - GST_DEBUG_FUNCPTR (gst_pitch_get_query_types)); gst_pad_set_query_function (pitch->srcpad, GST_DEBUG_FUNCPTR (gst_pitch_src_query)); - gst_pad_set_setcaps_function (pitch->srcpad, - GST_DEBUG_FUNCPTR (gst_pitch_sink_setcaps)); - gst_pad_set_getcaps_function (pitch->srcpad, - GST_DEBUG_FUNCPTR (gst_pad_proxy_getcaps)); + GST_PAD_SET_PROXY_CAPS (pitch->sinkpad); gst_element_add_pad (GST_ELEMENT (pitch), pitch->srcpad); pitch->priv->st = new soundtouch::SoundTouch (); @@ -296,22 +281,14 @@ gst_pitch_get_property (GObject * object, guint prop_id, } static gboolean -gst_pitch_sink_setcaps (GstPad * pad, GstCaps * caps) +gst_pitch_setcaps (GstPitch * pitch, GstCaps * caps) { - GstPitch *pitch; GstPitchPrivate *priv; GstStructure *structure; - GstPad *otherpad; gint rate, channels; - pitch = GST_PITCH (GST_PAD_PARENT (pad)); priv = GST_PITCH_GET_PRIVATE (pitch); - otherpad = (pad == pitch->srcpad) ? pitch->sinkpad : pitch->srcpad; - - if (!gst_pad_set_caps (otherpad, caps)) - return FALSE; - structure = gst_caps_get_structure (caps, 0); if (!gst_structure_get_int (structure, "rate", &rate) || @@ -364,6 +341,7 @@ gst_pitch_prepare_buffer (GstPitch * pitch) GstPitchPrivate *priv; guint samples; GstBuffer *buffer; + GstMapInfo info; priv = GST_PITCH_GET_PRIVATE (pitch); @@ -373,15 +351,12 @@ gst_pitch_prepare_buffer (GstPitch * pitch) if (samples == 0) return NULL; - if (gst_pad_alloc_buffer_and_set_caps (pitch->srcpad, GST_BUFFER_OFFSET_NONE, - samples * pitch->sample_size, GST_PAD_CAPS (pitch->srcpad), &buffer) - != GST_FLOW_OK) { - buffer = gst_buffer_new_and_alloc (samples * pitch->sample_size); - gst_buffer_set_caps (buffer, GST_PAD_CAPS (pitch->srcpad)); - } + buffer = gst_buffer_new_and_alloc (samples * pitch->sample_size); + gst_buffer_map (buffer, &info, (GstMapFlags) GST_MAP_READWRITE); samples = - priv->st->receiveSamples ((gfloat *) GST_BUFFER_DATA (buffer), samples); + priv->st->receiveSamples ((gfloat *) info.data, samples); + gst_buffer_unmap (buffer, &info); if (samples <= 0) { gst_buffer_unref (buffer); @@ -422,12 +397,12 @@ gst_pitch_flush_buffer (GstPitch * pitch, gboolean send) } static gboolean -gst_pitch_src_event (GstPad * pad, GstEvent * event) +gst_pitch_src_event (GstPad * pad, GstObject * parent, GstEvent * event) { GstPitch *pitch; gboolean res; - pitch = GST_PITCH (gst_pad_get_parent (pad)); + pitch = GST_PITCH (parent); GST_DEBUG_OBJECT (pad, "received %s event", GST_EVENT_TYPE_NAME (event)); @@ -457,21 +432,18 @@ gst_pitch_src_event (GstPad * pad, GstEvent * event) event = gst_event_new_seek (rate, format, flags, cur_type, cur, stop_type, stop); - res = gst_pad_event_default (pad, event); + res = gst_pad_event_default (pad, parent, event); } else { GST_WARNING_OBJECT (pitch, "Seeking only supported in TIME or DEFAULT format"); res = FALSE; } - break; } default: - res = gst_pad_event_default (pad, event); + res = gst_pad_event_default (pad, parent, event); break; } - - gst_object_unref (pitch); return res; } @@ -557,22 +529,8 @@ gst_pitch_convert (GstPitch * pitch, return res; } -static const GstQueryType * -gst_pitch_get_query_types (GstPad * pad) -{ - static const GstQueryType types[] = { - GST_QUERY_POSITION, - GST_QUERY_DURATION, - GST_QUERY_CONVERT, - GST_QUERY_LATENCY, - GST_QUERY_NONE - }; - - return types; -} - static gboolean -gst_pitch_src_query (GstPad * pad, GstQuery * query) +gst_pitch_src_query (GstPad * pad, GstObject * parent, GstQuery * query) { GstPitch *pitch; gboolean res = FALSE; @@ -580,8 +538,10 @@ gst_pitch_src_query (GstPad * pad, GstQuery * query) gint64 next_buffer_offset; GstClockTime next_buffer_time; - pitch = GST_PITCH (gst_pad_get_parent (pad)); + pitch = GST_PITCH (parent); + GST_LOG ("%s query", GST_QUERY_TYPE_NAME (query)); + GST_OBJECT_LOCK (pitch); stream_time_ratio = pitch->priv->stream_time_ratio; next_buffer_time = pitch->next_buffer_time; @@ -593,7 +553,7 @@ gst_pitch_src_query (GstPad * pad, GstQuery * query) GstFormat format; gint64 duration; - if (!gst_pad_query_default (pad, query)) { + if (!gst_pad_query_default (pad, parent, query)) { GST_DEBUG_OBJECT (pitch, "upstream provided no duration"); break; } @@ -689,11 +649,10 @@ gst_pitch_src_query (GstPad * pad, GstQuery * query) break; } default: - res = gst_pad_query_default (pad, query); + res = gst_pad_query_default (pad, parent, query); break; } - gst_object_unref (pitch); return res; } @@ -706,12 +665,11 @@ gst_pitch_src_query (GstPad * pad, GstQuery * query) static gboolean gst_pitch_process_segment (GstPitch * pitch, GstEvent ** event) { - GstFormat format, conv_format; - gint64 start_value, stop_value, base; + GstFormat conv_format; gint64 next_offset = 0, next_time = 0; - gboolean update = FALSE; - gdouble rate, out_seg_rate, arate, our_arate; + gdouble out_seg_rate, our_arate; gfloat stream_time_ratio; + GstSegment seg; g_return_val_if_fail (event, FALSE); @@ -720,30 +678,27 @@ gst_pitch_process_segment (GstPitch * pitch, GstEvent ** event) out_seg_rate = pitch->out_seg_rate; GST_OBJECT_UNLOCK (pitch); - gst_event_parse_new_segment_full (*event, &update, &rate, &arate, &format, &start_value, - &stop_value, &base); + gst_event_copy_segment (*event, &seg); - if (format != GST_FORMAT_TIME && format != GST_FORMAT_DEFAULT) { + if (seg.format != GST_FORMAT_TIME && seg.format != GST_FORMAT_DEFAULT) { GST_WARNING_OBJECT (pitch, "Only NEWSEGMENT in TIME or DEFAULT format supported, sending" "open ended NEWSEGMENT in TIME format."); - gst_event_unref (*event); - *event = - gst_event_new_new_segment_full (update, rate, arate, GST_FORMAT_TIME, 0, -1, 0); - start_value = 0; - stop_value = -1; - base = 0; + seg.format = GST_FORMAT_TIME; + seg.start = 0; + seg.stop = -1; + seg.time = 0; } /* Figure out how much of the incoming 'rate' we'll apply ourselves */ - our_arate = rate / out_seg_rate; + our_arate = seg.rate / out_seg_rate; /* update the output rate variables */ - rate = out_seg_rate; - arate *= our_arate; + seg.rate = out_seg_rate; + seg.applied_rate *= our_arate; GST_LOG_OBJECT (pitch->sinkpad, - "segment %" G_GINT64_FORMAT " - %" G_GINT64_FORMAT " (%d)", start_value, - stop_value, format); + "segment %" G_GINT64_FORMAT " - %" G_GINT64_FORMAT " (%d)", seg.start, + seg.stop, seg.format); stream_time_ratio = pitch->tempo * pitch->rate * pitch->seg_arate; @@ -759,20 +714,20 @@ gst_pitch_process_segment (GstPitch * pitch, GstEvent ** event) pitch->priv->st->setTempo (pitch->tempo * pitch->seg_arate); GST_OBJECT_UNLOCK (pitch); - start_value = (gint64) (start_value / stream_time_ratio); - if (stop_value != -1) - stop_value = (gint64) (stop_value / stream_time_ratio); - base = (gint64) (base / stream_time_ratio); + seg.start = (gint64) (seg.start / stream_time_ratio); + if (seg.stop != (guint64) -1) + seg.stop = (gint64) (seg.stop / stream_time_ratio); + seg.time = (gint64) (seg.time / stream_time_ratio); conv_format = GST_FORMAT_TIME; - if (!gst_pitch_convert (pitch, format, start_value, &conv_format, &next_time)) { + if (!gst_pitch_convert (pitch, seg.format, seg.start, &conv_format, &next_time)) { GST_LOG_OBJECT (pitch->sinkpad, "could not convert segment start value to time"); return FALSE; } conv_format = GST_FORMAT_DEFAULT; - if (!gst_pitch_convert (pitch, format, start_value, &conv_format, + if (!gst_pitch_convert (pitch, seg.format, seg.start, &conv_format, &next_offset)) { GST_LOG_OBJECT (pitch->sinkpad, "could not convert segment start value to offset"); @@ -783,19 +738,18 @@ gst_pitch_process_segment (GstPitch * pitch, GstEvent ** event) pitch->next_buffer_offset = next_offset; gst_event_unref (*event); - *event = gst_event_new_new_segment_full (update, rate, arate, format, - start_value, stop_value, base); + *event = gst_event_new_segment (&seg); return TRUE; } static gboolean -gst_pitch_sink_event (GstPad * pad, GstEvent * event) +gst_pitch_sink_event (GstPad * pad, GstObject * parent, GstEvent * event) { gboolean res = TRUE; GstPitch *pitch; - pitch = GST_PITCH (gst_pad_get_parent (pad)); + pitch = GST_PITCH (parent); GST_LOG_OBJECT (pad, "received %s event", GST_EVENT_TYPE_NAME (event)); @@ -812,7 +766,7 @@ gst_pitch_sink_event (GstPad * pad, GstEvent * event) pitch->priv->st->clear (); pitch->min_latency = pitch->max_latency = 0; break; - case GST_EVENT_NEWSEGMENT: + case GST_EVENT_SEGMENT: if (!gst_pitch_process_segment (pitch, &event)) { GST_LOG_OBJECT (pad, "not enough data known, stalling segment"); if (GST_PITCH_GET_PRIVATE (pitch)->pending_segment) @@ -823,15 +777,26 @@ gst_pitch_sink_event (GstPad * pad, GstEvent * event) pitch->priv->st->clear (); pitch->min_latency = pitch->max_latency = 0; break; + case GST_EVENT_CAPS: + { + GstCaps * caps; + + gst_event_parse_caps (event, &caps); + res = gst_pitch_setcaps (pitch, caps); + if (!res) { + gst_event_unref (event); + goto done; + } + } default: break; } /* and forward it */ if (event) - res = gst_pad_event_default (pad, event); + res = gst_pad_event_default (pad, parent, event); - gst_object_unref (pitch); +done: return res; } @@ -862,22 +827,23 @@ gst_pitch_update_latency (GstPitch * pitch, GstClockTime timestamp) } static GstFlowReturn -gst_pitch_chain (GstPad * pad, GstBuffer * buffer) +gst_pitch_chain (GstPad * pad, GstObject * parent, GstBuffer * buffer) { GstPitch *pitch; GstPitchPrivate *priv; GstClockTime timestamp; + GstMapInfo info; - pitch = GST_PITCH (GST_PAD_PARENT (pad)); + pitch = GST_PITCH (parent); priv = GST_PITCH_GET_PRIVATE (pitch); - gst_object_sync_values (G_OBJECT (pitch), pitch->next_buffer_time); + gst_object_sync_values (GST_OBJECT (pitch), pitch->next_buffer_time); timestamp = GST_BUFFER_TIMESTAMP (buffer); /* push the received samples on the soundtouch buffer */ GST_LOG_OBJECT (pitch, "incoming buffer (%d samples)", - (gint) (GST_BUFFER_SIZE (buffer) / pitch->sample_size)); + (gint) (gst_buffer_get_size (buffer) / pitch->sample_size)); if (GST_PITCH_GET_PRIVATE (pitch)->pending_segment) { GstEvent *event = @@ -885,11 +851,13 @@ gst_pitch_chain (GstPad * pad, GstBuffer * buffer) GST_LOG_OBJECT (pitch, "processing stalled segment"); if (!gst_pitch_process_segment (pitch, &event)) { + gst_buffer_unref (buffer); gst_event_unref (event); return GST_FLOW_ERROR; } - if (!gst_pad_event_default (pitch->sinkpad, event)) { + if (!gst_pad_event_default (pitch->sinkpad, parent, event)) { + gst_buffer_unref (buffer); gst_event_unref (event); return GST_FLOW_ERROR; } @@ -898,14 +866,14 @@ gst_pitch_chain (GstPad * pad, GstBuffer * buffer) GST_PITCH_GET_PRIVATE (pitch)->pending_segment = NULL; } - priv->st->putSamples ((gfloat *) GST_BUFFER_DATA (buffer), - GST_BUFFER_SIZE (buffer) / pitch->sample_size); + gst_buffer_map (buffer, &info, GST_MAP_READ); + priv->st->putSamples ((gfloat *) info.data, info.size / pitch->sample_size); + gst_buffer_unmap (buffer, &info); gst_buffer_unref (buffer); /* Calculate latency */ gst_pitch_update_latency (pitch, timestamp); - /* and try to extract some samples from the soundtouch buffer */ if (!priv->st->isEmpty ()) { GstBuffer *out_buffer; @@ -939,7 +907,7 @@ gst_pitch_change_state (GstElement * element, GstStateChange transition) break; } - ret = parent_class->change_state (element, transition); + ret = GST_ELEMENT_CLASS (parent_class)->change_state (element, transition); if (ret != GST_STATE_CHANGE_SUCCESS) return ret; diff --git a/ext/spandsp/Makefile.in b/ext/spandsp/Makefile.in index ee800ab0..3aab3211 100644 --- a/ext/spandsp/Makefile.in +++ b/ext/spandsp/Makefile.in @@ -1,4 +1,4 @@ -# Makefile.in generated by automake 1.11.5 from Makefile.am. +# Makefile.in generated by automake 1.11.6 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, @@ -238,11 +238,10 @@ DIRECT3D_LIBS = @DIRECT3D_LIBS@ DIRECTDRAW_LIBS = @DIRECTDRAW_LIBS@ DIRECTFB_CFLAGS = @DIRECTFB_CFLAGS@ DIRECTFB_LIBS = @DIRECTFB_LIBS@ +DIRECTSHOW_LIBS = @DIRECTSHOW_LIBS@ DIRECTSOUND_LIBS = @DIRECTSOUND_LIBS@ DIRECTX_CFLAGS = @DIRECTX_CFLAGS@ DIRECTX_LDFLAGS = @DIRECTX_LDFLAGS@ -DIVXDEC_LIBS = @DIVXDEC_LIBS@ -DIVXENC_LIBS = @DIVXENC_LIBS@ DLLTOOL = @DLLTOOL@ DSYMUTIL = @DSYMUTIL@ DTS_LIBS = @DTS_LIBS@ @@ -277,7 +276,9 @@ GIO_LIBS = @GIO_LIBS@ GLIB_CFLAGS = @GLIB_CFLAGS@ GLIB_COMPILE_SCHEMAS = @GLIB_COMPILE_SCHEMAS@ GLIB_EXTRA_CFLAGS = @GLIB_EXTRA_CFLAGS@ +GLIB_GENMARSHAL = @GLIB_GENMARSHAL@ GLIB_LIBS = @GLIB_LIBS@ +GLIB_MKENUMS = @GLIB_MKENUMS@ GLIB_PREFIX = @GLIB_PREFIX@ GLIB_REQ = @GLIB_REQ@ GME_LIBS = @GME_LIBS@ @@ -353,13 +354,14 @@ HAVE_CXX = @HAVE_CXX@ HAVE_DIRECT3D = @HAVE_DIRECT3D@ HAVE_DIRECT3D9 = @HAVE_DIRECT3D9@ HAVE_DIRECTDRAW = @HAVE_DIRECTDRAW@ +HAVE_DIRECTSHOW = @HAVE_DIRECTSHOW@ HAVE_DIRECTSOUND = @HAVE_DIRECTSOUND@ HAVE_DTS = @HAVE_DTS@ HAVE_FAAC = @HAVE_FAAC@ HAVE_FAAD = @HAVE_FAAD@ HAVE_FLITE = @HAVE_FLITE@ HAVE_GSM = @HAVE_GSM@ -HAVE_JP2K = @HAVE_JP2K@ +HAVE_JASPER = @HAVE_JASPER@ HAVE_NAS = @HAVE_NAS@ HAVE_VPX = @HAVE_VPX@ HAVE_WILDMIDI = @HAVE_WILDMIDI@ @@ -373,7 +375,7 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ INTLLIBS = @INTLLIBS@ INTL_MACOSX_LIBS = @INTL_MACOSX_LIBS@ -JP2K_LIBS = @JP2K_LIBS@ +JASPER_LIBS = @JASPER_LIBS@ KATE_CFLAGS = @KATE_CFLAGS@ KATE_LIBS = @KATE_LIBS@ LD = @LD@ @@ -409,6 +411,8 @@ MODPLUG_CFLAGS = @MODPLUG_CFLAGS@ MODPLUG_LIBS = @MODPLUG_LIBS@ MPEG2ENC_CFLAGS = @MPEG2ENC_CFLAGS@ MPEG2ENC_LIBS = @MPEG2ENC_LIBS@ +MPG123_CFLAGS = @MPG123_CFLAGS@ +MPG123_LIBS = @MPG123_LIBS@ MPLEX_CFLAGS = @MPLEX_CFLAGS@ MPLEX_LDFLAGS = @MPLEX_LDFLAGS@ MPLEX_LIBS = @MPLEX_LIBS@ diff --git a/ext/spc/Makefile.in b/ext/spc/Makefile.in index 9796903b..eaeae70b 100644 --- a/ext/spc/Makefile.in +++ b/ext/spc/Makefile.in @@ -1,4 +1,4 @@ -# Makefile.in generated by automake 1.11.5 from Makefile.am. +# Makefile.in generated by automake 1.11.6 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, @@ -237,11 +237,10 @@ DIRECT3D_LIBS = @DIRECT3D_LIBS@ DIRECTDRAW_LIBS = @DIRECTDRAW_LIBS@ DIRECTFB_CFLAGS = @DIRECTFB_CFLAGS@ DIRECTFB_LIBS = @DIRECTFB_LIBS@ +DIRECTSHOW_LIBS = @DIRECTSHOW_LIBS@ DIRECTSOUND_LIBS = @DIRECTSOUND_LIBS@ DIRECTX_CFLAGS = @DIRECTX_CFLAGS@ DIRECTX_LDFLAGS = @DIRECTX_LDFLAGS@ -DIVXDEC_LIBS = @DIVXDEC_LIBS@ -DIVXENC_LIBS = @DIVXENC_LIBS@ DLLTOOL = @DLLTOOL@ DSYMUTIL = @DSYMUTIL@ DTS_LIBS = @DTS_LIBS@ @@ -276,7 +275,9 @@ GIO_LIBS = @GIO_LIBS@ GLIB_CFLAGS = @GLIB_CFLAGS@ GLIB_COMPILE_SCHEMAS = @GLIB_COMPILE_SCHEMAS@ GLIB_EXTRA_CFLAGS = @GLIB_EXTRA_CFLAGS@ +GLIB_GENMARSHAL = @GLIB_GENMARSHAL@ GLIB_LIBS = @GLIB_LIBS@ +GLIB_MKENUMS = @GLIB_MKENUMS@ GLIB_PREFIX = @GLIB_PREFIX@ GLIB_REQ = @GLIB_REQ@ GME_LIBS = @GME_LIBS@ @@ -352,13 +353,14 @@ HAVE_CXX = @HAVE_CXX@ HAVE_DIRECT3D = @HAVE_DIRECT3D@ HAVE_DIRECT3D9 = @HAVE_DIRECT3D9@ HAVE_DIRECTDRAW = @HAVE_DIRECTDRAW@ +HAVE_DIRECTSHOW = @HAVE_DIRECTSHOW@ HAVE_DIRECTSOUND = @HAVE_DIRECTSOUND@ HAVE_DTS = @HAVE_DTS@ HAVE_FAAC = @HAVE_FAAC@ HAVE_FAAD = @HAVE_FAAD@ HAVE_FLITE = @HAVE_FLITE@ HAVE_GSM = @HAVE_GSM@ -HAVE_JP2K = @HAVE_JP2K@ +HAVE_JASPER = @HAVE_JASPER@ HAVE_NAS = @HAVE_NAS@ HAVE_VPX = @HAVE_VPX@ HAVE_WILDMIDI = @HAVE_WILDMIDI@ @@ -372,7 +374,7 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ INTLLIBS = @INTLLIBS@ INTL_MACOSX_LIBS = @INTL_MACOSX_LIBS@ -JP2K_LIBS = @JP2K_LIBS@ +JASPER_LIBS = @JASPER_LIBS@ KATE_CFLAGS = @KATE_CFLAGS@ KATE_LIBS = @KATE_LIBS@ LD = @LD@ @@ -408,6 +410,8 @@ MODPLUG_CFLAGS = @MODPLUG_CFLAGS@ MODPLUG_LIBS = @MODPLUG_LIBS@ MPEG2ENC_CFLAGS = @MPEG2ENC_CFLAGS@ MPEG2ENC_LIBS = @MPEG2ENC_LIBS@ +MPG123_CFLAGS = @MPG123_CFLAGS@ +MPG123_LIBS = @MPG123_LIBS@ MPLEX_CFLAGS = @MPLEX_CFLAGS@ MPLEX_LDFLAGS = @MPLEX_LDFLAGS@ MPLEX_LIBS = @MPLEX_LIBS@ diff --git a/ext/spc/gstspc.c b/ext/spc/gstspc.c index 4d76b242..2ea4ad80 100644 --- a/ext/spc/gstspc.c +++ b/ext/spc/gstspc.c @@ -325,7 +325,7 @@ gst_spc_dec_src_event (GstPad * pad, GstEvent * event) spc->seeking = TRUE; gst_pad_start_task (spc->srcpad, (GstTaskFunction) spc_play, - spc->srcpad); + spc->srcpad, NULL); GST_PAD_STREAM_UNLOCK (spc->srcpad); result = TRUE; @@ -491,10 +491,11 @@ spc_setup (GstSpcDec * spc) gst_tag_list_add (taglist, GST_TAG_MERGE_REPLACE, GST_TAG_ALBUM, info->game, NULL); if (info->year) { - GDate *date = g_date_new_dmy (1, 1, info->year); + GstDateTime *dt = gst_date_time_new_y (info->year); - gst_tag_list_add (taglist, GST_TAG_MERGE_REPLACE, GST_TAG_DATE, date, NULL); - g_date_free (date); + gst_tag_list_add (taglist, GST_TAG_MERGE_REPLACE, GST_TAG_DATE_TIME, dt, + NULL); + gst_date_time_unref (dt); } if (info->track) { gst_tag_list_add (taglist, GST_TAG_MERGE_REPLACE, GST_TAG_TRACK_NUMBER, @@ -534,7 +535,8 @@ spc_setup (GstSpcDec * spc) gst_pad_push_event (spc->srcpad, gst_event_new_new_segment (FALSE, 1.0, GST_FORMAT_TIME, 0, -1, 0)); - gst_pad_start_task (spc->srcpad, (GstTaskFunction) spc_play, spc->srcpad); + gst_pad_start_task (spc->srcpad, (GstTaskFunction) spc_play, spc->srcpad, + NULL); /* We can't unreference this buffer because we might need to re-initialize * the emulator with the original data during a reverse seek diff --git a/ext/swfdec/Makefile.in b/ext/swfdec/Makefile.in index 30f0e51a..ce09ac7c 100644 --- a/ext/swfdec/Makefile.in +++ b/ext/swfdec/Makefile.in @@ -1,4 +1,4 @@ -# Makefile.in generated by automake 1.11.5 from Makefile.am. +# Makefile.in generated by automake 1.11.6 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, @@ -237,11 +237,10 @@ DIRECT3D_LIBS = @DIRECT3D_LIBS@ DIRECTDRAW_LIBS = @DIRECTDRAW_LIBS@ DIRECTFB_CFLAGS = @DIRECTFB_CFLAGS@ DIRECTFB_LIBS = @DIRECTFB_LIBS@ +DIRECTSHOW_LIBS = @DIRECTSHOW_LIBS@ DIRECTSOUND_LIBS = @DIRECTSOUND_LIBS@ DIRECTX_CFLAGS = @DIRECTX_CFLAGS@ DIRECTX_LDFLAGS = @DIRECTX_LDFLAGS@ -DIVXDEC_LIBS = @DIVXDEC_LIBS@ -DIVXENC_LIBS = @DIVXENC_LIBS@ DLLTOOL = @DLLTOOL@ DSYMUTIL = @DSYMUTIL@ DTS_LIBS = @DTS_LIBS@ @@ -276,7 +275,9 @@ GIO_LIBS = @GIO_LIBS@ GLIB_CFLAGS = @GLIB_CFLAGS@ GLIB_COMPILE_SCHEMAS = @GLIB_COMPILE_SCHEMAS@ GLIB_EXTRA_CFLAGS = @GLIB_EXTRA_CFLAGS@ +GLIB_GENMARSHAL = @GLIB_GENMARSHAL@ GLIB_LIBS = @GLIB_LIBS@ +GLIB_MKENUMS = @GLIB_MKENUMS@ GLIB_PREFIX = @GLIB_PREFIX@ GLIB_REQ = @GLIB_REQ@ GME_LIBS = @GME_LIBS@ @@ -352,13 +353,14 @@ HAVE_CXX = @HAVE_CXX@ HAVE_DIRECT3D = @HAVE_DIRECT3D@ HAVE_DIRECT3D9 = @HAVE_DIRECT3D9@ HAVE_DIRECTDRAW = @HAVE_DIRECTDRAW@ +HAVE_DIRECTSHOW = @HAVE_DIRECTSHOW@ HAVE_DIRECTSOUND = @HAVE_DIRECTSOUND@ HAVE_DTS = @HAVE_DTS@ HAVE_FAAC = @HAVE_FAAC@ HAVE_FAAD = @HAVE_FAAD@ HAVE_FLITE = @HAVE_FLITE@ HAVE_GSM = @HAVE_GSM@ -HAVE_JP2K = @HAVE_JP2K@ +HAVE_JASPER = @HAVE_JASPER@ HAVE_NAS = @HAVE_NAS@ HAVE_VPX = @HAVE_VPX@ HAVE_WILDMIDI = @HAVE_WILDMIDI@ @@ -372,7 +374,7 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ INTLLIBS = @INTLLIBS@ INTL_MACOSX_LIBS = @INTL_MACOSX_LIBS@ -JP2K_LIBS = @JP2K_LIBS@ +JASPER_LIBS = @JASPER_LIBS@ KATE_CFLAGS = @KATE_CFLAGS@ KATE_LIBS = @KATE_LIBS@ LD = @LD@ @@ -408,6 +410,8 @@ MODPLUG_CFLAGS = @MODPLUG_CFLAGS@ MODPLUG_LIBS = @MODPLUG_LIBS@ MPEG2ENC_CFLAGS = @MPEG2ENC_CFLAGS@ MPEG2ENC_LIBS = @MPEG2ENC_LIBS@ +MPG123_CFLAGS = @MPG123_CFLAGS@ +MPG123_LIBS = @MPG123_LIBS@ MPLEX_CFLAGS = @MPLEX_CFLAGS@ MPLEX_LDFLAGS = @MPLEX_LDFLAGS@ MPLEX_LIBS = @MPLEX_LIBS@ diff --git a/ext/teletextdec/Makefile.in b/ext/teletextdec/Makefile.in index cbbb23d1..25c0dc72 100644 --- a/ext/teletextdec/Makefile.in +++ b/ext/teletextdec/Makefile.in @@ -1,4 +1,4 @@ -# Makefile.in generated by automake 1.11.5 from Makefile.am. +# Makefile.in generated by automake 1.11.6 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, @@ -239,11 +239,10 @@ DIRECT3D_LIBS = @DIRECT3D_LIBS@ DIRECTDRAW_LIBS = @DIRECTDRAW_LIBS@ DIRECTFB_CFLAGS = @DIRECTFB_CFLAGS@ DIRECTFB_LIBS = @DIRECTFB_LIBS@ +DIRECTSHOW_LIBS = @DIRECTSHOW_LIBS@ DIRECTSOUND_LIBS = @DIRECTSOUND_LIBS@ DIRECTX_CFLAGS = @DIRECTX_CFLAGS@ DIRECTX_LDFLAGS = @DIRECTX_LDFLAGS@ -DIVXDEC_LIBS = @DIVXDEC_LIBS@ -DIVXENC_LIBS = @DIVXENC_LIBS@ DLLTOOL = @DLLTOOL@ DSYMUTIL = @DSYMUTIL@ DTS_LIBS = @DTS_LIBS@ @@ -278,7 +277,9 @@ GIO_LIBS = @GIO_LIBS@ GLIB_CFLAGS = @GLIB_CFLAGS@ GLIB_COMPILE_SCHEMAS = @GLIB_COMPILE_SCHEMAS@ GLIB_EXTRA_CFLAGS = @GLIB_EXTRA_CFLAGS@ +GLIB_GENMARSHAL = @GLIB_GENMARSHAL@ GLIB_LIBS = @GLIB_LIBS@ +GLIB_MKENUMS = @GLIB_MKENUMS@ GLIB_PREFIX = @GLIB_PREFIX@ GLIB_REQ = @GLIB_REQ@ GME_LIBS = @GME_LIBS@ @@ -354,13 +355,14 @@ HAVE_CXX = @HAVE_CXX@ HAVE_DIRECT3D = @HAVE_DIRECT3D@ HAVE_DIRECT3D9 = @HAVE_DIRECT3D9@ HAVE_DIRECTDRAW = @HAVE_DIRECTDRAW@ +HAVE_DIRECTSHOW = @HAVE_DIRECTSHOW@ HAVE_DIRECTSOUND = @HAVE_DIRECTSOUND@ HAVE_DTS = @HAVE_DTS@ HAVE_FAAC = @HAVE_FAAC@ HAVE_FAAD = @HAVE_FAAD@ HAVE_FLITE = @HAVE_FLITE@ HAVE_GSM = @HAVE_GSM@ -HAVE_JP2K = @HAVE_JP2K@ +HAVE_JASPER = @HAVE_JASPER@ HAVE_NAS = @HAVE_NAS@ HAVE_VPX = @HAVE_VPX@ HAVE_WILDMIDI = @HAVE_WILDMIDI@ @@ -374,7 +376,7 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ INTLLIBS = @INTLLIBS@ INTL_MACOSX_LIBS = @INTL_MACOSX_LIBS@ -JP2K_LIBS = @JP2K_LIBS@ +JASPER_LIBS = @JASPER_LIBS@ KATE_CFLAGS = @KATE_CFLAGS@ KATE_LIBS = @KATE_LIBS@ LD = @LD@ @@ -410,6 +412,8 @@ MODPLUG_CFLAGS = @MODPLUG_CFLAGS@ MODPLUG_LIBS = @MODPLUG_LIBS@ MPEG2ENC_CFLAGS = @MPEG2ENC_CFLAGS@ MPEG2ENC_LIBS = @MPEG2ENC_LIBS@ +MPG123_CFLAGS = @MPG123_CFLAGS@ +MPG123_LIBS = @MPG123_LIBS@ MPLEX_CFLAGS = @MPLEX_CFLAGS@ MPLEX_LDFLAGS = @MPLEX_LDFLAGS@ MPLEX_LIBS = @MPLEX_LIBS@ diff --git a/ext/teletextdec/gstteletextdec.c b/ext/teletextdec/gstteletextdec.c index e61cba9b..93f51460 100644 --- a/ext/teletextdec/gstteletextdec.c +++ b/ext/teletextdec/gstteletextdec.c @@ -288,6 +288,8 @@ gst_teletextdec_init (GstTeletextDec * teletext, GstTeletextDecClass * klass) teletext->frame = g_new0 (GstTeletextFrame, 1); teletext->frame->sliced_begin = g_new (vbi_sliced, MAX_SLICES); + teletext->frame->current_slice = teletext->frame->sliced_begin; + teletext->frame->sliced_end = teletext->frame->sliced_begin + MAX_SLICES; teletext->last_ts = 0; @@ -909,7 +911,7 @@ gst_teletextdec_export_html_page (GstTeletextDec * teletext, vbi_page * page, GstCaps *caps; GstFlowReturn ret; gchar *html; - guint size; + gssize size; vbi_export *ex; gchar *err; @@ -1133,11 +1135,14 @@ gst_teletextdec_line_address (GstTeletextDec * teletext, return VBI_NEW_FRAME; } + /* FIXME : This never happens, since lofp is a guint8 */ +#if 0 /* new segment flag */ if (lofp < 0) { GST_LOG_OBJECT (teletext, "New frame"); return VBI_NEW_FRAME; } +#endif frame->last_field = field; frame->last_field_line = field_line; diff --git a/ext/timidity/Makefile.in b/ext/timidity/Makefile.in index b1bb77c0..00c2b0b1 100644 --- a/ext/timidity/Makefile.in +++ b/ext/timidity/Makefile.in @@ -1,4 +1,4 @@ -# Makefile.in generated by automake 1.11.5 from Makefile.am. +# Makefile.in generated by automake 1.11.6 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, @@ -256,11 +256,10 @@ DIRECT3D_LIBS = @DIRECT3D_LIBS@ DIRECTDRAW_LIBS = @DIRECTDRAW_LIBS@ DIRECTFB_CFLAGS = @DIRECTFB_CFLAGS@ DIRECTFB_LIBS = @DIRECTFB_LIBS@ +DIRECTSHOW_LIBS = @DIRECTSHOW_LIBS@ DIRECTSOUND_LIBS = @DIRECTSOUND_LIBS@ DIRECTX_CFLAGS = @DIRECTX_CFLAGS@ DIRECTX_LDFLAGS = @DIRECTX_LDFLAGS@ -DIVXDEC_LIBS = @DIVXDEC_LIBS@ -DIVXENC_LIBS = @DIVXENC_LIBS@ DLLTOOL = @DLLTOOL@ DSYMUTIL = @DSYMUTIL@ DTS_LIBS = @DTS_LIBS@ @@ -295,7 +294,9 @@ GIO_LIBS = @GIO_LIBS@ GLIB_CFLAGS = @GLIB_CFLAGS@ GLIB_COMPILE_SCHEMAS = @GLIB_COMPILE_SCHEMAS@ GLIB_EXTRA_CFLAGS = @GLIB_EXTRA_CFLAGS@ +GLIB_GENMARSHAL = @GLIB_GENMARSHAL@ GLIB_LIBS = @GLIB_LIBS@ +GLIB_MKENUMS = @GLIB_MKENUMS@ GLIB_PREFIX = @GLIB_PREFIX@ GLIB_REQ = @GLIB_REQ@ GME_LIBS = @GME_LIBS@ @@ -371,13 +372,14 @@ HAVE_CXX = @HAVE_CXX@ HAVE_DIRECT3D = @HAVE_DIRECT3D@ HAVE_DIRECT3D9 = @HAVE_DIRECT3D9@ HAVE_DIRECTDRAW = @HAVE_DIRECTDRAW@ +HAVE_DIRECTSHOW = @HAVE_DIRECTSHOW@ HAVE_DIRECTSOUND = @HAVE_DIRECTSOUND@ HAVE_DTS = @HAVE_DTS@ HAVE_FAAC = @HAVE_FAAC@ HAVE_FAAD = @HAVE_FAAD@ HAVE_FLITE = @HAVE_FLITE@ HAVE_GSM = @HAVE_GSM@ -HAVE_JP2K = @HAVE_JP2K@ +HAVE_JASPER = @HAVE_JASPER@ HAVE_NAS = @HAVE_NAS@ HAVE_VPX = @HAVE_VPX@ HAVE_WILDMIDI = @HAVE_WILDMIDI@ @@ -391,7 +393,7 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ INTLLIBS = @INTLLIBS@ INTL_MACOSX_LIBS = @INTL_MACOSX_LIBS@ -JP2K_LIBS = @JP2K_LIBS@ +JASPER_LIBS = @JASPER_LIBS@ KATE_CFLAGS = @KATE_CFLAGS@ KATE_LIBS = @KATE_LIBS@ LD = @LD@ @@ -427,6 +429,8 @@ MODPLUG_CFLAGS = @MODPLUG_CFLAGS@ MODPLUG_LIBS = @MODPLUG_LIBS@ MPEG2ENC_CFLAGS = @MPEG2ENC_CFLAGS@ MPEG2ENC_LIBS = @MPEG2ENC_LIBS@ +MPG123_CFLAGS = @MPG123_CFLAGS@ +MPG123_LIBS = @MPG123_LIBS@ MPLEX_CFLAGS = @MPLEX_CFLAGS@ MPLEX_LDFLAGS = @MPLEX_LDFLAGS@ MPLEX_LIBS = @MPLEX_LIBS@ diff --git a/ext/timidity/gsttimidity.c b/ext/timidity/gsttimidity.c index 1857d53b..c3dfa22c 100644 --- a/ext/timidity/gsttimidity.c +++ b/ext/timidity/gsttimidity.c @@ -407,7 +407,7 @@ gst_timidity_src_event (GstPad * pad, GstEvent * event) gst_segment_set_seek (timidity->o_segment, rate, dst_format, flags, start_type, start, stop_type, stop, &update); - if ((flags && GST_SEEK_FLAG_SEGMENT) == GST_SEEK_FLAG_SEGMENT) { + if (flags & GST_SEEK_FLAG_SEGMENT) { GST_DEBUG_OBJECT (timidity, "received segment seek %d, %d", (gint) start_type, (gint) stop_type); } else { @@ -423,7 +423,7 @@ gst_timidity_src_event (GstPad * pad, GstEvent * event) timidity->o_seek = TRUE; gst_pad_start_task (timidity->sinkpad, - (GstTaskFunction) gst_timidity_loop, timidity->sinkpad); + (GstTaskFunction) gst_timidity_loop, timidity->sinkpad, NULL); GST_PAD_STREAM_UNLOCK (timidity->sinkpad); GST_DEBUG ("seek done"); @@ -451,7 +451,8 @@ static gboolean gst_timidity_activatepull (GstPad * pad, gboolean active) { if (active) { - return gst_pad_start_task (pad, (GstTaskFunction) gst_timidity_loop, pad); + return gst_pad_start_task (pad, (GstTaskFunction) gst_timidity_loop, pad, + NULL); } else { return gst_pad_stop_task (pad); } diff --git a/ext/timidity/gstwildmidi.c b/ext/timidity/gstwildmidi.c index a37264c2..26062459 100644 --- a/ext/timidity/gstwildmidi.c +++ b/ext/timidity/gstwildmidi.c @@ -524,7 +524,7 @@ gst_wildmidi_do_seek (GstWildmidi * wildmidi, GstEvent * event) gst_wildmidi_get_new_segment_event (wildmidi, GST_FORMAT_TIME)); gst_pad_start_task (wildmidi->sinkpad, - (GstTaskFunction) gst_wildmidi_loop, wildmidi->sinkpad); + (GstTaskFunction) gst_wildmidi_loop, wildmidi->sinkpad, NULL); wildmidi->discont = TRUE; GST_PAD_STREAM_UNLOCK (wildmidi->sinkpad); @@ -567,7 +567,8 @@ static gboolean gst_wildmidi_activatepull (GstPad * pad, gboolean active) { if (active) { - return gst_pad_start_task (pad, (GstTaskFunction) gst_wildmidi_loop, pad); + return gst_pad_start_task (pad, (GstTaskFunction) gst_wildmidi_loop, pad, + NULL); } else { return gst_pad_stop_task (pad); } @@ -777,7 +778,7 @@ gst_wildmidi_sink_event (GstPad * pad, GstEvent * event) wildmidi->state = GST_WILDMIDI_STATE_PARSE; /* now start the parsing task */ gst_pad_start_task (wildmidi->sinkpad, - (GstTaskFunction) gst_wildmidi_loop, wildmidi->sinkpad); + (GstTaskFunction) gst_wildmidi_loop, wildmidi->sinkpad, NULL); /* don't forward the event */ gst_event_unref (event); break; diff --git a/ext/voaacenc/Makefile.in b/ext/voaacenc/Makefile.in index c7ce9d27..c83b90bf 100644 --- a/ext/voaacenc/Makefile.in +++ b/ext/voaacenc/Makefile.in @@ -1,4 +1,4 @@ -# Makefile.in generated by automake 1.11.5 from Makefile.am. +# Makefile.in generated by automake 1.11.6 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, @@ -239,11 +239,10 @@ DIRECT3D_LIBS = @DIRECT3D_LIBS@ DIRECTDRAW_LIBS = @DIRECTDRAW_LIBS@ DIRECTFB_CFLAGS = @DIRECTFB_CFLAGS@ DIRECTFB_LIBS = @DIRECTFB_LIBS@ +DIRECTSHOW_LIBS = @DIRECTSHOW_LIBS@ DIRECTSOUND_LIBS = @DIRECTSOUND_LIBS@ DIRECTX_CFLAGS = @DIRECTX_CFLAGS@ DIRECTX_LDFLAGS = @DIRECTX_LDFLAGS@ -DIVXDEC_LIBS = @DIVXDEC_LIBS@ -DIVXENC_LIBS = @DIVXENC_LIBS@ DLLTOOL = @DLLTOOL@ DSYMUTIL = @DSYMUTIL@ DTS_LIBS = @DTS_LIBS@ @@ -278,7 +277,9 @@ GIO_LIBS = @GIO_LIBS@ GLIB_CFLAGS = @GLIB_CFLAGS@ GLIB_COMPILE_SCHEMAS = @GLIB_COMPILE_SCHEMAS@ GLIB_EXTRA_CFLAGS = @GLIB_EXTRA_CFLAGS@ +GLIB_GENMARSHAL = @GLIB_GENMARSHAL@ GLIB_LIBS = @GLIB_LIBS@ +GLIB_MKENUMS = @GLIB_MKENUMS@ GLIB_PREFIX = @GLIB_PREFIX@ GLIB_REQ = @GLIB_REQ@ GME_LIBS = @GME_LIBS@ @@ -354,13 +355,14 @@ HAVE_CXX = @HAVE_CXX@ HAVE_DIRECT3D = @HAVE_DIRECT3D@ HAVE_DIRECT3D9 = @HAVE_DIRECT3D9@ HAVE_DIRECTDRAW = @HAVE_DIRECTDRAW@ +HAVE_DIRECTSHOW = @HAVE_DIRECTSHOW@ HAVE_DIRECTSOUND = @HAVE_DIRECTSOUND@ HAVE_DTS = @HAVE_DTS@ HAVE_FAAC = @HAVE_FAAC@ HAVE_FAAD = @HAVE_FAAD@ HAVE_FLITE = @HAVE_FLITE@ HAVE_GSM = @HAVE_GSM@ -HAVE_JP2K = @HAVE_JP2K@ +HAVE_JASPER = @HAVE_JASPER@ HAVE_NAS = @HAVE_NAS@ HAVE_VPX = @HAVE_VPX@ HAVE_WILDMIDI = @HAVE_WILDMIDI@ @@ -374,7 +376,7 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ INTLLIBS = @INTLLIBS@ INTL_MACOSX_LIBS = @INTL_MACOSX_LIBS@ -JP2K_LIBS = @JP2K_LIBS@ +JASPER_LIBS = @JASPER_LIBS@ KATE_CFLAGS = @KATE_CFLAGS@ KATE_LIBS = @KATE_LIBS@ LD = @LD@ @@ -410,6 +412,8 @@ MODPLUG_CFLAGS = @MODPLUG_CFLAGS@ MODPLUG_LIBS = @MODPLUG_LIBS@ MPEG2ENC_CFLAGS = @MPEG2ENC_CFLAGS@ MPEG2ENC_LIBS = @MPEG2ENC_LIBS@ +MPG123_CFLAGS = @MPG123_CFLAGS@ +MPG123_LIBS = @MPG123_LIBS@ MPLEX_CFLAGS = @MPLEX_CFLAGS@ MPLEX_LDFLAGS = @MPLEX_LDFLAGS@ MPLEX_LIBS = @MPLEX_LIBS@ diff --git a/ext/voaacenc/gstvoaacenc.c b/ext/voaacenc/gstvoaacenc.c index 09bb0534..b70a0288 100644 --- a/ext/voaacenc/gstvoaacenc.c +++ b/ext/voaacenc/gstvoaacenc.c @@ -306,7 +306,8 @@ gst_voaacenc_get_sink_caps (void) static GstCaps * gst_voaacenc_getcaps (GstAudioEncoder * benc, GstCaps * filter) { - return gst_audio_encoder_proxy_getcaps (benc, gst_voaacenc_get_sink_caps ()); + return gst_audio_encoder_proxy_getcaps (benc, gst_voaacenc_get_sink_caps (), + filter); } /* check downstream caps to configure format */ diff --git a/ext/voamrwbenc/Makefile.in b/ext/voamrwbenc/Makefile.in index d4c110cd..5d19c68d 100644 --- a/ext/voamrwbenc/Makefile.in +++ b/ext/voamrwbenc/Makefile.in @@ -1,4 +1,4 @@ -# Makefile.in generated by automake 1.11.5 from Makefile.am. +# Makefile.in generated by automake 1.11.6 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, @@ -240,11 +240,10 @@ DIRECT3D_LIBS = @DIRECT3D_LIBS@ DIRECTDRAW_LIBS = @DIRECTDRAW_LIBS@ DIRECTFB_CFLAGS = @DIRECTFB_CFLAGS@ DIRECTFB_LIBS = @DIRECTFB_LIBS@ +DIRECTSHOW_LIBS = @DIRECTSHOW_LIBS@ DIRECTSOUND_LIBS = @DIRECTSOUND_LIBS@ DIRECTX_CFLAGS = @DIRECTX_CFLAGS@ DIRECTX_LDFLAGS = @DIRECTX_LDFLAGS@ -DIVXDEC_LIBS = @DIVXDEC_LIBS@ -DIVXENC_LIBS = @DIVXENC_LIBS@ DLLTOOL = @DLLTOOL@ DSYMUTIL = @DSYMUTIL@ DTS_LIBS = @DTS_LIBS@ @@ -279,7 +278,9 @@ GIO_LIBS = @GIO_LIBS@ GLIB_CFLAGS = @GLIB_CFLAGS@ GLIB_COMPILE_SCHEMAS = @GLIB_COMPILE_SCHEMAS@ GLIB_EXTRA_CFLAGS = @GLIB_EXTRA_CFLAGS@ +GLIB_GENMARSHAL = @GLIB_GENMARSHAL@ GLIB_LIBS = @GLIB_LIBS@ +GLIB_MKENUMS = @GLIB_MKENUMS@ GLIB_PREFIX = @GLIB_PREFIX@ GLIB_REQ = @GLIB_REQ@ GME_LIBS = @GME_LIBS@ @@ -355,13 +356,14 @@ HAVE_CXX = @HAVE_CXX@ HAVE_DIRECT3D = @HAVE_DIRECT3D@ HAVE_DIRECT3D9 = @HAVE_DIRECT3D9@ HAVE_DIRECTDRAW = @HAVE_DIRECTDRAW@ +HAVE_DIRECTSHOW = @HAVE_DIRECTSHOW@ HAVE_DIRECTSOUND = @HAVE_DIRECTSOUND@ HAVE_DTS = @HAVE_DTS@ HAVE_FAAC = @HAVE_FAAC@ HAVE_FAAD = @HAVE_FAAD@ HAVE_FLITE = @HAVE_FLITE@ HAVE_GSM = @HAVE_GSM@ -HAVE_JP2K = @HAVE_JP2K@ +HAVE_JASPER = @HAVE_JASPER@ HAVE_NAS = @HAVE_NAS@ HAVE_VPX = @HAVE_VPX@ HAVE_WILDMIDI = @HAVE_WILDMIDI@ @@ -375,7 +377,7 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ INTLLIBS = @INTLLIBS@ INTL_MACOSX_LIBS = @INTL_MACOSX_LIBS@ -JP2K_LIBS = @JP2K_LIBS@ +JASPER_LIBS = @JASPER_LIBS@ KATE_CFLAGS = @KATE_CFLAGS@ KATE_LIBS = @KATE_LIBS@ LD = @LD@ @@ -411,6 +413,8 @@ MODPLUG_CFLAGS = @MODPLUG_CFLAGS@ MODPLUG_LIBS = @MODPLUG_LIBS@ MPEG2ENC_CFLAGS = @MPEG2ENC_CFLAGS@ MPEG2ENC_LIBS = @MPEG2ENC_LIBS@ +MPG123_CFLAGS = @MPG123_CFLAGS@ +MPG123_LIBS = @MPG123_LIBS@ MPLEX_CFLAGS = @MPLEX_CFLAGS@ MPLEX_LDFLAGS = @MPLEX_LDFLAGS@ MPLEX_LIBS = @MPLEX_LIBS@ diff --git a/ext/vp8/Makefile.in b/ext/vp8/Makefile.in index 4381ffe3..e2770d78 100644 --- a/ext/vp8/Makefile.in +++ b/ext/vp8/Makefile.in @@ -1,4 +1,4 @@ -# Makefile.in generated by automake 1.11.5 from Makefile.am. +# Makefile.in generated by automake 1.11.6 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, @@ -242,11 +242,10 @@ DIRECT3D_LIBS = @DIRECT3D_LIBS@ DIRECTDRAW_LIBS = @DIRECTDRAW_LIBS@ DIRECTFB_CFLAGS = @DIRECTFB_CFLAGS@ DIRECTFB_LIBS = @DIRECTFB_LIBS@ +DIRECTSHOW_LIBS = @DIRECTSHOW_LIBS@ DIRECTSOUND_LIBS = @DIRECTSOUND_LIBS@ DIRECTX_CFLAGS = @DIRECTX_CFLAGS@ DIRECTX_LDFLAGS = @DIRECTX_LDFLAGS@ -DIVXDEC_LIBS = @DIVXDEC_LIBS@ -DIVXENC_LIBS = @DIVXENC_LIBS@ DLLTOOL = @DLLTOOL@ DSYMUTIL = @DSYMUTIL@ DTS_LIBS = @DTS_LIBS@ @@ -281,7 +280,9 @@ GIO_LIBS = @GIO_LIBS@ GLIB_CFLAGS = @GLIB_CFLAGS@ GLIB_COMPILE_SCHEMAS = @GLIB_COMPILE_SCHEMAS@ GLIB_EXTRA_CFLAGS = @GLIB_EXTRA_CFLAGS@ +GLIB_GENMARSHAL = @GLIB_GENMARSHAL@ GLIB_LIBS = @GLIB_LIBS@ +GLIB_MKENUMS = @GLIB_MKENUMS@ GLIB_PREFIX = @GLIB_PREFIX@ GLIB_REQ = @GLIB_REQ@ GME_LIBS = @GME_LIBS@ @@ -357,13 +358,14 @@ HAVE_CXX = @HAVE_CXX@ HAVE_DIRECT3D = @HAVE_DIRECT3D@ HAVE_DIRECT3D9 = @HAVE_DIRECT3D9@ HAVE_DIRECTDRAW = @HAVE_DIRECTDRAW@ +HAVE_DIRECTSHOW = @HAVE_DIRECTSHOW@ HAVE_DIRECTSOUND = @HAVE_DIRECTSOUND@ HAVE_DTS = @HAVE_DTS@ HAVE_FAAC = @HAVE_FAAC@ HAVE_FAAD = @HAVE_FAAD@ HAVE_FLITE = @HAVE_FLITE@ HAVE_GSM = @HAVE_GSM@ -HAVE_JP2K = @HAVE_JP2K@ +HAVE_JASPER = @HAVE_JASPER@ HAVE_NAS = @HAVE_NAS@ HAVE_VPX = @HAVE_VPX@ HAVE_WILDMIDI = @HAVE_WILDMIDI@ @@ -377,7 +379,7 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ INTLLIBS = @INTLLIBS@ INTL_MACOSX_LIBS = @INTL_MACOSX_LIBS@ -JP2K_LIBS = @JP2K_LIBS@ +JASPER_LIBS = @JASPER_LIBS@ KATE_CFLAGS = @KATE_CFLAGS@ KATE_LIBS = @KATE_LIBS@ LD = @LD@ @@ -413,6 +415,8 @@ MODPLUG_CFLAGS = @MODPLUG_CFLAGS@ MODPLUG_LIBS = @MODPLUG_LIBS@ MPEG2ENC_CFLAGS = @MPEG2ENC_CFLAGS@ MPEG2ENC_LIBS = @MPEG2ENC_LIBS@ +MPG123_CFLAGS = @MPG123_CFLAGS@ +MPG123_LIBS = @MPG123_LIBS@ MPLEX_CFLAGS = @MPLEX_CFLAGS@ MPLEX_LDFLAGS = @MPLEX_LDFLAGS@ MPLEX_LIBS = @MPLEX_LIBS@ diff --git a/ext/vp8/gstvp8dec.c b/ext/vp8/gstvp8dec.c index cfdb3e19..9eb1ca36 100644 --- a/ext/vp8/gstvp8dec.c +++ b/ext/vp8/gstvp8dec.c @@ -327,7 +327,7 @@ gst_vp8_dec_send_tags (GstVP8Dec * dec) GST_TAG_VIDEO_CODEC, "VP8 video", NULL); gst_pad_push_event (GST_VIDEO_DECODER_SRC_PAD (dec), - gst_event_new_tag ("GstDecoder", list)); + gst_event_new_tag (list)); } static void @@ -487,7 +487,7 @@ gst_vp8_dec_handle_frame (GstVideoDecoder * decoder, GstVideoCodecFrame * frame) (double) -deadline / GST_SECOND); gst_video_decoder_drop_frame (decoder, frame); } else { - ret = gst_video_decoder_alloc_output_frame (decoder, frame); + ret = gst_video_decoder_allocate_output_frame (decoder, frame); if (ret == GST_FLOW_OK) { gst_vp8_dec_image_to_buffer (dec, img, frame->output_buffer); @@ -526,7 +526,7 @@ gst_vp8_dec_decide_allocation (GstVideoDecoder * bdec, GstQuery * query) g_assert (pool != NULL); config = gst_buffer_pool_get_config (pool); - if (gst_query_has_allocation_meta (query, GST_VIDEO_META_API_TYPE)) { + if (gst_query_find_allocation_meta (query, GST_VIDEO_META_API_TYPE, NULL)) { gst_buffer_pool_config_add_option (config, GST_BUFFER_POOL_OPTION_VIDEO_META); } diff --git a/ext/vp8/gstvp8enc.c b/ext/vp8/gstvp8enc.c index aa4d85ac..78f97bf3 100644 --- a/ext/vp8/gstvp8enc.c +++ b/ext/vp8/gstvp8enc.c @@ -920,6 +920,8 @@ gst_vp8_enc_set_format (GstVideoEncoder * video_encoder, gst_video_encoder_set_output_state (video_encoder, caps, state); gst_video_codec_state_unref (output_state); + gst_video_encoder_negotiate (GST_VIDEO_ENCODER (encoder)); + return ret; } @@ -1098,7 +1100,7 @@ gst_vp8_enc_handle_frame (GstVideoEncoder * video_encoder, gst_video_codec_frame_set_user_data (frame, NULL, NULL); return FALSE; } - + gst_video_codec_frame_unref (frame); return gst_vp8_enc_process (encoder); } @@ -1213,7 +1215,7 @@ gst_vp8_enc_sink_event (GstVideoEncoder * benc, GstEvent * event) static gboolean gst_vp8_enc_propose_allocation (GstVideoEncoder * encoder, GstQuery * query) { - gst_query_add_allocation_meta (query, GST_VIDEO_META_API_TYPE); + gst_query_add_allocation_meta (query, GST_VIDEO_META_API_TYPE, NULL); return GST_VIDEO_ENCODER_CLASS (parent_class)->propose_allocation (encoder, query); diff --git a/ext/wayland/Makefile.am b/ext/wayland/Makefile.am index c2dea73c..e346b4c6 100644 --- a/ext/wayland/Makefile.am +++ b/ext/wayland/Makefile.am @@ -5,7 +5,6 @@ libgstwaylandsink_la_CFLAGS = $(GST_CFLAGS) $(GST_PLUGINS_BASE_CFLAGS) \ $(WAYLAND_CFLAGS) libgstwaylandsink_la_LIBADD = $(GST_PLUGINS_BASE_LIBS) \ -lgstvideo-$(GST_API_VERSION) \ - -lgstinterfaces-$(GST_API_VERSION) \ $(WAYLAND_LIBS) $(LIBOIL_LIBS) libgstwaylandsink_la_LDFLAGS = $(GST_PLUGIN_LDFLAGS) libgstwaylandsink_la_LIBTOOLFLAGS = --tag=disable-static diff --git a/ext/wayland/Makefile.in b/ext/wayland/Makefile.in index c295c021..cfa348c9 100644 --- a/ext/wayland/Makefile.in +++ b/ext/wayland/Makefile.in @@ -1,4 +1,4 @@ -# Makefile.in generated by automake 1.11.5 from Makefile.am. +# Makefile.in generated by automake 1.11.6 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, @@ -238,11 +238,10 @@ DIRECT3D_LIBS = @DIRECT3D_LIBS@ DIRECTDRAW_LIBS = @DIRECTDRAW_LIBS@ DIRECTFB_CFLAGS = @DIRECTFB_CFLAGS@ DIRECTFB_LIBS = @DIRECTFB_LIBS@ +DIRECTSHOW_LIBS = @DIRECTSHOW_LIBS@ DIRECTSOUND_LIBS = @DIRECTSOUND_LIBS@ DIRECTX_CFLAGS = @DIRECTX_CFLAGS@ DIRECTX_LDFLAGS = @DIRECTX_LDFLAGS@ -DIVXDEC_LIBS = @DIVXDEC_LIBS@ -DIVXENC_LIBS = @DIVXENC_LIBS@ DLLTOOL = @DLLTOOL@ DSYMUTIL = @DSYMUTIL@ DTS_LIBS = @DTS_LIBS@ @@ -277,7 +276,9 @@ GIO_LIBS = @GIO_LIBS@ GLIB_CFLAGS = @GLIB_CFLAGS@ GLIB_COMPILE_SCHEMAS = @GLIB_COMPILE_SCHEMAS@ GLIB_EXTRA_CFLAGS = @GLIB_EXTRA_CFLAGS@ +GLIB_GENMARSHAL = @GLIB_GENMARSHAL@ GLIB_LIBS = @GLIB_LIBS@ +GLIB_MKENUMS = @GLIB_MKENUMS@ GLIB_PREFIX = @GLIB_PREFIX@ GLIB_REQ = @GLIB_REQ@ GME_LIBS = @GME_LIBS@ @@ -353,13 +354,14 @@ HAVE_CXX = @HAVE_CXX@ HAVE_DIRECT3D = @HAVE_DIRECT3D@ HAVE_DIRECT3D9 = @HAVE_DIRECT3D9@ HAVE_DIRECTDRAW = @HAVE_DIRECTDRAW@ +HAVE_DIRECTSHOW = @HAVE_DIRECTSHOW@ HAVE_DIRECTSOUND = @HAVE_DIRECTSOUND@ HAVE_DTS = @HAVE_DTS@ HAVE_FAAC = @HAVE_FAAC@ HAVE_FAAD = @HAVE_FAAD@ HAVE_FLITE = @HAVE_FLITE@ HAVE_GSM = @HAVE_GSM@ -HAVE_JP2K = @HAVE_JP2K@ +HAVE_JASPER = @HAVE_JASPER@ HAVE_NAS = @HAVE_NAS@ HAVE_VPX = @HAVE_VPX@ HAVE_WILDMIDI = @HAVE_WILDMIDI@ @@ -373,7 +375,7 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ INTLLIBS = @INTLLIBS@ INTL_MACOSX_LIBS = @INTL_MACOSX_LIBS@ -JP2K_LIBS = @JP2K_LIBS@ +JASPER_LIBS = @JASPER_LIBS@ KATE_CFLAGS = @KATE_CFLAGS@ KATE_LIBS = @KATE_LIBS@ LD = @LD@ @@ -409,6 +411,8 @@ MODPLUG_CFLAGS = @MODPLUG_CFLAGS@ MODPLUG_LIBS = @MODPLUG_LIBS@ MPEG2ENC_CFLAGS = @MPEG2ENC_CFLAGS@ MPEG2ENC_LIBS = @MPEG2ENC_LIBS@ +MPG123_CFLAGS = @MPG123_CFLAGS@ +MPG123_LIBS = @MPG123_LIBS@ MPLEX_CFLAGS = @MPLEX_CFLAGS@ MPLEX_LDFLAGS = @MPLEX_LDFLAGS@ MPLEX_LIBS = @MPLEX_LIBS@ @@ -606,7 +610,6 @@ libgstwaylandsink_la_CFLAGS = $(GST_CFLAGS) $(GST_PLUGINS_BASE_CFLAGS) \ libgstwaylandsink_la_LIBADD = $(GST_PLUGINS_BASE_LIBS) \ -lgstvideo-$(GST_API_VERSION) \ - -lgstinterfaces-$(GST_API_VERSION) \ $(WAYLAND_LIBS) $(LIBOIL_LIBS) libgstwaylandsink_la_LDFLAGS = $(GST_PLUGIN_LDFLAGS) diff --git a/ext/wayland/gstwaylandsink.c b/ext/wayland/gstwaylandsink.c index 5847d74c..bfe68026 100644 --- a/ext/wayland/gstwaylandsink.c +++ b/ext/wayland/gstwaylandsink.c @@ -481,7 +481,7 @@ gst_wayland_sink_render (GstBaseSink * bsink, GstBuffer * buffer) GstBuffer *to_render; GstWlMeta *meta; - GST_LOG_OBJECT (sink, "render buffer %p" GST_TIME_FORMAT, buffer); + GST_LOG_OBJECT (sink, "render buffer %p", buffer); if (!sink->window) create_window (sink, sink->display, sink->video_width, sink->video_height); diff --git a/ext/xvid/Makefile.in b/ext/xvid/Makefile.in index 8b24cabd..477795e4 100644 --- a/ext/xvid/Makefile.in +++ b/ext/xvid/Makefile.in @@ -1,4 +1,4 @@ -# Makefile.in generated by automake 1.11.5 from Makefile.am. +# Makefile.in generated by automake 1.11.6 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, @@ -238,11 +238,10 @@ DIRECT3D_LIBS = @DIRECT3D_LIBS@ DIRECTDRAW_LIBS = @DIRECTDRAW_LIBS@ DIRECTFB_CFLAGS = @DIRECTFB_CFLAGS@ DIRECTFB_LIBS = @DIRECTFB_LIBS@ +DIRECTSHOW_LIBS = @DIRECTSHOW_LIBS@ DIRECTSOUND_LIBS = @DIRECTSOUND_LIBS@ DIRECTX_CFLAGS = @DIRECTX_CFLAGS@ DIRECTX_LDFLAGS = @DIRECTX_LDFLAGS@ -DIVXDEC_LIBS = @DIVXDEC_LIBS@ -DIVXENC_LIBS = @DIVXENC_LIBS@ DLLTOOL = @DLLTOOL@ DSYMUTIL = @DSYMUTIL@ DTS_LIBS = @DTS_LIBS@ @@ -277,7 +276,9 @@ GIO_LIBS = @GIO_LIBS@ GLIB_CFLAGS = @GLIB_CFLAGS@ GLIB_COMPILE_SCHEMAS = @GLIB_COMPILE_SCHEMAS@ GLIB_EXTRA_CFLAGS = @GLIB_EXTRA_CFLAGS@ +GLIB_GENMARSHAL = @GLIB_GENMARSHAL@ GLIB_LIBS = @GLIB_LIBS@ +GLIB_MKENUMS = @GLIB_MKENUMS@ GLIB_PREFIX = @GLIB_PREFIX@ GLIB_REQ = @GLIB_REQ@ GME_LIBS = @GME_LIBS@ @@ -353,13 +354,14 @@ HAVE_CXX = @HAVE_CXX@ HAVE_DIRECT3D = @HAVE_DIRECT3D@ HAVE_DIRECT3D9 = @HAVE_DIRECT3D9@ HAVE_DIRECTDRAW = @HAVE_DIRECTDRAW@ +HAVE_DIRECTSHOW = @HAVE_DIRECTSHOW@ HAVE_DIRECTSOUND = @HAVE_DIRECTSOUND@ HAVE_DTS = @HAVE_DTS@ HAVE_FAAC = @HAVE_FAAC@ HAVE_FAAD = @HAVE_FAAD@ HAVE_FLITE = @HAVE_FLITE@ HAVE_GSM = @HAVE_GSM@ -HAVE_JP2K = @HAVE_JP2K@ +HAVE_JASPER = @HAVE_JASPER@ HAVE_NAS = @HAVE_NAS@ HAVE_VPX = @HAVE_VPX@ HAVE_WILDMIDI = @HAVE_WILDMIDI@ @@ -373,7 +375,7 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ INTLLIBS = @INTLLIBS@ INTL_MACOSX_LIBS = @INTL_MACOSX_LIBS@ -JP2K_LIBS = @JP2K_LIBS@ +JASPER_LIBS = @JASPER_LIBS@ KATE_CFLAGS = @KATE_CFLAGS@ KATE_LIBS = @KATE_LIBS@ LD = @LD@ @@ -409,6 +411,8 @@ MODPLUG_CFLAGS = @MODPLUG_CFLAGS@ MODPLUG_LIBS = @MODPLUG_LIBS@ MPEG2ENC_CFLAGS = @MPEG2ENC_CFLAGS@ MPEG2ENC_LIBS = @MPEG2ENC_LIBS@ +MPG123_CFLAGS = @MPG123_CFLAGS@ +MPG123_LIBS = @MPG123_LIBS@ MPLEX_CFLAGS = @MPLEX_CFLAGS@ MPLEX_LDFLAGS = @MPLEX_LDFLAGS@ MPLEX_LIBS = @MPLEX_LIBS@ diff --git a/ext/zbar/Makefile.in b/ext/zbar/Makefile.in index 5242fdcc..bf8e45d1 100644 --- a/ext/zbar/Makefile.in +++ b/ext/zbar/Makefile.in @@ -1,4 +1,4 @@ -# Makefile.in generated by automake 1.11.5 from Makefile.am. +# Makefile.in generated by automake 1.11.6 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, @@ -238,11 +238,10 @@ DIRECT3D_LIBS = @DIRECT3D_LIBS@ DIRECTDRAW_LIBS = @DIRECTDRAW_LIBS@ DIRECTFB_CFLAGS = @DIRECTFB_CFLAGS@ DIRECTFB_LIBS = @DIRECTFB_LIBS@ +DIRECTSHOW_LIBS = @DIRECTSHOW_LIBS@ DIRECTSOUND_LIBS = @DIRECTSOUND_LIBS@ DIRECTX_CFLAGS = @DIRECTX_CFLAGS@ DIRECTX_LDFLAGS = @DIRECTX_LDFLAGS@ -DIVXDEC_LIBS = @DIVXDEC_LIBS@ -DIVXENC_LIBS = @DIVXENC_LIBS@ DLLTOOL = @DLLTOOL@ DSYMUTIL = @DSYMUTIL@ DTS_LIBS = @DTS_LIBS@ @@ -277,7 +276,9 @@ GIO_LIBS = @GIO_LIBS@ GLIB_CFLAGS = @GLIB_CFLAGS@ GLIB_COMPILE_SCHEMAS = @GLIB_COMPILE_SCHEMAS@ GLIB_EXTRA_CFLAGS = @GLIB_EXTRA_CFLAGS@ +GLIB_GENMARSHAL = @GLIB_GENMARSHAL@ GLIB_LIBS = @GLIB_LIBS@ +GLIB_MKENUMS = @GLIB_MKENUMS@ GLIB_PREFIX = @GLIB_PREFIX@ GLIB_REQ = @GLIB_REQ@ GME_LIBS = @GME_LIBS@ @@ -353,13 +354,14 @@ HAVE_CXX = @HAVE_CXX@ HAVE_DIRECT3D = @HAVE_DIRECT3D@ HAVE_DIRECT3D9 = @HAVE_DIRECT3D9@ HAVE_DIRECTDRAW = @HAVE_DIRECTDRAW@ +HAVE_DIRECTSHOW = @HAVE_DIRECTSHOW@ HAVE_DIRECTSOUND = @HAVE_DIRECTSOUND@ HAVE_DTS = @HAVE_DTS@ HAVE_FAAC = @HAVE_FAAC@ HAVE_FAAD = @HAVE_FAAD@ HAVE_FLITE = @HAVE_FLITE@ HAVE_GSM = @HAVE_GSM@ -HAVE_JP2K = @HAVE_JP2K@ +HAVE_JASPER = @HAVE_JASPER@ HAVE_NAS = @HAVE_NAS@ HAVE_VPX = @HAVE_VPX@ HAVE_WILDMIDI = @HAVE_WILDMIDI@ @@ -373,7 +375,7 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ INTLLIBS = @INTLLIBS@ INTL_MACOSX_LIBS = @INTL_MACOSX_LIBS@ -JP2K_LIBS = @JP2K_LIBS@ +JASPER_LIBS = @JASPER_LIBS@ KATE_CFLAGS = @KATE_CFLAGS@ KATE_LIBS = @KATE_LIBS@ LD = @LD@ @@ -409,6 +411,8 @@ MODPLUG_CFLAGS = @MODPLUG_CFLAGS@ MODPLUG_LIBS = @MODPLUG_LIBS@ MPEG2ENC_CFLAGS = @MPEG2ENC_CFLAGS@ MPEG2ENC_LIBS = @MPEG2ENC_LIBS@ +MPG123_CFLAGS = @MPG123_CFLAGS@ +MPG123_LIBS = @MPG123_LIBS@ MPLEX_CFLAGS = @MPLEX_CFLAGS@ MPLEX_LDFLAGS = @MPLEX_LDFLAGS@ MPLEX_LIBS = @MPLEX_LIBS@ diff --git a/gst-libs/Makefile.in b/gst-libs/Makefile.in index a3c3c68b..76946e7c 100644 --- a/gst-libs/Makefile.in +++ b/gst-libs/Makefile.in @@ -1,4 +1,4 @@ -# Makefile.in generated by automake 1.11.5 from Makefile.am. +# Makefile.in generated by automake 1.11.6 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, @@ -210,11 +210,10 @@ DIRECT3D_LIBS = @DIRECT3D_LIBS@ DIRECTDRAW_LIBS = @DIRECTDRAW_LIBS@ DIRECTFB_CFLAGS = @DIRECTFB_CFLAGS@ DIRECTFB_LIBS = @DIRECTFB_LIBS@ +DIRECTSHOW_LIBS = @DIRECTSHOW_LIBS@ DIRECTSOUND_LIBS = @DIRECTSOUND_LIBS@ DIRECTX_CFLAGS = @DIRECTX_CFLAGS@ DIRECTX_LDFLAGS = @DIRECTX_LDFLAGS@ -DIVXDEC_LIBS = @DIVXDEC_LIBS@ -DIVXENC_LIBS = @DIVXENC_LIBS@ DLLTOOL = @DLLTOOL@ DSYMUTIL = @DSYMUTIL@ DTS_LIBS = @DTS_LIBS@ @@ -249,7 +248,9 @@ GIO_LIBS = @GIO_LIBS@ GLIB_CFLAGS = @GLIB_CFLAGS@ GLIB_COMPILE_SCHEMAS = @GLIB_COMPILE_SCHEMAS@ GLIB_EXTRA_CFLAGS = @GLIB_EXTRA_CFLAGS@ +GLIB_GENMARSHAL = @GLIB_GENMARSHAL@ GLIB_LIBS = @GLIB_LIBS@ +GLIB_MKENUMS = @GLIB_MKENUMS@ GLIB_PREFIX = @GLIB_PREFIX@ GLIB_REQ = @GLIB_REQ@ GME_LIBS = @GME_LIBS@ @@ -325,13 +326,14 @@ HAVE_CXX = @HAVE_CXX@ HAVE_DIRECT3D = @HAVE_DIRECT3D@ HAVE_DIRECT3D9 = @HAVE_DIRECT3D9@ HAVE_DIRECTDRAW = @HAVE_DIRECTDRAW@ +HAVE_DIRECTSHOW = @HAVE_DIRECTSHOW@ HAVE_DIRECTSOUND = @HAVE_DIRECTSOUND@ HAVE_DTS = @HAVE_DTS@ HAVE_FAAC = @HAVE_FAAC@ HAVE_FAAD = @HAVE_FAAD@ HAVE_FLITE = @HAVE_FLITE@ HAVE_GSM = @HAVE_GSM@ -HAVE_JP2K = @HAVE_JP2K@ +HAVE_JASPER = @HAVE_JASPER@ HAVE_NAS = @HAVE_NAS@ HAVE_VPX = @HAVE_VPX@ HAVE_WILDMIDI = @HAVE_WILDMIDI@ @@ -345,7 +347,7 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ INTLLIBS = @INTLLIBS@ INTL_MACOSX_LIBS = @INTL_MACOSX_LIBS@ -JP2K_LIBS = @JP2K_LIBS@ +JASPER_LIBS = @JASPER_LIBS@ KATE_CFLAGS = @KATE_CFLAGS@ KATE_LIBS = @KATE_LIBS@ LD = @LD@ @@ -381,6 +383,8 @@ MODPLUG_CFLAGS = @MODPLUG_CFLAGS@ MODPLUG_LIBS = @MODPLUG_LIBS@ MPEG2ENC_CFLAGS = @MPEG2ENC_CFLAGS@ MPEG2ENC_LIBS = @MPEG2ENC_LIBS@ +MPG123_CFLAGS = @MPG123_CFLAGS@ +MPG123_LIBS = @MPG123_LIBS@ MPLEX_CFLAGS = @MPLEX_CFLAGS@ MPLEX_LDFLAGS = @MPLEX_LDFLAGS@ MPLEX_LIBS = @MPLEX_LIBS@ diff --git a/gst-libs/gst/Makefile.in b/gst-libs/gst/Makefile.in index a5162eea..405a8dc1 100644 --- a/gst-libs/gst/Makefile.in +++ b/gst-libs/gst/Makefile.in @@ -1,4 +1,4 @@ -# Makefile.in generated by automake 1.11.5 from Makefile.am. +# Makefile.in generated by automake 1.11.6 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, @@ -212,11 +212,10 @@ DIRECT3D_LIBS = @DIRECT3D_LIBS@ DIRECTDRAW_LIBS = @DIRECTDRAW_LIBS@ DIRECTFB_CFLAGS = @DIRECTFB_CFLAGS@ DIRECTFB_LIBS = @DIRECTFB_LIBS@ +DIRECTSHOW_LIBS = @DIRECTSHOW_LIBS@ DIRECTSOUND_LIBS = @DIRECTSOUND_LIBS@ DIRECTX_CFLAGS = @DIRECTX_CFLAGS@ DIRECTX_LDFLAGS = @DIRECTX_LDFLAGS@ -DIVXDEC_LIBS = @DIVXDEC_LIBS@ -DIVXENC_LIBS = @DIVXENC_LIBS@ DLLTOOL = @DLLTOOL@ DSYMUTIL = @DSYMUTIL@ DTS_LIBS = @DTS_LIBS@ @@ -251,7 +250,9 @@ GIO_LIBS = @GIO_LIBS@ GLIB_CFLAGS = @GLIB_CFLAGS@ GLIB_COMPILE_SCHEMAS = @GLIB_COMPILE_SCHEMAS@ GLIB_EXTRA_CFLAGS = @GLIB_EXTRA_CFLAGS@ +GLIB_GENMARSHAL = @GLIB_GENMARSHAL@ GLIB_LIBS = @GLIB_LIBS@ +GLIB_MKENUMS = @GLIB_MKENUMS@ GLIB_PREFIX = @GLIB_PREFIX@ GLIB_REQ = @GLIB_REQ@ GME_LIBS = @GME_LIBS@ @@ -327,13 +328,14 @@ HAVE_CXX = @HAVE_CXX@ HAVE_DIRECT3D = @HAVE_DIRECT3D@ HAVE_DIRECT3D9 = @HAVE_DIRECT3D9@ HAVE_DIRECTDRAW = @HAVE_DIRECTDRAW@ +HAVE_DIRECTSHOW = @HAVE_DIRECTSHOW@ HAVE_DIRECTSOUND = @HAVE_DIRECTSOUND@ HAVE_DTS = @HAVE_DTS@ HAVE_FAAC = @HAVE_FAAC@ HAVE_FAAD = @HAVE_FAAD@ HAVE_FLITE = @HAVE_FLITE@ HAVE_GSM = @HAVE_GSM@ -HAVE_JP2K = @HAVE_JP2K@ +HAVE_JASPER = @HAVE_JASPER@ HAVE_NAS = @HAVE_NAS@ HAVE_VPX = @HAVE_VPX@ HAVE_WILDMIDI = @HAVE_WILDMIDI@ @@ -347,7 +349,7 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ INTLLIBS = @INTLLIBS@ INTL_MACOSX_LIBS = @INTL_MACOSX_LIBS@ -JP2K_LIBS = @JP2K_LIBS@ +JASPER_LIBS = @JASPER_LIBS@ KATE_CFLAGS = @KATE_CFLAGS@ KATE_LIBS = @KATE_LIBS@ LD = @LD@ @@ -383,6 +385,8 @@ MODPLUG_CFLAGS = @MODPLUG_CFLAGS@ MODPLUG_LIBS = @MODPLUG_LIBS@ MPEG2ENC_CFLAGS = @MPEG2ENC_CFLAGS@ MPEG2ENC_LIBS = @MPEG2ENC_LIBS@ +MPG123_CFLAGS = @MPG123_CFLAGS@ +MPG123_LIBS = @MPG123_LIBS@ MPLEX_CFLAGS = @MPLEX_CFLAGS@ MPLEX_LDFLAGS = @MPLEX_LDFLAGS@ MPLEX_LIBS = @MPLEX_LIBS@ diff --git a/gst-libs/gst/basecamerabinsrc/Makefile.in b/gst-libs/gst/basecamerabinsrc/Makefile.in index add3d125..4482c71f 100644 --- a/gst-libs/gst/basecamerabinsrc/Makefile.in +++ b/gst-libs/gst/basecamerabinsrc/Makefile.in @@ -1,4 +1,4 @@ -# Makefile.in generated by automake 1.11.5 from Makefile.am. +# Makefile.in generated by automake 1.11.6 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, @@ -246,11 +246,10 @@ DIRECT3D_LIBS = @DIRECT3D_LIBS@ DIRECTDRAW_LIBS = @DIRECTDRAW_LIBS@ DIRECTFB_CFLAGS = @DIRECTFB_CFLAGS@ DIRECTFB_LIBS = @DIRECTFB_LIBS@ +DIRECTSHOW_LIBS = @DIRECTSHOW_LIBS@ DIRECTSOUND_LIBS = @DIRECTSOUND_LIBS@ DIRECTX_CFLAGS = @DIRECTX_CFLAGS@ DIRECTX_LDFLAGS = @DIRECTX_LDFLAGS@ -DIVXDEC_LIBS = @DIVXDEC_LIBS@ -DIVXENC_LIBS = @DIVXENC_LIBS@ DLLTOOL = @DLLTOOL@ DSYMUTIL = @DSYMUTIL@ DTS_LIBS = @DTS_LIBS@ @@ -285,7 +284,9 @@ GIO_LIBS = @GIO_LIBS@ GLIB_CFLAGS = @GLIB_CFLAGS@ GLIB_COMPILE_SCHEMAS = @GLIB_COMPILE_SCHEMAS@ GLIB_EXTRA_CFLAGS = @GLIB_EXTRA_CFLAGS@ +GLIB_GENMARSHAL = @GLIB_GENMARSHAL@ GLIB_LIBS = @GLIB_LIBS@ +GLIB_MKENUMS = @GLIB_MKENUMS@ GLIB_PREFIX = @GLIB_PREFIX@ GLIB_REQ = @GLIB_REQ@ GME_LIBS = @GME_LIBS@ @@ -361,13 +362,14 @@ HAVE_CXX = @HAVE_CXX@ HAVE_DIRECT3D = @HAVE_DIRECT3D@ HAVE_DIRECT3D9 = @HAVE_DIRECT3D9@ HAVE_DIRECTDRAW = @HAVE_DIRECTDRAW@ +HAVE_DIRECTSHOW = @HAVE_DIRECTSHOW@ HAVE_DIRECTSOUND = @HAVE_DIRECTSOUND@ HAVE_DTS = @HAVE_DTS@ HAVE_FAAC = @HAVE_FAAC@ HAVE_FAAD = @HAVE_FAAD@ HAVE_FLITE = @HAVE_FLITE@ HAVE_GSM = @HAVE_GSM@ -HAVE_JP2K = @HAVE_JP2K@ +HAVE_JASPER = @HAVE_JASPER@ HAVE_NAS = @HAVE_NAS@ HAVE_VPX = @HAVE_VPX@ HAVE_WILDMIDI = @HAVE_WILDMIDI@ @@ -381,7 +383,7 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ INTLLIBS = @INTLLIBS@ INTL_MACOSX_LIBS = @INTL_MACOSX_LIBS@ -JP2K_LIBS = @JP2K_LIBS@ +JASPER_LIBS = @JASPER_LIBS@ KATE_CFLAGS = @KATE_CFLAGS@ KATE_LIBS = @KATE_LIBS@ LD = @LD@ @@ -417,6 +419,8 @@ MODPLUG_CFLAGS = @MODPLUG_CFLAGS@ MODPLUG_LIBS = @MODPLUG_LIBS@ MPEG2ENC_CFLAGS = @MPEG2ENC_CFLAGS@ MPEG2ENC_LIBS = @MPEG2ENC_LIBS@ +MPG123_CFLAGS = @MPG123_CFLAGS@ +MPG123_LIBS = @MPG123_LIBS@ MPLEX_CFLAGS = @MPLEX_CFLAGS@ MPLEX_LDFLAGS = @MPLEX_LDFLAGS@ MPLEX_LIBS = @MPLEX_LIBS@ diff --git a/gst-libs/gst/basecamerabinsrc/gstbasecamerasrc.c b/gst-libs/gst/basecamerabinsrc/gstbasecamerasrc.c index 199bf081..8a584b55 100644 --- a/gst-libs/gst/basecamerabinsrc/gstbasecamerasrc.c +++ b/gst-libs/gst/basecamerabinsrc/gstbasecamerasrc.c @@ -556,10 +556,10 @@ gst_base_camera_src_init (GstBaseCameraSrc * self) } void -gst_base_camera_src_post_preview (GstBaseCameraSrc * self, GstBuffer * buf) +gst_base_camera_src_post_preview (GstBaseCameraSrc * self, GstSample * sample) { if (self->post_preview) { - gst_camerabin_preview_pipeline_post (self->preview_pipeline, buf); + gst_camerabin_preview_pipeline_post (self->preview_pipeline, sample); } else { GST_DEBUG_OBJECT (self, "Previews not enabled, not posting"); } diff --git a/gst-libs/gst/basecamerabinsrc/gstbasecamerasrc.h b/gst-libs/gst/basecamerabinsrc/gstbasecamerasrc.h index 31e077f9..d4979f56 100644 --- a/gst-libs/gst/basecamerabinsrc/gstbasecamerasrc.h +++ b/gst-libs/gst/basecamerabinsrc/gstbasecamerasrc.h @@ -136,7 +136,7 @@ void gst_base_camera_src_setup_preview (GstBaseCameraSrc * self, GstCaps * previ void gst_base_camera_src_finish_capture (GstBaseCameraSrc *self); -void gst_base_camera_src_post_preview (GstBaseCameraSrc *self, GstBuffer * buf); +void gst_base_camera_src_post_preview (GstBaseCameraSrc *self, GstSample * sample); // XXX add methods to get/set img capture and vid capture caps.. #endif /* __GST_BASE_CAMERA_SRC_H__ */ diff --git a/gst-libs/gst/basecamerabinsrc/gstcamerabinpreview.c b/gst-libs/gst/basecamerabinsrc/gstcamerabinpreview.c index e4b95b89..d1c670bd 100644 --- a/gst-libs/gst/basecamerabinsrc/gstcamerabinpreview.c +++ b/gst-libs/gst/basecamerabinsrc/gstcamerabinpreview.c @@ -249,20 +249,20 @@ gst_camerabin_destroy_preview_pipeline (GstCameraBinPreviewPipelineData * /** * gst_camerabin_preview_pipeline_post: * @preview: the #GstCameraBinPreviewPipelineData - * @buffer: the buffer to be posted as a preview + * @sample: the sample to be posted as a preview * - * Converts the @buffer to the desired format and posts the preview + * Converts the @sample to the desired format and posts the preview * message to the bus. * * Returns: %TRUE on success */ gboolean gst_camerabin_preview_pipeline_post (GstCameraBinPreviewPipelineData * preview, - GstBuffer * buffer) + GstSample * sample) { g_return_val_if_fail (preview != NULL, FALSE); g_return_val_if_fail (preview->pipeline != NULL, FALSE); - g_return_val_if_fail (buffer, FALSE); + g_return_val_if_fail (sample, FALSE); g_mutex_lock (&preview->processing_lock); g_return_val_if_fail (preview->pipeline != NULL, FALSE); @@ -277,8 +277,9 @@ gst_camerabin_preview_pipeline_post (GstCameraBinPreviewPipelineData * preview, preview->processing++; + g_object_set (preview->appsrc, "caps", gst_sample_get_caps (sample), NULL); gst_app_src_push_buffer ((GstAppSrc *) preview->appsrc, - gst_buffer_ref (buffer)); + gst_buffer_ref (gst_sample_get_buffer (sample))); g_mutex_unlock (&preview->processing_lock); diff --git a/gst-libs/gst/basecamerabinsrc/gstcamerabinpreview.h b/gst-libs/gst/basecamerabinsrc/gstcamerabinpreview.h index fba274cb..6627cf66 100644 --- a/gst-libs/gst/basecamerabinsrc/gstcamerabinpreview.h +++ b/gst-libs/gst/basecamerabinsrc/gstcamerabinpreview.h @@ -49,7 +49,7 @@ typedef struct GstCameraBinPreviewPipelineData *gst_camerabin_create_preview_pipeline (GstElement * element, GstElement * filter); void gst_camerabin_destroy_preview_pipeline (GstCameraBinPreviewPipelineData * preview); -gboolean gst_camerabin_preview_pipeline_post (GstCameraBinPreviewPipelineData * preview, GstBuffer * buffer); +gboolean gst_camerabin_preview_pipeline_post (GstCameraBinPreviewPipelineData * preview, GstSample * sample); void gst_camerabin_preview_set_caps (GstCameraBinPreviewPipelineData * preview, GstCaps * caps); gboolean gst_camerabin_preview_set_filter (GstCameraBinPreviewPipelineData * preview, GstElement * filter); diff --git a/gst-libs/gst/codecparsers/Makefile.in b/gst-libs/gst/codecparsers/Makefile.in index 0c061bd6..bee19cae 100644 --- a/gst-libs/gst/codecparsers/Makefile.in +++ b/gst-libs/gst/codecparsers/Makefile.in @@ -1,4 +1,4 @@ -# Makefile.in generated by automake 1.11.5 from Makefile.am. +# Makefile.in generated by automake 1.11.6 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, @@ -246,11 +246,10 @@ DIRECT3D_LIBS = @DIRECT3D_LIBS@ DIRECTDRAW_LIBS = @DIRECTDRAW_LIBS@ DIRECTFB_CFLAGS = @DIRECTFB_CFLAGS@ DIRECTFB_LIBS = @DIRECTFB_LIBS@ +DIRECTSHOW_LIBS = @DIRECTSHOW_LIBS@ DIRECTSOUND_LIBS = @DIRECTSOUND_LIBS@ DIRECTX_CFLAGS = @DIRECTX_CFLAGS@ DIRECTX_LDFLAGS = @DIRECTX_LDFLAGS@ -DIVXDEC_LIBS = @DIVXDEC_LIBS@ -DIVXENC_LIBS = @DIVXENC_LIBS@ DLLTOOL = @DLLTOOL@ DSYMUTIL = @DSYMUTIL@ DTS_LIBS = @DTS_LIBS@ @@ -285,7 +284,9 @@ GIO_LIBS = @GIO_LIBS@ GLIB_CFLAGS = @GLIB_CFLAGS@ GLIB_COMPILE_SCHEMAS = @GLIB_COMPILE_SCHEMAS@ GLIB_EXTRA_CFLAGS = @GLIB_EXTRA_CFLAGS@ +GLIB_GENMARSHAL = @GLIB_GENMARSHAL@ GLIB_LIBS = @GLIB_LIBS@ +GLIB_MKENUMS = @GLIB_MKENUMS@ GLIB_PREFIX = @GLIB_PREFIX@ GLIB_REQ = @GLIB_REQ@ GME_LIBS = @GME_LIBS@ @@ -361,13 +362,14 @@ HAVE_CXX = @HAVE_CXX@ HAVE_DIRECT3D = @HAVE_DIRECT3D@ HAVE_DIRECT3D9 = @HAVE_DIRECT3D9@ HAVE_DIRECTDRAW = @HAVE_DIRECTDRAW@ +HAVE_DIRECTSHOW = @HAVE_DIRECTSHOW@ HAVE_DIRECTSOUND = @HAVE_DIRECTSOUND@ HAVE_DTS = @HAVE_DTS@ HAVE_FAAC = @HAVE_FAAC@ HAVE_FAAD = @HAVE_FAAD@ HAVE_FLITE = @HAVE_FLITE@ HAVE_GSM = @HAVE_GSM@ -HAVE_JP2K = @HAVE_JP2K@ +HAVE_JASPER = @HAVE_JASPER@ HAVE_NAS = @HAVE_NAS@ HAVE_VPX = @HAVE_VPX@ HAVE_WILDMIDI = @HAVE_WILDMIDI@ @@ -381,7 +383,7 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ INTLLIBS = @INTLLIBS@ INTL_MACOSX_LIBS = @INTL_MACOSX_LIBS@ -JP2K_LIBS = @JP2K_LIBS@ +JASPER_LIBS = @JASPER_LIBS@ KATE_CFLAGS = @KATE_CFLAGS@ KATE_LIBS = @KATE_LIBS@ LD = @LD@ @@ -417,6 +419,8 @@ MODPLUG_CFLAGS = @MODPLUG_CFLAGS@ MODPLUG_LIBS = @MODPLUG_LIBS@ MPEG2ENC_CFLAGS = @MPEG2ENC_CFLAGS@ MPEG2ENC_LIBS = @MPEG2ENC_LIBS@ +MPG123_CFLAGS = @MPG123_CFLAGS@ +MPG123_LIBS = @MPG123_LIBS@ MPLEX_CFLAGS = @MPLEX_CFLAGS@ MPLEX_LDFLAGS = @MPLEX_LDFLAGS@ MPLEX_LIBS = @MPLEX_LIBS@ diff --git a/gst-libs/gst/codecparsers/gsth264parser.c b/gst-libs/gst/codecparsers/gsth264parser.c index 9dbfe46b..2866e8ec 100644 --- a/gst-libs/gst/codecparsers/gsth264parser.c +++ b/gst-libs/gst/codecparsers/gsth264parser.c @@ -326,7 +326,8 @@ nal_reader_get_ue (NalReader * nr, guint32 * val) return FALSE; } - g_return_val_if_fail (i <= 32, FALSE); + if (G_UNLIKELY (i > 32)) + return FALSE; if (G_UNLIKELY (!nal_reader_get_bits_uint32 (nr, &value, i))) return FALSE; diff --git a/gst-libs/gst/codecparsers/gstmpegvideoparser.h b/gst-libs/gst/codecparsers/gstmpegvideoparser.h index cf2ff027..d0a16bce 100644 --- a/gst-libs/gst/codecparsers/gstmpegvideoparser.h +++ b/gst-libs/gst/codecparsers/gstmpegvideoparser.h @@ -378,8 +378,8 @@ struct _GstMpegVideoPacket gint size; }; -gboolean gst_mpeg_video_parse (GstMpegVideoPacket * packet, - const guint8 * data, gsize size, guint offset); +gboolean gst_mpeg_video_parse (GstMpegVideoPacket * packet, + const guint8 * data, gsize size, guint offset); gboolean gst_mpeg_video_parse_sequence_header (GstMpegVideoSequenceHdr * params, const guint8 * data, gsize size, guint offset); diff --git a/gst-libs/gst/interfaces/Makefile.in b/gst-libs/gst/interfaces/Makefile.in index 19bb2fa2..6cdcb16c 100644 --- a/gst-libs/gst/interfaces/Makefile.in +++ b/gst-libs/gst/interfaces/Makefile.in @@ -1,4 +1,4 @@ -# Makefile.in generated by automake 1.11.5 from Makefile.am. +# Makefile.in generated by automake 1.11.6 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, @@ -257,11 +257,10 @@ DIRECT3D_LIBS = @DIRECT3D_LIBS@ DIRECTDRAW_LIBS = @DIRECTDRAW_LIBS@ DIRECTFB_CFLAGS = @DIRECTFB_CFLAGS@ DIRECTFB_LIBS = @DIRECTFB_LIBS@ +DIRECTSHOW_LIBS = @DIRECTSHOW_LIBS@ DIRECTSOUND_LIBS = @DIRECTSOUND_LIBS@ DIRECTX_CFLAGS = @DIRECTX_CFLAGS@ DIRECTX_LDFLAGS = @DIRECTX_LDFLAGS@ -DIVXDEC_LIBS = @DIVXDEC_LIBS@ -DIVXENC_LIBS = @DIVXENC_LIBS@ DLLTOOL = @DLLTOOL@ DSYMUTIL = @DSYMUTIL@ DTS_LIBS = @DTS_LIBS@ @@ -296,7 +295,9 @@ GIO_LIBS = @GIO_LIBS@ GLIB_CFLAGS = @GLIB_CFLAGS@ GLIB_COMPILE_SCHEMAS = @GLIB_COMPILE_SCHEMAS@ GLIB_EXTRA_CFLAGS = @GLIB_EXTRA_CFLAGS@ +GLIB_GENMARSHAL = @GLIB_GENMARSHAL@ GLIB_LIBS = @GLIB_LIBS@ +GLIB_MKENUMS = @GLIB_MKENUMS@ GLIB_PREFIX = @GLIB_PREFIX@ GLIB_REQ = @GLIB_REQ@ GME_LIBS = @GME_LIBS@ @@ -372,13 +373,14 @@ HAVE_CXX = @HAVE_CXX@ HAVE_DIRECT3D = @HAVE_DIRECT3D@ HAVE_DIRECT3D9 = @HAVE_DIRECT3D9@ HAVE_DIRECTDRAW = @HAVE_DIRECTDRAW@ +HAVE_DIRECTSHOW = @HAVE_DIRECTSHOW@ HAVE_DIRECTSOUND = @HAVE_DIRECTSOUND@ HAVE_DTS = @HAVE_DTS@ HAVE_FAAC = @HAVE_FAAC@ HAVE_FAAD = @HAVE_FAAD@ HAVE_FLITE = @HAVE_FLITE@ HAVE_GSM = @HAVE_GSM@ -HAVE_JP2K = @HAVE_JP2K@ +HAVE_JASPER = @HAVE_JASPER@ HAVE_NAS = @HAVE_NAS@ HAVE_VPX = @HAVE_VPX@ HAVE_WILDMIDI = @HAVE_WILDMIDI@ @@ -392,7 +394,7 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ INTLLIBS = @INTLLIBS@ INTL_MACOSX_LIBS = @INTL_MACOSX_LIBS@ -JP2K_LIBS = @JP2K_LIBS@ +JASPER_LIBS = @JASPER_LIBS@ KATE_CFLAGS = @KATE_CFLAGS@ KATE_LIBS = @KATE_LIBS@ LD = @LD@ @@ -428,6 +430,8 @@ MODPLUG_CFLAGS = @MODPLUG_CFLAGS@ MODPLUG_LIBS = @MODPLUG_LIBS@ MPEG2ENC_CFLAGS = @MPEG2ENC_CFLAGS@ MPEG2ENC_LIBS = @MPEG2ENC_LIBS@ +MPG123_CFLAGS = @MPG123_CFLAGS@ +MPG123_LIBS = @MPG123_LIBS@ MPLEX_CFLAGS = @MPLEX_CFLAGS@ MPLEX_LDFLAGS = @MPLEX_LDFLAGS@ MPLEX_LIBS = @MPLEX_LIBS@ @@ -1045,16 +1049,16 @@ uninstall-am: uninstall-libLTLIBRARIES \ # these are all the rules generating the relevant files $(glib_gen_basename)-marshal.h: $(glib_gen_basename)-marshal.list - $(AM_V_GEN)glib-genmarshal --header --prefix=$(glib_gen_prefix)_marshal $^ > $(glib_gen_basename)-marshal.h.tmp && \ + $(AM_V_GEN)$(GLIB_GENMARSHAL) --header --prefix=$(glib_gen_prefix)_marshal $^ > $(glib_gen_basename)-marshal.h.tmp && \ mv $(glib_gen_basename)-marshal.h.tmp $(glib_gen_basename)-marshal.h $(glib_gen_basename)-marshal.c: $(glib_gen_basename)-marshal.list $(AM_V_GEN)echo "#include \"$(glib_gen_basename)-marshal.h\"" >> $(glib_gen_basename)-marshal.c.tmp && \ - glib-genmarshal --body --prefix=$(glib_gen_prefix)_marshal $^ >> $(glib_gen_basename)-marshal.c.tmp && \ + $(GLIB_GENMARSHAL) --body --prefix=$(glib_gen_prefix)_marshal $^ >> $(glib_gen_basename)-marshal.c.tmp && \ mv $(glib_gen_basename)-marshal.c.tmp $(glib_gen_basename)-marshal.c $(glib_gen_basename)-enumtypes.h: $(glib_enum_headers) - $(AM_V_GEN)glib-mkenums \ + $(AM_V_GEN)$(GLIB_MKENUMS) \ --fhead "#ifndef __$(glib_enum_define)_ENUM_TYPES_H__\n#define __$(glib_enum_define)_ENUM_TYPES_H__\n\n#include <glib-object.h>\n\nG_BEGIN_DECLS\n" \ --fprod "\n/* enumerations from \"@filename@\" */\n" \ --vhead "GType @enum_name@_get_type (void);\n#define GST_TYPE_@ENUMSHORT@ (@enum_name@_get_type())\n" \ @@ -1063,7 +1067,7 @@ $(glib_gen_basename)-enumtypes.h: $(glib_enum_headers) $(glib_gen_basename)-enumtypes.c: $(glib_enum_headers) @if test "x$(glib_enum_headers)" = "x"; then echo "ERROR: glib_enum_headers is empty, please fix Makefile"; exit 1; fi - $(AM_V_GEN)glib-mkenums \ + $(AM_V_GEN)$(GLIB_MKENUMS) \ --fhead "#include \"$(glib_gen_basename)-enumtypes.h\"\n$(enum_headers)" \ --fprod "\n/* enumerations from \"@filename@\" */" \ --vhead "GType\n@enum_name@_get_type (void)\n{\n static volatile gsize g_define_type_id__volatile = 0;\n if (g_once_init_enter (&g_define_type_id__volatile)) {\n static const G@Type@Value values[] = {" \ diff --git a/gst-libs/gst/interfaces/photography.c b/gst-libs/gst/interfaces/photography.c index 11f0e71d..6fa984d6 100644 --- a/gst-libs/gst/interfaces/photography.c +++ b/gst-libs/gst/interfaces/photography.c @@ -30,6 +30,7 @@ /** * SECTION:gstphotography * @short_description: Interface for digital image capture elements + * @stability: Unstable * * The interface allows access to some common digital image capture parameters. * @@ -76,7 +77,7 @@ gst_photography_iface_base_init (GstPhotographyInterface * iface) iface->get_aperture = NULL; iface->get_exposure = NULL; iface->get_white_balance_mode = NULL; - iface->get_colour_tone_mode = NULL; + iface->get_color_tone_mode = NULL; iface->get_scene_mode = NULL; iface->get_flash_mode = NULL; iface->get_noise_reduction = NULL; @@ -89,7 +90,7 @@ gst_photography_iface_base_init (GstPhotographyInterface * iface) iface->set_aperture = NULL; iface->set_exposure = NULL; iface->set_white_balance_mode = NULL; - iface->set_colour_tone_mode = NULL; + iface->set_color_tone_mode = NULL; iface->set_scene_mode = NULL; iface->set_flash_mode = NULL; iface->set_noise_reduction = NULL; @@ -212,7 +213,7 @@ GST_PHOTOGRAPHY_FUNC_TEMPLATE (exposure, guint32); /** * gst_photography_set_white_balance_mode: * @photo: #GstPhotography interface of a #GstElement - * @wb_mode: #GstWhiteBalanceMode to set + * @wb_mode: #GstPhotographyWhiteBalanceMode to set * * Set the white balance mode for the #GstElement * @@ -221,38 +222,39 @@ GST_PHOTOGRAPHY_FUNC_TEMPLATE (exposure, guint32); /** * gst_photography_get_white_balance_mode: * @photo: #GstPhotography interface of a #GstElement - * @wb_mode: #GstWhiteBalanceMode to get + * @wb_mode: #GstPhotographyWhiteBalanceMode to get * * Get the white balance mode for the #GstElement * * Returns: %TRUE if getting the value succeeded, %FALSE otherwise */ -GST_PHOTOGRAPHY_FUNC_TEMPLATE (white_balance_mode, GstWhiteBalanceMode); +GST_PHOTOGRAPHY_FUNC_TEMPLATE (white_balance_mode, + GstPhotographyWhiteBalanceMode); /** - * gst_photography_set_colour_tone_mode: + * gst_photography_set_color_tone_mode: * @photo: #GstPhotography interface of a #GstElement - * @tone_mode: #GstColourToneMode to set + * @tone_mode: #GstPhotographyColorToneMode to set * - * Set the colour tone mode for the #GstElement + * Set the color tone mode for the #GstElement * * Returns: %TRUE if setting the value succeeded, %FALSE otherwise */ /** - * gst_photography_get_colour_tone_mode: + * gst_photography_get_color_tone_mode: * @photo: #GstPhotography interface of a #GstElement - * @tone_mode: #GstColourToneMode to get + * @tone_mode: #GstPhotographyColorToneMode to get * - * Get the colour tone mode for the #GstElement + * Get the color tone mode for the #GstElement * * Returns: %TRUE if getting the value succeeded, %FALSE otherwise */ -GST_PHOTOGRAPHY_FUNC_TEMPLATE (colour_tone_mode, GstColourToneMode); +GST_PHOTOGRAPHY_FUNC_TEMPLATE (color_tone_mode, GstPhotographyColorToneMode); /** * gst_photography_set_scene_mode: * @photo: #GstPhotography interface of a #GstElement - * @scene_mode: #GstSceneMode to set + * @scene_mode: #GstPhotographySceneMode to set * * Set the scene mode for the #GstElement * @@ -261,18 +263,18 @@ GST_PHOTOGRAPHY_FUNC_TEMPLATE (colour_tone_mode, GstColourToneMode); /** * gst_photography_get_scene_mode: * @photo: #GstPhotography interface of a #GstElement - * @scene_mode: #GstSceneMode to get + * @scene_mode: #GstPhotographySceneMode to get * * Get the scene mode for the #GstElement * * Returns: %TRUE if getting the value succeeded, %FALSE otherwise */ -GST_PHOTOGRAPHY_FUNC_TEMPLATE (scene_mode, GstSceneMode); +GST_PHOTOGRAPHY_FUNC_TEMPLATE (scene_mode, GstPhotographySceneMode); /** * gst_photography_set_flash_mode: * @photo: #GstPhotography interface of a #GstElement - * @flash_mode: #GstFlashMode to set + * @flash_mode: #GstPhotographyFlashMode to set * * Set the flash mode for the #GstElement * @@ -281,18 +283,18 @@ GST_PHOTOGRAPHY_FUNC_TEMPLATE (scene_mode, GstSceneMode); /** * gst_photography_get_flash_mode: * @photo: #GstPhotography interface of a #GstElement - * @flash_mode: #GstFlashMode to get + * @flash_mode: #GstPhotographyFlashMode to get * * Get the flash mode for the #GstElement * * Returns: %TRUE if getting the value succeeded, %FALSE otherwise */ -GST_PHOTOGRAPHY_FUNC_TEMPLATE (flash_mode, GstFlashMode); +GST_PHOTOGRAPHY_FUNC_TEMPLATE (flash_mode, GstPhotographyFlashMode); /** * gst_photography_set_noise_reduction: * @photo: #GstPhotography interface of a #GstElement - * @noise_reduction: #GstNoiseReductionMode to set + * @noise_reduction: #GstPhotographyNoiseReductionMode to set * * Set the noise reduction mode for the #GstElement * @@ -303,7 +305,7 @@ GST_PHOTOGRAPHY_FUNC_TEMPLATE (flash_mode, GstFlashMode); /** * gst_photography_get_noise_reduction: * @photo: #GstPhotography interface of a #GstElement - * @noise_reduction: #GstNoiseReductionMode to get + * @noise_reduction: #GstPhotographyNoiseReductionMode to get * * Get the noise reduction mode for the #GstElement * @@ -352,7 +354,8 @@ GST_PHOTOGRAPHY_FUNC_TEMPLATE (zoom, gfloat); * * Returns: %TRUE if getting the value succeeded, %FALSE otherwise */ -GST_PHOTOGRAPHY_FUNC_TEMPLATE (flicker_mode, GstFlickerReductionMode); +GST_PHOTOGRAPHY_FUNC_TEMPLATE (flicker_mode, + GstPhotographyFlickerReductionMode); /** * gst_photography_set_focus_mode: @@ -372,18 +375,18 @@ GST_PHOTOGRAPHY_FUNC_TEMPLATE (flicker_mode, GstFlickerReductionMode); * * Returns: %TRUE if getting the value succeeded, %FALSE otherwise */ -GST_PHOTOGRAPHY_FUNC_TEMPLATE (focus_mode, GstFocusMode); +GST_PHOTOGRAPHY_FUNC_TEMPLATE (focus_mode, GstPhotographyFocusMode); /** * gst_photography_get_capabilities: * @photo: #GstPhotography interface of a #GstElement * - * Get #GstPhotoCaps bitmask value that indicates what photography + * Get #GstPhotographyCaps bitmask value that indicates what photography * interface features the #GstElement supports * - * Returns: #GstPhotoCaps value + * Returns: #GstPhotographyCaps value */ -GstPhotoCaps +GstPhotographyCaps gst_photography_get_capabilities (GstPhotography * photo) { GstPhotographyInterface *iface; @@ -401,17 +404,19 @@ gst_photography_get_capabilities (GstPhotography * photo) * gst_photography_prepare_for_capture: * @photo: #GstPhotography interface of a #GstElement * @func: callback that is called after capturing has been prepared - * @caps: #GstCaps defining the desired format of the captured image + * @capture_caps: #GstCaps defining the desired format of the captured image * @user_data: user data that will be passed to the callback @func * - * Start preparations for capture. @func callback is called after - * preparations are done. + * Start preparations for capture. Preparations can take indeterminate + * amount of time and @func callback is called after preparations are + * done. Image capture will begin after callback returns. * - * Returns: TRUE if preparations were started (caps were OK), otherwise FALSE. + * Returns: %TRUE if preparations were started (caps were OK), otherwise %FALSE. */ gboolean gst_photography_prepare_for_capture (GstPhotography * photo, - GstPhotoCapturePrepared func, GstCaps * capture_caps, gpointer user_data) + GstPhotographyCapturePrepared func, GstCaps * capture_caps, + gpointer user_data) { GstPhotographyInterface *iface; gboolean ret = TRUE; @@ -449,14 +454,15 @@ gst_photography_set_autofocus (GstPhotography * photo, gboolean on) /** * gst_photography_set_config: * @photo: #GstPhotography interface of a #GstElement - * @config: #GstPhotoSettings containg the configuration + * @config: #GstPhotographySettings containg the configuration * * Set all configuration settings at once. * * Returns: TRUE if configuration was set successfully, otherwise FALSE. */ gboolean -gst_photography_set_config (GstPhotography * photo, GstPhotoSettings * config) +gst_photography_set_config (GstPhotography * photo, + GstPhotographySettings * config) { GstPhotographyInterface *iface; gboolean ret = FALSE; @@ -474,14 +480,15 @@ gst_photography_set_config (GstPhotography * photo, GstPhotoSettings * config) /** * gst_photography_get_config: * @photo: #GstPhotography interface of a #GstElement - * @config: #GstPhotoSettings containg the configuration + * @config: #GstPhotographySettings containg the configuration * * Get all configuration settings at once. * * Returns: TRUE if configuration was got successfully, otherwise FALSE. */ gboolean -gst_photography_get_config (GstPhotography * photo, GstPhotoSettings * config) +gst_photography_get_config (GstPhotography * photo, + GstPhotographySettings * config) { GstPhotographyInterface *iface; gboolean ret = FALSE; @@ -507,17 +514,17 @@ gst_photography_iface_class_init (gpointer g_class) g_param_spec_enum (GST_PHOTOGRAPHY_PROP_WB_MODE, "White balance mode property", "White balance affects the color temperature of the photo", - GST_TYPE_WHITE_BALANCE_MODE, + GST_TYPE_PHOTOGRAPHY_WHITE_BALANCE_MODE, GST_PHOTOGRAPHY_WB_MODE_AUTO, G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS)); - /* Colour tone */ + /* Color tone */ g_object_interface_install_property (g_class, - g_param_spec_enum (GST_PHOTOGRAPHY_PROP_COLOUR_TONE, - "Colour tone mode property", - "Colour tone setting changes colour shading in the photo", - GST_TYPE_COLOUR_TONE_MODE, - GST_PHOTOGRAPHY_COLOUR_TONE_MODE_NORMAL, + g_param_spec_enum (GST_PHOTOGRAPHY_PROP_COLOR_TONE, + "Color tone mode property", + "Color tone setting changes color shading in the photo", + GST_TYPE_PHOTOGRAPHY_COLOR_TONE_MODE, + GST_PHOTOGRAPHY_COLOR_TONE_MODE_NORMAL, G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS)); /* Scene mode */ @@ -525,7 +532,7 @@ gst_photography_iface_class_init (gpointer g_class) g_param_spec_enum (GST_PHOTOGRAPHY_PROP_SCENE_MODE, "Scene mode property", "Scene mode works as a preset for different photo shooting mode settings", - GST_TYPE_SCENE_MODE, + GST_TYPE_PHOTOGRAPHY_SCENE_MODE, GST_PHOTOGRAPHY_SCENE_MODE_AUTO, G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS)); @@ -534,7 +541,7 @@ gst_photography_iface_class_init (gpointer g_class) g_param_spec_enum (GST_PHOTOGRAPHY_PROP_FLASH_MODE, "Flash mode property", "Flash mode defines how the flash light should be used", - GST_TYPE_FLASH_MODE, + GST_TYPE_PHOTOGRAPHY_FLASH_MODE, GST_PHOTOGRAPHY_FLASH_MODE_AUTO, G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS)); @@ -543,7 +550,7 @@ gst_photography_iface_class_init (gpointer g_class) g_param_spec_enum (GST_PHOTOGRAPHY_PROP_FLICKER_MODE, "Flicker reduction mode property", "Flicker reduction mode defines a line frequency for flickering prevention", - GST_TYPE_FLICKER_REDUCTION_MODE, + GST_TYPE_PHOTOGRAPHY_FLICKER_REDUCTION_MODE, GST_PHOTOGRAPHY_FLICKER_REDUCTION_OFF, G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS)); @@ -552,7 +559,7 @@ gst_photography_iface_class_init (gpointer g_class) g_param_spec_enum (GST_PHOTOGRAPHY_PROP_FOCUS_MODE, "Focus mode property", "Focus mode defines the range of focal lengths to use in autofocus search", - GST_TYPE_FOCUS_MODE, + GST_TYPE_PHOTOGRAPHY_FOCUS_MODE, GST_PHOTOGRAPHY_FOCUS_MODE_AUTO, G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS)); @@ -586,19 +593,31 @@ gst_photography_iface_class_init (gpointer g_class) /* Exposure */ g_object_interface_install_property (g_class, - g_param_spec_uint (GST_PHOTOGRAPHY_PROP_EXPOSURE, + g_param_spec_uint (GST_PHOTOGRAPHY_PROP_EXPOSURE_TIME, "Exposure time in milliseconds", "Exposure time defines how long the shutter will stay open (0 = auto)", 0, G_MAXUINT32, 0, G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS)); - /* Image capture caps */ + /** + * GstPhotography:image-capture-supported-caps: + * + * Query caps that describe supported formats for image capture. Sometimes + * element may support different formats for image capture than for video + * streaming. + */ g_object_interface_install_property (g_class, g_param_spec_boxed (GST_PHOTOGRAPHY_PROP_IMAGE_CAPTURE_SUPPORTED_CAPS, "Image capture supported caps", "Caps describing supported image capture formats", GST_TYPE_CAPS, G_PARAM_READABLE | G_PARAM_STATIC_STRINGS)); - /* Image preview caps */ + /** + * GstPhotography:image-preview-supported-caps: + * + * Query caps that describe supported formats for preview image. Sometimes + * element may support different formats for preview image than for video + * streaming. + */ g_object_interface_install_property (g_class, g_param_spec_boxed (GST_PHOTOGRAPHY_PROP_IMAGE_PREVIEW_SUPPORTED_CAPS, "Image preview supported caps", @@ -612,6 +631,83 @@ gst_photography_iface_class_init (gpointer g_class) "How much the resulted image will be zoomed", 1.0f, 10.0f, 1.0f, G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS)); + /** + * GstPhotography:color-temperature: + * + * Color temperature parameter for manual white balance. + * Control color temperature in Kelvin units. + */ + g_object_interface_install_property (g_class, + g_param_spec_uint (GST_PHOTOGRAPHY_PROP_COLOR_TEMPERATURE, + "Color temperature in Kelvin units", + "Color temperature in Kelvin units for manual white balance", + 0, G_MAXUINT, 0, G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS)); + + /** + * GstPhotography:white-point: + * + * White point parameter for manual white balance. + * Describes the color "white" as raw values. + * + * FIXME: check and document correct representation for white point + */ + g_object_interface_install_property (g_class, + g_param_spec_value_array (GST_PHOTOGRAPHY_PROP_WHITE_POINT, + "White point", + "Describe color white as raw values", + g_param_spec_uint ("raw-value", "Raw value", + "Raw value", 0, G_MAXUINT, 0, + G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS), + G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS)); + + /** + * GstPhotography:analog-gain: + * + * Linear multiplicative value how much amplification is applied to the signal + * before A-D conversion. + */ + g_object_interface_install_property (g_class, + g_param_spec_float (GST_PHOTOGRAPHY_PROP_ANALOG_GAIN, + "Analog gain applied to the sensor", + "Analog gain applied to the sensor", + 1.0f, G_MAXFLOAT, 1.0f, G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS)); + + /** + * GstPhotography:lens-focus: + * + * Manual changing of lens focus in diopter units. + * Inteded use with GST_PHOTOGRAPHY_FOCUS_MODE_MANUAL focus mode, otherwise + * to be ignored. + * + */ + g_object_interface_install_property (g_class, + g_param_spec_float (GST_PHOTOGRAPHY_PROP_LENS_FOCUS, + "Manual lens focus", + "Focus point in diopter units", + 0.0f, G_MAXFLOAT, 0.0f, G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS)); + + /** + * GstPhotography:min-exposure-time: + * + * Minimum exposure time for automatic exposure mode. + */ + g_object_interface_install_property (g_class, + g_param_spec_uint (GST_PHOTOGRAPHY_PROP_MIN_EXPOSURE_TIME, + "Minimum exposure time", + "Minimum exposure time for automatic exposure mode", + 0, G_MAXUINT, 0, G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS)); + + /** + * GstPhotography:max-exposure-time: + * + * Maximum exposure time for automatic exposure mode. + */ + g_object_interface_install_property (g_class, + g_param_spec_uint (GST_PHOTOGRAPHY_PROP_MAX_EXPOSURE_TIME, + "Maximum exposure time", + "Maximum exposure time for automatic exposure mode", + 0, G_MAXUINT, 0, G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS)); + /* Noise Reduction, Bayer an YCC noise reduction are enabled by default */ g_object_interface_install_property (g_class, g_param_spec_flags (GST_PHOTOGRAPHY_PROP_NOISE_REDUCTION, diff --git a/gst-libs/gst/interfaces/photography.h b/gst-libs/gst/interfaces/photography.h index 21a4a508..d3a16e9d 100644 --- a/gst-libs/gst/interfaces/photography.h +++ b/gst-libs/gst/interfaces/photography.h @@ -44,16 +44,73 @@ G_BEGIN_DECLS (G_TYPE_INSTANCE_GET_INTERFACE ((inst), GST_TYPE_PHOTOGRAPHY, GstPhotographyInterface)) -/* Custom GstMessage name that will be sent to GstBus when autofocusing - is complete */ +/** + * GST_PHOTOGRAPHY_AUTOFOCUS_DONE: + * + * Name of custom GstMessage that will be posted to #GstBus when autofocusing + * is complete. + * This message contains following fields: + * <itemizedlist> + * <listitem> + * <para> + * #GstPhotographyFocusStatus + * <classname>"status"</classname>: + * Tells if focusing succeeded or failed. + * </para> + * </listitem> + * <listitem> + * <para> + * #G_TYPE_INT + * <classname>"focus-window-rows"</classname>: + * Tells number of focus matrix rows. + * </para> + * </listitem> + * <listitem> + * <para> + * #G_TYPE_INT + * <classname>"focus-window-columns"</classname>: + * Tells number of focus matrix columns. + * </para> + * </listitem> + * <listitem> + * <para> + * #G_TYPE_INT + * <classname>"focus-window-mask"</classname>: + * Bitmask containing rows x columns bits which mark the focus points in the + * focus matrix. Lowest bit (LSB) always represents the top-left corner of the + * focus matrix. This field is only valid when focusing status is SUCCESS. + * </para> + * </listitem> + * </itemizedlist> + */ #define GST_PHOTOGRAPHY_AUTOFOCUS_DONE "autofocus-done" -/* Custom GstMessage name that will be sent to GstBus when shake risk changes */ +/** + * GST_PHOTOGRAPHY_SHAKE_RISK: + * + * Name of custom GstMessage that is posted to #GstBus during autofocusing + * process. It is posted if there is change in the risk of captured image + * becoming "shaken" due to camera movement and too long exposure time. + * + * This message contains following fields: + * <itemizedlist> + * <listitem> + * <para> + * #GstPhotographyShakeRisk + * <classname>"status"</classname>: + * Tells risk level of capturing shaken image. + * </para> + * </listitem> + * </itemizedlist> + */ #define GST_PHOTOGRAPHY_SHAKE_RISK "shake-risk" +/* Maximum white point values used in #GstPhotographySettings */ +#define MAX_WHITE_POINT_VALUES 4 + /* Interface property names */ #define GST_PHOTOGRAPHY_PROP_WB_MODE "white-balance-mode" -#define GST_PHOTOGRAPHY_PROP_COLOUR_TONE "colour-tone-mode" +#define GST_PHOTOGRAPHY_PROP_COLOR_TONE "color-tone-mode" #define GST_PHOTOGRAPHY_PROP_SCENE_MODE "scene-mode" #define GST_PHOTOGRAPHY_PROP_FLASH_MODE "flash-mode" #define GST_PHOTOGRAPHY_PROP_NOISE_REDUCTION "noise-reduction" @@ -63,7 +120,7 @@ G_BEGIN_DECLS #define GST_PHOTOGRAPHY_PROP_EV_COMP "ev-compensation" #define GST_PHOTOGRAPHY_PROP_ISO_SPEED "iso-speed" #define GST_PHOTOGRAPHY_PROP_APERTURE "aperture" -#define GST_PHOTOGRAPHY_PROP_EXPOSURE "exposure" +#define GST_PHOTOGRAPHY_PROP_EXPOSURE_TIME "exposure-time" #define GST_PHOTOGRAPHY_PROP_IMAGE_CAPTURE_SUPPORTED_CAPS \ "image-capture-supported-caps" #define GST_PHOTOGRAPHY_PROP_IMAGE_PREVIEW_SUPPORTED_CAPS \ @@ -71,6 +128,13 @@ G_BEGIN_DECLS #define GST_PHOTOGRAPHY_PROP_FLICKER_MODE "flicker-mode" #define GST_PHOTOGRAPHY_PROP_FOCUS_MODE "focus-mode" #define GST_PHOTOGRAPHY_PROP_ZOOM "zoom" +#define GST_PHOTOGRAPHY_PROP_COLOR_TEMPERATURE "color-temperature" +#define GST_PHOTOGRAPHY_PROP_WHITE_POINT "white-point" +#define GST_PHOTOGRAPHY_PROP_ANALOG_GAIN "analog-gain" +#define GST_PHOTOGRAPHY_PROP_EXPOSURE_MODE "exposure-mode" +#define GST_PHOTOGRAPHY_PROP_LENS_FOCUS "lens-focus" +#define GST_PHOTOGRAPHY_PROP_MIN_EXPOSURE_TIME "min-exposure-time" +#define GST_PHOTOGRAPHY_PROP_MAX_EXPOSURE_TIME "max-exposure-time" /** * GstPhotography: @@ -87,7 +151,7 @@ typedef struct _GstPhotography GstPhotography; * images. * @GST_PHOTOGRAPHY_NOISE_REDUCTION_TEMPORAL: Multi-frame adaptive NR, * provided for the video mode - * @GST_PHOTOGRAPHY_NOISE_REDUCTION_FPN: Fixed Pattern Noise refers to noise + * @GST_PHOTOGRAPHY_NOISE_REDUCTION_FIXED: Fixed Pattern Noise refers to noise * that does not change between frames. The noise is removed from the sensor * image, by subtracting a previously-captured black image in memory. * @GST_PHOTOGRAPHY_NOISE_REDUCTION_EXTRA: Extra Noise Reduction. In the case @@ -107,6 +171,19 @@ typedef enum GST_PHOTOGRAPHY_NOISE_REDUCTION_EXTRA = (1 << 4) } GstPhotographyNoiseReduction; +/** + * GstPhotographyWhiteBalanceMode: + * @GST_PHOTOGRAPHY_WB_MODE_AUTO: Choose white balance mode automatically + * @GST_PHOTOGRAPHY_WB_MODE_DAYLIGHT: Mode for daylight conditions + * @GST_PHOTOGRAPHY_WB_MODE_CLOUDY: Mode for cloudy conditions + * @GST_PHOTOGRAPHY_WB_MODE_SUNSET: Mode for sunset conditions + * @GST_PHOTOGRAPHY_WB_MODE_TUNGSTEN: Mode for tungsten lighting + * @GST_PHOTOGRAPHY_WB_MODE_FLUORESCENT: Mode for fluorescent lighting + * @GST_PHOTOGRAPHY_WB_MODE_MANUAL: Disable automatic white balance adjustment + * and keep current values. + * + * Modes for white balance control. + */ typedef enum { GST_PHOTOGRAPHY_WB_MODE_AUTO = 0, @@ -114,25 +191,56 @@ typedef enum GST_PHOTOGRAPHY_WB_MODE_CLOUDY, GST_PHOTOGRAPHY_WB_MODE_SUNSET, GST_PHOTOGRAPHY_WB_MODE_TUNGSTEN, - GST_PHOTOGRAPHY_WB_MODE_FLUORESCENT -} GstWhiteBalanceMode; + GST_PHOTOGRAPHY_WB_MODE_FLUORESCENT, + GST_PHOTOGRAPHY_WB_MODE_MANUAL +} GstPhotographyWhiteBalanceMode; +/** + * GstPhotographyColorToneMode: + * @GST_PHOTOGRAPHY_COLOR_TONE_MODE_NORMAL: No effects + * @GST_PHOTOGRAPHY_COLOR_TONE_MODE_SEPIA: Sepia + * @GST_PHOTOGRAPHY_COLOR_TONE_MODE_NEGATIVE: Negative + * @GST_PHOTOGRAPHY_COLOR_TONE_MODE_GRAYSCALE: Grayscale + * @GST_PHOTOGRAPHY_COLOR_TONE_MODE_NATURAL: Natural + * @GST_PHOTOGRAPHY_COLOR_TONE_MODE_VIVID: Vivid + * @GST_PHOTOGRAPHY_COLOR_TONE_MODE_COLORSWAP: Colorswap + * @GST_PHOTOGRAPHY_COLOR_TONE_MODE_SOLARIZE: Solarize + * @GST_PHOTOGRAPHY_COLOR_TONE_MODE_OUT_OF_FOCUS: Out of focus + * @GST_PHOTOGRAPHY_COLOR_TONE_MODE_SKY_BLUE: Sky blue + * @GST_PHOTOGRAPHY_COLOR_TONE_MODE_GRASS_GREEN: Grass green + * @GST_PHOTOGRAPHY_COLOR_TONE_MODE_SKIN_WHITEN: Skin whiten + * + * Modes for special color effects. + */ typedef enum { - GST_PHOTOGRAPHY_COLOUR_TONE_MODE_NORMAL = 0, - GST_PHOTOGRAPHY_COLOUR_TONE_MODE_SEPIA, - GST_PHOTOGRAPHY_COLOUR_TONE_MODE_NEGATIVE, - GST_PHOTOGRAPHY_COLOUR_TONE_MODE_GRAYSCALE, - GST_PHOTOGRAPHY_COLOUR_TONE_MODE_NATURAL, - GST_PHOTOGRAPHY_COLOUR_TONE_MODE_VIVID, - GST_PHOTOGRAPHY_COLOUR_TONE_MODE_COLORSWAP, - GST_PHOTOGRAPHY_COLOUR_TONE_MODE_SOLARIZE, - GST_PHOTOGRAPHY_COLOUR_TONE_MODE_OUT_OF_FOCUS, - GST_PHOTOGRAPHY_COLOUR_TONE_MODE_SKY_BLUE, - GST_PHOTOGRAPHY_COLOUR_TONE_MODE_GRASS_GREEN, - GST_PHOTOGRAPHY_COLOUR_TONE_MODE_SKIN_WHITEN -} GstColourToneMode; + GST_PHOTOGRAPHY_COLOR_TONE_MODE_NORMAL = 0, + GST_PHOTOGRAPHY_COLOR_TONE_MODE_SEPIA, + GST_PHOTOGRAPHY_COLOR_TONE_MODE_NEGATIVE, + GST_PHOTOGRAPHY_COLOR_TONE_MODE_GRAYSCALE, + GST_PHOTOGRAPHY_COLOR_TONE_MODE_NATURAL, + GST_PHOTOGRAPHY_COLOR_TONE_MODE_VIVID, + GST_PHOTOGRAPHY_COLOR_TONE_MODE_COLORSWAP, + GST_PHOTOGRAPHY_COLOR_TONE_MODE_SOLARIZE, + GST_PHOTOGRAPHY_COLOR_TONE_MODE_OUT_OF_FOCUS, + GST_PHOTOGRAPHY_COLOR_TONE_MODE_SKY_BLUE, + GST_PHOTOGRAPHY_COLOR_TONE_MODE_GRASS_GREEN, + GST_PHOTOGRAPHY_COLOR_TONE_MODE_SKIN_WHITEN +} GstPhotographyColorToneMode; +/** + * GstPhotographySceneMode: + * @GST_PHOTOGRAPHY_SCENE_MODE_MANUAL: Set individual options manually + * @GST_PHOTOGRAPHY_SCENE_MODE_CLOSEUP: Mode for close objects + * @GST_PHOTOGRAPHY_SCENE_MODE_PORTRAIT: Mode for portraits + * @GST_PHOTOGRAPHY_SCENE_MODE_LANDSCAPE: Mode for landscapes + * @GST_PHOTOGRAPHY_SCENE_MODE_SPORT: Mode for scene with fast motion + * @GST_PHOTOGRAPHY_SCENE_MODE_NIGHT: Mode for night conditions + * @GST_PHOTOGRAPHY_SCENE_MODE_AUTO: Choose scene mode automatically + * + * Each mode contains preset #GstPhotography options in order to produce + * good capturing result in certain scene. + */ typedef enum { GST_PHOTOGRAPHY_SCENE_MODE_MANUAL = 0, @@ -142,8 +250,20 @@ typedef enum GST_PHOTOGRAPHY_SCENE_MODE_SPORT, GST_PHOTOGRAPHY_SCENE_MODE_NIGHT, GST_PHOTOGRAPHY_SCENE_MODE_AUTO -} GstSceneMode; +} GstPhotographySceneMode; +/** + * GstPhotographyFlashMode: + * @GST_PHOTOGRAPHY_FLASH_MODE_AUTO: Fire flash automatically according to + * lighting conditions. + * @GST_PHOTOGRAPHY_FLASH_MODE_OFF: Never fire flash + * @GST_PHOTOGRAPHY_FLASH_MODE_ON: Always fire flash + * @GST_PHOTOGRAPHY_FLASH_MODE_FILL_IN: Fill in flash + * @GST_PHOTOGRAPHY_FLASH_MODE_RED_EYE: Flash mode for reducing chance of + * capturing red eyes + * + * Modes for flash control. + */ typedef enum { GST_PHOTOGRAPHY_FLASH_MODE_AUTO = 0, @@ -151,16 +271,32 @@ typedef enum GST_PHOTOGRAPHY_FLASH_MODE_ON, GST_PHOTOGRAPHY_FLASH_MODE_FILL_IN, GST_PHOTOGRAPHY_FLASH_MODE_RED_EYE -} GstFlashMode; +} GstPhotographyFlashMode; +/** + * GstPhotographyFocusStatus: + * @GST_PHOTOGRAPHY_FOCUS_STATUS_NONE: No status available + * @GST_PHOTOGRAPHY_FOCUS_STATUS_RUNNING: Focusing is ongoing + * @GST_PHOTOGRAPHY_FOCUS_STATUS_FAIL: Focusing failed + * @GST_PHOTOGRAPHY_FOCUS_STATUS_SUCCESS: Focusing succeeded + * + * Status of the focusing operation, used in #GST_PHOTOGRAPHY_AUTOFOCUS_DONE + * message. + */ typedef enum { GST_PHOTOGRAPHY_FOCUS_STATUS_NONE = 0, GST_PHOTOGRAPHY_FOCUS_STATUS_RUNNING, GST_PHOTOGRAPHY_FOCUS_STATUS_FAIL, GST_PHOTOGRAPHY_FOCUS_STATUS_SUCCESS -} GstFocusStatus; +} GstPhotographyFocusStatus; +/** + * GstPhotographyCaps: + * + * Bitmask that indicates which #GstPhotography interface features an instance + * supports. + */ typedef enum { GST_PHOTOGRAPHY_CAPS_NONE = (0 << 0), @@ -175,26 +311,63 @@ typedef enum GST_PHOTOGRAPHY_CAPS_APERTURE = (1 << 8), GST_PHOTOGRAPHY_CAPS_EXPOSURE = (1 << 9), GST_PHOTOGRAPHY_CAPS_SHAKE = (1 << 10), - GST_PHOTOGRAPHY_CAPS_NOISE_REDUCTION = (1 << 11), - GST_PHOTOGRAPHY_CAPS_FLICKER_REDUCTION = (1 << 12), + GST_PHOTOGRAPHY_CAPS_WHITE_BALANCE = (1 << 11), + GST_PHOTOGRAPHY_CAPS_NOISE_REDUCTION = (1 << 12), + GST_PHOTOGRAPHY_CAPS_FLICKER_REDUCTION = (1 << 13), GST_PHOTOGRAPHY_CAPS_ALL = (~0) -} GstPhotoCaps; +} GstPhotographyCaps; +/** + * GstPhotographyShakeRisk: + * @GST_PHOTOGRAPHY_SHAKE_RISK_LOW: Low risk + * @GST_PHOTOGRAPHY_SHAKE_RISK_MEDIUM: Medium risk + * @GST_PHOTOGRAPHY_SHAKE_RISK_HIGH: High risk + * + * Risk level of captured image becoming "shaken" due to camera movement and + * too long exposure time. Used in #GST_PHOTOGRAPHY_SHAKE_RISK #GstMessage. + */ typedef enum { GST_PHOTOGRAPHY_SHAKE_RISK_LOW = 0, GST_PHOTOGRAPHY_SHAKE_RISK_MEDIUM, GST_PHOTOGRAPHY_SHAKE_RISK_HIGH, -} GstPhotoShakeRisk; +} GstPhotographyShakeRisk; +/** + * GstPhotographyFlickerReductionMode: + * @GST_PHOTOGRAPHY_FLICKER_REDUCTION_OFF: Disable flicker reduction + * @GST_PHOTOGRAPHY_FLICKER_REDUCTION_50HZ: 50Hz flicker reduction + * @GST_PHOTOGRAPHY_FLICKER_REDUCTION_60HZ: 60Hz flicker reduction + * @GST_PHOTOGRAPHY_FLICKER_REDUCTION_AUTO: Choose mode automatically + * + * Reduce flicker in video caused by light source fluctuation. + */ typedef enum { GST_PHOTOGRAPHY_FLICKER_REDUCTION_OFF = 0, GST_PHOTOGRAPHY_FLICKER_REDUCTION_50HZ, GST_PHOTOGRAPHY_FLICKER_REDUCTION_60HZ, GST_PHOTOGRAPHY_FLICKER_REDUCTION_AUTO, -} GstFlickerReductionMode; +} GstPhotographyFlickerReductionMode; +/** + * GstPhotographyFocusMode: + * @GST_PHOTOGRAPHY_FOCUS_MODE_AUTO: Choose focus mode automatically + * @GST_PHOTOGRAPHY_FOCUS_MODE_MACRO: Mode for focusing objects close to lens + * @GST_PHOTOGRAPHY_FOCUS_MODE_PORTRAIT: Mode for portraits + * @GST_PHOTOGRAPHY_FOCUS_MODE_INFINITY: Mode for landscapes and far away objects + * @GST_PHOTOGRAPHY_FOCUS_MODE_HYPERFOCAL: Mode for maximum depth of field, keeping + * focus acceptable both in infinify and as close objects as possible + * @GST_PHOTOGRAPHY_FOCUS_MODE_EXTENDED: Extended focus mode + * @GST_PHOTOGRAPHY_FOCUS_MODE_CONTINUOUS_NORMAL: Continuous autofocus mode + * @GST_PHOTOGRAPHY_FOCUS_MODE_CONTINUOUS_EXTENDED: Extended continuous + * autofocus mode + * @GST_PHOTOGRAPHY_FOCUS_MODE_MANUAL: Disable automatic focusing + * and keep current value. #GstPhotography:lens-focus property can + * be used to change focus manually. + * + * Choose mode for focusing algorithm. + */ typedef enum { GST_PHOTOGRAPHY_FOCUS_MODE_AUTO = 0, GST_PHOTOGRAPHY_FOCUS_MODE_MACRO, @@ -204,34 +377,62 @@ typedef enum { GST_PHOTOGRAPHY_FOCUS_MODE_EXTENDED, GST_PHOTOGRAPHY_FOCUS_MODE_CONTINUOUS_NORMAL, GST_PHOTOGRAPHY_FOCUS_MODE_CONTINUOUS_EXTENDED, -} GstFocusMode; + GST_PHOTOGRAPHY_FOCUS_MODE_MANUAL +} GstPhotographyFocusMode; + +/** + * GstPhotographyExposureMode: + * @GST_PHOTOGRAPHY_EXPOSURE_MODE_AUTO: Adjust exposure automatically + * @GST_PHOTOGRAPHY_EXPOSURE_MODE_MANUAL: Disable automatic exposure adjustment + * and keep current values. + * + */ +typedef enum { + GST_PHOTOGRAPHY_EXPOSURE_MODE_AUTO = 0, + GST_PHOTOGRAPHY_EXPOSURE_MODE_MANUAL +} GstPhotographyExposureMode; +/** + * GstPhotographySettings: + * + * Structure containing all #GstPhotography settings, used to set all + * settings in one call with @gst_photography_set_config(). + */ typedef struct { - GstWhiteBalanceMode wb_mode; - GstColourToneMode tone_mode; - GstSceneMode scene_mode; - GstFlashMode flash_mode; - guint32 exposure; + GstPhotographyWhiteBalanceMode wb_mode; + GstPhotographyColorToneMode tone_mode; + GstPhotographySceneMode scene_mode; + GstPhotographyFlashMode flash_mode; + guint32 exposure_time; guint aperture; gfloat ev_compensation; guint iso_speed; gfloat zoom; - GstFlickerReductionMode flicker_mode; - GstFocusMode focus_mode; + GstPhotographyFlickerReductionMode flicker_mode; + GstPhotographyFocusMode focus_mode; GstPhotographyNoiseReduction noise_reduction; -} GstPhotoSettings; + GstPhotographyExposureMode exposure_mode; + guint color_temperature; + guint white_point[MAX_WHITE_POINT_VALUES]; + gfloat analog_gain; + gfloat lens_focus; + guint min_exposure_time; + guint max_exposure_time; +} GstPhotographySettings; /** - * GstPhotoCapturePrepared: + * GstPhotographyCapturePrepared: * @data: user data that has been given, when registering the callback * @configured_caps: #GstCaps defining the configured capture format. * Ownership of these caps stays in the element. * * This callback will be called when the element has finished preparations - * for photo capture. + * and is ready for image capture. The next buffer that element produces + * will be of @configured_caps format, so this callback allows the application + * to e.g. reconfigure capsfilters in pipeline if any. */ -typedef void (*GstPhotoCapturePrepared) (gpointer data, +typedef void (*GstPhotographyCapturePrepared) (gpointer data, const GstCaps *configured_caps); /** @@ -242,7 +443,7 @@ typedef void (*GstPhotoCapturePrepared) (gpointer data, * @get_aperture: vmethod to get aperture value * @get_exposure: vmethod to get exposure time value * @get_white_balance_mode: vmethod to get white balance mode value - * @get_colour_tone_mode: vmethod to get colour tone mode value + * @get_color_tone_mode: vmethod to get color tone mode value * @get_scene_mode: vmethod to get scene mode value * @get_flash_mode: vmethod to get flash mode value * @get_noise_reduction: vmethod to get noise reduction mode value @@ -252,7 +453,7 @@ typedef void (*GstPhotoCapturePrepared) (gpointer data, * @set_aperture: vmethod to set aperture value * @set_exposure: vmethod to set exposure time value * @set_white_balance_mode: vmethod to set white balance mode value - * @set_colour_tone_mode: vmethod to set colour tone mode value + * @set_color_tone_mode: vmethod to set color tone mode value * @set_scene_mode: vmethod to set scene mode value * @set_flash_mode: vmethod to set flash mode value * @set_noise_reduction: vmethod to set noise reduction mode value @@ -276,43 +477,43 @@ typedef struct _GstPhotographyInterface gboolean (*get_aperture) (GstPhotography * photo, guint * aperture); gboolean (*get_exposure) (GstPhotography * photo, guint32 * exposure); gboolean (*get_white_balance_mode) (GstPhotography * photo, - GstWhiteBalanceMode * wb_mode); - gboolean (*get_colour_tone_mode) (GstPhotography * photo, - GstColourToneMode * tone_mode); + GstPhotographyWhiteBalanceMode * wb_mode); + gboolean (*get_color_tone_mode) (GstPhotography * photo, + GstPhotographyColorToneMode * tone_mode); gboolean (*get_scene_mode) (GstPhotography * photo, - GstSceneMode * scene_mode); + GstPhotographySceneMode * scene_mode); gboolean (*get_flash_mode) (GstPhotography * photo, - GstFlashMode * flash_mode); + GstPhotographyFlashMode * flash_mode); gboolean (*get_zoom) (GstPhotography * photo, gfloat * zoom); - gboolean (*get_flicker_mode) (GstPhotography * photo, - GstFlickerReductionMode * flicker_mode); + gboolean (*get_flicker_mode) (GstPhotography * photo, + GstPhotographyFlickerReductionMode * flicker_mode); gboolean (*get_focus_mode) (GstPhotography * photo, - GstFocusMode * focus_mode); + GstPhotographyFocusMode * focus_mode); gboolean (*set_ev_compensation) (GstPhotography * photo, gfloat ev_comp); gboolean (*set_iso_speed) (GstPhotography * photo, guint iso_speed); gboolean (*set_aperture) (GstPhotography * photo, guint aperture); gboolean (*set_exposure) (GstPhotography * photo, guint32 exposure); gboolean (*set_white_balance_mode) (GstPhotography * photo, - GstWhiteBalanceMode wb_mode); - gboolean (*set_colour_tone_mode) (GstPhotography * photo, - GstColourToneMode tone_mode); + GstPhotographyWhiteBalanceMode wb_mode); + gboolean (*set_color_tone_mode) (GstPhotography * photo, + GstPhotographyColorToneMode tone_mode); gboolean (*set_scene_mode) (GstPhotography * photo, - GstSceneMode scene_mode); + GstPhotographySceneMode scene_mode); gboolean (*set_flash_mode) (GstPhotography * photo, - GstFlashMode flash_mode); + GstPhotographyFlashMode flash_mode); gboolean (*set_zoom) (GstPhotography * photo, gfloat zoom); gboolean (*set_flicker_mode) (GstPhotography * photo, - GstFlickerReductionMode flicker_mode); + GstPhotographyFlickerReductionMode flicker_mode); gboolean (*set_focus_mode) (GstPhotography * photo, - GstFocusMode focus_mode); + GstPhotographyFocusMode focus_mode); - GstPhotoCaps (*get_capabilities) (GstPhotography * photo); + GstPhotographyCaps (*get_capabilities) (GstPhotography * photo); gboolean (*prepare_for_capture) (GstPhotography * photo, - GstPhotoCapturePrepared func, GstCaps *capture_caps, gpointer user_data); + GstPhotographyCapturePrepared func, GstCaps *capture_caps, gpointer user_data); void (*set_autofocus) (GstPhotography * photo, gboolean on); - gboolean (*set_config) (GstPhotography * photo, GstPhotoSettings * config); - gboolean (*get_config) (GstPhotography * photo, GstPhotoSettings * config); + gboolean (*set_config) (GstPhotography * photo, GstPhotographySettings * config); + gboolean (*get_config) (GstPhotography * photo, GstPhotographySettings * config); gboolean (*get_noise_reduction) (GstPhotography * photo, GstPhotographyNoiseReduction * noise_reduction); @@ -335,20 +536,20 @@ gboolean gst_photography_get_aperture (GstPhotography * photo, gboolean gst_photography_get_exposure (GstPhotography * photo, guint32 * exposure); gboolean gst_photography_get_white_balance_mode (GstPhotography * photo, - GstWhiteBalanceMode * wb_mode); -gboolean gst_photography_get_colour_tone_mode (GstPhotography * photo, - GstColourToneMode * tone_mode); + GstPhotographyWhiteBalanceMode * wb_mode); +gboolean gst_photography_get_color_tone_mode (GstPhotography * photo, + GstPhotographyColorToneMode * tone_mode); gboolean gst_photography_get_scene_mode (GstPhotography * photo, - GstSceneMode * scene_mode); + GstPhotographySceneMode * scene_mode); gboolean gst_photography_get_flash_mode (GstPhotography * photo, - GstFlashMode * flash_mode); + GstPhotographyFlashMode * flash_mode); gboolean gst_photography_get_noise_reduction (GstPhotography * photo, GstPhotographyNoiseReduction * noise_reduction); gboolean gst_photography_get_zoom (GstPhotography * photo, gfloat * zoom); gboolean gst_photography_get_flicker_mode (GstPhotography * photo, - GstFlickerReductionMode *mode); + GstPhotographyFlickerReductionMode *mode); gboolean gst_photography_get_focus_mode (GstPhotography * photo, - GstFocusMode *mode); + GstPhotographyFocusMode *mode); gboolean gst_photography_set_ev_compensation (GstPhotography * photo, gfloat ev_comp); @@ -357,32 +558,32 @@ gboolean gst_photography_set_iso_speed (GstPhotography * photo, gboolean gst_photography_set_aperture (GstPhotography * photo, guint aperture); gboolean gst_photography_set_exposure (GstPhotography * photo, guint exposure); gboolean gst_photography_set_white_balance_mode (GstPhotography * photo, - GstWhiteBalanceMode wb_mode); -gboolean gst_photography_set_colour_tone_mode (GstPhotography * photo, - GstColourToneMode tone_mode); + GstPhotographyWhiteBalanceMode wb_mode); +gboolean gst_photography_set_color_tone_mode (GstPhotography * photo, + GstPhotographyColorToneMode tone_mode); gboolean gst_photography_set_scene_mode (GstPhotography * photo, - GstSceneMode scene_mode); + GstPhotographySceneMode scene_mode); gboolean gst_photography_set_flash_mode (GstPhotography * photo, - GstFlashMode flash_mode); + GstPhotographyFlashMode flash_mode); gboolean gst_photography_set_noise_reduction (GstPhotography * photo, GstPhotographyNoiseReduction noise_reduction); gboolean gst_photography_set_zoom (GstPhotography * photo, gfloat zoom); gboolean gst_photography_set_flicker_mode (GstPhotography * photo, - GstFlickerReductionMode mode); + GstPhotographyFlickerReductionMode mode); gboolean gst_photography_set_focus_mode (GstPhotography * photo, - GstFocusMode mode); + GstPhotographyFocusMode mode); -GstPhotoCaps gst_photography_get_capabilities (GstPhotography * photo); +GstPhotographyCaps gst_photography_get_capabilities (GstPhotography * photo); gboolean gst_photography_prepare_for_capture (GstPhotography * photo, - GstPhotoCapturePrepared func, GstCaps *capture_caps, gpointer user_data); + GstPhotographyCapturePrepared func, GstCaps *capture_caps, gpointer user_data); void gst_photography_set_autofocus (GstPhotography * photo, gboolean on); gboolean gst_photography_set_config (GstPhotography * photo, - GstPhotoSettings * config); + GstPhotographySettings * config); gboolean gst_photography_get_config (GstPhotography * photo, - GstPhotoSettings * config); + GstPhotographySettings * config); G_END_DECLS diff --git a/gst-libs/gst/signalprocessor/Makefile.in b/gst-libs/gst/signalprocessor/Makefile.in index 3a488196..258ea420 100644 --- a/gst-libs/gst/signalprocessor/Makefile.in +++ b/gst-libs/gst/signalprocessor/Makefile.in @@ -1,4 +1,4 @@ -# Makefile.in generated by automake 1.11.5 from Makefile.am. +# Makefile.in generated by automake 1.11.6 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, @@ -242,11 +242,10 @@ DIRECT3D_LIBS = @DIRECT3D_LIBS@ DIRECTDRAW_LIBS = @DIRECTDRAW_LIBS@ DIRECTFB_CFLAGS = @DIRECTFB_CFLAGS@ DIRECTFB_LIBS = @DIRECTFB_LIBS@ +DIRECTSHOW_LIBS = @DIRECTSHOW_LIBS@ DIRECTSOUND_LIBS = @DIRECTSOUND_LIBS@ DIRECTX_CFLAGS = @DIRECTX_CFLAGS@ DIRECTX_LDFLAGS = @DIRECTX_LDFLAGS@ -DIVXDEC_LIBS = @DIVXDEC_LIBS@ -DIVXENC_LIBS = @DIVXENC_LIBS@ DLLTOOL = @DLLTOOL@ DSYMUTIL = @DSYMUTIL@ DTS_LIBS = @DTS_LIBS@ @@ -281,7 +280,9 @@ GIO_LIBS = @GIO_LIBS@ GLIB_CFLAGS = @GLIB_CFLAGS@ GLIB_COMPILE_SCHEMAS = @GLIB_COMPILE_SCHEMAS@ GLIB_EXTRA_CFLAGS = @GLIB_EXTRA_CFLAGS@ +GLIB_GENMARSHAL = @GLIB_GENMARSHAL@ GLIB_LIBS = @GLIB_LIBS@ +GLIB_MKENUMS = @GLIB_MKENUMS@ GLIB_PREFIX = @GLIB_PREFIX@ GLIB_REQ = @GLIB_REQ@ GME_LIBS = @GME_LIBS@ @@ -357,13 +358,14 @@ HAVE_CXX = @HAVE_CXX@ HAVE_DIRECT3D = @HAVE_DIRECT3D@ HAVE_DIRECT3D9 = @HAVE_DIRECT3D9@ HAVE_DIRECTDRAW = @HAVE_DIRECTDRAW@ +HAVE_DIRECTSHOW = @HAVE_DIRECTSHOW@ HAVE_DIRECTSOUND = @HAVE_DIRECTSOUND@ HAVE_DTS = @HAVE_DTS@ HAVE_FAAC = @HAVE_FAAC@ HAVE_FAAD = @HAVE_FAAD@ HAVE_FLITE = @HAVE_FLITE@ HAVE_GSM = @HAVE_GSM@ -HAVE_JP2K = @HAVE_JP2K@ +HAVE_JASPER = @HAVE_JASPER@ HAVE_NAS = @HAVE_NAS@ HAVE_VPX = @HAVE_VPX@ HAVE_WILDMIDI = @HAVE_WILDMIDI@ @@ -377,7 +379,7 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ INTLLIBS = @INTLLIBS@ INTL_MACOSX_LIBS = @INTL_MACOSX_LIBS@ -JP2K_LIBS = @JP2K_LIBS@ +JASPER_LIBS = @JASPER_LIBS@ KATE_CFLAGS = @KATE_CFLAGS@ KATE_LIBS = @KATE_LIBS@ LD = @LD@ @@ -413,6 +415,8 @@ MODPLUG_CFLAGS = @MODPLUG_CFLAGS@ MODPLUG_LIBS = @MODPLUG_LIBS@ MPEG2ENC_CFLAGS = @MPEG2ENC_CFLAGS@ MPEG2ENC_LIBS = @MPEG2ENC_LIBS@ +MPG123_CFLAGS = @MPG123_CFLAGS@ +MPG123_LIBS = @MPG123_LIBS@ MPLEX_CFLAGS = @MPLEX_CFLAGS@ MPLEX_LDFLAGS = @MPLEX_LDFLAGS@ MPLEX_LIBS = @MPLEX_LIBS@ diff --git a/gst-libs/gst/video/Makefile.in b/gst-libs/gst/video/Makefile.in index 29c1b87b..694324fc 100644 --- a/gst-libs/gst/video/Makefile.in +++ b/gst-libs/gst/video/Makefile.in @@ -1,4 +1,4 @@ -# Makefile.in generated by automake 1.11.5 from Makefile.am. +# Makefile.in generated by automake 1.11.6 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, @@ -244,11 +244,10 @@ DIRECT3D_LIBS = @DIRECT3D_LIBS@ DIRECTDRAW_LIBS = @DIRECTDRAW_LIBS@ DIRECTFB_CFLAGS = @DIRECTFB_CFLAGS@ DIRECTFB_LIBS = @DIRECTFB_LIBS@ +DIRECTSHOW_LIBS = @DIRECTSHOW_LIBS@ DIRECTSOUND_LIBS = @DIRECTSOUND_LIBS@ DIRECTX_CFLAGS = @DIRECTX_CFLAGS@ DIRECTX_LDFLAGS = @DIRECTX_LDFLAGS@ -DIVXDEC_LIBS = @DIVXDEC_LIBS@ -DIVXENC_LIBS = @DIVXENC_LIBS@ DLLTOOL = @DLLTOOL@ DSYMUTIL = @DSYMUTIL@ DTS_LIBS = @DTS_LIBS@ @@ -283,7 +282,9 @@ GIO_LIBS = @GIO_LIBS@ GLIB_CFLAGS = @GLIB_CFLAGS@ GLIB_COMPILE_SCHEMAS = @GLIB_COMPILE_SCHEMAS@ GLIB_EXTRA_CFLAGS = @GLIB_EXTRA_CFLAGS@ +GLIB_GENMARSHAL = @GLIB_GENMARSHAL@ GLIB_LIBS = @GLIB_LIBS@ +GLIB_MKENUMS = @GLIB_MKENUMS@ GLIB_PREFIX = @GLIB_PREFIX@ GLIB_REQ = @GLIB_REQ@ GME_LIBS = @GME_LIBS@ @@ -359,13 +360,14 @@ HAVE_CXX = @HAVE_CXX@ HAVE_DIRECT3D = @HAVE_DIRECT3D@ HAVE_DIRECT3D9 = @HAVE_DIRECT3D9@ HAVE_DIRECTDRAW = @HAVE_DIRECTDRAW@ +HAVE_DIRECTSHOW = @HAVE_DIRECTSHOW@ HAVE_DIRECTSOUND = @HAVE_DIRECTSOUND@ HAVE_DTS = @HAVE_DTS@ HAVE_FAAC = @HAVE_FAAC@ HAVE_FAAD = @HAVE_FAAD@ HAVE_FLITE = @HAVE_FLITE@ HAVE_GSM = @HAVE_GSM@ -HAVE_JP2K = @HAVE_JP2K@ +HAVE_JASPER = @HAVE_JASPER@ HAVE_NAS = @HAVE_NAS@ HAVE_VPX = @HAVE_VPX@ HAVE_WILDMIDI = @HAVE_WILDMIDI@ @@ -379,7 +381,7 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ INTLLIBS = @INTLLIBS@ INTL_MACOSX_LIBS = @INTL_MACOSX_LIBS@ -JP2K_LIBS = @JP2K_LIBS@ +JASPER_LIBS = @JASPER_LIBS@ KATE_CFLAGS = @KATE_CFLAGS@ KATE_LIBS = @KATE_LIBS@ LD = @LD@ @@ -415,6 +417,8 @@ MODPLUG_CFLAGS = @MODPLUG_CFLAGS@ MODPLUG_LIBS = @MODPLUG_LIBS@ MPEG2ENC_CFLAGS = @MPEG2ENC_CFLAGS@ MPEG2ENC_LIBS = @MPEG2ENC_LIBS@ +MPG123_CFLAGS = @MPG123_CFLAGS@ +MPG123_LIBS = @MPG123_LIBS@ MPLEX_CFLAGS = @MPLEX_CFLAGS@ MPLEX_LDFLAGS = @MPLEX_LDFLAGS@ MPLEX_LIBS = @MPLEX_LIBS@ diff --git a/gst-libs/gst/video/videocontext.c b/gst-libs/gst/video/videocontext.c index e84aa213..0c976829 100644 --- a/gst-libs/gst/video/videocontext.c +++ b/gst-libs/gst/video/videocontext.c @@ -162,7 +162,7 @@ * * #if CLUTTER_WINDOWING_X11 * gst_bus_set_sync_handler (priv->bus, on_sync_message, - * clutter_x11_get_default_display ()); + * clutter_x11_get_default_display (), NULL); * #endif * * gst_object_unref (GST_OBJECT (priv->bus)); diff --git a/gst-plugins-bad.doap b/gst-plugins-bad.doap index 173d0c8d..bec1fd1f 100644 --- a/gst-plugins-bad.doap +++ b/gst-plugins-bad.doap @@ -35,6 +35,16 @@ real live maintainer, or some actual wide use. <release> <Version> + <revision>0.11.93</revision> + <branch>0.11</branch> + <name>Infralove</name> + <created>2012-08-08</created> + <file-release rdf:resource="http://gstreamer.freedesktop.org/src/gst-plugins-bad/gst-plugins-bad-0.11.93.tar.xz" /> + </Version> + </release> + + <release> + <Version> <revision>0.11.92</revision> <branch>0.11</branch> <name>Shine On You Crazy Diamond</name> diff --git a/gst-plugins-bad.spec b/gst-plugins-bad.spec index d2ffa5ae..aab4d131 100644 --- a/gst-plugins-bad.spec +++ b/gst-plugins-bad.spec @@ -6,7 +6,7 @@ Summary: GStreamer streaming media framework "bad" plug-ins Name: gstreamer-plugins-bad011 -Version: 0.11.92 +Version: 0.11.93 Release: 1.gst # The freeze and nfs plugins are LGPLv2 (only) License: LGPLv2+ and LGPLv2 @@ -228,7 +228,6 @@ make ERROR_CFLAGS='' ERROR_CXXFLAGS='' # %{_libdir}/gstreamer-%{majorminor}/libgstid3tag.so # %{_libdir}/gstreamer-%{majorminor}/libgstivfparse.so # %{_libdir}/gstreamer-%{majorminor}/libgstjpegformat.so -# %{_libdir}/gstreamer-%{majorminor}/libgstlegacyresample.so # %{_libdir}/gstreamer-%{majorminor}/libgstliveadder.so %{_libdir}/gstreamer-%{majorminor}/libgstmpegdemux.so # %{_libdir}/gstreamer-%{majorminor}/libgstmve.so diff --git a/gst-plugins-bad.spec.in b/gst-plugins-bad.spec.in index 2964e004..4ef93788 100644 --- a/gst-plugins-bad.spec.in +++ b/gst-plugins-bad.spec.in @@ -228,7 +228,6 @@ make ERROR_CFLAGS='' ERROR_CXXFLAGS='' # %{_libdir}/gstreamer-%{majorminor}/libgstid3tag.so # %{_libdir}/gstreamer-%{majorminor}/libgstivfparse.so # %{_libdir}/gstreamer-%{majorminor}/libgstjpegformat.so -# %{_libdir}/gstreamer-%{majorminor}/libgstlegacyresample.so # %{_libdir}/gstreamer-%{majorminor}/libgstliveadder.so %{_libdir}/gstreamer-%{majorminor}/libgstmpegdemux.so # %{_libdir}/gstreamer-%{majorminor}/libgstmve.so diff --git a/gst/Makefile.in b/gst/Makefile.in index 408f45c9..bcaae154 100644 --- a/gst/Makefile.in +++ b/gst/Makefile.in @@ -1,4 +1,4 @@ -# Makefile.in generated by automake 1.11.5 from Makefile.am. +# Makefile.in generated by automake 1.11.6 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, @@ -215,11 +215,10 @@ DIRECT3D_LIBS = @DIRECT3D_LIBS@ DIRECTDRAW_LIBS = @DIRECTDRAW_LIBS@ DIRECTFB_CFLAGS = @DIRECTFB_CFLAGS@ DIRECTFB_LIBS = @DIRECTFB_LIBS@ +DIRECTSHOW_LIBS = @DIRECTSHOW_LIBS@ DIRECTSOUND_LIBS = @DIRECTSOUND_LIBS@ DIRECTX_CFLAGS = @DIRECTX_CFLAGS@ DIRECTX_LDFLAGS = @DIRECTX_LDFLAGS@ -DIVXDEC_LIBS = @DIVXDEC_LIBS@ -DIVXENC_LIBS = @DIVXENC_LIBS@ DLLTOOL = @DLLTOOL@ DSYMUTIL = @DSYMUTIL@ DTS_LIBS = @DTS_LIBS@ @@ -254,7 +253,9 @@ GIO_LIBS = @GIO_LIBS@ GLIB_CFLAGS = @GLIB_CFLAGS@ GLIB_COMPILE_SCHEMAS = @GLIB_COMPILE_SCHEMAS@ GLIB_EXTRA_CFLAGS = @GLIB_EXTRA_CFLAGS@ +GLIB_GENMARSHAL = @GLIB_GENMARSHAL@ GLIB_LIBS = @GLIB_LIBS@ +GLIB_MKENUMS = @GLIB_MKENUMS@ GLIB_PREFIX = @GLIB_PREFIX@ GLIB_REQ = @GLIB_REQ@ GME_LIBS = @GME_LIBS@ @@ -330,13 +331,14 @@ HAVE_CXX = @HAVE_CXX@ HAVE_DIRECT3D = @HAVE_DIRECT3D@ HAVE_DIRECT3D9 = @HAVE_DIRECT3D9@ HAVE_DIRECTDRAW = @HAVE_DIRECTDRAW@ +HAVE_DIRECTSHOW = @HAVE_DIRECTSHOW@ HAVE_DIRECTSOUND = @HAVE_DIRECTSOUND@ HAVE_DTS = @HAVE_DTS@ HAVE_FAAC = @HAVE_FAAC@ HAVE_FAAD = @HAVE_FAAD@ HAVE_FLITE = @HAVE_FLITE@ HAVE_GSM = @HAVE_GSM@ -HAVE_JP2K = @HAVE_JP2K@ +HAVE_JASPER = @HAVE_JASPER@ HAVE_NAS = @HAVE_NAS@ HAVE_VPX = @HAVE_VPX@ HAVE_WILDMIDI = @HAVE_WILDMIDI@ @@ -350,7 +352,7 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ INTLLIBS = @INTLLIBS@ INTL_MACOSX_LIBS = @INTL_MACOSX_LIBS@ -JP2K_LIBS = @JP2K_LIBS@ +JASPER_LIBS = @JASPER_LIBS@ KATE_CFLAGS = @KATE_CFLAGS@ KATE_LIBS = @KATE_LIBS@ LD = @LD@ @@ -386,6 +388,8 @@ MODPLUG_CFLAGS = @MODPLUG_CFLAGS@ MODPLUG_LIBS = @MODPLUG_LIBS@ MPEG2ENC_CFLAGS = @MPEG2ENC_CFLAGS@ MPEG2ENC_LIBS = @MPEG2ENC_LIBS@ +MPG123_CFLAGS = @MPG123_CFLAGS@ +MPG123_LIBS = @MPG123_LIBS@ MPLEX_CFLAGS = @MPLEX_CFLAGS@ MPLEX_LDFLAGS = @MPLEX_LDFLAGS@ MPLEX_LIBS = @MPLEX_LIBS@ diff --git a/gst/adpcmdec/Makefile.in b/gst/adpcmdec/Makefile.in index df19c021..07e0d4a9 100644 --- a/gst/adpcmdec/Makefile.in +++ b/gst/adpcmdec/Makefile.in @@ -1,4 +1,4 @@ -# Makefile.in generated by automake 1.11.5 from Makefile.am. +# Makefile.in generated by automake 1.11.6 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, @@ -234,11 +234,10 @@ DIRECT3D_LIBS = @DIRECT3D_LIBS@ DIRECTDRAW_LIBS = @DIRECTDRAW_LIBS@ DIRECTFB_CFLAGS = @DIRECTFB_CFLAGS@ DIRECTFB_LIBS = @DIRECTFB_LIBS@ +DIRECTSHOW_LIBS = @DIRECTSHOW_LIBS@ DIRECTSOUND_LIBS = @DIRECTSOUND_LIBS@ DIRECTX_CFLAGS = @DIRECTX_CFLAGS@ DIRECTX_LDFLAGS = @DIRECTX_LDFLAGS@ -DIVXDEC_LIBS = @DIVXDEC_LIBS@ -DIVXENC_LIBS = @DIVXENC_LIBS@ DLLTOOL = @DLLTOOL@ DSYMUTIL = @DSYMUTIL@ DTS_LIBS = @DTS_LIBS@ @@ -273,7 +272,9 @@ GIO_LIBS = @GIO_LIBS@ GLIB_CFLAGS = @GLIB_CFLAGS@ GLIB_COMPILE_SCHEMAS = @GLIB_COMPILE_SCHEMAS@ GLIB_EXTRA_CFLAGS = @GLIB_EXTRA_CFLAGS@ +GLIB_GENMARSHAL = @GLIB_GENMARSHAL@ GLIB_LIBS = @GLIB_LIBS@ +GLIB_MKENUMS = @GLIB_MKENUMS@ GLIB_PREFIX = @GLIB_PREFIX@ GLIB_REQ = @GLIB_REQ@ GME_LIBS = @GME_LIBS@ @@ -349,13 +350,14 @@ HAVE_CXX = @HAVE_CXX@ HAVE_DIRECT3D = @HAVE_DIRECT3D@ HAVE_DIRECT3D9 = @HAVE_DIRECT3D9@ HAVE_DIRECTDRAW = @HAVE_DIRECTDRAW@ +HAVE_DIRECTSHOW = @HAVE_DIRECTSHOW@ HAVE_DIRECTSOUND = @HAVE_DIRECTSOUND@ HAVE_DTS = @HAVE_DTS@ HAVE_FAAC = @HAVE_FAAC@ HAVE_FAAD = @HAVE_FAAD@ HAVE_FLITE = @HAVE_FLITE@ HAVE_GSM = @HAVE_GSM@ -HAVE_JP2K = @HAVE_JP2K@ +HAVE_JASPER = @HAVE_JASPER@ HAVE_NAS = @HAVE_NAS@ HAVE_VPX = @HAVE_VPX@ HAVE_WILDMIDI = @HAVE_WILDMIDI@ @@ -369,7 +371,7 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ INTLLIBS = @INTLLIBS@ INTL_MACOSX_LIBS = @INTL_MACOSX_LIBS@ -JP2K_LIBS = @JP2K_LIBS@ +JASPER_LIBS = @JASPER_LIBS@ KATE_CFLAGS = @KATE_CFLAGS@ KATE_LIBS = @KATE_LIBS@ LD = @LD@ @@ -405,6 +407,8 @@ MODPLUG_CFLAGS = @MODPLUG_CFLAGS@ MODPLUG_LIBS = @MODPLUG_LIBS@ MPEG2ENC_CFLAGS = @MPEG2ENC_CFLAGS@ MPEG2ENC_LIBS = @MPEG2ENC_LIBS@ +MPG123_CFLAGS = @MPG123_CFLAGS@ +MPG123_LIBS = @MPG123_LIBS@ MPLEX_CFLAGS = @MPLEX_CFLAGS@ MPLEX_LDFLAGS = @MPLEX_LDFLAGS@ MPLEX_LIBS = @MPLEX_LIBS@ diff --git a/gst/adpcmenc/Makefile.in b/gst/adpcmenc/Makefile.in index ca7c9b4c..f1c39254 100644 --- a/gst/adpcmenc/Makefile.in +++ b/gst/adpcmenc/Makefile.in @@ -1,4 +1,4 @@ -# Makefile.in generated by automake 1.11.5 from Makefile.am. +# Makefile.in generated by automake 1.11.6 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, @@ -234,11 +234,10 @@ DIRECT3D_LIBS = @DIRECT3D_LIBS@ DIRECTDRAW_LIBS = @DIRECTDRAW_LIBS@ DIRECTFB_CFLAGS = @DIRECTFB_CFLAGS@ DIRECTFB_LIBS = @DIRECTFB_LIBS@ +DIRECTSHOW_LIBS = @DIRECTSHOW_LIBS@ DIRECTSOUND_LIBS = @DIRECTSOUND_LIBS@ DIRECTX_CFLAGS = @DIRECTX_CFLAGS@ DIRECTX_LDFLAGS = @DIRECTX_LDFLAGS@ -DIVXDEC_LIBS = @DIVXDEC_LIBS@ -DIVXENC_LIBS = @DIVXENC_LIBS@ DLLTOOL = @DLLTOOL@ DSYMUTIL = @DSYMUTIL@ DTS_LIBS = @DTS_LIBS@ @@ -273,7 +272,9 @@ GIO_LIBS = @GIO_LIBS@ GLIB_CFLAGS = @GLIB_CFLAGS@ GLIB_COMPILE_SCHEMAS = @GLIB_COMPILE_SCHEMAS@ GLIB_EXTRA_CFLAGS = @GLIB_EXTRA_CFLAGS@ +GLIB_GENMARSHAL = @GLIB_GENMARSHAL@ GLIB_LIBS = @GLIB_LIBS@ +GLIB_MKENUMS = @GLIB_MKENUMS@ GLIB_PREFIX = @GLIB_PREFIX@ GLIB_REQ = @GLIB_REQ@ GME_LIBS = @GME_LIBS@ @@ -349,13 +350,14 @@ HAVE_CXX = @HAVE_CXX@ HAVE_DIRECT3D = @HAVE_DIRECT3D@ HAVE_DIRECT3D9 = @HAVE_DIRECT3D9@ HAVE_DIRECTDRAW = @HAVE_DIRECTDRAW@ +HAVE_DIRECTSHOW = @HAVE_DIRECTSHOW@ HAVE_DIRECTSOUND = @HAVE_DIRECTSOUND@ HAVE_DTS = @HAVE_DTS@ HAVE_FAAC = @HAVE_FAAC@ HAVE_FAAD = @HAVE_FAAD@ HAVE_FLITE = @HAVE_FLITE@ HAVE_GSM = @HAVE_GSM@ -HAVE_JP2K = @HAVE_JP2K@ +HAVE_JASPER = @HAVE_JASPER@ HAVE_NAS = @HAVE_NAS@ HAVE_VPX = @HAVE_VPX@ HAVE_WILDMIDI = @HAVE_WILDMIDI@ @@ -369,7 +371,7 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ INTLLIBS = @INTLLIBS@ INTL_MACOSX_LIBS = @INTL_MACOSX_LIBS@ -JP2K_LIBS = @JP2K_LIBS@ +JASPER_LIBS = @JASPER_LIBS@ KATE_CFLAGS = @KATE_CFLAGS@ KATE_LIBS = @KATE_LIBS@ LD = @LD@ @@ -405,6 +407,8 @@ MODPLUG_CFLAGS = @MODPLUG_CFLAGS@ MODPLUG_LIBS = @MODPLUG_LIBS@ MPEG2ENC_CFLAGS = @MPEG2ENC_CFLAGS@ MPEG2ENC_LIBS = @MPEG2ENC_LIBS@ +MPG123_CFLAGS = @MPG123_CFLAGS@ +MPG123_LIBS = @MPG123_LIBS@ MPLEX_CFLAGS = @MPLEX_CFLAGS@ MPLEX_LDFLAGS = @MPLEX_LDFLAGS@ MPLEX_LIBS = @MPLEX_LIBS@ diff --git a/gst/aiff/Makefile.in b/gst/aiff/Makefile.in index dbc2e083..90abac09 100644 --- a/gst/aiff/Makefile.in +++ b/gst/aiff/Makefile.in @@ -1,4 +1,4 @@ -# Makefile.in generated by automake 1.11.5 from Makefile.am. +# Makefile.in generated by automake 1.11.6 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, @@ -238,11 +238,10 @@ DIRECT3D_LIBS = @DIRECT3D_LIBS@ DIRECTDRAW_LIBS = @DIRECTDRAW_LIBS@ DIRECTFB_CFLAGS = @DIRECTFB_CFLAGS@ DIRECTFB_LIBS = @DIRECTFB_LIBS@ +DIRECTSHOW_LIBS = @DIRECTSHOW_LIBS@ DIRECTSOUND_LIBS = @DIRECTSOUND_LIBS@ DIRECTX_CFLAGS = @DIRECTX_CFLAGS@ DIRECTX_LDFLAGS = @DIRECTX_LDFLAGS@ -DIVXDEC_LIBS = @DIVXDEC_LIBS@ -DIVXENC_LIBS = @DIVXENC_LIBS@ DLLTOOL = @DLLTOOL@ DSYMUTIL = @DSYMUTIL@ DTS_LIBS = @DTS_LIBS@ @@ -277,7 +276,9 @@ GIO_LIBS = @GIO_LIBS@ GLIB_CFLAGS = @GLIB_CFLAGS@ GLIB_COMPILE_SCHEMAS = @GLIB_COMPILE_SCHEMAS@ GLIB_EXTRA_CFLAGS = @GLIB_EXTRA_CFLAGS@ +GLIB_GENMARSHAL = @GLIB_GENMARSHAL@ GLIB_LIBS = @GLIB_LIBS@ +GLIB_MKENUMS = @GLIB_MKENUMS@ GLIB_PREFIX = @GLIB_PREFIX@ GLIB_REQ = @GLIB_REQ@ GME_LIBS = @GME_LIBS@ @@ -353,13 +354,14 @@ HAVE_CXX = @HAVE_CXX@ HAVE_DIRECT3D = @HAVE_DIRECT3D@ HAVE_DIRECT3D9 = @HAVE_DIRECT3D9@ HAVE_DIRECTDRAW = @HAVE_DIRECTDRAW@ +HAVE_DIRECTSHOW = @HAVE_DIRECTSHOW@ HAVE_DIRECTSOUND = @HAVE_DIRECTSOUND@ HAVE_DTS = @HAVE_DTS@ HAVE_FAAC = @HAVE_FAAC@ HAVE_FAAD = @HAVE_FAAD@ HAVE_FLITE = @HAVE_FLITE@ HAVE_GSM = @HAVE_GSM@ -HAVE_JP2K = @HAVE_JP2K@ +HAVE_JASPER = @HAVE_JASPER@ HAVE_NAS = @HAVE_NAS@ HAVE_VPX = @HAVE_VPX@ HAVE_WILDMIDI = @HAVE_WILDMIDI@ @@ -373,7 +375,7 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ INTLLIBS = @INTLLIBS@ INTL_MACOSX_LIBS = @INTL_MACOSX_LIBS@ -JP2K_LIBS = @JP2K_LIBS@ +JASPER_LIBS = @JASPER_LIBS@ KATE_CFLAGS = @KATE_CFLAGS@ KATE_LIBS = @KATE_LIBS@ LD = @LD@ @@ -409,6 +411,8 @@ MODPLUG_CFLAGS = @MODPLUG_CFLAGS@ MODPLUG_LIBS = @MODPLUG_LIBS@ MPEG2ENC_CFLAGS = @MPEG2ENC_CFLAGS@ MPEG2ENC_LIBS = @MPEG2ENC_LIBS@ +MPG123_CFLAGS = @MPG123_CFLAGS@ +MPG123_LIBS = @MPG123_LIBS@ MPLEX_CFLAGS = @MPLEX_CFLAGS@ MPLEX_LDFLAGS = @MPLEX_LDFLAGS@ MPLEX_LIBS = @MPLEX_LIBS@ diff --git a/gst/aiff/aiffparse.c b/gst/aiff/aiffparse.c index 4fe5f64e..937be7f1 100644 --- a/gst/aiff/aiffparse.c +++ b/gst/aiff/aiffparse.c @@ -171,7 +171,7 @@ gst_aiff_parse_reset (GstAiffParse * aiff) } if (aiff->tags != NULL) { - gst_tag_list_free (aiff->tags); + gst_tag_list_unref (aiff->tags); aiff->tags = NULL; } } @@ -480,7 +480,7 @@ gst_aiff_parse_perform_seek (GstAiffParse * aiff, GstEvent * event) aiff->segment_running = TRUE; if (!aiff->streaming) { gst_pad_start_task (aiff->sinkpad, (GstTaskFunction) gst_aiff_parse_loop, - aiff->sinkpad); + aiff->sinkpad, NULL); } GST_PAD_STREAM_UNLOCK (aiff->sinkpad); @@ -931,7 +931,7 @@ gst_aiff_parse_stream_headers (GstAiffParse * aiff) aiff->tags = tags; } else { gst_tag_list_insert (aiff->tags, tags, GST_TAG_MERGE_APPEND); - gst_tag_list_free (tags); + gst_tag_list_unref (tags); } break; } @@ -1314,6 +1314,8 @@ pause: gst_element_post_message (GST_ELEMENT_CAST (aiff), gst_message_new_segment_done (GST_OBJECT_CAST (aiff), aiff->segment.format, stop)); + gst_pad_push_event (aiff->srcpad, + gst_evnet_new_segment_done (aiff->segment.format, stop)); } else { gst_pad_push_event (aiff->srcpad, gst_event_new_eos ()); } @@ -1600,7 +1602,7 @@ gst_aiff_parse_sink_activate_pull (GstPad * sinkpad, gboolean active) if (active) { aiff->segment_running = TRUE; return gst_pad_start_task (sinkpad, (GstTaskFunction) gst_aiff_parse_loop, - sinkpad); + sinkpad, NULL); } else { aiff->segment_running = FALSE; return gst_pad_stop_task (sinkpad); diff --git a/gst/asfmux/Makefile.in b/gst/asfmux/Makefile.in index 0a5b83b2..9c01220a 100644 --- a/gst/asfmux/Makefile.in +++ b/gst/asfmux/Makefile.in @@ -1,4 +1,4 @@ -# Makefile.in generated by automake 1.11.5 from Makefile.am. +# Makefile.in generated by automake 1.11.6 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, @@ -242,11 +242,10 @@ DIRECT3D_LIBS = @DIRECT3D_LIBS@ DIRECTDRAW_LIBS = @DIRECTDRAW_LIBS@ DIRECTFB_CFLAGS = @DIRECTFB_CFLAGS@ DIRECTFB_LIBS = @DIRECTFB_LIBS@ +DIRECTSHOW_LIBS = @DIRECTSHOW_LIBS@ DIRECTSOUND_LIBS = @DIRECTSOUND_LIBS@ DIRECTX_CFLAGS = @DIRECTX_CFLAGS@ DIRECTX_LDFLAGS = @DIRECTX_LDFLAGS@ -DIVXDEC_LIBS = @DIVXDEC_LIBS@ -DIVXENC_LIBS = @DIVXENC_LIBS@ DLLTOOL = @DLLTOOL@ DSYMUTIL = @DSYMUTIL@ DTS_LIBS = @DTS_LIBS@ @@ -281,7 +280,9 @@ GIO_LIBS = @GIO_LIBS@ GLIB_CFLAGS = @GLIB_CFLAGS@ GLIB_COMPILE_SCHEMAS = @GLIB_COMPILE_SCHEMAS@ GLIB_EXTRA_CFLAGS = @GLIB_EXTRA_CFLAGS@ +GLIB_GENMARSHAL = @GLIB_GENMARSHAL@ GLIB_LIBS = @GLIB_LIBS@ +GLIB_MKENUMS = @GLIB_MKENUMS@ GLIB_PREFIX = @GLIB_PREFIX@ GLIB_REQ = @GLIB_REQ@ GME_LIBS = @GME_LIBS@ @@ -357,13 +358,14 @@ HAVE_CXX = @HAVE_CXX@ HAVE_DIRECT3D = @HAVE_DIRECT3D@ HAVE_DIRECT3D9 = @HAVE_DIRECT3D9@ HAVE_DIRECTDRAW = @HAVE_DIRECTDRAW@ +HAVE_DIRECTSHOW = @HAVE_DIRECTSHOW@ HAVE_DIRECTSOUND = @HAVE_DIRECTSOUND@ HAVE_DTS = @HAVE_DTS@ HAVE_FAAC = @HAVE_FAAC@ HAVE_FAAD = @HAVE_FAAD@ HAVE_FLITE = @HAVE_FLITE@ HAVE_GSM = @HAVE_GSM@ -HAVE_JP2K = @HAVE_JP2K@ +HAVE_JASPER = @HAVE_JASPER@ HAVE_NAS = @HAVE_NAS@ HAVE_VPX = @HAVE_VPX@ HAVE_WILDMIDI = @HAVE_WILDMIDI@ @@ -377,7 +379,7 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ INTLLIBS = @INTLLIBS@ INTL_MACOSX_LIBS = @INTL_MACOSX_LIBS@ -JP2K_LIBS = @JP2K_LIBS@ +JASPER_LIBS = @JASPER_LIBS@ KATE_CFLAGS = @KATE_CFLAGS@ KATE_LIBS = @KATE_LIBS@ LD = @LD@ @@ -413,6 +415,8 @@ MODPLUG_CFLAGS = @MODPLUG_CFLAGS@ MODPLUG_LIBS = @MODPLUG_LIBS@ MPEG2ENC_CFLAGS = @MPEG2ENC_CFLAGS@ MPEG2ENC_LIBS = @MPEG2ENC_LIBS@ +MPG123_CFLAGS = @MPG123_CFLAGS@ +MPG123_LIBS = @MPG123_LIBS@ MPLEX_CFLAGS = @MPLEX_CFLAGS@ MPLEX_LDFLAGS = @MPLEX_LDFLAGS@ MPLEX_LIBS = @MPLEX_LIBS@ diff --git a/gst/asfmux/gstasfmux.c b/gst/asfmux/gstasfmux.c index 78b17dea..8219c6f6 100644 --- a/gst/asfmux/gstasfmux.c +++ b/gst/asfmux/gstasfmux.c @@ -45,7 +45,7 @@ * * <title>Live streaming</title> * asfmux and rtpasfpay are capable of generating a live asf stream. - * asfmux has to set its 'is-live' property to true, because in this + * asfmux has to set its 'streamable' property to true, because in this * mode it won't try to seek back to the start of the file to replace * some fields that couldn't be known at the file start. In this mode, * it won't also send indexes at the end of the data packets (the actual @@ -54,7 +54,7 @@ * <para>(write everything in one line, without the backslash characters)</para> * Server (sender) * |[ - * gst-launch -ve videotestsrc ! ffenc_wmv2 ! asfmux name=mux is-live=true \ + * gst-launch -ve videotestsrc ! ffenc_wmv2 ! asfmux name=mux streamable=true \ * ! rtpasfpay ! udpsink host=127.0.0.1 port=3333 \ * audiotestsrc ! ffenc_wmav2 ! mux. * ]| @@ -90,7 +90,6 @@ enum PROP_PREROLL, PROP_MERGE_STREAM_TAGS, PROP_PADDING, - PROP_IS_LIVE, PROP_STREAMABLE }; @@ -260,10 +259,6 @@ gst_asf_mux_class_init (GstAsfMuxClass * klass) 0, G_MAXUINT64, DEFAULT_PADDING, G_PARAM_READWRITE | G_PARAM_CONSTRUCT | G_PARAM_STATIC_STRINGS)); - g_object_class_install_property (gobject_class, PROP_IS_LIVE, - g_param_spec_boolean ("is-live", "Is Live (deprecated)", - "Deprecated in 0.10.20, use 'streamable' instead", - DEFAULT_STREAMABLE, G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS)); g_object_class_install_property (gobject_class, PROP_STREAMABLE, g_param_spec_boolean ("streamable", "Streamable", "If set to true, the output should be as if it is to be streamed " @@ -480,7 +475,7 @@ gst_asf_mux_get_content_description_tags (GstAsfMux * asfmux, tags = gst_tag_setter_get_tag_list (GST_TAG_SETTER (asfmux)); if (tags && !gst_tag_list_is_empty (tags)) { if (asftags->tags != NULL) { - gst_tag_list_free (asftags->tags); + gst_tag_list_unref (asftags->tags); } asftags->tags = gst_tag_list_new_empty (); asftags->cont_desc_size = 0; @@ -733,7 +728,7 @@ gst_asf_mux_write_stream_properties (GstAsfMux * asfmux, guint8 ** buf, GST_WRITE_UINT32_LE (*buf + 4, audiopad->audioinfo.rate); GST_WRITE_UINT32_LE (*buf + 8, audiopad->audioinfo.av_bps); GST_WRITE_UINT16_LE (*buf + 12, audiopad->audioinfo.blockalign); - GST_WRITE_UINT16_LE (*buf + 14, audiopad->audioinfo.size); + GST_WRITE_UINT16_LE (*buf + 14, audiopad->audioinfo.bits_per_sample); GST_WRITE_UINT16_LE (*buf + 16, codec_data_length); GST_DEBUG_OBJECT (asfmux, @@ -744,7 +739,7 @@ gst_asf_mux_write_stream_properties (GstAsfMux * asfmux, guint8 ** buf, G_GUINT16_FORMAT, audiopad->audioinfo.format, audiopad->audioinfo.channels, audiopad->audioinfo.rate, audiopad->audioinfo.av_bps, audiopad->audioinfo.blockalign, - audiopad->audioinfo.size, codec_data_length); + audiopad->audioinfo.bits_per_sample, codec_data_length); *buf += ASF_AUDIO_SPECIFIC_DATA_SIZE; @@ -1328,7 +1323,7 @@ gst_asf_mux_start_file (GstAsfMux * asfmux) if (asftags) { if (asftags->tags) - gst_tag_list_free (asftags->tags); + gst_tag_list_unref (asftags->tags); g_free (asftags); } @@ -2022,7 +2017,7 @@ gst_asf_mux_pad_reset (GstAsfPad * pad) gst_buffer_unref (pad->codec_data); pad->codec_data = NULL; if (pad->taglist) - gst_tag_list_free (pad->taglist); + gst_tag_list_unref (pad->taglist); pad->taglist = NULL; pad->first_ts = GST_CLOCK_TIME_NONE; @@ -2034,7 +2029,7 @@ gst_asf_mux_pad_reset (GstAsfPad * pad) audiopad->audioinfo.format = 0; audiopad->audioinfo.av_bps = 0; audiopad->audioinfo.blockalign = 0; - audiopad->audioinfo.size = 0; + audiopad->audioinfo.bits_per_sample = 0; } else { GstAsfVideoPad *videopad = (GstAsfVideoPad *) pad; videopad->vidinfo.size = 0; @@ -2200,27 +2195,25 @@ gst_asf_mux_video_set_caps (GstPad * pad, GstCaps * caps) } if (strcmp (caps_name, "video/x-wmv") == 0) { - guint32 fourcc; + gint wmvversion; + const gchar *fstr; videopad->vidinfo.bit_cnt = 24; - /* in case we have a fourcc, we use it */ - if (gst_structure_get_uint (structure, "format", &fourcc)) { - videopad->vidinfo.compression = fourcc; - } else { - gint version; - if (!gst_structure_get_int (structure, "wmvversion", &version)) - goto refuse_caps; - if (version == 2) { + /* in case we have a format, we use it */ + fstr = gst_structure_get_string (structure, "format"); + if (fstr && strlen (fstr) == 4) { + videopad->vidinfo.compression = GST_STR_FOURCC (fstr); + } else if (gst_structure_get_int (structure, "wmvversion", &wmvversion)) { + if (wmvversion == 2) { videopad->vidinfo.compression = GST_MAKE_FOURCC ('W', 'M', 'V', '2'); - } else if (version == 1) { + } else if (wmvversion == 1) { videopad->vidinfo.compression = GST_MAKE_FOURCC ('W', 'M', 'V', '1'); - } else if (version == 3) { + } else if (wmvversion == 3) { videopad->vidinfo.compression = GST_MAKE_FOURCC ('W', 'M', 'V', '3'); - } else { - goto refuse_caps; } - } + } else + goto refuse_caps; } else { goto refuse_caps; } @@ -2335,11 +2328,6 @@ gst_asf_mux_get_property (GObject * object, case PROP_PADDING: g_value_set_uint64 (value, asfmux->prop_padding); break; - case PROP_IS_LIVE: - GST_WARNING_OBJECT (object, "The 'is-live' property is deprecated, use " - "the 'streamable' property instead"); - g_value_set_boolean (value, asfmux->prop_streamable); - break; case PROP_STREAMABLE: g_value_set_boolean (value, asfmux->prop_streamable); break; @@ -2369,10 +2357,6 @@ gst_asf_mux_set_property (GObject * object, case PROP_PADDING: asfmux->prop_padding = g_value_get_uint64 (value); break; - case PROP_IS_LIVE: - g_warning ("This property is deprecated, use 'streamable' instead"); - asfmux->prop_streamable = g_value_get_boolean (value); - break; case PROP_STREAMABLE: asfmux->prop_streamable = g_value_get_boolean (value); break; diff --git a/gst/asfmux/gstasfparse.c b/gst/asfmux/gstasfparse.c index 32265a6b..0cf2671e 100644 --- a/gst/asfmux/gstasfparse.c +++ b/gst/asfmux/gstasfparse.c @@ -100,7 +100,8 @@ gst_asf_parse_sink_activate_mode (GstPad * pad, GstObject * parent, case GST_PAD_MODE_PULL: if (active) { res = - gst_pad_start_task (pad, (GstTaskFunction) gst_asf_parse_loop, pad); + gst_pad_start_task (pad, (GstTaskFunction) gst_asf_parse_loop, pad, + NULL); } else { res = gst_pad_stop_task (pad); } diff --git a/gst/audiovisualizers/Makefile.am b/gst/audiovisualizers/Makefile.am index e92fa167..496e4cc3 100644 --- a/gst/audiovisualizers/Makefile.am +++ b/gst/audiovisualizers/Makefile.am @@ -1,7 +1,7 @@ plugin_LTLIBRARIES = libgstaudiovisualizers.la libgstaudiovisualizers_la_SOURCES = plugin.c \ - gstbaseaudiovisualizer.c gstbaseaudiovisualizer.h \ + gstaudiovisualizer.c gstaudiovisualizer.h \ gstspacescope.c gstspacescope.h \ gstspectrascope.c gstspectrascope.h \ gstsynaescope.c gstsynaescope.h \ @@ -17,7 +17,7 @@ libgstaudiovisualizers_la_LIBADD = \ libgstaudiovisualizers_la_LDFLAGS = $(GST_PLUGIN_LDFLAGS) libgstaudiovisualizers_la_LIBTOOLFLAGS = --tag=disable-static -noinst_HEADERS = gstbaseaudiovisualizer.h gstdrawhelpers.h \ +noinst_HEADERS = gstaudiovisualizer.h gstdrawhelpers.h \ gstspacescope.h gstspectrascope.h gstsynaescope.h gstwavescope.h Android.mk: Makefile.am $(BUILT_SOURCES) diff --git a/gst/audiovisualizers/Makefile.in b/gst/audiovisualizers/Makefile.in index 1e26743e..b4454161 100644 --- a/gst/audiovisualizers/Makefile.in +++ b/gst/audiovisualizers/Makefile.in @@ -1,4 +1,4 @@ -# Makefile.in generated by automake 1.11.5 from Makefile.am. +# Makefile.in generated by automake 1.11.6 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, @@ -132,7 +132,7 @@ libgstaudiovisualizers_la_DEPENDENCIES = $(am__DEPENDENCIES_1) \ $(am__DEPENDENCIES_1) am_libgstaudiovisualizers_la_OBJECTS = \ libgstaudiovisualizers_la-plugin.lo \ - libgstaudiovisualizers_la-gstbaseaudiovisualizer.lo \ + libgstaudiovisualizers_la-gstaudiovisualizer.lo \ libgstaudiovisualizers_la-gstspacescope.lo \ libgstaudiovisualizers_la-gstspectrascope.lo \ libgstaudiovisualizers_la-gstsynaescope.lo \ @@ -246,11 +246,10 @@ DIRECT3D_LIBS = @DIRECT3D_LIBS@ DIRECTDRAW_LIBS = @DIRECTDRAW_LIBS@ DIRECTFB_CFLAGS = @DIRECTFB_CFLAGS@ DIRECTFB_LIBS = @DIRECTFB_LIBS@ +DIRECTSHOW_LIBS = @DIRECTSHOW_LIBS@ DIRECTSOUND_LIBS = @DIRECTSOUND_LIBS@ DIRECTX_CFLAGS = @DIRECTX_CFLAGS@ DIRECTX_LDFLAGS = @DIRECTX_LDFLAGS@ -DIVXDEC_LIBS = @DIVXDEC_LIBS@ -DIVXENC_LIBS = @DIVXENC_LIBS@ DLLTOOL = @DLLTOOL@ DSYMUTIL = @DSYMUTIL@ DTS_LIBS = @DTS_LIBS@ @@ -285,7 +284,9 @@ GIO_LIBS = @GIO_LIBS@ GLIB_CFLAGS = @GLIB_CFLAGS@ GLIB_COMPILE_SCHEMAS = @GLIB_COMPILE_SCHEMAS@ GLIB_EXTRA_CFLAGS = @GLIB_EXTRA_CFLAGS@ +GLIB_GENMARSHAL = @GLIB_GENMARSHAL@ GLIB_LIBS = @GLIB_LIBS@ +GLIB_MKENUMS = @GLIB_MKENUMS@ GLIB_PREFIX = @GLIB_PREFIX@ GLIB_REQ = @GLIB_REQ@ GME_LIBS = @GME_LIBS@ @@ -361,13 +362,14 @@ HAVE_CXX = @HAVE_CXX@ HAVE_DIRECT3D = @HAVE_DIRECT3D@ HAVE_DIRECT3D9 = @HAVE_DIRECT3D9@ HAVE_DIRECTDRAW = @HAVE_DIRECTDRAW@ +HAVE_DIRECTSHOW = @HAVE_DIRECTSHOW@ HAVE_DIRECTSOUND = @HAVE_DIRECTSOUND@ HAVE_DTS = @HAVE_DTS@ HAVE_FAAC = @HAVE_FAAC@ HAVE_FAAD = @HAVE_FAAD@ HAVE_FLITE = @HAVE_FLITE@ HAVE_GSM = @HAVE_GSM@ -HAVE_JP2K = @HAVE_JP2K@ +HAVE_JASPER = @HAVE_JASPER@ HAVE_NAS = @HAVE_NAS@ HAVE_VPX = @HAVE_VPX@ HAVE_WILDMIDI = @HAVE_WILDMIDI@ @@ -381,7 +383,7 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ INTLLIBS = @INTLLIBS@ INTL_MACOSX_LIBS = @INTL_MACOSX_LIBS@ -JP2K_LIBS = @JP2K_LIBS@ +JASPER_LIBS = @JASPER_LIBS@ KATE_CFLAGS = @KATE_CFLAGS@ KATE_LIBS = @KATE_LIBS@ LD = @LD@ @@ -417,6 +419,8 @@ MODPLUG_CFLAGS = @MODPLUG_CFLAGS@ MODPLUG_LIBS = @MODPLUG_LIBS@ MPEG2ENC_CFLAGS = @MPEG2ENC_CFLAGS@ MPEG2ENC_LIBS = @MPEG2ENC_LIBS@ +MPG123_CFLAGS = @MPG123_CFLAGS@ +MPG123_LIBS = @MPG123_LIBS@ MPLEX_CFLAGS = @MPLEX_CFLAGS@ MPLEX_LDFLAGS = @MPLEX_LDFLAGS@ MPLEX_LIBS = @MPLEX_LIBS@ @@ -609,7 +613,7 @@ top_builddir = @top_builddir@ top_srcdir = @top_srcdir@ plugin_LTLIBRARIES = libgstaudiovisualizers.la libgstaudiovisualizers_la_SOURCES = plugin.c \ - gstbaseaudiovisualizer.c gstbaseaudiovisualizer.h \ + gstaudiovisualizer.c gstaudiovisualizer.h \ gstspacescope.c gstspacescope.h \ gstspectrascope.c gstspectrascope.h \ gstsynaescope.c gstsynaescope.h \ @@ -626,7 +630,7 @@ libgstaudiovisualizers_la_LIBADD = \ libgstaudiovisualizers_la_LDFLAGS = $(GST_PLUGIN_LDFLAGS) libgstaudiovisualizers_la_LIBTOOLFLAGS = --tag=disable-static -noinst_HEADERS = gstbaseaudiovisualizer.h gstdrawhelpers.h \ +noinst_HEADERS = gstaudiovisualizer.h gstdrawhelpers.h \ gstspacescope.h gstspectrascope.h gstsynaescope.h gstwavescope.h all: all-am @@ -704,7 +708,7 @@ mostlyclean-compile: distclean-compile: -rm -f *.tab.c -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libgstaudiovisualizers_la-gstbaseaudiovisualizer.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libgstaudiovisualizers_la-gstaudiovisualizer.Plo@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libgstaudiovisualizers_la-gstspacescope.Plo@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libgstaudiovisualizers_la-gstspectrascope.Plo@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libgstaudiovisualizers_la-gstsynaescope.Plo@am__quote@ @@ -739,12 +743,12 @@ libgstaudiovisualizers_la-plugin.lo: plugin.c @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(libgstaudiovisualizers_la_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libgstaudiovisualizers_la_CFLAGS) $(CFLAGS) -c -o libgstaudiovisualizers_la-plugin.lo `test -f 'plugin.c' || echo '$(srcdir)/'`plugin.c -libgstaudiovisualizers_la-gstbaseaudiovisualizer.lo: gstbaseaudiovisualizer.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(libgstaudiovisualizers_la_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libgstaudiovisualizers_la_CFLAGS) $(CFLAGS) -MT libgstaudiovisualizers_la-gstbaseaudiovisualizer.lo -MD -MP -MF $(DEPDIR)/libgstaudiovisualizers_la-gstbaseaudiovisualizer.Tpo -c -o libgstaudiovisualizers_la-gstbaseaudiovisualizer.lo `test -f 'gstbaseaudiovisualizer.c' || echo '$(srcdir)/'`gstbaseaudiovisualizer.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libgstaudiovisualizers_la-gstbaseaudiovisualizer.Tpo $(DEPDIR)/libgstaudiovisualizers_la-gstbaseaudiovisualizer.Plo -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='gstbaseaudiovisualizer.c' object='libgstaudiovisualizers_la-gstbaseaudiovisualizer.lo' libtool=yes @AMDEPBACKSLASH@ +libgstaudiovisualizers_la-gstaudiovisualizer.lo: gstaudiovisualizer.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(libgstaudiovisualizers_la_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libgstaudiovisualizers_la_CFLAGS) $(CFLAGS) -MT libgstaudiovisualizers_la-gstaudiovisualizer.lo -MD -MP -MF $(DEPDIR)/libgstaudiovisualizers_la-gstaudiovisualizer.Tpo -c -o libgstaudiovisualizers_la-gstaudiovisualizer.lo `test -f 'gstaudiovisualizer.c' || echo '$(srcdir)/'`gstaudiovisualizer.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libgstaudiovisualizers_la-gstaudiovisualizer.Tpo $(DEPDIR)/libgstaudiovisualizers_la-gstaudiovisualizer.Plo +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='gstaudiovisualizer.c' object='libgstaudiovisualizers_la-gstaudiovisualizer.lo' libtool=yes @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(libgstaudiovisualizers_la_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libgstaudiovisualizers_la_CFLAGS) $(CFLAGS) -c -o libgstaudiovisualizers_la-gstbaseaudiovisualizer.lo `test -f 'gstbaseaudiovisualizer.c' || echo '$(srcdir)/'`gstbaseaudiovisualizer.c +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(libgstaudiovisualizers_la_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libgstaudiovisualizers_la_CFLAGS) $(CFLAGS) -c -o libgstaudiovisualizers_la-gstaudiovisualizer.lo `test -f 'gstaudiovisualizer.c' || echo '$(srcdir)/'`gstaudiovisualizer.c libgstaudiovisualizers_la-gstspacescope.lo: gstspacescope.c @am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(libgstaudiovisualizers_la_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libgstaudiovisualizers_la_CFLAGS) $(CFLAGS) -MT libgstaudiovisualizers_la-gstspacescope.lo -MD -MP -MF $(DEPDIR)/libgstaudiovisualizers_la-gstspacescope.Tpo -c -o libgstaudiovisualizers_la-gstspacescope.lo `test -f 'gstspacescope.c' || echo '$(srcdir)/'`gstspacescope.c diff --git a/gst/audiovisualizers/README b/gst/audiovisualizers/README index 3c59f0e0..264bc4be 100644 --- a/gst/audiovisualizers/README +++ b/gst/audiovisualizers/README @@ -75,6 +75,7 @@ GST_DEBUG="*:2,*scope*:4" GST_PLUGIN_PATH=$GST_PLUGIN_PATH:$PWD gst-inspect scopes +== 0.10 == GST_PLUGIN_PATH=$GST_PLUGIN_PATH:$PWD gst-launch audiotestsrc ! audioconvert ! wavescope ! colorspace ! ximagesink GST_PLUGIN_PATH=$GST_PLUGIN_PATH:$PWD gst-launch filesrc location=$HOME/Music/1.mp3 ! decodebin2 ! audioconvert ! wavescope ! colorspace ! ximagesink GST_PLUGIN_PATH=$GST_PLUGIN_PATH:$PWD gst-launch filesrc location=$HOME/Music/1.mp3 ! decodebin2 ! audioconvert ! wavescope style=lines shade-amount=0x00080402 ! edgetv ! vertigotv ! ximagesink @@ -87,5 +88,11 @@ GST_PLUGIN_PATH=$GST_PLUGIN_PATH:$PWD gst-launch filesrc location=$HOME/Music/1. GST_PLUGIN_PATH=$GST_PLUGIN_PATH:$PWD gst-launch filesrc location=$HOME/Music/1.mp3 ! decodebin2 ! tee name=t ! queue ! audioconvert ! synaesthesia ! ximagesink t. ! queue ! synaescope shade-amount=0x00040404 ! colorspace ! ximagesink -gst-launch filesrc location=$HOME/Music/1.mp3 ! decodebin2 ! tee name=t ! queue ! audioconvert ! wavescope style=color-lines shade-amount=0x00080402 ! alpha alpha=0.5 ! videomixer2 name=m background=black ! colorspace ! vertigotv ! ximagesink t. ! queue ! audioconvert ! spacescope style=color-lines shade-amount=0x00080402 ! alpha alpha=0.5 ! m. t. ! queue ! pulsesink +== 0.11/1.0 == +gst-launch-1.0 audiotestsrc ! audioconvert ! wavescope ! videoconvert ! ximagesink + +gst-launch-1.0 filesrc location=$HOME/Music/1.mp3 ! decodebin ! audioconvert ! spectrascope ! videoconvert ! ximagesink + +gst-launch-1.0 filesrc location=$HOME/Music/1.mp3 ! decodebin ! tee name=t ! queue ! audioconvert ! wavescope style=color-lines shade-amount=0x00080402 ! alpha alpha=0.5 ! videomixer name=m background=black ! videoconvert ! vertigotv ! ximagesink t. ! queue ! audioconvert ! spacescope style=color-lines shade-amount=0x00080402 ! alpha alpha=0.5 ! m. t. ! queue ! autoaudiosink + diff --git a/gst/audiovisualizers/gstbaseaudiovisualizer.c b/gst/audiovisualizers/gstaudiovisualizer.c index 9d68ca88..ac56a9f3 100644 --- a/gst/audiovisualizers/gstbaseaudiovisualizer.c +++ b/gst/audiovisualizers/gstaudiovisualizer.c @@ -1,7 +1,7 @@ /* GStreamer * Copyright (C) <2011> Stefan Kost <ensonic@users.sf.net> * - * gstbaseaudiovisualizer.h: base class for audio visualisation elements + * gstaudiovisualizer.h: base class for audio visualisation elements * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by @@ -18,9 +18,9 @@ * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ /** - * SECTION:gstbaseaudiovisualizer + * SECTION:gstaudiovisualizer * - * A basclass for scopes (visualizers). It takes care of re-fitting the + * A baseclass for scopes (visualizers). It takes care of re-fitting the * audio-rate to video-rate and handles renegotiation (downstream video size * changes). * @@ -39,12 +39,12 @@ #include <string.h> -#include "gstbaseaudiovisualizer.h" +#include "gstaudiovisualizer.h" -GST_DEBUG_CATEGORY_STATIC (base_audio_visualizer_debug); -#define GST_CAT_DEFAULT (base_audio_visualizer_debug) +GST_DEBUG_CATEGORY_STATIC (audio_visualizer_debug); +#define GST_CAT_DEFAULT (audio_visualizer_debug) -#define DEFAULT_SHADER GST_BASE_AUDIO_VISUALIZER_SHADER_FADE +#define DEFAULT_SHADER GST_AUDIO_VISUALIZER_SHADER_FADE #define DEFAULT_SHADE_AMOUNT 0x000a0a0a enum @@ -56,72 +56,72 @@ enum static GstBaseTransformClass *parent_class = NULL; -static void gst_base_audio_visualizer_class_init (GstBaseAudioVisualizerClass * - klass); -static void gst_base_audio_visualizer_init (GstBaseAudioVisualizer * scope, - GstBaseAudioVisualizerClass * g_class); -static void gst_base_audio_visualizer_set_property (GObject * object, +static void gst_audio_visualizer_class_init (GstAudioVisualizerClass * klass); +static void gst_audio_visualizer_init (GstAudioVisualizer * scope, + GstAudioVisualizerClass * g_class); +static void gst_audio_visualizer_set_property (GObject * object, guint prop_id, const GValue * value, GParamSpec * pspec); -static void gst_base_audio_visualizer_get_property (GObject * object, +static void gst_audio_visualizer_get_property (GObject * object, guint prop_id, GValue * value, GParamSpec * pspec); -static void gst_base_audio_visualizer_dispose (GObject * object); +static void gst_audio_visualizer_dispose (GObject * object); -static gboolean gst_base_audio_visualizer_src_negotiate (GstBaseAudioVisualizer - * scope); -static gboolean gst_base_audio_visualizer_src_setcaps (GstBaseAudioVisualizer * +static gboolean gst_audio_visualizer_src_negotiate (GstAudioVisualizer * scope); +static gboolean gst_audio_visualizer_src_setcaps (GstAudioVisualizer * scope, GstCaps * caps); -static gboolean gst_base_audio_visualizer_sink_setcaps (GstBaseAudioVisualizer * +static gboolean gst_audio_visualizer_sink_setcaps (GstAudioVisualizer * scope, GstCaps * caps); -static GstFlowReturn gst_base_audio_visualizer_chain (GstPad * pad, +static GstFlowReturn gst_audio_visualizer_chain (GstPad * pad, GstObject * parent, GstBuffer * buffer); -static gboolean gst_base_audio_visualizer_src_event (GstPad * pad, +static gboolean gst_audio_visualizer_src_event (GstPad * pad, GstObject * parent, GstEvent * event); -static gboolean gst_base_audio_visualizer_sink_event (GstPad * pad, +static gboolean gst_audio_visualizer_sink_event (GstPad * pad, GstObject * parent, GstEvent * event); -static gboolean gst_base_audio_visualizer_src_query (GstPad * pad, +static gboolean gst_audio_visualizer_src_query (GstPad * pad, GstObject * parent, GstQuery * query); -static gboolean gst_base_audio_visualizer_sink_query (GstPad * pad, +static gboolean gst_audio_visualizer_sink_query (GstPad * pad, GstObject * parent, GstQuery * query); -static GstStateChangeReturn gst_base_audio_visualizer_change_state (GstElement * +static GstStateChangeReturn gst_audio_visualizer_change_state (GstElement * element, GstStateChange transition); /* shading functions */ -#define GST_TYPE_BASE_AUDIO_VISUALIZER_SHADER (gst_base_audio_visualizer_shader_get_type()) +#define GST_TYPE_AUDIO_VISUALIZER_SHADER (gst_audio_visualizer_shader_get_type()) static GType -gst_base_audio_visualizer_shader_get_type (void) +gst_audio_visualizer_shader_get_type (void) { static GType shader_type = 0; static const GEnumValue shaders[] = { - {GST_BASE_AUDIO_VISUALIZER_SHADER_NONE, "None", "none"}, - {GST_BASE_AUDIO_VISUALIZER_SHADER_FADE, "Fade", "fade"}, - {GST_BASE_AUDIO_VISUALIZER_SHADER_FADE_AND_MOVE_UP, "Fade and move up", + {GST_AUDIO_VISUALIZER_SHADER_NONE, "None", "none"}, + {GST_AUDIO_VISUALIZER_SHADER_FADE, "Fade", "fade"}, + {GST_AUDIO_VISUALIZER_SHADER_FADE_AND_MOVE_UP, "Fade and move up", "fade-and-move-up"}, - {GST_BASE_AUDIO_VISUALIZER_SHADER_FADE_AND_MOVE_DOWN, "Fade and move down", + {GST_AUDIO_VISUALIZER_SHADER_FADE_AND_MOVE_DOWN, "Fade and move down", "fade-and-move-down"}, - {GST_BASE_AUDIO_VISUALIZER_SHADER_FADE_AND_MOVE_LEFT, "Fade and move left", + {GST_AUDIO_VISUALIZER_SHADER_FADE_AND_MOVE_LEFT, "Fade and move left", "fade-and-move-left"}, - {GST_BASE_AUDIO_VISUALIZER_SHADER_FADE_AND_MOVE_RIGHT, + {GST_AUDIO_VISUALIZER_SHADER_FADE_AND_MOVE_RIGHT, "Fade and move right", "fade-and-move-right"}, - {GST_BASE_AUDIO_VISUALIZER_SHADER_FADE_AND_MOVE_HORIZ_OUT, + {GST_AUDIO_VISUALIZER_SHADER_FADE_AND_MOVE_HORIZ_OUT, "Fade and move horizontally out", "fade-and-move-horiz-out"}, - {GST_BASE_AUDIO_VISUALIZER_SHADER_FADE_AND_MOVE_HORIZ_IN, + {GST_AUDIO_VISUALIZER_SHADER_FADE_AND_MOVE_HORIZ_IN, "Fade and move horizontally in", "fade-and-move-horiz-in"}, - {GST_BASE_AUDIO_VISUALIZER_SHADER_FADE_AND_MOVE_VERT_OUT, + {GST_AUDIO_VISUALIZER_SHADER_FADE_AND_MOVE_VERT_OUT, "Fade and move vertically out", "fade-and-move-vert-out"}, - {GST_BASE_AUDIO_VISUALIZER_SHADER_FADE_AND_MOVE_VERT_IN, + {GST_AUDIO_VISUALIZER_SHADER_FADE_AND_MOVE_VERT_IN, "Fade and move vertically in", "fade-and-move-vert-in"}, {0, NULL, NULL}, }; if (G_UNLIKELY (shader_type == 0)) { + /* TODO: rename when exporting it as a library */ shader_type = - g_enum_register_static ("GstBaseAudioVisualizerShader", shaders); + g_enum_register_static + ("GstAudioVisualizerShader-BadGstAudioVisualizers", shaders); } return shader_type; } @@ -180,7 +180,7 @@ G_STMT_START { \ #endif static void -shader_fade (GstBaseAudioVisualizer * scope, const guint8 * s, guint8 * d) +shader_fade (GstAudioVisualizer * scope, const guint8 * s, guint8 * d) { guint i, bpf = scope->bpf; guint r = (scope->shade_amount >> 16) & 0xff; @@ -193,7 +193,7 @@ shader_fade (GstBaseAudioVisualizer * scope, const guint8 * s, guint8 * d) } static void -shader_fade_and_move_up (GstBaseAudioVisualizer * scope, const guint8 * s, +shader_fade_and_move_up (GstAudioVisualizer * scope, const guint8 * s, guint8 * d) { guint i, j, bpf = scope->bpf; @@ -208,7 +208,7 @@ shader_fade_and_move_up (GstBaseAudioVisualizer * scope, const guint8 * s, } static void -shader_fade_and_move_down (GstBaseAudioVisualizer * scope, const guint8 * s, +shader_fade_and_move_down (GstAudioVisualizer * scope, const guint8 * s, guint8 * d) { guint i, j, bpf = scope->bpf; @@ -223,7 +223,7 @@ shader_fade_and_move_down (GstBaseAudioVisualizer * scope, const guint8 * s, } static void -shader_fade_and_move_left (GstBaseAudioVisualizer * scope, +shader_fade_and_move_left (GstAudioVisualizer * scope, const guint8 * s, guint8 * d) { guint i, j, k, bpf = scope->bpf; @@ -243,7 +243,7 @@ shader_fade_and_move_left (GstBaseAudioVisualizer * scope, } static void -shader_fade_and_move_right (GstBaseAudioVisualizer * scope, +shader_fade_and_move_right (GstAudioVisualizer * scope, const guint8 * s, guint8 * d) { guint i, j, k, bpf = scope->bpf; @@ -263,7 +263,7 @@ shader_fade_and_move_right (GstBaseAudioVisualizer * scope, } static void -shader_fade_and_move_horiz_out (GstBaseAudioVisualizer * scope, +shader_fade_and_move_horiz_out (GstAudioVisualizer * scope, const guint8 * s, guint8 * d) { guint i, j, bpf = scope->bpf / 2; @@ -283,7 +283,7 @@ shader_fade_and_move_horiz_out (GstBaseAudioVisualizer * scope, } static void -shader_fade_and_move_horiz_in (GstBaseAudioVisualizer * scope, +shader_fade_and_move_horiz_in (GstAudioVisualizer * scope, const guint8 * s, guint8 * d) { guint i, j, bpf = scope->bpf / 2; @@ -303,7 +303,7 @@ shader_fade_and_move_horiz_in (GstBaseAudioVisualizer * scope, } static void -shader_fade_and_move_vert_out (GstBaseAudioVisualizer * scope, +shader_fade_and_move_vert_out (GstAudioVisualizer * scope, const guint8 * s, guint8 * d) { guint i, j, k, bpf = scope->bpf; @@ -331,7 +331,7 @@ shader_fade_and_move_vert_out (GstBaseAudioVisualizer * scope, } static void -shader_fade_and_move_vert_in (GstBaseAudioVisualizer * scope, +shader_fade_and_move_vert_in (GstAudioVisualizer * scope, const guint8 * s, guint8 * d) { guint i, j, k, bpf = scope->bpf; @@ -359,37 +359,37 @@ shader_fade_and_move_vert_in (GstBaseAudioVisualizer * scope, } static void -gst_base_audio_visualizer_change_shader (GstBaseAudioVisualizer * scope) +gst_audio_visualizer_change_shader (GstAudioVisualizer * scope) { switch (scope->shader_type) { - case GST_BASE_AUDIO_VISUALIZER_SHADER_NONE: + case GST_AUDIO_VISUALIZER_SHADER_NONE: scope->shader = NULL; break; - case GST_BASE_AUDIO_VISUALIZER_SHADER_FADE: + case GST_AUDIO_VISUALIZER_SHADER_FADE: scope->shader = shader_fade; break; - case GST_BASE_AUDIO_VISUALIZER_SHADER_FADE_AND_MOVE_UP: + case GST_AUDIO_VISUALIZER_SHADER_FADE_AND_MOVE_UP: scope->shader = shader_fade_and_move_up; break; - case GST_BASE_AUDIO_VISUALIZER_SHADER_FADE_AND_MOVE_DOWN: + case GST_AUDIO_VISUALIZER_SHADER_FADE_AND_MOVE_DOWN: scope->shader = shader_fade_and_move_down; break; - case GST_BASE_AUDIO_VISUALIZER_SHADER_FADE_AND_MOVE_LEFT: + case GST_AUDIO_VISUALIZER_SHADER_FADE_AND_MOVE_LEFT: scope->shader = shader_fade_and_move_left; break; - case GST_BASE_AUDIO_VISUALIZER_SHADER_FADE_AND_MOVE_RIGHT: + case GST_AUDIO_VISUALIZER_SHADER_FADE_AND_MOVE_RIGHT: scope->shader = shader_fade_and_move_right; break; - case GST_BASE_AUDIO_VISUALIZER_SHADER_FADE_AND_MOVE_HORIZ_OUT: + case GST_AUDIO_VISUALIZER_SHADER_FADE_AND_MOVE_HORIZ_OUT: scope->shader = shader_fade_and_move_horiz_out; break; - case GST_BASE_AUDIO_VISUALIZER_SHADER_FADE_AND_MOVE_HORIZ_IN: + case GST_AUDIO_VISUALIZER_SHADER_FADE_AND_MOVE_HORIZ_IN: scope->shader = shader_fade_and_move_horiz_in; break; - case GST_BASE_AUDIO_VISUALIZER_SHADER_FADE_AND_MOVE_VERT_OUT: + case GST_AUDIO_VISUALIZER_SHADER_FADE_AND_MOVE_VERT_OUT: scope->shader = shader_fade_and_move_vert_out; break; - case GST_BASE_AUDIO_VISUALIZER_SHADER_FADE_AND_MOVE_VERT_IN: + case GST_AUDIO_VISUALIZER_SHADER_FADE_AND_MOVE_VERT_IN: scope->shader = shader_fade_and_move_vert_in; break; default: @@ -402,54 +402,55 @@ gst_base_audio_visualizer_change_shader (GstBaseAudioVisualizer * scope) /* base class */ GType -gst_base_audio_visualizer_get_type (void) +gst_audio_visualizer_get_type (void) { - static volatile gsize base_audio_visualizer_type = 0; + static volatile gsize audio_visualizer_type = 0; - if (g_once_init_enter (&base_audio_visualizer_type)) { - static const GTypeInfo base_audio_visualizer_info = { - sizeof (GstBaseAudioVisualizerClass), + if (g_once_init_enter (&audio_visualizer_type)) { + static const GTypeInfo audio_visualizer_info = { + sizeof (GstAudioVisualizerClass), NULL, NULL, - (GClassInitFunc) gst_base_audio_visualizer_class_init, + (GClassInitFunc) gst_audio_visualizer_class_init, NULL, NULL, - sizeof (GstBaseAudioVisualizer), + sizeof (GstAudioVisualizer), 0, - (GInstanceInitFunc) gst_base_audio_visualizer_init, + (GInstanceInitFunc) gst_audio_visualizer_init, }; GType _type; + /* TODO: rename when exporting it as a library */ _type = g_type_register_static (GST_TYPE_ELEMENT, - "GstBaseAudioVisualizer", &base_audio_visualizer_info, + "GstAudioVisualizer-BadGstAudioVisualizers", &audio_visualizer_info, G_TYPE_FLAG_ABSTRACT); - g_once_init_leave (&base_audio_visualizer_type, _type); + g_once_init_leave (&audio_visualizer_type, _type); } - return (GType) base_audio_visualizer_type; + return (GType) audio_visualizer_type; } static void -gst_base_audio_visualizer_class_init (GstBaseAudioVisualizerClass * klass) +gst_audio_visualizer_class_init (GstAudioVisualizerClass * klass) { GObjectClass *gobject_class = (GObjectClass *) klass; GstElementClass *element_class = (GstElementClass *) klass; parent_class = g_type_class_peek_parent (klass); - GST_DEBUG_CATEGORY_INIT (base_audio_visualizer_debug, "baseaudiovisualizer", + GST_DEBUG_CATEGORY_INIT (audio_visualizer_debug, "baseaudiovisualizer", 0, "scope audio visualisation base class"); - gobject_class->set_property = gst_base_audio_visualizer_set_property; - gobject_class->get_property = gst_base_audio_visualizer_get_property; - gobject_class->dispose = gst_base_audio_visualizer_dispose; + gobject_class->set_property = gst_audio_visualizer_set_property; + gobject_class->get_property = gst_audio_visualizer_get_property; + gobject_class->dispose = gst_audio_visualizer_dispose; element_class->change_state = - GST_DEBUG_FUNCPTR (gst_base_audio_visualizer_change_state); + GST_DEBUG_FUNCPTR (gst_audio_visualizer_change_state); g_object_class_install_property (gobject_class, PROP_SHADER, g_param_spec_enum ("shader", "shader type", "Shader function to apply on each frame", - GST_TYPE_BASE_AUDIO_VISUALIZER_SHADER, DEFAULT_SHADER, + GST_TYPE_AUDIO_VISUALIZER_SHADER, DEFAULT_SHADER, G_PARAM_READWRITE | GST_PARAM_CONTROLLABLE | G_PARAM_STATIC_STRINGS)); g_object_class_install_property (gobject_class, PROP_SHADE_AMOUNT, g_param_spec_uint ("shade-amount", "shade amount", @@ -459,8 +460,8 @@ gst_base_audio_visualizer_class_init (GstBaseAudioVisualizerClass * klass) } static void -gst_base_audio_visualizer_init (GstBaseAudioVisualizer * scope, - GstBaseAudioVisualizerClass * g_class) +gst_audio_visualizer_init (GstAudioVisualizer * scope, + GstAudioVisualizerClass * g_class) { GstPadTemplate *pad_template; @@ -470,11 +471,11 @@ gst_base_audio_visualizer_init (GstBaseAudioVisualizer * scope, g_return_if_fail (pad_template != NULL); scope->sinkpad = gst_pad_new_from_template (pad_template, "sink"); gst_pad_set_chain_function (scope->sinkpad, - GST_DEBUG_FUNCPTR (gst_base_audio_visualizer_chain)); + GST_DEBUG_FUNCPTR (gst_audio_visualizer_chain)); gst_pad_set_event_function (scope->sinkpad, - GST_DEBUG_FUNCPTR (gst_base_audio_visualizer_sink_event)); + GST_DEBUG_FUNCPTR (gst_audio_visualizer_sink_event)); gst_pad_set_query_function (scope->sinkpad, - GST_DEBUG_FUNCPTR (gst_base_audio_visualizer_sink_query)); + GST_DEBUG_FUNCPTR (gst_audio_visualizer_sink_query)); gst_element_add_pad (GST_ELEMENT (scope), scope->sinkpad); pad_template = @@ -482,9 +483,9 @@ gst_base_audio_visualizer_init (GstBaseAudioVisualizer * scope, g_return_if_fail (pad_template != NULL); scope->srcpad = gst_pad_new_from_template (pad_template, "src"); gst_pad_set_event_function (scope->srcpad, - GST_DEBUG_FUNCPTR (gst_base_audio_visualizer_src_event)); + GST_DEBUG_FUNCPTR (gst_audio_visualizer_src_event)); gst_pad_set_query_function (scope->srcpad, - GST_DEBUG_FUNCPTR (gst_base_audio_visualizer_src_query)); + GST_DEBUG_FUNCPTR (gst_audio_visualizer_src_query)); gst_element_add_pad (GST_ELEMENT (scope), scope->srcpad); scope->adapter = gst_adapter_new (); @@ -492,7 +493,7 @@ gst_base_audio_visualizer_init (GstBaseAudioVisualizer * scope, /* properties */ scope->shader_type = DEFAULT_SHADER; - gst_base_audio_visualizer_change_shader (scope); + gst_audio_visualizer_change_shader (scope); scope->shade_amount = DEFAULT_SHADE_AMOUNT; /* reset the initial video state */ @@ -502,22 +503,23 @@ gst_base_audio_visualizer_init (GstBaseAudioVisualizer * scope, scope->fps_d = 1; scope->frame_duration = GST_CLOCK_TIME_NONE; - /* reset the initial audio state */ + /* reset the initial state */ gst_audio_info_init (&scope->ainfo); + gst_video_info_init (&scope->vinfo); g_mutex_init (&scope->config_lock); } static void -gst_base_audio_visualizer_set_property (GObject * object, guint prop_id, +gst_audio_visualizer_set_property (GObject * object, guint prop_id, const GValue * value, GParamSpec * pspec) { - GstBaseAudioVisualizer *scope = GST_BASE_AUDIO_VISUALIZER (object); + GstAudioVisualizer *scope = GST_AUDIO_VISUALIZER (object); switch (prop_id) { case PROP_SHADER: scope->shader_type = g_value_get_enum (value); - gst_base_audio_visualizer_change_shader (scope); + gst_audio_visualizer_change_shader (scope); break; case PROP_SHADE_AMOUNT: scope->shade_amount = g_value_get_uint (value); @@ -529,10 +531,10 @@ gst_base_audio_visualizer_set_property (GObject * object, guint prop_id, } static void -gst_base_audio_visualizer_get_property (GObject * object, guint prop_id, +gst_audio_visualizer_get_property (GObject * object, guint prop_id, GValue * value, GParamSpec * pspec) { - GstBaseAudioVisualizer *scope = GST_BASE_AUDIO_VISUALIZER (object); + GstAudioVisualizer *scope = GST_AUDIO_VISUALIZER (object); switch (prop_id) { case PROP_SHADER: @@ -548,9 +550,9 @@ gst_base_audio_visualizer_get_property (GObject * object, guint prop_id, } static void -gst_base_audio_visualizer_dispose (GObject * object) +gst_audio_visualizer_dispose (GObject * object) { - GstBaseAudioVisualizer *scope = GST_BASE_AUDIO_VISUALIZER (object); + GstAudioVisualizer *scope = GST_AUDIO_VISUALIZER (object); if (scope->adapter) { g_object_unref (scope->adapter); @@ -572,7 +574,7 @@ gst_base_audio_visualizer_dispose (GObject * object) } static void -gst_base_audio_visualizer_reset (GstBaseAudioVisualizer * scope) +gst_audio_visualizer_reset (GstAudioVisualizer * scope) { gst_adapter_clear (scope->adapter); gst_segment_init (&scope->segment, GST_FORMAT_UNDEFINED); @@ -584,8 +586,7 @@ gst_base_audio_visualizer_reset (GstBaseAudioVisualizer * scope) } static gboolean -gst_base_audio_visualizer_sink_setcaps (GstBaseAudioVisualizer * scope, - GstCaps * caps) +gst_audio_visualizer_sink_setcaps (GstAudioVisualizer * scope, GstCaps * caps) { GstAudioInfo info; gboolean res = TRUE; @@ -611,23 +612,27 @@ wrong_caps: } static gboolean -gst_base_audio_visualizer_src_setcaps (GstBaseAudioVisualizer * scope, - GstCaps * caps) +gst_audio_visualizer_src_setcaps (GstAudioVisualizer * scope, GstCaps * caps) { - GstBaseAudioVisualizerClass *klass; + GstVideoInfo info; + GstAudioVisualizerClass *klass; GstStructure *structure; gboolean res; + if (!gst_video_info_from_caps (&info, caps)) + goto wrong_caps; + structure = gst_caps_get_structure (caps, 0); if (!gst_structure_get_int (structure, "width", &scope->width) || !gst_structure_get_int (structure, "height", &scope->height) || !gst_structure_get_fraction (structure, "framerate", &scope->fps_n, &scope->fps_d)) - goto error; + goto wrong_caps; - klass = GST_BASE_AUDIO_VISUALIZER_CLASS (G_OBJECT_GET_CLASS (scope)); + klass = GST_AUDIO_VISUALIZER_CLASS (G_OBJECT_GET_CLASS (scope)); - //scope->video_format = format; ?? + scope->vinfo = info; + scope->video_format = info.finfo->format; scope->frame_duration = gst_util_uint64_scale_int (GST_SECOND, scope->fps_d, scope->fps_n); @@ -649,12 +654,12 @@ gst_base_audio_visualizer_src_setcaps (GstBaseAudioVisualizer * scope, GST_DEBUG_OBJECT (scope, "blocks: spf %u, req_spf %u", scope->spf, scope->req_spf); - res = gst_pad_push_event (scope->srcpad, gst_event_new_caps (caps)); + res = gst_pad_set_caps (scope->srcpad, caps); return res; /* ERRORS */ -error: +wrong_caps: { GST_DEBUG_OBJECT (scope, "error parsing caps"); return FALSE; @@ -662,7 +667,7 @@ error: } static gboolean -gst_base_audio_visualizer_src_negotiate (GstBaseAudioVisualizer * scope) +gst_audio_visualizer_src_negotiate (GstAudioVisualizer * scope) { GstCaps *othercaps, *target; GstStructure *structure; @@ -697,10 +702,11 @@ gst_base_audio_visualizer_src_negotiate (GstBaseAudioVisualizer * scope) gst_structure_fixate_field_nearest_int (structure, "height", scope->height); gst_structure_fixate_field_nearest_fraction (structure, "framerate", scope->fps_n, scope->fps_d); + target = gst_caps_fixate (target); GST_DEBUG_OBJECT (scope, "final caps are %" GST_PTR_FORMAT, target); - gst_base_audio_visualizer_src_setcaps (scope, target); + gst_audio_visualizer_src_setcaps (scope, target); /* try to get a bufferpool now */ /* find a pool for the negotiated caps now */ @@ -751,7 +757,7 @@ no_format: /* make sure we are negotiated */ static GstFlowReturn -gst_base_audio_visualizer_ensure_negotiated (GstBaseAudioVisualizer * scope) +gst_audio_visualizer_ensure_negotiated (GstAudioVisualizer * scope) { gboolean reconfigure; @@ -759,29 +765,29 @@ gst_base_audio_visualizer_ensure_negotiated (GstBaseAudioVisualizer * scope) /* we don't know an output format yet, pick one */ if (reconfigure || !gst_pad_has_current_caps (scope->srcpad)) { - if (!gst_base_audio_visualizer_src_negotiate (scope)) + if (!gst_audio_visualizer_src_negotiate (scope)) return GST_FLOW_NOT_NEGOTIATED; } return GST_FLOW_OK; } static GstFlowReturn -gst_base_audio_visualizer_chain (GstPad * pad, GstObject * parent, +gst_audio_visualizer_chain (GstPad * pad, GstObject * parent, GstBuffer * buffer) { GstFlowReturn ret = GST_FLOW_OK; - GstBaseAudioVisualizer *scope; - GstBaseAudioVisualizerClass *klass; + GstAudioVisualizer *scope; + GstAudioVisualizerClass *klass; GstBuffer *inbuf; guint64 dist, ts; guint avail, sbpf; gpointer adata; - gboolean (*render) (GstBaseAudioVisualizer * scope, GstBuffer * audio, + gboolean (*render) (GstAudioVisualizer * scope, GstBuffer * audio, GstBuffer * video); gint bps, channels, rate; - scope = GST_BASE_AUDIO_VISUALIZER (parent); - klass = GST_BASE_AUDIO_VISUALIZER_CLASS (G_OBJECT_GET_CLASS (scope)); + scope = GST_AUDIO_VISUALIZER (parent); + klass = GST_AUDIO_VISUALIZER_CLASS (G_OBJECT_GET_CLASS (scope)); render = klass->render; @@ -793,7 +799,7 @@ gst_base_audio_visualizer_chain (GstPad * pad, GstObject * parent, } /* Make sure have an output format */ - ret = gst_base_audio_visualizer_ensure_negotiated (scope); + ret = gst_audio_visualizer_ensure_negotiated (scope); if (ret != GST_FLOW_OK) { gst_buffer_unref (buffer); goto beach; @@ -881,7 +887,7 @@ gst_base_audio_visualizer_chain (GstPad * pad, GstObject * parent, if (!(adata = (gpointer) gst_adapter_map (scope->adapter, sbpf))) break; - gst_buffer_append_memory (inbuf, + gst_buffer_replace_all_memory (inbuf, gst_memory_new_wrapped (GST_MEMORY_FLAG_READONLY, adata, sbpf, 0, sbpf, NULL, NULL)); @@ -932,13 +938,13 @@ beach: } static gboolean -gst_base_audio_visualizer_src_event (GstPad * pad, GstObject * parent, +gst_audio_visualizer_src_event (GstPad * pad, GstObject * parent, GstEvent * event) { gboolean res; - GstBaseAudioVisualizer *scope; + GstAudioVisualizer *scope; - scope = GST_BASE_AUDIO_VISUALIZER (parent); + scope = GST_AUDIO_VISUALIZER (parent); switch (GST_EVENT_TYPE (event)) { case GST_EVENT_QOS: @@ -963,6 +969,11 @@ gst_base_audio_visualizer_src_event (GstPad * pad, GstObject * parent, res = gst_pad_push_event (scope->sinkpad, event); break; } + case GST_EVENT_RECONFIGURE: + /* dont't forward */ + gst_event_unref (event); + res = TRUE; + break; default: res = gst_pad_push_event (scope->sinkpad, event); break; @@ -972,13 +983,13 @@ gst_base_audio_visualizer_src_event (GstPad * pad, GstObject * parent, } static gboolean -gst_base_audio_visualizer_sink_event (GstPad * pad, GstObject * parent, +gst_audio_visualizer_sink_event (GstPad * pad, GstObject * parent, GstEvent * event) { gboolean res; - GstBaseAudioVisualizer *scope; + GstAudioVisualizer *scope; - scope = GST_BASE_AUDIO_VISUALIZER (parent); + scope = GST_AUDIO_VISUALIZER (parent); switch (GST_EVENT_TYPE (event)) { case GST_EVENT_CAPS: @@ -986,14 +997,14 @@ gst_base_audio_visualizer_sink_event (GstPad * pad, GstObject * parent, GstCaps *caps; gst_event_parse_caps (event, &caps); - res = gst_base_audio_visualizer_sink_setcaps (scope, caps); + res = gst_audio_visualizer_sink_setcaps (scope, caps); break; } case GST_EVENT_FLUSH_START: res = gst_pad_push_event (scope->srcpad, event); break; case GST_EVENT_FLUSH_STOP: - gst_base_audio_visualizer_reset (scope); + gst_audio_visualizer_reset (scope); res = gst_pad_push_event (scope->srcpad, event); break; case GST_EVENT_SEGMENT: @@ -1015,13 +1026,13 @@ gst_base_audio_visualizer_sink_event (GstPad * pad, GstObject * parent, } static gboolean -gst_base_audio_visualizer_src_query (GstPad * pad, GstObject * parent, +gst_audio_visualizer_src_query (GstPad * pad, GstObject * parent, GstQuery * query) { gboolean res = FALSE; - GstBaseAudioVisualizer *scope; + GstAudioVisualizer *scope; - scope = GST_BASE_AUDIO_VISUALIZER (parent); + scope = GST_AUDIO_VISUALIZER (parent); switch (GST_QUERY_TYPE (query)) { case GST_QUERY_LATENCY: @@ -1074,7 +1085,7 @@ gst_base_audio_visualizer_src_query (GstPad * pad, GstObject * parent, } static gboolean -gst_base_audio_visualizer_sink_query (GstPad * pad, GstObject * parent, +gst_audio_visualizer_sink_query (GstPad * pad, GstObject * parent, GstQuery * query) { gboolean res = FALSE; @@ -1088,17 +1099,17 @@ gst_base_audio_visualizer_sink_query (GstPad * pad, GstObject * parent, } static GstStateChangeReturn -gst_base_audio_visualizer_change_state (GstElement * element, +gst_audio_visualizer_change_state (GstElement * element, GstStateChange transition) { GstStateChangeReturn ret; - GstBaseAudioVisualizer *scope; + GstAudioVisualizer *scope; - scope = GST_BASE_AUDIO_VISUALIZER (element); + scope = GST_AUDIO_VISUALIZER (element); switch (transition) { case GST_STATE_CHANGE_READY_TO_PAUSED: - gst_base_audio_visualizer_reset (scope); + gst_audio_visualizer_reset (scope); break; default: break; diff --git a/gst/audiovisualizers/gstaudiovisualizer.h b/gst/audiovisualizers/gstaudiovisualizer.h new file mode 100644 index 00000000..efe3a8cc --- /dev/null +++ b/gst/audiovisualizers/gstaudiovisualizer.h @@ -0,0 +1,125 @@ +/* GStreamer + * Copyright (C) <2011> Stefan Kost <ensonic@users.sf.net> + * + * gstaudiovisualizer.c: base class for audio visualisation elements + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program 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 License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. + */ + +#ifndef __GST_AUDIO_VISUALIZER_H__ +#define __GST_AUDIO_VISUALIZER_H__ + +#include <gst/gst.h> +#include <gst/base/gstbasetransform.h> + +#include <gst/video/video.h> +#include <gst/audio/audio.h> +#include <gst/base/gstadapter.h> + +G_BEGIN_DECLS +#define GST_TYPE_AUDIO_VISUALIZER (gst_audio_visualizer_get_type()) +#define GST_AUDIO_VISUALIZER(obj) (G_TYPE_CHECK_INSTANCE_CAST((obj),GST_TYPE_AUDIO_VISUALIZER,GstAudioVisualizer)) +#define GST_AUDIO_VISUALIZER_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST((klass),GST_TYPE_AUDIO_VISUALIZER,GstAudioVisualizerClass)) +#define GST_IS_SYNAESTHESIA(obj) (G_TYPE_CHECK_INSTANCE_TYPE((obj),GST_TYPE_AUDIO_VISUALIZER)) +#define GST_IS_SYNAESTHESIA_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE((klass),GST_TYPE_AUDIO_VISUALIZER)) +typedef struct _GstAudioVisualizer GstAudioVisualizer; +typedef struct _GstAudioVisualizerClass GstAudioVisualizerClass; + +typedef void (*GstAudioVisualizerShaderFunc)(GstAudioVisualizer *scope, const guint8 *s, guint8 *d); + +/** + * GstAudioVisualizerShader: + * @GST_AUDIO_VISUALIZER_SHADER_NONE: no shading + * @GST_AUDIO_VISUALIZER_SHADER_FADE: plain fading + * @GST_AUDIO_VISUALIZER_SHADER_FADE_AND_MOVE_UP: fade and move up + * @GST_AUDIO_VISUALIZER_SHADER_FADE_AND_MOVE_DOWN: fade and move down + * @GST_AUDIO_VISUALIZER_SHADER_FADE_AND_MOVE_LEFT: fade and move left + * @GST_AUDIO_VISUALIZER_SHADER_FADE_AND_MOVE_RIGHT: fade and move right + * @GST_AUDIO_VISUALIZER_SHADER_FADE_AND_MOVE_HORIZ_OUT: fade and move horizontally out + * @GST_AUDIO_VISUALIZER_SHADER_FADE_AND_MOVE_HORIZ_IN: fade and move horizontally in + * @GST_AUDIO_VISUALIZER_SHADER_FADE_AND_MOVE_VERT_OUT: fade and move vertically out + * @GST_AUDIO_VISUALIZER_SHADER_FADE_AND_MOVE_VERT_IN: fade and move vertically in + * + * Different types of supported background shading functions. + */ +typedef enum { + GST_AUDIO_VISUALIZER_SHADER_NONE, + GST_AUDIO_VISUALIZER_SHADER_FADE, + GST_AUDIO_VISUALIZER_SHADER_FADE_AND_MOVE_UP, + GST_AUDIO_VISUALIZER_SHADER_FADE_AND_MOVE_DOWN, + GST_AUDIO_VISUALIZER_SHADER_FADE_AND_MOVE_LEFT, + GST_AUDIO_VISUALIZER_SHADER_FADE_AND_MOVE_RIGHT, + GST_AUDIO_VISUALIZER_SHADER_FADE_AND_MOVE_HORIZ_OUT, + GST_AUDIO_VISUALIZER_SHADER_FADE_AND_MOVE_HORIZ_IN, + GST_AUDIO_VISUALIZER_SHADER_FADE_AND_MOVE_VERT_OUT, + GST_AUDIO_VISUALIZER_SHADER_FADE_AND_MOVE_VERT_IN +} GstAudioVisualizerShader; + +struct _GstAudioVisualizer +{ + GstElement parent; + + /* pads */ + GstPad *srcpad, *sinkpad; + + GstBufferPool *pool; + GstAdapter *adapter; + GstBuffer *inbuf; + guint8 *pixelbuf; + + GstAudioVisualizerShader shader_type; + GstAudioVisualizerShaderFunc shader; + guint32 shade_amount; + + guint spf; /* samples per video frame */ + guint req_spf; /* min samples per frame wanted by the subclass */ + + /* video state */ + GstVideoInfo vinfo; + GstVideoFormat video_format; + gint fps_n, fps_d; + gint width; + gint height; + guint64 frame_duration; + guint bpf; /* bytes per frame */ + + /* audio state */ + GstAudioInfo ainfo; + + /* configuration mutex */ + GMutex config_lock; + + /* QoS stuff *//* with LOCK */ + gdouble proportion; + GstClockTime earliest_time; + + GstSegment segment; +}; + +struct _GstAudioVisualizerClass +{ + GstElementClass parent_class; + + /* virtual function, called whenever the format changes */ + gboolean (*setup) (GstAudioVisualizer * scope); + + /* virtual function for rendering a frame */ + gboolean (*render) (GstAudioVisualizer * scope, GstBuffer * audio, GstBuffer * video); +}; + +GType gst_audio_visualizer_get_type (void); + +G_END_DECLS +#endif /* __GST_AUDIO_VISUALIZER_H__ */ diff --git a/gst/audiovisualizers/gstbaseaudiovisualizer.h b/gst/audiovisualizers/gstbaseaudiovisualizer.h deleted file mode 100644 index 435c7660..00000000 --- a/gst/audiovisualizers/gstbaseaudiovisualizer.h +++ /dev/null @@ -1,124 +0,0 @@ -/* GStreamer - * Copyright (C) <2011> Stefan Kost <ensonic@users.sf.net> - * - * gstbaseaudiovisualizer.c: base class for audio visualisation elements - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * This program 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 License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. - */ - -#ifndef __GST_BASE_AUDIO_VISUALIZER_H__ -#define __GST_BASE_AUDIO_VISUALIZER_H__ - -#include <gst/gst.h> -#include <gst/base/gstbasetransform.h> - -#include <gst/video/video.h> -#include <gst/audio/audio.h> -#include <gst/base/gstadapter.h> - -G_BEGIN_DECLS -#define GST_TYPE_BASE_AUDIO_VISUALIZER (gst_base_audio_visualizer_get_type()) -#define GST_BASE_AUDIO_VISUALIZER(obj) (G_TYPE_CHECK_INSTANCE_CAST((obj),GST_TYPE_BASE_AUDIO_VISUALIZER,GstBaseAudioVisualizer)) -#define GST_BASE_AUDIO_VISUALIZER_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST((klass),GST_TYPE_BASE_AUDIO_VISUALIZER,GstBaseAudioVisualizerClass)) -#define GST_IS_SYNAESTHESIA(obj) (G_TYPE_CHECK_INSTANCE_TYPE((obj),GST_TYPE_BASE_AUDIO_VISUALIZER)) -#define GST_IS_SYNAESTHESIA_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE((klass),GST_TYPE_BASE_AUDIO_VISUALIZER)) -typedef struct _GstBaseAudioVisualizer GstBaseAudioVisualizer; -typedef struct _GstBaseAudioVisualizerClass GstBaseAudioVisualizerClass; - -typedef void (*GstBaseAudioVisualizerShaderFunc)(GstBaseAudioVisualizer *scope, const guint8 *s, guint8 *d); - -/** - * GstBaseAudioVisualizerShader: - * @GST_BASE_AUDIO_VISUALIZER_SHADER_NONE: no shading - * @GST_BASE_AUDIO_VISUALIZER_SHADER_FADE: plain fading - * @GST_BASE_AUDIO_VISUALIZER_SHADER_FADE_AND_MOVE_UP: fade and move up - * @GST_BASE_AUDIO_VISUALIZER_SHADER_FADE_AND_MOVE_DOWN: fade and move down - * @GST_BASE_AUDIO_VISUALIZER_SHADER_FADE_AND_MOVE_LEFT: fade and move left - * @GST_BASE_AUDIO_VISUALIZER_SHADER_FADE_AND_MOVE_RIGHT: fade and move right - * @GST_BASE_AUDIO_VISUALIZER_SHADER_FADE_AND_MOVE_HORIZ_OUT: fade and move horizontally out - * @GST_BASE_AUDIO_VISUALIZER_SHADER_FADE_AND_MOVE_HORIZ_IN: fade and move horizontally in - * @GST_BASE_AUDIO_VISUALIZER_SHADER_FADE_AND_MOVE_VERT_OUT: fade and move vertically out - * @GST_BASE_AUDIO_VISUALIZER_SHADER_FADE_AND_MOVE_VERT_IN: fade and move vertically in - * - * Different types of supported background shading functions. - */ -typedef enum { - GST_BASE_AUDIO_VISUALIZER_SHADER_NONE, - GST_BASE_AUDIO_VISUALIZER_SHADER_FADE, - GST_BASE_AUDIO_VISUALIZER_SHADER_FADE_AND_MOVE_UP, - GST_BASE_AUDIO_VISUALIZER_SHADER_FADE_AND_MOVE_DOWN, - GST_BASE_AUDIO_VISUALIZER_SHADER_FADE_AND_MOVE_LEFT, - GST_BASE_AUDIO_VISUALIZER_SHADER_FADE_AND_MOVE_RIGHT, - GST_BASE_AUDIO_VISUALIZER_SHADER_FADE_AND_MOVE_HORIZ_OUT, - GST_BASE_AUDIO_VISUALIZER_SHADER_FADE_AND_MOVE_HORIZ_IN, - GST_BASE_AUDIO_VISUALIZER_SHADER_FADE_AND_MOVE_VERT_OUT, - GST_BASE_AUDIO_VISUALIZER_SHADER_FADE_AND_MOVE_VERT_IN -} GstBaseAudioVisualizerShader; - -struct _GstBaseAudioVisualizer -{ - GstElement parent; - - /* pads */ - GstPad *srcpad, *sinkpad; - - GstBufferPool *pool; - GstAdapter *adapter; - GstBuffer *inbuf; - guint8 *pixelbuf; - - GstBaseAudioVisualizerShader shader_type; - GstBaseAudioVisualizerShaderFunc shader; - guint32 shade_amount; - - guint spf; /* samples per video frame */ - guint req_spf; /* min samples per frame wanted by the subclass */ - - /* video state */ - GstVideoFormat video_format; - gint fps_n, fps_d; - gint width; - gint height; - guint64 frame_duration; - guint bpf; /* bytes per frame */ - - /* audio state */ - GstAudioInfo ainfo; - - /* configuration mutex */ - GMutex config_lock; - - /* QoS stuff *//* with LOCK */ - gdouble proportion; - GstClockTime earliest_time; - - GstSegment segment; -}; - -struct _GstBaseAudioVisualizerClass -{ - GstElementClass parent_class; - - /* virtual function, called whenever the format changes */ - gboolean (*setup) (GstBaseAudioVisualizer * scope); - - /* virtual function for rendering a frame */ - gboolean (*render) (GstBaseAudioVisualizer * scope, GstBuffer * audio, GstBuffer * video); -}; - -GType gst_base_audio_visualizer_get_type (void); - -G_END_DECLS -#endif /* __GST_BASE_AUDIO_VISUALIZER_H__ */ diff --git a/gst/audiovisualizers/gstspacescope.c b/gst/audiovisualizers/gstspacescope.c index a718b8d4..7bbfa5d3 100644 --- a/gst/audiovisualizers/gstspacescope.c +++ b/gst/audiovisualizers/gstspacescope.c @@ -104,28 +104,27 @@ static void gst_space_scope_set_property (GObject * object, guint prop_id, static void gst_space_scope_get_property (GObject * object, guint prop_id, GValue * value, GParamSpec * pspec); -static void render_dots (GstBaseAudioVisualizer * base, guint32 * vdata, +static void render_dots (GstAudioVisualizer * base, guint32 * vdata, gint16 * adata, guint num_samples); -static void render_lines (GstBaseAudioVisualizer * base, guint32 * vdata, +static void render_lines (GstAudioVisualizer * base, guint32 * vdata, gint16 * adata, guint num_samples); -static void render_color_dots (GstBaseAudioVisualizer * base, guint32 * vdata, +static void render_color_dots (GstAudioVisualizer * base, guint32 * vdata, gint16 * adata, guint num_samples); -static void render_color_lines (GstBaseAudioVisualizer * base, guint32 * vdata, +static void render_color_lines (GstAudioVisualizer * base, guint32 * vdata, gint16 * adata, guint num_samples); -static gboolean gst_space_scope_render (GstBaseAudioVisualizer * scope, +static gboolean gst_space_scope_render (GstAudioVisualizer * scope, GstBuffer * audio, GstBuffer * video); -G_DEFINE_TYPE (GstSpaceScope, gst_space_scope, GST_TYPE_BASE_AUDIO_VISUALIZER); +G_DEFINE_TYPE (GstSpaceScope, gst_space_scope, GST_TYPE_AUDIO_VISUALIZER); static void gst_space_scope_class_init (GstSpaceScopeClass * g_class) { GObjectClass *gobject_class = (GObjectClass *) g_class; GstElementClass *element_class = (GstElementClass *) g_class; - GstBaseAudioVisualizerClass *scope_class = - (GstBaseAudioVisualizerClass *) g_class; + GstAudioVisualizerClass *scope_class = (GstAudioVisualizerClass *) g_class; gst_element_class_set_details_simple (element_class, "Stereo visualizer", "Visualization", @@ -203,7 +202,7 @@ gst_space_scope_get_property (GObject * object, guint prop_id, #include "gstdrawhelpers.h" static void -render_dots (GstBaseAudioVisualizer * base, guint32 * vdata, gint16 * adata, +render_dots (GstAudioVisualizer * base, guint32 * vdata, gint16 * adata, guint num_samples) { guint i, s, x, y, ox, oy; @@ -225,7 +224,7 @@ render_dots (GstBaseAudioVisualizer * base, guint32 * vdata, gint16 * adata, } static void -render_lines (GstBaseAudioVisualizer * base, guint32 * vdata, gint16 * adata, +render_lines (GstAudioVisualizer * base, guint32 * vdata, gint16 * adata, guint num_samples) { guint i, s, x, y, ox, oy; @@ -274,7 +273,7 @@ render_lines (GstBaseAudioVisualizer * base, guint32 * vdata, gint16 * adata, } G_STMT_END static void -render_color_dots (GstBaseAudioVisualizer * base, guint32 * vdata, +render_color_dots (GstAudioVisualizer * base, guint32 * vdata, gint16 * adata, guint num_samples) { GstSpaceScope *scope = (GstSpaceScope *) base; @@ -335,7 +334,7 @@ render_color_dots (GstBaseAudioVisualizer * base, guint32 * vdata, } static void -render_color_lines (GstBaseAudioVisualizer * base, guint32 * vdata, +render_color_lines (GstAudioVisualizer * base, guint32 * vdata, gint16 * adata, guint num_samples) { GstSpaceScope *scope = (GstSpaceScope *) base; @@ -425,7 +424,7 @@ render_color_lines (GstBaseAudioVisualizer * base, guint32 * vdata, } static gboolean -gst_space_scope_render (GstBaseAudioVisualizer * base, GstBuffer * audio, +gst_space_scope_render (GstAudioVisualizer * base, GstBuffer * audio, GstBuffer * video) { GstSpaceScope *scope = GST_SPACE_SCOPE (base); diff --git a/gst/audiovisualizers/gstspacescope.h b/gst/audiovisualizers/gstspacescope.h index a2b06f77..c0241612 100644 --- a/gst/audiovisualizers/gstspacescope.h +++ b/gst/audiovisualizers/gstspacescope.h @@ -22,7 +22,7 @@ #ifndef __GST_SPACE_SCOPE_H__ #define __GST_SPACE_SCOPE_H__ -#include "gstbaseaudiovisualizer.h" +#include "gstaudiovisualizer.h" G_BEGIN_DECLS #define GST_TYPE_SPACE_SCOPE (gst_space_scope_get_type()) @@ -33,11 +33,11 @@ G_BEGIN_DECLS typedef struct _GstSpaceScope GstSpaceScope; typedef struct _GstSpaceScopeClass GstSpaceScopeClass; -typedef void (*GstSpaceScopeProcessFunc) (GstBaseAudioVisualizer *, guint32 *, gint16 *, guint); +typedef void (*GstSpaceScopeProcessFunc) (GstAudioVisualizer *, guint32 *, gint16 *, guint); struct _GstSpaceScope { - GstBaseAudioVisualizer parent; + GstAudioVisualizer parent; /* < private > */ GstSpaceScopeProcessFunc process; @@ -52,7 +52,7 @@ struct _GstSpaceScope struct _GstSpaceScopeClass { - GstBaseAudioVisualizerClass parent_class; + GstAudioVisualizerClass parent_class; }; GType gst_space_scope_get_type (void); diff --git a/gst/audiovisualizers/gstspectrascope.c b/gst/audiovisualizers/gstspectrascope.c index 6b4fe0ee..430cd9e3 100644 --- a/gst/audiovisualizers/gstspectrascope.c +++ b/gst/audiovisualizers/gstspectrascope.c @@ -66,21 +66,19 @@ GST_DEBUG_CATEGORY_STATIC (spectra_scope_debug); static void gst_spectra_scope_finalize (GObject * object); -static gboolean gst_spectra_scope_setup (GstBaseAudioVisualizer * scope); -static gboolean gst_spectra_scope_render (GstBaseAudioVisualizer * scope, +static gboolean gst_spectra_scope_setup (GstAudioVisualizer * scope); +static gboolean gst_spectra_scope_render (GstAudioVisualizer * scope, GstBuffer * audio, GstBuffer * video); -G_DEFINE_TYPE (GstSpectraScope, gst_spectra_scope, - GST_TYPE_BASE_AUDIO_VISUALIZER); +G_DEFINE_TYPE (GstSpectraScope, gst_spectra_scope, GST_TYPE_AUDIO_VISUALIZER); static void gst_spectra_scope_class_init (GstSpectraScopeClass * g_class) { GObjectClass *gobject_class = (GObjectClass *) g_class; GstElementClass *element_class = (GstElementClass *) g_class; - GstBaseAudioVisualizerClass *scope_class = - (GstBaseAudioVisualizerClass *) g_class; + GstAudioVisualizerClass *scope_class = (GstAudioVisualizerClass *) g_class; gobject_class->finalize = gst_spectra_scope_finalize; @@ -121,7 +119,7 @@ gst_spectra_scope_finalize (GObject * object) } static gboolean -gst_spectra_scope_setup (GstBaseAudioVisualizer * bscope) +gst_spectra_scope_setup (GstAudioVisualizer * bscope) { GstSpectraScope *scope = GST_SPECTRA_SCOPE (bscope); guint num_freq = bscope->width + 1; @@ -163,7 +161,7 @@ add_pixel (guint32 * _p, guint32 _c) } static gboolean -gst_spectra_scope_render (GstBaseAudioVisualizer * bscope, GstBuffer * audio, +gst_spectra_scope_render (GstAudioVisualizer * bscope, GstBuffer * audio, GstBuffer * video) { GstSpectraScope *scope = GST_SPECTRA_SCOPE (bscope); @@ -211,16 +209,18 @@ gst_spectra_scope_render (GstBaseAudioVisualizer * bscope, GstBuffer * audio, * or even better do a log mapping? */ fr = (gfloat) fdata[1 + x].r / 512.0; fi = (gfloat) fdata[1 + x].i / 512.0; - y = (guint) (h * fabs (fr * fr + fi * fi)); + y = (guint) (h * sqrt (fr * fr + fi * fi)); if (y > h) y = h; y = h - y; off = (y * w) + x; vdata[off] = 0x00FFFFFF; - for (l = y + 1; l <= h; l++) { + for (l = y; l < h; l++) { off += w; add_pixel (&vdata[off], 0x007F7F7F); } + /* ensure bottom line is full bright (especially in move-up mode) */ + add_pixel (&vdata[off], 0x007F7F7F); } gst_buffer_unmap (video, &vmap); gst_buffer_unmap (audio, &amap); diff --git a/gst/audiovisualizers/gstspectrascope.h b/gst/audiovisualizers/gstspectrascope.h index 3ba666ad..fefea016 100644 --- a/gst/audiovisualizers/gstspectrascope.h +++ b/gst/audiovisualizers/gstspectrascope.h @@ -22,7 +22,7 @@ #ifndef __GST_SPECTRA_SCOPE_H__ #define __GST_SPECTRA_SCOPE_H__ -#include "gstbaseaudiovisualizer.h" +#include "gstaudiovisualizer.h" #include <gst/fft/gstffts16.h> G_BEGIN_DECLS @@ -36,7 +36,7 @@ typedef struct _GstSpectraScopeClass GstSpectraScopeClass; struct _GstSpectraScope { - GstBaseAudioVisualizer parent; + GstAudioVisualizer parent; GstFFTS16 *fft_ctx; GstFFTS16Complex *freq_data; @@ -44,7 +44,7 @@ struct _GstSpectraScope struct _GstSpectraScopeClass { - GstBaseAudioVisualizerClass parent_class; + GstAudioVisualizerClass parent_class; }; GType gst_spectra_scope_get_type (void); diff --git a/gst/audiovisualizers/gstsynaescope.c b/gst/audiovisualizers/gstsynaescope.c index f81131bf..9308c573 100644 --- a/gst/audiovisualizers/gstsynaescope.c +++ b/gst/audiovisualizers/gstsynaescope.c @@ -65,20 +65,19 @@ GST_DEBUG_CATEGORY_STATIC (synae_scope_debug); static void gst_synae_scope_finalize (GObject * object); -static gboolean gst_synae_scope_setup (GstBaseAudioVisualizer * scope); -static gboolean gst_synae_scope_render (GstBaseAudioVisualizer * scope, +static gboolean gst_synae_scope_setup (GstAudioVisualizer * scope); +static gboolean gst_synae_scope_render (GstAudioVisualizer * scope, GstBuffer * audio, GstBuffer * video); -G_DEFINE_TYPE (GstSynaeScope, gst_synae_scope, GST_TYPE_BASE_AUDIO_VISUALIZER); +G_DEFINE_TYPE (GstSynaeScope, gst_synae_scope, GST_TYPE_AUDIO_VISUALIZER); static void gst_synae_scope_class_init (GstSynaeScopeClass * g_class) { GObjectClass *gobject_class = (GObjectClass *) g_class; GstElementClass *element_class = (GstElementClass *) g_class; - GstBaseAudioVisualizerClass *scope_class = - (GstBaseAudioVisualizerClass *) g_class; + GstAudioVisualizerClass *scope_class = (GstAudioVisualizerClass *) g_class; gobject_class->finalize = gst_synae_scope_finalize; @@ -150,7 +149,7 @@ gst_synae_scope_finalize (GObject * object) } static gboolean -gst_synae_scope_setup (GstBaseAudioVisualizer * bscope) +gst_synae_scope_setup (GstAudioVisualizer * bscope) { GstSynaeScope *scope = GST_SYNAE_SCOPE (bscope); guint num_freq = bscope->height + 1; @@ -201,7 +200,7 @@ add_pixel (guint32 * _p, guint32 _c) } static gboolean -gst_synae_scope_render (GstBaseAudioVisualizer * bscope, GstBuffer * audio, +gst_synae_scope_render (GstAudioVisualizer * bscope, GstBuffer * audio, GstBuffer * video) { GstSynaeScope *scope = GST_SYNAE_SCOPE (bscope); diff --git a/gst/audiovisualizers/gstsynaescope.h b/gst/audiovisualizers/gstsynaescope.h index 1ecbe3df..e80c20b4 100644 --- a/gst/audiovisualizers/gstsynaescope.h +++ b/gst/audiovisualizers/gstsynaescope.h @@ -22,7 +22,7 @@ #ifndef __GST_SYNAE_SCOPE_H__ #define __GST_SYNAE_SCOPE_H__ -#include "gstbaseaudiovisualizer.h" +#include "gstaudiovisualizer.h" #include <gst/fft/gstffts16.h> G_BEGIN_DECLS @@ -36,7 +36,7 @@ typedef struct _GstSynaeScopeClass GstSynaeScopeClass; struct _GstSynaeScope { - GstBaseAudioVisualizer parent; + GstAudioVisualizer parent; GstFFTS16 *fft_ctx; GstFFTS16Complex *freq_data_l, *freq_data_r; @@ -48,7 +48,7 @@ struct _GstSynaeScope struct _GstSynaeScopeClass { - GstBaseAudioVisualizerClass parent_class; + GstAudioVisualizerClass parent_class; }; GType gst_synae_scope_get_type (void); diff --git a/gst/audiovisualizers/gstwavescope.c b/gst/audiovisualizers/gstwavescope.c index 20bfa1a9..72a0814e 100644 --- a/gst/audiovisualizers/gstwavescope.c +++ b/gst/audiovisualizers/gstwavescope.c @@ -105,29 +105,28 @@ static void gst_wave_scope_get_property (GObject * object, guint prop_id, GValue * value, GParamSpec * pspec); static void gst_wave_scope_finalize (GObject * object); -static void render_dots (GstBaseAudioVisualizer * scope, guint32 * vdata, +static void render_dots (GstAudioVisualizer * scope, guint32 * vdata, gint16 * adata, guint num_samples); -static void render_lines (GstBaseAudioVisualizer * scope, guint32 * vdata, +static void render_lines (GstAudioVisualizer * scope, guint32 * vdata, gint16 * adata, guint num_samples); -static void render_color_dots (GstBaseAudioVisualizer * base, guint32 * vdata, +static void render_color_dots (GstAudioVisualizer * base, guint32 * vdata, gint16 * adata, guint num_samples); -static void render_color_lines (GstBaseAudioVisualizer * base, guint32 * vdata, +static void render_color_lines (GstAudioVisualizer * base, guint32 * vdata, gint16 * adata, guint num_samples); -static gboolean gst_wave_scope_setup (GstBaseAudioVisualizer * scope); -static gboolean gst_wave_scope_render (GstBaseAudioVisualizer * base, +static gboolean gst_wave_scope_setup (GstAudioVisualizer * scope); +static gboolean gst_wave_scope_render (GstAudioVisualizer * base, GstBuffer * audio, GstBuffer * video); #define gst_wave_scope_parent_class parent_class -G_DEFINE_TYPE (GstWaveScope, gst_wave_scope, GST_TYPE_BASE_AUDIO_VISUALIZER); +G_DEFINE_TYPE (GstWaveScope, gst_wave_scope, GST_TYPE_AUDIO_VISUALIZER); static void gst_wave_scope_class_init (GstWaveScopeClass * g_class) { GObjectClass *gobject_class = (GObjectClass *) g_class; GstElementClass *gstelement_class = (GstElementClass *) g_class; - GstBaseAudioVisualizerClass *scope_class = - (GstBaseAudioVisualizerClass *) g_class; + GstAudioVisualizerClass *scope_class = (GstAudioVisualizerClass *) g_class; gobject_class->set_property = gst_wave_scope_set_property; gobject_class->get_property = gst_wave_scope_get_property; @@ -174,7 +173,7 @@ gst_wave_scope_finalize (GObject * object) } static gboolean -gst_wave_scope_setup (GstBaseAudioVisualizer * bscope) +gst_wave_scope_setup (GstAudioVisualizer * bscope) { GstWaveScope *scope = GST_WAVE_SCOPE (bscope); @@ -235,7 +234,7 @@ gst_wave_scope_get_property (GObject * object, guint prop_id, #include "gstdrawhelpers.h" static void -render_dots (GstBaseAudioVisualizer * base, guint32 * vdata, gint16 * adata, +render_dots (GstAudioVisualizer * base, guint32 * vdata, gint16 * adata, guint num_samples) { gint channels = GST_AUDIO_INFO_CHANNELS (&base->ainfo); @@ -260,7 +259,7 @@ render_dots (GstBaseAudioVisualizer * base, guint32 * vdata, gint16 * adata, } static void -render_lines (GstBaseAudioVisualizer * base, guint32 * vdata, gint16 * adata, +render_lines (GstAudioVisualizer * base, guint32 * vdata, gint16 * adata, guint num_samples) { gint channels = GST_AUDIO_INFO_CHANNELS (&base->ainfo); @@ -304,7 +303,7 @@ render_lines (GstBaseAudioVisualizer * base, guint32 * vdata, gint16 * adata, } G_STMT_END static void -render_color_dots (GstBaseAudioVisualizer * base, guint32 * vdata, +render_color_dots (GstAudioVisualizer * base, guint32 * vdata, gint16 * adata, guint num_samples) { GstWaveScope *scope = (GstWaveScope *) base; @@ -344,7 +343,7 @@ render_color_dots (GstBaseAudioVisualizer * base, guint32 * vdata, } static void -render_color_lines (GstBaseAudioVisualizer * base, guint32 * vdata, +render_color_lines (GstAudioVisualizer * base, guint32 * vdata, gint16 * adata, guint num_samples) { GstWaveScope *scope = (GstWaveScope *) base; @@ -403,7 +402,7 @@ render_color_lines (GstBaseAudioVisualizer * base, guint32 * vdata, } static gboolean -gst_wave_scope_render (GstBaseAudioVisualizer * base, GstBuffer * audio, +gst_wave_scope_render (GstAudioVisualizer * base, GstBuffer * audio, GstBuffer * video) { GstWaveScope *scope = GST_WAVE_SCOPE (base); diff --git a/gst/audiovisualizers/gstwavescope.h b/gst/audiovisualizers/gstwavescope.h index 42137f7c..5ebb6b5b 100644 --- a/gst/audiovisualizers/gstwavescope.h +++ b/gst/audiovisualizers/gstwavescope.h @@ -22,7 +22,7 @@ #ifndef __GST_WAVE_SCOPE_H__ #define __GST_WAVE_SCOPE_H__ -#include "gstbaseaudiovisualizer.h" +#include "gstaudiovisualizer.h" G_BEGIN_DECLS #define GST_TYPE_WAVE_SCOPE (gst_wave_scope_get_type()) @@ -33,11 +33,11 @@ G_BEGIN_DECLS typedef struct _GstWaveScope GstWaveScope; typedef struct _GstWaveScopeClass GstWaveScopeClass; -typedef void (*GstWaveScopeProcessFunc) (GstBaseAudioVisualizer *, guint32 *, gint16 *, guint); +typedef void (*GstWaveScopeProcessFunc) (GstAudioVisualizer *, guint32 *, gint16 *, guint); struct _GstWaveScope { - GstBaseAudioVisualizer parent; + GstAudioVisualizer parent; /* < private > */ GstWaveScopeProcessFunc process; @@ -49,7 +49,7 @@ struct _GstWaveScope struct _GstWaveScopeClass { - GstBaseAudioVisualizerClass parent_class; + GstAudioVisualizerClass parent_class; }; GType gst_wave_scope_get_type (void); diff --git a/gst/autoconvert/Makefile.in b/gst/autoconvert/Makefile.in index 2852203d..ba751d3b 100644 --- a/gst/autoconvert/Makefile.in +++ b/gst/autoconvert/Makefile.in @@ -1,4 +1,4 @@ -# Makefile.in generated by automake 1.11.5 from Makefile.am. +# Makefile.in generated by automake 1.11.6 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, @@ -239,11 +239,10 @@ DIRECT3D_LIBS = @DIRECT3D_LIBS@ DIRECTDRAW_LIBS = @DIRECTDRAW_LIBS@ DIRECTFB_CFLAGS = @DIRECTFB_CFLAGS@ DIRECTFB_LIBS = @DIRECTFB_LIBS@ +DIRECTSHOW_LIBS = @DIRECTSHOW_LIBS@ DIRECTSOUND_LIBS = @DIRECTSOUND_LIBS@ DIRECTX_CFLAGS = @DIRECTX_CFLAGS@ DIRECTX_LDFLAGS = @DIRECTX_LDFLAGS@ -DIVXDEC_LIBS = @DIVXDEC_LIBS@ -DIVXENC_LIBS = @DIVXENC_LIBS@ DLLTOOL = @DLLTOOL@ DSYMUTIL = @DSYMUTIL@ DTS_LIBS = @DTS_LIBS@ @@ -278,7 +277,9 @@ GIO_LIBS = @GIO_LIBS@ GLIB_CFLAGS = @GLIB_CFLAGS@ GLIB_COMPILE_SCHEMAS = @GLIB_COMPILE_SCHEMAS@ GLIB_EXTRA_CFLAGS = @GLIB_EXTRA_CFLAGS@ +GLIB_GENMARSHAL = @GLIB_GENMARSHAL@ GLIB_LIBS = @GLIB_LIBS@ +GLIB_MKENUMS = @GLIB_MKENUMS@ GLIB_PREFIX = @GLIB_PREFIX@ GLIB_REQ = @GLIB_REQ@ GME_LIBS = @GME_LIBS@ @@ -354,13 +355,14 @@ HAVE_CXX = @HAVE_CXX@ HAVE_DIRECT3D = @HAVE_DIRECT3D@ HAVE_DIRECT3D9 = @HAVE_DIRECT3D9@ HAVE_DIRECTDRAW = @HAVE_DIRECTDRAW@ +HAVE_DIRECTSHOW = @HAVE_DIRECTSHOW@ HAVE_DIRECTSOUND = @HAVE_DIRECTSOUND@ HAVE_DTS = @HAVE_DTS@ HAVE_FAAC = @HAVE_FAAC@ HAVE_FAAD = @HAVE_FAAD@ HAVE_FLITE = @HAVE_FLITE@ HAVE_GSM = @HAVE_GSM@ -HAVE_JP2K = @HAVE_JP2K@ +HAVE_JASPER = @HAVE_JASPER@ HAVE_NAS = @HAVE_NAS@ HAVE_VPX = @HAVE_VPX@ HAVE_WILDMIDI = @HAVE_WILDMIDI@ @@ -374,7 +376,7 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ INTLLIBS = @INTLLIBS@ INTL_MACOSX_LIBS = @INTL_MACOSX_LIBS@ -JP2K_LIBS = @JP2K_LIBS@ +JASPER_LIBS = @JASPER_LIBS@ KATE_CFLAGS = @KATE_CFLAGS@ KATE_LIBS = @KATE_LIBS@ LD = @LD@ @@ -410,6 +412,8 @@ MODPLUG_CFLAGS = @MODPLUG_CFLAGS@ MODPLUG_LIBS = @MODPLUG_LIBS@ MPEG2ENC_CFLAGS = @MPEG2ENC_CFLAGS@ MPEG2ENC_LIBS = @MPEG2ENC_LIBS@ +MPG123_CFLAGS = @MPG123_CFLAGS@ +MPG123_LIBS = @MPG123_LIBS@ MPLEX_CFLAGS = @MPLEX_CFLAGS@ MPLEX_LDFLAGS = @MPLEX_LDFLAGS@ MPLEX_LIBS = @MPLEX_LIBS@ diff --git a/gst/bayer/Makefile.in b/gst/bayer/Makefile.in index bd4c978d..bdcef31f 100644 --- a/gst/bayer/Makefile.in +++ b/gst/bayer/Makefile.in @@ -1,4 +1,4 @@ -# Makefile.in generated by automake 1.11.5 from Makefile.am. +# Makefile.in generated by automake 1.11.6 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, @@ -261,11 +261,10 @@ DIRECT3D_LIBS = @DIRECT3D_LIBS@ DIRECTDRAW_LIBS = @DIRECTDRAW_LIBS@ DIRECTFB_CFLAGS = @DIRECTFB_CFLAGS@ DIRECTFB_LIBS = @DIRECTFB_LIBS@ +DIRECTSHOW_LIBS = @DIRECTSHOW_LIBS@ DIRECTSOUND_LIBS = @DIRECTSOUND_LIBS@ DIRECTX_CFLAGS = @DIRECTX_CFLAGS@ DIRECTX_LDFLAGS = @DIRECTX_LDFLAGS@ -DIVXDEC_LIBS = @DIVXDEC_LIBS@ -DIVXENC_LIBS = @DIVXENC_LIBS@ DLLTOOL = @DLLTOOL@ DSYMUTIL = @DSYMUTIL@ DTS_LIBS = @DTS_LIBS@ @@ -302,7 +301,9 @@ GIO_LIBS = @GIO_LIBS@ GLIB_CFLAGS = @GLIB_CFLAGS@ GLIB_COMPILE_SCHEMAS = @GLIB_COMPILE_SCHEMAS@ GLIB_EXTRA_CFLAGS = @GLIB_EXTRA_CFLAGS@ +GLIB_GENMARSHAL = @GLIB_GENMARSHAL@ GLIB_LIBS = @GLIB_LIBS@ +GLIB_MKENUMS = @GLIB_MKENUMS@ GLIB_PREFIX = @GLIB_PREFIX@ GLIB_REQ = @GLIB_REQ@ GME_LIBS = @GME_LIBS@ @@ -378,13 +379,14 @@ HAVE_CXX = @HAVE_CXX@ HAVE_DIRECT3D = @HAVE_DIRECT3D@ HAVE_DIRECT3D9 = @HAVE_DIRECT3D9@ HAVE_DIRECTDRAW = @HAVE_DIRECTDRAW@ +HAVE_DIRECTSHOW = @HAVE_DIRECTSHOW@ HAVE_DIRECTSOUND = @HAVE_DIRECTSOUND@ HAVE_DTS = @HAVE_DTS@ HAVE_FAAC = @HAVE_FAAC@ HAVE_FAAD = @HAVE_FAAD@ HAVE_FLITE = @HAVE_FLITE@ HAVE_GSM = @HAVE_GSM@ -HAVE_JP2K = @HAVE_JP2K@ +HAVE_JASPER = @HAVE_JASPER@ HAVE_NAS = @HAVE_NAS@ HAVE_VPX = @HAVE_VPX@ HAVE_WILDMIDI = @HAVE_WILDMIDI@ @@ -398,7 +400,7 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ INTLLIBS = @INTLLIBS@ INTL_MACOSX_LIBS = @INTL_MACOSX_LIBS@ -JP2K_LIBS = @JP2K_LIBS@ +JASPER_LIBS = @JASPER_LIBS@ KATE_CFLAGS = @KATE_CFLAGS@ KATE_LIBS = @KATE_LIBS@ LD = @LD@ @@ -434,6 +436,8 @@ MODPLUG_CFLAGS = @MODPLUG_CFLAGS@ MODPLUG_LIBS = @MODPLUG_LIBS@ MPEG2ENC_CFLAGS = @MPEG2ENC_CFLAGS@ MPEG2ENC_LIBS = @MPEG2ENC_LIBS@ +MPG123_CFLAGS = @MPG123_CFLAGS@ +MPG123_LIBS = @MPG123_LIBS@ MPLEX_CFLAGS = @MPLEX_CFLAGS@ MPLEX_LDFLAGS = @MPLEX_LDFLAGS@ MPLEX_LIBS = @MPLEX_LIBS@ diff --git a/gst/bayer/gstbayer2rgb.c b/gst/bayer/gstbayer2rgb.c index 8e9fbfd0..1fd2e6b3 100644 --- a/gst/bayer/gstbayer2rgb.c +++ b/gst/bayer/gstbayer2rgb.c @@ -352,10 +352,10 @@ gst_bayer2rgb_split_and_upsample_horiz (guint8 * dest0, guint8 * dest1, dest1[1] = src[1]; #if defined(__i386__) || defined(__amd64__) - gst_bayer_horiz_upsample_unaligned (dest0 + 2, dest1 + 2, src + 1, + bayer_orc_horiz_upsample_unaligned (dest0 + 2, dest1 + 2, src + 1, (n - 4) >> 1); #else - gst_bayer_horiz_upsample (dest0 + 2, dest1 + 2, src + 2, (n - 4) >> 1); + bayer_orc_horiz_upsample (dest0 + 2, dest1 + 2, src + 2, (n - 4) >> 1); #endif for (i = n - 2; i < n; i++) { @@ -396,17 +396,17 @@ gst_bayer2rgb_process (GstBayer2RGB * bayer2rgb, uint8_t * dest, } if (r_off == 2 && g_off == 1 && b_off == 0) { - merge[0] = gst_bayer_merge_bg_bgra; - merge[1] = gst_bayer_merge_gr_bgra; + merge[0] = bayer_orc_merge_bg_bgra; + merge[1] = bayer_orc_merge_gr_bgra; } else if (r_off == 3 && g_off == 2 && b_off == 1) { - merge[0] = gst_bayer_merge_bg_abgr; - merge[1] = gst_bayer_merge_gr_abgr; + merge[0] = bayer_orc_merge_bg_abgr; + merge[1] = bayer_orc_merge_gr_abgr; } else if (r_off == 1 && g_off == 2 && b_off == 3) { - merge[0] = gst_bayer_merge_bg_argb; - merge[1] = gst_bayer_merge_gr_argb; + merge[0] = bayer_orc_merge_bg_argb; + merge[1] = bayer_orc_merge_gr_argb; } else if (r_off == 0 && g_off == 1 && b_off == 2) { - merge[0] = gst_bayer_merge_bg_rgba; - merge[1] = gst_bayer_merge_gr_rgba; + merge[0] = bayer_orc_merge_bg_rgba; + merge[1] = bayer_orc_merge_gr_rgba; } if (bayer2rgb->format == GST_BAYER_2_RGB_FORMAT_GRBG || bayer2rgb->format == GST_BAYER_2_RGB_FORMAT_GBRG) { diff --git a/gst/bayer/gstbayerorc-dist.c b/gst/bayer/gstbayerorc-dist.c index 7c1c80e6..95c53c5f 100644 --- a/gst/bayer/gstbayerorc-dist.c +++ b/gst/bayer/gstbayerorc-dist.c @@ -82,39 +82,39 @@ typedef union #ifndef DISABLE_ORC #include <orc/orc.h> #endif -void gst_bayer_horiz_upsample_unaligned (guint8 * ORC_RESTRICT d1, +void bayer_orc_horiz_upsample_unaligned (guint8 * ORC_RESTRICT d1, guint8 * ORC_RESTRICT d2, const guint8 * ORC_RESTRICT s1, int n); -void gst_bayer_horiz_upsample (guint8 * ORC_RESTRICT d1, +void bayer_orc_horiz_upsample (guint8 * ORC_RESTRICT d1, guint8 * ORC_RESTRICT d2, const guint8 * ORC_RESTRICT s1, int n); -void gst_bayer_merge_bg_bgra (guint8 * ORC_RESTRICT d1, +void bayer_orc_merge_bg_bgra (guint8 * ORC_RESTRICT d1, const guint8 * ORC_RESTRICT s1, const guint8 * ORC_RESTRICT s2, const guint8 * ORC_RESTRICT s3, const guint8 * ORC_RESTRICT s4, const guint8 * ORC_RESTRICT s5, const guint8 * ORC_RESTRICT s6, int n); -void gst_bayer_merge_gr_bgra (guint8 * ORC_RESTRICT d1, +void bayer_orc_merge_gr_bgra (guint8 * ORC_RESTRICT d1, const guint8 * ORC_RESTRICT s1, const guint8 * ORC_RESTRICT s2, const guint8 * ORC_RESTRICT s3, const guint8 * ORC_RESTRICT s4, const guint8 * ORC_RESTRICT s5, const guint8 * ORC_RESTRICT s6, int n); -void gst_bayer_merge_bg_abgr (guint8 * ORC_RESTRICT d1, +void bayer_orc_merge_bg_abgr (guint8 * ORC_RESTRICT d1, const guint8 * ORC_RESTRICT s1, const guint8 * ORC_RESTRICT s2, const guint8 * ORC_RESTRICT s3, const guint8 * ORC_RESTRICT s4, const guint8 * ORC_RESTRICT s5, const guint8 * ORC_RESTRICT s6, int n); -void gst_bayer_merge_gr_abgr (guint8 * ORC_RESTRICT d1, +void bayer_orc_merge_gr_abgr (guint8 * ORC_RESTRICT d1, const guint8 * ORC_RESTRICT s1, const guint8 * ORC_RESTRICT s2, const guint8 * ORC_RESTRICT s3, const guint8 * ORC_RESTRICT s4, const guint8 * ORC_RESTRICT s5, const guint8 * ORC_RESTRICT s6, int n); -void gst_bayer_merge_bg_rgba (guint8 * ORC_RESTRICT d1, +void bayer_orc_merge_bg_rgba (guint8 * ORC_RESTRICT d1, const guint8 * ORC_RESTRICT s1, const guint8 * ORC_RESTRICT s2, const guint8 * ORC_RESTRICT s3, const guint8 * ORC_RESTRICT s4, const guint8 * ORC_RESTRICT s5, const guint8 * ORC_RESTRICT s6, int n); -void gst_bayer_merge_gr_rgba (guint8 * ORC_RESTRICT d1, +void bayer_orc_merge_gr_rgba (guint8 * ORC_RESTRICT d1, const guint8 * ORC_RESTRICT s1, const guint8 * ORC_RESTRICT s2, const guint8 * ORC_RESTRICT s3, const guint8 * ORC_RESTRICT s4, const guint8 * ORC_RESTRICT s5, const guint8 * ORC_RESTRICT s6, int n); -void gst_bayer_merge_bg_argb (guint8 * ORC_RESTRICT d1, +void bayer_orc_merge_bg_argb (guint8 * ORC_RESTRICT d1, const guint8 * ORC_RESTRICT s1, const guint8 * ORC_RESTRICT s2, const guint8 * ORC_RESTRICT s3, const guint8 * ORC_RESTRICT s4, const guint8 * ORC_RESTRICT s5, const guint8 * ORC_RESTRICT s6, int n); -void gst_bayer_merge_gr_argb (guint8 * ORC_RESTRICT d1, +void bayer_orc_merge_gr_argb (guint8 * ORC_RESTRICT d1, const guint8 * ORC_RESTRICT s1, const guint8 * ORC_RESTRICT s2, const guint8 * ORC_RESTRICT s3, const guint8 * ORC_RESTRICT s4, const guint8 * ORC_RESTRICT s5, const guint8 * ORC_RESTRICT s6, int n); @@ -164,10 +164,10 @@ void gst_bayer_merge_gr_argb (guint8 * ORC_RESTRICT d1, -/* gst_bayer_horiz_upsample_unaligned */ +/* bayer_orc_horiz_upsample_unaligned */ #ifdef DISABLE_ORC void -gst_bayer_horiz_upsample_unaligned (guint8 * ORC_RESTRICT d1, +bayer_orc_horiz_upsample_unaligned (guint8 * ORC_RESTRICT d1, guint8 * ORC_RESTRICT d2, const guint8 * ORC_RESTRICT s1, int n) { int i; @@ -237,7 +237,7 @@ gst_bayer_horiz_upsample_unaligned (guint8 * ORC_RESTRICT d1, #else static void -_backup_gst_bayer_horiz_upsample_unaligned (OrcExecutor * ORC_RESTRICT ex) +_backup_bayer_orc_horiz_upsample_unaligned (OrcExecutor * ORC_RESTRICT ex) { int i; int n = ex->n; @@ -306,7 +306,7 @@ _backup_gst_bayer_horiz_upsample_unaligned (OrcExecutor * ORC_RESTRICT ex) } void -gst_bayer_horiz_upsample_unaligned (guint8 * ORC_RESTRICT d1, +bayer_orc_horiz_upsample_unaligned (guint8 * ORC_RESTRICT d1, guint8 * ORC_RESTRICT d2, const guint8 * ORC_RESTRICT s1, int n) { OrcExecutor _ex, *ex = &_ex; @@ -320,9 +320,9 @@ gst_bayer_horiz_upsample_unaligned (guint8 * ORC_RESTRICT d1, OrcProgram *p; p = orc_program_new (); - orc_program_set_name (p, "gst_bayer_horiz_upsample_unaligned"); + orc_program_set_name (p, "bayer_orc_horiz_upsample_unaligned"); orc_program_set_backup_function (p, - _backup_gst_bayer_horiz_upsample_unaligned); + _backup_bayer_orc_horiz_upsample_unaligned); orc_program_add_destination (p, 2, "d1"); orc_program_add_destination (p, 2, "d2"); orc_program_add_source (p, 2, "s1"); @@ -369,10 +369,10 @@ gst_bayer_horiz_upsample_unaligned (guint8 * ORC_RESTRICT d1, #endif -/* gst_bayer_horiz_upsample */ +/* bayer_orc_horiz_upsample */ #ifdef DISABLE_ORC void -gst_bayer_horiz_upsample (guint8 * ORC_RESTRICT d1, guint8 * ORC_RESTRICT d2, +bayer_orc_horiz_upsample (guint8 * ORC_RESTRICT d1, guint8 * ORC_RESTRICT d2, const guint8 * ORC_RESTRICT s1, int n) { int i; @@ -454,7 +454,7 @@ gst_bayer_horiz_upsample (guint8 * ORC_RESTRICT d1, guint8 * ORC_RESTRICT d2, #else static void -_backup_gst_bayer_horiz_upsample (OrcExecutor * ORC_RESTRICT ex) +_backup_bayer_orc_horiz_upsample (OrcExecutor * ORC_RESTRICT ex) { int i; int n = ex->n; @@ -535,7 +535,7 @@ _backup_gst_bayer_horiz_upsample (OrcExecutor * ORC_RESTRICT ex) } void -gst_bayer_horiz_upsample (guint8 * ORC_RESTRICT d1, guint8 * ORC_RESTRICT d2, +bayer_orc_horiz_upsample (guint8 * ORC_RESTRICT d1, guint8 * ORC_RESTRICT d2, const guint8 * ORC_RESTRICT s1, int n) { OrcExecutor _ex, *ex = &_ex; @@ -549,8 +549,8 @@ gst_bayer_horiz_upsample (guint8 * ORC_RESTRICT d1, guint8 * ORC_RESTRICT d2, OrcProgram *p; p = orc_program_new (); - orc_program_set_name (p, "gst_bayer_horiz_upsample"); - orc_program_set_backup_function (p, _backup_gst_bayer_horiz_upsample); + orc_program_set_name (p, "bayer_orc_horiz_upsample"); + orc_program_set_backup_function (p, _backup_bayer_orc_horiz_upsample); orc_program_add_destination (p, 2, "d1"); orc_program_add_destination (p, 2, "d2"); orc_program_add_source (p, 2, "s1"); @@ -604,10 +604,10 @@ gst_bayer_horiz_upsample (guint8 * ORC_RESTRICT d1, guint8 * ORC_RESTRICT d2, #endif -/* gst_bayer_merge_bg_bgra */ +/* bayer_orc_merge_bg_bgra */ #ifdef DISABLE_ORC void -gst_bayer_merge_bg_bgra (guint8 * ORC_RESTRICT d1, +bayer_orc_merge_bg_bgra (guint8 * ORC_RESTRICT d1, const guint8 * ORC_RESTRICT s1, const guint8 * ORC_RESTRICT s2, const guint8 * ORC_RESTRICT s3, const guint8 * ORC_RESTRICT s4, const guint8 * ORC_RESTRICT s5, const guint8 * ORC_RESTRICT s6, int n) @@ -733,7 +733,7 @@ gst_bayer_merge_bg_bgra (guint8 * ORC_RESTRICT d1, #else static void -_backup_gst_bayer_merge_bg_bgra (OrcExecutor * ORC_RESTRICT ex) +_backup_bayer_orc_merge_bg_bgra (OrcExecutor * ORC_RESTRICT ex) { int i; int n = ex->n; @@ -856,7 +856,7 @@ _backup_gst_bayer_merge_bg_bgra (OrcExecutor * ORC_RESTRICT ex) } void -gst_bayer_merge_bg_bgra (guint8 * ORC_RESTRICT d1, +bayer_orc_merge_bg_bgra (guint8 * ORC_RESTRICT d1, const guint8 * ORC_RESTRICT s1, const guint8 * ORC_RESTRICT s2, const guint8 * ORC_RESTRICT s3, const guint8 * ORC_RESTRICT s4, const guint8 * ORC_RESTRICT s5, const guint8 * ORC_RESTRICT s6, int n) @@ -872,8 +872,8 @@ gst_bayer_merge_bg_bgra (guint8 * ORC_RESTRICT d1, OrcProgram *p; p = orc_program_new (); - orc_program_set_name (p, "gst_bayer_merge_bg_bgra"); - orc_program_set_backup_function (p, _backup_gst_bayer_merge_bg_bgra); + orc_program_set_name (p, "bayer_orc_merge_bg_bgra"); + orc_program_set_backup_function (p, _backup_bayer_orc_merge_bg_bgra); orc_program_add_destination (p, 8, "d1"); orc_program_add_source (p, 2, "s1"); orc_program_add_source (p, 2, "s2"); @@ -935,10 +935,10 @@ gst_bayer_merge_bg_bgra (guint8 * ORC_RESTRICT d1, #endif -/* gst_bayer_merge_gr_bgra */ +/* bayer_orc_merge_gr_bgra */ #ifdef DISABLE_ORC void -gst_bayer_merge_gr_bgra (guint8 * ORC_RESTRICT d1, +bayer_orc_merge_gr_bgra (guint8 * ORC_RESTRICT d1, const guint8 * ORC_RESTRICT s1, const guint8 * ORC_RESTRICT s2, const guint8 * ORC_RESTRICT s3, const guint8 * ORC_RESTRICT s4, const guint8 * ORC_RESTRICT s5, const guint8 * ORC_RESTRICT s6, int n) @@ -1064,7 +1064,7 @@ gst_bayer_merge_gr_bgra (guint8 * ORC_RESTRICT d1, #else static void -_backup_gst_bayer_merge_gr_bgra (OrcExecutor * ORC_RESTRICT ex) +_backup_bayer_orc_merge_gr_bgra (OrcExecutor * ORC_RESTRICT ex) { int i; int n = ex->n; @@ -1187,7 +1187,7 @@ _backup_gst_bayer_merge_gr_bgra (OrcExecutor * ORC_RESTRICT ex) } void -gst_bayer_merge_gr_bgra (guint8 * ORC_RESTRICT d1, +bayer_orc_merge_gr_bgra (guint8 * ORC_RESTRICT d1, const guint8 * ORC_RESTRICT s1, const guint8 * ORC_RESTRICT s2, const guint8 * ORC_RESTRICT s3, const guint8 * ORC_RESTRICT s4, const guint8 * ORC_RESTRICT s5, const guint8 * ORC_RESTRICT s6, int n) @@ -1203,8 +1203,8 @@ gst_bayer_merge_gr_bgra (guint8 * ORC_RESTRICT d1, OrcProgram *p; p = orc_program_new (); - orc_program_set_name (p, "gst_bayer_merge_gr_bgra"); - orc_program_set_backup_function (p, _backup_gst_bayer_merge_gr_bgra); + orc_program_set_name (p, "bayer_orc_merge_gr_bgra"); + orc_program_set_backup_function (p, _backup_bayer_orc_merge_gr_bgra); orc_program_add_destination (p, 8, "d1"); orc_program_add_source (p, 2, "s1"); orc_program_add_source (p, 2, "s2"); @@ -1266,10 +1266,10 @@ gst_bayer_merge_gr_bgra (guint8 * ORC_RESTRICT d1, #endif -/* gst_bayer_merge_bg_abgr */ +/* bayer_orc_merge_bg_abgr */ #ifdef DISABLE_ORC void -gst_bayer_merge_bg_abgr (guint8 * ORC_RESTRICT d1, +bayer_orc_merge_bg_abgr (guint8 * ORC_RESTRICT d1, const guint8 * ORC_RESTRICT s1, const guint8 * ORC_RESTRICT s2, const guint8 * ORC_RESTRICT s3, const guint8 * ORC_RESTRICT s4, const guint8 * ORC_RESTRICT s5, const guint8 * ORC_RESTRICT s6, int n) @@ -1395,7 +1395,7 @@ gst_bayer_merge_bg_abgr (guint8 * ORC_RESTRICT d1, #else static void -_backup_gst_bayer_merge_bg_abgr (OrcExecutor * ORC_RESTRICT ex) +_backup_bayer_orc_merge_bg_abgr (OrcExecutor * ORC_RESTRICT ex) { int i; int n = ex->n; @@ -1518,7 +1518,7 @@ _backup_gst_bayer_merge_bg_abgr (OrcExecutor * ORC_RESTRICT ex) } void -gst_bayer_merge_bg_abgr (guint8 * ORC_RESTRICT d1, +bayer_orc_merge_bg_abgr (guint8 * ORC_RESTRICT d1, const guint8 * ORC_RESTRICT s1, const guint8 * ORC_RESTRICT s2, const guint8 * ORC_RESTRICT s3, const guint8 * ORC_RESTRICT s4, const guint8 * ORC_RESTRICT s5, const guint8 * ORC_RESTRICT s6, int n) @@ -1534,8 +1534,8 @@ gst_bayer_merge_bg_abgr (guint8 * ORC_RESTRICT d1, OrcProgram *p; p = orc_program_new (); - orc_program_set_name (p, "gst_bayer_merge_bg_abgr"); - orc_program_set_backup_function (p, _backup_gst_bayer_merge_bg_abgr); + orc_program_set_name (p, "bayer_orc_merge_bg_abgr"); + orc_program_set_backup_function (p, _backup_bayer_orc_merge_bg_abgr); orc_program_add_destination (p, 8, "d1"); orc_program_add_source (p, 2, "s1"); orc_program_add_source (p, 2, "s2"); @@ -1597,10 +1597,10 @@ gst_bayer_merge_bg_abgr (guint8 * ORC_RESTRICT d1, #endif -/* gst_bayer_merge_gr_abgr */ +/* bayer_orc_merge_gr_abgr */ #ifdef DISABLE_ORC void -gst_bayer_merge_gr_abgr (guint8 * ORC_RESTRICT d1, +bayer_orc_merge_gr_abgr (guint8 * ORC_RESTRICT d1, const guint8 * ORC_RESTRICT s1, const guint8 * ORC_RESTRICT s2, const guint8 * ORC_RESTRICT s3, const guint8 * ORC_RESTRICT s4, const guint8 * ORC_RESTRICT s5, const guint8 * ORC_RESTRICT s6, int n) @@ -1726,7 +1726,7 @@ gst_bayer_merge_gr_abgr (guint8 * ORC_RESTRICT d1, #else static void -_backup_gst_bayer_merge_gr_abgr (OrcExecutor * ORC_RESTRICT ex) +_backup_bayer_orc_merge_gr_abgr (OrcExecutor * ORC_RESTRICT ex) { int i; int n = ex->n; @@ -1849,7 +1849,7 @@ _backup_gst_bayer_merge_gr_abgr (OrcExecutor * ORC_RESTRICT ex) } void -gst_bayer_merge_gr_abgr (guint8 * ORC_RESTRICT d1, +bayer_orc_merge_gr_abgr (guint8 * ORC_RESTRICT d1, const guint8 * ORC_RESTRICT s1, const guint8 * ORC_RESTRICT s2, const guint8 * ORC_RESTRICT s3, const guint8 * ORC_RESTRICT s4, const guint8 * ORC_RESTRICT s5, const guint8 * ORC_RESTRICT s6, int n) @@ -1865,8 +1865,8 @@ gst_bayer_merge_gr_abgr (guint8 * ORC_RESTRICT d1, OrcProgram *p; p = orc_program_new (); - orc_program_set_name (p, "gst_bayer_merge_gr_abgr"); - orc_program_set_backup_function (p, _backup_gst_bayer_merge_gr_abgr); + orc_program_set_name (p, "bayer_orc_merge_gr_abgr"); + orc_program_set_backup_function (p, _backup_bayer_orc_merge_gr_abgr); orc_program_add_destination (p, 8, "d1"); orc_program_add_source (p, 2, "s1"); orc_program_add_source (p, 2, "s2"); @@ -1928,10 +1928,10 @@ gst_bayer_merge_gr_abgr (guint8 * ORC_RESTRICT d1, #endif -/* gst_bayer_merge_bg_rgba */ +/* bayer_orc_merge_bg_rgba */ #ifdef DISABLE_ORC void -gst_bayer_merge_bg_rgba (guint8 * ORC_RESTRICT d1, +bayer_orc_merge_bg_rgba (guint8 * ORC_RESTRICT d1, const guint8 * ORC_RESTRICT s1, const guint8 * ORC_RESTRICT s2, const guint8 * ORC_RESTRICT s3, const guint8 * ORC_RESTRICT s4, const guint8 * ORC_RESTRICT s5, const guint8 * ORC_RESTRICT s6, int n) @@ -2057,7 +2057,7 @@ gst_bayer_merge_bg_rgba (guint8 * ORC_RESTRICT d1, #else static void -_backup_gst_bayer_merge_bg_rgba (OrcExecutor * ORC_RESTRICT ex) +_backup_bayer_orc_merge_bg_rgba (OrcExecutor * ORC_RESTRICT ex) { int i; int n = ex->n; @@ -2180,7 +2180,7 @@ _backup_gst_bayer_merge_bg_rgba (OrcExecutor * ORC_RESTRICT ex) } void -gst_bayer_merge_bg_rgba (guint8 * ORC_RESTRICT d1, +bayer_orc_merge_bg_rgba (guint8 * ORC_RESTRICT d1, const guint8 * ORC_RESTRICT s1, const guint8 * ORC_RESTRICT s2, const guint8 * ORC_RESTRICT s3, const guint8 * ORC_RESTRICT s4, const guint8 * ORC_RESTRICT s5, const guint8 * ORC_RESTRICT s6, int n) @@ -2196,8 +2196,8 @@ gst_bayer_merge_bg_rgba (guint8 * ORC_RESTRICT d1, OrcProgram *p; p = orc_program_new (); - orc_program_set_name (p, "gst_bayer_merge_bg_rgba"); - orc_program_set_backup_function (p, _backup_gst_bayer_merge_bg_rgba); + orc_program_set_name (p, "bayer_orc_merge_bg_rgba"); + orc_program_set_backup_function (p, _backup_bayer_orc_merge_bg_rgba); orc_program_add_destination (p, 8, "d1"); orc_program_add_source (p, 2, "s1"); orc_program_add_source (p, 2, "s2"); @@ -2259,10 +2259,10 @@ gst_bayer_merge_bg_rgba (guint8 * ORC_RESTRICT d1, #endif -/* gst_bayer_merge_gr_rgba */ +/* bayer_orc_merge_gr_rgba */ #ifdef DISABLE_ORC void -gst_bayer_merge_gr_rgba (guint8 * ORC_RESTRICT d1, +bayer_orc_merge_gr_rgba (guint8 * ORC_RESTRICT d1, const guint8 * ORC_RESTRICT s1, const guint8 * ORC_RESTRICT s2, const guint8 * ORC_RESTRICT s3, const guint8 * ORC_RESTRICT s4, const guint8 * ORC_RESTRICT s5, const guint8 * ORC_RESTRICT s6, int n) @@ -2388,7 +2388,7 @@ gst_bayer_merge_gr_rgba (guint8 * ORC_RESTRICT d1, #else static void -_backup_gst_bayer_merge_gr_rgba (OrcExecutor * ORC_RESTRICT ex) +_backup_bayer_orc_merge_gr_rgba (OrcExecutor * ORC_RESTRICT ex) { int i; int n = ex->n; @@ -2511,7 +2511,7 @@ _backup_gst_bayer_merge_gr_rgba (OrcExecutor * ORC_RESTRICT ex) } void -gst_bayer_merge_gr_rgba (guint8 * ORC_RESTRICT d1, +bayer_orc_merge_gr_rgba (guint8 * ORC_RESTRICT d1, const guint8 * ORC_RESTRICT s1, const guint8 * ORC_RESTRICT s2, const guint8 * ORC_RESTRICT s3, const guint8 * ORC_RESTRICT s4, const guint8 * ORC_RESTRICT s5, const guint8 * ORC_RESTRICT s6, int n) @@ -2527,8 +2527,8 @@ gst_bayer_merge_gr_rgba (guint8 * ORC_RESTRICT d1, OrcProgram *p; p = orc_program_new (); - orc_program_set_name (p, "gst_bayer_merge_gr_rgba"); - orc_program_set_backup_function (p, _backup_gst_bayer_merge_gr_rgba); + orc_program_set_name (p, "bayer_orc_merge_gr_rgba"); + orc_program_set_backup_function (p, _backup_bayer_orc_merge_gr_rgba); orc_program_add_destination (p, 8, "d1"); orc_program_add_source (p, 2, "s1"); orc_program_add_source (p, 2, "s2"); @@ -2590,10 +2590,10 @@ gst_bayer_merge_gr_rgba (guint8 * ORC_RESTRICT d1, #endif -/* gst_bayer_merge_bg_argb */ +/* bayer_orc_merge_bg_argb */ #ifdef DISABLE_ORC void -gst_bayer_merge_bg_argb (guint8 * ORC_RESTRICT d1, +bayer_orc_merge_bg_argb (guint8 * ORC_RESTRICT d1, const guint8 * ORC_RESTRICT s1, const guint8 * ORC_RESTRICT s2, const guint8 * ORC_RESTRICT s3, const guint8 * ORC_RESTRICT s4, const guint8 * ORC_RESTRICT s5, const guint8 * ORC_RESTRICT s6, int n) @@ -2719,7 +2719,7 @@ gst_bayer_merge_bg_argb (guint8 * ORC_RESTRICT d1, #else static void -_backup_gst_bayer_merge_bg_argb (OrcExecutor * ORC_RESTRICT ex) +_backup_bayer_orc_merge_bg_argb (OrcExecutor * ORC_RESTRICT ex) { int i; int n = ex->n; @@ -2842,7 +2842,7 @@ _backup_gst_bayer_merge_bg_argb (OrcExecutor * ORC_RESTRICT ex) } void -gst_bayer_merge_bg_argb (guint8 * ORC_RESTRICT d1, +bayer_orc_merge_bg_argb (guint8 * ORC_RESTRICT d1, const guint8 * ORC_RESTRICT s1, const guint8 * ORC_RESTRICT s2, const guint8 * ORC_RESTRICT s3, const guint8 * ORC_RESTRICT s4, const guint8 * ORC_RESTRICT s5, const guint8 * ORC_RESTRICT s6, int n) @@ -2858,8 +2858,8 @@ gst_bayer_merge_bg_argb (guint8 * ORC_RESTRICT d1, OrcProgram *p; p = orc_program_new (); - orc_program_set_name (p, "gst_bayer_merge_bg_argb"); - orc_program_set_backup_function (p, _backup_gst_bayer_merge_bg_argb); + orc_program_set_name (p, "bayer_orc_merge_bg_argb"); + orc_program_set_backup_function (p, _backup_bayer_orc_merge_bg_argb); orc_program_add_destination (p, 8, "d1"); orc_program_add_source (p, 2, "s1"); orc_program_add_source (p, 2, "s2"); @@ -2921,10 +2921,10 @@ gst_bayer_merge_bg_argb (guint8 * ORC_RESTRICT d1, #endif -/* gst_bayer_merge_gr_argb */ +/* bayer_orc_merge_gr_argb */ #ifdef DISABLE_ORC void -gst_bayer_merge_gr_argb (guint8 * ORC_RESTRICT d1, +bayer_orc_merge_gr_argb (guint8 * ORC_RESTRICT d1, const guint8 * ORC_RESTRICT s1, const guint8 * ORC_RESTRICT s2, const guint8 * ORC_RESTRICT s3, const guint8 * ORC_RESTRICT s4, const guint8 * ORC_RESTRICT s5, const guint8 * ORC_RESTRICT s6, int n) @@ -3050,7 +3050,7 @@ gst_bayer_merge_gr_argb (guint8 * ORC_RESTRICT d1, #else static void -_backup_gst_bayer_merge_gr_argb (OrcExecutor * ORC_RESTRICT ex) +_backup_bayer_orc_merge_gr_argb (OrcExecutor * ORC_RESTRICT ex) { int i; int n = ex->n; @@ -3173,7 +3173,7 @@ _backup_gst_bayer_merge_gr_argb (OrcExecutor * ORC_RESTRICT ex) } void -gst_bayer_merge_gr_argb (guint8 * ORC_RESTRICT d1, +bayer_orc_merge_gr_argb (guint8 * ORC_RESTRICT d1, const guint8 * ORC_RESTRICT s1, const guint8 * ORC_RESTRICT s2, const guint8 * ORC_RESTRICT s3, const guint8 * ORC_RESTRICT s4, const guint8 * ORC_RESTRICT s5, const guint8 * ORC_RESTRICT s6, int n) @@ -3189,8 +3189,8 @@ gst_bayer_merge_gr_argb (guint8 * ORC_RESTRICT d1, OrcProgram *p; p = orc_program_new (); - orc_program_set_name (p, "gst_bayer_merge_gr_argb"); - orc_program_set_backup_function (p, _backup_gst_bayer_merge_gr_argb); + orc_program_set_name (p, "bayer_orc_merge_gr_argb"); + orc_program_set_backup_function (p, _backup_bayer_orc_merge_gr_argb); orc_program_add_destination (p, 8, "d1"); orc_program_add_source (p, 2, "s1"); orc_program_add_source (p, 2, "s2"); diff --git a/gst/bayer/gstbayerorc-dist.h b/gst/bayer/gstbayerorc-dist.h index 5e8b8655..83227b35 100644 --- a/gst/bayer/gstbayerorc-dist.h +++ b/gst/bayer/gstbayerorc-dist.h @@ -67,16 +67,16 @@ typedef union { orc_int64 i; double f; orc_int32 x2[2]; float x2f[2]; orc_int16 #define ORC_RESTRICT #endif #endif -void gst_bayer_horiz_upsample_unaligned (guint8 * ORC_RESTRICT d1, guint8 * ORC_RESTRICT d2, const guint8 * ORC_RESTRICT s1, int n); -void gst_bayer_horiz_upsample (guint8 * ORC_RESTRICT d1, guint8 * ORC_RESTRICT d2, const guint8 * ORC_RESTRICT s1, int n); -void gst_bayer_merge_bg_bgra (guint8 * ORC_RESTRICT d1, const guint8 * ORC_RESTRICT s1, const guint8 * ORC_RESTRICT s2, const guint8 * ORC_RESTRICT s3, const guint8 * ORC_RESTRICT s4, const guint8 * ORC_RESTRICT s5, const guint8 * ORC_RESTRICT s6, int n); -void gst_bayer_merge_gr_bgra (guint8 * ORC_RESTRICT d1, const guint8 * ORC_RESTRICT s1, const guint8 * ORC_RESTRICT s2, const guint8 * ORC_RESTRICT s3, const guint8 * ORC_RESTRICT s4, const guint8 * ORC_RESTRICT s5, const guint8 * ORC_RESTRICT s6, int n); -void gst_bayer_merge_bg_abgr (guint8 * ORC_RESTRICT d1, const guint8 * ORC_RESTRICT s1, const guint8 * ORC_RESTRICT s2, const guint8 * ORC_RESTRICT s3, const guint8 * ORC_RESTRICT s4, const guint8 * ORC_RESTRICT s5, const guint8 * ORC_RESTRICT s6, int n); -void gst_bayer_merge_gr_abgr (guint8 * ORC_RESTRICT d1, const guint8 * ORC_RESTRICT s1, const guint8 * ORC_RESTRICT s2, const guint8 * ORC_RESTRICT s3, const guint8 * ORC_RESTRICT s4, const guint8 * ORC_RESTRICT s5, const guint8 * ORC_RESTRICT s6, int n); -void gst_bayer_merge_bg_rgba (guint8 * ORC_RESTRICT d1, const guint8 * ORC_RESTRICT s1, const guint8 * ORC_RESTRICT s2, const guint8 * ORC_RESTRICT s3, const guint8 * ORC_RESTRICT s4, const guint8 * ORC_RESTRICT s5, const guint8 * ORC_RESTRICT s6, int n); -void gst_bayer_merge_gr_rgba (guint8 * ORC_RESTRICT d1, const guint8 * ORC_RESTRICT s1, const guint8 * ORC_RESTRICT s2, const guint8 * ORC_RESTRICT s3, const guint8 * ORC_RESTRICT s4, const guint8 * ORC_RESTRICT s5, const guint8 * ORC_RESTRICT s6, int n); -void gst_bayer_merge_bg_argb (guint8 * ORC_RESTRICT d1, const guint8 * ORC_RESTRICT s1, const guint8 * ORC_RESTRICT s2, const guint8 * ORC_RESTRICT s3, const guint8 * ORC_RESTRICT s4, const guint8 * ORC_RESTRICT s5, const guint8 * ORC_RESTRICT s6, int n); -void gst_bayer_merge_gr_argb (guint8 * ORC_RESTRICT d1, const guint8 * ORC_RESTRICT s1, const guint8 * ORC_RESTRICT s2, const guint8 * ORC_RESTRICT s3, const guint8 * ORC_RESTRICT s4, const guint8 * ORC_RESTRICT s5, const guint8 * ORC_RESTRICT s6, int n); +void bayer_orc_horiz_upsample_unaligned (guint8 * ORC_RESTRICT d1, guint8 * ORC_RESTRICT d2, const guint8 * ORC_RESTRICT s1, int n); +void bayer_orc_horiz_upsample (guint8 * ORC_RESTRICT d1, guint8 * ORC_RESTRICT d2, const guint8 * ORC_RESTRICT s1, int n); +void bayer_orc_merge_bg_bgra (guint8 * ORC_RESTRICT d1, const guint8 * ORC_RESTRICT s1, const guint8 * ORC_RESTRICT s2, const guint8 * ORC_RESTRICT s3, const guint8 * ORC_RESTRICT s4, const guint8 * ORC_RESTRICT s5, const guint8 * ORC_RESTRICT s6, int n); +void bayer_orc_merge_gr_bgra (guint8 * ORC_RESTRICT d1, const guint8 * ORC_RESTRICT s1, const guint8 * ORC_RESTRICT s2, const guint8 * ORC_RESTRICT s3, const guint8 * ORC_RESTRICT s4, const guint8 * ORC_RESTRICT s5, const guint8 * ORC_RESTRICT s6, int n); +void bayer_orc_merge_bg_abgr (guint8 * ORC_RESTRICT d1, const guint8 * ORC_RESTRICT s1, const guint8 * ORC_RESTRICT s2, const guint8 * ORC_RESTRICT s3, const guint8 * ORC_RESTRICT s4, const guint8 * ORC_RESTRICT s5, const guint8 * ORC_RESTRICT s6, int n); +void bayer_orc_merge_gr_abgr (guint8 * ORC_RESTRICT d1, const guint8 * ORC_RESTRICT s1, const guint8 * ORC_RESTRICT s2, const guint8 * ORC_RESTRICT s3, const guint8 * ORC_RESTRICT s4, const guint8 * ORC_RESTRICT s5, const guint8 * ORC_RESTRICT s6, int n); +void bayer_orc_merge_bg_rgba (guint8 * ORC_RESTRICT d1, const guint8 * ORC_RESTRICT s1, const guint8 * ORC_RESTRICT s2, const guint8 * ORC_RESTRICT s3, const guint8 * ORC_RESTRICT s4, const guint8 * ORC_RESTRICT s5, const guint8 * ORC_RESTRICT s6, int n); +void bayer_orc_merge_gr_rgba (guint8 * ORC_RESTRICT d1, const guint8 * ORC_RESTRICT s1, const guint8 * ORC_RESTRICT s2, const guint8 * ORC_RESTRICT s3, const guint8 * ORC_RESTRICT s4, const guint8 * ORC_RESTRICT s5, const guint8 * ORC_RESTRICT s6, int n); +void bayer_orc_merge_bg_argb (guint8 * ORC_RESTRICT d1, const guint8 * ORC_RESTRICT s1, const guint8 * ORC_RESTRICT s2, const guint8 * ORC_RESTRICT s3, const guint8 * ORC_RESTRICT s4, const guint8 * ORC_RESTRICT s5, const guint8 * ORC_RESTRICT s6, int n); +void bayer_orc_merge_gr_argb (guint8 * ORC_RESTRICT d1, const guint8 * ORC_RESTRICT s1, const guint8 * ORC_RESTRICT s2, const guint8 * ORC_RESTRICT s3, const guint8 * ORC_RESTRICT s4, const guint8 * ORC_RESTRICT s5, const guint8 * ORC_RESTRICT s6, int n); #ifdef __cplusplus } diff --git a/gst/bayer/gstbayerorc.orc b/gst/bayer/gstbayerorc.orc index e57436b7..30e8426e 100644 --- a/gst/bayer/gstbayerorc.orc +++ b/gst/bayer/gstbayerorc.orc @@ -1,6 +1,6 @@ -.function gst_bayer_horiz_upsample_unaligned +.function bayer_orc_horiz_upsample_unaligned .dest 2 d0 guint8 .dest 2 d1 guint8 .source 2 s guint8 @@ -19,7 +19,7 @@ avgub b, b, d mergebw d1, b, d -.function gst_bayer_horiz_upsample +.function bayer_orc_horiz_upsample .dest 2 d0 guint8 .dest 2 d1 guint8 .source 2 s guint8 @@ -42,7 +42,7 @@ avgub b, b, d mergebw d1, b, d -.function gst_bayer_merge_bg_bgra +.function bayer_orc_merge_bg_bgra .dest 8 d guint8 .source 2 g0 guint8 .source 2 r0 guint8 @@ -68,7 +68,7 @@ x2 mergebw ra, r, 255 x2 mergewl d, bg, ra -.function gst_bayer_merge_gr_bgra +.function bayer_orc_merge_gr_bgra .dest 8 d guint8 .source 2 b0 guint8 .source 2 g0 guint8 @@ -94,7 +94,7 @@ x2 mergebw ra, r1, 255 x2 mergewl d, bg, ra -.function gst_bayer_merge_bg_abgr +.function bayer_orc_merge_bg_abgr .dest 8 d guint8 .source 2 g0 guint8 .source 2 r0 guint8 @@ -120,7 +120,7 @@ x2 mergebw gr, g, r x2 mergewl d, ab, gr -.function gst_bayer_merge_gr_abgr +.function bayer_orc_merge_gr_abgr .dest 8 d guint8 .source 2 b0 guint8 .source 2 g0 guint8 @@ -146,7 +146,7 @@ x2 mergebw gr, g, r1 x2 mergewl d, ab, gr -.function gst_bayer_merge_bg_rgba +.function bayer_orc_merge_bg_rgba .dest 8 d guint8 .source 2 g0 guint8 .source 2 r0 guint8 @@ -172,7 +172,7 @@ x2 mergebw ba, b1, 255 x2 mergewl d, rg, ba -.function gst_bayer_merge_gr_rgba +.function bayer_orc_merge_gr_rgba .dest 8 d guint8 .source 2 b0 guint8 .source 2 g0 guint8 @@ -198,7 +198,7 @@ x2 mergebw ba, b, 255 x2 mergewl d, rg, ba -.function gst_bayer_merge_bg_argb +.function bayer_orc_merge_bg_argb .dest 8 d guint8 .source 2 g0 guint8 .source 2 r0 guint8 @@ -224,7 +224,7 @@ x2 mergebw gb, g, b1 x2 mergewl d, ar, gb -.function gst_bayer_merge_gr_argb +.function bayer_orc_merge_gr_argb .dest 8 d guint8 .source 2 b0 guint8 .source 2 g0 guint8 diff --git a/gst/camerabin2/Makefile.in b/gst/camerabin2/Makefile.in index b422fb78..11713827 100644 --- a/gst/camerabin2/Makefile.in +++ b/gst/camerabin2/Makefile.in @@ -1,4 +1,4 @@ -# Makefile.in generated by automake 1.11.5 from Makefile.am. +# Makefile.in generated by automake 1.11.6 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, @@ -244,11 +244,10 @@ DIRECT3D_LIBS = @DIRECT3D_LIBS@ DIRECTDRAW_LIBS = @DIRECTDRAW_LIBS@ DIRECTFB_CFLAGS = @DIRECTFB_CFLAGS@ DIRECTFB_LIBS = @DIRECTFB_LIBS@ +DIRECTSHOW_LIBS = @DIRECTSHOW_LIBS@ DIRECTSOUND_LIBS = @DIRECTSOUND_LIBS@ DIRECTX_CFLAGS = @DIRECTX_CFLAGS@ DIRECTX_LDFLAGS = @DIRECTX_LDFLAGS@ -DIVXDEC_LIBS = @DIVXDEC_LIBS@ -DIVXENC_LIBS = @DIVXENC_LIBS@ DLLTOOL = @DLLTOOL@ DSYMUTIL = @DSYMUTIL@ DTS_LIBS = @DTS_LIBS@ @@ -283,7 +282,9 @@ GIO_LIBS = @GIO_LIBS@ GLIB_CFLAGS = @GLIB_CFLAGS@ GLIB_COMPILE_SCHEMAS = @GLIB_COMPILE_SCHEMAS@ GLIB_EXTRA_CFLAGS = @GLIB_EXTRA_CFLAGS@ +GLIB_GENMARSHAL = @GLIB_GENMARSHAL@ GLIB_LIBS = @GLIB_LIBS@ +GLIB_MKENUMS = @GLIB_MKENUMS@ GLIB_PREFIX = @GLIB_PREFIX@ GLIB_REQ = @GLIB_REQ@ GME_LIBS = @GME_LIBS@ @@ -359,13 +360,14 @@ HAVE_CXX = @HAVE_CXX@ HAVE_DIRECT3D = @HAVE_DIRECT3D@ HAVE_DIRECT3D9 = @HAVE_DIRECT3D9@ HAVE_DIRECTDRAW = @HAVE_DIRECTDRAW@ +HAVE_DIRECTSHOW = @HAVE_DIRECTSHOW@ HAVE_DIRECTSOUND = @HAVE_DIRECTSOUND@ HAVE_DTS = @HAVE_DTS@ HAVE_FAAC = @HAVE_FAAC@ HAVE_FAAD = @HAVE_FAAD@ HAVE_FLITE = @HAVE_FLITE@ HAVE_GSM = @HAVE_GSM@ -HAVE_JP2K = @HAVE_JP2K@ +HAVE_JASPER = @HAVE_JASPER@ HAVE_NAS = @HAVE_NAS@ HAVE_VPX = @HAVE_VPX@ HAVE_WILDMIDI = @HAVE_WILDMIDI@ @@ -379,7 +381,7 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ INTLLIBS = @INTLLIBS@ INTL_MACOSX_LIBS = @INTL_MACOSX_LIBS@ -JP2K_LIBS = @JP2K_LIBS@ +JASPER_LIBS = @JASPER_LIBS@ KATE_CFLAGS = @KATE_CFLAGS@ KATE_LIBS = @KATE_LIBS@ LD = @LD@ @@ -415,6 +417,8 @@ MODPLUG_CFLAGS = @MODPLUG_CFLAGS@ MODPLUG_LIBS = @MODPLUG_LIBS@ MPEG2ENC_CFLAGS = @MPEG2ENC_CFLAGS@ MPEG2ENC_LIBS = @MPEG2ENC_LIBS@ +MPG123_CFLAGS = @MPG123_CFLAGS@ +MPG123_LIBS = @MPG123_LIBS@ MPLEX_CFLAGS = @MPLEX_CFLAGS@ MPLEX_LDFLAGS = @MPLEX_LDFLAGS@ MPLEX_LIBS = @MPLEX_LIBS@ diff --git a/gst/camerabin2/gstcamerabin2.c b/gst/camerabin2/gstcamerabin2.c index 204c77bd..27c00c04 100644 --- a/gst/camerabin2/gstcamerabin2.c +++ b/gst/camerabin2/gstcamerabin2.c @@ -456,7 +456,7 @@ gst_camera_bin_start_capture (GstCameraBin2 * camerabin) active_pad = gst_element_get_static_pad (camerabin->src, GST_BASE_CAMERA_SRC_VIDEO_PAD_NAME); gst_pad_push_event (active_pad, - gst_event_new_tag ("GstSrc", gst_tag_list_copy (taglist))); + gst_event_new_tag (gst_tag_list_copy (taglist))); gst_object_unref (active_pad); } @@ -1364,7 +1364,7 @@ gst_camera_bin_image_src_buffer_probe (GstPad * pad, GstPadProbeInfo * info, GST_PTR_FORMAT, tags); if (tags) { peer = gst_pad_get_peer (pad); - gst_pad_send_event (peer, gst_event_new_tag ("GstSrc", tags)); + gst_pad_send_event (peer, gst_event_new_tag (tags)); gst_object_unref (peer); } } else { @@ -1638,8 +1638,7 @@ gst_camera_bin_create_elements (GstCameraBin2 * camera) srcpad = gst_element_get_static_pad (camera->image_encodebin, "src"); gst_pad_add_probe (srcpad, GST_PAD_PROBE_TYPE_EVENT_DOWNSTREAM, - gst_camera_bin_image_sink_event_probe, gst_object_ref (camera), - gst_object_unref); + gst_camera_bin_image_sink_event_probe, camera, NULL); gst_object_unref (srcpad); } @@ -1768,8 +1767,7 @@ gst_camera_bin_create_elements (GstCameraBin2 * camera) } gst_pad_add_probe (imgsrc, GST_PAD_PROBE_TYPE_BUFFER, - gst_camera_bin_image_src_buffer_probe, gst_object_ref (camera), - gst_object_unref); + gst_camera_bin_image_src_buffer_probe, camera, NULL); gst_object_unref (imgsrc); } @@ -1834,8 +1832,7 @@ gst_camera_bin_create_elements (GstCameraBin2 * camera) /* drop EOS for audiosrc elements that push them on state_changes * (basesrc does this) */ gst_pad_add_probe (srcpad, GST_PAD_PROBE_TYPE_DATA_DOWNSTREAM, - gst_camera_bin_audio_src_data_probe, gst_object_ref (camera), - gst_object_unref); + gst_camera_bin_audio_src_data_probe, camera, NULL); gst_object_unref (srcpad); } @@ -1871,10 +1868,10 @@ fail: } static void -_gst_tag_list_free_maybe (GstTagList * taglist) +_gst_tag_list_unref_maybe (GstTagList * taglist) { if (taglist) - gst_tag_list_free (taglist); + gst_tag_list_unref (taglist); } static GstStateChangeReturn @@ -1926,7 +1923,7 @@ gst_camera_bin_change_state (GstElement * element, GstStateChange trans) camera->image_location_list = NULL; g_slist_foreach (camera->image_tags_list, - (GFunc) _gst_tag_list_free_maybe, NULL); + (GFunc) _gst_tag_list_unref_maybe, NULL); g_slist_free (camera->image_tags_list); camera->image_tags_list = NULL; g_mutex_unlock (&camera->image_capture_mutex); diff --git a/gst/camerabin2/gstwrappercamerabinsrc.c b/gst/camerabin2/gstwrappercamerabinsrc.c index 3a4bab6f..c263296b 100644 --- a/gst/camerabin2/gstwrappercamerabinsrc.c +++ b/gst/camerabin2/gstwrappercamerabinsrc.c @@ -205,6 +205,8 @@ gst_wrapper_camera_bin_src_imgsrc_probe (GstPad * pad, GstPadProbeInfo * info, g_mutex_lock (&camerasrc->capturing_mutex); if (self->image_capture_count > 0) { + GstSample *sample; + GstCaps *caps; ret = GST_PAD_PROBE_OK; self->image_capture_count--; @@ -212,7 +214,11 @@ gst_wrapper_camera_bin_src_imgsrc_probe (GstPad * pad, GstPadProbeInfo * info, /* TODO This can likely be optimized if the viewfinder caps is the same as * the preview caps, avoiding another scaling of the same buffer. */ GST_DEBUG_OBJECT (self, "Posting preview for image"); - gst_base_camera_src_post_preview (camerasrc, buffer); + caps = gst_pad_get_current_caps (pad); + sample = gst_sample_new (buffer, caps, NULL, NULL); + gst_base_camera_src_post_preview (camerasrc, sample); + gst_caps_unref (caps); + gst_sample_unref (sample); if (self->image_capture_count == 0) { gst_base_camera_src_finish_capture (camerasrc); @@ -251,6 +257,8 @@ gst_wrapper_camera_bin_src_vidsrc_probe (GstPad * pad, GstPadProbeInfo * info, } else if (self->video_rec_status == GST_VIDEO_RECORDING_STATUS_STARTING) { GstClockTime ts; GstSegment segment; + GstCaps *caps; + GstSample *sample; GST_DEBUG_OBJECT (self, "Starting video recording"); self->video_rec_status = GST_VIDEO_RECORDING_STATUS_RUNNING; @@ -264,7 +272,11 @@ gst_wrapper_camera_bin_src_vidsrc_probe (GstPad * pad, GstPadProbeInfo * info, /* post preview */ GST_DEBUG_OBJECT (self, "Posting preview for video"); - gst_base_camera_src_post_preview (camerasrc, buffer); + caps = gst_pad_get_current_caps (pad); + sample = gst_sample_new (buffer, caps, NULL, NULL); + gst_base_camera_src_post_preview (camerasrc, sample); + gst_caps_unref (caps); + gst_sample_unref (sample); ret = GST_PAD_PROBE_OK; } else if (self->video_rec_status == GST_VIDEO_RECORDING_STATUS_FINISHING) { @@ -362,6 +374,52 @@ gst_wrapper_camera_bin_src_max_zoom_cb (GObject * self, GParamSpec * pspec, } +static gboolean +gst_wrapper_camera_bin_src_src_event (GstPad * pad, GstObject * parent, + GstEvent * event) +{ + gboolean ret = TRUE; + GstWrapperCameraBinSrc *self = GST_WRAPPER_CAMERA_BIN_SRC (parent); + GstPad *upstream_pad = NULL; + + GST_DEBUG_OBJECT (self, "Handling event %p %" GST_PTR_FORMAT, event, event); + + switch (GST_EVENT_TYPE (event)) { + case GST_EVENT_RECONFIGURE: + if (pad == self->imgsrc) { + GST_DEBUG_OBJECT (self, "Image mode reconfigure event received"); + self->image_renegotiate = TRUE; + } else if (pad == self->vidsrc) { + GST_DEBUG_OBJECT (self, "Video mode reconfigure event received"); + self->video_renegotiate = TRUE; + } + if (pad == self->imgsrc || pad == self->vidsrc) { + gst_event_unref (event); + return ret; + } + break; + default: + break; + } + + if (pad == self->imgsrc) { + upstream_pad = self->outsel_imgpad; + } else if (pad == self->vidsrc) { + upstream_pad = self->outsel_vidpad; + } + + if (upstream_pad) { + ret = gst_pad_send_event (upstream_pad, event); + } else { + GST_WARNING_OBJECT (self, "Event caught that doesn't have an upstream pad -" + "this shouldn't be possible!"); + gst_event_unref (event); + ret = FALSE; + } + + return ret; +} + /** * gst_wrapper_camera_bin_src_construct_pipeline: * @bcamsrc: camerasrc object @@ -709,6 +767,14 @@ start_image_capture (GstWrapperCameraBinSrc * self) gst_caps_replace (&self->image_capture_caps, caps); gst_caps_unref (caps); + /* FIXME - do we need to update basecamerasrc width/height somehow here? + * if not, i think we need to do something about _when_ they get updated + * to be sure that set_element_zoom doesn't use the wrong values */ + + /* We caught this event in the src pad event handler and now we want to + * actually push it upstream */ + gst_pad_send_event (self->outsel_imgpad, gst_event_new_reconfigure ()); + self->image_renegotiate = FALSE; } @@ -716,7 +782,7 @@ start_image_capture (GstWrapperCameraBinSrc * self) GST_DEBUG_OBJECT (self, "prepare image capture caps %" GST_PTR_FORMAT, self->image_capture_caps); ret = gst_photography_prepare_for_capture (photography, - (GstPhotoCapturePrepared) img_capture_prepared, + (GstPhotographyCapturePrepared) img_capture_prepared, self->image_capture_caps, self); } else { g_mutex_unlock (&bcamsrc->capturing_mutex); @@ -989,6 +1055,10 @@ gst_wrapper_camera_bin_src_start_capture (GstBaseCameraSrc * camerasrc) g_mutex_lock (&camerasrc->capturing_mutex); gst_caps_unref (caps); gst_caps_unref (anycaps); + + /* We caught this event in the src pad event handler and now we want to + * actually push it upstream */ + gst_pad_send_event (src->outsel_vidpad, gst_event_new_reconfigure ()); } if (src->video_rec_status == GST_VIDEO_RECORDING_STATUS_DONE) { src->video_rec_status = GST_VIDEO_RECORDING_STATUS_STARTING; @@ -1124,7 +1194,10 @@ gst_wrapper_camera_bin_src_init (GstWrapperCameraBinSrc * self) GST_PAD_SRC); gst_element_add_pad (GST_ELEMENT (self), self->vidsrc); - self->srcpad_event_func = GST_PAD_EVENTFUNC (self->vfsrc); + gst_pad_set_event_function (self->imgsrc, + GST_DEBUG_FUNCPTR (gst_wrapper_camera_bin_src_src_event)); + gst_pad_set_event_function (self->vidsrc, + GST_DEBUG_FUNCPTR (gst_wrapper_camera_bin_src_src_event)); /* TODO where are variables reset? */ self->image_capture_count = 0; diff --git a/gst/camerabin2/gstwrappercamerabinsrc.h b/gst/camerabin2/gstwrappercamerabinsrc.h index 71f34515..973348b6 100644 --- a/gst/camerabin2/gstwrappercamerabinsrc.h +++ b/gst/camerabin2/gstwrappercamerabinsrc.h @@ -88,8 +88,6 @@ struct _GstWrapperCameraBinSrc GstPad *outsel_imgpad; GstPad *outsel_vidpad; - GstPadEventFunction srcpad_event_func; - /* For changing caps without losing timestamps */ gboolean drop_newseg; diff --git a/gst/cdxaparse/Makefile.in b/gst/cdxaparse/Makefile.in index f9e377cd..4e3d614e 100644 --- a/gst/cdxaparse/Makefile.in +++ b/gst/cdxaparse/Makefile.in @@ -1,4 +1,4 @@ -# Makefile.in generated by automake 1.11.5 from Makefile.am. +# Makefile.in generated by automake 1.11.6 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, @@ -238,11 +238,10 @@ DIRECT3D_LIBS = @DIRECT3D_LIBS@ DIRECTDRAW_LIBS = @DIRECTDRAW_LIBS@ DIRECTFB_CFLAGS = @DIRECTFB_CFLAGS@ DIRECTFB_LIBS = @DIRECTFB_LIBS@ +DIRECTSHOW_LIBS = @DIRECTSHOW_LIBS@ DIRECTSOUND_LIBS = @DIRECTSOUND_LIBS@ DIRECTX_CFLAGS = @DIRECTX_CFLAGS@ DIRECTX_LDFLAGS = @DIRECTX_LDFLAGS@ -DIVXDEC_LIBS = @DIVXDEC_LIBS@ -DIVXENC_LIBS = @DIVXENC_LIBS@ DLLTOOL = @DLLTOOL@ DSYMUTIL = @DSYMUTIL@ DTS_LIBS = @DTS_LIBS@ @@ -277,7 +276,9 @@ GIO_LIBS = @GIO_LIBS@ GLIB_CFLAGS = @GLIB_CFLAGS@ GLIB_COMPILE_SCHEMAS = @GLIB_COMPILE_SCHEMAS@ GLIB_EXTRA_CFLAGS = @GLIB_EXTRA_CFLAGS@ +GLIB_GENMARSHAL = @GLIB_GENMARSHAL@ GLIB_LIBS = @GLIB_LIBS@ +GLIB_MKENUMS = @GLIB_MKENUMS@ GLIB_PREFIX = @GLIB_PREFIX@ GLIB_REQ = @GLIB_REQ@ GME_LIBS = @GME_LIBS@ @@ -353,13 +354,14 @@ HAVE_CXX = @HAVE_CXX@ HAVE_DIRECT3D = @HAVE_DIRECT3D@ HAVE_DIRECT3D9 = @HAVE_DIRECT3D9@ HAVE_DIRECTDRAW = @HAVE_DIRECTDRAW@ +HAVE_DIRECTSHOW = @HAVE_DIRECTSHOW@ HAVE_DIRECTSOUND = @HAVE_DIRECTSOUND@ HAVE_DTS = @HAVE_DTS@ HAVE_FAAC = @HAVE_FAAC@ HAVE_FAAD = @HAVE_FAAD@ HAVE_FLITE = @HAVE_FLITE@ HAVE_GSM = @HAVE_GSM@ -HAVE_JP2K = @HAVE_JP2K@ +HAVE_JASPER = @HAVE_JASPER@ HAVE_NAS = @HAVE_NAS@ HAVE_VPX = @HAVE_VPX@ HAVE_WILDMIDI = @HAVE_WILDMIDI@ @@ -373,7 +375,7 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ INTLLIBS = @INTLLIBS@ INTL_MACOSX_LIBS = @INTL_MACOSX_LIBS@ -JP2K_LIBS = @JP2K_LIBS@ +JASPER_LIBS = @JASPER_LIBS@ KATE_CFLAGS = @KATE_CFLAGS@ KATE_LIBS = @KATE_LIBS@ LD = @LD@ @@ -409,6 +411,8 @@ MODPLUG_CFLAGS = @MODPLUG_CFLAGS@ MODPLUG_LIBS = @MODPLUG_LIBS@ MPEG2ENC_CFLAGS = @MPEG2ENC_CFLAGS@ MPEG2ENC_LIBS = @MPEG2ENC_LIBS@ +MPG123_CFLAGS = @MPG123_CFLAGS@ +MPG123_LIBS = @MPG123_LIBS@ MPLEX_CFLAGS = @MPLEX_CFLAGS@ MPLEX_LDFLAGS = @MPLEX_LDFLAGS@ MPLEX_LIBS = @MPLEX_LIBS@ diff --git a/gst/cdxaparse/gstcdxaparse.c b/gst/cdxaparse/gstcdxaparse.c index 88fa4550..2c82056d 100644 --- a/gst/cdxaparse/gstcdxaparse.c +++ b/gst/cdxaparse/gstcdxaparse.c @@ -192,7 +192,7 @@ gst_cdxa_parse_sink_activate_pull (GstPad * sinkpad, gboolean active) if (active) { /* if we have a scheduler we can start the task */ gst_pad_start_task (sinkpad, (GstTaskFunction) gst_cdxa_parse_loop, - sinkpad); + sinkpad, NULL); } else { gst_pad_stop_task (sinkpad); } @@ -466,7 +466,7 @@ gst_cdxa_parse_do_seek (GstCDXAParse * cdxa, GstEvent * event) /* and restart */ gst_pad_start_task (cdxa->sinkpad, - (GstTaskFunction) gst_cdxa_parse_loop, cdxa->sinkpad); + (GstTaskFunction) gst_cdxa_parse_loop, cdxa->sinkpad, NULL); GST_PAD_STREAM_UNLOCK (cdxa->sinkpad); return TRUE; diff --git a/gst/coloreffects/Makefile.in b/gst/coloreffects/Makefile.in index 6f6916ca..3558124c 100644 --- a/gst/coloreffects/Makefile.in +++ b/gst/coloreffects/Makefile.in @@ -1,4 +1,4 @@ -# Makefile.in generated by automake 1.11.5 from Makefile.am. +# Makefile.in generated by automake 1.11.6 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, @@ -239,11 +239,10 @@ DIRECT3D_LIBS = @DIRECT3D_LIBS@ DIRECTDRAW_LIBS = @DIRECTDRAW_LIBS@ DIRECTFB_CFLAGS = @DIRECTFB_CFLAGS@ DIRECTFB_LIBS = @DIRECTFB_LIBS@ +DIRECTSHOW_LIBS = @DIRECTSHOW_LIBS@ DIRECTSOUND_LIBS = @DIRECTSOUND_LIBS@ DIRECTX_CFLAGS = @DIRECTX_CFLAGS@ DIRECTX_LDFLAGS = @DIRECTX_LDFLAGS@ -DIVXDEC_LIBS = @DIVXDEC_LIBS@ -DIVXENC_LIBS = @DIVXENC_LIBS@ DLLTOOL = @DLLTOOL@ DSYMUTIL = @DSYMUTIL@ DTS_LIBS = @DTS_LIBS@ @@ -278,7 +277,9 @@ GIO_LIBS = @GIO_LIBS@ GLIB_CFLAGS = @GLIB_CFLAGS@ GLIB_COMPILE_SCHEMAS = @GLIB_COMPILE_SCHEMAS@ GLIB_EXTRA_CFLAGS = @GLIB_EXTRA_CFLAGS@ +GLIB_GENMARSHAL = @GLIB_GENMARSHAL@ GLIB_LIBS = @GLIB_LIBS@ +GLIB_MKENUMS = @GLIB_MKENUMS@ GLIB_PREFIX = @GLIB_PREFIX@ GLIB_REQ = @GLIB_REQ@ GME_LIBS = @GME_LIBS@ @@ -354,13 +355,14 @@ HAVE_CXX = @HAVE_CXX@ HAVE_DIRECT3D = @HAVE_DIRECT3D@ HAVE_DIRECT3D9 = @HAVE_DIRECT3D9@ HAVE_DIRECTDRAW = @HAVE_DIRECTDRAW@ +HAVE_DIRECTSHOW = @HAVE_DIRECTSHOW@ HAVE_DIRECTSOUND = @HAVE_DIRECTSOUND@ HAVE_DTS = @HAVE_DTS@ HAVE_FAAC = @HAVE_FAAC@ HAVE_FAAD = @HAVE_FAAD@ HAVE_FLITE = @HAVE_FLITE@ HAVE_GSM = @HAVE_GSM@ -HAVE_JP2K = @HAVE_JP2K@ +HAVE_JASPER = @HAVE_JASPER@ HAVE_NAS = @HAVE_NAS@ HAVE_VPX = @HAVE_VPX@ HAVE_WILDMIDI = @HAVE_WILDMIDI@ @@ -374,7 +376,7 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ INTLLIBS = @INTLLIBS@ INTL_MACOSX_LIBS = @INTL_MACOSX_LIBS@ -JP2K_LIBS = @JP2K_LIBS@ +JASPER_LIBS = @JASPER_LIBS@ KATE_CFLAGS = @KATE_CFLAGS@ KATE_LIBS = @KATE_LIBS@ LD = @LD@ @@ -410,6 +412,8 @@ MODPLUG_CFLAGS = @MODPLUG_CFLAGS@ MODPLUG_LIBS = @MODPLUG_LIBS@ MPEG2ENC_CFLAGS = @MPEG2ENC_CFLAGS@ MPEG2ENC_LIBS = @MPEG2ENC_LIBS@ +MPG123_CFLAGS = @MPG123_CFLAGS@ +MPG123_LIBS = @MPG123_LIBS@ MPLEX_CFLAGS = @MPLEX_CFLAGS@ MPLEX_LDFLAGS = @MPLEX_LDFLAGS@ MPLEX_LIBS = @MPLEX_LIBS@ diff --git a/gst/dataurisrc/Makefile.in b/gst/dataurisrc/Makefile.in index a84e4b19..5d1f5447 100644 --- a/gst/dataurisrc/Makefile.in +++ b/gst/dataurisrc/Makefile.in @@ -1,4 +1,4 @@ -# Makefile.in generated by automake 1.11.5 from Makefile.am. +# Makefile.in generated by automake 1.11.6 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, @@ -234,11 +234,10 @@ DIRECT3D_LIBS = @DIRECT3D_LIBS@ DIRECTDRAW_LIBS = @DIRECTDRAW_LIBS@ DIRECTFB_CFLAGS = @DIRECTFB_CFLAGS@ DIRECTFB_LIBS = @DIRECTFB_LIBS@ +DIRECTSHOW_LIBS = @DIRECTSHOW_LIBS@ DIRECTSOUND_LIBS = @DIRECTSOUND_LIBS@ DIRECTX_CFLAGS = @DIRECTX_CFLAGS@ DIRECTX_LDFLAGS = @DIRECTX_LDFLAGS@ -DIVXDEC_LIBS = @DIVXDEC_LIBS@ -DIVXENC_LIBS = @DIVXENC_LIBS@ DLLTOOL = @DLLTOOL@ DSYMUTIL = @DSYMUTIL@ DTS_LIBS = @DTS_LIBS@ @@ -273,7 +272,9 @@ GIO_LIBS = @GIO_LIBS@ GLIB_CFLAGS = @GLIB_CFLAGS@ GLIB_COMPILE_SCHEMAS = @GLIB_COMPILE_SCHEMAS@ GLIB_EXTRA_CFLAGS = @GLIB_EXTRA_CFLAGS@ +GLIB_GENMARSHAL = @GLIB_GENMARSHAL@ GLIB_LIBS = @GLIB_LIBS@ +GLIB_MKENUMS = @GLIB_MKENUMS@ GLIB_PREFIX = @GLIB_PREFIX@ GLIB_REQ = @GLIB_REQ@ GME_LIBS = @GME_LIBS@ @@ -349,13 +350,14 @@ HAVE_CXX = @HAVE_CXX@ HAVE_DIRECT3D = @HAVE_DIRECT3D@ HAVE_DIRECT3D9 = @HAVE_DIRECT3D9@ HAVE_DIRECTDRAW = @HAVE_DIRECTDRAW@ +HAVE_DIRECTSHOW = @HAVE_DIRECTSHOW@ HAVE_DIRECTSOUND = @HAVE_DIRECTSOUND@ HAVE_DTS = @HAVE_DTS@ HAVE_FAAC = @HAVE_FAAC@ HAVE_FAAD = @HAVE_FAAD@ HAVE_FLITE = @HAVE_FLITE@ HAVE_GSM = @HAVE_GSM@ -HAVE_JP2K = @HAVE_JP2K@ +HAVE_JASPER = @HAVE_JASPER@ HAVE_NAS = @HAVE_NAS@ HAVE_VPX = @HAVE_VPX@ HAVE_WILDMIDI = @HAVE_WILDMIDI@ @@ -369,7 +371,7 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ INTLLIBS = @INTLLIBS@ INTL_MACOSX_LIBS = @INTL_MACOSX_LIBS@ -JP2K_LIBS = @JP2K_LIBS@ +JASPER_LIBS = @JASPER_LIBS@ KATE_CFLAGS = @KATE_CFLAGS@ KATE_LIBS = @KATE_LIBS@ LD = @LD@ @@ -405,6 +407,8 @@ MODPLUG_CFLAGS = @MODPLUG_CFLAGS@ MODPLUG_LIBS = @MODPLUG_LIBS@ MPEG2ENC_CFLAGS = @MPEG2ENC_CFLAGS@ MPEG2ENC_LIBS = @MPEG2ENC_LIBS@ +MPG123_CFLAGS = @MPG123_CFLAGS@ +MPG123_LIBS = @MPG123_LIBS@ MPLEX_CFLAGS = @MPLEX_CFLAGS@ MPLEX_LDFLAGS = @MPLEX_LDFLAGS@ MPLEX_LIBS = @MPLEX_LIBS@ diff --git a/gst/dataurisrc/gstdataurisrc.c b/gst/dataurisrc/gstdataurisrc.c index 4bac7705..7b4101f5 100644 --- a/gst/dataurisrc/gstdataurisrc.c +++ b/gst/dataurisrc/gstdataurisrc.c @@ -227,10 +227,24 @@ gst_data_uri_src_create (GstBaseSrc * basesrc, guint64 offset, guint size, * larger than the max. available size if a segment at the end is requested */ if (offset + size > gst_buffer_get_size (src->buffer)) { ret = GST_FLOW_EOS; - } else { + } else if (*buf != NULL) { + GstMapInfo src_info; + GstMapInfo dest_info; + gsize fill_size; + + gst_buffer_map (src->buffer, &src_info, GST_MAP_READ); + gst_buffer_map (*buf, &dest_info, GST_MAP_WRITE); + + fill_size = gst_buffer_fill (*buf, 0, src_info.data + offset, size); + + gst_buffer_unmap (*buf, &dest_info); + gst_buffer_unmap (src->buffer, &src_info); + gst_buffer_set_size (*buf, fill_size); ret = GST_FLOW_OK; + } else { *buf = gst_buffer_copy_region (src->buffer, GST_BUFFER_COPY_ALL, offset, size); + ret = GST_FLOW_OK; } GST_OBJECT_UNLOCK (src); diff --git a/gst/dccp/Makefile.in b/gst/dccp/Makefile.in index 6888735e..f838cfff 100644 --- a/gst/dccp/Makefile.in +++ b/gst/dccp/Makefile.in @@ -1,4 +1,4 @@ -# Makefile.in generated by automake 1.11.5 from Makefile.am. +# Makefile.in generated by automake 1.11.6 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, @@ -244,11 +244,10 @@ DIRECT3D_LIBS = @DIRECT3D_LIBS@ DIRECTDRAW_LIBS = @DIRECTDRAW_LIBS@ DIRECTFB_CFLAGS = @DIRECTFB_CFLAGS@ DIRECTFB_LIBS = @DIRECTFB_LIBS@ +DIRECTSHOW_LIBS = @DIRECTSHOW_LIBS@ DIRECTSOUND_LIBS = @DIRECTSOUND_LIBS@ DIRECTX_CFLAGS = @DIRECTX_CFLAGS@ DIRECTX_LDFLAGS = @DIRECTX_LDFLAGS@ -DIVXDEC_LIBS = @DIVXDEC_LIBS@ -DIVXENC_LIBS = @DIVXENC_LIBS@ DLLTOOL = @DLLTOOL@ DSYMUTIL = @DSYMUTIL@ DTS_LIBS = @DTS_LIBS@ @@ -283,7 +282,9 @@ GIO_LIBS = @GIO_LIBS@ GLIB_CFLAGS = @GLIB_CFLAGS@ GLIB_COMPILE_SCHEMAS = @GLIB_COMPILE_SCHEMAS@ GLIB_EXTRA_CFLAGS = @GLIB_EXTRA_CFLAGS@ +GLIB_GENMARSHAL = @GLIB_GENMARSHAL@ GLIB_LIBS = @GLIB_LIBS@ +GLIB_MKENUMS = @GLIB_MKENUMS@ GLIB_PREFIX = @GLIB_PREFIX@ GLIB_REQ = @GLIB_REQ@ GME_LIBS = @GME_LIBS@ @@ -359,13 +360,14 @@ HAVE_CXX = @HAVE_CXX@ HAVE_DIRECT3D = @HAVE_DIRECT3D@ HAVE_DIRECT3D9 = @HAVE_DIRECT3D9@ HAVE_DIRECTDRAW = @HAVE_DIRECTDRAW@ +HAVE_DIRECTSHOW = @HAVE_DIRECTSHOW@ HAVE_DIRECTSOUND = @HAVE_DIRECTSOUND@ HAVE_DTS = @HAVE_DTS@ HAVE_FAAC = @HAVE_FAAC@ HAVE_FAAD = @HAVE_FAAD@ HAVE_FLITE = @HAVE_FLITE@ HAVE_GSM = @HAVE_GSM@ -HAVE_JP2K = @HAVE_JP2K@ +HAVE_JASPER = @HAVE_JASPER@ HAVE_NAS = @HAVE_NAS@ HAVE_VPX = @HAVE_VPX@ HAVE_WILDMIDI = @HAVE_WILDMIDI@ @@ -379,7 +381,7 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ INTLLIBS = @INTLLIBS@ INTL_MACOSX_LIBS = @INTL_MACOSX_LIBS@ -JP2K_LIBS = @JP2K_LIBS@ +JASPER_LIBS = @JASPER_LIBS@ KATE_CFLAGS = @KATE_CFLAGS@ KATE_LIBS = @KATE_LIBS@ LD = @LD@ @@ -415,6 +417,8 @@ MODPLUG_CFLAGS = @MODPLUG_CFLAGS@ MODPLUG_LIBS = @MODPLUG_LIBS@ MPEG2ENC_CFLAGS = @MPEG2ENC_CFLAGS@ MPEG2ENC_LIBS = @MPEG2ENC_LIBS@ +MPG123_CFLAGS = @MPG123_CFLAGS@ +MPG123_LIBS = @MPG123_LIBS@ MPLEX_CFLAGS = @MPLEX_CFLAGS@ MPLEX_LDFLAGS = @MPLEX_LDFLAGS@ MPLEX_LIBS = @MPLEX_LIBS@ diff --git a/gst/debugutils/Makefile.in b/gst/debugutils/Makefile.in index ca3b0798..a8f1a762 100644 --- a/gst/debugutils/Makefile.in +++ b/gst/debugutils/Makefile.in @@ -1,4 +1,4 @@ -# Makefile.in generated by automake 1.11.5 from Makefile.am. +# Makefile.in generated by automake 1.11.6 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, @@ -257,11 +257,10 @@ DIRECT3D_LIBS = @DIRECT3D_LIBS@ DIRECTDRAW_LIBS = @DIRECTDRAW_LIBS@ DIRECTFB_CFLAGS = @DIRECTFB_CFLAGS@ DIRECTFB_LIBS = @DIRECTFB_LIBS@ +DIRECTSHOW_LIBS = @DIRECTSHOW_LIBS@ DIRECTSOUND_LIBS = @DIRECTSOUND_LIBS@ DIRECTX_CFLAGS = @DIRECTX_CFLAGS@ DIRECTX_LDFLAGS = @DIRECTX_LDFLAGS@ -DIVXDEC_LIBS = @DIVXDEC_LIBS@ -DIVXENC_LIBS = @DIVXENC_LIBS@ DLLTOOL = @DLLTOOL@ DSYMUTIL = @DSYMUTIL@ DTS_LIBS = @DTS_LIBS@ @@ -296,7 +295,9 @@ GIO_LIBS = @GIO_LIBS@ GLIB_CFLAGS = @GLIB_CFLAGS@ GLIB_COMPILE_SCHEMAS = @GLIB_COMPILE_SCHEMAS@ GLIB_EXTRA_CFLAGS = @GLIB_EXTRA_CFLAGS@ +GLIB_GENMARSHAL = @GLIB_GENMARSHAL@ GLIB_LIBS = @GLIB_LIBS@ +GLIB_MKENUMS = @GLIB_MKENUMS@ GLIB_PREFIX = @GLIB_PREFIX@ GLIB_REQ = @GLIB_REQ@ GME_LIBS = @GME_LIBS@ @@ -372,13 +373,14 @@ HAVE_CXX = @HAVE_CXX@ HAVE_DIRECT3D = @HAVE_DIRECT3D@ HAVE_DIRECT3D9 = @HAVE_DIRECT3D9@ HAVE_DIRECTDRAW = @HAVE_DIRECTDRAW@ +HAVE_DIRECTSHOW = @HAVE_DIRECTSHOW@ HAVE_DIRECTSOUND = @HAVE_DIRECTSOUND@ HAVE_DTS = @HAVE_DTS@ HAVE_FAAC = @HAVE_FAAC@ HAVE_FAAD = @HAVE_FAAD@ HAVE_FLITE = @HAVE_FLITE@ HAVE_GSM = @HAVE_GSM@ -HAVE_JP2K = @HAVE_JP2K@ +HAVE_JASPER = @HAVE_JASPER@ HAVE_NAS = @HAVE_NAS@ HAVE_VPX = @HAVE_VPX@ HAVE_WILDMIDI = @HAVE_WILDMIDI@ @@ -392,7 +394,7 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ INTLLIBS = @INTLLIBS@ INTL_MACOSX_LIBS = @INTL_MACOSX_LIBS@ -JP2K_LIBS = @JP2K_LIBS@ +JASPER_LIBS = @JASPER_LIBS@ KATE_CFLAGS = @KATE_CFLAGS@ KATE_LIBS = @KATE_LIBS@ LD = @LD@ @@ -428,6 +430,8 @@ MODPLUG_CFLAGS = @MODPLUG_CFLAGS@ MODPLUG_LIBS = @MODPLUG_LIBS@ MPEG2ENC_CFLAGS = @MPEG2ENC_CFLAGS@ MPEG2ENC_LIBS = @MPEG2ENC_LIBS@ +MPG123_CFLAGS = @MPG123_CFLAGS@ +MPG123_LIBS = @MPG123_LIBS@ MPLEX_CFLAGS = @MPLEX_CFLAGS@ MPLEX_LDFLAGS = @MPLEX_LDFLAGS@ MPLEX_LIBS = @MPLEX_LIBS@ @@ -1022,16 +1026,16 @@ uninstall-am: uninstall-pluginLTLIBRARIES # these are all the rules generating the relevant files $(glib_gen_basename)-marshal.h: $(glib_gen_basename)-marshal.list - $(AM_V_GEN)glib-genmarshal --header --prefix=$(glib_gen_prefix)_marshal $^ > $(glib_gen_basename)-marshal.h.tmp && \ + $(AM_V_GEN)$(GLIB_GENMARSHAL) --header --prefix=$(glib_gen_prefix)_marshal $^ > $(glib_gen_basename)-marshal.h.tmp && \ mv $(glib_gen_basename)-marshal.h.tmp $(glib_gen_basename)-marshal.h $(glib_gen_basename)-marshal.c: $(glib_gen_basename)-marshal.list $(AM_V_GEN)echo "#include \"$(glib_gen_basename)-marshal.h\"" >> $(glib_gen_basename)-marshal.c.tmp && \ - glib-genmarshal --body --prefix=$(glib_gen_prefix)_marshal $^ >> $(glib_gen_basename)-marshal.c.tmp && \ + $(GLIB_GENMARSHAL) --body --prefix=$(glib_gen_prefix)_marshal $^ >> $(glib_gen_basename)-marshal.c.tmp && \ mv $(glib_gen_basename)-marshal.c.tmp $(glib_gen_basename)-marshal.c $(glib_gen_basename)-enumtypes.h: $(glib_enum_headers) - $(AM_V_GEN)glib-mkenums \ + $(AM_V_GEN)$(GLIB_MKENUMS) \ --fhead "#ifndef __$(glib_enum_define)_ENUM_TYPES_H__\n#define __$(glib_enum_define)_ENUM_TYPES_H__\n\n#include <glib-object.h>\n\nG_BEGIN_DECLS\n" \ --fprod "\n/* enumerations from \"@filename@\" */\n" \ --vhead "GType @enum_name@_get_type (void);\n#define GST_TYPE_@ENUMSHORT@ (@enum_name@_get_type())\n" \ @@ -1040,7 +1044,7 @@ $(glib_gen_basename)-enumtypes.h: $(glib_enum_headers) $(glib_gen_basename)-enumtypes.c: $(glib_enum_headers) @if test "x$(glib_enum_headers)" = "x"; then echo "ERROR: glib_enum_headers is empty, please fix Makefile"; exit 1; fi - $(AM_V_GEN)glib-mkenums \ + $(AM_V_GEN)$(GLIB_MKENUMS) \ --fhead "#include \"$(glib_gen_basename)-enumtypes.h\"\n$(enum_headers)" \ --fprod "\n/* enumerations from \"@filename@\" */" \ --vhead "GType\n@enum_name@_get_type (void)\n{\n static volatile gsize g_define_type_id__volatile = 0;\n if (g_once_init_enter (&g_define_type_id__volatile)) {\n static const G@Type@Value values[] = {" \ diff --git a/gst/dtmf/Makefile.in b/gst/dtmf/Makefile.in index c0fb8b8d..4d680dfe 100644 --- a/gst/dtmf/Makefile.in +++ b/gst/dtmf/Makefile.in @@ -1,4 +1,4 @@ -# Makefile.in generated by automake 1.11.5 from Makefile.am. +# Makefile.in generated by automake 1.11.6 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, @@ -241,11 +241,10 @@ DIRECT3D_LIBS = @DIRECT3D_LIBS@ DIRECTDRAW_LIBS = @DIRECTDRAW_LIBS@ DIRECTFB_CFLAGS = @DIRECTFB_CFLAGS@ DIRECTFB_LIBS = @DIRECTFB_LIBS@ +DIRECTSHOW_LIBS = @DIRECTSHOW_LIBS@ DIRECTSOUND_LIBS = @DIRECTSOUND_LIBS@ DIRECTX_CFLAGS = @DIRECTX_CFLAGS@ DIRECTX_LDFLAGS = @DIRECTX_LDFLAGS@ -DIVXDEC_LIBS = @DIVXDEC_LIBS@ -DIVXENC_LIBS = @DIVXENC_LIBS@ DLLTOOL = @DLLTOOL@ DSYMUTIL = @DSYMUTIL@ DTS_LIBS = @DTS_LIBS@ @@ -280,7 +279,9 @@ GIO_LIBS = @GIO_LIBS@ GLIB_CFLAGS = @GLIB_CFLAGS@ GLIB_COMPILE_SCHEMAS = @GLIB_COMPILE_SCHEMAS@ GLIB_EXTRA_CFLAGS = @GLIB_EXTRA_CFLAGS@ +GLIB_GENMARSHAL = @GLIB_GENMARSHAL@ GLIB_LIBS = @GLIB_LIBS@ +GLIB_MKENUMS = @GLIB_MKENUMS@ GLIB_PREFIX = @GLIB_PREFIX@ GLIB_REQ = @GLIB_REQ@ GME_LIBS = @GME_LIBS@ @@ -356,13 +357,14 @@ HAVE_CXX = @HAVE_CXX@ HAVE_DIRECT3D = @HAVE_DIRECT3D@ HAVE_DIRECT3D9 = @HAVE_DIRECT3D9@ HAVE_DIRECTDRAW = @HAVE_DIRECTDRAW@ +HAVE_DIRECTSHOW = @HAVE_DIRECTSHOW@ HAVE_DIRECTSOUND = @HAVE_DIRECTSOUND@ HAVE_DTS = @HAVE_DTS@ HAVE_FAAC = @HAVE_FAAC@ HAVE_FAAD = @HAVE_FAAD@ HAVE_FLITE = @HAVE_FLITE@ HAVE_GSM = @HAVE_GSM@ -HAVE_JP2K = @HAVE_JP2K@ +HAVE_JASPER = @HAVE_JASPER@ HAVE_NAS = @HAVE_NAS@ HAVE_VPX = @HAVE_VPX@ HAVE_WILDMIDI = @HAVE_WILDMIDI@ @@ -376,7 +378,7 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ INTLLIBS = @INTLLIBS@ INTL_MACOSX_LIBS = @INTL_MACOSX_LIBS@ -JP2K_LIBS = @JP2K_LIBS@ +JASPER_LIBS = @JASPER_LIBS@ KATE_CFLAGS = @KATE_CFLAGS@ KATE_LIBS = @KATE_LIBS@ LD = @LD@ @@ -412,6 +414,8 @@ MODPLUG_CFLAGS = @MODPLUG_CFLAGS@ MODPLUG_LIBS = @MODPLUG_LIBS@ MPEG2ENC_CFLAGS = @MPEG2ENC_CFLAGS@ MPEG2ENC_LIBS = @MPEG2ENC_LIBS@ +MPG123_CFLAGS = @MPG123_CFLAGS@ +MPG123_LIBS = @MPG123_LIBS@ MPLEX_CFLAGS = @MPLEX_CFLAGS@ MPLEX_LDFLAGS = @MPLEX_LDFLAGS@ MPLEX_LIBS = @MPLEX_LIBS@ diff --git a/gst/dtmf/gstdtmfsrc.c b/gst/dtmf/gstdtmfsrc.c index 60bc8a5e..811cc03f 100644 --- a/gst/dtmf/gstdtmfsrc.c +++ b/gst/dtmf/gstdtmfsrc.c @@ -211,6 +211,7 @@ GST_STATIC_PAD_TEMPLATE ("src", "rate = " GST_AUDIO_RATE_RANGE ", " "channels = (int) 1") ); +#define parent_class gst_dtmf_src_parent_class G_DEFINE_TYPE (GstDTMFSrc, gst_dtmf_src, GST_TYPE_BASE_SRC); static void gst_dtmf_src_finalize (GObject * object); @@ -319,9 +320,11 @@ gst_dtmf_src_finalize (GObject * object) } static gboolean -gst_dtmf_src_handle_dtmf_event (GstDTMFSrc * dtmfsrc, - const GstStructure * event_structure) +gst_dtmf_src_handle_dtmf_event (GstDTMFSrc * dtmfsrc, GstEvent * event) { + const GstStructure *event_structure; + GstStateChangeReturn sret; + GstState state; gint event_type; gboolean start; gint method; @@ -330,6 +333,14 @@ gst_dtmf_src_handle_dtmf_event (GstDTMFSrc * dtmfsrc, gint event_volume; gboolean correct_order; + sret = gst_element_get_state (GST_ELEMENT (dtmfsrc), &state, NULL, 0); + if (sret != GST_STATE_CHANGE_SUCCESS || state != GST_STATE_PLAYING) { + GST_DEBUG_OBJECT (dtmfsrc, "dtmf-event, but not in PLAYING state"); + goto failure; + } + + event_structure = gst_event_get_structure (event); + if (!gst_structure_get_int (event_structure, "type", &event_type) || !gst_structure_get_boolean (event_structure, "start", &start) || (start == TRUE && event_type != GST_TONE_DTMF_TYPE_EVENT)) @@ -376,29 +387,6 @@ failure: } static gboolean -gst_dtmf_src_handle_custom_upstream (GstDTMFSrc * dtmfsrc, GstEvent * event) -{ - gboolean result = FALSE; - const GstStructure *structure; - GstState state; - GstStateChangeReturn ret; - - ret = gst_element_get_state (GST_ELEMENT (dtmfsrc), &state, NULL, 0); - if (ret != GST_STATE_CHANGE_SUCCESS || state != GST_STATE_PLAYING) { - GST_DEBUG_OBJECT (dtmfsrc, "Received event while not in PLAYING state"); - goto ret; - } - - GST_DEBUG_OBJECT (dtmfsrc, "Received event is of our interest"); - structure = gst_event_get_structure (event); - if (structure && gst_structure_has_name (structure, "dtmf-event")) - result = gst_dtmf_src_handle_dtmf_event (dtmfsrc, structure); - -ret: - return result; -} - -static gboolean gst_dtmf_src_handle_event (GstBaseSrc * src, GstEvent * event) { GstDTMFSrc *dtmfsrc; @@ -406,9 +394,19 @@ gst_dtmf_src_handle_event (GstBaseSrc * src, GstEvent * event) dtmfsrc = GST_DTMF_SRC (src); - GST_DEBUG_OBJECT (dtmfsrc, "Received an event on the src pad"); - if (GST_EVENT_TYPE (event) == GST_EVENT_CUSTOM_UPSTREAM) { - result = gst_dtmf_src_handle_custom_upstream (dtmfsrc, event); + GST_LOG_OBJECT (dtmfsrc, "Received an %s event on the src pad", + GST_EVENT_TYPE_NAME (event)); + + switch (GST_EVENT_TYPE (event)) { + case GST_EVENT_CUSTOM_UPSTREAM: + if (gst_event_has_name (event, "dtmf-event")) { + result = gst_dtmf_src_handle_dtmf_event (dtmfsrc, event); + break; + } + /* fall through */ + default: + result = GST_BASE_SRC_CLASS (parent_class)->event (src, event); + break; } return result; @@ -418,12 +416,29 @@ gst_dtmf_src_handle_event (GstBaseSrc * src, GstEvent * event) static gboolean gst_dtmf_src_send_event (GstElement * element, GstEvent * event) { + GstDTMFSrc *dtmfsrc = GST_DTMF_SRC (element); + gboolean ret; - if (gst_dtmf_src_handle_event (GST_BASE_SRC (element), event)) - return TRUE; + GST_LOG_OBJECT (dtmfsrc, "Received an %s event via send_event", + GST_EVENT_TYPE_NAME (event)); + + switch (GST_EVENT_TYPE (event)) { + case GST_EVENT_CUSTOM_BOTH: + case GST_EVENT_CUSTOM_BOTH_OOB: + case GST_EVENT_CUSTOM_UPSTREAM: + case GST_EVENT_CUSTOM_DOWNSTREAM: + case GST_EVENT_CUSTOM_DOWNSTREAM_OOB: + if (gst_event_has_name (event, "dtmf-event")) { + ret = gst_dtmf_src_handle_dtmf_event (dtmfsrc, event); + break; + } + /* fall through */ + default: + ret = GST_ELEMENT_CLASS (parent_class)->send_event (element, event); + break; + } - return GST_ELEMENT_CLASS (gst_dtmf_src_parent_class)->send_event - (element, event); + return ret; } static void diff --git a/gst/dtmf/gstrtpdtmfdepay.c b/gst/dtmf/gstrtpdtmfdepay.c index 0dda8850..1bea4655 100644 --- a/gst/dtmf/gstrtpdtmfdepay.c +++ b/gst/dtmf/gstrtpdtmfdepay.c @@ -407,9 +407,6 @@ gst_rtp_dtmf_depay_process (GstRTPBaseDepayload * depayload, GstBuffer * buf) rtpdtmfdepay = GST_RTP_DTMF_DEPAY (depayload); - if (!gst_rtp_buffer_validate (buf)) - goto bad_packet; - gst_rtp_buffer_map (buf, GST_MAP_READ, &rtpbuffer); payload_len = gst_rtp_buffer_get_payload_len (&rtpbuffer); @@ -423,7 +420,6 @@ gst_rtp_dtmf_depay_process (GstRTPBaseDepayload * depayload, GstBuffer * buf) if (dtmf_payload.event > MAX_EVENT) goto bad_packet; - marker = gst_rtp_buffer_get_marker (&rtpbuffer); timestamp = gst_rtp_buffer_get_timestamp (&rtpbuffer); diff --git a/gst/dvbsuboverlay/Makefile.in b/gst/dvbsuboverlay/Makefile.in index 20bb6a5a..3ae4f9f8 100644 --- a/gst/dvbsuboverlay/Makefile.in +++ b/gst/dvbsuboverlay/Makefile.in @@ -1,4 +1,4 @@ -# Makefile.in generated by automake 1.11.5 from Makefile.am. +# Makefile.in generated by automake 1.11.6 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, @@ -238,11 +238,10 @@ DIRECT3D_LIBS = @DIRECT3D_LIBS@ DIRECTDRAW_LIBS = @DIRECTDRAW_LIBS@ DIRECTFB_CFLAGS = @DIRECTFB_CFLAGS@ DIRECTFB_LIBS = @DIRECTFB_LIBS@ +DIRECTSHOW_LIBS = @DIRECTSHOW_LIBS@ DIRECTSOUND_LIBS = @DIRECTSOUND_LIBS@ DIRECTX_CFLAGS = @DIRECTX_CFLAGS@ DIRECTX_LDFLAGS = @DIRECTX_LDFLAGS@ -DIVXDEC_LIBS = @DIVXDEC_LIBS@ -DIVXENC_LIBS = @DIVXENC_LIBS@ DLLTOOL = @DLLTOOL@ DSYMUTIL = @DSYMUTIL@ DTS_LIBS = @DTS_LIBS@ @@ -277,7 +276,9 @@ GIO_LIBS = @GIO_LIBS@ GLIB_CFLAGS = @GLIB_CFLAGS@ GLIB_COMPILE_SCHEMAS = @GLIB_COMPILE_SCHEMAS@ GLIB_EXTRA_CFLAGS = @GLIB_EXTRA_CFLAGS@ +GLIB_GENMARSHAL = @GLIB_GENMARSHAL@ GLIB_LIBS = @GLIB_LIBS@ +GLIB_MKENUMS = @GLIB_MKENUMS@ GLIB_PREFIX = @GLIB_PREFIX@ GLIB_REQ = @GLIB_REQ@ GME_LIBS = @GME_LIBS@ @@ -353,13 +354,14 @@ HAVE_CXX = @HAVE_CXX@ HAVE_DIRECT3D = @HAVE_DIRECT3D@ HAVE_DIRECT3D9 = @HAVE_DIRECT3D9@ HAVE_DIRECTDRAW = @HAVE_DIRECTDRAW@ +HAVE_DIRECTSHOW = @HAVE_DIRECTSHOW@ HAVE_DIRECTSOUND = @HAVE_DIRECTSOUND@ HAVE_DTS = @HAVE_DTS@ HAVE_FAAC = @HAVE_FAAC@ HAVE_FAAD = @HAVE_FAAD@ HAVE_FLITE = @HAVE_FLITE@ HAVE_GSM = @HAVE_GSM@ -HAVE_JP2K = @HAVE_JP2K@ +HAVE_JASPER = @HAVE_JASPER@ HAVE_NAS = @HAVE_NAS@ HAVE_VPX = @HAVE_VPX@ HAVE_WILDMIDI = @HAVE_WILDMIDI@ @@ -373,7 +375,7 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ INTLLIBS = @INTLLIBS@ INTL_MACOSX_LIBS = @INTL_MACOSX_LIBS@ -JP2K_LIBS = @JP2K_LIBS@ +JASPER_LIBS = @JASPER_LIBS@ KATE_CFLAGS = @KATE_CFLAGS@ KATE_LIBS = @KATE_LIBS@ LD = @LD@ @@ -409,6 +411,8 @@ MODPLUG_CFLAGS = @MODPLUG_CFLAGS@ MODPLUG_LIBS = @MODPLUG_LIBS@ MPEG2ENC_CFLAGS = @MPEG2ENC_CFLAGS@ MPEG2ENC_LIBS = @MPEG2ENC_LIBS@ +MPG123_CFLAGS = @MPG123_CFLAGS@ +MPG123_LIBS = @MPG123_LIBS@ MPLEX_CFLAGS = @MPLEX_CFLAGS@ MPLEX_LDFLAGS = @MPLEX_LDFLAGS@ MPLEX_LIBS = @MPLEX_LIBS@ diff --git a/gst/dvbsuboverlay/dvb-sub.c b/gst/dvbsuboverlay/dvb-sub.c index 6ba3c742..465ffeca 100644 --- a/gst/dvbsuboverlay/dvb-sub.c +++ b/gst/dvbsuboverlay/dvb-sub.c @@ -715,7 +715,7 @@ _dvb_sub_read_2bit_string (guint8 * destbuf, gint dbuf_len, GST_TRACE ("RUNLEN: setting %u pixels to color 0x%x in destination buffer, " "dbuf_len left is %d pixels", run_length, clut_index, dbuf_len); - if (!(non_mod == 1 && bits == 1)) + if (!(non_mod == 1 && clut_index == 1)) memset (destbuf, clut_index, run_length); destbuf += run_length; @@ -813,7 +813,7 @@ _dvb_sub_read_4bit_string (guint8 * destbuf, gint dbuf_len, GST_TRACE ("RUNLEN: setting %u pixels to color 0x%x in destination buffer; " "dbuf_len left is %d pixels", run_length, clut_index, dbuf_len); - if (!(non_mod == 1 && bits == 1)) + if (!(non_mod == 1 && clut_index == 1)) memset (destbuf, clut_index, run_length); destbuf += run_length; @@ -905,7 +905,7 @@ _dvb_sub_read_8bit_string (guint8 * destbuf, gint dbuf_len, GST_TRACE ("RUNLEN: setting %u pixels to color 0x%x in destination buffer; " "dbuf_len left is %d pixels", run_length, clut_index, dbuf_len); - if (!(non_mod == 1 && bits == 1)) + if (!(non_mod == 1 && clut_index == 1)) memset (destbuf, clut_index, run_length); destbuf += run_length; @@ -1187,7 +1187,7 @@ _dvb_sub_parse_display_definition_segment (DvbSub * dvb_sub, guint8 * buf, static gint _dvb_sub_parse_end_of_display_set (DvbSub * dvb_sub, guint16 page_id, - guint8 * buf, gint buf_size, guint64 pts) + guint64 pts) { DVBSubRegionDisplay *display; DVBSubtitles *sub; @@ -1195,7 +1195,7 @@ _dvb_sub_parse_end_of_display_set (DvbSub * dvb_sub, guint16 page_id, guint32 *clut_table; int i; - GST_DEBUG ("DISPLAY SET END: page_id = %u, length = %d", page_id, buf_size); + GST_DEBUG ("DISPLAY SET END: page_id = %u", page_id); sub = g_slice_new0 (DVBSubtitles); @@ -1386,7 +1386,13 @@ dvb_sub_feed_with_pts (DvbSub * dvb_sub, guint64 pts, guint8 * data, gint len) GST_DEBUG ("pts=%" G_GUINT64_FORMAT " and length %d", pts, len); - g_return_val_if_fail (data != NULL, -1); + g_return_val_if_fail (data != NULL || len == 0, -1); + + if (G_UNLIKELY (data == NULL)) { + GST_DEBUG ("no data; forcing end-of-display-set"); + _dvb_sub_parse_end_of_display_set (dvb_sub, 0, pts); + return 0; + } if (len <= 3) { /* len(0x20 0x00 end_of_PES_data_field_marker) */ GST_WARNING ("Data length too short"); @@ -1453,7 +1459,7 @@ dvb_sub_feed_with_pts (DvbSub * dvb_sub, guint64 pts, guint8 * data, gint len) break; case DVB_SUB_SEGMENT_END_OF_DISPLAY_SET: GST_DEBUG ("End of display set at buffer pos %u", pos); - _dvb_sub_parse_end_of_display_set (dvb_sub, page_id, data + pos, segment_len, pts); /* FIXME: Not sure about args */ + _dvb_sub_parse_end_of_display_set (dvb_sub, page_id, pts); /* FIXME: Not sure about args */ break; default: GST_FIXME ("Unhandled segment type 0x%x", segment_type); diff --git a/gst/dvbsuboverlay/gstdvbsuboverlay.c b/gst/dvbsuboverlay/gstdvbsuboverlay.c index 41edd578..70da0ec2 100644 --- a/gst/dvbsuboverlay/gstdvbsuboverlay.c +++ b/gst/dvbsuboverlay/gstdvbsuboverlay.c @@ -41,6 +41,8 @@ #include <gst/glib-compat-private.h> #include "gstdvbsuboverlay.h" +#include <gst/video/gstvideometa.h> + #include <string.h> GST_DEBUG_CATEGORY_STATIC (gst_dvbsub_overlay_debug); @@ -57,10 +59,12 @@ enum PROP_0, PROP_ENABLE, PROP_MAX_PAGE_TIMEOUT, + PROP_FORCE_END }; #define DEFAULT_ENABLE (TRUE) #define DEFAULT_MAX_PAGE_TIMEOUT (0) +#define DEFAULT_FORCE_END (FALSE) static GstStaticPadTemplate src_factory = GST_STATIC_PAD_TEMPLATE ("src", GST_PAD_SRC, @@ -138,6 +142,11 @@ gst_dvbsub_overlay_class_init (GstDVBSubOverlayClass * klass) 0, G_MAXINT, DEFAULT_MAX_PAGE_TIMEOUT, G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS)); + g_object_class_install_property (gobject_class, PROP_FORCE_END, + g_param_spec_boolean ("force-end", "Force End", + "Assume PES-aligned subtitles and force end-of-display", + DEFAULT_FORCE_END, G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS)); + gstelement_class->change_state = GST_DEBUG_FUNCPTR (gst_dvbsub_overlay_change_state); @@ -168,6 +177,10 @@ gst_dvbsub_overlay_flush_subtitles (GstDVBSubOverlay * render) dvb_subtitles_free (render->current_subtitle); render->current_subtitle = NULL; + if (render->current_comp) + gst_video_overlay_composition_unref (render->current_comp); + render->current_comp = NULL; + if (render->dvb_sub) dvb_sub_free (render->dvb_sub); @@ -178,6 +191,9 @@ gst_dvbsub_overlay_flush_subtitles (GstDVBSubOverlay * render) dvb_sub_set_callbacks (render->dvb_sub, &dvbsub_callbacks, render); } + render->last_text_pts = GST_CLOCK_TIME_NONE; + render->pending_sub = FALSE; + g_mutex_unlock (&render->dvbsub_mutex); } @@ -220,6 +236,7 @@ gst_dvbsub_overlay_init (GstDVBSubOverlay * render) render->enable = DEFAULT_ENABLE; render->max_page_timeout = DEFAULT_MAX_PAGE_TIMEOUT; + render->force_end = DEFAULT_FORCE_END; g_mutex_init (&render->dvbsub_mutex); gst_dvbsub_overlay_flush_subtitles (render); @@ -245,6 +262,10 @@ gst_dvbsub_overlay_finalize (GObject * object) dvb_subtitles_free (overlay->current_subtitle); overlay->current_subtitle = NULL; + if (overlay->current_comp) + gst_video_overlay_composition_unref (overlay->current_comp); + overlay->current_comp = NULL; + if (overlay->dvb_sub) dvb_sub_free (overlay->dvb_sub); @@ -266,6 +287,9 @@ gst_dvbsub_overlay_set_property (GObject * object, guint prop_id, case PROP_MAX_PAGE_TIMEOUT: g_atomic_int_set (&overlay->max_page_timeout, g_value_get_int (value)); break; + case PROP_FORCE_END: + g_atomic_int_set (&overlay->force_end, g_value_get_boolean (value)); + break; default: G_OBJECT_WARN_INVALID_PROPERTY_ID (object, prop_id, pspec); break; @@ -285,6 +309,9 @@ gst_dvbsub_overlay_get_property (GObject * object, guint prop_id, case PROP_MAX_PAGE_TIMEOUT: g_value_set_int (value, g_atomic_int_get (&overlay->max_page_timeout)); break; + case PROP_FORCE_END: + g_value_set_boolean (value, g_atomic_int_get (&overlay->force_end)); + break; default: G_OBJECT_WARN_INVALID_PROPERTY_ID (object, prop_id, pspec); break; @@ -431,241 +458,46 @@ gst_dvbsub_overlay_getcaps (GstPad * pad, GstCaps * filter) return caps; } -static void -blit_i420 (GstDVBSubOverlay * overlay, DVBSubtitles * subs, - GstVideoFrame * frame) +/* only negotiate/query video overlay composition support for now */ +static gboolean +gst_dvbsub_overlay_negotiate (GstDVBSubOverlay * overlay) { - guint counter; - DVBSubtitleRect *sub_region; - gint a1, a2, a3, a4; - gint y1, y2, y3, y4; - gint u1, u2, u3, u4; - gint v1, v2, v3, v4; - guint32 color; - const guint8 *src; - guint8 *dst_y, *dst_y2, *dst_u, *dst_v; - gint x, y; - gint w2; - gint width; - gint height; - gint src_stride; - guint8 *y_data, *u_data, *v_data; - gint y_stride, u_stride, v_stride; - gint scale = 0; - gint scale_x = 0, scale_y = 0; /* 16.16 fixed point */ - - width = GST_VIDEO_FRAME_WIDTH (frame); - height = GST_VIDEO_FRAME_HEIGHT (frame); - - y_data = GST_VIDEO_FRAME_COMP_DATA (frame, 0); - u_data = GST_VIDEO_FRAME_COMP_DATA (frame, 1); - v_data = GST_VIDEO_FRAME_COMP_DATA (frame, 2); - - y_stride = GST_VIDEO_FRAME_COMP_STRIDE (frame, 0); - u_stride = GST_VIDEO_FRAME_COMP_STRIDE (frame, 1); - v_stride = GST_VIDEO_FRAME_COMP_STRIDE (frame, 2); - - if (width != subs->display_def.display_width && - height != subs->display_def.display_height) { - scale = 1; - if (subs->display_def.window_flag) { - scale_x = (width << 16) / subs->display_def.window_width; - scale_y = (height << 16) / subs->display_def.window_height; - } else { - scale_x = (width << 16) / subs->display_def.display_width; - scale_y = (height << 16) / subs->display_def.display_height; - } - } + GstCaps *target; + GstQuery *query; + gboolean attach = FALSE; - for (counter = 0; counter < subs->num_rects; counter++) { - gint dw, dh, dx, dy; - gint32 sx = 0, sy; /* 16.16 fixed point */ - gint32 xstep, ystep; /* 16.16 fixed point */ - - sub_region = &subs->rects[counter]; - if (sub_region->y > height || sub_region->x > width) - continue; - - /* blend subtitles onto the video frame */ - dx = sub_region->x; - dy = sub_region->y; - dw = sub_region->w; - dh = sub_region->h; - - if (scale) { - dx = (dx * scale_x) >> 16; - dy = (dy * scale_y) >> 16; - dw = (dw * scale_x) >> 16; - dh = (dh * scale_y) >> 16; - /* apply subtitle window offsets after scaling */ - if (subs->display_def.window_flag) { - dx += subs->display_def.window_x; - dy += subs->display_def.window_y; - } - } + GST_DEBUG_OBJECT (overlay, "performing negotiation"); - dw = MIN (dw, width - dx); - dh = MIN (dh, height - dx); - - xstep = (sub_region->w << 16) / dw; - ystep = (sub_region->h << 16) / dh; - - w2 = (dw + 1) / 2; - - src_stride = sub_region->pict.rowstride; - - src = sub_region->pict.data; - dst_y = y_data + dy * y_stride + dx; - dst_y2 = y_data + (dy + 1) * y_stride + dx; - dst_u = u_data + ((dy + 1) / 2) * u_stride + (dx + 1) / 2; - dst_v = v_data + ((dy + 1) / 2) * v_stride + (dx + 1) / 2; - - sy = 0; - for (y = 0; y < dh - 1; y += 2) { - sx = 0; - for (x = 0; x < dw - 1; x += 2) { - - color = - sub_region->pict.palette[src[(sy >> 16) * src_stride + (sx >> 16)]]; - a1 = (color >> 24) & 0xff; - y1 = (color >> 16) & 0xff; - u1 = ((color >> 8) & 0xff) * a1; - v1 = (color & 0xff) * a1; - - color = - sub_region->pict.palette[src[(sy >> 16) * src_stride + ((sx + - xstep) >> 16)]]; - a2 = (color >> 24) & 0xff; - y2 = (color >> 16) & 0xff; - u2 = ((color >> 8) & 0xff) * a2; - v2 = (color & 0xff) * a2; - - color = - sub_region->pict.palette[src[((sy + ystep) >> 16) * src_stride + - (sx >> 16)]]; - a3 = (color >> 24) & 0xff; - y3 = (color >> 16) & 0xff; - u3 = ((color >> 8) & 0xff) * a3; - v3 = (color & 0xff) * a3; - - color = - sub_region->pict.palette[src[((sy + ystep) >> 16) * src_stride + - ((sx + xstep) >> 16)]]; - a4 = (color >> 24) & 0xff; - y4 = (color >> 16) & 0xff; - u4 = ((color >> 8) & 0xff) * a4; - v4 = (color & 0xff) * a4; - - dst_y[0] = (a1 * y1 + (255 - a1) * dst_y[0]) / 255; - dst_y[1] = (a2 * y2 + (255 - a2) * dst_y[1]) / 255; - dst_y2[0] = (a3 * y3 + (255 - a3) * dst_y2[0]) / 255; - dst_y2[1] = (a4 * y4 + (255 - a4) * dst_y2[1]) / 255; - - a1 = (a1 + a2 + a3 + a4) / 4; - dst_u[0] = ((u1 + u2 + u3 + u4) / 4 + (255 - a1) * dst_u[0]) / 255; - dst_v[0] = ((v1 + v2 + v3 + v4) / 4 + (255 - a1) * dst_v[0]) / 255; - - dst_y += 2; - dst_y2 += 2; - dst_u += 1; - dst_v += 1; - sx += 2 * xstep; - } + target = gst_pad_get_current_caps (overlay->srcpad); - /* Odd width */ - if (x < dw) { - color = - sub_region->pict.palette[src[(sy >> 16) * src_stride + (sx >> 16)]]; - a1 = (color >> 24) & 0xff; - y1 = (color >> 16) & 0xff; - u1 = ((color >> 8) & 0xff) * a1; - v1 = (color & 0xff) * a1; - - color = - sub_region->pict.palette[src[((sy + ystep) >> 16) * src_stride + - (sx >> 16)]]; - a3 = (color >> 24) & 0xff; - y3 = (color >> 16) & 0xff; - u3 = ((color >> 8) & 0xff) * a3; - v3 = (color & 0xff) * a3; - - dst_y[0] = (a1 * y1 + (255 - a1) * dst_y[0]) / 255; - dst_y2[0] = (a3 * y3 + (255 - a3) * dst_y2[0]) / 255; - - a1 = (a1 + a3) / 2; - dst_u[0] = ((u1 + u3) / 2 + (255 - a1) * dst_u[0]) / 255; - dst_v[0] = ((v1 + v3) / 2 + (255 - a1) * dst_v[0]) / 255; - - dst_y += 1; - dst_y2 += 1; - dst_u += 1; - dst_v += 1; - sx += xstep; - } + if (!target || gst_caps_is_empty (target)) + goto no_format; - sy += 2 * ystep; + /* find supported meta */ + query = gst_query_new_allocation (target, TRUE); - dst_y += y_stride + (y_stride - dw); - dst_y2 += y_stride + (y_stride - dw); - dst_u += u_stride - w2; - dst_v += v_stride - w2; - } + if (!gst_pad_peer_query (overlay->srcpad, query)) { + /* no problem, we use the query defaults */ + GST_DEBUG_OBJECT (overlay, "ALLOCATION query failed"); + } - /* Odd height */ - if (y < dh) { - sx = 0; - for (x = 0; x < dw - 1; x += 2) { - color = - sub_region->pict.palette[src[(sy >> 16) * src_stride + (sx >> 16)]]; - a1 = (color >> 24) & 0xff; - y1 = (color >> 16) & 0xff; - u1 = ((color >> 8) & 0xff) * a1; - v1 = (color & 0xff) * a1; - - color = - sub_region->pict.palette[src[(sy >> 16) * src_stride + ((sx + - xstep) >> 16)]]; - a2 = (color >> 24) & 0xff; - y2 = (color >> 16) & 0xff; - u2 = ((color >> 8) & 0xff) * a2; - v2 = (color & 0xff) * a2; - - dst_y[0] = (a1 * y1 + (255 - a1) * dst_y[0]) / 255; - dst_y[1] = (a2 * y2 + (255 - a2) * dst_y[1]) / 255; - - a1 = (a1 + a2) / 2; - dst_u[0] = ((u1 + u2) / 2 + (255 - a1) * dst_u[0]) / 255; - dst_v[0] = ((v1 + v2) / 2 + (255 - a1) * dst_v[0]) / 255; - - dst_y += 2; - dst_u += 1; - dst_v += 1; - sx += 2 * xstep; - } + if (gst_query_find_allocation_meta (query, + GST_VIDEO_OVERLAY_COMPOSITION_META_API_TYPE, NULL)) + attach = TRUE; - /* Odd height and width */ - if (x < dw) { - color = - sub_region->pict.palette[src[(sy >> 16) * src_stride + (sx >> 16)]]; - a1 = (color >> 24) & 0xff; - y1 = (color >> 16) & 0xff; - u1 = ((color >> 8) & 0xff) * a1; - v1 = (color & 0xff) * a1; + overlay->attach_compo_to_buffer = attach; - dst_y[0] = (a1 * y1 + (255 - a1) * dst_y[0]) / 255; + gst_query_unref (query); + gst_caps_unref (target); - dst_u[0] = (u1 + (255 - a1) * dst_u[0]) / 255; - dst_v[0] = (v1 + (255 - a1) * dst_v[0]) / 255; + return TRUE; - dst_y += 1; - dst_u += 1; - dst_v += 1; - sx += xstep; - } - } +no_format: + { + if (target) + gst_caps_unref (target); + return FALSE; } - - GST_LOG_OBJECT (overlay, "amount of rendered DVBSubtitleRect: %u", counter); } static gboolean @@ -684,6 +516,8 @@ gst_dvbsub_overlay_setcaps_video (GstPad * pad, GstCaps * caps) if (!ret) goto out; + gst_dvbsub_overlay_negotiate (render); + GST_DEBUG_OBJECT (render, "ass renderer setup complete"); out: @@ -707,9 +541,8 @@ gst_dvbsub_overlay_process_text (GstDVBSubOverlay * overlay, GstBuffer * buffer, GstMapInfo map; GST_DEBUG_OBJECT (overlay, - "Processing subtitles with fake PTS=%" G_GUINT64_FORMAT - " which is a running time of %" GST_TIME_FORMAT, - pts, GST_TIME_ARGS (pts)); + "Processing subtitles with PTS=%" G_GUINT64_FORMAT + " which is a time of %" GST_TIME_FORMAT, pts, GST_TIME_ARGS (pts)); gst_buffer_map (buffer, &map, GST_MAP_READ); @@ -717,11 +550,18 @@ gst_dvbsub_overlay_process_text (GstDVBSubOverlay * overlay, GstBuffer * buffer, map.size); g_mutex_lock (&overlay->dvbsub_mutex); + overlay->pending_sub = TRUE; dvb_sub_feed_with_pts (overlay->dvb_sub, pts, map.data, map.size); g_mutex_unlock (&overlay->dvbsub_mutex); gst_buffer_unmap (buffer, &map); gst_buffer_unref (buffer); + + if (overlay->pending_sub && overlay->force_end) { + GST_DEBUG_OBJECT (overlay, "forcing subtitle end"); + dvb_sub_feed_with_pts (overlay->dvb_sub, overlay->last_text_pts, NULL, 0); + g_assert (overlay->pending_sub == FALSE); + } } static void @@ -729,18 +569,53 @@ new_dvb_subtitles_cb (DvbSub * dvb_sub, DVBSubtitles * subs, gpointer user_data) { GstDVBSubOverlay *overlay = GST_DVBSUB_OVERLAY (user_data); int max_page_timeout; + guint64 start, stop; max_page_timeout = g_atomic_int_get (&overlay->max_page_timeout); if (max_page_timeout > 0) subs->page_time_out = MIN (subs->page_time_out, max_page_timeout); GST_INFO_OBJECT (overlay, - "New DVB subtitles arrived with a page_time_out of %d and %d regions for PTS=%" - G_GUINT64_FORMAT ", which should be at running time %" GST_TIME_FORMAT, + "New DVB subtitles arrived with a page_time_out of %d and %d regions for " + "PTS=%" G_GUINT64_FORMAT ", which should be at time %" GST_TIME_FORMAT, subs->page_time_out, subs->num_rects, subs->pts, GST_TIME_ARGS (subs->pts)); + /* spec says page_time_out is not to be taken very accurately anyway, + * and 0 does not make useful sense anyway */ + if (!subs->page_time_out) { + GST_WARNING_OBJECT (overlay, "overriding page_time_out 0"); + subs->page_time_out = 1; + } + + /* clip and convert to running time */ + start = subs->pts; + stop = subs->pts + subs->page_time_out; + + if (!(gst_segment_clip (&overlay->subtitle_segment, GST_FORMAT_TIME, + start, stop, &start, &stop))) + goto out_of_segment; + + subs->page_time_out = stop - start; + + gst_segment_to_running_time (&overlay->subtitle_segment, GST_FORMAT_TIME, + start); + g_assert (GST_CLOCK_TIME_IS_VALID (start)); + subs->pts = start; + + GST_DEBUG_OBJECT (overlay, "SUBTITLE real running time: %" GST_TIME_FORMAT, + GST_TIME_ARGS (start)); + g_queue_push_tail (overlay->pending_subtitles, subs); + overlay->pending_sub = FALSE; + + return; + +out_of_segment: + { + GST_DEBUG_OBJECT (overlay, "subtitle out of segment, discarding"); + dvb_subtitles_free (subs); + } } static GstFlowReturn @@ -748,7 +623,6 @@ gst_dvbsub_overlay_chain_text (GstPad * pad, GstObject * parent, GstBuffer * buffer) { GstDVBSubOverlay *overlay = GST_DVBSUB_OVERLAY (parent); - GstClockTime sub_running_time; GST_INFO_OBJECT (overlay, "subpicture/x-dvb buffer with size %" G_GSIZE_FORMAT, @@ -768,6 +642,17 @@ gst_dvbsub_overlay_chain_text (GstPad * pad, GstObject * parent, return GST_FLOW_OK; } + /* spec states multiple PES packets may have same PTS, + * and same PTS packets make up a display set */ + if (overlay->pending_sub && + overlay->last_text_pts != GST_BUFFER_TIMESTAMP (buffer)) { + GST_DEBUG_OBJECT (overlay, "finishing previous subtitle"); + dvb_sub_feed_with_pts (overlay->dvb_sub, overlay->last_text_pts, NULL, 0); + overlay->pending_sub = FALSE; + } + + overlay->last_text_pts = GST_BUFFER_TIMESTAMP (buffer); + /* As the passed start and stop is equal, we shouldn't need to care about out of segment at all, * the subtitle data for the PTS is completely out of interest to us. A given display set must * carry the same PTS value. */ @@ -777,17 +662,121 @@ gst_dvbsub_overlay_chain_text (GstPad * pad, GstObject * parent, overlay->subtitle_segment.position = GST_BUFFER_TIMESTAMP (buffer); - sub_running_time = - gst_segment_to_running_time (&overlay->subtitle_segment, GST_FORMAT_TIME, + gst_dvbsub_overlay_process_text (overlay, buffer, GST_BUFFER_TIMESTAMP (buffer)); - GST_DEBUG_OBJECT (overlay, "SUBTITLE real running time: %" GST_TIME_FORMAT, - GST_TIME_ARGS (sub_running_time)); + return GST_FLOW_OK; +} - /* FIXME: We are abusing libdvbsub pts value for tracking our gstreamer running time instead of real PTS. Should be mostly fine though... */ - gst_dvbsub_overlay_process_text (overlay, buffer, sub_running_time); +static GstVideoOverlayComposition * +gst_dvbsub_overlay_subs_to_comp (GstDVBSubOverlay * overlay, + DVBSubtitles * subs) +{ + GstVideoOverlayComposition *comp = NULL; + GstVideoOverlayRectangle *rect; + gint width, height, dw, dh, wx, wy; + gint i; - return GST_FLOW_OK; + g_return_val_if_fail (subs != NULL && subs->num_rects > 0, NULL); + + width = GST_VIDEO_INFO_WIDTH (&overlay->info); + height = GST_VIDEO_INFO_HEIGHT (&overlay->info); + + dw = subs->display_def.display_width; + dh = subs->display_def.display_height; + + GST_LOG_OBJECT (overlay, + "converting %d rectangles for display %dx%d -> video %dx%d", + subs->num_rects, dw, dh, width, height); + + if (subs->display_def.window_flag) { + wx = subs->display_def.window_x; + wy = subs->display_def.window_y; + GST_LOG_OBJECT (overlay, "display window %dx%d @ (%d, %d)", + subs->display_def.window_width, subs->display_def.window_height, + wx, wy); + } else { + wx = 0; + wy = 0; + } + + for (i = 0; i < subs->num_rects; i++) { + DVBSubtitleRect *srect = &subs->rects[i]; + GstBuffer *buf; + gint w, h; + guint8 *in_data; + guint32 *palette, *data; + gint rx, ry, rw, rh, stride; + gint k, l; + GstMapInfo map; + + GST_LOG_OBJECT (overlay, "rectangle %d: %dx%d @ (%d, %d)", i, + srect->w, srect->h, srect->x, srect->y); + + w = srect->w; + h = srect->h; + + buf = gst_buffer_new_and_alloc (w * h * 4); + gst_buffer_map (buf, &map, GST_MAP_WRITE); + data = (guint32 *) map.data; + in_data = srect->pict.data; + palette = srect->pict.palette; + stride = srect->pict.rowstride; + for (k = 0; k < h; k++) { + for (l = 0; l < w; l++) { + guint32 ayuv; + gint a, y, u, v, r, g, b; + + /* convert ayuv to argb */ + ayuv = palette[*in_data]; + a = ayuv >> 24; + y = (ayuv >> 16) & 0xff; + u = (ayuv >> 8) & 0xff; + v = (ayuv & 0xff); + + r = (298 * y + 459 * v - 63514) >> 8; + g = (298 * y - 55 * u - 136 * v + 19681) >> 8; + b = (298 * y + 541 * u - 73988) >> 8; + + r = CLAMP (r, 0, 255); + g = CLAMP (g, 0, 255); + b = CLAMP (b, 0, 255); + + *data = ((a << 24) | (r << 16) | (g << 8) | b); + + in_data++; + data++; + } + in_data += stride - w; + } + gst_buffer_unmap (buf, &map); + + /* this is assuming the subtitle rectangle coordinates are relative + * to the window (if there is one) within a display of specified dimension. + * Coordinate wrt the latter is then scaled to the actual dimension of + * the video we are dealing with here. */ + rx = gst_util_uint64_scale (wx + srect->x, width, dw); + ry = gst_util_uint64_scale (wy + srect->y, height, dh); + rw = gst_util_uint64_scale (srect->w, width, dw); + rh = gst_util_uint64_scale (srect->h, height, dh); + + GST_LOG_OBJECT (overlay, "rectangle %d rendered: %dx%d @ (%d, %d)", i, + rw, rh, rx, ry); + + gst_buffer_add_video_meta (buf, GST_VIDEO_FRAME_FLAG_NONE, + GST_VIDEO_OVERLAY_COMPOSITION_FORMAT_RGB, w, h); + rect = gst_video_overlay_rectangle_new_argb (buf, rx, ry, rw, rh, 0); + g_assert (rect); + if (comp) { + gst_video_overlay_composition_add_rectangle (comp, rect); + } else { + comp = gst_video_overlay_composition_new (rect); + } + gst_video_overlay_rectangle_unref (rect); + gst_buffer_unref (buf); + } + + return comp; } static GstFlowReturn @@ -894,7 +883,10 @@ gst_dvbsub_overlay_chain_video (GstPad * pad, GstObject * parent, candidate->num_rects); dvb_subtitles_free (overlay->current_subtitle); overlay->current_subtitle = candidate; - /* FIXME: Pre-convert current_subtitle to a quick-blend format, num_rects=0 means that there are no regions, e.g, a subtitle "clear" happened */ + if (overlay->current_comp) + gst_video_overlay_composition_unref (overlay->current_comp); + overlay->current_comp = + gst_dvbsub_overlay_subs_to_comp (overlay, overlay->current_subtitle); } } @@ -915,10 +907,17 @@ gst_dvbsub_overlay_chain_video (GstPad * pad, GstObject * parent, if (g_atomic_int_get (&overlay->enable) && overlay->current_subtitle) { GstVideoFrame frame; - buffer = gst_buffer_make_writable (buffer); - gst_video_frame_map (&frame, &overlay->info, buffer, GST_MAP_WRITE); - blit_i420 (overlay, overlay->current_subtitle, &frame); - gst_video_frame_unmap (&frame); + g_assert (overlay->current_comp); + if (overlay->attach_compo_to_buffer) { + GST_DEBUG_OBJECT (overlay, "Attaching overlay image to video buffer"); + gst_buffer_add_video_overlay_composition_meta (buffer, + overlay->current_comp); + } else { + GST_DEBUG_OBJECT (overlay, "Blending overlay image to video buffer"); + gst_video_frame_map (&frame, &overlay->info, buffer, GST_MAP_WRITE); + gst_video_overlay_composition_blend (overlay->current_comp, &frame); + gst_video_frame_unmap (&frame); + } } g_mutex_unlock (&overlay->dvbsub_mutex); diff --git a/gst/dvbsuboverlay/gstdvbsuboverlay.h b/gst/dvbsuboverlay/gstdvbsuboverlay.h index b2b79005..4cf32427 100644 --- a/gst/dvbsuboverlay/gstdvbsuboverlay.h +++ b/gst/dvbsuboverlay/gstdvbsuboverlay.h @@ -22,6 +22,7 @@ #include <gst/gst.h> #include <gst/video/video.h> +#include <gst/video/video-overlay-composition.h> #include "dvb-sub.h" @@ -45,6 +46,7 @@ struct _GstDVBSubOverlay /* properties */ gboolean enable; gint max_page_timeout; + gboolean force_end; /* <private> */ GstSegment video_segment; @@ -53,11 +55,19 @@ struct _GstDVBSubOverlay GstVideoInfo info; DVBSubtitles *current_subtitle; /* The currently active set of subtitle regions, if any */ + GstVideoOverlayComposition *current_comp; GQueue *pending_subtitles; /* A queue of raw subtitle region sets with * metadata that are waiting their running time */ GMutex dvbsub_mutex; /* protects the queue and the DvbSub instance */ DvbSub *dvb_sub; + + /* subtitle data submitted to dvb_sub but no sub received yet */ + gboolean pending_sub; + /* last text pts */ + GstClockTime last_text_pts; + + gboolean attach_compo_to_buffer; }; struct _GstDVBSubOverlayClass diff --git a/gst/dvdspu/Makefile.in b/gst/dvdspu/Makefile.in index fa4dbf76..4b35be0a 100644 --- a/gst/dvdspu/Makefile.in +++ b/gst/dvdspu/Makefile.in @@ -1,4 +1,4 @@ -# Makefile.in generated by automake 1.11.5 from Makefile.am. +# Makefile.in generated by automake 1.11.6 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, @@ -241,11 +241,10 @@ DIRECT3D_LIBS = @DIRECT3D_LIBS@ DIRECTDRAW_LIBS = @DIRECTDRAW_LIBS@ DIRECTFB_CFLAGS = @DIRECTFB_CFLAGS@ DIRECTFB_LIBS = @DIRECTFB_LIBS@ +DIRECTSHOW_LIBS = @DIRECTSHOW_LIBS@ DIRECTSOUND_LIBS = @DIRECTSOUND_LIBS@ DIRECTX_CFLAGS = @DIRECTX_CFLAGS@ DIRECTX_LDFLAGS = @DIRECTX_LDFLAGS@ -DIVXDEC_LIBS = @DIVXDEC_LIBS@ -DIVXENC_LIBS = @DIVXENC_LIBS@ DLLTOOL = @DLLTOOL@ DSYMUTIL = @DSYMUTIL@ DTS_LIBS = @DTS_LIBS@ @@ -280,7 +279,9 @@ GIO_LIBS = @GIO_LIBS@ GLIB_CFLAGS = @GLIB_CFLAGS@ GLIB_COMPILE_SCHEMAS = @GLIB_COMPILE_SCHEMAS@ GLIB_EXTRA_CFLAGS = @GLIB_EXTRA_CFLAGS@ +GLIB_GENMARSHAL = @GLIB_GENMARSHAL@ GLIB_LIBS = @GLIB_LIBS@ +GLIB_MKENUMS = @GLIB_MKENUMS@ GLIB_PREFIX = @GLIB_PREFIX@ GLIB_REQ = @GLIB_REQ@ GME_LIBS = @GME_LIBS@ @@ -356,13 +357,14 @@ HAVE_CXX = @HAVE_CXX@ HAVE_DIRECT3D = @HAVE_DIRECT3D@ HAVE_DIRECT3D9 = @HAVE_DIRECT3D9@ HAVE_DIRECTDRAW = @HAVE_DIRECTDRAW@ +HAVE_DIRECTSHOW = @HAVE_DIRECTSHOW@ HAVE_DIRECTSOUND = @HAVE_DIRECTSOUND@ HAVE_DTS = @HAVE_DTS@ HAVE_FAAC = @HAVE_FAAC@ HAVE_FAAD = @HAVE_FAAD@ HAVE_FLITE = @HAVE_FLITE@ HAVE_GSM = @HAVE_GSM@ -HAVE_JP2K = @HAVE_JP2K@ +HAVE_JASPER = @HAVE_JASPER@ HAVE_NAS = @HAVE_NAS@ HAVE_VPX = @HAVE_VPX@ HAVE_WILDMIDI = @HAVE_WILDMIDI@ @@ -376,7 +378,7 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ INTLLIBS = @INTLLIBS@ INTL_MACOSX_LIBS = @INTL_MACOSX_LIBS@ -JP2K_LIBS = @JP2K_LIBS@ +JASPER_LIBS = @JASPER_LIBS@ KATE_CFLAGS = @KATE_CFLAGS@ KATE_LIBS = @KATE_LIBS@ LD = @LD@ @@ -412,6 +414,8 @@ MODPLUG_CFLAGS = @MODPLUG_CFLAGS@ MODPLUG_LIBS = @MODPLUG_LIBS@ MPEG2ENC_CFLAGS = @MPEG2ENC_CFLAGS@ MPEG2ENC_LIBS = @MPEG2ENC_LIBS@ +MPG123_CFLAGS = @MPG123_CFLAGS@ +MPG123_LIBS = @MPG123_LIBS@ MPLEX_CFLAGS = @MPLEX_CFLAGS@ MPLEX_LDFLAGS = @MPLEX_LDFLAGS@ MPLEX_LIBS = @MPLEX_LIBS@ diff --git a/gst/dvdspu/gstdvdspu.c b/gst/dvdspu/gstdvdspu.c index f67e5f63..2b253d3d 100644 --- a/gst/dvdspu/gstdvdspu.c +++ b/gst/dvdspu/gstdvdspu.c @@ -48,6 +48,8 @@ GST_DEBUG_CATEGORY (dvdspu_debug); #define GST_CAT_DEFAULT dvdspu_debug +GstDVDSPUDebugFlags dvdspu_debug_flags; + /* Filter signals and args */ enum { @@ -930,7 +932,7 @@ gst_dvd_spu_subpic_chain (GstPad * pad, GstObject * parent, GstBuffer * buf) switch (dvdspu->spu_input_type) { case SPU_INPUT_TYPE_VOBSUB: if (size > 4) { - guint8 *header[2]; + guint8 header[2]; guint16 packet_size; gst_buffer_extract (dvdspu->partial_spu, 0, header, 2); @@ -1201,9 +1203,22 @@ gst_dvd_spu_change_state (GstElement * element, GstStateChange transition) static gboolean gst_dvd_spu_plugin_init (GstPlugin * plugin) { + const gchar *env; + GST_DEBUG_CATEGORY_INIT (dvdspu_debug, "gstspu", 0, "Sub-picture Overlay decoder/renderer"); + env = g_getenv ("GST_DVD_SPU_DEBUG"); + + dvdspu_debug_flags = 0; + if (env != NULL) { + if (strstr (env, "render-rectangle") != NULL) + dvdspu_debug_flags |= GST_DVD_SPU_DEBUG_RENDER_RECTANGLE; + if (strstr (env, "highlight-rectangle") != NULL) + dvdspu_debug_flags |= GST_DVD_SPU_DEBUG_HIGHLIGHT_RECTANGLE; + } + GST_INFO ("debug flags : 0x%02x", dvdspu_debug_flags); + return gst_element_register (plugin, "dvdspu", GST_RANK_PRIMARY, GST_TYPE_DVD_SPU); } diff --git a/gst/dvdspu/gstdvdspu.h b/gst/dvdspu/gstdvdspu.h index f46ff674..642db6db 100644 --- a/gst/dvdspu/gstdvdspu.h +++ b/gst/dvdspu/gstdvdspu.h @@ -124,6 +124,14 @@ struct _GstDVDSpuClass { GType gst_dvd_spu_get_type (void); +typedef enum { + GST_DVD_SPU_DEBUG_RENDER_RECTANGLE = (1 << 0), + GST_DVD_SPU_DEBUG_HIGHLIGHT_RECTANGLE = (1 << 1) +} GstDVDSPUDebugFlags; + +extern GstDVDSPUDebugFlags dvdspu_debug_flags; + + G_END_DECLS #endif /* __GST_DVD_SPU_H__ */ diff --git a/gst/dvdspu/gstspu-vobsub-render.c b/gst/dvdspu/gstspu-vobsub-render.c index 1254d0ae..c8f71653 100644 --- a/gst/dvdspu/gstspu-vobsub-render.c +++ b/gst/dvdspu/gstspu-vobsub-render.c @@ -383,6 +383,30 @@ gstspu_vobsub_clear_comp_buffers (SpuState * state) state->vobsub.comp_last_x[1] = -1; } +static void +gstspu_vobsub_draw_highlight (SpuState * state, + GstVideoFrame * frame, SpuRect * rect) +{ + guint8 *cur; + gint16 pos; + gint ystride; + + ystride = GST_VIDEO_FRAME_COMP_STRIDE (frame, 0); + + cur = GST_VIDEO_FRAME_COMP_DATA (frame, 0) + ystride * rect->top; + for (pos = rect->left + 1; pos < rect->right; pos++) + cur[pos] = (cur[pos] / 2) + 0x8; + cur = GST_VIDEO_FRAME_COMP_DATA (frame, 0) + ystride * rect->bottom; + for (pos = rect->left + 1; pos < rect->right; pos++) + cur[pos] = (cur[pos] / 2) + 0x8; + cur = GST_VIDEO_FRAME_COMP_DATA (frame, 0) + ystride * rect->top; + for (pos = rect->top; pos <= rect->bottom; pos++) { + cur[rect->left] = (cur[rect->left] / 2) + 0x8; + cur[rect->right] = (cur[rect->right] / 2) + 0x8; + cur += ystride; + } +} + void gstspu_vobsub_render (GstDVDSpu * dvdspu, GstVideoFrame * frame) { @@ -567,48 +591,12 @@ gstspu_vobsub_render (GstDVDSpu * dvdspu, GstVideoFrame * frame) } /* for debugging purposes, draw a faint rectangle at the edges of the disp_rect */ -#if 0 - do { - guint8 *cur; - gint16 pos; - - cur = GST_BUFFER_DATA (buf) + strides[0] * state->vobsub.disp_rect.top; - for (pos = state->vobsub.disp_rect.left + 1; - pos < state->vobsub.disp_rect.right; pos++) - cur[pos] = (cur[pos] / 2) + 0x8; - cur = GST_BUFFER_DATA (buf) + strides[0] * state->vobsub.disp_rect.bottom; - for (pos = state->vobsub.disp_rect.left + 1; - pos < state->vobsub.disp_rect.right; pos++) - cur[pos] = (cur[pos] / 2) + 0x8; - cur = GST_BUFFER_DATA (buf) + strides[0] * state->vobsub.disp_rect.top; - for (pos = state->vobsub.disp_rect.top; - pos <= state->vobsub.disp_rect.bottom; pos++) { - cur[state->vobsub.disp_rect.left] = - (cur[state->vobsub.disp_rect.left] / 2) + 0x8; - cur[state->vobsub.disp_rect.right] = - (cur[state->vobsub.disp_rect.right] / 2) + 0x8; - cur += strides[0]; - } - } while (0); -#endif + if ((dvdspu_debug_flags & GST_DVD_SPU_DEBUG_RENDER_RECTANGLE) != 0) { + gstspu_vobsub_draw_highlight (state, frame, &state->vobsub.disp_rect); + } /* For debugging purposes, draw a faint rectangle around the highlight rect */ -#if 0 - if (state->hl_rect.top != -1) { - guint8 *cur; - gint16 pos; - - cur = GST_BUFFER_DATA (buf) + strides[0] * state->hl_rect.top; - for (pos = state->hl_rect.left + 1; pos < state->hl_rect.right; pos++) - cur[pos] = (cur[pos] / 2) + 0x8; - cur = GST_BUFFER_DATA (buf) + strides[0] * state->hl_rect.bottom; - for (pos = state->hl_rect.left + 1; pos < state->hl_rect.right; pos++) - cur[pos] = (cur[pos] / 2) + 0x8; - cur = GST_BUFFER_DATA (buf) + strides[0] * state->hl_rect.top; - for (pos = state->hl_rect.top; pos <= state->hl_rect.bottom; pos++) { - cur[state->hl_rect.left] = (cur[state->hl_rect.left] / 2) + 0x8; - cur[state->hl_rect.right] = (cur[state->hl_rect.right] / 2) + 0x8; - cur += strides[0]; - } + if ((dvdspu_debug_flags & GST_DVD_SPU_DEBUG_HIGHLIGHT_RECTANGLE) != 0 + && state->vobsub.hl_rect.top != -1) { + gstspu_vobsub_draw_highlight (state, frame, &state->vobsub.hl_rect); } -#endif } diff --git a/gst/faceoverlay/Makefile.in b/gst/faceoverlay/Makefile.in index a2d0d718..55f122cd 100644 --- a/gst/faceoverlay/Makefile.in +++ b/gst/faceoverlay/Makefile.in @@ -1,4 +1,4 @@ -# Makefile.in generated by automake 1.11.5 from Makefile.am. +# Makefile.in generated by automake 1.11.6 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, @@ -238,11 +238,10 @@ DIRECT3D_LIBS = @DIRECT3D_LIBS@ DIRECTDRAW_LIBS = @DIRECTDRAW_LIBS@ DIRECTFB_CFLAGS = @DIRECTFB_CFLAGS@ DIRECTFB_LIBS = @DIRECTFB_LIBS@ +DIRECTSHOW_LIBS = @DIRECTSHOW_LIBS@ DIRECTSOUND_LIBS = @DIRECTSOUND_LIBS@ DIRECTX_CFLAGS = @DIRECTX_CFLAGS@ DIRECTX_LDFLAGS = @DIRECTX_LDFLAGS@ -DIVXDEC_LIBS = @DIVXDEC_LIBS@ -DIVXENC_LIBS = @DIVXENC_LIBS@ DLLTOOL = @DLLTOOL@ DSYMUTIL = @DSYMUTIL@ DTS_LIBS = @DTS_LIBS@ @@ -277,7 +276,9 @@ GIO_LIBS = @GIO_LIBS@ GLIB_CFLAGS = @GLIB_CFLAGS@ GLIB_COMPILE_SCHEMAS = @GLIB_COMPILE_SCHEMAS@ GLIB_EXTRA_CFLAGS = @GLIB_EXTRA_CFLAGS@ +GLIB_GENMARSHAL = @GLIB_GENMARSHAL@ GLIB_LIBS = @GLIB_LIBS@ +GLIB_MKENUMS = @GLIB_MKENUMS@ GLIB_PREFIX = @GLIB_PREFIX@ GLIB_REQ = @GLIB_REQ@ GME_LIBS = @GME_LIBS@ @@ -353,13 +354,14 @@ HAVE_CXX = @HAVE_CXX@ HAVE_DIRECT3D = @HAVE_DIRECT3D@ HAVE_DIRECT3D9 = @HAVE_DIRECT3D9@ HAVE_DIRECTDRAW = @HAVE_DIRECTDRAW@ +HAVE_DIRECTSHOW = @HAVE_DIRECTSHOW@ HAVE_DIRECTSOUND = @HAVE_DIRECTSOUND@ HAVE_DTS = @HAVE_DTS@ HAVE_FAAC = @HAVE_FAAC@ HAVE_FAAD = @HAVE_FAAD@ HAVE_FLITE = @HAVE_FLITE@ HAVE_GSM = @HAVE_GSM@ -HAVE_JP2K = @HAVE_JP2K@ +HAVE_JASPER = @HAVE_JASPER@ HAVE_NAS = @HAVE_NAS@ HAVE_VPX = @HAVE_VPX@ HAVE_WILDMIDI = @HAVE_WILDMIDI@ @@ -373,7 +375,7 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ INTLLIBS = @INTLLIBS@ INTL_MACOSX_LIBS = @INTL_MACOSX_LIBS@ -JP2K_LIBS = @JP2K_LIBS@ +JASPER_LIBS = @JASPER_LIBS@ KATE_CFLAGS = @KATE_CFLAGS@ KATE_LIBS = @KATE_LIBS@ LD = @LD@ @@ -409,6 +411,8 @@ MODPLUG_CFLAGS = @MODPLUG_CFLAGS@ MODPLUG_LIBS = @MODPLUG_LIBS@ MPEG2ENC_CFLAGS = @MPEG2ENC_CFLAGS@ MPEG2ENC_LIBS = @MPEG2ENC_LIBS@ +MPG123_CFLAGS = @MPG123_CFLAGS@ +MPG123_LIBS = @MPG123_LIBS@ MPLEX_CFLAGS = @MPLEX_CFLAGS@ MPLEX_LDFLAGS = @MPLEX_LDFLAGS@ MPLEX_LIBS = @MPLEX_LIBS@ diff --git a/gst/festival/Makefile.am b/gst/festival/Makefile.am index cb8959dc..e6183592 100644 --- a/gst/festival/Makefile.am +++ b/gst/festival/Makefile.am @@ -6,7 +6,7 @@ libgstfestival_la_CFLAGS = $(GST_CFLAGS) $(GST_PLUGINS_BASE_CFLAGS) # we use net connection now... perhaps use the lib later # libgstfestival_la_LIBADD = $(FESTIVAL_LIBS) libgstfestival_la_LIBADD = $(GST_LIBS) $(GST_PLUGINS_BASE_LIBS) \ - -lgstaudio-0.10 $(WINSOCK2_LIBS) + -lgstaudio-1.0 $(WINSOCK2_LIBS) libgstfestival_la_LDFLAGS = $(GST_PLUGIN_LDFLAGS) libgstfestival_la_LIBTOOLFLAGS = --tag=disable-static @@ -23,5 +23,5 @@ Android.mk: Makefile.am $(BUILT_SOURCES) $(libgstfestival_la_LIBADD) \ -ldl \ -:PASSTHROUGH LOCAL_ARM_MODE:=arm \ - LOCAL_MODULE_PATH:='$$(TARGET_OUT)/lib/gstreamer-0.10' \ + LOCAL_MODULE_PATH:='$$(TARGET_OUT)/lib/gstreamer-1.0' \ > $@ diff --git a/gst/festival/Makefile.in b/gst/festival/Makefile.in index cc9cf4a6..d3a5efd3 100644 --- a/gst/festival/Makefile.in +++ b/gst/festival/Makefile.in @@ -1,4 +1,4 @@ -# Makefile.in generated by automake 1.11.5 from Makefile.am. +# Makefile.in generated by automake 1.11.6 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, @@ -237,11 +237,10 @@ DIRECT3D_LIBS = @DIRECT3D_LIBS@ DIRECTDRAW_LIBS = @DIRECTDRAW_LIBS@ DIRECTFB_CFLAGS = @DIRECTFB_CFLAGS@ DIRECTFB_LIBS = @DIRECTFB_LIBS@ +DIRECTSHOW_LIBS = @DIRECTSHOW_LIBS@ DIRECTSOUND_LIBS = @DIRECTSOUND_LIBS@ DIRECTX_CFLAGS = @DIRECTX_CFLAGS@ DIRECTX_LDFLAGS = @DIRECTX_LDFLAGS@ -DIVXDEC_LIBS = @DIVXDEC_LIBS@ -DIVXENC_LIBS = @DIVXENC_LIBS@ DLLTOOL = @DLLTOOL@ DSYMUTIL = @DSYMUTIL@ DTS_LIBS = @DTS_LIBS@ @@ -276,7 +275,9 @@ GIO_LIBS = @GIO_LIBS@ GLIB_CFLAGS = @GLIB_CFLAGS@ GLIB_COMPILE_SCHEMAS = @GLIB_COMPILE_SCHEMAS@ GLIB_EXTRA_CFLAGS = @GLIB_EXTRA_CFLAGS@ +GLIB_GENMARSHAL = @GLIB_GENMARSHAL@ GLIB_LIBS = @GLIB_LIBS@ +GLIB_MKENUMS = @GLIB_MKENUMS@ GLIB_PREFIX = @GLIB_PREFIX@ GLIB_REQ = @GLIB_REQ@ GME_LIBS = @GME_LIBS@ @@ -352,13 +353,14 @@ HAVE_CXX = @HAVE_CXX@ HAVE_DIRECT3D = @HAVE_DIRECT3D@ HAVE_DIRECT3D9 = @HAVE_DIRECT3D9@ HAVE_DIRECTDRAW = @HAVE_DIRECTDRAW@ +HAVE_DIRECTSHOW = @HAVE_DIRECTSHOW@ HAVE_DIRECTSOUND = @HAVE_DIRECTSOUND@ HAVE_DTS = @HAVE_DTS@ HAVE_FAAC = @HAVE_FAAC@ HAVE_FAAD = @HAVE_FAAD@ HAVE_FLITE = @HAVE_FLITE@ HAVE_GSM = @HAVE_GSM@ -HAVE_JP2K = @HAVE_JP2K@ +HAVE_JASPER = @HAVE_JASPER@ HAVE_NAS = @HAVE_NAS@ HAVE_VPX = @HAVE_VPX@ HAVE_WILDMIDI = @HAVE_WILDMIDI@ @@ -372,7 +374,7 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ INTLLIBS = @INTLLIBS@ INTL_MACOSX_LIBS = @INTL_MACOSX_LIBS@ -JP2K_LIBS = @JP2K_LIBS@ +JASPER_LIBS = @JASPER_LIBS@ KATE_CFLAGS = @KATE_CFLAGS@ KATE_LIBS = @KATE_LIBS@ LD = @LD@ @@ -408,6 +410,8 @@ MODPLUG_CFLAGS = @MODPLUG_CFLAGS@ MODPLUG_LIBS = @MODPLUG_LIBS@ MPEG2ENC_CFLAGS = @MPEG2ENC_CFLAGS@ MPEG2ENC_LIBS = @MPEG2ENC_LIBS@ +MPG123_CFLAGS = @MPG123_CFLAGS@ +MPG123_LIBS = @MPG123_LIBS@ MPLEX_CFLAGS = @MPLEX_CFLAGS@ MPLEX_LDFLAGS = @MPLEX_LDFLAGS@ MPLEX_LIBS = @MPLEX_LIBS@ @@ -604,7 +608,7 @@ libgstfestival_la_CFLAGS = $(GST_CFLAGS) $(GST_PLUGINS_BASE_CFLAGS) # we use net connection now... perhaps use the lib later # libgstfestival_la_LIBADD = $(FESTIVAL_LIBS) libgstfestival_la_LIBADD = $(GST_LIBS) $(GST_PLUGINS_BASE_LIBS) \ - -lgstaudio-0.10 $(WINSOCK2_LIBS) + -lgstaudio-1.0 $(WINSOCK2_LIBS) libgstfestival_la_LDFLAGS = $(GST_PLUGIN_LDFLAGS) libgstfestival_la_LIBTOOLFLAGS = --tag=disable-static @@ -938,7 +942,7 @@ Android.mk: Makefile.am $(BUILT_SOURCES) $(libgstfestival_la_LIBADD) \ -ldl \ -:PASSTHROUGH LOCAL_ARM_MODE:=arm \ - LOCAL_MODULE_PATH:='$$(TARGET_OUT)/lib/gstreamer-0.10' \ + LOCAL_MODULE_PATH:='$$(TARGET_OUT)/lib/gstreamer-1.0' \ > $@ # Tell versions [3.59,3.63) of GNU make to not export all variables. diff --git a/gst/festival/gstfestival.c b/gst/festival/gstfestival.c index cb962ef0..08adf8c3 100644 --- a/gst/festival/gstfestival.c +++ b/gst/festival/gstfestival.c @@ -110,11 +110,8 @@ GST_DEBUG_CATEGORY_STATIC (festival_debug); static void gst_festival_finalize (GObject * object); -static void gst_festival_base_init (gpointer g_class); -static void gst_festival_class_init (GstFestivalClass * klass); -static void gst_festival_init (GstFestival * festival); - -static GstFlowReturn gst_festival_chain (GstPad * pad, GstBuffer * buf); +static GstFlowReturn gst_festival_chain (GstPad * pad, GstObject * parent, + GstBuffer * buf); static GstStateChangeReturn gst_festival_change_state (GstElement * element, GstStateChange transition); @@ -149,54 +146,11 @@ enum /* FILL ME */ }; -static GstElementClass *parent_class = NULL; - /*static guint gst_festival_signals[LAST_SIGNAL] = { 0 }; */ -GType -gst_festival_get_type (void) -{ - static GType festival_type = 0; - - if (!festival_type) { - static const GTypeInfo festival_info = { - sizeof (GstFestivalClass), - gst_festival_base_init, - NULL, - (GClassInitFunc) gst_festival_class_init, - NULL, - NULL, - sizeof (GstFestival), - 0, - (GInstanceInitFunc) gst_festival_init, - }; - - festival_type = - g_type_register_static (GST_TYPE_ELEMENT, "GstFestival", &festival_info, - 0); - } - return festival_type; -} +G_DEFINE_TYPE (GstFestival, gst_festival, GST_TYPE_ELEMENT) -static void -gst_festival_base_init (gpointer g_class) -{ - GstElementClass *element_class = GST_ELEMENT_CLASS (g_class); - - /* register pads */ - gst_element_class_add_pad_template (element_class, - gst_static_pad_template_get (&sink_template_factory)); - gst_element_class_add_pad_template (element_class, - gst_static_pad_template_get (&src_template_factory)); - - gst_element_class_set_details_simple (element_class, - "Festival Text-to-Speech synthesizer", "Filter/Effect/Audio", - "Synthesizes plain text into audio", - "Wim Taymans <wim.taymans@chello.be>"); -} - -static void -gst_festival_class_init (GstFestivalClass * klass) + static void gst_festival_class_init (GstFestivalClass * klass) { GObjectClass *gobject_class; GstElementClass *gstelement_class; @@ -204,11 +158,20 @@ gst_festival_class_init (GstFestivalClass * klass) gobject_class = G_OBJECT_CLASS (klass); gstelement_class = GST_ELEMENT_CLASS (klass); - parent_class = g_type_class_peek_parent (klass); - gobject_class->finalize = GST_DEBUG_FUNCPTR (gst_festival_finalize); gstelement_class->change_state = GST_DEBUG_FUNCPTR (gst_festival_change_state); + + /* register pads */ + gst_element_class_add_pad_template (gstelement_class, + gst_static_pad_template_get (&sink_template_factory)); + gst_element_class_add_pad_template (gstelement_class, + gst_static_pad_template_get (&src_template_factory)); + + gst_element_class_set_details_simple (gstelement_class, + "Festival Text-to-Speech synthesizer", "Filter/Effect/Audio", + "Synthesizes plain text into audio", + "Wim Taymans <wim.taymans@gmail.com>"); } static void @@ -233,7 +196,7 @@ gst_festival_finalize (GObject * object) g_free (festival->info); - G_OBJECT_CLASS (parent_class)->finalize (object); + G_OBJECT_CLASS (gst_festival_parent_class)->finalize (object); } static gboolean @@ -252,7 +215,6 @@ read_response (GstFestival * festival) n += read (fd, ack + n, 3 - n); ack[3] = '\0'; GST_DEBUG_OBJECT (festival, "got response %s", ack); - if (strcmp (ack, "WV\n") == 0) { GstBuffer *buffer; @@ -262,12 +224,8 @@ read_response (GstFestival * festival) filesize); /* push contents as a buffer */ - buffer = gst_buffer_new (); - GST_BUFFER_SIZE (buffer) = (filesize); - GST_BUFFER_DATA (buffer) = (guint8 *) data; - GST_BUFFER_MALLOCDATA (buffer) = (guint8 *) data; + buffer = gst_buffer_new_wrapped (data, filesize); GST_BUFFER_TIMESTAMP (buffer) = GST_CLOCK_TIME_NONE; - gst_pad_push (festival->srcpad, buffer); } else if (strcmp (ack, "LP\n") == 0) { @@ -292,17 +250,19 @@ read_response (GstFestival * festival) } static GstFlowReturn -gst_festival_chain (GstPad * pad, GstBuffer * buf) +gst_festival_chain (GstPad * pad, GstObject * parent, GstBuffer * buf) { GstFlowReturn ret = GST_FLOW_OK; GstFestival *festival; + GstMapInfo info; guint8 *p, *ep; gint f; FILE *fd; - festival = GST_FESTIVAL (GST_PAD_PARENT (pad)); + festival = GST_FESTIVAL (parent); - GST_LOG_OBJECT (festival, "Got text buffer, %u bytes", GST_BUFFER_SIZE (buf)); + GST_LOG_OBJECT (festival, "Got text buffer, %" G_GSIZE_FORMAT " bytes", + gst_buffer_get_size (buf)); f = dup (festival->info->server_fd); if (f < 0) @@ -323,8 +283,9 @@ gst_festival_chain (GstPad * pad, GstBuffer * buf) } fprintf (fd, "(tts_textall \""); - p = GST_BUFFER_DATA (buf); - ep = p + GST_BUFFER_SIZE (buf); + gst_buffer_map (buf, &info, GST_MAP_READ); + p = info.data; + ep = p + info.size; for (; p < ep && (*p != '\0'); p++) { if ((*p == '"') || (*p == '\\')) { putc ('\\', fd); @@ -334,6 +295,7 @@ gst_festival_chain (GstPad * pad, GstBuffer * buf) } fprintf (fd, "\" \"%s\")\n", festival->info->text_mode); fclose (fd); + gst_buffer_unmap (buf, &info); GST_DEBUG_OBJECT (festival, "issued tts_textall command"); @@ -524,8 +486,9 @@ gst_festival_change_state (GstElement * element, GstStateChange transition) } } - if (GST_ELEMENT_CLASS (parent_class)->change_state) - return GST_ELEMENT_CLASS (parent_class)->change_state (element, transition); + if (GST_ELEMENT_CLASS (gst_festival_parent_class)->change_state) + return GST_ELEMENT_CLASS (gst_festival_parent_class)->change_state (element, + transition); return GST_STATE_CHANGE_SUCCESS; } diff --git a/gst/fieldanalysis/Makefile.in b/gst/fieldanalysis/Makefile.in index 96221608..0019258b 100644 --- a/gst/fieldanalysis/Makefile.in +++ b/gst/fieldanalysis/Makefile.in @@ -1,4 +1,4 @@ -# Makefile.in generated by automake 1.11.5 from Makefile.am. +# Makefile.in generated by automake 1.11.6 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, @@ -265,11 +265,10 @@ DIRECT3D_LIBS = @DIRECT3D_LIBS@ DIRECTDRAW_LIBS = @DIRECTDRAW_LIBS@ DIRECTFB_CFLAGS = @DIRECTFB_CFLAGS@ DIRECTFB_LIBS = @DIRECTFB_LIBS@ +DIRECTSHOW_LIBS = @DIRECTSHOW_LIBS@ DIRECTSOUND_LIBS = @DIRECTSOUND_LIBS@ DIRECTX_CFLAGS = @DIRECTX_CFLAGS@ DIRECTX_LDFLAGS = @DIRECTX_LDFLAGS@ -DIVXDEC_LIBS = @DIVXDEC_LIBS@ -DIVXENC_LIBS = @DIVXENC_LIBS@ DLLTOOL = @DLLTOOL@ DSYMUTIL = @DSYMUTIL@ DTS_LIBS = @DTS_LIBS@ @@ -304,7 +303,9 @@ GIO_LIBS = @GIO_LIBS@ GLIB_CFLAGS = @GLIB_CFLAGS@ GLIB_COMPILE_SCHEMAS = @GLIB_COMPILE_SCHEMAS@ GLIB_EXTRA_CFLAGS = @GLIB_EXTRA_CFLAGS@ +GLIB_GENMARSHAL = @GLIB_GENMARSHAL@ GLIB_LIBS = @GLIB_LIBS@ +GLIB_MKENUMS = @GLIB_MKENUMS@ GLIB_PREFIX = @GLIB_PREFIX@ GLIB_REQ = @GLIB_REQ@ GME_LIBS = @GME_LIBS@ @@ -380,13 +381,14 @@ HAVE_CXX = @HAVE_CXX@ HAVE_DIRECT3D = @HAVE_DIRECT3D@ HAVE_DIRECT3D9 = @HAVE_DIRECT3D9@ HAVE_DIRECTDRAW = @HAVE_DIRECTDRAW@ +HAVE_DIRECTSHOW = @HAVE_DIRECTSHOW@ HAVE_DIRECTSOUND = @HAVE_DIRECTSOUND@ HAVE_DTS = @HAVE_DTS@ HAVE_FAAC = @HAVE_FAAC@ HAVE_FAAD = @HAVE_FAAD@ HAVE_FLITE = @HAVE_FLITE@ HAVE_GSM = @HAVE_GSM@ -HAVE_JP2K = @HAVE_JP2K@ +HAVE_JASPER = @HAVE_JASPER@ HAVE_NAS = @HAVE_NAS@ HAVE_VPX = @HAVE_VPX@ HAVE_WILDMIDI = @HAVE_WILDMIDI@ @@ -400,7 +402,7 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ INTLLIBS = @INTLLIBS@ INTL_MACOSX_LIBS = @INTL_MACOSX_LIBS@ -JP2K_LIBS = @JP2K_LIBS@ +JASPER_LIBS = @JASPER_LIBS@ KATE_CFLAGS = @KATE_CFLAGS@ KATE_LIBS = @KATE_LIBS@ LD = @LD@ @@ -436,6 +438,8 @@ MODPLUG_CFLAGS = @MODPLUG_CFLAGS@ MODPLUG_LIBS = @MODPLUG_LIBS@ MPEG2ENC_CFLAGS = @MPEG2ENC_CFLAGS@ MPEG2ENC_LIBS = @MPEG2ENC_LIBS@ +MPG123_CFLAGS = @MPG123_CFLAGS@ +MPG123_LIBS = @MPG123_LIBS@ MPLEX_CFLAGS = @MPLEX_CFLAGS@ MPLEX_LDFLAGS = @MPLEX_LDFLAGS@ MPLEX_LIBS = @MPLEX_LIBS@ diff --git a/gst/fieldanalysis/gstfieldanalysis.c b/gst/fieldanalysis/gstfieldanalysis.c index 489a3988..7597c156 100644 --- a/gst/fieldanalysis/gstfieldanalysis.c +++ b/gst/fieldanalysis/gstfieldanalysis.c @@ -846,8 +846,8 @@ same_parity_sad (GstFieldAnalysis * filter, FieldAnalysisFields * fields) sum = 0.0f; for (j = 0; j < (filter->height >> 1); j++) { guint32 tempsum = 0; - orc_same_parity_sad_planar_yuv (&tempsum, f1j, f2j, noise_floor, - filter->width); + fieldanalysis_orc_same_parity_sad_planar_yuv (&tempsum, f1j, f2j, + noise_floor, filter->width); sum += tempsum; f1j += stridex2; f2j += stridex2; @@ -875,8 +875,8 @@ same_parity_ssd (GstFieldAnalysis * filter, FieldAnalysisFields * fields) sum = 0.0f; for (j = 0; j < (filter->height >> 1); j++) { guint32 tempsum = 0; - orc_same_parity_ssd_planar_yuv (&tempsum, f1j, f2j, noise_floor, - filter->width); + fieldanalysis_orc_same_parity_ssd_planar_yuv (&tempsum, f1j, f2j, + noise_floor, filter->width); sum += tempsum; f1j += stridex2; f2j += stridex2; @@ -915,7 +915,7 @@ same_parity_3_tap (GstFieldAnalysis * filter, FieldAnalysisFields * fields) if (diff > noise_floor) sum += diff; - orc_same_parity_3_tap_planar_yuv (&tempsum, f1j, &f1j[incr], + fieldanalysis_orc_same_parity_3_tap_planar_yuv (&tempsum, f1j, &f1j[incr], &f1j[incr << 1], f2j, &f2j[incr], &f2j[incr << 1], noise_floor, filter->width - 1); sum += tempsum; @@ -972,8 +972,8 @@ opposite_parity_5_tap (GstFieldAnalysis * filter, FieldAnalysisFields * fields) fjp2 = fj + stridex2; tempsum = 0; - orc_opposite_parity_5_tap_planar_yuv (&tempsum, fjp2, fjp1, fj, fjp1, fjp2, - noise_floor, filter->width); + fieldanalysis_orc_opposite_parity_5_tap_planar_yuv (&tempsum, fjp2, fjp1, fj, + fjp1, fjp2, noise_floor, filter->width); sum += tempsum; for (j = 1; j < (filter->height >> 1) - 1; j++) { @@ -985,8 +985,8 @@ opposite_parity_5_tap (GstFieldAnalysis * filter, FieldAnalysisFields * fields) fjp2 += stridex2; tempsum = 0; - orc_opposite_parity_5_tap_planar_yuv (&tempsum, fjm2, fjm1, fj, fjp1, fjp2, - noise_floor, filter->width); + fieldanalysis_orc_opposite_parity_5_tap_planar_yuv (&tempsum, fjm2, fjm1, + fj, fjp1, fjp2, noise_floor, filter->width); sum += tempsum; } @@ -997,8 +997,8 @@ opposite_parity_5_tap (GstFieldAnalysis * filter, FieldAnalysisFields * fields) fj = fjp2; tempsum = 0; - orc_opposite_parity_5_tap_planar_yuv (&tempsum, fjm2, fjm1, fj, fjm1, fjm2, - noise_floor, filter->width); + fieldanalysis_orc_opposite_parity_5_tap_planar_yuv (&tempsum, fjm2, fjm1, fj, + fjm1, fjm2, noise_floor, filter->width); sum += tempsum; return sum / ((6.0f / 2.0f) * filter->width * filter->height); /* 1 + 4 + 1 == 3 + 3 == 6; field is half height */ diff --git a/gst/fieldanalysis/gstfieldanalysisorc-dist.c b/gst/fieldanalysis/gstfieldanalysisorc-dist.c index cb7ff7a7..25c36b2c 100644 --- a/gst/fieldanalysis/gstfieldanalysisorc-dist.c +++ b/gst/fieldanalysis/gstfieldanalysisorc-dist.c @@ -82,21 +82,22 @@ typedef union #ifndef DISABLE_ORC #include <orc/orc.h> #endif -void orc_same_parity_sad_planar_yuv (guint32 * ORC_RESTRICT a1, +void fieldanalysis_orc_same_parity_sad_planar_yuv (guint32 * ORC_RESTRICT a1, const orc_uint8 * ORC_RESTRICT s1, const orc_uint8 * ORC_RESTRICT s2, int p2, int n); -void orc_same_parity_ssd_planar_yuv (guint32 * ORC_RESTRICT a1, +void fieldanalysis_orc_same_parity_ssd_planar_yuv (guint32 * ORC_RESTRICT a1, const orc_uint8 * ORC_RESTRICT s1, const orc_uint8 * ORC_RESTRICT s2, int p2, int n); -void orc_same_parity_3_tap_planar_yuv (guint32 * ORC_RESTRICT a1, +void fieldanalysis_orc_same_parity_3_tap_planar_yuv (guint32 * ORC_RESTRICT a1, const orc_uint8 * ORC_RESTRICT s1, const orc_uint8 * ORC_RESTRICT s2, const orc_uint8 * ORC_RESTRICT s3, const orc_uint8 * ORC_RESTRICT s4, const orc_uint8 * ORC_RESTRICT s5, const orc_uint8 * ORC_RESTRICT s6, int p2, int n); -void orc_opposite_parity_5_tap_planar_yuv (guint32 * ORC_RESTRICT a1, - const orc_uint8 * ORC_RESTRICT s1, const orc_uint8 * ORC_RESTRICT s2, - const orc_uint8 * ORC_RESTRICT s3, const orc_uint8 * ORC_RESTRICT s4, - const orc_uint8 * ORC_RESTRICT s5, int p2, int n); +void fieldanalysis_orc_opposite_parity_5_tap_planar_yuv (guint32 * + ORC_RESTRICT a1, const orc_uint8 * ORC_RESTRICT s1, + const orc_uint8 * ORC_RESTRICT s2, const orc_uint8 * ORC_RESTRICT s3, + const orc_uint8 * ORC_RESTRICT s4, const orc_uint8 * ORC_RESTRICT s5, + int p2, int n); /* begin Orc C target preamble */ @@ -143,10 +144,10 @@ void orc_opposite_parity_5_tap_planar_yuv (guint32 * ORC_RESTRICT a1, -/* orc_same_parity_sad_planar_yuv */ +/* fieldanalysis_orc_same_parity_sad_planar_yuv */ #ifdef DISABLE_ORC void -orc_same_parity_sad_planar_yuv (guint32 * ORC_RESTRICT a1, +fieldanalysis_orc_same_parity_sad_planar_yuv (guint32 * ORC_RESTRICT a1, const orc_uint8 * ORC_RESTRICT s1, const orc_uint8 * ORC_RESTRICT s2, int p2, int n) { @@ -199,7 +200,8 @@ orc_same_parity_sad_planar_yuv (guint32 * ORC_RESTRICT a1, #else static void -_backup_orc_same_parity_sad_planar_yuv (OrcExecutor * ORC_RESTRICT ex) +_backup_fieldanalysis_orc_same_parity_sad_planar_yuv (OrcExecutor * + ORC_RESTRICT ex) { int i; int n = ex->n; @@ -250,7 +252,7 @@ _backup_orc_same_parity_sad_planar_yuv (OrcExecutor * ORC_RESTRICT ex) } void -orc_same_parity_sad_planar_yuv (guint32 * ORC_RESTRICT a1, +fieldanalysis_orc_same_parity_sad_planar_yuv (guint32 * ORC_RESTRICT a1, const orc_uint8 * ORC_RESTRICT s1, const orc_uint8 * ORC_RESTRICT s2, int p2, int n) { @@ -265,9 +267,9 @@ orc_same_parity_sad_planar_yuv (guint32 * ORC_RESTRICT a1, OrcProgram *p; p = orc_program_new (); - orc_program_set_name (p, "orc_same_parity_sad_planar_yuv"); + orc_program_set_name (p, "fieldanalysis_orc_same_parity_sad_planar_yuv"); orc_program_set_backup_function (p, - _backup_orc_same_parity_sad_planar_yuv); + _backup_fieldanalysis_orc_same_parity_sad_planar_yuv); orc_program_add_source (p, 1, "s1"); orc_program_add_source (p, 1, "s2"); orc_program_add_accumulator (p, 4, "a1"); @@ -316,10 +318,10 @@ orc_same_parity_sad_planar_yuv (guint32 * ORC_RESTRICT a1, #endif -/* orc_same_parity_ssd_planar_yuv */ +/* fieldanalysis_orc_same_parity_ssd_planar_yuv */ #ifdef DISABLE_ORC void -orc_same_parity_ssd_planar_yuv (guint32 * ORC_RESTRICT a1, +fieldanalysis_orc_same_parity_ssd_planar_yuv (guint32 * ORC_RESTRICT a1, const orc_uint8 * ORC_RESTRICT s1, const orc_uint8 * ORC_RESTRICT s2, int p2, int n) { @@ -369,7 +371,8 @@ orc_same_parity_ssd_planar_yuv (guint32 * ORC_RESTRICT a1, #else static void -_backup_orc_same_parity_ssd_planar_yuv (OrcExecutor * ORC_RESTRICT ex) +_backup_fieldanalysis_orc_same_parity_ssd_planar_yuv (OrcExecutor * + ORC_RESTRICT ex) { int i; int n = ex->n; @@ -417,7 +420,7 @@ _backup_orc_same_parity_ssd_planar_yuv (OrcExecutor * ORC_RESTRICT ex) } void -orc_same_parity_ssd_planar_yuv (guint32 * ORC_RESTRICT a1, +fieldanalysis_orc_same_parity_ssd_planar_yuv (guint32 * ORC_RESTRICT a1, const orc_uint8 * ORC_RESTRICT s1, const orc_uint8 * ORC_RESTRICT s2, int p2, int n) { @@ -432,9 +435,9 @@ orc_same_parity_ssd_planar_yuv (guint32 * ORC_RESTRICT a1, OrcProgram *p; p = orc_program_new (); - orc_program_set_name (p, "orc_same_parity_ssd_planar_yuv"); + orc_program_set_name (p, "fieldanalysis_orc_same_parity_ssd_planar_yuv"); orc_program_set_backup_function (p, - _backup_orc_same_parity_ssd_planar_yuv); + _backup_fieldanalysis_orc_same_parity_ssd_planar_yuv); orc_program_add_source (p, 1, "s1"); orc_program_add_source (p, 1, "s2"); orc_program_add_accumulator (p, 4, "a1"); @@ -481,10 +484,10 @@ orc_same_parity_ssd_planar_yuv (guint32 * ORC_RESTRICT a1, #endif -/* orc_same_parity_3_tap_planar_yuv */ +/* fieldanalysis_orc_same_parity_3_tap_planar_yuv */ #ifdef DISABLE_ORC void -orc_same_parity_3_tap_planar_yuv (guint32 * ORC_RESTRICT a1, +fieldanalysis_orc_same_parity_3_tap_planar_yuv (guint32 * ORC_RESTRICT a1, const orc_uint8 * ORC_RESTRICT s1, const orc_uint8 * ORC_RESTRICT s2, const orc_uint8 * ORC_RESTRICT s3, const orc_uint8 * ORC_RESTRICT s4, const orc_uint8 * ORC_RESTRICT s5, const orc_uint8 * ORC_RESTRICT s6, @@ -589,7 +592,8 @@ orc_same_parity_3_tap_planar_yuv (guint32 * ORC_RESTRICT a1, #else static void -_backup_orc_same_parity_3_tap_planar_yuv (OrcExecutor * ORC_RESTRICT ex) +_backup_fieldanalysis_orc_same_parity_3_tap_planar_yuv (OrcExecutor * + ORC_RESTRICT ex) { int i; int n = ex->n; @@ -690,7 +694,7 @@ _backup_orc_same_parity_3_tap_planar_yuv (OrcExecutor * ORC_RESTRICT ex) } void -orc_same_parity_3_tap_planar_yuv (guint32 * ORC_RESTRICT a1, +fieldanalysis_orc_same_parity_3_tap_planar_yuv (guint32 * ORC_RESTRICT a1, const orc_uint8 * ORC_RESTRICT s1, const orc_uint8 * ORC_RESTRICT s2, const orc_uint8 * ORC_RESTRICT s3, const orc_uint8 * ORC_RESTRICT s4, const orc_uint8 * ORC_RESTRICT s5, const orc_uint8 * ORC_RESTRICT s6, @@ -707,9 +711,10 @@ orc_same_parity_3_tap_planar_yuv (guint32 * ORC_RESTRICT a1, OrcProgram *p; p = orc_program_new (); - orc_program_set_name (p, "orc_same_parity_3_tap_planar_yuv"); + orc_program_set_name (p, + "fieldanalysis_orc_same_parity_3_tap_planar_yuv"); orc_program_set_backup_function (p, - _backup_orc_same_parity_3_tap_planar_yuv); + _backup_fieldanalysis_orc_same_parity_3_tap_planar_yuv); orc_program_add_source (p, 1, "s1"); orc_program_add_source (p, 1, "s2"); orc_program_add_source (p, 1, "s3"); @@ -791,10 +796,10 @@ orc_same_parity_3_tap_planar_yuv (guint32 * ORC_RESTRICT a1, #endif -/* orc_opposite_parity_5_tap_planar_yuv */ +/* fieldanalysis_orc_opposite_parity_5_tap_planar_yuv */ #ifdef DISABLE_ORC void -orc_opposite_parity_5_tap_planar_yuv (guint32 * ORC_RESTRICT a1, +fieldanalysis_orc_opposite_parity_5_tap_planar_yuv (guint32 * ORC_RESTRICT a1, const orc_uint8 * ORC_RESTRICT s1, const orc_uint8 * ORC_RESTRICT s2, const orc_uint8 * ORC_RESTRICT s3, const orc_uint8 * ORC_RESTRICT s4, const orc_uint8 * ORC_RESTRICT s5, int p2, int n) @@ -896,7 +901,8 @@ orc_opposite_parity_5_tap_planar_yuv (guint32 * ORC_RESTRICT a1, #else static void -_backup_orc_opposite_parity_5_tap_planar_yuv (OrcExecutor * ORC_RESTRICT ex) +_backup_fieldanalysis_orc_opposite_parity_5_tap_planar_yuv (OrcExecutor * + ORC_RESTRICT ex) { int i; int n = ex->n; @@ -995,7 +1001,7 @@ _backup_orc_opposite_parity_5_tap_planar_yuv (OrcExecutor * ORC_RESTRICT ex) } void -orc_opposite_parity_5_tap_planar_yuv (guint32 * ORC_RESTRICT a1, +fieldanalysis_orc_opposite_parity_5_tap_planar_yuv (guint32 * ORC_RESTRICT a1, const orc_uint8 * ORC_RESTRICT s1, const orc_uint8 * ORC_RESTRICT s2, const orc_uint8 * ORC_RESTRICT s3, const orc_uint8 * ORC_RESTRICT s4, const orc_uint8 * ORC_RESTRICT s5, int p2, int n) @@ -1011,9 +1017,10 @@ orc_opposite_parity_5_tap_planar_yuv (guint32 * ORC_RESTRICT a1, OrcProgram *p; p = orc_program_new (); - orc_program_set_name (p, "orc_opposite_parity_5_tap_planar_yuv"); + orc_program_set_name (p, + "fieldanalysis_orc_opposite_parity_5_tap_planar_yuv"); orc_program_set_backup_function (p, - _backup_orc_opposite_parity_5_tap_planar_yuv); + _backup_fieldanalysis_orc_opposite_parity_5_tap_planar_yuv); orc_program_add_source (p, 1, "s1"); orc_program_add_source (p, 1, "s2"); orc_program_add_source (p, 1, "s3"); diff --git a/gst/fieldanalysis/gstfieldanalysisorc-dist.h b/gst/fieldanalysis/gstfieldanalysisorc-dist.h index 40a64ee9..7bf58dab 100644 --- a/gst/fieldanalysis/gstfieldanalysisorc-dist.h +++ b/gst/fieldanalysis/gstfieldanalysisorc-dist.h @@ -67,10 +67,10 @@ typedef union { orc_int64 i; double f; orc_int32 x2[2]; float x2f[2]; orc_int16 #define ORC_RESTRICT #endif #endif -void orc_same_parity_sad_planar_yuv (guint32 * ORC_RESTRICT a1, const orc_uint8 * ORC_RESTRICT s1, const orc_uint8 * ORC_RESTRICT s2, int p2, int n); -void orc_same_parity_ssd_planar_yuv (guint32 * ORC_RESTRICT a1, const orc_uint8 * ORC_RESTRICT s1, const orc_uint8 * ORC_RESTRICT s2, int p2, int n); -void orc_same_parity_3_tap_planar_yuv (guint32 * ORC_RESTRICT a1, const orc_uint8 * ORC_RESTRICT s1, const orc_uint8 * ORC_RESTRICT s2, const orc_uint8 * ORC_RESTRICT s3, const orc_uint8 * ORC_RESTRICT s4, const orc_uint8 * ORC_RESTRICT s5, const orc_uint8 * ORC_RESTRICT s6, int p2, int n); -void orc_opposite_parity_5_tap_planar_yuv (guint32 * ORC_RESTRICT a1, const orc_uint8 * ORC_RESTRICT s1, const orc_uint8 * ORC_RESTRICT s2, const orc_uint8 * ORC_RESTRICT s3, const orc_uint8 * ORC_RESTRICT s4, const orc_uint8 * ORC_RESTRICT s5, int p2, int n); +void fieldanalysis_orc_same_parity_sad_planar_yuv (guint32 * ORC_RESTRICT a1, const orc_uint8 * ORC_RESTRICT s1, const orc_uint8 * ORC_RESTRICT s2, int p2, int n); +void fieldanalysis_orc_same_parity_ssd_planar_yuv (guint32 * ORC_RESTRICT a1, const orc_uint8 * ORC_RESTRICT s1, const orc_uint8 * ORC_RESTRICT s2, int p2, int n); +void fieldanalysis_orc_same_parity_3_tap_planar_yuv (guint32 * ORC_RESTRICT a1, const orc_uint8 * ORC_RESTRICT s1, const orc_uint8 * ORC_RESTRICT s2, const orc_uint8 * ORC_RESTRICT s3, const orc_uint8 * ORC_RESTRICT s4, const orc_uint8 * ORC_RESTRICT s5, const orc_uint8 * ORC_RESTRICT s6, int p2, int n); +void fieldanalysis_orc_opposite_parity_5_tap_planar_yuv (guint32 * ORC_RESTRICT a1, const orc_uint8 * ORC_RESTRICT s1, const orc_uint8 * ORC_RESTRICT s2, const orc_uint8 * ORC_RESTRICT s3, const orc_uint8 * ORC_RESTRICT s4, const orc_uint8 * ORC_RESTRICT s5, int p2, int n); #ifdef __cplusplus } diff --git a/gst/fieldanalysis/gstfieldanalysisorc.orc b/gst/fieldanalysis/gstfieldanalysisorc.orc index 95ae0cf4..131e5fa7 100644 --- a/gst/fieldanalysis/gstfieldanalysisorc.orc +++ b/gst/fieldanalysis/gstfieldanalysisorc.orc @@ -1,5 +1,5 @@ -.function orc_same_parity_sad_planar_yuv +.function fieldanalysis_orc_same_parity_sad_planar_yuv .accumulator 4 a1 guint32 .source 1 s1 .source 1 s2 @@ -20,7 +20,7 @@ andl t3, t3, t4 accl a1, t3 -.function orc_same_parity_ssd_planar_yuv +.function fieldanalysis_orc_same_parity_ssd_planar_yuv .accumulator 4 a1 guint32 .source 1 s1 .source 1 s2 @@ -40,7 +40,7 @@ andl t3, t3, t4 accl a1, t3 -.function orc_same_parity_3_tap_planar_yuv +.function fieldanalysis_orc_same_parity_3_tap_planar_yuv .accumulator 4 a1 guint32 .source 1 s1 .source 1 s2 @@ -79,7 +79,7 @@ andl t7, t7, t8 accl a1, t7 -.function orc_opposite_parity_5_tap_planar_yuv +.function fieldanalysis_orc_opposite_parity_5_tap_planar_yuv .accumulator 4 a1 guint32 .source 1 s1 .source 1 s2 diff --git a/gst/freeverb/Makefile.in b/gst/freeverb/Makefile.in index f5df5039..8cbfd38c 100644 --- a/gst/freeverb/Makefile.in +++ b/gst/freeverb/Makefile.in @@ -1,4 +1,4 @@ -# Makefile.in generated by automake 1.11.5 from Makefile.am. +# Makefile.in generated by automake 1.11.6 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, @@ -237,11 +237,10 @@ DIRECT3D_LIBS = @DIRECT3D_LIBS@ DIRECTDRAW_LIBS = @DIRECTDRAW_LIBS@ DIRECTFB_CFLAGS = @DIRECTFB_CFLAGS@ DIRECTFB_LIBS = @DIRECTFB_LIBS@ +DIRECTSHOW_LIBS = @DIRECTSHOW_LIBS@ DIRECTSOUND_LIBS = @DIRECTSOUND_LIBS@ DIRECTX_CFLAGS = @DIRECTX_CFLAGS@ DIRECTX_LDFLAGS = @DIRECTX_LDFLAGS@ -DIVXDEC_LIBS = @DIVXDEC_LIBS@ -DIVXENC_LIBS = @DIVXENC_LIBS@ DLLTOOL = @DLLTOOL@ DSYMUTIL = @DSYMUTIL@ DTS_LIBS = @DTS_LIBS@ @@ -276,7 +275,9 @@ GIO_LIBS = @GIO_LIBS@ GLIB_CFLAGS = @GLIB_CFLAGS@ GLIB_COMPILE_SCHEMAS = @GLIB_COMPILE_SCHEMAS@ GLIB_EXTRA_CFLAGS = @GLIB_EXTRA_CFLAGS@ +GLIB_GENMARSHAL = @GLIB_GENMARSHAL@ GLIB_LIBS = @GLIB_LIBS@ +GLIB_MKENUMS = @GLIB_MKENUMS@ GLIB_PREFIX = @GLIB_PREFIX@ GLIB_REQ = @GLIB_REQ@ GME_LIBS = @GME_LIBS@ @@ -352,13 +353,14 @@ HAVE_CXX = @HAVE_CXX@ HAVE_DIRECT3D = @HAVE_DIRECT3D@ HAVE_DIRECT3D9 = @HAVE_DIRECT3D9@ HAVE_DIRECTDRAW = @HAVE_DIRECTDRAW@ +HAVE_DIRECTSHOW = @HAVE_DIRECTSHOW@ HAVE_DIRECTSOUND = @HAVE_DIRECTSOUND@ HAVE_DTS = @HAVE_DTS@ HAVE_FAAC = @HAVE_FAAC@ HAVE_FAAD = @HAVE_FAAD@ HAVE_FLITE = @HAVE_FLITE@ HAVE_GSM = @HAVE_GSM@ -HAVE_JP2K = @HAVE_JP2K@ +HAVE_JASPER = @HAVE_JASPER@ HAVE_NAS = @HAVE_NAS@ HAVE_VPX = @HAVE_VPX@ HAVE_WILDMIDI = @HAVE_WILDMIDI@ @@ -372,7 +374,7 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ INTLLIBS = @INTLLIBS@ INTL_MACOSX_LIBS = @INTL_MACOSX_LIBS@ -JP2K_LIBS = @JP2K_LIBS@ +JASPER_LIBS = @JASPER_LIBS@ KATE_CFLAGS = @KATE_CFLAGS@ KATE_LIBS = @KATE_LIBS@ LD = @LD@ @@ -408,6 +410,8 @@ MODPLUG_CFLAGS = @MODPLUG_CFLAGS@ MODPLUG_LIBS = @MODPLUG_LIBS@ MPEG2ENC_CFLAGS = @MPEG2ENC_CFLAGS@ MPEG2ENC_LIBS = @MPEG2ENC_LIBS@ +MPG123_CFLAGS = @MPG123_CFLAGS@ +MPG123_LIBS = @MPG123_LIBS@ MPLEX_CFLAGS = @MPLEX_CFLAGS@ MPLEX_LDFLAGS = @MPLEX_LDFLAGS@ MPLEX_LIBS = @MPLEX_LIBS@ diff --git a/gst/freeze/Makefile.in b/gst/freeze/Makefile.in index 3e444579..ca35249f 100644 --- a/gst/freeze/Makefile.in +++ b/gst/freeze/Makefile.in @@ -1,4 +1,4 @@ -# Makefile.in generated by automake 1.11.5 from Makefile.am. +# Makefile.in generated by automake 1.11.6 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, @@ -236,11 +236,10 @@ DIRECT3D_LIBS = @DIRECT3D_LIBS@ DIRECTDRAW_LIBS = @DIRECTDRAW_LIBS@ DIRECTFB_CFLAGS = @DIRECTFB_CFLAGS@ DIRECTFB_LIBS = @DIRECTFB_LIBS@ +DIRECTSHOW_LIBS = @DIRECTSHOW_LIBS@ DIRECTSOUND_LIBS = @DIRECTSOUND_LIBS@ DIRECTX_CFLAGS = @DIRECTX_CFLAGS@ DIRECTX_LDFLAGS = @DIRECTX_LDFLAGS@ -DIVXDEC_LIBS = @DIVXDEC_LIBS@ -DIVXENC_LIBS = @DIVXENC_LIBS@ DLLTOOL = @DLLTOOL@ DSYMUTIL = @DSYMUTIL@ DTS_LIBS = @DTS_LIBS@ @@ -275,7 +274,9 @@ GIO_LIBS = @GIO_LIBS@ GLIB_CFLAGS = @GLIB_CFLAGS@ GLIB_COMPILE_SCHEMAS = @GLIB_COMPILE_SCHEMAS@ GLIB_EXTRA_CFLAGS = @GLIB_EXTRA_CFLAGS@ +GLIB_GENMARSHAL = @GLIB_GENMARSHAL@ GLIB_LIBS = @GLIB_LIBS@ +GLIB_MKENUMS = @GLIB_MKENUMS@ GLIB_PREFIX = @GLIB_PREFIX@ GLIB_REQ = @GLIB_REQ@ GME_LIBS = @GME_LIBS@ @@ -351,13 +352,14 @@ HAVE_CXX = @HAVE_CXX@ HAVE_DIRECT3D = @HAVE_DIRECT3D@ HAVE_DIRECT3D9 = @HAVE_DIRECT3D9@ HAVE_DIRECTDRAW = @HAVE_DIRECTDRAW@ +HAVE_DIRECTSHOW = @HAVE_DIRECTSHOW@ HAVE_DIRECTSOUND = @HAVE_DIRECTSOUND@ HAVE_DTS = @HAVE_DTS@ HAVE_FAAC = @HAVE_FAAC@ HAVE_FAAD = @HAVE_FAAD@ HAVE_FLITE = @HAVE_FLITE@ HAVE_GSM = @HAVE_GSM@ -HAVE_JP2K = @HAVE_JP2K@ +HAVE_JASPER = @HAVE_JASPER@ HAVE_NAS = @HAVE_NAS@ HAVE_VPX = @HAVE_VPX@ HAVE_WILDMIDI = @HAVE_WILDMIDI@ @@ -371,7 +373,7 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ INTLLIBS = @INTLLIBS@ INTL_MACOSX_LIBS = @INTL_MACOSX_LIBS@ -JP2K_LIBS = @JP2K_LIBS@ +JASPER_LIBS = @JASPER_LIBS@ KATE_CFLAGS = @KATE_CFLAGS@ KATE_LIBS = @KATE_LIBS@ LD = @LD@ @@ -407,6 +409,8 @@ MODPLUG_CFLAGS = @MODPLUG_CFLAGS@ MODPLUG_LIBS = @MODPLUG_LIBS@ MPEG2ENC_CFLAGS = @MPEG2ENC_CFLAGS@ MPEG2ENC_LIBS = @MPEG2ENC_LIBS@ +MPG123_CFLAGS = @MPG123_CFLAGS@ +MPG123_LIBS = @MPG123_LIBS@ MPLEX_CFLAGS = @MPLEX_CFLAGS@ MPLEX_LDFLAGS = @MPLEX_LDFLAGS@ MPLEX_LIBS = @MPLEX_LIBS@ diff --git a/gst/freeze/gstfreeze.c b/gst/freeze/gstfreeze.c index 9d50828b..f4022b86 100644 --- a/gst/freeze/gstfreeze.c +++ b/gst/freeze/gstfreeze.c @@ -316,7 +316,7 @@ gst_freeze_sink_activate_pull (GstPad * sinkpad, gboolean active) if (active) { /* if we have a scheduler we can start the task */ result = gst_pad_start_task (sinkpad, - (GstTaskFunction) gst_freeze_loop, sinkpad); + (GstTaskFunction) gst_freeze_loop, sinkpad, NULL); } else { result = gst_pad_stop_task (sinkpad); } diff --git a/gst/frei0r/Makefile.in b/gst/frei0r/Makefile.in index 50849e6b..de9f6060 100644 --- a/gst/frei0r/Makefile.in +++ b/gst/frei0r/Makefile.in @@ -1,4 +1,4 @@ -# Makefile.in generated by automake 1.11.5 from Makefile.am. +# Makefile.in generated by automake 1.11.6 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, @@ -240,11 +240,10 @@ DIRECT3D_LIBS = @DIRECT3D_LIBS@ DIRECTDRAW_LIBS = @DIRECTDRAW_LIBS@ DIRECTFB_CFLAGS = @DIRECTFB_CFLAGS@ DIRECTFB_LIBS = @DIRECTFB_LIBS@ +DIRECTSHOW_LIBS = @DIRECTSHOW_LIBS@ DIRECTSOUND_LIBS = @DIRECTSOUND_LIBS@ DIRECTX_CFLAGS = @DIRECTX_CFLAGS@ DIRECTX_LDFLAGS = @DIRECTX_LDFLAGS@ -DIVXDEC_LIBS = @DIVXDEC_LIBS@ -DIVXENC_LIBS = @DIVXENC_LIBS@ DLLTOOL = @DLLTOOL@ DSYMUTIL = @DSYMUTIL@ DTS_LIBS = @DTS_LIBS@ @@ -279,7 +278,9 @@ GIO_LIBS = @GIO_LIBS@ GLIB_CFLAGS = @GLIB_CFLAGS@ GLIB_COMPILE_SCHEMAS = @GLIB_COMPILE_SCHEMAS@ GLIB_EXTRA_CFLAGS = @GLIB_EXTRA_CFLAGS@ +GLIB_GENMARSHAL = @GLIB_GENMARSHAL@ GLIB_LIBS = @GLIB_LIBS@ +GLIB_MKENUMS = @GLIB_MKENUMS@ GLIB_PREFIX = @GLIB_PREFIX@ GLIB_REQ = @GLIB_REQ@ GME_LIBS = @GME_LIBS@ @@ -355,13 +356,14 @@ HAVE_CXX = @HAVE_CXX@ HAVE_DIRECT3D = @HAVE_DIRECT3D@ HAVE_DIRECT3D9 = @HAVE_DIRECT3D9@ HAVE_DIRECTDRAW = @HAVE_DIRECTDRAW@ +HAVE_DIRECTSHOW = @HAVE_DIRECTSHOW@ HAVE_DIRECTSOUND = @HAVE_DIRECTSOUND@ HAVE_DTS = @HAVE_DTS@ HAVE_FAAC = @HAVE_FAAC@ HAVE_FAAD = @HAVE_FAAD@ HAVE_FLITE = @HAVE_FLITE@ HAVE_GSM = @HAVE_GSM@ -HAVE_JP2K = @HAVE_JP2K@ +HAVE_JASPER = @HAVE_JASPER@ HAVE_NAS = @HAVE_NAS@ HAVE_VPX = @HAVE_VPX@ HAVE_WILDMIDI = @HAVE_WILDMIDI@ @@ -375,7 +377,7 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ INTLLIBS = @INTLLIBS@ INTL_MACOSX_LIBS = @INTL_MACOSX_LIBS@ -JP2K_LIBS = @JP2K_LIBS@ +JASPER_LIBS = @JASPER_LIBS@ KATE_CFLAGS = @KATE_CFLAGS@ KATE_LIBS = @KATE_LIBS@ LD = @LD@ @@ -411,6 +413,8 @@ MODPLUG_CFLAGS = @MODPLUG_CFLAGS@ MODPLUG_LIBS = @MODPLUG_LIBS@ MPEG2ENC_CFLAGS = @MPEG2ENC_CFLAGS@ MPEG2ENC_LIBS = @MPEG2ENC_LIBS@ +MPG123_CFLAGS = @MPG123_CFLAGS@ +MPG123_LIBS = @MPG123_LIBS@ MPLEX_CFLAGS = @MPLEX_CFLAGS@ MPLEX_LDFLAGS = @MPLEX_LDFLAGS@ MPLEX_LIBS = @MPLEX_LIBS@ diff --git a/gst/gaudieffects/Makefile.in b/gst/gaudieffects/Makefile.in index 30dc31a9..d5b47bd5 100644 --- a/gst/gaudieffects/Makefile.in +++ b/gst/gaudieffects/Makefile.in @@ -1,4 +1,4 @@ -# Makefile.in generated by automake 1.11.5 from Makefile.am. +# Makefile.in generated by automake 1.11.6 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, @@ -271,11 +271,10 @@ DIRECT3D_LIBS = @DIRECT3D_LIBS@ DIRECTDRAW_LIBS = @DIRECTDRAW_LIBS@ DIRECTFB_CFLAGS = @DIRECTFB_CFLAGS@ DIRECTFB_LIBS = @DIRECTFB_LIBS@ +DIRECTSHOW_LIBS = @DIRECTSHOW_LIBS@ DIRECTSOUND_LIBS = @DIRECTSOUND_LIBS@ DIRECTX_CFLAGS = @DIRECTX_CFLAGS@ DIRECTX_LDFLAGS = @DIRECTX_LDFLAGS@ -DIVXDEC_LIBS = @DIVXDEC_LIBS@ -DIVXENC_LIBS = @DIVXENC_LIBS@ DLLTOOL = @DLLTOOL@ DSYMUTIL = @DSYMUTIL@ DTS_LIBS = @DTS_LIBS@ @@ -310,7 +309,9 @@ GIO_LIBS = @GIO_LIBS@ GLIB_CFLAGS = @GLIB_CFLAGS@ GLIB_COMPILE_SCHEMAS = @GLIB_COMPILE_SCHEMAS@ GLIB_EXTRA_CFLAGS = @GLIB_EXTRA_CFLAGS@ +GLIB_GENMARSHAL = @GLIB_GENMARSHAL@ GLIB_LIBS = @GLIB_LIBS@ +GLIB_MKENUMS = @GLIB_MKENUMS@ GLIB_PREFIX = @GLIB_PREFIX@ GLIB_REQ = @GLIB_REQ@ GME_LIBS = @GME_LIBS@ @@ -386,13 +387,14 @@ HAVE_CXX = @HAVE_CXX@ HAVE_DIRECT3D = @HAVE_DIRECT3D@ HAVE_DIRECT3D9 = @HAVE_DIRECT3D9@ HAVE_DIRECTDRAW = @HAVE_DIRECTDRAW@ +HAVE_DIRECTSHOW = @HAVE_DIRECTSHOW@ HAVE_DIRECTSOUND = @HAVE_DIRECTSOUND@ HAVE_DTS = @HAVE_DTS@ HAVE_FAAC = @HAVE_FAAC@ HAVE_FAAD = @HAVE_FAAD@ HAVE_FLITE = @HAVE_FLITE@ HAVE_GSM = @HAVE_GSM@ -HAVE_JP2K = @HAVE_JP2K@ +HAVE_JASPER = @HAVE_JASPER@ HAVE_NAS = @HAVE_NAS@ HAVE_VPX = @HAVE_VPX@ HAVE_WILDMIDI = @HAVE_WILDMIDI@ @@ -406,7 +408,7 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ INTLLIBS = @INTLLIBS@ INTL_MACOSX_LIBS = @INTL_MACOSX_LIBS@ -JP2K_LIBS = @JP2K_LIBS@ +JASPER_LIBS = @JASPER_LIBS@ KATE_CFLAGS = @KATE_CFLAGS@ KATE_LIBS = @KATE_LIBS@ LD = @LD@ @@ -442,6 +444,8 @@ MODPLUG_CFLAGS = @MODPLUG_CFLAGS@ MODPLUG_LIBS = @MODPLUG_LIBS@ MPEG2ENC_CFLAGS = @MPEG2ENC_CFLAGS@ MPEG2ENC_LIBS = @MPEG2ENC_LIBS@ +MPG123_CFLAGS = @MPG123_CFLAGS@ +MPG123_LIBS = @MPG123_LIBS@ MPLEX_CFLAGS = @MPLEX_CFLAGS@ MPLEX_LDFLAGS = @MPLEX_LDFLAGS@ MPLEX_LIBS = @MPLEX_LIBS@ diff --git a/gst/gaudieffects/gstburn.c b/gst/gaudieffects/gstburn.c index 02d03e7f..c64092ed 100644 --- a/gst/gaudieffects/gstburn.c +++ b/gst/gaudieffects/gstburn.c @@ -256,7 +256,7 @@ gst_burn_transform_frame (GstVideoFilter * vfilter, GST_OBJECT_UNLOCK (filter); /*** Now the image processing work.... ***/ - orc_gaudi_burn (dest, src, adjustment, video_size); + gaudi_orc_burn (dest, src, adjustment, video_size); return GST_FLOW_OK; } diff --git a/gst/gaudieffects/gstgaudieffectsorc-dist.c b/gst/gaudieffects/gstgaudieffectsorc-dist.c index cd9896be..0486e5d4 100644 --- a/gst/gaudieffects/gstgaudieffectsorc-dist.c +++ b/gst/gaudieffects/gstgaudieffectsorc-dist.c @@ -82,7 +82,7 @@ typedef union #ifndef DISABLE_ORC #include <orc/orc.h> #endif -void orc_gaudi_burn (guint32 * ORC_RESTRICT d1, const guint32 * ORC_RESTRICT s1, +void gaudi_orc_burn (guint32 * ORC_RESTRICT d1, const guint32 * ORC_RESTRICT s1, int p1, int n); @@ -130,10 +130,10 @@ void orc_gaudi_burn (guint32 * ORC_RESTRICT d1, const guint32 * ORC_RESTRICT s1, -/* orc_gaudi_burn */ +/* gaudi_orc_burn */ #ifdef DISABLE_ORC void -orc_gaudi_burn (guint32 * ORC_RESTRICT d1, const guint32 * ORC_RESTRICT s1, +gaudi_orc_burn (guint32 * ORC_RESTRICT d1, const guint32 * ORC_RESTRICT s1, int p1, int n) { int i; @@ -246,7 +246,7 @@ orc_gaudi_burn (guint32 * ORC_RESTRICT d1, const guint32 * ORC_RESTRICT s1, #else static void -_backup_orc_gaudi_burn (OrcExecutor * ORC_RESTRICT ex) +_backup_gaudi_orc_burn (OrcExecutor * ORC_RESTRICT ex) { int i; int n = ex->n; @@ -358,7 +358,7 @@ _backup_orc_gaudi_burn (OrcExecutor * ORC_RESTRICT ex) } void -orc_gaudi_burn (guint32 * ORC_RESTRICT d1, const guint32 * ORC_RESTRICT s1, +gaudi_orc_burn (guint32 * ORC_RESTRICT d1, const guint32 * ORC_RESTRICT s1, int p1, int n) { OrcExecutor _ex, *ex = &_ex; @@ -372,8 +372,8 @@ orc_gaudi_burn (guint32 * ORC_RESTRICT d1, const guint32 * ORC_RESTRICT s1, OrcProgram *p; p = orc_program_new (); - orc_program_set_name (p, "orc_gaudi_burn"); - orc_program_set_backup_function (p, _backup_orc_gaudi_burn); + orc_program_set_name (p, "gaudi_orc_burn"); + orc_program_set_backup_function (p, _backup_gaudi_orc_burn); orc_program_add_destination (p, 4, "d1"); orc_program_add_source (p, 4, "s1"); orc_program_add_constant (p, 1, 0x000000ff, "c1"); diff --git a/gst/gaudieffects/gstgaudieffectsorc-dist.h b/gst/gaudieffects/gstgaudieffectsorc-dist.h index 87aed199..09e10e73 100644 --- a/gst/gaudieffects/gstgaudieffectsorc-dist.h +++ b/gst/gaudieffects/gstgaudieffectsorc-dist.h @@ -67,7 +67,7 @@ typedef union { orc_int64 i; double f; orc_int32 x2[2]; float x2f[2]; orc_int16 #define ORC_RESTRICT #endif #endif -void orc_gaudi_burn (guint32 * ORC_RESTRICT d1, const guint32 * ORC_RESTRICT s1, int p1, int n); +void gaudi_orc_burn (guint32 * ORC_RESTRICT d1, const guint32 * ORC_RESTRICT s1, int p1, int n); #ifdef __cplusplus } diff --git a/gst/gaudieffects/gstgaudieffectsorc.orc b/gst/gaudieffects/gstgaudieffectsorc.orc index 5cc74544..a9915fea 100644 --- a/gst/gaudieffects/gstgaudieffectsorc.orc +++ b/gst/gaudieffects/gstgaudieffectsorc.orc @@ -1,5 +1,5 @@ -.function orc_gaudi_burn +.function gaudi_orc_burn .dest 4 dest guint32 .source 4 src guint32 .param 4 adj gint @@ -23,4 +23,4 @@ x4 divluw tmp2, tmp2, a2 # tmp = tmp / a x4 subw tmp2, c255, tmp2 # tmp = 255 - tmp x4 convwb tmp, tmp2 # convert from size 2 to 1 -storel dest, tmp
\ No newline at end of file +storel dest, tmp diff --git a/gst/geometrictransform/Makefile.in b/gst/geometrictransform/Makefile.in index 867422fa..1d43b1e8 100644 --- a/gst/geometrictransform/Makefile.in +++ b/gst/geometrictransform/Makefile.in @@ -1,4 +1,4 @@ -# Makefile.in generated by automake 1.11.5 from Makefile.am. +# Makefile.in generated by automake 1.11.6 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, @@ -259,11 +259,10 @@ DIRECT3D_LIBS = @DIRECT3D_LIBS@ DIRECTDRAW_LIBS = @DIRECTDRAW_LIBS@ DIRECTFB_CFLAGS = @DIRECTFB_CFLAGS@ DIRECTFB_LIBS = @DIRECTFB_LIBS@ +DIRECTSHOW_LIBS = @DIRECTSHOW_LIBS@ DIRECTSOUND_LIBS = @DIRECTSOUND_LIBS@ DIRECTX_CFLAGS = @DIRECTX_CFLAGS@ DIRECTX_LDFLAGS = @DIRECTX_LDFLAGS@ -DIVXDEC_LIBS = @DIVXDEC_LIBS@ -DIVXENC_LIBS = @DIVXENC_LIBS@ DLLTOOL = @DLLTOOL@ DSYMUTIL = @DSYMUTIL@ DTS_LIBS = @DTS_LIBS@ @@ -298,7 +297,9 @@ GIO_LIBS = @GIO_LIBS@ GLIB_CFLAGS = @GLIB_CFLAGS@ GLIB_COMPILE_SCHEMAS = @GLIB_COMPILE_SCHEMAS@ GLIB_EXTRA_CFLAGS = @GLIB_EXTRA_CFLAGS@ +GLIB_GENMARSHAL = @GLIB_GENMARSHAL@ GLIB_LIBS = @GLIB_LIBS@ +GLIB_MKENUMS = @GLIB_MKENUMS@ GLIB_PREFIX = @GLIB_PREFIX@ GLIB_REQ = @GLIB_REQ@ GME_LIBS = @GME_LIBS@ @@ -374,13 +375,14 @@ HAVE_CXX = @HAVE_CXX@ HAVE_DIRECT3D = @HAVE_DIRECT3D@ HAVE_DIRECT3D9 = @HAVE_DIRECT3D9@ HAVE_DIRECTDRAW = @HAVE_DIRECTDRAW@ +HAVE_DIRECTSHOW = @HAVE_DIRECTSHOW@ HAVE_DIRECTSOUND = @HAVE_DIRECTSOUND@ HAVE_DTS = @HAVE_DTS@ HAVE_FAAC = @HAVE_FAAC@ HAVE_FAAD = @HAVE_FAAD@ HAVE_FLITE = @HAVE_FLITE@ HAVE_GSM = @HAVE_GSM@ -HAVE_JP2K = @HAVE_JP2K@ +HAVE_JASPER = @HAVE_JASPER@ HAVE_NAS = @HAVE_NAS@ HAVE_VPX = @HAVE_VPX@ HAVE_WILDMIDI = @HAVE_WILDMIDI@ @@ -394,7 +396,7 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ INTLLIBS = @INTLLIBS@ INTL_MACOSX_LIBS = @INTL_MACOSX_LIBS@ -JP2K_LIBS = @JP2K_LIBS@ +JASPER_LIBS = @JASPER_LIBS@ KATE_CFLAGS = @KATE_CFLAGS@ KATE_LIBS = @KATE_LIBS@ LD = @LD@ @@ -430,6 +432,8 @@ MODPLUG_CFLAGS = @MODPLUG_CFLAGS@ MODPLUG_LIBS = @MODPLUG_LIBS@ MPEG2ENC_CFLAGS = @MPEG2ENC_CFLAGS@ MPEG2ENC_LIBS = @MPEG2ENC_LIBS@ +MPG123_CFLAGS = @MPG123_CFLAGS@ +MPG123_LIBS = @MPG123_LIBS@ MPLEX_CFLAGS = @MPLEX_CFLAGS@ MPLEX_LDFLAGS = @MPLEX_LDFLAGS@ MPLEX_LIBS = @MPLEX_LIBS@ diff --git a/gst/hdvparse/Makefile.in b/gst/hdvparse/Makefile.in index 3f019437..e00625a3 100644 --- a/gst/hdvparse/Makefile.in +++ b/gst/hdvparse/Makefile.in @@ -1,4 +1,4 @@ -# Makefile.in generated by automake 1.11.5 from Makefile.am. +# Makefile.in generated by automake 1.11.6 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, @@ -237,11 +237,10 @@ DIRECT3D_LIBS = @DIRECT3D_LIBS@ DIRECTDRAW_LIBS = @DIRECTDRAW_LIBS@ DIRECTFB_CFLAGS = @DIRECTFB_CFLAGS@ DIRECTFB_LIBS = @DIRECTFB_LIBS@ +DIRECTSHOW_LIBS = @DIRECTSHOW_LIBS@ DIRECTSOUND_LIBS = @DIRECTSOUND_LIBS@ DIRECTX_CFLAGS = @DIRECTX_CFLAGS@ DIRECTX_LDFLAGS = @DIRECTX_LDFLAGS@ -DIVXDEC_LIBS = @DIVXDEC_LIBS@ -DIVXENC_LIBS = @DIVXENC_LIBS@ DLLTOOL = @DLLTOOL@ DSYMUTIL = @DSYMUTIL@ DTS_LIBS = @DTS_LIBS@ @@ -276,7 +275,9 @@ GIO_LIBS = @GIO_LIBS@ GLIB_CFLAGS = @GLIB_CFLAGS@ GLIB_COMPILE_SCHEMAS = @GLIB_COMPILE_SCHEMAS@ GLIB_EXTRA_CFLAGS = @GLIB_EXTRA_CFLAGS@ +GLIB_GENMARSHAL = @GLIB_GENMARSHAL@ GLIB_LIBS = @GLIB_LIBS@ +GLIB_MKENUMS = @GLIB_MKENUMS@ GLIB_PREFIX = @GLIB_PREFIX@ GLIB_REQ = @GLIB_REQ@ GME_LIBS = @GME_LIBS@ @@ -352,13 +353,14 @@ HAVE_CXX = @HAVE_CXX@ HAVE_DIRECT3D = @HAVE_DIRECT3D@ HAVE_DIRECT3D9 = @HAVE_DIRECT3D9@ HAVE_DIRECTDRAW = @HAVE_DIRECTDRAW@ +HAVE_DIRECTSHOW = @HAVE_DIRECTSHOW@ HAVE_DIRECTSOUND = @HAVE_DIRECTSOUND@ HAVE_DTS = @HAVE_DTS@ HAVE_FAAC = @HAVE_FAAC@ HAVE_FAAD = @HAVE_FAAD@ HAVE_FLITE = @HAVE_FLITE@ HAVE_GSM = @HAVE_GSM@ -HAVE_JP2K = @HAVE_JP2K@ +HAVE_JASPER = @HAVE_JASPER@ HAVE_NAS = @HAVE_NAS@ HAVE_VPX = @HAVE_VPX@ HAVE_WILDMIDI = @HAVE_WILDMIDI@ @@ -372,7 +374,7 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ INTLLIBS = @INTLLIBS@ INTL_MACOSX_LIBS = @INTL_MACOSX_LIBS@ -JP2K_LIBS = @JP2K_LIBS@ +JASPER_LIBS = @JASPER_LIBS@ KATE_CFLAGS = @KATE_CFLAGS@ KATE_LIBS = @KATE_LIBS@ LD = @LD@ @@ -408,6 +410,8 @@ MODPLUG_CFLAGS = @MODPLUG_CFLAGS@ MODPLUG_LIBS = @MODPLUG_LIBS@ MPEG2ENC_CFLAGS = @MPEG2ENC_CFLAGS@ MPEG2ENC_LIBS = @MPEG2ENC_LIBS@ +MPG123_CFLAGS = @MPG123_CFLAGS@ +MPG123_LIBS = @MPG123_LIBS@ MPLEX_CFLAGS = @MPLEX_CFLAGS@ MPLEX_LDFLAGS = @MPLEX_LDFLAGS@ MPLEX_LIBS = @MPLEX_LIBS@ diff --git a/gst/hls/Makefile.in b/gst/hls/Makefile.in index 4c9163fa..7e150f13 100644 --- a/gst/hls/Makefile.in +++ b/gst/hls/Makefile.in @@ -1,4 +1,4 @@ -# Makefile.in generated by automake 1.11.5 from Makefile.am. +# Makefile.in generated by automake 1.11.6 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, @@ -241,11 +241,10 @@ DIRECT3D_LIBS = @DIRECT3D_LIBS@ DIRECTDRAW_LIBS = @DIRECTDRAW_LIBS@ DIRECTFB_CFLAGS = @DIRECTFB_CFLAGS@ DIRECTFB_LIBS = @DIRECTFB_LIBS@ +DIRECTSHOW_LIBS = @DIRECTSHOW_LIBS@ DIRECTSOUND_LIBS = @DIRECTSOUND_LIBS@ DIRECTX_CFLAGS = @DIRECTX_CFLAGS@ DIRECTX_LDFLAGS = @DIRECTX_LDFLAGS@ -DIVXDEC_LIBS = @DIVXDEC_LIBS@ -DIVXENC_LIBS = @DIVXENC_LIBS@ DLLTOOL = @DLLTOOL@ DSYMUTIL = @DSYMUTIL@ DTS_LIBS = @DTS_LIBS@ @@ -280,7 +279,9 @@ GIO_LIBS = @GIO_LIBS@ GLIB_CFLAGS = @GLIB_CFLAGS@ GLIB_COMPILE_SCHEMAS = @GLIB_COMPILE_SCHEMAS@ GLIB_EXTRA_CFLAGS = @GLIB_EXTRA_CFLAGS@ +GLIB_GENMARSHAL = @GLIB_GENMARSHAL@ GLIB_LIBS = @GLIB_LIBS@ +GLIB_MKENUMS = @GLIB_MKENUMS@ GLIB_PREFIX = @GLIB_PREFIX@ GLIB_REQ = @GLIB_REQ@ GME_LIBS = @GME_LIBS@ @@ -356,13 +357,14 @@ HAVE_CXX = @HAVE_CXX@ HAVE_DIRECT3D = @HAVE_DIRECT3D@ HAVE_DIRECT3D9 = @HAVE_DIRECT3D9@ HAVE_DIRECTDRAW = @HAVE_DIRECTDRAW@ +HAVE_DIRECTSHOW = @HAVE_DIRECTSHOW@ HAVE_DIRECTSOUND = @HAVE_DIRECTSOUND@ HAVE_DTS = @HAVE_DTS@ HAVE_FAAC = @HAVE_FAAC@ HAVE_FAAD = @HAVE_FAAD@ HAVE_FLITE = @HAVE_FLITE@ HAVE_GSM = @HAVE_GSM@ -HAVE_JP2K = @HAVE_JP2K@ +HAVE_JASPER = @HAVE_JASPER@ HAVE_NAS = @HAVE_NAS@ HAVE_VPX = @HAVE_VPX@ HAVE_WILDMIDI = @HAVE_WILDMIDI@ @@ -376,7 +378,7 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ INTLLIBS = @INTLLIBS@ INTL_MACOSX_LIBS = @INTL_MACOSX_LIBS@ -JP2K_LIBS = @JP2K_LIBS@ +JASPER_LIBS = @JASPER_LIBS@ KATE_CFLAGS = @KATE_CFLAGS@ KATE_LIBS = @KATE_LIBS@ LD = @LD@ @@ -412,6 +414,8 @@ MODPLUG_CFLAGS = @MODPLUG_CFLAGS@ MODPLUG_LIBS = @MODPLUG_LIBS@ MPEG2ENC_CFLAGS = @MPEG2ENC_CFLAGS@ MPEG2ENC_LIBS = @MPEG2ENC_LIBS@ +MPG123_CFLAGS = @MPG123_CFLAGS@ +MPG123_LIBS = @MPG123_LIBS@ MPLEX_CFLAGS = @MPLEX_CFLAGS@ MPLEX_LDFLAGS = @MPLEX_LDFLAGS@ MPLEX_LIBS = @MPLEX_LIBS@ diff --git a/gst/hls/gsthlsdemux.c b/gst/hls/gsthlsdemux.c index 8de5b417..ba9c4d9d 100644 --- a/gst/hls/gsthlsdemux.c +++ b/gst/hls/gsthlsdemux.c @@ -234,14 +234,14 @@ gst_hls_demux_init (GstHLSDemux * demux) /* Updates task */ g_rec_mutex_init (&demux->updates_lock); demux->updates_task = - gst_task_new ((GstTaskFunction) gst_hls_demux_updates_loop, demux); + gst_task_new ((GstTaskFunction) gst_hls_demux_updates_loop, demux, NULL); gst_task_set_lock (demux->updates_task, &demux->updates_lock); g_mutex_init (&demux->updates_timed_lock); /* Streaming task */ g_rec_mutex_init (&demux->stream_lock); demux->stream_task = - gst_task_new ((GstTaskFunction) gst_hls_demux_stream_loop, demux); + gst_task_new ((GstTaskFunction) gst_hls_demux_stream_loop, demux, NULL); gst_task_set_lock (demux->stream_task, &demux->stream_lock); } @@ -602,6 +602,7 @@ static void switch_pads (GstHLSDemux * demux, GstCaps * newcaps) { GstPad *oldpad = demux->srcpad; + gchar *stream_id; GST_DEBUG ("Switching pads (oldpad:%p) with caps: %" GST_PTR_FORMAT, oldpad, newcaps); @@ -614,9 +615,14 @@ switch_pads (GstHLSDemux * demux, GstCaps * newcaps) GST_DEBUG_FUNCPTR (gst_hls_demux_src_query)); gst_pad_set_element_private (demux->srcpad, demux); gst_pad_set_active (demux->srcpad, TRUE); - gst_pad_push_event (demux->srcpad, gst_event_new_stream_start ()); + + stream_id = + gst_pad_create_stream_id (demux->srcpad, GST_ELEMENT_CAST (demux), NULL); + gst_pad_push_event (demux->srcpad, gst_event_new_stream_start (stream_id)); + g_free (stream_id); + gst_pad_set_caps (demux->srcpad, newcaps); - gst_pad_push_event (demux->srcpad, gst_event_new_caps (newcaps)); + gst_element_add_pad (GST_ELEMENT (demux), demux->srcpad); gst_element_no_more_pads (GST_ELEMENT (demux)); @@ -1127,7 +1133,7 @@ gst_hls_demux_switch_playlist (GstHLSDemux * demux) bitrate = (size * 8) / ((double) diff / GST_SECOND); GST_DEBUG ("Downloaded %d bytes in %" GST_TIME_FORMAT ". Bitrate is : %d", - size, GST_TIME_ARGS (diff), bitrate); + (guint) size, GST_TIME_ARGS (diff), bitrate); gst_buffer_unref (buffer); return gst_hls_demux_change_playlist (demux, bitrate * demux->bitrate_limit); diff --git a/gst/hls/gsturidownloader.c b/gst/hls/gsturidownloader.c index 68eefad9..1ef7ddb1 100644 --- a/gst/hls/gsturidownloader.c +++ b/gst/hls/gsturidownloader.c @@ -202,7 +202,7 @@ gst_uri_downloader_bus_handler (GstBus * bus, g_free (dbg_info); /* remove the sync handler to avoid duplicated messages */ - gst_bus_set_sync_handler (downloader->priv->bus, NULL, NULL); + gst_bus_set_sync_handler (downloader->priv->bus, NULL, NULL, NULL); gst_uri_downloader_cancel (downloader); } @@ -248,7 +248,7 @@ gst_uri_downloader_stop (GstUriDownloader * downloader) GST_DEBUG_OBJECT (downloader, "Stopping source element"); /* remove the bus' sync handler */ - gst_bus_set_sync_handler (downloader->priv->bus, NULL, NULL); + gst_bus_set_sync_handler (downloader->priv->bus, NULL, NULL, NULL); /* unlink the source element from the internal pad */ pad = gst_pad_get_peer (downloader->priv->pad); if (pad) { @@ -288,7 +288,8 @@ gst_uri_downloader_set_uri (GstUriDownloader * downloader, const gchar * uri) return FALSE; GST_DEBUG_OBJECT (downloader, "Creating source element for the URI:%s", uri); - downloader->priv->urisrc = gst_element_make_from_uri (GST_URI_SRC, uri, NULL); + downloader->priv->urisrc = + gst_element_make_from_uri (GST_URI_SRC, uri, NULL, NULL); if (!downloader->priv->urisrc) return FALSE; @@ -296,7 +297,7 @@ gst_uri_downloader_set_uri (GstUriDownloader * downloader, const gchar * uri) gst_element_set_bus (GST_ELEMENT (downloader->priv->urisrc), downloader->priv->bus); gst_bus_set_sync_handler (downloader->priv->bus, - gst_uri_downloader_bus_handler, downloader); + gst_uri_downloader_bus_handler, downloader, NULL); pad = gst_element_get_static_pad (downloader->priv->urisrc, "src"); if (!pad) diff --git a/gst/id3tag/Makefile.in b/gst/id3tag/Makefile.in index 68b6f76e..f3886126 100644 --- a/gst/id3tag/Makefile.in +++ b/gst/id3tag/Makefile.in @@ -1,4 +1,4 @@ -# Makefile.in generated by automake 1.11.5 from Makefile.am. +# Makefile.in generated by automake 1.11.6 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, @@ -238,11 +238,10 @@ DIRECT3D_LIBS = @DIRECT3D_LIBS@ DIRECTDRAW_LIBS = @DIRECTDRAW_LIBS@ DIRECTFB_CFLAGS = @DIRECTFB_CFLAGS@ DIRECTFB_LIBS = @DIRECTFB_LIBS@ +DIRECTSHOW_LIBS = @DIRECTSHOW_LIBS@ DIRECTSOUND_LIBS = @DIRECTSOUND_LIBS@ DIRECTX_CFLAGS = @DIRECTX_CFLAGS@ DIRECTX_LDFLAGS = @DIRECTX_LDFLAGS@ -DIVXDEC_LIBS = @DIVXDEC_LIBS@ -DIVXENC_LIBS = @DIVXENC_LIBS@ DLLTOOL = @DLLTOOL@ DSYMUTIL = @DSYMUTIL@ DTS_LIBS = @DTS_LIBS@ @@ -277,7 +276,9 @@ GIO_LIBS = @GIO_LIBS@ GLIB_CFLAGS = @GLIB_CFLAGS@ GLIB_COMPILE_SCHEMAS = @GLIB_COMPILE_SCHEMAS@ GLIB_EXTRA_CFLAGS = @GLIB_EXTRA_CFLAGS@ +GLIB_GENMARSHAL = @GLIB_GENMARSHAL@ GLIB_LIBS = @GLIB_LIBS@ +GLIB_MKENUMS = @GLIB_MKENUMS@ GLIB_PREFIX = @GLIB_PREFIX@ GLIB_REQ = @GLIB_REQ@ GME_LIBS = @GME_LIBS@ @@ -353,13 +354,14 @@ HAVE_CXX = @HAVE_CXX@ HAVE_DIRECT3D = @HAVE_DIRECT3D@ HAVE_DIRECT3D9 = @HAVE_DIRECT3D9@ HAVE_DIRECTDRAW = @HAVE_DIRECTDRAW@ +HAVE_DIRECTSHOW = @HAVE_DIRECTSHOW@ HAVE_DIRECTSOUND = @HAVE_DIRECTSOUND@ HAVE_DTS = @HAVE_DTS@ HAVE_FAAC = @HAVE_FAAC@ HAVE_FAAD = @HAVE_FAAD@ HAVE_FLITE = @HAVE_FLITE@ HAVE_GSM = @HAVE_GSM@ -HAVE_JP2K = @HAVE_JP2K@ +HAVE_JASPER = @HAVE_JASPER@ HAVE_NAS = @HAVE_NAS@ HAVE_VPX = @HAVE_VPX@ HAVE_WILDMIDI = @HAVE_WILDMIDI@ @@ -373,7 +375,7 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ INTLLIBS = @INTLLIBS@ INTL_MACOSX_LIBS = @INTL_MACOSX_LIBS@ -JP2K_LIBS = @JP2K_LIBS@ +JASPER_LIBS = @JASPER_LIBS@ KATE_CFLAGS = @KATE_CFLAGS@ KATE_LIBS = @KATE_LIBS@ LD = @LD@ @@ -409,6 +411,8 @@ MODPLUG_CFLAGS = @MODPLUG_CFLAGS@ MODPLUG_LIBS = @MODPLUG_LIBS@ MPEG2ENC_CFLAGS = @MPEG2ENC_CFLAGS@ MPEG2ENC_LIBS = @MPEG2ENC_LIBS@ +MPG123_CFLAGS = @MPG123_CFLAGS@ +MPG123_LIBS = @MPG123_LIBS@ MPLEX_CFLAGS = @MPLEX_CFLAGS@ MPLEX_LDFLAGS = @MPLEX_LDFLAGS@ MPLEX_LIBS = @MPLEX_LIBS@ diff --git a/gst/inter/Makefile.in b/gst/inter/Makefile.in index 6231d46a..58899ebb 100644 --- a/gst/inter/Makefile.in +++ b/gst/inter/Makefile.in @@ -1,4 +1,4 @@ -# Makefile.in generated by automake 1.11.5 from Makefile.am. +# Makefile.in generated by automake 1.11.6 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, @@ -254,11 +254,10 @@ DIRECT3D_LIBS = @DIRECT3D_LIBS@ DIRECTDRAW_LIBS = @DIRECTDRAW_LIBS@ DIRECTFB_CFLAGS = @DIRECTFB_CFLAGS@ DIRECTFB_LIBS = @DIRECTFB_LIBS@ +DIRECTSHOW_LIBS = @DIRECTSHOW_LIBS@ DIRECTSOUND_LIBS = @DIRECTSOUND_LIBS@ DIRECTX_CFLAGS = @DIRECTX_CFLAGS@ DIRECTX_LDFLAGS = @DIRECTX_LDFLAGS@ -DIVXDEC_LIBS = @DIVXDEC_LIBS@ -DIVXENC_LIBS = @DIVXENC_LIBS@ DLLTOOL = @DLLTOOL@ DSYMUTIL = @DSYMUTIL@ DTS_LIBS = @DTS_LIBS@ @@ -293,7 +292,9 @@ GIO_LIBS = @GIO_LIBS@ GLIB_CFLAGS = @GLIB_CFLAGS@ GLIB_COMPILE_SCHEMAS = @GLIB_COMPILE_SCHEMAS@ GLIB_EXTRA_CFLAGS = @GLIB_EXTRA_CFLAGS@ +GLIB_GENMARSHAL = @GLIB_GENMARSHAL@ GLIB_LIBS = @GLIB_LIBS@ +GLIB_MKENUMS = @GLIB_MKENUMS@ GLIB_PREFIX = @GLIB_PREFIX@ GLIB_REQ = @GLIB_REQ@ GME_LIBS = @GME_LIBS@ @@ -369,13 +370,14 @@ HAVE_CXX = @HAVE_CXX@ HAVE_DIRECT3D = @HAVE_DIRECT3D@ HAVE_DIRECT3D9 = @HAVE_DIRECT3D9@ HAVE_DIRECTDRAW = @HAVE_DIRECTDRAW@ +HAVE_DIRECTSHOW = @HAVE_DIRECTSHOW@ HAVE_DIRECTSOUND = @HAVE_DIRECTSOUND@ HAVE_DTS = @HAVE_DTS@ HAVE_FAAC = @HAVE_FAAC@ HAVE_FAAD = @HAVE_FAAD@ HAVE_FLITE = @HAVE_FLITE@ HAVE_GSM = @HAVE_GSM@ -HAVE_JP2K = @HAVE_JP2K@ +HAVE_JASPER = @HAVE_JASPER@ HAVE_NAS = @HAVE_NAS@ HAVE_VPX = @HAVE_VPX@ HAVE_WILDMIDI = @HAVE_WILDMIDI@ @@ -389,7 +391,7 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ INTLLIBS = @INTLLIBS@ INTL_MACOSX_LIBS = @INTL_MACOSX_LIBS@ -JP2K_LIBS = @JP2K_LIBS@ +JASPER_LIBS = @JASPER_LIBS@ KATE_CFLAGS = @KATE_CFLAGS@ KATE_LIBS = @KATE_LIBS@ LD = @LD@ @@ -425,6 +427,8 @@ MODPLUG_CFLAGS = @MODPLUG_CFLAGS@ MODPLUG_LIBS = @MODPLUG_LIBS@ MPEG2ENC_CFLAGS = @MPEG2ENC_CFLAGS@ MPEG2ENC_LIBS = @MPEG2ENC_LIBS@ +MPG123_CFLAGS = @MPG123_CFLAGS@ +MPG123_LIBS = @MPG123_LIBS@ MPLEX_CFLAGS = @MPLEX_CFLAGS@ MPLEX_LDFLAGS = @MPLEX_LDFLAGS@ MPLEX_LIBS = @MPLEX_LIBS@ diff --git a/gst/inter/gstinteraudiosink.c b/gst/inter/gstinteraudiosink.c index fd5987e3..11ce1bfd 100644 --- a/gst/inter/gstinteraudiosink.c +++ b/gst/inter/gstinteraudiosink.c @@ -160,12 +160,10 @@ gst_inter_audio_sink_class_init (GstInterAudioSinkClass * klass) base_sink_class->unlock_stop = GST_DEBUG_FUNCPTR (gst_inter_audio_sink_unlock_stop); -#if 0 g_object_class_install_property (gobject_class, PROP_CHANNEL, g_param_spec_string ("channel", "Channel", "Channel name to match inter src and sink elements", "default", G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS)); -#endif } static void @@ -334,10 +332,11 @@ gst_inter_audio_sink_render (GstBaseSink * sink, GstBuffer * buffer) g_mutex_lock (interaudiosink->surface->mutex); n = gst_adapter_available (interaudiosink->surface->audio_adapter) / 4; - if (n > (800 * 2 * 2)) { - GST_INFO ("flushing 800 samples"); - gst_adapter_flush (interaudiosink->surface->audio_adapter, 800 * 4); - n -= 800; +#define SIZE 1600 + if (n > (1600 * 3)) { + GST_WARNING ("flushing 800 samples"); + gst_adapter_flush (interaudiosink->surface->audio_adapter, (SIZE / 2) * 4); + n -= (SIZE / 2); } gst_adapter_push (interaudiosink->surface->audio_adapter, gst_buffer_ref (buffer)); diff --git a/gst/inter/gstinteraudiosrc.c b/gst/inter/gstinteraudiosrc.c index de2b2687..3e64eefc 100644 --- a/gst/inter/gstinteraudiosrc.c +++ b/gst/inter/gstinteraudiosrc.c @@ -178,7 +178,7 @@ static void gst_inter_audio_src_init (GstInterAudioSrc * interaudiosrc, GstInterAudioSrcClass * interaudiosrc_class) { - + gst_base_src_set_format (GST_BASE_SRC (interaudiosrc), GST_FORMAT_TIME); gst_base_src_set_live (GST_BASE_SRC (interaudiosrc), TRUE); gst_base_src_set_blocksize (GST_BASE_SRC (interaudiosrc), -1); @@ -393,8 +393,8 @@ gst_inter_audio_src_create (GstBaseSrc * src, guint64 offset, guint size, g_mutex_lock (interaudiosrc->surface->mutex); n = gst_adapter_available (interaudiosrc->surface->audio_adapter) / 4; - if (n > SIZE * 2) { - GST_DEBUG ("flushing %d samples", SIZE / 2); + if (n > SIZE * 3) { + GST_WARNING ("flushing %d samples", SIZE / 2); gst_adapter_flush (interaudiosrc->surface->audio_adapter, (SIZE / 2) * 4); n -= (SIZE / 2); } @@ -409,7 +409,7 @@ gst_inter_audio_src_create (GstBaseSrc * src, guint64 offset, guint size, if (n < SIZE) { GstBuffer *newbuf = gst_buffer_new_and_alloc (SIZE * 4); - GST_DEBUG ("creating %d samples of silence", SIZE - n); + GST_WARNING ("creating %d samples of silence", SIZE - n); memset (GST_BUFFER_DATA (newbuf) + n * 4, 0, SIZE * 4 - n * 4); if (buffer) { memcpy (GST_BUFFER_DATA (newbuf), GST_BUFFER_DATA (buffer), n * 4); diff --git a/gst/interlace/Makefile.in b/gst/interlace/Makefile.in index 38baf82c..c2028d34 100644 --- a/gst/interlace/Makefile.in +++ b/gst/interlace/Makefile.in @@ -1,4 +1,4 @@ -# Makefile.in generated by automake 1.11.5 from Makefile.am. +# Makefile.in generated by automake 1.11.6 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, @@ -234,11 +234,10 @@ DIRECT3D_LIBS = @DIRECT3D_LIBS@ DIRECTDRAW_LIBS = @DIRECTDRAW_LIBS@ DIRECTFB_CFLAGS = @DIRECTFB_CFLAGS@ DIRECTFB_LIBS = @DIRECTFB_LIBS@ +DIRECTSHOW_LIBS = @DIRECTSHOW_LIBS@ DIRECTSOUND_LIBS = @DIRECTSOUND_LIBS@ DIRECTX_CFLAGS = @DIRECTX_CFLAGS@ DIRECTX_LDFLAGS = @DIRECTX_LDFLAGS@ -DIVXDEC_LIBS = @DIVXDEC_LIBS@ -DIVXENC_LIBS = @DIVXENC_LIBS@ DLLTOOL = @DLLTOOL@ DSYMUTIL = @DSYMUTIL@ DTS_LIBS = @DTS_LIBS@ @@ -273,7 +272,9 @@ GIO_LIBS = @GIO_LIBS@ GLIB_CFLAGS = @GLIB_CFLAGS@ GLIB_COMPILE_SCHEMAS = @GLIB_COMPILE_SCHEMAS@ GLIB_EXTRA_CFLAGS = @GLIB_EXTRA_CFLAGS@ +GLIB_GENMARSHAL = @GLIB_GENMARSHAL@ GLIB_LIBS = @GLIB_LIBS@ +GLIB_MKENUMS = @GLIB_MKENUMS@ GLIB_PREFIX = @GLIB_PREFIX@ GLIB_REQ = @GLIB_REQ@ GME_LIBS = @GME_LIBS@ @@ -349,13 +350,14 @@ HAVE_CXX = @HAVE_CXX@ HAVE_DIRECT3D = @HAVE_DIRECT3D@ HAVE_DIRECT3D9 = @HAVE_DIRECT3D9@ HAVE_DIRECTDRAW = @HAVE_DIRECTDRAW@ +HAVE_DIRECTSHOW = @HAVE_DIRECTSHOW@ HAVE_DIRECTSOUND = @HAVE_DIRECTSOUND@ HAVE_DTS = @HAVE_DTS@ HAVE_FAAC = @HAVE_FAAC@ HAVE_FAAD = @HAVE_FAAD@ HAVE_FLITE = @HAVE_FLITE@ HAVE_GSM = @HAVE_GSM@ -HAVE_JP2K = @HAVE_JP2K@ +HAVE_JASPER = @HAVE_JASPER@ HAVE_NAS = @HAVE_NAS@ HAVE_VPX = @HAVE_VPX@ HAVE_WILDMIDI = @HAVE_WILDMIDI@ @@ -369,7 +371,7 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ INTLLIBS = @INTLLIBS@ INTL_MACOSX_LIBS = @INTL_MACOSX_LIBS@ -JP2K_LIBS = @JP2K_LIBS@ +JASPER_LIBS = @JASPER_LIBS@ KATE_CFLAGS = @KATE_CFLAGS@ KATE_LIBS = @KATE_LIBS@ LD = @LD@ @@ -405,6 +407,8 @@ MODPLUG_CFLAGS = @MODPLUG_CFLAGS@ MODPLUG_LIBS = @MODPLUG_LIBS@ MPEG2ENC_CFLAGS = @MPEG2ENC_CFLAGS@ MPEG2ENC_LIBS = @MPEG2ENC_LIBS@ +MPG123_CFLAGS = @MPG123_CFLAGS@ +MPG123_LIBS = @MPG123_LIBS@ MPLEX_CFLAGS = @MPLEX_CFLAGS@ MPLEX_LDFLAGS = @MPLEX_LDFLAGS@ MPLEX_LIBS = @MPLEX_LIBS@ diff --git a/gst/interlace/gstinterlace.c b/gst/interlace/gstinterlace.c index 9fe97e1c..2dfb6235 100644 --- a/gst/interlace/gstinterlace.c +++ b/gst/interlace/gstinterlace.c @@ -86,7 +86,6 @@ struct _GstInterlace GstPad *srcpad; GstPad *sinkpad; - GstCaps *srccaps; /* properties */ gboolean top_field_first; @@ -94,9 +93,7 @@ struct _GstInterlace gboolean allow_rff; /* state */ - int width; - int height; - GstVideoFormat format; + GstVideoInfo info; int src_fps_n; int src_fps_d; @@ -158,80 +155,43 @@ static GstStaticPadTemplate gst_interlace_src_template = GST_STATIC_PAD_TEMPLATE ("src", GST_PAD_SRC, GST_PAD_ALWAYS, - GST_STATIC_CAPS (GST_VIDEO_CAPS_YUV + GST_STATIC_CAPS (GST_VIDEO_CAPS_MAKE ("{AYUV,YUY2,UYVY,I420,YV12,Y42B,Y444,NV12,NV21}") - ",interlaced=TRUE") + ",interlace-mode={interleaved,mixed}") ); static GstStaticPadTemplate gst_interlace_sink_template = GST_STATIC_PAD_TEMPLATE ("sink", GST_PAD_SINK, GST_PAD_ALWAYS, - GST_STATIC_CAPS (GST_VIDEO_CAPS_YUV + GST_STATIC_CAPS (GST_VIDEO_CAPS_MAKE ("{AYUV,YUY2,UYVY,I420,YV12,Y42B,Y444,NV12,NV21}") - ",interlaced=FALSE") + ",interlace-mode=progressive") ); -static void gst_interlace_base_init (gpointer g_class); -static void gst_interlace_class_init (GstInterlaceClass * klass); -static void gst_interlace_init (GstInterlace * interlace); -static gboolean gst_interlace_sink_event (GstPad * pad, GstEvent * event); -static GstFlowReturn gst_interlace_chain (GstPad * pad, GstBuffer * buffer); +GType gst_interlace_get_type (void); +static void gst_interlace_finalize (GObject * obj); static void gst_interlace_set_property (GObject * object, guint prop_id, const GValue * value, GParamSpec * pspec); static void gst_interlace_get_property (GObject * object, guint prop_id, GValue * value, GParamSpec * pspec); -static gboolean gst_interlace_setcaps (GstPad * pad, GstCaps * caps); -static GstCaps *gst_interlace_getcaps (GstPad * pad); -static GstStateChangeReturn gst_interlace_change_state (GstElement * element, - GstStateChange transition); -static void gst_interlace_finalize (GObject * obj); - -static GstElementClass *parent_class = NULL; +static gboolean gst_interlace_sink_event (GstPad * pad, GstObject * parent, + GstEvent * event); +static gboolean gst_interlace_sink_query (GstPad * pad, GstObject * parent, + GstQuery * query); +static GstFlowReturn gst_interlace_chain (GstPad * pad, GstObject * parent, + GstBuffer * buffer); +static gboolean gst_interlace_src_query (GstPad * pad, GstObject * parent, + GstQuery * query); -static GType -gst_interlace_get_type (void) -{ - static GType interlace_type = 0; - - if (!interlace_type) { - static const GTypeInfo interlace_info = { - sizeof (GstInterlaceClass), - gst_interlace_base_init, - NULL, - (GClassInitFunc) gst_interlace_class_init, - NULL, - NULL, - sizeof (GstInterlace), - 0, - (GInstanceInitFunc) gst_interlace_init, - }; - - interlace_type = g_type_register_static (GST_TYPE_ELEMENT, - "GstInterlace", &interlace_info, 0); - } - - return interlace_type; -} - -static void -gst_interlace_base_init (gpointer g_class) -{ - GstElementClass *element_class = GST_ELEMENT_CLASS (g_class); - - gst_element_class_set_details_simple (element_class, - "Interlace filter", "Filter/Video", - "Creates an interlaced video from progressive frames", - "David Schleef <ds@schleef.org>"); +static GstStateChangeReturn gst_interlace_change_state (GstElement * element, + GstStateChange transition); - gst_element_class_add_pad_template (element_class, - gst_static_pad_template_get (&gst_interlace_sink_template)); - gst_element_class_add_pad_template (element_class, - gst_static_pad_template_get (&gst_interlace_src_template)); -} +#define gst_interlace_parent_class parent_class +G_DEFINE_TYPE (GstInterlace, gst_interlace, GST_TYPE_ELEMENT); static void gst_interlace_class_init (GstInterlaceClass * klass) @@ -245,8 +205,6 @@ gst_interlace_class_init (GstInterlaceClass * klass) object_class->get_property = gst_interlace_get_property; object_class->finalize = gst_interlace_finalize; - element_class->change_state = gst_interlace_change_state; - g_object_class_install_property (object_class, PROP_TOP_FIELD_FIRST, g_param_spec_boolean ("top-field-first", "top field first", "Interlaced stream should be top field first", FALSE, @@ -268,15 +226,22 @@ gst_interlace_class_init (GstInterlaceClass * klass) "Allow generation of buffers with RFF flag set, i.e., duration of 3 fields", FALSE, G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS)); + gst_element_class_set_details_simple (element_class, + "Interlace filter", "Filter/Video", + "Creates an interlaced video from progressive frames", + "David Schleef <ds@schleef.org>"); + + gst_element_class_add_pad_template (element_class, + gst_static_pad_template_get (&gst_interlace_sink_template)); + gst_element_class_add_pad_template (element_class, + gst_static_pad_template_get (&gst_interlace_src_template)); + + element_class->change_state = gst_interlace_change_state; } static void gst_interlace_finalize (GObject * obj) { - GstInterlace *interlace = GST_INTERLACE (obj); - - gst_caps_replace (&interlace->srccaps, NULL); - G_OBJECT_CLASS (parent_class)->finalize (obj); } @@ -286,6 +251,10 @@ gst_interlace_reset (GstInterlace * interlace) interlace->phase_index = interlace->pattern_offset; interlace->timebase = GST_CLOCK_TIME_NONE; interlace->field_index = 0; + if (interlace->stored_frame) { + gst_buffer_unref (interlace->stored_frame); + interlace->stored_frame = NULL; + } } static void @@ -294,17 +263,15 @@ gst_interlace_init (GstInterlace * interlace) GST_DEBUG ("gst_interlace_init"); interlace->sinkpad = gst_pad_new_from_static_template (&gst_interlace_sink_template, "sink"); - gst_element_add_pad (GST_ELEMENT (interlace), interlace->sinkpad); gst_pad_set_chain_function (interlace->sinkpad, gst_interlace_chain); - gst_pad_set_setcaps_function (interlace->sinkpad, gst_interlace_setcaps); - gst_pad_set_getcaps_function (interlace->sinkpad, gst_interlace_getcaps); gst_pad_set_event_function (interlace->sinkpad, gst_interlace_sink_event); + gst_pad_set_query_function (interlace->sinkpad, gst_interlace_sink_query); + gst_element_add_pad (GST_ELEMENT (interlace), interlace->sinkpad); interlace->srcpad = gst_pad_new_from_static_template (&gst_interlace_src_template, "src"); + gst_pad_set_query_function (interlace->srcpad, gst_interlace_src_query); gst_element_add_pad (GST_ELEMENT (interlace), interlace->srcpad); - gst_pad_set_setcaps_function (interlace->srcpad, gst_interlace_setcaps); - gst_pad_set_getcaps_function (interlace->srcpad, gst_interlace_getcaps); interlace->top_field_first = FALSE; interlace->allow_rff = FALSE; @@ -337,7 +304,7 @@ static const PulldownFormat formats[] = { static void gst_interlace_decorate_buffer (GstInterlace * interlace, GstBuffer * buf, - int n_fields) + int n_fields, gboolean interlaced) { /* field duration = src_fps_d / (2 * src_fps_n) */ if (interlace->src_fps_n == 0) { @@ -353,35 +320,76 @@ gst_interlace_decorate_buffer (GstInterlace * interlace, GstBuffer * buf, gst_util_uint64_scale (GST_SECOND, interlace->src_fps_d * n_fields, interlace->src_fps_n * 2); } - /* increment the buffer timestamp by duration for the next buffer */ - gst_buffer_set_caps (buf, interlace->srccaps); if (interlace->field_index == 0) { - GST_BUFFER_FLAG_SET (buf, GST_VIDEO_BUFFER_TFF); + GST_BUFFER_FLAG_SET (buf, GST_VIDEO_BUFFER_FLAG_TFF); } if (n_fields == 3) { - GST_BUFFER_FLAG_SET (buf, GST_VIDEO_BUFFER_RFF); + GST_BUFFER_FLAG_SET (buf, GST_VIDEO_BUFFER_FLAG_RFF); } if (n_fields == 1) { - GST_BUFFER_FLAG_SET (buf, GST_VIDEO_BUFFER_ONEFIELD); + GST_BUFFER_FLAG_SET (buf, GST_VIDEO_BUFFER_FLAG_ONEFIELD); + } + if (interlace->pattern > GST_INTERLACE_PATTERN_2_2 && n_fields == 2 + && interlaced) { + GST_BUFFER_FLAG_SET (buf, GST_VIDEO_BUFFER_FLAG_INTERLACED); + } +} + +static gboolean +gst_interlace_setcaps (GstInterlace * interlace, GstCaps * caps) +{ + gboolean ret; + GstVideoInfo info; + GstCaps *othercaps; + const PulldownFormat *pdformat; + + if (!gst_video_info_from_caps (&info, caps)) + goto caps_error; + + othercaps = gst_caps_copy (caps); + pdformat = &formats[interlace->pattern]; + + interlace->phase_index = interlace->pattern_offset; + + interlace->src_fps_n = info.fps_n * pdformat->ratio_n; + interlace->src_fps_d = info.fps_d * pdformat->ratio_d; + + if (interlace->pattern > GST_INTERLACE_PATTERN_2_2) { + gst_caps_set_simple (othercaps, "interlace-mode", G_TYPE_STRING, "mixed", + NULL); + } else { + gst_caps_set_simple (othercaps, "interlace-mode", G_TYPE_STRING, + "interleaved", NULL); + } + gst_caps_set_simple (othercaps, "framerate", GST_TYPE_FRACTION, + interlace->src_fps_n, interlace->src_fps_d, NULL); + + ret = gst_pad_set_caps (interlace->srcpad, othercaps); + gst_caps_unref (othercaps); + + interlace->info = info; + + return ret; + +caps_error: + { + GST_DEBUG_OBJECT (interlace, "error parsing caps"); + return FALSE; } } static gboolean -gst_interlace_sink_event (GstPad * pad, GstEvent * event) +gst_interlace_sink_event (GstPad * pad, GstObject * parent, GstEvent * event) { gboolean ret; GstInterlace *interlace; - interlace = GST_INTERLACE (gst_pad_get_parent (pad)); + interlace = GST_INTERLACE (parent); switch (GST_EVENT_TYPE (event)) { case GST_EVENT_FLUSH_START: GST_DEBUG_OBJECT (interlace, "handling FLUSH_START"); - if (interlace->stored_frame) { - gst_buffer_unref (interlace->stored_frame); - interlace->stored_frame = NULL; - } ret = gst_pad_push_event (interlace->srcpad, event); break; case GST_EVENT_FLUSH_STOP: @@ -411,7 +419,7 @@ gst_interlace_sink_event (GstPad * pad, GstEvent * event) num_fields -= 2; gst_interlace_decorate_buffer (interlace, interlace->stored_frame, - n_fields); + n_fields, FALSE); /* ref output_buffer/stored frame because we want to keep it for now * and pushing gives away a ref */ @@ -440,220 +448,174 @@ gst_interlace_sink_event (GstPad * pad, GstEvent * event) ret = gst_pad_push_event (interlace->srcpad, event); break; + case GST_EVENT_CAPS: + { + GstCaps *caps; + + gst_event_parse_caps (event, &caps); + ret = gst_interlace_setcaps (interlace, caps); + gst_event_unref (event); + break; + } default: ret = gst_pad_push_event (interlace->srcpad, event); break; } - g_object_unref (interlace); - return ret; } static GstCaps * -gst_interlace_getcaps (GstPad * pad) +gst_interlace_getcaps (GstPad * pad, GstInterlace * interlace, GstCaps * filter) { - GstInterlace *interlace; GstPad *otherpad; - GstCaps *othercaps; + GstCaps *othercaps, *tcaps; GstCaps *icaps; - interlace = GST_INTERLACE (gst_pad_get_parent (pad)); - otherpad = (pad == interlace->srcpad) ? interlace->sinkpad : interlace->srcpad; - othercaps = gst_pad_peer_get_caps (otherpad); - if (othercaps == NULL) { - icaps = gst_caps_copy (gst_pad_get_pad_template_caps (otherpad)); - } else { - icaps = gst_caps_intersect (othercaps, - gst_pad_get_pad_template_caps (otherpad)); + tcaps = gst_pad_get_pad_template_caps (otherpad); + othercaps = gst_pad_peer_query_caps (otherpad, filter); + + if (othercaps) { + icaps = gst_caps_intersect (othercaps, tcaps); gst_caps_unref (othercaps); + } else { + icaps = tcaps; } - gst_caps_set_simple (icaps, "interlaced", G_TYPE_BOOLEAN, - pad == interlace->srcpad ? TRUE : FALSE, NULL); + if (filter) { + othercaps = gst_caps_intersect (icaps, filter); + gst_caps_unref (icaps); + icaps = othercaps; + } - gst_object_unref (interlace); + icaps = gst_caps_make_writable (icaps); + gst_caps_set_simple (icaps, "interlace-mode", G_TYPE_STRING, + pad == interlace->srcpad ? "mixed" : "progressive", NULL); + + gst_caps_unref (tcaps); return icaps; } static gboolean -gst_interlace_setcaps (GstPad * pad, GstCaps * caps) +gst_interlace_sink_query (GstPad * pad, GstObject * parent, GstQuery * query) { - GstInterlace *interlace; gboolean ret; - int width, height; - GstVideoFormat format; - gboolean interlaced = TRUE; - int fps_n, fps_d; - GstPad *otherpad; - GstCaps *othercaps = NULL; - const PulldownFormat *pdformat; - - interlace = GST_INTERLACE (gst_pad_get_parent (pad)); - - otherpad = - (pad == interlace->srcpad) ? interlace->sinkpad : interlace->srcpad; - - ret = gst_video_format_parse_caps (caps, &format, &width, &height); - gst_video_format_parse_caps_interlaced (caps, &interlaced); - ret &= gst_video_parse_caps_framerate (caps, &fps_n, &fps_d); + GstInterlace *interlace; - if (!ret) - goto error; + interlace = GST_INTERLACE (parent); - othercaps = gst_caps_copy (caps); - pdformat = &formats[interlace->pattern]; + switch (GST_QUERY_TYPE (query)) { + case GST_QUERY_CAPS: + { + GstCaps *filter, *caps; - if (pad == interlace->srcpad) { - gst_caps_set_simple (othercaps, "interlaced", G_TYPE_BOOLEAN, FALSE, NULL); - gst_caps_set_simple (othercaps, "framerate", GST_TYPE_FRACTION, - fps_n * pdformat->ratio_d, fps_d * pdformat->ratio_n, NULL); - } else { - gst_caps_set_simple (othercaps, "interlaced", G_TYPE_BOOLEAN, TRUE, NULL); - gst_caps_set_simple (othercaps, "framerate", GST_TYPE_FRACTION, - fps_n * pdformat->ratio_n, fps_d * pdformat->ratio_d, NULL); + gst_query_parse_caps (query, &filter); + caps = gst_interlace_getcaps (pad, interlace, filter); + gst_query_set_caps_result (query, caps); + gst_caps_unref (caps); + ret = TRUE; + break; + } + default: + ret = gst_pad_query_default (pad, parent, query); + break; } + return ret; +} - ret = gst_pad_set_caps (otherpad, othercaps); - if (!ret) - goto error; +static gboolean +gst_interlace_src_query (GstPad * pad, GstObject * parent, GstQuery * query) +{ + gboolean ret; + GstInterlace *interlace; - interlace->format = format; - interlace->width = width; - interlace->height = height; + interlace = GST_INTERLACE (parent); - interlace->phase_index = interlace->pattern_offset; + switch (GST_QUERY_TYPE (query)) { + case GST_QUERY_CAPS: + { + GstCaps *filter, *caps; - if (pad == interlace->sinkpad) { - gst_caps_replace (&interlace->srccaps, othercaps); - interlace->src_fps_n = fps_n * pdformat->ratio_n; - interlace->src_fps_d = fps_d * pdformat->ratio_d; - } else { - gst_caps_replace (&interlace->srccaps, caps); - interlace->src_fps_n = fps_n; - interlace->src_fps_d = fps_d; + gst_query_parse_caps (query, &filter); + caps = gst_interlace_getcaps (pad, interlace, filter); + gst_query_set_caps_result (query, caps); + gst_caps_unref (caps); + ret = TRUE; + break; + } + default: + ret = gst_pad_query_default (pad, parent, query); + break; } - -error: - if (othercaps) - gst_caps_unref (othercaps); - g_object_unref (interlace); - return ret; } static void -copy_field (GstInterlace * interlace, GstBuffer * d, GstBuffer * s, +copy_field (GstInterlace * interlace, GstBuffer * dest, GstBuffer * src, int field_index) { - int j; - guint8 *dest; - guint8 *src; - int width = interlace->width; - int height = interlace->height; - - if (interlace->format == GST_VIDEO_FORMAT_I420 || - interlace->format == GST_VIDEO_FORMAT_YV12) { - /* planar 4:2:0 */ - for (j = field_index; j < height; j += 2) { - dest = GST_BUFFER_DATA (d) + j * width; - src = GST_BUFFER_DATA (s) + j * width; - memcpy (dest, src, width); - } - for (j = field_index; j < height / 2; j += 2) { - dest = GST_BUFFER_DATA (d) + width * height + j * width / 2; - src = GST_BUFFER_DATA (s) + width * height + j * width / 2; - memcpy (dest, src, width / 2); - } - for (j = field_index; j < height / 2; j += 2) { - dest = - GST_BUFFER_DATA (d) + width * height + width / 2 * height / 2 + - j * width / 2; - src = - GST_BUFFER_DATA (s) + width * height + width / 2 * height / 2 + - j * width / 2; - memcpy (dest, src, width / 2); - } - } else if (interlace->format == GST_VIDEO_FORMAT_UYVY || - interlace->format == GST_VIDEO_FORMAT_YUY2) { - /* packed 4:2:2 */ - for (j = field_index; j < height; j += 2) { - dest = GST_BUFFER_DATA (d) + j * width * 2; - src = GST_BUFFER_DATA (s) + j * width * 2; - memcpy (dest, src, width * 2); - } - } else if (interlace->format == GST_VIDEO_FORMAT_AYUV) { - /* packed 4:4:4 */ - for (j = field_index; j < height; j += 2) { - dest = GST_BUFFER_DATA (d) + j * width * 4; - src = GST_BUFFER_DATA (s) + j * width * 4; - memcpy (dest, src, width * 4); - } - } else if (interlace->format == GST_VIDEO_FORMAT_Y42B) { - /* planar 4:2:2 */ - for (j = field_index; j < height; j += 2) { - dest = GST_BUFFER_DATA (d) + j * width; - src = GST_BUFFER_DATA (s) + j * width; - memcpy (dest, src, width); - } - for (j = field_index; j < height; j += 2) { - dest = GST_BUFFER_DATA (d) + width * height + j * width / 2; - src = GST_BUFFER_DATA (s) + width * height + j * width / 2; - memcpy (dest, src, width / 2); - } - for (j = field_index; j < height; j += 2) { - dest = - GST_BUFFER_DATA (d) + width * height + width / 2 * height + - j * width / 2; - src = - GST_BUFFER_DATA (s) + width * height + width / 2 * height + - j * width / 2; - memcpy (dest, src, width / 2); - } - } else if (interlace->format == GST_VIDEO_FORMAT_Y444) { - /* planar 4:4:4 */ - for (j = field_index; j < height; j += 2) { - dest = GST_BUFFER_DATA (d) + j * width; - src = GST_BUFFER_DATA (s) + j * width; - memcpy (dest, src, width); - } - for (j = field_index; j < height; j += 2) { - dest = GST_BUFFER_DATA (d) + width * height + j * width; - src = GST_BUFFER_DATA (s) + width * height + j * width; - memcpy (dest, src, width); - } - for (j = field_index; j < height; j += 2) { - dest = GST_BUFFER_DATA (d) + width * height + width * height + j * width; - src = GST_BUFFER_DATA (s) + width * height + width * height + j * width; - memcpy (dest, src, width); - } - } else if (interlace->format == GST_VIDEO_FORMAT_NV12 || - interlace->format == GST_VIDEO_FORMAT_NV21) { - /* planar/packed 4:2:0 */ - for (j = field_index; j < height; j += 2) { - dest = GST_BUFFER_DATA (d) + j * width; - src = GST_BUFFER_DATA (s) + j * width; - memcpy (dest, src, width); - } - for (j = field_index; j < height / 2; j += 2) { - dest = GST_BUFFER_DATA (d) + width * height + j * width; - src = GST_BUFFER_DATA (s) + width * height + j * width; - memcpy (dest, src, width); + GstVideoInfo *info = &interlace->info; + gint i, j, n_planes; + guint8 *d, *s; + GstVideoFrame dframe, sframe; + + if (!gst_video_frame_map (&dframe, info, dest, GST_MAP_WRITE)) + goto dest_map_failed; + + if (!gst_video_frame_map (&sframe, info, src, GST_MAP_READ)) + goto src_map_failed; + + n_planes = GST_VIDEO_FRAME_N_PLANES (&dframe); + + for (i = 0; i < n_planes; i++) { + gint cheight, cwidth; + gint ss, ds; + + d = GST_VIDEO_FRAME_PLANE_DATA (&dframe, i); + s = GST_VIDEO_FRAME_PLANE_DATA (&sframe, i); + + ds = GST_VIDEO_FRAME_PLANE_STRIDE (&dframe, i); + ss = GST_VIDEO_FRAME_PLANE_STRIDE (&sframe, i); + + d += field_index * ds; + s += field_index * ss; + + cheight = GST_VIDEO_FRAME_COMP_HEIGHT (&dframe, i); + cwidth = MIN (ABS (ss), ABS (ds)); + + for (j = field_index; j < cheight; j += 2) { + memcpy (d, s, cwidth); + d += ds * 2; + s += ss * 2; } - } else { - g_assert_not_reached (); + } + + gst_video_frame_unmap (&dframe); + gst_video_frame_unmap (&sframe); + return; + +dest_map_failed: + { + GST_ERROR_OBJECT (interlace, "failed to map dest"); + return; + } +src_map_failed: + { + GST_ERROR_OBJECT (interlace, "failed to map src"); + gst_video_frame_unmap (&dframe); + return; } } static GstFlowReturn -gst_interlace_chain (GstPad * pad, GstBuffer * buffer) +gst_interlace_chain (GstPad * pad, GstObject * parent, GstBuffer * buffer) { - GstInterlace *interlace = GST_INTERLACE (gst_pad_get_parent (pad)); + GstInterlace *interlace = GST_INTERLACE (parent); GstFlowReturn ret = GST_FLOW_OK; gint num_fields = 0; int current_fields; @@ -668,10 +630,10 @@ gst_interlace_chain (GstPad * pad, GstBuffer * buffer) GST_DEBUG ("duration %" GST_TIME_FORMAT " flags %04x %s %s %s", GST_TIME_ARGS (GST_BUFFER_DURATION (buffer)), GST_BUFFER_FLAGS (buffer), - (GST_BUFFER_FLAGS (buffer) & GST_VIDEO_BUFFER_TFF) ? "tff" : "", - (GST_BUFFER_FLAGS (buffer) & GST_VIDEO_BUFFER_RFF) ? "rff" : "", - (GST_BUFFER_FLAGS (buffer) & GST_VIDEO_BUFFER_ONEFIELD) ? "onefield" : - ""); + (GST_BUFFER_FLAGS (buffer) & GST_VIDEO_BUFFER_FLAG_TFF) ? "tff" : "", + (GST_BUFFER_FLAGS (buffer) & GST_VIDEO_BUFFER_FLAG_RFF) ? "rff" : "", + (GST_BUFFER_FLAGS (buffer) & GST_VIDEO_BUFFER_FLAG_ONEFIELD) ? "onefield" + : ""); if (GST_BUFFER_FLAGS (buffer) & GST_BUFFER_FLAG_DISCONT) { GST_DEBUG ("discont"); @@ -716,6 +678,7 @@ gst_interlace_chain (GstPad * pad, GstBuffer * buffer) while (num_fields >= 2) { GstBuffer *output_buffer; int n_output_fields; + gboolean interlaced = FALSE; GST_DEBUG ("have %d fields, %d current, %d stored", num_fields, current_fields, interlace->stored_fields); @@ -723,7 +686,7 @@ gst_interlace_chain (GstPad * pad, GstBuffer * buffer) if (interlace->stored_fields > 0) { GST_DEBUG ("1 field from stored, 1 from current"); - output_buffer = gst_buffer_new_and_alloc (GST_BUFFER_SIZE (buffer)); + output_buffer = gst_buffer_new_and_alloc (gst_buffer_get_size (buffer)); /* take the first field from the stored frame */ copy_field (interlace, output_buffer, interlace->stored_frame, interlace->field_index); @@ -732,9 +695,9 @@ gst_interlace_chain (GstPad * pad, GstBuffer * buffer) copy_field (interlace, output_buffer, buffer, interlace->field_index ^ 1); current_fields--; n_output_fields = 2; + interlaced = TRUE; } else { - output_buffer = - gst_buffer_make_metadata_writable (gst_buffer_ref (buffer)); + output_buffer = gst_buffer_make_writable (gst_buffer_ref (buffer)); if (num_fields >= 3 && interlace->allow_rff) { GST_DEBUG ("3 fields from current"); /* take both fields from incoming buffer */ @@ -749,7 +712,8 @@ gst_interlace_chain (GstPad * pad, GstBuffer * buffer) } num_fields -= n_output_fields; - gst_interlace_decorate_buffer (interlace, output_buffer, n_output_fields); + gst_interlace_decorate_buffer (interlace, output_buffer, n_output_fields, + interlaced); interlace->fields_since_timebase += n_output_fields; interlace->field_index ^= (n_output_fields & 1); @@ -758,9 +722,11 @@ gst_interlace_chain (GstPad * pad, GstBuffer * buffer) GST_TIME_ARGS (GST_BUFFER_TIMESTAMP (output_buffer)), GST_TIME_ARGS (GST_BUFFER_DURATION (output_buffer)), GST_BUFFER_FLAGS (output_buffer), - (GST_BUFFER_FLAGS (output_buffer) & GST_VIDEO_BUFFER_TFF) ? "tff" : "", - (GST_BUFFER_FLAGS (output_buffer) & GST_VIDEO_BUFFER_RFF) ? "rff" : "", - (GST_BUFFER_FLAGS (output_buffer) & GST_VIDEO_BUFFER_ONEFIELD) ? + (GST_BUFFER_FLAGS (output_buffer) & GST_VIDEO_BUFFER_FLAG_TFF) ? "tff" : + "", + (GST_BUFFER_FLAGS (output_buffer) & GST_VIDEO_BUFFER_FLAG_RFF) ? "rff" : + "", + (GST_BUFFER_FLAGS (output_buffer) & GST_VIDEO_BUFFER_FLAG_ONEFIELD) ? "onefield" : ""); ret = gst_pad_push (interlace->srcpad, output_buffer); @@ -784,9 +750,6 @@ gst_interlace_chain (GstPad * pad, GstBuffer * buffer) } else { gst_buffer_unref (buffer); } - - gst_object_unref (interlace); - return ret; } @@ -853,10 +816,7 @@ gst_interlace_change_state (GstElement * element, GstStateChange transition) break; } - if (parent_class->change_state) - return parent_class->change_state (element, transition); - - return GST_STATE_CHANGE_SUCCESS; + return GST_ELEMENT_CLASS (parent_class)->change_state (element, transition); } static gboolean diff --git a/gst/ivfparse/Makefile.in b/gst/ivfparse/Makefile.in index bd9e48ba..cc51a5d9 100644 --- a/gst/ivfparse/Makefile.in +++ b/gst/ivfparse/Makefile.in @@ -1,4 +1,4 @@ -# Makefile.in generated by automake 1.11.5 from Makefile.am. +# Makefile.in generated by automake 1.11.6 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, @@ -237,11 +237,10 @@ DIRECT3D_LIBS = @DIRECT3D_LIBS@ DIRECTDRAW_LIBS = @DIRECTDRAW_LIBS@ DIRECTFB_CFLAGS = @DIRECTFB_CFLAGS@ DIRECTFB_LIBS = @DIRECTFB_LIBS@ +DIRECTSHOW_LIBS = @DIRECTSHOW_LIBS@ DIRECTSOUND_LIBS = @DIRECTSOUND_LIBS@ DIRECTX_CFLAGS = @DIRECTX_CFLAGS@ DIRECTX_LDFLAGS = @DIRECTX_LDFLAGS@ -DIVXDEC_LIBS = @DIVXDEC_LIBS@ -DIVXENC_LIBS = @DIVXENC_LIBS@ DLLTOOL = @DLLTOOL@ DSYMUTIL = @DSYMUTIL@ DTS_LIBS = @DTS_LIBS@ @@ -276,7 +275,9 @@ GIO_LIBS = @GIO_LIBS@ GLIB_CFLAGS = @GLIB_CFLAGS@ GLIB_COMPILE_SCHEMAS = @GLIB_COMPILE_SCHEMAS@ GLIB_EXTRA_CFLAGS = @GLIB_EXTRA_CFLAGS@ +GLIB_GENMARSHAL = @GLIB_GENMARSHAL@ GLIB_LIBS = @GLIB_LIBS@ +GLIB_MKENUMS = @GLIB_MKENUMS@ GLIB_PREFIX = @GLIB_PREFIX@ GLIB_REQ = @GLIB_REQ@ GME_LIBS = @GME_LIBS@ @@ -352,13 +353,14 @@ HAVE_CXX = @HAVE_CXX@ HAVE_DIRECT3D = @HAVE_DIRECT3D@ HAVE_DIRECT3D9 = @HAVE_DIRECT3D9@ HAVE_DIRECTDRAW = @HAVE_DIRECTDRAW@ +HAVE_DIRECTSHOW = @HAVE_DIRECTSHOW@ HAVE_DIRECTSOUND = @HAVE_DIRECTSOUND@ HAVE_DTS = @HAVE_DTS@ HAVE_FAAC = @HAVE_FAAC@ HAVE_FAAD = @HAVE_FAAD@ HAVE_FLITE = @HAVE_FLITE@ HAVE_GSM = @HAVE_GSM@ -HAVE_JP2K = @HAVE_JP2K@ +HAVE_JASPER = @HAVE_JASPER@ HAVE_NAS = @HAVE_NAS@ HAVE_VPX = @HAVE_VPX@ HAVE_WILDMIDI = @HAVE_WILDMIDI@ @@ -372,7 +374,7 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ INTLLIBS = @INTLLIBS@ INTL_MACOSX_LIBS = @INTL_MACOSX_LIBS@ -JP2K_LIBS = @JP2K_LIBS@ +JASPER_LIBS = @JASPER_LIBS@ KATE_CFLAGS = @KATE_CFLAGS@ KATE_LIBS = @KATE_LIBS@ LD = @LD@ @@ -408,6 +410,8 @@ MODPLUG_CFLAGS = @MODPLUG_CFLAGS@ MODPLUG_LIBS = @MODPLUG_LIBS@ MPEG2ENC_CFLAGS = @MPEG2ENC_CFLAGS@ MPEG2ENC_LIBS = @MPEG2ENC_LIBS@ +MPG123_CFLAGS = @MPG123_CFLAGS@ +MPG123_LIBS = @MPG123_LIBS@ MPLEX_CFLAGS = @MPLEX_CFLAGS@ MPLEX_LDFLAGS = @MPLEX_LDFLAGS@ MPLEX_LIBS = @MPLEX_LIBS@ diff --git a/gst/jp2kdecimator/Makefile.in b/gst/jp2kdecimator/Makefile.in index 5f4a33f4..65d58ff4 100644 --- a/gst/jp2kdecimator/Makefile.in +++ b/gst/jp2kdecimator/Makefile.in @@ -1,4 +1,4 @@ -# Makefile.in generated by automake 1.11.5 from Makefile.am. +# Makefile.in generated by automake 1.11.6 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, @@ -239,11 +239,10 @@ DIRECT3D_LIBS = @DIRECT3D_LIBS@ DIRECTDRAW_LIBS = @DIRECTDRAW_LIBS@ DIRECTFB_CFLAGS = @DIRECTFB_CFLAGS@ DIRECTFB_LIBS = @DIRECTFB_LIBS@ +DIRECTSHOW_LIBS = @DIRECTSHOW_LIBS@ DIRECTSOUND_LIBS = @DIRECTSOUND_LIBS@ DIRECTX_CFLAGS = @DIRECTX_CFLAGS@ DIRECTX_LDFLAGS = @DIRECTX_LDFLAGS@ -DIVXDEC_LIBS = @DIVXDEC_LIBS@ -DIVXENC_LIBS = @DIVXENC_LIBS@ DLLTOOL = @DLLTOOL@ DSYMUTIL = @DSYMUTIL@ DTS_LIBS = @DTS_LIBS@ @@ -278,7 +277,9 @@ GIO_LIBS = @GIO_LIBS@ GLIB_CFLAGS = @GLIB_CFLAGS@ GLIB_COMPILE_SCHEMAS = @GLIB_COMPILE_SCHEMAS@ GLIB_EXTRA_CFLAGS = @GLIB_EXTRA_CFLAGS@ +GLIB_GENMARSHAL = @GLIB_GENMARSHAL@ GLIB_LIBS = @GLIB_LIBS@ +GLIB_MKENUMS = @GLIB_MKENUMS@ GLIB_PREFIX = @GLIB_PREFIX@ GLIB_REQ = @GLIB_REQ@ GME_LIBS = @GME_LIBS@ @@ -354,13 +355,14 @@ HAVE_CXX = @HAVE_CXX@ HAVE_DIRECT3D = @HAVE_DIRECT3D@ HAVE_DIRECT3D9 = @HAVE_DIRECT3D9@ HAVE_DIRECTDRAW = @HAVE_DIRECTDRAW@ +HAVE_DIRECTSHOW = @HAVE_DIRECTSHOW@ HAVE_DIRECTSOUND = @HAVE_DIRECTSOUND@ HAVE_DTS = @HAVE_DTS@ HAVE_FAAC = @HAVE_FAAC@ HAVE_FAAD = @HAVE_FAAD@ HAVE_FLITE = @HAVE_FLITE@ HAVE_GSM = @HAVE_GSM@ -HAVE_JP2K = @HAVE_JP2K@ +HAVE_JASPER = @HAVE_JASPER@ HAVE_NAS = @HAVE_NAS@ HAVE_VPX = @HAVE_VPX@ HAVE_WILDMIDI = @HAVE_WILDMIDI@ @@ -374,7 +376,7 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ INTLLIBS = @INTLLIBS@ INTL_MACOSX_LIBS = @INTL_MACOSX_LIBS@ -JP2K_LIBS = @JP2K_LIBS@ +JASPER_LIBS = @JASPER_LIBS@ KATE_CFLAGS = @KATE_CFLAGS@ KATE_LIBS = @KATE_LIBS@ LD = @LD@ @@ -410,6 +412,8 @@ MODPLUG_CFLAGS = @MODPLUG_CFLAGS@ MODPLUG_LIBS = @MODPLUG_LIBS@ MPEG2ENC_CFLAGS = @MPEG2ENC_CFLAGS@ MPEG2ENC_LIBS = @MPEG2ENC_LIBS@ +MPG123_CFLAGS = @MPG123_CFLAGS@ +MPG123_LIBS = @MPG123_LIBS@ MPLEX_CFLAGS = @MPLEX_CFLAGS@ MPLEX_LDFLAGS = @MPLEX_LDFLAGS@ MPLEX_LIBS = @MPLEX_LIBS@ diff --git a/gst/jpegformat/Makefile.in b/gst/jpegformat/Makefile.in index c93ec54e..0f8bafed 100644 --- a/gst/jpegformat/Makefile.in +++ b/gst/jpegformat/Makefile.in @@ -1,4 +1,4 @@ -# Makefile.in generated by automake 1.11.5 from Makefile.am. +# Makefile.in generated by automake 1.11.6 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, @@ -239,11 +239,10 @@ DIRECT3D_LIBS = @DIRECT3D_LIBS@ DIRECTDRAW_LIBS = @DIRECTDRAW_LIBS@ DIRECTFB_CFLAGS = @DIRECTFB_CFLAGS@ DIRECTFB_LIBS = @DIRECTFB_LIBS@ +DIRECTSHOW_LIBS = @DIRECTSHOW_LIBS@ DIRECTSOUND_LIBS = @DIRECTSOUND_LIBS@ DIRECTX_CFLAGS = @DIRECTX_CFLAGS@ DIRECTX_LDFLAGS = @DIRECTX_LDFLAGS@ -DIVXDEC_LIBS = @DIVXDEC_LIBS@ -DIVXENC_LIBS = @DIVXENC_LIBS@ DLLTOOL = @DLLTOOL@ DSYMUTIL = @DSYMUTIL@ DTS_LIBS = @DTS_LIBS@ @@ -278,7 +277,9 @@ GIO_LIBS = @GIO_LIBS@ GLIB_CFLAGS = @GLIB_CFLAGS@ GLIB_COMPILE_SCHEMAS = @GLIB_COMPILE_SCHEMAS@ GLIB_EXTRA_CFLAGS = @GLIB_EXTRA_CFLAGS@ +GLIB_GENMARSHAL = @GLIB_GENMARSHAL@ GLIB_LIBS = @GLIB_LIBS@ +GLIB_MKENUMS = @GLIB_MKENUMS@ GLIB_PREFIX = @GLIB_PREFIX@ GLIB_REQ = @GLIB_REQ@ GME_LIBS = @GME_LIBS@ @@ -354,13 +355,14 @@ HAVE_CXX = @HAVE_CXX@ HAVE_DIRECT3D = @HAVE_DIRECT3D@ HAVE_DIRECT3D9 = @HAVE_DIRECT3D9@ HAVE_DIRECTDRAW = @HAVE_DIRECTDRAW@ +HAVE_DIRECTSHOW = @HAVE_DIRECTSHOW@ HAVE_DIRECTSOUND = @HAVE_DIRECTSOUND@ HAVE_DTS = @HAVE_DTS@ HAVE_FAAC = @HAVE_FAAC@ HAVE_FAAD = @HAVE_FAAD@ HAVE_FLITE = @HAVE_FLITE@ HAVE_GSM = @HAVE_GSM@ -HAVE_JP2K = @HAVE_JP2K@ +HAVE_JASPER = @HAVE_JASPER@ HAVE_NAS = @HAVE_NAS@ HAVE_VPX = @HAVE_VPX@ HAVE_WILDMIDI = @HAVE_WILDMIDI@ @@ -374,7 +376,7 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ INTLLIBS = @INTLLIBS@ INTL_MACOSX_LIBS = @INTL_MACOSX_LIBS@ -JP2K_LIBS = @JP2K_LIBS@ +JASPER_LIBS = @JASPER_LIBS@ KATE_CFLAGS = @KATE_CFLAGS@ KATE_LIBS = @KATE_LIBS@ LD = @LD@ @@ -410,6 +412,8 @@ MODPLUG_CFLAGS = @MODPLUG_CFLAGS@ MODPLUG_LIBS = @MODPLUG_LIBS@ MPEG2ENC_CFLAGS = @MPEG2ENC_CFLAGS@ MPEG2ENC_LIBS = @MPEG2ENC_LIBS@ +MPG123_CFLAGS = @MPG123_CFLAGS@ +MPG123_LIBS = @MPG123_LIBS@ MPLEX_CFLAGS = @MPLEX_CFLAGS@ MPLEX_LDFLAGS = @MPLEX_LDFLAGS@ MPLEX_LIBS = @MPLEX_LIBS@ diff --git a/gst/jpegformat/gstjifmux.c b/gst/jpegformat/gstjifmux.c index 82cd18a4..9329f28f 100644 --- a/gst/jpegformat/gstjifmux.c +++ b/gst/jpegformat/gstjifmux.c @@ -638,7 +638,7 @@ gst_jif_mux_mangle_markers (GstJifMux * self) } if (tags && cleanup_tags) - gst_tag_list_free (tags); + gst_tag_list_unref (tags); return modified; } diff --git a/gst/jpegformat/gstjpegparse.c b/gst/jpegformat/gstjpegparse.c index 24072138..5d47e7c0 100644 --- a/gst/jpegformat/gstjpegparse.c +++ b/gst/jpegformat/gstjpegparse.c @@ -585,7 +585,7 @@ extract_and_queue_tags (GstJpegParse * parse, guint size, guint8 * data, GstTagList *taglist = parse->priv->tags; if (taglist) { gst_tag_list_insert (taglist, tags, GST_TAG_MERGE_REPLACE); - gst_tag_list_free (tags); + gst_tag_list_unref (tags); } else { parse->priv->tags = tags; } @@ -1060,7 +1060,7 @@ gst_jpeg_parse_change_state (GstElement * element, GstStateChange transition) case GST_STATE_CHANGE_PAUSED_TO_READY: gst_adapter_clear (parse->priv->adapter); if (parse->priv->tags) { - gst_tag_list_free (parse->priv->tags); + gst_tag_list_unref (parse->priv->tags); parse->priv->tags = NULL; } break; diff --git a/gst/legacyresample/Makefile.am b/gst/legacyresample/Makefile.am deleted file mode 100644 index 13985aff..00000000 --- a/gst/legacyresample/Makefile.am +++ /dev/null @@ -1,35 +0,0 @@ -plugin_LTLIBRARIES = libgstlegacyresample.la - -resample_SOURCES = \ - functable.c \ - resample.c \ - resample_functable.c \ - resample_ref.c \ - resample.h \ - buffer.c - -noinst_HEADERS = \ - gstlegacyresample.h \ - functable.h \ - debug.h \ - buffer.h - -libgstlegacyresample_la_SOURCES = gstlegacyresample.c $(resample_SOURCES) -libgstlegacyresample_la_CFLAGS = $(GST_PLUGINS_BASE_CFLAGS) $(GST_BASE_CFLAGS) $(GST_CFLAGS) -libgstlegacyresample_la_LIBADD = $(GST_BASE_LIBS) $(GST_LIBS) $(LIBM) -libgstlegacyresample_la_LDFLAGS = $(GST_PLUGIN_LDFLAGS) -libgstlegacyresample_la_LIBTOOLFLAGS = --tag=disable-static - -Android.mk: Makefile.am $(BUILT_SOURCES) - androgenizer \ - -:PROJECT libgstlegacyresample -:SHARED libgstlegacyresample \ - -:TAGS eng debug \ - -:REL_TOP $(top_srcdir) -:ABS_TOP $(abs_top_srcdir) \ - -:SOURCES $(libgstlegacyresample_la_SOURCES) \ - -:CFLAGS $(DEFS) $(DEFAULT_INCLUDES) $(libgstlegacyresample_la_CFLAGS) \ - -:LDFLAGS $(libgstlegacyresample_la_LDFLAGS) \ - $(libgstlegacyresample_la_LIBADD) \ - -ldl \ - -:PASSTHROUGH LOCAL_ARM_MODE:=arm \ - LOCAL_MODULE_PATH:='$$(TARGET_OUT)/lib/gstreamer-0.10' \ - > $@
\ No newline at end of file diff --git a/gst/legacyresample/Makefile.in b/gst/legacyresample/Makefile.in deleted file mode 100644 index 1602e8df..00000000 --- a/gst/legacyresample/Makefile.in +++ /dev/null @@ -1,1002 +0,0 @@ -# Makefile.in generated by automake 1.11.5 from Makefile.am. -# @configure_input@ - -# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, -# 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011 Free Software -# Foundation, Inc. -# This Makefile.in is free software; the Free Software Foundation -# gives unlimited permission to copy and/or distribute it, -# with or without modifications, as long as this notice is preserved. - -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY, to the extent permitted by law; without -# even the implied warranty of MERCHANTABILITY or FITNESS FOR A -# PARTICULAR PURPOSE. - -@SET_MAKE@ - - -VPATH = @srcdir@ -am__make_dryrun = \ - { \ - am__dry=no; \ - case $$MAKEFLAGS in \ - *\\[\ \ ]*) \ - echo 'am--echo: ; @echo "AM" OK' | $(MAKE) -f - 2>/dev/null \ - | grep '^AM OK$$' >/dev/null || am__dry=yes;; \ - *) \ - for am__flg in $$MAKEFLAGS; do \ - case $$am__flg in \ - *=*|--*) ;; \ - *n*) am__dry=yes; break;; \ - esac; \ - done;; \ - esac; \ - test $$am__dry = yes; \ - } -pkgdatadir = $(datadir)/@PACKAGE@ -pkgincludedir = $(includedir)/@PACKAGE@ -pkglibdir = $(libdir)/@PACKAGE@ -pkglibexecdir = $(libexecdir)/@PACKAGE@ -am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd -install_sh_DATA = $(install_sh) -c -m 644 -install_sh_PROGRAM = $(install_sh) -c -install_sh_SCRIPT = $(install_sh) -c -INSTALL_HEADER = $(INSTALL_DATA) -transform = $(program_transform_name) -NORMAL_INSTALL = : -PRE_INSTALL = : -POST_INSTALL = : -NORMAL_UNINSTALL = : -PRE_UNINSTALL = : -POST_UNINSTALL = : -build_triplet = @build@ -host_triplet = @host@ -target_triplet = @target@ -subdir = gst/legacyresample -DIST_COMMON = $(noinst_HEADERS) $(srcdir)/Makefile.am \ - $(srcdir)/Makefile.in -ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 -am__aclocal_m4_deps = $(top_srcdir)/common/m4/as-ac-expand.m4 \ - $(top_srcdir)/common/m4/as-auto-alt.m4 \ - $(top_srcdir)/common/m4/as-compiler-flag.m4 \ - $(top_srcdir)/common/m4/as-libtool.m4 \ - $(top_srcdir)/common/m4/as-python.m4 \ - $(top_srcdir)/common/m4/as-scrub-include.m4 \ - $(top_srcdir)/common/m4/as-version.m4 \ - $(top_srcdir)/common/m4/ax_create_stdint_h.m4 \ - $(top_srcdir)/common/m4/gst-arch.m4 \ - $(top_srcdir)/common/m4/gst-args.m4 \ - $(top_srcdir)/common/m4/gst-check.m4 \ - $(top_srcdir)/common/m4/gst-default.m4 \ - $(top_srcdir)/common/m4/gst-dowhile.m4 \ - $(top_srcdir)/common/m4/gst-error.m4 \ - $(top_srcdir)/common/m4/gst-feature.m4 \ - $(top_srcdir)/common/m4/gst-gettext.m4 \ - $(top_srcdir)/common/m4/gst-glib2.m4 \ - $(top_srcdir)/common/m4/gst-package-release-datetime.m4 \ - $(top_srcdir)/common/m4/gst-platform.m4 \ - $(top_srcdir)/common/m4/gst-plugin-docs.m4 \ - $(top_srcdir)/common/m4/gst-plugindir.m4 \ - $(top_srcdir)/common/m4/gst-x11.m4 \ - $(top_srcdir)/common/m4/gst.m4 \ - $(top_srcdir)/common/m4/gtk-doc.m4 \ - $(top_srcdir)/common/m4/orc.m4 $(top_srcdir)/common/m4/pkg.m4 \ - $(top_srcdir)/m4/gettext.m4 $(top_srcdir)/m4/gsettings.m4 \ - $(top_srcdir)/m4/gst-fionread.m4 $(top_srcdir)/m4/gst-sdl.m4 \ - $(top_srcdir)/m4/iconv.m4 $(top_srcdir)/m4/intlmacosx.m4 \ - $(top_srcdir)/m4/lib-ld.m4 $(top_srcdir)/m4/lib-link.m4 \ - $(top_srcdir)/m4/lib-prefix.m4 $(top_srcdir)/m4/libtool.m4 \ - $(top_srcdir)/m4/ltoptions.m4 $(top_srcdir)/m4/ltsugar.m4 \ - $(top_srcdir)/m4/ltversion.m4 $(top_srcdir)/m4/lt~obsolete.m4 \ - $(top_srcdir)/m4/nls.m4 $(top_srcdir)/m4/po.m4 \ - $(top_srcdir)/m4/progtest.m4 $(top_srcdir)/configure.ac -am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ - $(ACLOCAL_M4) -mkinstalldirs = $(install_sh) -d -CONFIG_HEADER = $(top_builddir)/config.h -CONFIG_CLEAN_FILES = -CONFIG_CLEAN_VPATH_FILES = -am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; -am__vpath_adj = case $$p in \ - $(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \ - *) f=$$p;; \ - esac; -am__strip_dir = f=`echo $$p | sed -e 's|^.*/||'`; -am__install_max = 40 -am__nobase_strip_setup = \ - srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*|]/\\\\&/g'` -am__nobase_strip = \ - for p in $$list; do echo "$$p"; done | sed -e "s|$$srcdirstrip/||" -am__nobase_list = $(am__nobase_strip_setup); \ - for p in $$list; do echo "$$p $$p"; done | \ - sed "s| $$srcdirstrip/| |;"' / .*\//!s/ .*/ ./; s,\( .*\)/[^/]*$$,\1,' | \ - $(AWK) 'BEGIN { files["."] = "" } { files[$$2] = files[$$2] " " $$1; \ - if (++n[$$2] == $(am__install_max)) \ - { print $$2, files[$$2]; n[$$2] = 0; files[$$2] = "" } } \ - END { for (dir in files) print dir, files[dir] }' -am__base_list = \ - sed '$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;s/\n/ /g' | \ - sed '$$!N;$$!N;$$!N;$$!N;s/\n/ /g' -am__uninstall_files_from_dir = { \ - test -z "$$files" \ - || { test ! -d "$$dir" && test ! -f "$$dir" && test ! -r "$$dir"; } \ - || { echo " ( cd '$$dir' && rm -f" $$files ")"; \ - $(am__cd) "$$dir" && rm -f $$files; }; \ - } -am__installdirs = "$(DESTDIR)$(plugindir)" -LTLIBRARIES = $(plugin_LTLIBRARIES) -am__DEPENDENCIES_1 = -libgstlegacyresample_la_DEPENDENCIES = $(am__DEPENDENCIES_1) \ - $(am__DEPENDENCIES_1) $(am__DEPENDENCIES_1) -am__objects_1 = libgstlegacyresample_la-functable.lo \ - libgstlegacyresample_la-resample.lo \ - libgstlegacyresample_la-resample_functable.lo \ - libgstlegacyresample_la-resample_ref.lo \ - libgstlegacyresample_la-buffer.lo -am_libgstlegacyresample_la_OBJECTS = \ - libgstlegacyresample_la-gstlegacyresample.lo $(am__objects_1) -libgstlegacyresample_la_OBJECTS = \ - $(am_libgstlegacyresample_la_OBJECTS) -AM_V_lt = $(am__v_lt_@AM_V@) -am__v_lt_ = $(am__v_lt_@AM_DEFAULT_V@) -am__v_lt_0 = --silent -libgstlegacyresample_la_LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC \ - $(libgstlegacyresample_la_LIBTOOLFLAGS) $(LIBTOOLFLAGS) \ - --mode=link $(CCLD) $(libgstlegacyresample_la_CFLAGS) \ - $(CFLAGS) $(libgstlegacyresample_la_LDFLAGS) $(LDFLAGS) -o $@ -DEFAULT_INCLUDES = -I.@am__isrc@ -I$(top_builddir) -depcomp = $(SHELL) $(top_srcdir)/depcomp -am__depfiles_maybe = depfiles -am__mv = mv -f -COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \ - $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -LTCOMPILE = $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) \ - $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) \ - $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) \ - $(AM_CFLAGS) $(CFLAGS) -AM_V_CC = $(am__v_CC_@AM_V@) -am__v_CC_ = $(am__v_CC_@AM_DEFAULT_V@) -am__v_CC_0 = @echo " CC " $@; -AM_V_at = $(am__v_at_@AM_V@) -am__v_at_ = $(am__v_at_@AM_DEFAULT_V@) -am__v_at_0 = @ -CCLD = $(CC) -LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) \ - $(LIBTOOLFLAGS) --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) \ - $(AM_LDFLAGS) $(LDFLAGS) -o $@ -AM_V_CCLD = $(am__v_CCLD_@AM_V@) -am__v_CCLD_ = $(am__v_CCLD_@AM_DEFAULT_V@) -am__v_CCLD_0 = @echo " CCLD " $@; -AM_V_GEN = $(am__v_GEN_@AM_V@) -am__v_GEN_ = $(am__v_GEN_@AM_DEFAULT_V@) -am__v_GEN_0 = @echo " GEN " $@; -SOURCES = $(libgstlegacyresample_la_SOURCES) -DIST_SOURCES = $(libgstlegacyresample_la_SOURCES) -am__can_run_installinfo = \ - case $$AM_UPDATE_INFO_DIR in \ - n|no|NO) false;; \ - *) (install-info --version) >/dev/null 2>&1;; \ - esac -HEADERS = $(noinst_HEADERS) -ETAGS = etags -CTAGS = ctags -DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) -ACLOCAL = @ACLOCAL@ -ACLOCAL_AMFLAGS = @ACLOCAL_AMFLAGS@ -ACMENC_CFLAGS = @ACMENC_CFLAGS@ -ACMMP3DEC_CFLAGS = @ACMMP3DEC_CFLAGS@ -AMTAR = @AMTAR@ -AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@ -APEXSINK_CFLAGS = @APEXSINK_CFLAGS@ -APEXSINK_LIBS = @APEXSINK_LIBS@ -AR = @AR@ -AS = @AS@ -ASSRENDER_CFLAGS = @ASSRENDER_CFLAGS@ -ASSRENDER_LIBS = @ASSRENDER_LIBS@ -AUTOCONF = @AUTOCONF@ -AUTOHEADER = @AUTOHEADER@ -AUTOMAKE = @AUTOMAKE@ -AWK = @AWK@ -BZ2_LIBS = @BZ2_LIBS@ -CC = @CC@ -CCASFLAGS = @CCASFLAGS@ -CCDEPMODE = @CCDEPMODE@ -CDAUDIO_CFLAGS = @CDAUDIO_CFLAGS@ -CDAUDIO_LIBS = @CDAUDIO_LIBS@ -CELT_0_11_CFLAGS = @CELT_0_11_CFLAGS@ -CELT_0_11_LIBS = @CELT_0_11_LIBS@ -CELT_0_7_CFLAGS = @CELT_0_7_CFLAGS@ -CELT_0_7_LIBS = @CELT_0_7_LIBS@ -CELT_0_8_CFLAGS = @CELT_0_8_CFLAGS@ -CELT_0_8_LIBS = @CELT_0_8_LIBS@ -CELT_CFLAGS = @CELT_CFLAGS@ -CELT_LIBS = @CELT_LIBS@ -CFLAGS = @CFLAGS@ -CHROMAPRINT_CFLAGS = @CHROMAPRINT_CFLAGS@ -CHROMAPRINT_LIBS = @CHROMAPRINT_LIBS@ -COG_CFLAGS = @COG_CFLAGS@ -COG_LIBS = @COG_LIBS@ -CPP = @CPP@ -CPPFLAGS = @CPPFLAGS@ -CURL_CFLAGS = @CURL_CFLAGS@ -CURL_LIBS = @CURL_LIBS@ -CXX = @CXX@ -CXXCPP = @CXXCPP@ -CXXDEPMODE = @CXXDEPMODE@ -CXXFLAGS = @CXXFLAGS@ -CYGPATH_W = @CYGPATH_W@ -DCCP_LIBS = @DCCP_LIBS@ -DECKLINK_CXXFLAGS = @DECKLINK_CXXFLAGS@ -DECKLINK_LIBS = @DECKLINK_LIBS@ -DEFAULT_AUDIOSINK = @DEFAULT_AUDIOSINK@ -DEFAULT_AUDIOSRC = @DEFAULT_AUDIOSRC@ -DEFAULT_VIDEOSINK = @DEFAULT_VIDEOSINK@ -DEFAULT_VIDEOSRC = @DEFAULT_VIDEOSRC@ -DEFAULT_VISUALIZER = @DEFAULT_VISUALIZER@ -DEFS = @DEFS@ -DEPDIR = @DEPDIR@ -DEPRECATED_CFLAGS = @DEPRECATED_CFLAGS@ -DIRAC_CFLAGS = @DIRAC_CFLAGS@ -DIRAC_LIBS = @DIRAC_LIBS@ -DIRECT3D9_LIBS = @DIRECT3D9_LIBS@ -DIRECT3D_LIBS = @DIRECT3D_LIBS@ -DIRECTDRAW_LIBS = @DIRECTDRAW_LIBS@ -DIRECTFB_CFLAGS = @DIRECTFB_CFLAGS@ -DIRECTFB_LIBS = @DIRECTFB_LIBS@ -DIRECTSOUND_LIBS = @DIRECTSOUND_LIBS@ -DIRECTX_CFLAGS = @DIRECTX_CFLAGS@ -DIRECTX_LDFLAGS = @DIRECTX_LDFLAGS@ -DIVXDEC_LIBS = @DIVXDEC_LIBS@ -DIVXENC_LIBS = @DIVXENC_LIBS@ -DLLTOOL = @DLLTOOL@ -DSYMUTIL = @DSYMUTIL@ -DTS_LIBS = @DTS_LIBS@ -DUMPBIN = @DUMPBIN@ -DVDNAV_CFLAGS = @DVDNAV_CFLAGS@ -DVDNAV_LIBS = @DVDNAV_LIBS@ -ECHO_C = @ECHO_C@ -ECHO_N = @ECHO_N@ -ECHO_T = @ECHO_T@ -EGREP = @EGREP@ -ERROR_CFLAGS = @ERROR_CFLAGS@ -ERROR_CXXFLAGS = @ERROR_CXXFLAGS@ -ERROR_OBJCFLAGS = @ERROR_OBJCFLAGS@ -EXEEXT = @EXEEXT@ -EXIF_CFLAGS = @EXIF_CFLAGS@ -EXIF_LIBS = @EXIF_LIBS@ -FAAC_LIBS = @FAAC_LIBS@ -FAAD_IS_NEAAC = @FAAD_IS_NEAAC@ -FAAD_LIBS = @FAAD_LIBS@ -FFLAGS = @FFLAGS@ -FGREP = @FGREP@ -FLITE_CFLAGS = @FLITE_CFLAGS@ -FLITE_LIBS = @FLITE_LIBS@ -GCOV = @GCOV@ -GCOV_CFLAGS = @GCOV_CFLAGS@ -GCOV_LIBS = @GCOV_LIBS@ -GETTEXT_MACRO_VERSION = @GETTEXT_MACRO_VERSION@ -GETTEXT_PACKAGE = @GETTEXT_PACKAGE@ -GIO_CFLAGS = @GIO_CFLAGS@ -GIO_LDFLAGS = @GIO_LDFLAGS@ -GIO_LIBS = @GIO_LIBS@ -GLIB_CFLAGS = @GLIB_CFLAGS@ -GLIB_COMPILE_SCHEMAS = @GLIB_COMPILE_SCHEMAS@ -GLIB_EXTRA_CFLAGS = @GLIB_EXTRA_CFLAGS@ -GLIB_LIBS = @GLIB_LIBS@ -GLIB_PREFIX = @GLIB_PREFIX@ -GLIB_REQ = @GLIB_REQ@ -GME_LIBS = @GME_LIBS@ -GMODULE_EXPORT_CFLAGS = @GMODULE_EXPORT_CFLAGS@ -GMODULE_EXPORT_LIBS = @GMODULE_EXPORT_LIBS@ -GMSGFMT = @GMSGFMT@ -GMSGFMT_015 = @GMSGFMT_015@ -GMYTH_CFLAGS = @GMYTH_CFLAGS@ -GMYTH_LIBS = @GMYTH_LIBS@ -GREP = @GREP@ -GSETTINGS_CFLAGS = @GSETTINGS_CFLAGS@ -GSETTINGS_DISABLE_SCHEMAS_COMPILE = @GSETTINGS_DISABLE_SCHEMAS_COMPILE@ -GSETTINGS_LIBS = @GSETTINGS_LIBS@ -GSM_LIBS = @GSM_LIBS@ -GSTPB_PLUGINS_DIR = @GSTPB_PLUGINS_DIR@ -GSTPB_PREFIX = @GSTPB_PREFIX@ -GST_AGE = @GST_AGE@ -GST_ALL_LDFLAGS = @GST_ALL_LDFLAGS@ -GST_API_VERSION = @GST_API_VERSION@ -GST_BASE_CFLAGS = @GST_BASE_CFLAGS@ -GST_BASE_LIBS = @GST_BASE_LIBS@ -GST_CFLAGS = @GST_CFLAGS@ -GST_CHECK_CFLAGS = @GST_CHECK_CFLAGS@ -GST_CHECK_LIBS = @GST_CHECK_LIBS@ -GST_CONTROLLER_CFLAGS = @GST_CONTROLLER_CFLAGS@ -GST_CONTROLLER_LIBS = @GST_CONTROLLER_LIBS@ -GST_CURRENT = @GST_CURRENT@ -GST_CXXFLAGS = @GST_CXXFLAGS@ -GST_LEVEL_DEFAULT = @GST_LEVEL_DEFAULT@ -GST_LIBS = @GST_LIBS@ -GST_LIBVERSION = @GST_LIBVERSION@ -GST_LIB_LDFLAGS = @GST_LIB_LDFLAGS@ -GST_LICENSE = @GST_LICENSE@ -GST_LT_LDFLAGS = @GST_LT_LDFLAGS@ -GST_OBJCFLAGS = @GST_OBJCFLAGS@ -GST_OPTION_CFLAGS = @GST_OPTION_CFLAGS@ -GST_OPTION_CXXFLAGS = @GST_OPTION_CXXFLAGS@ -GST_OPTION_OBJCFLAGS = @GST_OPTION_OBJCFLAGS@ -GST_PACKAGE_NAME = @GST_PACKAGE_NAME@ -GST_PACKAGE_ORIGIN = @GST_PACKAGE_ORIGIN@ -GST_PLUGINS_ALL = @GST_PLUGINS_ALL@ -GST_PLUGINS_BAD_CFLAGS = @GST_PLUGINS_BAD_CFLAGS@ -GST_PLUGINS_BAD_CXXFLAGS = @GST_PLUGINS_BAD_CXXFLAGS@ -GST_PLUGINS_BAD_OBJCFLAGS = @GST_PLUGINS_BAD_OBJCFLAGS@ -GST_PLUGINS_BASE_CFLAGS = @GST_PLUGINS_BASE_CFLAGS@ -GST_PLUGINS_BASE_DIR = @GST_PLUGINS_BASE_DIR@ -GST_PLUGINS_BASE_LIBS = @GST_PLUGINS_BASE_LIBS@ -GST_PLUGINS_DIR = @GST_PLUGINS_DIR@ -GST_PLUGINS_FFMPEG_CFLAGS = @GST_PLUGINS_FFMPEG_CFLAGS@ -GST_PLUGINS_FFMPEG_DIR = @GST_PLUGINS_FFMPEG_DIR@ -GST_PLUGINS_FFMPEG_LIBS = @GST_PLUGINS_FFMPEG_LIBS@ -GST_PLUGINS_GOOD_CFLAGS = @GST_PLUGINS_GOOD_CFLAGS@ -GST_PLUGINS_GOOD_DIR = @GST_PLUGINS_GOOD_DIR@ -GST_PLUGINS_GOOD_LIBS = @GST_PLUGINS_GOOD_LIBS@ -GST_PLUGINS_NONPORTED = @GST_PLUGINS_NONPORTED@ -GST_PLUGINS_SELECTED = @GST_PLUGINS_SELECTED@ -GST_PLUGINS_UGLY_CFLAGS = @GST_PLUGINS_UGLY_CFLAGS@ -GST_PLUGINS_UGLY_DIR = @GST_PLUGINS_UGLY_DIR@ -GST_PLUGINS_UGLY_LIBS = @GST_PLUGINS_UGLY_LIBS@ -GST_PLUGIN_LDFLAGS = @GST_PLUGIN_LDFLAGS@ -GST_PREFIX = @GST_PREFIX@ -GST_REVISION = @GST_REVISION@ -GST_TOOLS_DIR = @GST_TOOLS_DIR@ -GTKDOC_CHECK = @GTKDOC_CHECK@ -GTKDOC_DEPS_CFLAGS = @GTKDOC_DEPS_CFLAGS@ -GTKDOC_DEPS_LIBS = @GTKDOC_DEPS_LIBS@ -GTKDOC_MKPDF = @GTKDOC_MKPDF@ -GTKDOC_REBASE = @GTKDOC_REBASE@ -GTK_CFLAGS = @GTK_CFLAGS@ -GTK_LIBS = @GTK_LIBS@ -HAVE_BZ2 = @HAVE_BZ2@ -HAVE_CXX = @HAVE_CXX@ -HAVE_DIRECT3D = @HAVE_DIRECT3D@ -HAVE_DIRECT3D9 = @HAVE_DIRECT3D9@ -HAVE_DIRECTDRAW = @HAVE_DIRECTDRAW@ -HAVE_DIRECTSOUND = @HAVE_DIRECTSOUND@ -HAVE_DTS = @HAVE_DTS@ -HAVE_FAAC = @HAVE_FAAC@ -HAVE_FAAD = @HAVE_FAAD@ -HAVE_FLITE = @HAVE_FLITE@ -HAVE_GSM = @HAVE_GSM@ -HAVE_JP2K = @HAVE_JP2K@ -HAVE_NAS = @HAVE_NAS@ -HAVE_VPX = @HAVE_VPX@ -HAVE_WILDMIDI = @HAVE_WILDMIDI@ -HAVE_X = @HAVE_X@ -HAVE_X11 = @HAVE_X11@ -HTML_DIR = @HTML_DIR@ -INSTALL = @INSTALL@ -INSTALL_DATA = @INSTALL_DATA@ -INSTALL_PROGRAM = @INSTALL_PROGRAM@ -INSTALL_SCRIPT = @INSTALL_SCRIPT@ -INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ -INTLLIBS = @INTLLIBS@ -INTL_MACOSX_LIBS = @INTL_MACOSX_LIBS@ -JP2K_LIBS = @JP2K_LIBS@ -KATE_CFLAGS = @KATE_CFLAGS@ -KATE_LIBS = @KATE_LIBS@ -LD = @LD@ -LDFLAGS = @LDFLAGS@ -LIBDC1394_CFLAGS = @LIBDC1394_CFLAGS@ -LIBDC1394_LIBS = @LIBDC1394_LIBS@ -LIBDIR = @LIBDIR@ -LIBICONV = @LIBICONV@ -LIBINTL = @LIBINTL@ -LIBM = @LIBM@ -LIBMMS_CFLAGS = @LIBMMS_CFLAGS@ -LIBMMS_LIBS = @LIBMMS_LIBS@ -LIBOBJS = @LIBOBJS@ -LIBS = @LIBS@ -LIBTOOL = @LIBTOOL@ -LIPO = @LIPO@ -LN_S = @LN_S@ -LOCALEDIR = @LOCALEDIR@ -LRDF_CFLAGS = @LRDF_CFLAGS@ -LRDF_LIBS = @LRDF_LIBS@ -LTLIBICONV = @LTLIBICONV@ -LTLIBINTL = @LTLIBINTL@ -LTLIBOBJS = @LTLIBOBJS@ -MAINT = @MAINT@ -MAKEINFO = @MAKEINFO@ -MANIFEST_TOOL = @MANIFEST_TOOL@ -MIMIC_CFLAGS = @MIMIC_CFLAGS@ -MIMIC_LIBS = @MIMIC_LIBS@ -MJPEG_CFLAGS = @MJPEG_CFLAGS@ -MJPEG_LIBS = @MJPEG_LIBS@ -MKDIR_P = @MKDIR_P@ -MODPLUG_CFLAGS = @MODPLUG_CFLAGS@ -MODPLUG_LIBS = @MODPLUG_LIBS@ -MPEG2ENC_CFLAGS = @MPEG2ENC_CFLAGS@ -MPEG2ENC_LIBS = @MPEG2ENC_LIBS@ -MPLEX_CFLAGS = @MPLEX_CFLAGS@ -MPLEX_LDFLAGS = @MPLEX_LDFLAGS@ -MPLEX_LIBS = @MPLEX_LIBS@ -MSGFMT = @MSGFMT@ -MSGFMT_015 = @MSGFMT_015@ -MSGMERGE = @MSGMERGE@ -MUSEPACK_LIBS = @MUSEPACK_LIBS@ -MUSICBRAINZ_CFLAGS = @MUSICBRAINZ_CFLAGS@ -MUSICBRAINZ_LIBS = @MUSICBRAINZ_LIBS@ -NAS_CFLAGS = @NAS_CFLAGS@ -NAS_LIBS = @NAS_LIBS@ -NEON_CFLAGS = @NEON_CFLAGS@ -NEON_LIBS = @NEON_LIBS@ -NM = @NM@ -NMEDIT = @NMEDIT@ -OBJC = @OBJC@ -OBJCDEPMODE = @OBJCDEPMODE@ -OBJCFLAGS = @OBJCFLAGS@ -OBJDUMP = @OBJDUMP@ -OBJEXT = @OBJEXT@ -OFA_CFLAGS = @OFA_CFLAGS@ -OFA_LIBS = @OFA_LIBS@ -OPENAL_CFLAGS = @OPENAL_CFLAGS@ -OPENAL_LIBS = @OPENAL_LIBS@ -OPENCV_CFLAGS = @OPENCV_CFLAGS@ -OPENCV_LIBS = @OPENCV_LIBS@ -OPENCV_PREFIX = @OPENCV_PREFIX@ -OPUS_CFLAGS = @OPUS_CFLAGS@ -OPUS_LIBS = @OPUS_LIBS@ -ORCC = @ORCC@ -ORCC_FLAGS = @ORCC_FLAGS@ -ORC_CFLAGS = @ORC_CFLAGS@ -ORC_LIBS = @ORC_LIBS@ -OTOOL = @OTOOL@ -OTOOL64 = @OTOOL64@ -PACKAGE = @PACKAGE@ -PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@ -PACKAGE_NAME = @PACKAGE_NAME@ -PACKAGE_STRING = @PACKAGE_STRING@ -PACKAGE_TARNAME = @PACKAGE_TARNAME@ -PACKAGE_URL = @PACKAGE_URL@ -PACKAGE_VERSION = @PACKAGE_VERSION@ -PACKAGE_VERSION_MAJOR = @PACKAGE_VERSION_MAJOR@ -PACKAGE_VERSION_MICRO = @PACKAGE_VERSION_MICRO@ -PACKAGE_VERSION_MINOR = @PACKAGE_VERSION_MINOR@ -PACKAGE_VERSION_NANO = @PACKAGE_VERSION_NANO@ -PACKAGE_VERSION_RELEASE = @PACKAGE_VERSION_RELEASE@ -PATH_SEPARATOR = @PATH_SEPARATOR@ -PKG_CONFIG = @PKG_CONFIG@ -PLUGINDIR = @PLUGINDIR@ -POSUB = @POSUB@ -PROFILE_CFLAGS = @PROFILE_CFLAGS@ -PVR_CFLAGS = @PVR_CFLAGS@ -PVR_LIBS = @PVR_LIBS@ -PYTHON = @PYTHON@ -PYTHON_EXEC_PREFIX = @PYTHON_EXEC_PREFIX@ -PYTHON_PLATFORM = @PYTHON_PLATFORM@ -PYTHON_PREFIX = @PYTHON_PREFIX@ -PYTHON_VERSION = @PYTHON_VERSION@ -RANLIB = @RANLIB@ -RSVG_2_35_0_CFLAGS = @RSVG_2_35_0_CFLAGS@ -RSVG_2_35_0_LIBS = @RSVG_2_35_0_LIBS@ -RSVG_CFLAGS = @RSVG_CFLAGS@ -RSVG_LIBS = @RSVG_LIBS@ -RTMP_CFLAGS = @RTMP_CFLAGS@ -RTMP_LIBS = @RTMP_LIBS@ -SCHRO_CFLAGS = @SCHRO_CFLAGS@ -SCHRO_LIBS = @SCHRO_LIBS@ -SDL_CFLAGS = @SDL_CFLAGS@ -SDL_CONFIG = @SDL_CONFIG@ -SDL_LIBS = @SDL_LIBS@ -SED = @SED@ -SET_MAKE = @SET_MAKE@ -SHELL = @SHELL@ -SLV2_CFLAGS = @SLV2_CFLAGS@ -SLV2_LIBS = @SLV2_LIBS@ -SNDFILE_CFLAGS = @SNDFILE_CFLAGS@ -SNDFILE_LIBS = @SNDFILE_LIBS@ -SNDIO_LIBS = @SNDIO_LIBS@ -SOUNDTOUCH_CFLAGS = @SOUNDTOUCH_CFLAGS@ -SOUNDTOUCH_LIBS = @SOUNDTOUCH_LIBS@ -SPANDSP_CFLAGS = @SPANDSP_CFLAGS@ -SPANDSP_LIBS = @SPANDSP_LIBS@ -SPC_LIBS = @SPC_LIBS@ -STRIP = @STRIP@ -SWFDEC_CFLAGS = @SWFDEC_CFLAGS@ -SWFDEC_LIBS = @SWFDEC_LIBS@ -TELETEXTDEC_CFLAGS = @TELETEXTDEC_CFLAGS@ -TELETEXTDEC_LIBS = @TELETEXTDEC_LIBS@ -TIGER_CFLAGS = @TIGER_CFLAGS@ -TIGER_LIBS = @TIGER_LIBS@ -TIMIDITY_CFLAGS = @TIMIDITY_CFLAGS@ -TIMIDITY_LIBS = @TIMIDITY_LIBS@ -USE_NLS = @USE_NLS@ -VALGRIND_CFLAGS = @VALGRIND_CFLAGS@ -VALGRIND_LIBS = @VALGRIND_LIBS@ -VALGRIND_PATH = @VALGRIND_PATH@ -VDPAU_CFLAGS = @VDPAU_CFLAGS@ -VDPAU_LIBS = @VDPAU_LIBS@ -VERSION = @VERSION@ -VOAACENC_CFLAGS = @VOAACENC_CFLAGS@ -VOAACENC_LIBS = @VOAACENC_LIBS@ -VOAMRWBENC_CFLAGS = @VOAMRWBENC_CFLAGS@ -VOAMRWBENC_LIBS = @VOAMRWBENC_LIBS@ -VPX_LIBS = @VPX_LIBS@ -WARNING_CFLAGS = @WARNING_CFLAGS@ -WARNING_CXXFLAGS = @WARNING_CXXFLAGS@ -WARNING_OBJCFLAGS = @WARNING_OBJCFLAGS@ -WAYLAND_CFLAGS = @WAYLAND_CFLAGS@ -WAYLAND_LIBS = @WAYLAND_LIBS@ -WILDMIDI_CFLAGS = @WILDMIDI_CFLAGS@ -WILDMIDI_LIBS = @WILDMIDI_LIBS@ -WINSOCK2_LIBS = @WINSOCK2_LIBS@ -X11_CFLAGS = @X11_CFLAGS@ -X11_LIBS = @X11_LIBS@ -XGETTEXT = @XGETTEXT@ -XGETTEXT_015 = @XGETTEXT_015@ -XGETTEXT_EXTRA_OPTIONS = @XGETTEXT_EXTRA_OPTIONS@ -XMKMF = @XMKMF@ -XVID_LIBS = @XVID_LIBS@ -X_CFLAGS = @X_CFLAGS@ -X_EXTRA_LIBS = @X_EXTRA_LIBS@ -X_LIBS = @X_LIBS@ -X_PRE_LIBS = @X_PRE_LIBS@ -ZBAR_CFLAGS = @ZBAR_CFLAGS@ -ZBAR_LIBS = @ZBAR_LIBS@ -abs_builddir = @abs_builddir@ -abs_srcdir = @abs_srcdir@ -abs_top_builddir = @abs_top_builddir@ -abs_top_srcdir = @abs_top_srcdir@ -ac_ct_AR = @ac_ct_AR@ -ac_ct_CC = @ac_ct_CC@ -ac_ct_CXX = @ac_ct_CXX@ -ac_ct_DUMPBIN = @ac_ct_DUMPBIN@ -ac_ct_OBJC = @ac_ct_OBJC@ -am__include = @am__include@ -am__leading_dot = @am__leading_dot@ -am__quote = @am__quote@ -am__tar = @am__tar@ -am__untar = @am__untar@ -bindir = @bindir@ -build = @build@ -build_alias = @build_alias@ -build_cpu = @build_cpu@ -build_os = @build_os@ -build_vendor = @build_vendor@ -builddir = @builddir@ -datadir = @datadir@ -datarootdir = @datarootdir@ -docdir = @docdir@ -dvidir = @dvidir@ -exec_prefix = @exec_prefix@ -gsettingsschemadir = @gsettingsschemadir@ -host = @host@ -host_alias = @host_alias@ -host_cpu = @host_cpu@ -host_os = @host_os@ -host_vendor = @host_vendor@ -htmldir = @htmldir@ -includedir = @includedir@ -infodir = @infodir@ -install_sh = @install_sh@ -libdir = @libdir@ -libexecdir = @libexecdir@ -localedir = @localedir@ -localstatedir = @localstatedir@ -mandir = @mandir@ -mkdir_p = @mkdir_p@ -oldincludedir = @oldincludedir@ -pdfdir = @pdfdir@ -pkgpyexecdir = @pkgpyexecdir@ -pkgpythondir = @pkgpythondir@ -plugindir = @plugindir@ -prefix = @prefix@ -program_transform_name = @program_transform_name@ -psdir = @psdir@ -pyexecdir = @pyexecdir@ -pythondir = @pythondir@ -sbindir = @sbindir@ -sharedstatedir = @sharedstatedir@ -srcdir = @srcdir@ -sysconfdir = @sysconfdir@ -target = @target@ -target_alias = @target_alias@ -target_cpu = @target_cpu@ -target_os = @target_os@ -target_vendor = @target_vendor@ -top_build_prefix = @top_build_prefix@ -top_builddir = @top_builddir@ -top_srcdir = @top_srcdir@ -plugin_LTLIBRARIES = libgstlegacyresample.la -resample_SOURCES = \ - functable.c \ - resample.c \ - resample_functable.c \ - resample_ref.c \ - resample.h \ - buffer.c - -noinst_HEADERS = \ - gstlegacyresample.h \ - functable.h \ - debug.h \ - buffer.h - -libgstlegacyresample_la_SOURCES = gstlegacyresample.c $(resample_SOURCES) -libgstlegacyresample_la_CFLAGS = $(GST_PLUGINS_BASE_CFLAGS) $(GST_BASE_CFLAGS) $(GST_CFLAGS) -libgstlegacyresample_la_LIBADD = $(GST_BASE_LIBS) $(GST_LIBS) $(LIBM) -libgstlegacyresample_la_LDFLAGS = $(GST_PLUGIN_LDFLAGS) -libgstlegacyresample_la_LIBTOOLFLAGS = --tag=disable-static -all: all-am - -.SUFFIXES: -.SUFFIXES: .c .lo .o .obj -$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(am__configure_deps) - @for dep in $?; do \ - case '$(am__configure_deps)' in \ - *$$dep*) \ - ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \ - && { if test -f $@; then exit 0; else break; fi; }; \ - exit 1;; \ - esac; \ - done; \ - echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu gst/legacyresample/Makefile'; \ - $(am__cd) $(top_srcdir) && \ - $(AUTOMAKE) --gnu gst/legacyresample/Makefile -.PRECIOUS: Makefile -Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status - @case '$?' in \ - *config.status*) \ - cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \ - *) \ - echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \ - cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \ - esac; - -$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES) - cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh - -$(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps) - cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh -$(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps) - cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh -$(am__aclocal_m4_deps): -install-pluginLTLIBRARIES: $(plugin_LTLIBRARIES) - @$(NORMAL_INSTALL) - @list='$(plugin_LTLIBRARIES)'; test -n "$(plugindir)" || list=; \ - list2=; for p in $$list; do \ - if test -f $$p; then \ - list2="$$list2 $$p"; \ - else :; fi; \ - done; \ - test -z "$$list2" || { \ - echo " $(MKDIR_P) '$(DESTDIR)$(plugindir)'"; \ - $(MKDIR_P) "$(DESTDIR)$(plugindir)" || exit 1; \ - echo " $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=install $(INSTALL) $(INSTALL_STRIP_FLAG) $$list2 '$(DESTDIR)$(plugindir)'"; \ - $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=install $(INSTALL) $(INSTALL_STRIP_FLAG) $$list2 "$(DESTDIR)$(plugindir)"; \ - } - -uninstall-pluginLTLIBRARIES: - @$(NORMAL_UNINSTALL) - @list='$(plugin_LTLIBRARIES)'; test -n "$(plugindir)" || list=; \ - for p in $$list; do \ - $(am__strip_dir) \ - echo " $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=uninstall rm -f '$(DESTDIR)$(plugindir)/$$f'"; \ - $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=uninstall rm -f "$(DESTDIR)$(plugindir)/$$f"; \ - done - -clean-pluginLTLIBRARIES: - -test -z "$(plugin_LTLIBRARIES)" || rm -f $(plugin_LTLIBRARIES) - @list='$(plugin_LTLIBRARIES)'; for p in $$list; do \ - dir="`echo $$p | sed -e 's|/[^/]*$$||'`"; \ - test "$$dir" != "$$p" || dir=.; \ - echo "rm -f \"$${dir}/so_locations\""; \ - rm -f "$${dir}/so_locations"; \ - done -libgstlegacyresample.la: $(libgstlegacyresample_la_OBJECTS) $(libgstlegacyresample_la_DEPENDENCIES) $(EXTRA_libgstlegacyresample_la_DEPENDENCIES) - $(AM_V_CCLD)$(libgstlegacyresample_la_LINK) -rpath $(plugindir) $(libgstlegacyresample_la_OBJECTS) $(libgstlegacyresample_la_LIBADD) $(LIBS) - -mostlyclean-compile: - -rm -f *.$(OBJEXT) - -distclean-compile: - -rm -f *.tab.c - -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libgstlegacyresample_la-buffer.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libgstlegacyresample_la-functable.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libgstlegacyresample_la-gstlegacyresample.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libgstlegacyresample_la-resample.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libgstlegacyresample_la-resample_functable.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libgstlegacyresample_la-resample_ref.Plo@am__quote@ - -.c.o: -@am__fastdepCC_TRUE@ $(AM_V_CC)$(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $< -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='$<' object='$@' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(COMPILE) -c $< - -.c.obj: -@am__fastdepCC_TRUE@ $(AM_V_CC)$(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ `$(CYGPATH_W) '$<'` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='$<' object='$@' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(COMPILE) -c `$(CYGPATH_W) '$<'` - -.c.lo: -@am__fastdepCC_TRUE@ $(AM_V_CC)$(LTCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $< -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Plo -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='$<' object='$@' libtool=yes @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LTCOMPILE) -c -o $@ $< - -libgstlegacyresample_la-gstlegacyresample.lo: gstlegacyresample.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(libgstlegacyresample_la_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libgstlegacyresample_la_CFLAGS) $(CFLAGS) -MT libgstlegacyresample_la-gstlegacyresample.lo -MD -MP -MF $(DEPDIR)/libgstlegacyresample_la-gstlegacyresample.Tpo -c -o libgstlegacyresample_la-gstlegacyresample.lo `test -f 'gstlegacyresample.c' || echo '$(srcdir)/'`gstlegacyresample.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libgstlegacyresample_la-gstlegacyresample.Tpo $(DEPDIR)/libgstlegacyresample_la-gstlegacyresample.Plo -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='gstlegacyresample.c' object='libgstlegacyresample_la-gstlegacyresample.lo' libtool=yes @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(libgstlegacyresample_la_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libgstlegacyresample_la_CFLAGS) $(CFLAGS) -c -o libgstlegacyresample_la-gstlegacyresample.lo `test -f 'gstlegacyresample.c' || echo '$(srcdir)/'`gstlegacyresample.c - -libgstlegacyresample_la-functable.lo: functable.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(libgstlegacyresample_la_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libgstlegacyresample_la_CFLAGS) $(CFLAGS) -MT libgstlegacyresample_la-functable.lo -MD -MP -MF $(DEPDIR)/libgstlegacyresample_la-functable.Tpo -c -o libgstlegacyresample_la-functable.lo `test -f 'functable.c' || echo '$(srcdir)/'`functable.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libgstlegacyresample_la-functable.Tpo $(DEPDIR)/libgstlegacyresample_la-functable.Plo -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='functable.c' object='libgstlegacyresample_la-functable.lo' libtool=yes @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(libgstlegacyresample_la_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libgstlegacyresample_la_CFLAGS) $(CFLAGS) -c -o libgstlegacyresample_la-functable.lo `test -f 'functable.c' || echo '$(srcdir)/'`functable.c - -libgstlegacyresample_la-resample.lo: resample.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(libgstlegacyresample_la_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libgstlegacyresample_la_CFLAGS) $(CFLAGS) -MT libgstlegacyresample_la-resample.lo -MD -MP -MF $(DEPDIR)/libgstlegacyresample_la-resample.Tpo -c -o libgstlegacyresample_la-resample.lo `test -f 'resample.c' || echo '$(srcdir)/'`resample.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libgstlegacyresample_la-resample.Tpo $(DEPDIR)/libgstlegacyresample_la-resample.Plo -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='resample.c' object='libgstlegacyresample_la-resample.lo' libtool=yes @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(libgstlegacyresample_la_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libgstlegacyresample_la_CFLAGS) $(CFLAGS) -c -o libgstlegacyresample_la-resample.lo `test -f 'resample.c' || echo '$(srcdir)/'`resample.c - -libgstlegacyresample_la-resample_functable.lo: resample_functable.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(libgstlegacyresample_la_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libgstlegacyresample_la_CFLAGS) $(CFLAGS) -MT libgstlegacyresample_la-resample_functable.lo -MD -MP -MF $(DEPDIR)/libgstlegacyresample_la-resample_functable.Tpo -c -o libgstlegacyresample_la-resample_functable.lo `test -f 'resample_functable.c' || echo '$(srcdir)/'`resample_functable.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libgstlegacyresample_la-resample_functable.Tpo $(DEPDIR)/libgstlegacyresample_la-resample_functable.Plo -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='resample_functable.c' object='libgstlegacyresample_la-resample_functable.lo' libtool=yes @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(libgstlegacyresample_la_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libgstlegacyresample_la_CFLAGS) $(CFLAGS) -c -o libgstlegacyresample_la-resample_functable.lo `test -f 'resample_functable.c' || echo '$(srcdir)/'`resample_functable.c - -libgstlegacyresample_la-resample_ref.lo: resample_ref.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(libgstlegacyresample_la_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libgstlegacyresample_la_CFLAGS) $(CFLAGS) -MT libgstlegacyresample_la-resample_ref.lo -MD -MP -MF $(DEPDIR)/libgstlegacyresample_la-resample_ref.Tpo -c -o libgstlegacyresample_la-resample_ref.lo `test -f 'resample_ref.c' || echo '$(srcdir)/'`resample_ref.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libgstlegacyresample_la-resample_ref.Tpo $(DEPDIR)/libgstlegacyresample_la-resample_ref.Plo -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='resample_ref.c' object='libgstlegacyresample_la-resample_ref.lo' libtool=yes @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(libgstlegacyresample_la_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libgstlegacyresample_la_CFLAGS) $(CFLAGS) -c -o libgstlegacyresample_la-resample_ref.lo `test -f 'resample_ref.c' || echo '$(srcdir)/'`resample_ref.c - -libgstlegacyresample_la-buffer.lo: buffer.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(libgstlegacyresample_la_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libgstlegacyresample_la_CFLAGS) $(CFLAGS) -MT libgstlegacyresample_la-buffer.lo -MD -MP -MF $(DEPDIR)/libgstlegacyresample_la-buffer.Tpo -c -o libgstlegacyresample_la-buffer.lo `test -f 'buffer.c' || echo '$(srcdir)/'`buffer.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libgstlegacyresample_la-buffer.Tpo $(DEPDIR)/libgstlegacyresample_la-buffer.Plo -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='buffer.c' object='libgstlegacyresample_la-buffer.lo' libtool=yes @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(libgstlegacyresample_la_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libgstlegacyresample_la_CFLAGS) $(CFLAGS) -c -o libgstlegacyresample_la-buffer.lo `test -f 'buffer.c' || echo '$(srcdir)/'`buffer.c - -mostlyclean-libtool: - -rm -f *.lo - -clean-libtool: - -rm -rf .libs _libs - -ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES) - list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ - unique=`for i in $$list; do \ - if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ - done | \ - $(AWK) '{ files[$$0] = 1; nonempty = 1; } \ - END { if (nonempty) { for (i in files) print i; }; }'`; \ - mkid -fID $$unique -tags: TAGS - -TAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \ - $(TAGS_FILES) $(LISP) - set x; \ - here=`pwd`; \ - list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ - unique=`for i in $$list; do \ - if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ - done | \ - $(AWK) '{ files[$$0] = 1; nonempty = 1; } \ - END { if (nonempty) { for (i in files) print i; }; }'`; \ - shift; \ - if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \ - test -n "$$unique" || unique=$$empty_fix; \ - if test $$# -gt 0; then \ - $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \ - "$$@" $$unique; \ - else \ - $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \ - $$unique; \ - fi; \ - fi -ctags: CTAGS -CTAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \ - $(TAGS_FILES) $(LISP) - list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ - unique=`for i in $$list; do \ - if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ - done | \ - $(AWK) '{ files[$$0] = 1; nonempty = 1; } \ - END { if (nonempty) { for (i in files) print i; }; }'`; \ - test -z "$(CTAGS_ARGS)$$unique" \ - || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \ - $$unique - -GTAGS: - here=`$(am__cd) $(top_builddir) && pwd` \ - && $(am__cd) $(top_srcdir) \ - && gtags -i $(GTAGS_ARGS) "$$here" - -distclean-tags: - -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags - -distdir: $(DISTFILES) - @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ - topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ - list='$(DISTFILES)'; \ - dist_files=`for file in $$list; do echo $$file; done | \ - sed -e "s|^$$srcdirstrip/||;t" \ - -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \ - case $$dist_files in \ - */*) $(MKDIR_P) `echo "$$dist_files" | \ - sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \ - sort -u` ;; \ - esac; \ - for file in $$dist_files; do \ - if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \ - if test -d $$d/$$file; then \ - dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \ - if test -d "$(distdir)/$$file"; then \ - find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \ - fi; \ - if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \ - cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \ - find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \ - fi; \ - cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \ - else \ - test -f "$(distdir)/$$file" \ - || cp -p $$d/$$file "$(distdir)/$$file" \ - || exit 1; \ - fi; \ - done -check-am: all-am -check: check-am -all-am: Makefile $(LTLIBRARIES) $(HEADERS) -installdirs: - for dir in "$(DESTDIR)$(plugindir)"; do \ - test -z "$$dir" || $(MKDIR_P) "$$dir"; \ - done -install: install-am -install-exec: install-exec-am -install-data: install-data-am -uninstall: uninstall-am - -install-am: all-am - @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am - -installcheck: installcheck-am -install-strip: - if test -z '$(STRIP)'; then \ - $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ - install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ - install; \ - else \ - $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ - install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ - "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'" install; \ - fi -mostlyclean-generic: - -clean-generic: - -distclean-generic: - -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES) - -test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES) - -maintainer-clean-generic: - @echo "This command is intended for maintainers to use" - @echo "it deletes files that may require special tools to rebuild." -clean: clean-am - -clean-am: clean-generic clean-libtool clean-pluginLTLIBRARIES \ - mostlyclean-am - -distclean: distclean-am - -rm -rf ./$(DEPDIR) - -rm -f Makefile -distclean-am: clean-am distclean-compile distclean-generic \ - distclean-tags - -dvi: dvi-am - -dvi-am: - -html: html-am - -html-am: - -info: info-am - -info-am: - -install-data-am: install-pluginLTLIBRARIES - -install-dvi: install-dvi-am - -install-dvi-am: - -install-exec-am: - -install-html: install-html-am - -install-html-am: - -install-info: install-info-am - -install-info-am: - -install-man: - -install-pdf: install-pdf-am - -install-pdf-am: - -install-ps: install-ps-am - -install-ps-am: - -installcheck-am: - -maintainer-clean: maintainer-clean-am - -rm -rf ./$(DEPDIR) - -rm -f Makefile -maintainer-clean-am: distclean-am maintainer-clean-generic - -mostlyclean: mostlyclean-am - -mostlyclean-am: mostlyclean-compile mostlyclean-generic \ - mostlyclean-libtool - -pdf: pdf-am - -pdf-am: - -ps: ps-am - -ps-am: - -uninstall-am: uninstall-pluginLTLIBRARIES - -.MAKE: install-am install-strip - -.PHONY: CTAGS GTAGS all all-am check check-am clean clean-generic \ - clean-libtool clean-pluginLTLIBRARIES ctags distclean \ - distclean-compile distclean-generic distclean-libtool \ - distclean-tags distdir dvi dvi-am html html-am info info-am \ - install install-am install-data install-data-am install-dvi \ - install-dvi-am install-exec install-exec-am install-html \ - install-html-am install-info install-info-am install-man \ - install-pdf install-pdf-am install-pluginLTLIBRARIES \ - install-ps install-ps-am install-strip installcheck \ - installcheck-am installdirs maintainer-clean \ - maintainer-clean-generic mostlyclean mostlyclean-compile \ - mostlyclean-generic mostlyclean-libtool pdf pdf-am ps ps-am \ - tags uninstall uninstall-am uninstall-pluginLTLIBRARIES - - -Android.mk: Makefile.am $(BUILT_SOURCES) - androgenizer \ - -:PROJECT libgstlegacyresample -:SHARED libgstlegacyresample \ - -:TAGS eng debug \ - -:REL_TOP $(top_srcdir) -:ABS_TOP $(abs_top_srcdir) \ - -:SOURCES $(libgstlegacyresample_la_SOURCES) \ - -:CFLAGS $(DEFS) $(DEFAULT_INCLUDES) $(libgstlegacyresample_la_CFLAGS) \ - -:LDFLAGS $(libgstlegacyresample_la_LDFLAGS) \ - $(libgstlegacyresample_la_LIBADD) \ - -ldl \ - -:PASSTHROUGH LOCAL_ARM_MODE:=arm \ - LOCAL_MODULE_PATH:='$$(TARGET_OUT)/lib/gstreamer-0.10' \ - > $@ - -# Tell versions [3.59,3.63) of GNU make to not export all variables. -# Otherwise a system limit (for SysV at least) may be exceeded. -.NOEXPORT: diff --git a/gst/legacyresample/buffer.c b/gst/legacyresample/buffer.c deleted file mode 100644 index 442b4f8c..00000000 --- a/gst/legacyresample/buffer.c +++ /dev/null @@ -1,253 +0,0 @@ - -#ifndef HAVE_CONFIG_H -#include "config.h" -#endif - -#include <glib.h> -#include <string.h> - -#include "buffer.h" -#include "debug.h" - -static void audioresample_buffer_free_mem (AudioresampleBuffer * buffer, - void *); -static void audioresample_buffer_free_subbuffer (AudioresampleBuffer * buffer, - void *priv); - - -AudioresampleBuffer * -audioresample_buffer_new (void) -{ - AudioresampleBuffer *buffer; - - buffer = g_new0 (AudioresampleBuffer, 1); - buffer->ref_count = 1; - return buffer; -} - -AudioresampleBuffer * -audioresample_buffer_new_and_alloc (int size) -{ - AudioresampleBuffer *buffer = audioresample_buffer_new (); - - buffer->data = g_malloc (size); - buffer->length = size; - buffer->free = audioresample_buffer_free_mem; - - return buffer; -} - -AudioresampleBuffer * -audioresample_buffer_new_with_data (void *data, int size) -{ - AudioresampleBuffer *buffer = audioresample_buffer_new (); - - buffer->data = data; - buffer->length = size; - buffer->free = audioresample_buffer_free_mem; - - return buffer; -} - -AudioresampleBuffer * -audioresample_buffer_new_subbuffer (AudioresampleBuffer * buffer, int offset, - int length) -{ - AudioresampleBuffer *subbuffer = audioresample_buffer_new (); - - if (buffer->parent) { - audioresample_buffer_ref (buffer->parent); - subbuffer->parent = buffer->parent; - } else { - audioresample_buffer_ref (buffer); - subbuffer->parent = buffer; - } - subbuffer->data = buffer->data + offset; - subbuffer->length = length; - subbuffer->free = audioresample_buffer_free_subbuffer; - - return subbuffer; -} - -void -audioresample_buffer_ref (AudioresampleBuffer * buffer) -{ - buffer->ref_count++; -} - -void -audioresample_buffer_unref (AudioresampleBuffer * buffer) -{ - buffer->ref_count--; - if (buffer->ref_count == 0) { - if (buffer->free) - buffer->free (buffer, buffer->priv); - g_free (buffer); - } -} - -static void -audioresample_buffer_free_mem (AudioresampleBuffer * buffer, void *priv) -{ - g_free (buffer->data); -} - -static void -audioresample_buffer_free_subbuffer (AudioresampleBuffer * buffer, void *priv) -{ - audioresample_buffer_unref (buffer->parent); -} - - -AudioresampleBufferQueue * -audioresample_buffer_queue_new (void) -{ - return g_new0 (AudioresampleBufferQueue, 1); -} - -int -audioresample_buffer_queue_get_depth (AudioresampleBufferQueue * queue) -{ - return queue->depth; -} - -int -audioresample_buffer_queue_get_offset (AudioresampleBufferQueue * queue) -{ - return queue->offset; -} - -void -audioresample_buffer_queue_free (AudioresampleBufferQueue * queue) -{ - GList *g; - - for (g = g_list_first (queue->buffers); g; g = g_list_next (g)) { - audioresample_buffer_unref ((AudioresampleBuffer *) g->data); - } - g_list_free (queue->buffers); - g_free (queue); -} - -void -audioresample_buffer_queue_push (AudioresampleBufferQueue * queue, - AudioresampleBuffer * buffer) -{ - queue->buffers = g_list_append (queue->buffers, buffer); - queue->depth += buffer->length; -} - -AudioresampleBuffer * -audioresample_buffer_queue_pull (AudioresampleBufferQueue * queue, int length) -{ - GList *g; - AudioresampleBuffer *newbuffer; - AudioresampleBuffer *buffer; - AudioresampleBuffer *subbuffer; - - g_return_val_if_fail (length > 0, NULL); - - if (queue->depth < length) { - return NULL; - } - - RESAMPLE_LOG ("pulling %d, %d available", length, queue->depth); - - g = g_list_first (queue->buffers); - buffer = g->data; - - if (buffer->length > length) { - newbuffer = audioresample_buffer_new_subbuffer (buffer, 0, length); - - subbuffer = audioresample_buffer_new_subbuffer (buffer, length, - buffer->length - length); - g->data = subbuffer; - audioresample_buffer_unref (buffer); - } else { - int offset = 0; - - newbuffer = audioresample_buffer_new_and_alloc (length); - - while (offset < length) { - g = g_list_first (queue->buffers); - buffer = g->data; - - if (buffer->length > length - offset) { - int n = length - offset; - - memcpy (newbuffer->data + offset, buffer->data, n); - subbuffer = - audioresample_buffer_new_subbuffer (buffer, n, buffer->length - n); - g->data = subbuffer; - audioresample_buffer_unref (buffer); - offset += n; - } else { - memcpy (newbuffer->data + offset, buffer->data, buffer->length); - - queue->buffers = g_list_delete_link (queue->buffers, g); - offset += buffer->length; - audioresample_buffer_unref (buffer); - } - } - } - - queue->depth -= length; - queue->offset += length; - - return newbuffer; -} - -AudioresampleBuffer * -audioresample_buffer_queue_peek (AudioresampleBufferQueue * queue, int length) -{ - GList *g; - AudioresampleBuffer *newbuffer; - AudioresampleBuffer *buffer; - int offset = 0; - - g_return_val_if_fail (length > 0, NULL); - - if (queue->depth < length) { - return NULL; - } - - RESAMPLE_LOG ("peeking %d, %d available", length, queue->depth); - - g = g_list_first (queue->buffers); - buffer = g->data; - if (buffer->length > length) { - newbuffer = audioresample_buffer_new_subbuffer (buffer, 0, length); - } else { - newbuffer = audioresample_buffer_new_and_alloc (length); - while (offset < length) { - buffer = g->data; - - if (buffer->length > length - offset) { - int n = length - offset; - - memcpy (newbuffer->data + offset, buffer->data, n); - offset += n; - } else { - memcpy (newbuffer->data + offset, buffer->data, buffer->length); - offset += buffer->length; - } - g = g_list_next (g); - } - } - - return newbuffer; -} - -void -audioresample_buffer_queue_flush (AudioresampleBufferQueue * queue) -{ - GList *g; - - for (g = g_list_first (queue->buffers); g; g = g_list_next (g)) { - audioresample_buffer_unref ((AudioresampleBuffer *) g->data); - } - g_list_free (queue->buffers); - queue->buffers = NULL; - queue->depth = 0; - queue->offset = 0; -} diff --git a/gst/legacyresample/buffer.h b/gst/legacyresample/buffer.h deleted file mode 100644 index 4cf1fd94..00000000 --- a/gst/legacyresample/buffer.h +++ /dev/null @@ -1,51 +0,0 @@ - -#ifndef __AUDIORESAMPLE_BUFFER_H__ -#define __AUDIORESAMPLE_BUFFER_H__ - -#include <glib.h> - -typedef struct _AudioresampleBuffer AudioresampleBuffer; -typedef struct _AudioresampleBufferQueue AudioresampleBufferQueue; - -struct _AudioresampleBuffer -{ - unsigned char *data; - int length; - - int ref_count; - - AudioresampleBuffer *parent; - - void (*free) (AudioresampleBuffer *, void *); - void *priv; - void *priv2; -}; - -struct _AudioresampleBufferQueue -{ - GList *buffers; - int depth; - int offset; -}; - -AudioresampleBuffer * audioresample_buffer_new (void); -AudioresampleBuffer * audioresample_buffer_new_and_alloc (int size); -AudioresampleBuffer * audioresample_buffer_new_with_data (void *data, int size); -AudioresampleBuffer * audioresample_buffer_new_subbuffer (AudioresampleBuffer * buffer, - int offset, - int length); -void audioresample_buffer_ref (AudioresampleBuffer * buffer); -void audioresample_buffer_unref (AudioresampleBuffer * buffer); - -AudioresampleBufferQueue * - audioresample_buffer_queue_new (void); -void audioresample_buffer_queue_free (AudioresampleBufferQueue * queue); -int audioresample_buffer_queue_get_depth (AudioresampleBufferQueue * queue); -int audioresample_buffer_queue_get_offset (AudioresampleBufferQueue * queue); -void audioresample_buffer_queue_push (AudioresampleBufferQueue * queue, - AudioresampleBuffer * buffer); -AudioresampleBuffer * audioresample_buffer_queue_pull (AudioresampleBufferQueue * queue, int len); -AudioresampleBuffer * audioresample_buffer_queue_peek (AudioresampleBufferQueue * queue, int len); -void audioresample_buffer_queue_flush (AudioresampleBufferQueue * queue); - -#endif diff --git a/gst/legacyresample/debug.h b/gst/legacyresample/debug.h deleted file mode 100644 index ff7deafb..00000000 --- a/gst/legacyresample/debug.h +++ /dev/null @@ -1,51 +0,0 @@ - -#ifndef __RESAMPLE_DEBUG_H__ -#define __RESAMPLE_DEBUG_H__ - -#if 0 -enum -{ - RESAMPLE_LEVEL_NONE = 0, - RESAMPLE_LEVEL_ERROR, - RESAMPLE_LEVEL_WARNING, - RESAMPLE_LEVEL_INFO, - RESAMPLE_LEVEL_DEBUG, - RESAMPLE_LEVEL_LOG -}; - -#define RESAMPLE_ERROR(...) \ - RESAMPLE_DEBUG_LEVEL(RESAMPLE_LEVEL_ERROR, __VA_ARGS__) -#define RESAMPLE_WARNING(...) \ - RESAMPLE_DEBUG_LEVEL(RESAMPLE_LEVEL_WARNING, __VA_ARGS__) -#define RESAMPLE_INFO(...) \ - RESAMPLE_DEBUG_LEVEL(RESAMPLE_LEVEL_INFO, __VA_ARGS__) -#define RESAMPLE_DEBUG(...) \ - RESAMPLE_DEBUG_LEVEL(RESAMPLE_LEVEL_DEBUG, __VA_ARGS__) -#define RESAMPLE_LOG(...) \ - RESAMPLE_DEBUG_LEVEL(RESAMPLE_LEVEL_LOG, __VA_ARGS__) - -#define RESAMPLE_DEBUG_LEVEL(level,...) \ - resample_debug_log ((level), __FILE__, __FUNCTION__, __LINE__, __VA_ARGS__) - -void resample_debug_log (int level, const char *file, const char *function, - int line, const char *format, ...); -void resample_debug_set_level (int level); -int resample_debug_get_level (void); -#else - -#include <gst/gst.h> - -GST_DEBUG_CATEGORY_EXTERN (libaudioresample_debug); -#define GST_CAT_DEFAULT libaudioresample_debug - -#define RESAMPLE_ERROR GST_ERROR -#define RESAMPLE_WARNING GST_WARNING -#define RESAMPLE_INFO GST_INFO -#define RESAMPLE_DEBUG GST_DEBUG -#define RESAMPLE_LOG GST_LOG - -#define resample_debug_set_level(x) do { } while (0) - -#endif - -#endif diff --git a/gst/legacyresample/functable.c b/gst/legacyresample/functable.c deleted file mode 100644 index d627361f..00000000 --- a/gst/legacyresample/functable.c +++ /dev/null @@ -1,254 +0,0 @@ -/* Resampling library - * Copyright (C) <2001> David A. Schleef <ds@schleef.org> - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Library General Public - * License as published by the Free Software Foundation; either - * version 2 of the License, or any later version. - * - * This library 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 - * Library General Public License for more details. - * - * You should have received a copy of the GNU Library General Public - * License along with this library; if not, write to the - * Free Software Foundation, Inc., 59 Temple Place - Suite 330, - * Boston, MA 02111-1307, USA. - */ - -#ifdef HAVE_CONFIG_H -#include <config.h> -#endif - -#include <string.h> -#include <math.h> -#include <stdio.h> -#include <stdlib.h> - -#include "functable.h" -#include "debug.h" - - - -void -functable_func_sinc (double *fx, double *dfx, double x, void *closure) -{ - if (x == 0) { - *fx = 1; - *dfx = 0; - return; - } - - *fx = sin (x) / x; - *dfx = (cos (x) - sin (x) / x) / x; -} - -void -functable_func_boxcar (double *fx, double *dfx, double x, void *closure) -{ - double width = *(double *) closure; - - if (x < width && x > -width) { - *fx = 1; - } else { - *fx = 0; - } - *dfx = 0; -} - -void -functable_func_hanning (double *fx, double *dfx, double x, void *closure) -{ - double width = *(double *) closure; - - if (x < width && x > -width) { - x /= width; - *fx = (1 - x * x) * (1 - x * x); - *dfx = -2 * 2 * x / width * (1 - x * x); - } else { - *fx = 0; - *dfx = 0; - } -} - - -Functable * -functable_new (void) -{ - Functable *ft; - - ft = malloc (sizeof (Functable)); - memset (ft, 0, sizeof (Functable)); - - return ft; -} - -void -functable_free (Functable * ft) -{ - free (ft); -} - -void -functable_set_length (Functable * t, int length) -{ - t->length = length; -} - -void -functable_set_offset (Functable * t, double offset) -{ - t->offset = offset; -} - -void -functable_set_multiplier (Functable * t, double multiplier) -{ - t->multiplier = multiplier; -} - -void -functable_calculate (Functable * t, FunctableFunc func, void *closure) -{ - int i; - double x; - - if (t->fx) - free (t->fx); - if (t->dfx) - free (t->dfx); - - t->fx = malloc (sizeof (double) * (t->length + 1)); - t->dfx = malloc (sizeof (double) * (t->length + 1)); - - t->inv_multiplier = 1.0 / t->multiplier; - - for (i = 0; i < t->length + 1; i++) { - x = t->offset + t->multiplier * i; - - func (&t->fx[i], &t->dfx[i], x, closure); - } -} - -void -functable_calculate_multiply (Functable * t, FunctableFunc func, void *closure) -{ - int i; - double x; - - for (i = 0; i < t->length + 1; i++) { - double afx, adfx, bfx, bdfx; - - afx = t->fx[i]; - adfx = t->dfx[i]; - x = t->offset + t->multiplier * i; - func (&bfx, &bdfx, x, closure); - t->fx[i] = afx * bfx; - t->dfx[i] = afx * bdfx + adfx * bfx; - } - -} - -double -functable_evaluate (Functable * t, double x) -{ - int i; - double f0, f1, w0, w1; - double x2, x3; - double w; - - if (x < t->offset || x > (t->offset + t->length * t->multiplier)) { - RESAMPLE_DEBUG ("x out of range %g", x); - } - - x -= t->offset; - x *= t->inv_multiplier; - i = floor (x); - x -= i; - - x2 = x * x; - x3 = x2 * x; - - f1 = 3 * x2 - 2 * x3; - f0 = 1 - f1; - w0 = (x - 2 * x2 + x3) * t->multiplier; - w1 = (-x2 + x3) * t->multiplier; - - w = t->fx[i] * f0 + t->fx[i + 1] * f1 + t->dfx[i] * w0 + t->dfx[i + 1] * w1; - - /*w = t->fx[i] * (1-x) + t->fx[i+1] * x; */ - - return w; -} - - -double -functable_fir (Functable * t, double x, int n, double *data, int len) -{ - int i, j; - double f0, f1, w0, w1; - double x2, x3; - double w; - double sum; - - x -= t->offset; - x /= t->multiplier; - i = floor (x); - x -= i; - - x2 = x * x; - x3 = x2 * x; - - f1 = 3 * x2 - 2 * x3; - f0 = 1 - f1; - w0 = (x - 2 * x2 + x3) * t->multiplier; - w1 = (-x2 + x3) * t->multiplier; - - sum = 0; - for (j = 0; j < len; j++) { - w = t->fx[i] * f0 + t->fx[i + 1] * f1 + t->dfx[i] * w0 + t->dfx[i + 1] * w1; - sum += data[j * 2] * w; - i += n; - } - - return sum; -} - -void -functable_fir2 (Functable * t, double *r0, double *r1, double x, - int n, double *data, int len) -{ - int i, j; - double f0, f1, w0, w1; - double x2, x3; - double w; - double sum0, sum1; - double floor_x; - - x -= t->offset; - x *= t->inv_multiplier; - floor_x = floor (x); - i = floor_x; - x -= floor_x; - - x2 = x * x; - x3 = x2 * x; - - f1 = 3 * x2 - 2 * x3; - f0 = 1 - f1; - w0 = (x - 2 * x2 + x3) * t->multiplier; - w1 = (-x2 + x3) * t->multiplier; - - sum0 = 0; - sum1 = 0; - for (j = 0; j < len; j++) { - w = t->fx[i] * f0 + t->fx[i + 1] * f1 + t->dfx[i] * w0 + t->dfx[i + 1] * w1; - sum0 += data[j * 2] * w; - sum1 += data[j * 2 + 1] * w; - i += n; - } - - *r0 = sum0; - *r1 = sum1; -} diff --git a/gst/legacyresample/functable.h b/gst/legacyresample/functable.h deleted file mode 100644 index 5f56e2bd..00000000 --- a/gst/legacyresample/functable.h +++ /dev/null @@ -1,61 +0,0 @@ -/* Resampling library - * Copyright (C) <2001> David Schleef <ds@schleef.org> - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Library General Public - * License as published by the Free Software Foundation; either - * version 2 of the License, or any later version. - * - * This library 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 - * Library General Public License for more details. - * - * You should have received a copy of the GNU Library General Public - * License along with this library; if not, write to the - * Free Software Foundation, Inc., 59 Temple Place - Suite 330, - * Boston, MA 02111-1307, USA. - */ - - -#ifndef __FUNCTABLE_H__ -#define __FUNCTABLE_H__ - -typedef void FunctableFunc (double *fx, double *dfx, double x, void *closure); - -typedef struct _Functable Functable; -struct _Functable { - int length; - - double offset; - double multiplier; - - double inv_multiplier; - - double *fx; - double *dfx; -}; - -Functable *functable_new (void); -void functable_setup (Functable *t); -void functable_free (Functable *t); - -void functable_set_length (Functable *t, int length); -void functable_set_offset (Functable *t, double offset); -void functable_set_multiplier (Functable *t, double multiplier); -void functable_calculate (Functable *t, FunctableFunc func, void *closure); -void functable_calculate_multiply (Functable *t, FunctableFunc func, void *closure); - - -double functable_evaluate (Functable *t,double x); - -double functable_fir(Functable *t,double x0,int n,double *data,int len); -void functable_fir2(Functable *t,double *r0, double *r1, double x0, - int n,double *data,int len); - -void functable_func_sinc(double *fx, double *dfx, double x, void *closure); -void functable_func_boxcar(double *fx, double *dfx, double x, void *closure); -void functable_func_hanning(double *fx, double *dfx, double x, void *closure); - -#endif /* __PRIVATE_H__ */ - diff --git a/gst/legacyresample/gstlegacyresample.c b/gst/legacyresample/gstlegacyresample.c deleted file mode 100644 index 56e58f9d..00000000 --- a/gst/legacyresample/gstlegacyresample.c +++ /dev/null @@ -1,878 +0,0 @@ -/* GStreamer - * Copyright (C) 1999 Erik Walthinsen <omega@cse.ogi.edu> - * Copyright (C) 2003,2004 David A. Schleef <ds@schleef.org> - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Library General Public - * License as published by the Free Software Foundation; either - * version 2 of the License, or (at your option) any later version. - * - * This library 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 - * Library General Public License for more details. - * - * You should have received a copy of the GNU Library General Public - * License along with this library; if not, write to the - * Free Software Foundation, Inc., 59 Temple Place - Suite 330, - * Boston, MA 02111-1307, USA. - */ -/* Element-Checklist-Version: 5 */ - -/** - * SECTION:element-legacyresample - * - * legacyresample resamples raw audio buffers to different sample rates using - * a configurable windowing function to enhance quality. - * - * <refsect2> - * <title>Example launch line</title> - * |[ - * gst-launch -v filesrc location=sine.ogg ! oggdemux ! vorbisdec ! audioconvert ! legacyresample ! audio/x-raw-int, rate=8000 ! alsasink - * ]| Decode an Ogg/Vorbis downsample to 8Khz and play sound through alsa. - * To create the Ogg/Vorbis file refer to the documentation of vorbisenc. - * </refsect2> - * - * Last reviewed on 2006-03-02 (0.10.4) - */ - -#ifdef HAVE_CONFIG_H -#include "config.h" -#endif - -#include <string.h> -#include <math.h> - -/*#define DEBUG_ENABLED */ -#include "gstlegacyresample.h" -#include <gst/audio/audio.h> -#include <gst/base/gstbasetransform.h> - -GST_DEBUG_CATEGORY_STATIC (legacyresample_debug); -#define GST_CAT_DEFAULT legacyresample_debug - -#define DEFAULT_FILTERLEN 16 - -enum -{ - PROP_0, - PROP_FILTERLEN -}; - -#define SUPPORTED_CAPS \ -GST_STATIC_CAPS ( \ - "audio/x-raw-int, " \ - "rate = (int) [ 1, MAX ], " \ - "channels = (int) [ 1, MAX ], " \ - "endianness = (int) BYTE_ORDER, " \ - "width = (int) 16, " \ - "depth = (int) 16, " \ - "signed = (boolean) true;" \ - "audio/x-raw-int, " \ - "rate = (int) [ 1, MAX ], " \ - "channels = (int) [ 1, MAX ], " \ - "endianness = (int) BYTE_ORDER, " \ - "width = (int) 32, " \ - "depth = (int) 32, " \ - "signed = (boolean) true;" \ - "audio/x-raw-float, " \ - "rate = (int) [ 1, MAX ], " \ - "channels = (int) [ 1, MAX ], " \ - "endianness = (int) BYTE_ORDER, " \ - "width = (int) 32; " \ - "audio/x-raw-float, " \ - "rate = (int) [ 1, MAX ], " \ - "channels = (int) [ 1, MAX ], " \ - "endianness = (int) BYTE_ORDER, " \ - "width = (int) 64" \ -) - -static GstStaticPadTemplate gst_legacyresample_sink_template = -GST_STATIC_PAD_TEMPLATE ("sink", - GST_PAD_SINK, GST_PAD_ALWAYS, SUPPORTED_CAPS); - -static GstStaticPadTemplate gst_legacyresample_src_template = -GST_STATIC_PAD_TEMPLATE ("src", - GST_PAD_SRC, GST_PAD_ALWAYS, SUPPORTED_CAPS); - -static void gst_legacyresample_set_property (GObject * object, - guint prop_id, const GValue * value, GParamSpec * pspec); -static void gst_legacyresample_get_property (GObject * object, - guint prop_id, GValue * value, GParamSpec * pspec); - -/* vmethods */ -static gboolean legacyresample_get_unit_size (GstBaseTransform * base, - GstCaps * caps, guint * size); -static GstCaps *legacyresample_transform_caps (GstBaseTransform * base, - GstPadDirection direction, GstCaps * caps); -static void legacyresample_fixate_caps (GstBaseTransform * base, - GstPadDirection direction, GstCaps * caps, GstCaps * othercaps); -static gboolean legacyresample_transform_size (GstBaseTransform * trans, - GstPadDirection direction, GstCaps * incaps, guint insize, - GstCaps * outcaps, guint * outsize); -static gboolean legacyresample_set_caps (GstBaseTransform * base, - GstCaps * incaps, GstCaps * outcaps); -static GstFlowReturn legacyresample_pushthrough (GstLegacyresample * - legacyresample); -static GstFlowReturn legacyresample_transform (GstBaseTransform * base, - GstBuffer * inbuf, GstBuffer * outbuf); -static gboolean legacyresample_event (GstBaseTransform * base, - GstEvent * event); -static gboolean legacyresample_start (GstBaseTransform * base); -static gboolean legacyresample_stop (GstBaseTransform * base); - -static gboolean legacyresample_query (GstPad * pad, GstQuery * query); -static const GstQueryType *legacyresample_query_type (GstPad * pad); - -#define DEBUG_INIT(bla) \ - GST_DEBUG_CATEGORY_INIT (legacyresample_debug, "legacyresample", 0, "audio resampling element"); - -GST_BOILERPLATE_FULL (GstLegacyresample, gst_legacyresample, GstBaseTransform, - GST_TYPE_BASE_TRANSFORM, DEBUG_INIT); - -static void -gst_legacyresample_base_init (gpointer g_class) -{ - GstElementClass *gstelement_class = GST_ELEMENT_CLASS (g_class); - - gst_element_class_add_pad_template (gstelement_class, - gst_static_pad_template_get (&gst_legacyresample_src_template)); - gst_element_class_add_pad_template (gstelement_class, - gst_static_pad_template_get (&gst_legacyresample_sink_template)); - - gst_element_class_set_details_simple (gstelement_class, "Audio scaler", - "Filter/Converter/Audio", - "Resample audio", "David Schleef <ds@schleef.org>"); -} - -static void -gst_legacyresample_class_init (GstLegacyresampleClass * klass) -{ - GObjectClass *gobject_class; - - gobject_class = (GObjectClass *) klass; - - gobject_class->set_property = gst_legacyresample_set_property; - gobject_class->get_property = gst_legacyresample_get_property; - - g_object_class_install_property (gobject_class, PROP_FILTERLEN, - g_param_spec_int ("filter-length", "filter length", - "Length of the resample filter", 0, G_MAXINT, DEFAULT_FILTERLEN, - G_PARAM_READWRITE | G_PARAM_CONSTRUCT | G_PARAM_STATIC_STRINGS)); - - GST_BASE_TRANSFORM_CLASS (klass)->start = - GST_DEBUG_FUNCPTR (legacyresample_start); - GST_BASE_TRANSFORM_CLASS (klass)->stop = - GST_DEBUG_FUNCPTR (legacyresample_stop); - GST_BASE_TRANSFORM_CLASS (klass)->transform_size = - GST_DEBUG_FUNCPTR (legacyresample_transform_size); - GST_BASE_TRANSFORM_CLASS (klass)->get_unit_size = - GST_DEBUG_FUNCPTR (legacyresample_get_unit_size); - GST_BASE_TRANSFORM_CLASS (klass)->transform_caps = - GST_DEBUG_FUNCPTR (legacyresample_transform_caps); - GST_BASE_TRANSFORM_CLASS (klass)->fixate_caps = - GST_DEBUG_FUNCPTR (legacyresample_fixate_caps); - GST_BASE_TRANSFORM_CLASS (klass)->set_caps = - GST_DEBUG_FUNCPTR (legacyresample_set_caps); - GST_BASE_TRANSFORM_CLASS (klass)->transform = - GST_DEBUG_FUNCPTR (legacyresample_transform); - GST_BASE_TRANSFORM_CLASS (klass)->event = - GST_DEBUG_FUNCPTR (legacyresample_event); - - GST_BASE_TRANSFORM_CLASS (klass)->passthrough_on_same_caps = TRUE; -} - -static void -gst_legacyresample_init (GstLegacyresample * legacyresample, - GstLegacyresampleClass * klass) -{ - GstBaseTransform *trans; - - trans = GST_BASE_TRANSFORM (legacyresample); - - /* buffer alloc passthrough is too impossible. FIXME, it - * is trivial in the passthrough case. */ - gst_pad_set_bufferalloc_function (trans->sinkpad, NULL); - - legacyresample->filter_length = DEFAULT_FILTERLEN; - - legacyresample->need_discont = FALSE; - - gst_pad_set_query_function (trans->srcpad, legacyresample_query); - gst_pad_set_query_type_function (trans->srcpad, legacyresample_query_type); -} - -/* vmethods */ -static gboolean -legacyresample_start (GstBaseTransform * base) -{ - GstLegacyresample *legacyresample = GST_LEGACYRESAMPLE (base); - - legacyresample->resample = resample_new (); - legacyresample->ts_offset = -1; - legacyresample->offset = -1; - legacyresample->next_ts = -1; - - resample_set_filter_length (legacyresample->resample, - legacyresample->filter_length); - - return TRUE; -} - -static gboolean -legacyresample_stop (GstBaseTransform * base) -{ - GstLegacyresample *legacyresample = GST_LEGACYRESAMPLE (base); - - if (legacyresample->resample) { - resample_free (legacyresample->resample); - legacyresample->resample = NULL; - } - - gst_caps_replace (&legacyresample->sinkcaps, NULL); - gst_caps_replace (&legacyresample->srccaps, NULL); - - return TRUE; -} - -static gboolean -legacyresample_get_unit_size (GstBaseTransform * base, GstCaps * caps, - guint * size) -{ - gint width, channels; - GstStructure *structure; - gboolean ret; - - g_assert (size); - - /* this works for both float and int */ - structure = gst_caps_get_structure (caps, 0); - ret = gst_structure_get_int (structure, "width", &width); - ret &= gst_structure_get_int (structure, "channels", &channels); - g_return_val_if_fail (ret, FALSE); - - *size = width * channels / 8; - - return TRUE; -} - -static GstCaps * -legacyresample_transform_caps (GstBaseTransform * base, - GstPadDirection direction, GstCaps * caps) -{ - const GValue *val; - GstStructure *s; - GstCaps *res; - - /* transform single caps into input_caps + input_caps with the rate - * field set to our supported range. This ensures that upstream knows - * about downstream's prefered rate(s) and can negotiate accordingly. */ - res = gst_caps_copy (caps); - - /* first, however, check if the caps contain a range for the rate field, in - * which case that side isn't going to care much about the exact sample rate - * chosen and we should just assume things will get fixated to something sane - * and we may just as well offer our full range instead of the range in the - * caps. If the rate is not an int range value, it's likely to express a - * real preference or limitation and we should maintain that structure as - * preference by putting it first into the transformed caps, and only add - * our full rate range as second option */ - s = gst_caps_get_structure (res, 0); - val = gst_structure_get_value (s, "rate"); - if (val == NULL || GST_VALUE_HOLDS_INT_RANGE (val)) { - /* overwrite existing range, or add field if it doesn't exist yet */ - gst_structure_set (s, "rate", GST_TYPE_INT_RANGE, 1, G_MAXINT, NULL); - } else { - /* append caps with full range to existing caps with non-range rate field */ - s = gst_structure_copy (s); - gst_structure_set (s, "rate", GST_TYPE_INT_RANGE, 1, G_MAXINT, NULL); - gst_caps_append_structure (res, s); - } - - return res; -} - -/* Fixate rate to the allowed rate that has the smallest difference */ -static void -legacyresample_fixate_caps (GstBaseTransform * base, - GstPadDirection direction, GstCaps * caps, GstCaps * othercaps) -{ - GstStructure *s; - gint rate; - - s = gst_caps_get_structure (caps, 0); - if (!gst_structure_get_int (s, "rate", &rate)) - return; - - s = gst_caps_get_structure (othercaps, 0); - gst_structure_fixate_field_nearest_int (s, "rate", rate); -} - -static gboolean -resample_set_state_from_caps (ResampleState * state, GstCaps * incaps, - GstCaps * outcaps, gint * channels, gint * inrate, gint * outrate) -{ - GstStructure *structure; - gboolean ret; - gint myinrate, myoutrate; - int mychannels; - gint width, depth; - ResampleFormat format; - - GST_DEBUG ("incaps %" GST_PTR_FORMAT ", outcaps %" - GST_PTR_FORMAT, incaps, outcaps); - - structure = gst_caps_get_structure (incaps, 0); - - /* get width */ - ret = gst_structure_get_int (structure, "width", &width); - if (!ret) - goto no_width; - - /* figure out the format */ - if (g_str_equal (gst_structure_get_name (structure), "audio/x-raw-float")) { - if (width == 32) - format = RESAMPLE_FORMAT_F32; - else if (width == 64) - format = RESAMPLE_FORMAT_F64; - else - goto wrong_depth; - } else { - /* for int, depth and width must be the same */ - ret = gst_structure_get_int (structure, "depth", &depth); - if (!ret || width != depth) - goto not_equal; - - if (width == 16) - format = RESAMPLE_FORMAT_S16; - else if (width == 32) - format = RESAMPLE_FORMAT_S32; - else - goto wrong_depth; - } - ret = gst_structure_get_int (structure, "rate", &myinrate); - ret &= gst_structure_get_int (structure, "channels", &mychannels); - if (!ret) - goto no_in_rate_channels; - - structure = gst_caps_get_structure (outcaps, 0); - ret = gst_structure_get_int (structure, "rate", &myoutrate); - if (!ret) - goto no_out_rate; - - if (channels) - *channels = mychannels; - if (inrate) - *inrate = myinrate; - if (outrate) - *outrate = myoutrate; - - resample_set_format (state, format); - resample_set_n_channels (state, mychannels); - resample_set_input_rate (state, myinrate); - resample_set_output_rate (state, myoutrate); - - return TRUE; - - /* ERRORS */ -no_width: - { - GST_DEBUG ("failed to get width from caps"); - return FALSE; - } -not_equal: - { - GST_DEBUG ("width %d and depth %d must be the same", width, depth); - return FALSE; - } -wrong_depth: - { - GST_DEBUG ("unknown depth %d found", depth); - return FALSE; - } -no_in_rate_channels: - { - GST_DEBUG ("could not get input rate and channels"); - return FALSE; - } -no_out_rate: - { - GST_DEBUG ("could not get output rate"); - return FALSE; - } -} - -static gboolean -legacyresample_transform_size (GstBaseTransform * base, - GstPadDirection direction, GstCaps * caps, guint size, GstCaps * othercaps, - guint * othersize) -{ - GstLegacyresample *legacyresample = GST_LEGACYRESAMPLE (base); - ResampleState *state; - GstCaps *srccaps, *sinkcaps; - gboolean use_internal = FALSE; /* whether we use the internal state */ - gboolean ret = TRUE; - - GST_LOG_OBJECT (base, "asked to transform size %d in direction %s", - size, direction == GST_PAD_SINK ? "SINK" : "SRC"); - if (direction == GST_PAD_SINK) { - sinkcaps = caps; - srccaps = othercaps; - } else { - sinkcaps = othercaps; - srccaps = caps; - } - - /* if the caps are the ones that _set_caps got called with; we can use - * our own state; otherwise we'll have to create a state */ - if (gst_caps_is_equal (sinkcaps, legacyresample->sinkcaps) && - gst_caps_is_equal (srccaps, legacyresample->srccaps)) { - use_internal = TRUE; - state = legacyresample->resample; - } else { - GST_DEBUG_OBJECT (legacyresample, - "caps are not the set caps, creating state"); - state = resample_new (); - resample_set_filter_length (state, legacyresample->filter_length); - resample_set_state_from_caps (state, sinkcaps, srccaps, NULL, NULL, NULL); - } - - if (direction == GST_PAD_SINK) { - /* asked to convert size of an incoming buffer */ - *othersize = resample_get_output_size_for_input (state, size); - } else { - /* asked to convert size of an outgoing buffer */ - *othersize = resample_get_input_size_for_output (state, size); - } - g_assert (*othersize % state->sample_size == 0); - - /* we make room for one extra sample, given that the resampling filter - * can output an extra one for non-integral i_rate/o_rate */ - GST_LOG_OBJECT (base, "transformed size %d to %d", size, *othersize); - - if (!use_internal) { - resample_free (state); - } - - return ret; -} - -static gboolean -legacyresample_set_caps (GstBaseTransform * base, GstCaps * incaps, - GstCaps * outcaps) -{ - gboolean ret; - gint inrate, outrate; - int channels; - GstLegacyresample *legacyresample = GST_LEGACYRESAMPLE (base); - - GST_DEBUG_OBJECT (base, "incaps %" GST_PTR_FORMAT ", outcaps %" - GST_PTR_FORMAT, incaps, outcaps); - - ret = resample_set_state_from_caps (legacyresample->resample, incaps, outcaps, - &channels, &inrate, &outrate); - - g_return_val_if_fail (ret, FALSE); - - legacyresample->channels = channels; - GST_DEBUG_OBJECT (legacyresample, "set channels to %d", channels); - legacyresample->i_rate = inrate; - GST_DEBUG_OBJECT (legacyresample, "set i_rate to %d", inrate); - legacyresample->o_rate = outrate; - GST_DEBUG_OBJECT (legacyresample, "set o_rate to %d", outrate); - - /* save caps so we can short-circuit in the size_transform if the caps - * are the same */ - gst_caps_replace (&legacyresample->sinkcaps, incaps); - gst_caps_replace (&legacyresample->srccaps, outcaps); - - return TRUE; -} - -static gboolean -legacyresample_event (GstBaseTransform * base, GstEvent * event) -{ - GstLegacyresample *legacyresample; - - legacyresample = GST_LEGACYRESAMPLE (base); - - switch (GST_EVENT_TYPE (event)) { - case GST_EVENT_FLUSH_START: - break; - case GST_EVENT_FLUSH_STOP: - if (legacyresample->resample) - resample_input_flush (legacyresample->resample); - legacyresample->ts_offset = -1; - legacyresample->next_ts = -1; - legacyresample->offset = -1; - break; - case GST_EVENT_NEWSEGMENT: - resample_input_pushthrough (legacyresample->resample); - legacyresample_pushthrough (legacyresample); - legacyresample->ts_offset = -1; - legacyresample->next_ts = -1; - legacyresample->offset = -1; - break; - case GST_EVENT_EOS: - resample_input_eos (legacyresample->resample); - legacyresample_pushthrough (legacyresample); - break; - default: - break; - } - return parent_class->event (base, event); -} - -static GstFlowReturn -legacyresample_do_output (GstLegacyresample * legacyresample, - GstBuffer * outbuf) -{ - int outsize; - int outsamples; - ResampleState *r; - - r = legacyresample->resample; - - outsize = resample_get_output_size (r); - GST_LOG_OBJECT (legacyresample, "legacyresample can give me %d bytes", - outsize); - - /* protect against mem corruption */ - if (outsize > GST_BUFFER_SIZE (outbuf)) { - GST_WARNING_OBJECT (legacyresample, - "overriding legacyresample's outsize %d with outbuffer's size %d", - outsize, GST_BUFFER_SIZE (outbuf)); - outsize = GST_BUFFER_SIZE (outbuf); - } - /* catch possibly wrong size differences */ - if (GST_BUFFER_SIZE (outbuf) - outsize > r->sample_size) { - GST_WARNING_OBJECT (legacyresample, - "legacyresample's outsize %d too far from outbuffer's size %d", - outsize, GST_BUFFER_SIZE (outbuf)); - } - - outsize = resample_get_output_data (r, GST_BUFFER_DATA (outbuf), outsize); - outsamples = outsize / r->sample_size; - GST_LOG_OBJECT (legacyresample, "resample gave me %d bytes or %d samples", - outsize, outsamples); - - GST_BUFFER_OFFSET (outbuf) = legacyresample->offset; - GST_BUFFER_TIMESTAMP (outbuf) = legacyresample->next_ts; - - if (legacyresample->ts_offset != -1) { - legacyresample->offset += outsamples; - legacyresample->ts_offset += outsamples; - legacyresample->next_ts = - gst_util_uint64_scale_int (legacyresample->ts_offset, GST_SECOND, - legacyresample->o_rate); - GST_BUFFER_OFFSET_END (outbuf) = legacyresample->offset; - - /* we calculate DURATION as the difference between "next" timestamp - * and current timestamp so we ensure a contiguous stream, instead of - * having rounding errors. */ - GST_BUFFER_DURATION (outbuf) = legacyresample->next_ts - - GST_BUFFER_TIMESTAMP (outbuf); - } else { - /* no valid offset know, we can still sortof calculate the duration though */ - GST_BUFFER_DURATION (outbuf) = - gst_util_uint64_scale_int (outsamples, GST_SECOND, - legacyresample->o_rate); - } - - /* check for possible mem corruption */ - if (outsize > GST_BUFFER_SIZE (outbuf)) { - /* this is an error that when it happens, would need fixing in the - * resample library; we told it we wanted only GST_BUFFER_SIZE (outbuf), - * and it gave us more ! */ - GST_WARNING_OBJECT (legacyresample, - "legacyresample, you memory corrupting bastard. " - "you gave me outsize %d while my buffer was size %d", - outsize, GST_BUFFER_SIZE (outbuf)); - return GST_FLOW_ERROR; - } - /* catch possibly wrong size differences */ - if (GST_BUFFER_SIZE (outbuf) - outsize > r->sample_size) { - GST_WARNING_OBJECT (legacyresample, - "legacyresample's written outsize %d too far from outbuffer's size %d", - outsize, GST_BUFFER_SIZE (outbuf)); - } - GST_BUFFER_SIZE (outbuf) = outsize; - - if (G_UNLIKELY (legacyresample->need_discont)) { - GST_DEBUG_OBJECT (legacyresample, - "marking this buffer with the DISCONT flag"); - GST_BUFFER_FLAG_SET (outbuf, GST_BUFFER_FLAG_DISCONT); - legacyresample->need_discont = FALSE; - } - - GST_LOG_OBJECT (legacyresample, "transformed to buffer of %d bytes, ts %" - GST_TIME_FORMAT ", duration %" GST_TIME_FORMAT ", offset %" - G_GINT64_FORMAT ", offset_end %" G_GINT64_FORMAT, - outsize, GST_TIME_ARGS (GST_BUFFER_TIMESTAMP (outbuf)), - GST_TIME_ARGS (GST_BUFFER_DURATION (outbuf)), - GST_BUFFER_OFFSET (outbuf), GST_BUFFER_OFFSET_END (outbuf)); - - - return GST_FLOW_OK; -} - -static gboolean -legacyresample_check_discont (GstLegacyresample * legacyresample, - GstClockTime timestamp) -{ - if (timestamp != GST_CLOCK_TIME_NONE && - legacyresample->prev_ts != GST_CLOCK_TIME_NONE && - legacyresample->prev_duration != GST_CLOCK_TIME_NONE && - timestamp != legacyresample->prev_ts + legacyresample->prev_duration) { - /* Potentially a discontinuous buffer. However, it turns out that many - * elements generate imperfect streams due to rounding errors, so we permit - * a small error (up to one sample) without triggering a filter - * flush/restart (if triggered incorrectly, this will be audible) */ - GstClockTimeDiff diff = timestamp - - (legacyresample->prev_ts + legacyresample->prev_duration); - - if (ABS (diff) > GST_SECOND / legacyresample->i_rate) { - GST_WARNING_OBJECT (legacyresample, - "encountered timestamp discontinuity of %" G_GINT64_FORMAT, diff); - return TRUE; - } - } - - return FALSE; -} - -static GstFlowReturn -legacyresample_transform (GstBaseTransform * base, GstBuffer * inbuf, - GstBuffer * outbuf) -{ - GstLegacyresample *legacyresample; - ResampleState *r; - guchar *data, *datacopy; - gulong size; - GstClockTime timestamp; - - legacyresample = GST_LEGACYRESAMPLE (base); - r = legacyresample->resample; - - data = GST_BUFFER_DATA (inbuf); - size = GST_BUFFER_SIZE (inbuf); - timestamp = GST_BUFFER_TIMESTAMP (inbuf); - - GST_LOG_OBJECT (legacyresample, "transforming buffer of %ld bytes, ts %" - GST_TIME_FORMAT ", duration %" GST_TIME_FORMAT ", offset %" - G_GINT64_FORMAT ", offset_end %" G_GINT64_FORMAT, - size, GST_TIME_ARGS (timestamp), - GST_TIME_ARGS (GST_BUFFER_DURATION (inbuf)), - GST_BUFFER_OFFSET (inbuf), GST_BUFFER_OFFSET_END (inbuf)); - - /* check for timestamp discontinuities and flush/reset if needed */ - if (G_UNLIKELY (legacyresample_check_discont (legacyresample, timestamp))) { - /* Flush internal samples */ - legacyresample_pushthrough (legacyresample); - /* Inform downstream element about discontinuity */ - legacyresample->need_discont = TRUE; - /* We want to recalculate the offset */ - legacyresample->ts_offset = -1; - } - - if (legacyresample->ts_offset == -1) { - /* if we don't know the initial offset yet, calculate it based on the - * input timestamp. */ - if (GST_CLOCK_TIME_IS_VALID (timestamp)) { - GstClockTime stime; - - /* offset used to calculate the timestamps. We use the sample offset for - * this to make it more accurate. We want the first buffer to have the - * same timestamp as the incoming timestamp. */ - legacyresample->next_ts = timestamp; - legacyresample->ts_offset = - gst_util_uint64_scale_int (timestamp, r->o_rate, GST_SECOND); - /* offset used to set as the buffer offset, this offset is always - * relative to the stream time, note that timestamp is not... */ - stime = (timestamp - base->segment.start) + base->segment.time; - legacyresample->offset = - gst_util_uint64_scale_int (stime, r->o_rate, GST_SECOND); - } - } - legacyresample->prev_ts = timestamp; - legacyresample->prev_duration = GST_BUFFER_DURATION (inbuf); - - /* need to memdup, resample takes ownership. */ - datacopy = g_memdup (data, size); - resample_add_input_data (r, datacopy, size, g_free, datacopy); - - return legacyresample_do_output (legacyresample, outbuf); -} - -/* push remaining data in the buffers out */ -static GstFlowReturn -legacyresample_pushthrough (GstLegacyresample * legacyresample) -{ - int outsize; - ResampleState *r; - GstBuffer *outbuf; - GstFlowReturn res = GST_FLOW_OK; - GstBaseTransform *trans; - - r = legacyresample->resample; - - outsize = resample_get_output_size (r); - if (outsize == 0) { - GST_DEBUG_OBJECT (legacyresample, "no internal buffers needing flush"); - goto done; - } - - trans = GST_BASE_TRANSFORM (legacyresample); - - res = gst_pad_alloc_buffer (trans->srcpad, GST_BUFFER_OFFSET_NONE, outsize, - GST_PAD_CAPS (trans->srcpad), &outbuf); - if (G_UNLIKELY (res != GST_FLOW_OK)) { - GST_WARNING_OBJECT (legacyresample, "failed allocating buffer of %d bytes", - outsize); - goto done; - } - - res = legacyresample_do_output (legacyresample, outbuf); - if (G_UNLIKELY (res != GST_FLOW_OK)) - goto done; - - res = gst_pad_push (trans->srcpad, outbuf); - -done: - return res; -} - -static gboolean -legacyresample_query (GstPad * pad, GstQuery * query) -{ - GstLegacyresample *legacyresample = - GST_LEGACYRESAMPLE (gst_pad_get_parent (pad)); - GstBaseTransform *trans = GST_BASE_TRANSFORM (legacyresample); - gboolean res = TRUE; - - switch (GST_QUERY_TYPE (query)) { - case GST_QUERY_LATENCY: - { - GstClockTime min, max; - gboolean live; - guint64 latency; - GstPad *peer; - gint rate = legacyresample->i_rate; - gint resampler_latency = legacyresample->filter_length / 2; - - if (gst_base_transform_is_passthrough (trans)) - resampler_latency = 0; - - if ((peer = gst_pad_get_peer (trans->sinkpad))) { - if ((res = gst_pad_query (peer, query))) { - gst_query_parse_latency (query, &live, &min, &max); - - GST_DEBUG ("Peer latency: min %" - GST_TIME_FORMAT " max %" GST_TIME_FORMAT, - GST_TIME_ARGS (min), GST_TIME_ARGS (max)); - - /* add our own latency */ - if (rate != 0 && resampler_latency != 0) - latency = - gst_util_uint64_scale (resampler_latency, GST_SECOND, rate); - else - latency = 0; - - GST_DEBUG ("Our latency: %" GST_TIME_FORMAT, GST_TIME_ARGS (latency)); - - min += latency; - if (max != GST_CLOCK_TIME_NONE) - max += latency; - - GST_DEBUG ("Calculated total latency : min %" - GST_TIME_FORMAT " max %" GST_TIME_FORMAT, - GST_TIME_ARGS (min), GST_TIME_ARGS (max)); - - gst_query_set_latency (query, live, min, max); - } - gst_object_unref (peer); - } - break; - } - default: - res = gst_pad_query_default (pad, query); - break; - } - gst_object_unref (legacyresample); - return res; -} - -static const GstQueryType * -legacyresample_query_type (GstPad * pad) -{ - static const GstQueryType types[] = { - GST_QUERY_LATENCY, - 0 - }; - - return types; -} - -static void -gst_legacyresample_set_property (GObject * object, guint prop_id, - const GValue * value, GParamSpec * pspec) -{ - GstLegacyresample *legacyresample; - - legacyresample = GST_LEGACYRESAMPLE (object); - - switch (prop_id) { - case PROP_FILTERLEN: - legacyresample->filter_length = g_value_get_int (value); - GST_DEBUG_OBJECT (GST_ELEMENT (legacyresample), "new filter length %d", - legacyresample->filter_length); - if (legacyresample->resample) { - resample_set_filter_length (legacyresample->resample, - legacyresample->filter_length); - gst_element_post_message (GST_ELEMENT (legacyresample), - gst_message_new_latency (GST_OBJECT (legacyresample))); - } - break; - default: - G_OBJECT_WARN_INVALID_PROPERTY_ID (object, prop_id, pspec); - break; - } -} - -static void -gst_legacyresample_get_property (GObject * object, guint prop_id, - GValue * value, GParamSpec * pspec) -{ - GstLegacyresample *legacyresample; - - legacyresample = GST_LEGACYRESAMPLE (object); - - switch (prop_id) { - case PROP_FILTERLEN: - g_value_set_int (value, legacyresample->filter_length); - break; - default: - G_OBJECT_WARN_INVALID_PROPERTY_ID (object, prop_id, pspec); - break; - } -} - - -static gboolean -plugin_init (GstPlugin * plugin) -{ - resample_init (); - - if (!gst_element_register (plugin, "legacyresample", GST_RANK_MARGINAL, - GST_TYPE_LEGACYRESAMPLE)) { - return FALSE; - } - - return TRUE; -} - -GST_PLUGIN_DEFINE (GST_VERSION_MAJOR, - GST_VERSION_MINOR, - legacyresample, - "Resamples audio", plugin_init, VERSION, "LGPL", GST_PACKAGE_NAME, - GST_PACKAGE_ORIGIN); diff --git a/gst/legacyresample/gstlegacyresample.h b/gst/legacyresample/gstlegacyresample.h deleted file mode 100644 index 59babc17..00000000 --- a/gst/legacyresample/gstlegacyresample.h +++ /dev/null @@ -1,79 +0,0 @@ -/* GStreamer - * Copyright (C) <1999> Erik Walthinsen <omega@cse.ogi.edu> - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Library General Public - * License as published by the Free Software Foundation; either - * version 2 of the License, or (at your option) any later version. - * - * This library 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 - * Library General Public License for more details. - * - * You should have received a copy of the GNU Library General Public - * License along with this library; if not, write to the - * Free Software Foundation, Inc., 59 Temple Place - Suite 330, - * Boston, MA 02111-1307, USA. - */ - - -#ifndef __LEGACYRESAMPLE_H__ -#define __LEGACYRESAMPLE_H__ - -#include <gst/gst.h> -#include <gst/base/gstbasetransform.h> - -#include "resample.h" - -G_BEGIN_DECLS - -#define GST_TYPE_LEGACYRESAMPLE \ - (gst_legacyresample_get_type()) -#define GST_LEGACYRESAMPLE(obj) \ - (G_TYPE_CHECK_INSTANCE_CAST((obj),GST_TYPE_LEGACYRESAMPLE,GstLegacyresample)) -#define GST_LEGACYRESAMPLE_CLASS(klass) \ - (G_TYPE_CHECK_CLASS_CAST((klass),GST_TYPE_LEGACYRESAMPLE,GstLegacyresampleClass)) -#define GST_IS_LEGACYRESAMPLE(obj) \ - (G_TYPE_CHECK_INSTANCE_TYPE((obj),GST_TYPE_LEGACYRESAMPLE)) -#define GST_IS_LEGACYRESAMPLE_CLASS(klass) \ - (G_TYPE_CHECK_CLASS_TYPE((klass),GST_TYPE_LEGACYRESAMPLE)) - -typedef struct _GstLegacyresample GstLegacyresample; -typedef struct _GstLegacyresampleClass GstLegacyresampleClass; - -/** - * GstLegacyresample: - * - * Opaque data structure. - */ -struct _GstLegacyresample { - GstBaseTransform element; - - GstCaps *srccaps, *sinkcaps; - - gboolean passthru; - gboolean need_discont; - - guint64 offset; - guint64 ts_offset; - GstClockTime next_ts; - GstClockTime prev_ts, prev_duration; - int channels; - - int i_rate; - int o_rate; - int filter_length; - - ResampleState * resample; -}; - -struct _GstLegacyresampleClass { - GstBaseTransformClass parent_class; -}; - -GType gst_legacyresample_get_type(void); - -G_END_DECLS - -#endif /* __LEGACYRESAMPLE_H__ */ diff --git a/gst/legacyresample/resample.c b/gst/legacyresample/resample.c deleted file mode 100644 index 0de6524d..00000000 --- a/gst/legacyresample/resample.c +++ /dev/null @@ -1,312 +0,0 @@ -/* Resampling library - * Copyright (C) <2001> David A. Schleef <ds@schleef.org> - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Library General Public - * License as published by the Free Software Foundation; either - * version 2 of the License, or any later version. - * - * This library 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 - * Library General Public License for more details. - * - * You should have received a copy of the GNU Library General Public - * License along with this library; if not, write to the - * Free Software Foundation, Inc., 59 Temple Place - Suite 330, - * Boston, MA 02111-1307, USA. - */ - -#ifdef HAVE_CONFIG_H -#include <config.h> -#endif - - -#include <string.h> -#include <math.h> -#include <stdio.h> -#include <stdlib.h> -#include <limits.h> - -#include "resample.h" -#include "buffer.h" -#include "debug.h" - -GST_DEBUG_CATEGORY (libaudioresample_debug); - -void -resample_init (void) -{ - static int inited = 0; - - if (!inited) { - inited = 1; - GST_DEBUG_CATEGORY_INIT (libaudioresample_debug, "libaudioresample", 0, - "audio resampling library"); - - } -} - -ResampleState * -resample_new (void) -{ - ResampleState *r; - - r = malloc (sizeof (ResampleState)); - memset (r, 0, sizeof (ResampleState)); - - r->filter_length = 16; - - r->i_start = 0; - if (r->filter_length & 1) { - r->o_start = 0; - } else { - r->o_start = r->o_inc * 0.5; - } - - r->queue = audioresample_buffer_queue_new (); - r->out_tmp = malloc (10000 * sizeof (double)); - - r->need_reinit = 1; - - return r; -} - -void -resample_free (ResampleState * r) -{ - if (r->buffer) { - free (r->buffer); - } - if (r->ft) { - functable_free (r->ft); - } - if (r->queue) { - audioresample_buffer_queue_free (r->queue); - } - if (r->out_tmp) { - free (r->out_tmp); - } - - free (r); -} - -static void -resample_buffer_free (AudioresampleBuffer * buffer, void *priv) -{ - if (buffer->priv2) { - ((void (*)(void *)) buffer->priv2) (buffer->priv); - } -} - -/* - * free_func: a function that frees the given closure. If NULL, caller is - * responsible for freeing. - */ -void -resample_add_input_data (ResampleState * r, void *data, int size, - void (*free_func) (void *), void *closure) -{ - AudioresampleBuffer *buffer; - - RESAMPLE_DEBUG ("data %p size %d", data, size); - - buffer = audioresample_buffer_new_with_data (data, size); - buffer->free = resample_buffer_free; - buffer->priv2 = (void *) free_func; - buffer->priv = closure; - - audioresample_buffer_queue_push (r->queue, buffer); -} - -void -resample_input_flush (ResampleState * r) -{ - RESAMPLE_DEBUG ("flush"); - - audioresample_buffer_queue_flush (r->queue); - r->buffer_filled = 0; - r->need_reinit = 1; -} - -void -resample_input_pushthrough (ResampleState * r) -{ - AudioresampleBuffer *buffer; - int filter_bytes; - int buffer_filled; - - if (r->sample_size == 0) - return; - - filter_bytes = r->filter_length * r->sample_size; - buffer_filled = r->buffer_filled; - - RESAMPLE_DEBUG ("pushthrough filter_bytes %d, filled %d", - filter_bytes, buffer_filled); - - /* if we have no pending samples, we don't need to do anything. */ - if (buffer_filled <= 0) - return; - - /* send filter_length/2 number of samples so we can get to the - * last queued samples */ - buffer = audioresample_buffer_new_and_alloc (filter_bytes / 2); - memset (buffer->data, 0, buffer->length); - - RESAMPLE_DEBUG ("pushthrough %u", buffer->length); - - audioresample_buffer_queue_push (r->queue, buffer); -} - -void -resample_input_eos (ResampleState * r) -{ - RESAMPLE_DEBUG ("EOS"); - resample_input_pushthrough (r); - r->eos = 1; -} - -int -resample_get_output_size_for_input (ResampleState * r, int size) -{ - int outsize; - double outd; - int avail; - int filter_bytes; - int buffer_filled; - - if (r->sample_size == 0) - return 0; - - filter_bytes = r->filter_length * r->sample_size; - buffer_filled = filter_bytes / 2 - r->buffer_filled / 2; - - avail = - audioresample_buffer_queue_get_depth (r->queue) + size - buffer_filled; - - RESAMPLE_DEBUG ("avail %d, o_rate %f, i_rate %f, filter_bytes %d, filled %d", - avail, r->o_rate, r->i_rate, filter_bytes, buffer_filled); - if (avail <= 0) - return 0; - - outd = (double) avail *r->o_rate / r->i_rate; - - outsize = (int) floor (outd); - - /* round off for sample size */ - outsize -= outsize % r->sample_size; - - return outsize; -} - -int -resample_get_input_size_for_output (ResampleState * r, int size) -{ - int outsize; - double outd; - int avail; - - if (r->sample_size == 0) - return 0; - - avail = size; - - RESAMPLE_DEBUG ("size %d, o_rate %f, i_rate %f", avail, r->o_rate, r->i_rate); - outd = (double) avail *r->i_rate / r->o_rate; - - outsize = (int) ceil (outd); - - /* round off for sample size */ - outsize -= outsize % r->sample_size; - - return outsize; -} - -int -resample_get_output_size (ResampleState * r) -{ - return resample_get_output_size_for_input (r, 0); -} - -int -resample_get_output_data (ResampleState * r, void *data, int size) -{ - r->o_buf = data; - r->o_size = size; - - if (size == 0) - return 0; - - switch (r->method) { - case 0: - resample_scale_ref (r); - break; - case 1: - resample_scale_functable (r); - break; - default: - break; - } - - return size - r->o_size; -} - -void -resample_set_filter_length (ResampleState * r, int length) -{ - r->filter_length = length; - r->need_reinit = 1; -} - -void -resample_set_input_rate (ResampleState * r, double rate) -{ - r->i_rate = rate; - r->need_reinit = 1; -} - -void -resample_set_output_rate (ResampleState * r, double rate) -{ - r->o_rate = rate; - r->need_reinit = 1; -} - -void -resample_set_n_channels (ResampleState * r, int n_channels) -{ - r->n_channels = n_channels; - r->sample_size = r->n_channels * resample_format_size (r->format); - r->need_reinit = 1; -} - -void -resample_set_format (ResampleState * r, ResampleFormat format) -{ - r->format = format; - r->sample_size = r->n_channels * resample_format_size (r->format); - r->need_reinit = 1; -} - -void -resample_set_method (ResampleState * r, int method) -{ - r->method = method; - r->need_reinit = 1; -} - -int -resample_format_size (ResampleFormat format) -{ - switch (format) { - case RESAMPLE_FORMAT_S16: - return 2; - case RESAMPLE_FORMAT_S32: - case RESAMPLE_FORMAT_F32: - return 4; - case RESAMPLE_FORMAT_F64: - return 8; - } - return 0; -} diff --git a/gst/legacyresample/resample.h b/gst/legacyresample/resample.h deleted file mode 100644 index ba14983b..00000000 --- a/gst/legacyresample/resample.h +++ /dev/null @@ -1,131 +0,0 @@ -/* Resampling library - * Copyright (C) <2001> David Schleef <ds@schleef.org> - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Library General Public - * License as published by the Free Software Foundation; either - * version 2 of the License, or any later version. - * - * This library 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 - * Library General Public License for more details. - * - * You should have received a copy of the GNU Library General Public - * License along with this library; if not, write to the - * Free Software Foundation, Inc., 59 Temple Place - Suite 330, - * Boston, MA 02111-1307, USA. - */ - - -#ifndef __RESAMPLE_H__ -#define __RESAMPLE_H__ - -#include "functable.h" -#include "buffer.h" - -#ifndef M_PI -#define M_PI 3.14159265358979323846 -#endif - -#ifdef WIN32 -#define rint(x) (floor((x)+0.5)) -#endif - -typedef enum { - RESAMPLE_FORMAT_S16 = 0, - RESAMPLE_FORMAT_S32, - RESAMPLE_FORMAT_F32, - RESAMPLE_FORMAT_F64 -} ResampleFormat; - -typedef void (*ResampleCallback) (void *); - -typedef struct _ResampleState ResampleState; - -struct _ResampleState { - /* parameters */ - - int n_channels; - ResampleFormat format; - - int filter_length; - - double i_rate; - double o_rate; - - int method; - - /* internal parameters */ - - int need_reinit; - - double halftaps; - - /* filter state */ - - unsigned char *o_buf; - int o_size; - - AudioresampleBufferQueue *queue; - int eos; - int started; - - int sample_size; - - unsigned char *buffer; - int buffer_len; - int buffer_filled; - - double i_start; - double o_start; - - double i_inc; - double o_inc; - - double sinc_scale; - - double i_end; - double o_end; - - int i_samples; - int o_samples; - - //void *i_buf; - - Functable *ft; - - double *out_tmp; -}; - -void resample_init (void); -void resample_cleanup (void); - -ResampleState *resample_new (void); -void resample_free (ResampleState *state); - -void resample_add_input_data (ResampleState * r, void *data, int size, - ResampleCallback free_func, void *closure); -void resample_input_eos (ResampleState *r); -void resample_input_flush (ResampleState *r); -void resample_input_pushthrough (ResampleState *r); - -int resample_get_output_size_for_input (ResampleState * r, int size); -int resample_get_input_size_for_output (ResampleState * r, int size); - -int resample_get_output_size (ResampleState *r); -int resample_get_output_data (ResampleState *r, void *data, int size); - -void resample_set_filter_length (ResampleState *r, int length); -void resample_set_input_rate (ResampleState *r, double rate); -void resample_set_output_rate (ResampleState *r, double rate); -void resample_set_n_channels (ResampleState *r, int n_channels); -void resample_set_format (ResampleState *r, ResampleFormat format); -void resample_set_method (ResampleState *r, int method); -int resample_format_size (ResampleFormat format); - -void resample_scale_ref (ResampleState * r); -void resample_scale_functable (ResampleState * r); - -#endif /* __RESAMPLE_H__ */ - diff --git a/gst/legacyresample/resample_functable.c b/gst/legacyresample/resample_functable.c deleted file mode 100644 index fc3e38a8..00000000 --- a/gst/legacyresample/resample_functable.c +++ /dev/null @@ -1,274 +0,0 @@ -/* Resampling library - * Copyright (C) <2001> David A. Schleef <ds@schleef.org> - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Library General Public - * License as published by the Free Software Foundation; either - * version 2 of the License, or any later version. - * - * This library 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 - * Library General Public License for more details. - * - * You should have received a copy of the GNU Library General Public - * License along with this library; if not, write to the - * Free Software Foundation, Inc., 59 Temple Place - Suite 330, - * Boston, MA 02111-1307, USA. - */ - -#ifdef HAVE_CONFIG_H -#include <config.h> -#endif - - -#include <string.h> -#include <math.h> -#include <stdio.h> -#include <stdlib.h> -#include <limits.h> - -#include <gst/math-compat.h> - -#include "_stdint.h" - -#include "resample.h" -#include "buffer.h" -#include "debug.h" - -static void -func_sinc (double *fx, double *dfx, double x, void *closure) -{ - //double scale = *(double *)closure; - double scale = M_PI; - - if (x == 0) { - *fx = 1; - *dfx = 0; - return; - } - - x *= scale; - *fx = sin (x) / x; - *dfx = scale * (cos (x) - sin (x) / x) / x; -} - -static void -func_hanning (double *fx, double *dfx, double x, void *closure) -{ - double width = *(double *) closure; - - if (x < width && x > -width) { - x /= width; - *fx = (1 - x * x) * (1 - x * x); - *dfx = -2 * 2 * x / width * (1 - x * x); - } else { - *fx = 0; - *dfx = 0; - } -} - -#if 0 -static double -resample_sinc_window (double x, double halfwidth, double scale) -{ - double y; - - if (x == 0) - return 1.0; - if (x < -halfwidth || x > halfwidth) - return 0.0; - - y = sin (x * M_PI * scale) / (x * M_PI * scale) * scale; - - x /= halfwidth; - y *= (1 - x * x) * (1 - x * x); - - return y; -} -#endif - -#if 0 -static void -functable_test (Functable * ft, double halfwidth) -{ - int i; - double x; - - for (i = 0; i < 100; i++) { - x = i * 0.1; - printf ("%d %g %g\n", i, resample_sinc_window (x, halfwidth, 1.0), - functable_evaluate (ft, x)); - } - exit (0); - -} -#endif - - -void -resample_scale_functable (ResampleState * r) -{ - if (r->need_reinit) { - double hanning_width; - - RESAMPLE_DEBUG ("sample size %d", r->sample_size); - - if (r->buffer) - free (r->buffer); - r->buffer_len = r->sample_size * r->filter_length; - r->buffer = malloc (r->buffer_len); - memset (r->buffer, 0, r->buffer_len); - - r->i_inc = r->o_rate / r->i_rate; - r->o_inc = r->i_rate / r->o_rate; - RESAMPLE_DEBUG ("i_inc %g o_inc %g", r->i_inc, r->o_inc); - - r->i_start = -r->i_inc * r->filter_length; - - if (r->ft) { - functable_free (r->ft); - } - r->ft = functable_new (); - functable_set_length (r->ft, r->filter_length * 16); - functable_set_offset (r->ft, -r->filter_length / 2); - functable_set_multiplier (r->ft, 1 / 16.0); - - hanning_width = r->filter_length / 2; - functable_calculate (r->ft, func_sinc, NULL); - functable_calculate_multiply (r->ft, func_hanning, &hanning_width); - - //functable_test(r->ft, 0.5 * r->filter_length); -#if 0 - if (r->i_inc < 1.0) { - r->sinc_scale = r->i_inc; - if (r->sinc_scale == 0.5) { - /* strange things happen at integer multiples */ - r->sinc_scale = 1.0; - } - } else { - r->sinc_scale = 1.0; - } -#else - r->sinc_scale = 1.0; -#endif - - r->need_reinit = 0; - } - - while (r->o_size > 0) { - double midpoint; - int i; - int j; - - RESAMPLE_DEBUG ("i_start %g", r->i_start); - midpoint = r->i_start + (r->filter_length - 1) * 0.5 * r->i_inc; - if (midpoint > 0.5 * r->i_inc) { - RESAMPLE_ERROR ("inconsistent state"); - } - while (midpoint < -0.5 * r->i_inc) { - AudioresampleBuffer *buffer; - - buffer = audioresample_buffer_queue_pull (r->queue, r->sample_size); - if (buffer == NULL) { - RESAMPLE_ERROR ("buffer_queue_pull returned NULL"); - return; - } - - r->i_start += r->i_inc; - RESAMPLE_DEBUG ("pulling (i_start = %g)", r->i_start); - - midpoint += r->i_inc; - memmove (r->buffer, r->buffer + r->sample_size, - r->buffer_len - r->sample_size); - - memcpy (r->buffer + r->buffer_len - r->sample_size, buffer->data, - r->sample_size); - audioresample_buffer_unref (buffer); - } - - switch (r->format) { - case RESAMPLE_FORMAT_S16: - for (i = 0; i < r->n_channels; i++) { - double acc = 0; - double offset; - double x; - - for (j = 0; j < r->filter_length; j++) { - offset = (r->i_start + j * r->i_inc) * r->o_inc; - x = *(int16_t *) (r->buffer + i * sizeof (int16_t) + - j * r->sample_size); - acc += functable_evaluate (r->ft, offset) * x; - //acc += resample_sinc_window (offset, r->filter_length * 0.5, r->sinc_scale) * x; - } - if (acc < -32768.0) - acc = -32768.0; - if (acc > 32767.0) - acc = 32767.0; - - *(int16_t *) (r->o_buf + i * sizeof (int16_t)) = rint (acc); - } - break; - case RESAMPLE_FORMAT_S32: - for (i = 0; i < r->n_channels; i++) { - double acc = 0; - double offset; - double x; - - for (j = 0; j < r->filter_length; j++) { - offset = (r->i_start + j * r->i_inc) * r->o_inc; - x = *(int32_t *) (r->buffer + i * sizeof (int32_t) + - j * r->sample_size); - acc += functable_evaluate (r->ft, offset) * x; - //acc += resample_sinc_window (offset, r->filter_length * 0.5, r->sinc_scale) * x; - } - if (acc < -2147483648.0) - acc = -2147483648.0; - if (acc > 2147483647.0) - acc = 2147483647.0; - - *(int32_t *) (r->o_buf + i * sizeof (int32_t)) = rint (acc); - } - break; - case RESAMPLE_FORMAT_F32: - for (i = 0; i < r->n_channels; i++) { - double acc = 0; - double offset; - double x; - - for (j = 0; j < r->filter_length; j++) { - offset = (r->i_start + j * r->i_inc) * r->o_inc; - x = *(float *) (r->buffer + i * sizeof (float) + - j * r->sample_size); - acc += functable_evaluate (r->ft, offset) * x; - //acc += resample_sinc_window (offset, r->filter_length * 0.5, r->sinc_scale) * x; - } - - *(float *) (r->o_buf + i * sizeof (float)) = acc; - } - break; - case RESAMPLE_FORMAT_F64: - for (i = 0; i < r->n_channels; i++) { - double acc = 0; - double offset; - double x; - - for (j = 0; j < r->filter_length; j++) { - offset = (r->i_start + j * r->i_inc) * r->o_inc; - x = *(double *) (r->buffer + i * sizeof (double) + - j * r->sample_size); - acc += functable_evaluate (r->ft, offset) * x; - //acc += resample_sinc_window (offset, r->filter_length * 0.5, r->sinc_scale) * x; - } - - *(double *) (r->o_buf + i * sizeof (double)) = acc; - } - break; - } - - r->i_start -= 1.0; - r->o_buf += r->sample_size; - r->o_size -= r->sample_size; - } - -} diff --git a/gst/legacyresample/resample_ref.c b/gst/legacyresample/resample_ref.c deleted file mode 100644 index 546e7cc9..00000000 --- a/gst/legacyresample/resample_ref.c +++ /dev/null @@ -1,224 +0,0 @@ -/* Resampling library - * Copyright (C) <2001> David A. Schleef <ds@schleef.org> - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Library General Public - * License as published by the Free Software Foundation; either - * version 2 of the License, or any later version. - * - * This library 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 - * Library General Public License for more details. - * - * You should have received a copy of the GNU Library General Public - * License along with this library; if not, write to the - * Free Software Foundation, Inc., 59 Temple Place - Suite 330, - * Boston, MA 02111-1307, USA. - */ - -#ifdef HAVE_CONFIG_H -#include <config.h> -#endif - - -#include <string.h> -#include <math.h> -#include <stdio.h> -#include <stdlib.h> -#include <limits.h> - -#include <gst/math-compat.h> -#include "_stdint.h" - -#include "resample.h" -#include "buffer.h" -#include "debug.h" - -static double -resample_sinc_window (double x, double halfwidth, double scale) -{ - double y; - - if (x == 0) - return 1.0; - if (x < -halfwidth || x > halfwidth) - return 0.0; - - y = sin (x * M_PI * scale) / (x * M_PI * scale) * scale; - - x /= halfwidth; - y *= (1 - x * x) * (1 - x * x); - - return y; -} - -void -resample_scale_ref (ResampleState * r) -{ - if (r->need_reinit) { - RESAMPLE_DEBUG ("sample size %d", r->sample_size); - - if (r->buffer) - free (r->buffer); - r->buffer_len = r->sample_size * r->filter_length; - r->buffer = malloc (r->buffer_len); - memset (r->buffer, 0, r->buffer_len); - r->buffer_filled = 0; - - r->i_inc = r->o_rate / r->i_rate; - r->o_inc = r->i_rate / r->o_rate; - RESAMPLE_DEBUG ("i_inc %g o_inc %g", r->i_inc, r->o_inc); - - r->i_start = -r->i_inc * r->filter_length; - - r->need_reinit = 0; - -#if 0 - if (r->i_inc < 1.0) { - r->sinc_scale = r->i_inc; - if (r->sinc_scale == 0.5) { - /* strange things happen at integer multiples */ - r->sinc_scale = 1.0; - } - } else { - r->sinc_scale = 1.0; - } -#else - r->sinc_scale = 1.0; -#endif - } - - RESAMPLE_DEBUG ("asked to resample %d bytes", r->o_size); - RESAMPLE_DEBUG ("%d bytes in queue", - audioresample_buffer_queue_get_depth (r->queue)); - - while (r->o_size >= r->sample_size) { - double midpoint; - int i; - int j; - - midpoint = r->i_start + (r->filter_length - 1) * 0.5 * r->i_inc; - RESAMPLE_DEBUG - ("still need to output %d bytes, %d input left, i_start %g, midpoint %f", - r->o_size, audioresample_buffer_queue_get_depth (r->queue), r->i_start, - midpoint); - if (midpoint > 0.5 * r->i_inc) { - RESAMPLE_ERROR ("inconsistent state"); - } - while (midpoint < -0.5 * r->i_inc) { - AudioresampleBuffer *buffer; - - RESAMPLE_DEBUG ("midpoint %f < %f, r->i_inc %f", midpoint, - -0.5 * r->i_inc, r->i_inc); - buffer = audioresample_buffer_queue_pull (r->queue, r->sample_size); - if (buffer == NULL) { - /* FIXME: for the first buffer, this isn't necessarily an error, - * since because of the filter length we'll output less buffers. - * deal with that so we don't print to console */ - RESAMPLE_ERROR ("buffer_queue_pull returned NULL"); - return; - } - - r->i_start += r->i_inc; - RESAMPLE_DEBUG ("pulling (i_start = %g)", r->i_start); - - midpoint += r->i_inc; - memmove (r->buffer, r->buffer + r->sample_size, - r->buffer_len - r->sample_size); - - memcpy (r->buffer + r->buffer_len - r->sample_size, buffer->data, - r->sample_size); - r->buffer_filled = MIN (r->buffer_filled + r->sample_size, r->buffer_len); - - audioresample_buffer_unref (buffer); - } - - switch (r->format) { - case RESAMPLE_FORMAT_S16: - for (i = 0; i < r->n_channels; i++) { - double acc = 0; - double offset; - double x; - - for (j = 0; j < r->filter_length; j++) { - offset = (r->i_start + j * r->i_inc) * r->o_inc; - x = *(int16_t *) (r->buffer + i * sizeof (int16_t) + - j * r->sample_size); - acc += - resample_sinc_window (offset, r->filter_length * 0.5, - r->sinc_scale) * x; - } - if (acc < -32768.0) - acc = -32768.0; - if (acc > 32767.0) - acc = 32767.0; - - *(int16_t *) (r->o_buf + i * sizeof (int16_t)) = rint (acc); - } - break; - case RESAMPLE_FORMAT_S32: - for (i = 0; i < r->n_channels; i++) { - double acc = 0; - double offset; - double x; - - for (j = 0; j < r->filter_length; j++) { - offset = (r->i_start + j * r->i_inc) * r->o_inc; - x = *(int32_t *) (r->buffer + i * sizeof (int32_t) + - j * r->sample_size); - acc += - resample_sinc_window (offset, r->filter_length * 0.5, - r->sinc_scale) * x; - } - if (acc < -2147483648.0) - acc = -2147483648.0; - if (acc > 2147483647.0) - acc = 2147483647.0; - - *(int32_t *) (r->o_buf + i * sizeof (int32_t)) = rint (acc); - } - break; - case RESAMPLE_FORMAT_F32: - for (i = 0; i < r->n_channels; i++) { - double acc = 0; - double offset; - double x; - - for (j = 0; j < r->filter_length; j++) { - offset = (r->i_start + j * r->i_inc) * r->o_inc; - x = *(float *) (r->buffer + i * sizeof (float) + - j * r->sample_size); - acc += - resample_sinc_window (offset, r->filter_length * 0.5, - r->sinc_scale) * x; - } - - *(float *) (r->o_buf + i * sizeof (float)) = acc; - } - break; - case RESAMPLE_FORMAT_F64: - for (i = 0; i < r->n_channels; i++) { - double acc = 0; - double offset; - double x; - - for (j = 0; j < r->filter_length; j++) { - offset = (r->i_start + j * r->i_inc) * r->o_inc; - x = *(double *) (r->buffer + i * sizeof (double) + - j * r->sample_size); - acc += - resample_sinc_window (offset, r->filter_length * 0.5, - r->sinc_scale) * x; - } - - *(double *) (r->o_buf + i * sizeof (double)) = acc; - } - break; - } - - r->i_start -= 1.0; - r->o_buf += r->sample_size; - r->o_size -= r->sample_size; - } -} diff --git a/gst/librfb/Makefile.in b/gst/librfb/Makefile.in index 66e652ff..678c3373 100644 --- a/gst/librfb/Makefile.in +++ b/gst/librfb/Makefile.in @@ -1,4 +1,4 @@ -# Makefile.in generated by automake 1.11.5 from Makefile.am. +# Makefile.in generated by automake 1.11.6 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, @@ -246,11 +246,10 @@ DIRECT3D_LIBS = @DIRECT3D_LIBS@ DIRECTDRAW_LIBS = @DIRECTDRAW_LIBS@ DIRECTFB_CFLAGS = @DIRECTFB_CFLAGS@ DIRECTFB_LIBS = @DIRECTFB_LIBS@ +DIRECTSHOW_LIBS = @DIRECTSHOW_LIBS@ DIRECTSOUND_LIBS = @DIRECTSOUND_LIBS@ DIRECTX_CFLAGS = @DIRECTX_CFLAGS@ DIRECTX_LDFLAGS = @DIRECTX_LDFLAGS@ -DIVXDEC_LIBS = @DIVXDEC_LIBS@ -DIVXENC_LIBS = @DIVXENC_LIBS@ DLLTOOL = @DLLTOOL@ DSYMUTIL = @DSYMUTIL@ DTS_LIBS = @DTS_LIBS@ @@ -285,7 +284,9 @@ GIO_LIBS = @GIO_LIBS@ GLIB_CFLAGS = @GLIB_CFLAGS@ GLIB_COMPILE_SCHEMAS = @GLIB_COMPILE_SCHEMAS@ GLIB_EXTRA_CFLAGS = @GLIB_EXTRA_CFLAGS@ +GLIB_GENMARSHAL = @GLIB_GENMARSHAL@ GLIB_LIBS = @GLIB_LIBS@ +GLIB_MKENUMS = @GLIB_MKENUMS@ GLIB_PREFIX = @GLIB_PREFIX@ GLIB_REQ = @GLIB_REQ@ GME_LIBS = @GME_LIBS@ @@ -361,13 +362,14 @@ HAVE_CXX = @HAVE_CXX@ HAVE_DIRECT3D = @HAVE_DIRECT3D@ HAVE_DIRECT3D9 = @HAVE_DIRECT3D9@ HAVE_DIRECTDRAW = @HAVE_DIRECTDRAW@ +HAVE_DIRECTSHOW = @HAVE_DIRECTSHOW@ HAVE_DIRECTSOUND = @HAVE_DIRECTSOUND@ HAVE_DTS = @HAVE_DTS@ HAVE_FAAC = @HAVE_FAAC@ HAVE_FAAD = @HAVE_FAAD@ HAVE_FLITE = @HAVE_FLITE@ HAVE_GSM = @HAVE_GSM@ -HAVE_JP2K = @HAVE_JP2K@ +HAVE_JASPER = @HAVE_JASPER@ HAVE_NAS = @HAVE_NAS@ HAVE_VPX = @HAVE_VPX@ HAVE_WILDMIDI = @HAVE_WILDMIDI@ @@ -381,7 +383,7 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ INTLLIBS = @INTLLIBS@ INTL_MACOSX_LIBS = @INTL_MACOSX_LIBS@ -JP2K_LIBS = @JP2K_LIBS@ +JASPER_LIBS = @JASPER_LIBS@ KATE_CFLAGS = @KATE_CFLAGS@ KATE_LIBS = @KATE_LIBS@ LD = @LD@ @@ -417,6 +419,8 @@ MODPLUG_CFLAGS = @MODPLUG_CFLAGS@ MODPLUG_LIBS = @MODPLUG_LIBS@ MPEG2ENC_CFLAGS = @MPEG2ENC_CFLAGS@ MPEG2ENC_LIBS = @MPEG2ENC_LIBS@ +MPG123_CFLAGS = @MPG123_CFLAGS@ +MPG123_LIBS = @MPG123_LIBS@ MPLEX_CFLAGS = @MPLEX_CFLAGS@ MPLEX_LDFLAGS = @MPLEX_LDFLAGS@ MPLEX_LIBS = @MPLEX_LIBS@ diff --git a/gst/librfb/gstrfbsrc.c b/gst/librfb/gstrfbsrc.c index 235acd5a..3129c130 100644 --- a/gst/librfb/gstrfbsrc.c +++ b/gst/librfb/gstrfbsrc.c @@ -197,7 +197,7 @@ gst_rfb_src_init (GstRfbSrc * src, GstRfbSrcClass * klass) WSADATA wsa_data; if (WSAStartup (MAKEWORD (2, 2), &wsa_data) != 0) { - GST_ERROR_OBJECT (sink, "WSAStartup failed: 0x%08x", WSAGetLastError ()); + GST_ERROR_OBJECT (src, "WSAStartup failed: 0x%08x", WSAGetLastError ()); } } #endif diff --git a/gst/liveadder/Makefile.in b/gst/liveadder/Makefile.in index 4c7b90d9..3963ac0c 100644 --- a/gst/liveadder/Makefile.in +++ b/gst/liveadder/Makefile.in @@ -1,4 +1,4 @@ -# Makefile.in generated by automake 1.11.5 from Makefile.am. +# Makefile.in generated by automake 1.11.6 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, @@ -237,11 +237,10 @@ DIRECT3D_LIBS = @DIRECT3D_LIBS@ DIRECTDRAW_LIBS = @DIRECTDRAW_LIBS@ DIRECTFB_CFLAGS = @DIRECTFB_CFLAGS@ DIRECTFB_LIBS = @DIRECTFB_LIBS@ +DIRECTSHOW_LIBS = @DIRECTSHOW_LIBS@ DIRECTSOUND_LIBS = @DIRECTSOUND_LIBS@ DIRECTX_CFLAGS = @DIRECTX_CFLAGS@ DIRECTX_LDFLAGS = @DIRECTX_LDFLAGS@ -DIVXDEC_LIBS = @DIVXDEC_LIBS@ -DIVXENC_LIBS = @DIVXENC_LIBS@ DLLTOOL = @DLLTOOL@ DSYMUTIL = @DSYMUTIL@ DTS_LIBS = @DTS_LIBS@ @@ -276,7 +275,9 @@ GIO_LIBS = @GIO_LIBS@ GLIB_CFLAGS = @GLIB_CFLAGS@ GLIB_COMPILE_SCHEMAS = @GLIB_COMPILE_SCHEMAS@ GLIB_EXTRA_CFLAGS = @GLIB_EXTRA_CFLAGS@ +GLIB_GENMARSHAL = @GLIB_GENMARSHAL@ GLIB_LIBS = @GLIB_LIBS@ +GLIB_MKENUMS = @GLIB_MKENUMS@ GLIB_PREFIX = @GLIB_PREFIX@ GLIB_REQ = @GLIB_REQ@ GME_LIBS = @GME_LIBS@ @@ -352,13 +353,14 @@ HAVE_CXX = @HAVE_CXX@ HAVE_DIRECT3D = @HAVE_DIRECT3D@ HAVE_DIRECT3D9 = @HAVE_DIRECT3D9@ HAVE_DIRECTDRAW = @HAVE_DIRECTDRAW@ +HAVE_DIRECTSHOW = @HAVE_DIRECTSHOW@ HAVE_DIRECTSOUND = @HAVE_DIRECTSOUND@ HAVE_DTS = @HAVE_DTS@ HAVE_FAAC = @HAVE_FAAC@ HAVE_FAAD = @HAVE_FAAD@ HAVE_FLITE = @HAVE_FLITE@ HAVE_GSM = @HAVE_GSM@ -HAVE_JP2K = @HAVE_JP2K@ +HAVE_JASPER = @HAVE_JASPER@ HAVE_NAS = @HAVE_NAS@ HAVE_VPX = @HAVE_VPX@ HAVE_WILDMIDI = @HAVE_WILDMIDI@ @@ -372,7 +374,7 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ INTLLIBS = @INTLLIBS@ INTL_MACOSX_LIBS = @INTL_MACOSX_LIBS@ -JP2K_LIBS = @JP2K_LIBS@ +JASPER_LIBS = @JASPER_LIBS@ KATE_CFLAGS = @KATE_CFLAGS@ KATE_LIBS = @KATE_LIBS@ LD = @LD@ @@ -408,6 +410,8 @@ MODPLUG_CFLAGS = @MODPLUG_CFLAGS@ MODPLUG_LIBS = @MODPLUG_LIBS@ MPEG2ENC_CFLAGS = @MPEG2ENC_CFLAGS@ MPEG2ENC_LIBS = @MPEG2ENC_LIBS@ +MPG123_CFLAGS = @MPG123_CFLAGS@ +MPG123_LIBS = @MPG123_LIBS@ MPLEX_CFLAGS = @MPLEX_CFLAGS@ MPLEX_LDFLAGS = @MPLEX_LDFLAGS@ MPLEX_LIBS = @MPLEX_LIBS@ diff --git a/gst/liveadder/liveadder.c b/gst/liveadder/liveadder.c index e3c6278e..5cdced4d 100644 --- a/gst/liveadder/liveadder.c +++ b/gst/liveadder/liveadder.c @@ -458,7 +458,7 @@ gst_live_adder_src_activate_push (GstPad * pad, gboolean active) /* start pushing out buffers */ GST_DEBUG_OBJECT (adder, "Starting task on srcpad"); gst_pad_start_task (adder->srcpad, - (GstTaskFunction) gst_live_adder_loop, adder); + (GstTaskFunction) gst_live_adder_loop, adder, NULL); } else { /* make sure all data processing stops ASAP */ gst_live_adder_flush_start (adder); diff --git a/gst/mpegdemux/Makefile.am b/gst/mpegdemux/Makefile.am index d1372fbd..6fba753e 100644 --- a/gst/mpegdemux/Makefile.am +++ b/gst/mpegdemux/Makefile.am @@ -1,49 +1,33 @@ -plugin_LTLIBRARIES = libgstmpegdemux.la +plugin_LTLIBRARIES = libgstmpegpsdemux.la -libgstmpegdemux_la_SOURCES = \ - flumpegdemux.c \ +libgstmpegpsdemux_la_SOURCES = \ + plugin.c \ gstmpegdemux.c \ gstpesfilter.c -# flutspatinfo.c -# flutspmtinfo.c -# flutspmtstreaminfo.c -# gstmpegdesc.c \ -# gstmpegtsdemux.c \ -# gstsectionfilter.c \ -# mpegtsparse.c \ -# mpegtspacketizer.c -libgstmpegdemux_la_CFLAGS = \ +libgstmpegpsdemux_la_CFLAGS = \ $(GST_PLUGINS_BASE_CFLAGS) \ $(GST_BASE_CFLAGS) $(GST_CFLAGS) -libgstmpegdemux_la_LIBADD = \ +libgstmpegpsdemux_la_LIBADD = \ $(GST_PLUGINS_BASE_LIBS) -lgsttag-$(GST_API_VERSION) \ $(GST_BASE_LIBS) $(GST_LIBS) -libgstmpegdemux_la_LDFLAGS = $(GST_PLUGIN_LDFLAGS) -libgstmpegdemux_la_LIBTOOLFLAGS = --tag=disable-static +libgstmpegpsdemux_la_LDFLAGS = $(GST_PLUGIN_LDFLAGS) +libgstmpegpsdemux_la_LIBTOOLFLAGS = --tag=disable-static noinst_HEADERS = \ gstmpegdefs.h \ - gstmpegdesc.h \ gstmpegdemux.h \ - gstpesfilter.h \ - gstmpegtsdemux.h \ - flutspatinfo.h \ - flutspmtinfo.h \ - flutspmtstreaminfo.h \ - gstsectionfilter.h \ - mpegtspacketizer.h \ - mpegtsparse.h + gstpesfilter.h Android.mk: Makefile.am $(BUILT_SOURCES) androgenizer \ - -:PROJECT libgstmpegdemux -:SHARED libgstmpegdemux \ + -:PROJECT libgstmpegpsdemux -:SHARED libgstmpegpsdemux \ -:TAGS eng debug \ -:REL_TOP $(top_srcdir) -:ABS_TOP $(abs_top_srcdir) \ - -:SOURCES $(libgstmpegdemux_la_SOURCES) \ - -:CFLAGS $(DEFS) $(DEFAULT_INCLUDES) $(libgstmpegdemux_la_CFLAGS) \ - -:LDFLAGS $(libgstmpegdemux_la_LDFLAGS) \ - $(libgstmpegdemux_la_LIBADD) \ + -:SOURCES $(libgstmpegpsdemux_la_SOURCES) \ + -:CFLAGS $(DEFS) $(DEFAULT_INCLUDES) $(libgstmpegpsdemux_la_CFLAGS) \ + -:LDFLAGS $(libgstmpegpsdemux_la_LDFLAGS) \ + $(libgstmpegpsdemux_la_LIBADD) \ -ldl \ -:PASSTHROUGH LOCAL_ARM_MODE:=arm \ LOCAL_MODULE_PATH:='$$(TARGET_OUT)/lib/gstreamer-0.10' \ diff --git a/gst/mpegdemux/Makefile.in b/gst/mpegdemux/Makefile.in index a26ea038..c6e9a6fa 100644 --- a/gst/mpegdemux/Makefile.in +++ b/gst/mpegdemux/Makefile.in @@ -1,4 +1,4 @@ -# Makefile.in generated by automake 1.11.5 from Makefile.am. +# Makefile.in generated by automake 1.11.6 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, @@ -127,19 +127,19 @@ am__uninstall_files_from_dir = { \ am__installdirs = "$(DESTDIR)$(plugindir)" LTLIBRARIES = $(plugin_LTLIBRARIES) am__DEPENDENCIES_1 = -libgstmpegdemux_la_DEPENDENCIES = $(am__DEPENDENCIES_1) \ +libgstmpegpsdemux_la_DEPENDENCIES = $(am__DEPENDENCIES_1) \ $(am__DEPENDENCIES_1) $(am__DEPENDENCIES_1) -am_libgstmpegdemux_la_OBJECTS = libgstmpegdemux_la-flumpegdemux.lo \ - libgstmpegdemux_la-gstmpegdemux.lo \ - libgstmpegdemux_la-gstpesfilter.lo -libgstmpegdemux_la_OBJECTS = $(am_libgstmpegdemux_la_OBJECTS) +am_libgstmpegpsdemux_la_OBJECTS = libgstmpegpsdemux_la-plugin.lo \ + libgstmpegpsdemux_la-gstmpegdemux.lo \ + libgstmpegpsdemux_la-gstpesfilter.lo +libgstmpegpsdemux_la_OBJECTS = $(am_libgstmpegpsdemux_la_OBJECTS) AM_V_lt = $(am__v_lt_@AM_V@) am__v_lt_ = $(am__v_lt_@AM_DEFAULT_V@) am__v_lt_0 = --silent -libgstmpegdemux_la_LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC \ - $(libgstmpegdemux_la_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=link \ - $(CCLD) $(libgstmpegdemux_la_CFLAGS) $(CFLAGS) \ - $(libgstmpegdemux_la_LDFLAGS) $(LDFLAGS) -o $@ +libgstmpegpsdemux_la_LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC \ + $(libgstmpegpsdemux_la_LIBTOOLFLAGS) $(LIBTOOLFLAGS) \ + --mode=link $(CCLD) $(libgstmpegpsdemux_la_CFLAGS) $(CFLAGS) \ + $(libgstmpegpsdemux_la_LDFLAGS) $(LDFLAGS) -o $@ DEFAULT_INCLUDES = -I.@am__isrc@ -I$(top_builddir) depcomp = $(SHELL) $(top_srcdir)/depcomp am__depfiles_maybe = depfiles @@ -166,8 +166,8 @@ am__v_CCLD_0 = @echo " CCLD " $@; AM_V_GEN = $(am__v_GEN_@AM_V@) am__v_GEN_ = $(am__v_GEN_@AM_DEFAULT_V@) am__v_GEN_0 = @echo " GEN " $@; -SOURCES = $(libgstmpegdemux_la_SOURCES) -DIST_SOURCES = $(libgstmpegdemux_la_SOURCES) +SOURCES = $(libgstmpegpsdemux_la_SOURCES) +DIST_SOURCES = $(libgstmpegpsdemux_la_SOURCES) am__can_run_installinfo = \ case $$AM_UPDATE_INFO_DIR in \ n|no|NO) false;; \ @@ -239,11 +239,10 @@ DIRECT3D_LIBS = @DIRECT3D_LIBS@ DIRECTDRAW_LIBS = @DIRECTDRAW_LIBS@ DIRECTFB_CFLAGS = @DIRECTFB_CFLAGS@ DIRECTFB_LIBS = @DIRECTFB_LIBS@ +DIRECTSHOW_LIBS = @DIRECTSHOW_LIBS@ DIRECTSOUND_LIBS = @DIRECTSOUND_LIBS@ DIRECTX_CFLAGS = @DIRECTX_CFLAGS@ DIRECTX_LDFLAGS = @DIRECTX_LDFLAGS@ -DIVXDEC_LIBS = @DIVXDEC_LIBS@ -DIVXENC_LIBS = @DIVXENC_LIBS@ DLLTOOL = @DLLTOOL@ DSYMUTIL = @DSYMUTIL@ DTS_LIBS = @DTS_LIBS@ @@ -278,7 +277,9 @@ GIO_LIBS = @GIO_LIBS@ GLIB_CFLAGS = @GLIB_CFLAGS@ GLIB_COMPILE_SCHEMAS = @GLIB_COMPILE_SCHEMAS@ GLIB_EXTRA_CFLAGS = @GLIB_EXTRA_CFLAGS@ +GLIB_GENMARSHAL = @GLIB_GENMARSHAL@ GLIB_LIBS = @GLIB_LIBS@ +GLIB_MKENUMS = @GLIB_MKENUMS@ GLIB_PREFIX = @GLIB_PREFIX@ GLIB_REQ = @GLIB_REQ@ GME_LIBS = @GME_LIBS@ @@ -354,13 +355,14 @@ HAVE_CXX = @HAVE_CXX@ HAVE_DIRECT3D = @HAVE_DIRECT3D@ HAVE_DIRECT3D9 = @HAVE_DIRECT3D9@ HAVE_DIRECTDRAW = @HAVE_DIRECTDRAW@ +HAVE_DIRECTSHOW = @HAVE_DIRECTSHOW@ HAVE_DIRECTSOUND = @HAVE_DIRECTSOUND@ HAVE_DTS = @HAVE_DTS@ HAVE_FAAC = @HAVE_FAAC@ HAVE_FAAD = @HAVE_FAAD@ HAVE_FLITE = @HAVE_FLITE@ HAVE_GSM = @HAVE_GSM@ -HAVE_JP2K = @HAVE_JP2K@ +HAVE_JASPER = @HAVE_JASPER@ HAVE_NAS = @HAVE_NAS@ HAVE_VPX = @HAVE_VPX@ HAVE_WILDMIDI = @HAVE_WILDMIDI@ @@ -374,7 +376,7 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ INTLLIBS = @INTLLIBS@ INTL_MACOSX_LIBS = @INTL_MACOSX_LIBS@ -JP2K_LIBS = @JP2K_LIBS@ +JASPER_LIBS = @JASPER_LIBS@ KATE_CFLAGS = @KATE_CFLAGS@ KATE_LIBS = @KATE_LIBS@ LD = @LD@ @@ -410,6 +412,8 @@ MODPLUG_CFLAGS = @MODPLUG_CFLAGS@ MODPLUG_LIBS = @MODPLUG_LIBS@ MPEG2ENC_CFLAGS = @MPEG2ENC_CFLAGS@ MPEG2ENC_LIBS = @MPEG2ENC_LIBS@ +MPG123_CFLAGS = @MPG123_CFLAGS@ +MPG123_LIBS = @MPG123_LIBS@ MPLEX_CFLAGS = @MPLEX_CFLAGS@ MPLEX_LDFLAGS = @MPLEX_LDFLAGS@ MPLEX_LIBS = @MPLEX_LIBS@ @@ -600,42 +604,26 @@ target_vendor = @target_vendor@ top_build_prefix = @top_build_prefix@ top_builddir = @top_builddir@ top_srcdir = @top_srcdir@ -plugin_LTLIBRARIES = libgstmpegdemux.la -libgstmpegdemux_la_SOURCES = \ - flumpegdemux.c \ +plugin_LTLIBRARIES = libgstmpegpsdemux.la +libgstmpegpsdemux_la_SOURCES = \ + plugin.c \ gstmpegdemux.c \ gstpesfilter.c -# flutspatinfo.c -# flutspmtinfo.c -# flutspmtstreaminfo.c -# gstmpegdesc.c \ -# gstmpegtsdemux.c \ -# gstsectionfilter.c \ -# mpegtsparse.c \ -# mpegtspacketizer.c -libgstmpegdemux_la_CFLAGS = \ +libgstmpegpsdemux_la_CFLAGS = \ $(GST_PLUGINS_BASE_CFLAGS) \ $(GST_BASE_CFLAGS) $(GST_CFLAGS) -libgstmpegdemux_la_LIBADD = \ +libgstmpegpsdemux_la_LIBADD = \ $(GST_PLUGINS_BASE_LIBS) -lgsttag-$(GST_API_VERSION) \ $(GST_BASE_LIBS) $(GST_LIBS) -libgstmpegdemux_la_LDFLAGS = $(GST_PLUGIN_LDFLAGS) -libgstmpegdemux_la_LIBTOOLFLAGS = --tag=disable-static +libgstmpegpsdemux_la_LDFLAGS = $(GST_PLUGIN_LDFLAGS) +libgstmpegpsdemux_la_LIBTOOLFLAGS = --tag=disable-static noinst_HEADERS = \ gstmpegdefs.h \ - gstmpegdesc.h \ gstmpegdemux.h \ - gstpesfilter.h \ - gstmpegtsdemux.h \ - flutspatinfo.h \ - flutspmtinfo.h \ - flutspmtstreaminfo.h \ - gstsectionfilter.h \ - mpegtspacketizer.h \ - mpegtsparse.h + gstpesfilter.h all: all-am @@ -703,8 +691,8 @@ clean-pluginLTLIBRARIES: echo "rm -f \"$${dir}/so_locations\""; \ rm -f "$${dir}/so_locations"; \ done -libgstmpegdemux.la: $(libgstmpegdemux_la_OBJECTS) $(libgstmpegdemux_la_DEPENDENCIES) $(EXTRA_libgstmpegdemux_la_DEPENDENCIES) - $(AM_V_CCLD)$(libgstmpegdemux_la_LINK) -rpath $(plugindir) $(libgstmpegdemux_la_OBJECTS) $(libgstmpegdemux_la_LIBADD) $(LIBS) +libgstmpegpsdemux.la: $(libgstmpegpsdemux_la_OBJECTS) $(libgstmpegpsdemux_la_DEPENDENCIES) $(EXTRA_libgstmpegpsdemux_la_DEPENDENCIES) + $(AM_V_CCLD)$(libgstmpegpsdemux_la_LINK) -rpath $(plugindir) $(libgstmpegpsdemux_la_OBJECTS) $(libgstmpegpsdemux_la_LIBADD) $(LIBS) mostlyclean-compile: -rm -f *.$(OBJEXT) @@ -712,9 +700,9 @@ mostlyclean-compile: distclean-compile: -rm -f *.tab.c -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libgstmpegdemux_la-flumpegdemux.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libgstmpegdemux_la-gstmpegdemux.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libgstmpegdemux_la-gstpesfilter.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libgstmpegpsdemux_la-gstmpegdemux.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libgstmpegpsdemux_la-gstpesfilter.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libgstmpegpsdemux_la-plugin.Plo@am__quote@ .c.o: @am__fastdepCC_TRUE@ $(AM_V_CC)$(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $< @@ -737,26 +725,26 @@ distclean-compile: @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LTCOMPILE) -c -o $@ $< -libgstmpegdemux_la-flumpegdemux.lo: flumpegdemux.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(libgstmpegdemux_la_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libgstmpegdemux_la_CFLAGS) $(CFLAGS) -MT libgstmpegdemux_la-flumpegdemux.lo -MD -MP -MF $(DEPDIR)/libgstmpegdemux_la-flumpegdemux.Tpo -c -o libgstmpegdemux_la-flumpegdemux.lo `test -f 'flumpegdemux.c' || echo '$(srcdir)/'`flumpegdemux.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libgstmpegdemux_la-flumpegdemux.Tpo $(DEPDIR)/libgstmpegdemux_la-flumpegdemux.Plo -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='flumpegdemux.c' object='libgstmpegdemux_la-flumpegdemux.lo' libtool=yes @AMDEPBACKSLASH@ +libgstmpegpsdemux_la-plugin.lo: plugin.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(libgstmpegpsdemux_la_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libgstmpegpsdemux_la_CFLAGS) $(CFLAGS) -MT libgstmpegpsdemux_la-plugin.lo -MD -MP -MF $(DEPDIR)/libgstmpegpsdemux_la-plugin.Tpo -c -o libgstmpegpsdemux_la-plugin.lo `test -f 'plugin.c' || echo '$(srcdir)/'`plugin.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libgstmpegpsdemux_la-plugin.Tpo $(DEPDIR)/libgstmpegpsdemux_la-plugin.Plo +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='plugin.c' object='libgstmpegpsdemux_la-plugin.lo' libtool=yes @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(libgstmpegdemux_la_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libgstmpegdemux_la_CFLAGS) $(CFLAGS) -c -o libgstmpegdemux_la-flumpegdemux.lo `test -f 'flumpegdemux.c' || echo '$(srcdir)/'`flumpegdemux.c +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(libgstmpegpsdemux_la_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libgstmpegpsdemux_la_CFLAGS) $(CFLAGS) -c -o libgstmpegpsdemux_la-plugin.lo `test -f 'plugin.c' || echo '$(srcdir)/'`plugin.c -libgstmpegdemux_la-gstmpegdemux.lo: gstmpegdemux.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(libgstmpegdemux_la_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libgstmpegdemux_la_CFLAGS) $(CFLAGS) -MT libgstmpegdemux_la-gstmpegdemux.lo -MD -MP -MF $(DEPDIR)/libgstmpegdemux_la-gstmpegdemux.Tpo -c -o libgstmpegdemux_la-gstmpegdemux.lo `test -f 'gstmpegdemux.c' || echo '$(srcdir)/'`gstmpegdemux.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libgstmpegdemux_la-gstmpegdemux.Tpo $(DEPDIR)/libgstmpegdemux_la-gstmpegdemux.Plo -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='gstmpegdemux.c' object='libgstmpegdemux_la-gstmpegdemux.lo' libtool=yes @AMDEPBACKSLASH@ +libgstmpegpsdemux_la-gstmpegdemux.lo: gstmpegdemux.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(libgstmpegpsdemux_la_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libgstmpegpsdemux_la_CFLAGS) $(CFLAGS) -MT libgstmpegpsdemux_la-gstmpegdemux.lo -MD -MP -MF $(DEPDIR)/libgstmpegpsdemux_la-gstmpegdemux.Tpo -c -o libgstmpegpsdemux_la-gstmpegdemux.lo `test -f 'gstmpegdemux.c' || echo '$(srcdir)/'`gstmpegdemux.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libgstmpegpsdemux_la-gstmpegdemux.Tpo $(DEPDIR)/libgstmpegpsdemux_la-gstmpegdemux.Plo +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='gstmpegdemux.c' object='libgstmpegpsdemux_la-gstmpegdemux.lo' libtool=yes @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(libgstmpegdemux_la_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libgstmpegdemux_la_CFLAGS) $(CFLAGS) -c -o libgstmpegdemux_la-gstmpegdemux.lo `test -f 'gstmpegdemux.c' || echo '$(srcdir)/'`gstmpegdemux.c +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(libgstmpegpsdemux_la_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libgstmpegpsdemux_la_CFLAGS) $(CFLAGS) -c -o libgstmpegpsdemux_la-gstmpegdemux.lo `test -f 'gstmpegdemux.c' || echo '$(srcdir)/'`gstmpegdemux.c -libgstmpegdemux_la-gstpesfilter.lo: gstpesfilter.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(libgstmpegdemux_la_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libgstmpegdemux_la_CFLAGS) $(CFLAGS) -MT libgstmpegdemux_la-gstpesfilter.lo -MD -MP -MF $(DEPDIR)/libgstmpegdemux_la-gstpesfilter.Tpo -c -o libgstmpegdemux_la-gstpesfilter.lo `test -f 'gstpesfilter.c' || echo '$(srcdir)/'`gstpesfilter.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libgstmpegdemux_la-gstpesfilter.Tpo $(DEPDIR)/libgstmpegdemux_la-gstpesfilter.Plo -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='gstpesfilter.c' object='libgstmpegdemux_la-gstpesfilter.lo' libtool=yes @AMDEPBACKSLASH@ +libgstmpegpsdemux_la-gstpesfilter.lo: gstpesfilter.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(libgstmpegpsdemux_la_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libgstmpegpsdemux_la_CFLAGS) $(CFLAGS) -MT libgstmpegpsdemux_la-gstpesfilter.lo -MD -MP -MF $(DEPDIR)/libgstmpegpsdemux_la-gstpesfilter.Tpo -c -o libgstmpegpsdemux_la-gstpesfilter.lo `test -f 'gstpesfilter.c' || echo '$(srcdir)/'`gstpesfilter.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libgstmpegpsdemux_la-gstpesfilter.Tpo $(DEPDIR)/libgstmpegpsdemux_la-gstpesfilter.Plo +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='gstpesfilter.c' object='libgstmpegpsdemux_la-gstpesfilter.lo' libtool=yes @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(libgstmpegdemux_la_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libgstmpegdemux_la_CFLAGS) $(CFLAGS) -c -o libgstmpegdemux_la-gstpesfilter.lo `test -f 'gstpesfilter.c' || echo '$(srcdir)/'`gstpesfilter.c +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(libgstmpegpsdemux_la_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libgstmpegpsdemux_la_CFLAGS) $(CFLAGS) -c -o libgstmpegpsdemux_la-gstpesfilter.lo `test -f 'gstpesfilter.c' || echo '$(srcdir)/'`gstpesfilter.c mostlyclean-libtool: -rm -f *.lo @@ -973,13 +961,13 @@ uninstall-am: uninstall-pluginLTLIBRARIES Android.mk: Makefile.am $(BUILT_SOURCES) androgenizer \ - -:PROJECT libgstmpegdemux -:SHARED libgstmpegdemux \ + -:PROJECT libgstmpegpsdemux -:SHARED libgstmpegpsdemux \ -:TAGS eng debug \ -:REL_TOP $(top_srcdir) -:ABS_TOP $(abs_top_srcdir) \ - -:SOURCES $(libgstmpegdemux_la_SOURCES) \ - -:CFLAGS $(DEFS) $(DEFAULT_INCLUDES) $(libgstmpegdemux_la_CFLAGS) \ - -:LDFLAGS $(libgstmpegdemux_la_LDFLAGS) \ - $(libgstmpegdemux_la_LIBADD) \ + -:SOURCES $(libgstmpegpsdemux_la_SOURCES) \ + -:CFLAGS $(DEFS) $(DEFAULT_INCLUDES) $(libgstmpegpsdemux_la_CFLAGS) \ + -:LDFLAGS $(libgstmpegpsdemux_la_LDFLAGS) \ + $(libgstmpegpsdemux_la_LIBADD) \ -ldl \ -:PASSTHROUGH LOCAL_ARM_MODE:=arm \ LOCAL_MODULE_PATH:='$$(TARGET_OUT)/lib/gstreamer-0.10' \ diff --git a/gst/mpegdemux/flutspatinfo.h b/gst/mpegdemux/flutspatinfo.h deleted file mode 100644 index 565454c5..00000000 --- a/gst/mpegdemux/flutspatinfo.h +++ /dev/null @@ -1,72 +0,0 @@ -/* - * This library is licensed under 2 different licenses and you - * can choose to use it under the terms of either one of them. The - * two licenses are the MPL 1.1 and the LGPL. - * - * MPL: - * - * The contents of this file are subject to the Mozilla Public License - * Version 1.1 (the "License"); you may not use this file except in - * compliance with the License. You may obtain a copy of the License at - * http://www.mozilla.org/MPL/. - * - * Software distributed under the License is distributed on an "AS IS" - * basis, WITHOUT WARRANTY OF ANY KIND, either express or implied. See the - * License for the specific language governing rights and limitations - * under the License. - * - * LGPL: - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Library General Public - * License as published by the Free Software Foundation; either - * version 2 of the License, or (at your option) any later version. - * - * This library 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 - * Library General Public License for more details. - * - * You should have received a copy of the GNU Library General Public - * License along with this library; if not, write to the - * Free Software Foundation, Inc., 59 Temple Place - Suite 330, - * Boston, MA 02111-1307, USA. - * - * The Original Code is Fluendo MPEG Demuxer plugin. - * - * The Initial Developer of the Original Code is Fluendo, S.L. - * Portions created by Fluendo, S.L. are Copyright (C) 2005 - * Fluendo, S.L. All Rights Reserved. - * - * Contributor(s): Jan Schmidt <jan@fluendo.com> - */ - -#ifndef __FLUTS_PAT_INFO_H__ -#define __FLUTS_PAT_INFO_H__ - -#include <glib.h> - -G_BEGIN_DECLS - -typedef struct FluTsPatInfoClass { - GObjectClass parent_class; -} MpegTsPatInfoClass; - -typedef struct FluTsPatInfo { - GObject parent; - - guint16 pid; - guint16 program_no; -} MpegTsPatInfo; - -#define MPEGTS_TYPE_PAT_INFO (mpegts_pat_info_get_type ()) -#define MPEGTS_IS_PAT_INFO(obj) (G_TYPE_CHECK_INSTANCE_TYPE((obj), MPEGTS_TYPE_PAT_INFO)) -#define MPEGTS_PAT_INFO(obj) (G_TYPE_CHECK_INSTANCE_CAST((obj),MPEGTS_TYPE_PAT_INFO, MpegTsPatInfo)) - -GType mpegts_pat_info_get_type (void); - -MpegTsPatInfo *mpegts_pat_info_new (guint16 program_no, guint16 pid); - -G_END_DECLS - -#endif diff --git a/gst/mpegdemux/flutspmtinfo.h b/gst/mpegdemux/flutspmtinfo.h deleted file mode 100644 index 82d10c51..00000000 --- a/gst/mpegdemux/flutspmtinfo.h +++ /dev/null @@ -1,81 +0,0 @@ - /* - * This library is licensed under 2 different licenses and you - * can choose to use it under the terms of either one of them. The - * two licenses are the MPL 1.1 and the LGPL. - * - * MPL: - * - * The contents of this file are subject to the Mozilla Public License - * Version 1.1 (the "License"); you may not use this file except in - * compliance with the License. You may obtain a copy of the License at - * http://www.mozilla.org/MPL/. - * - * Software distributed under the License is distributed on an "AS IS" - * basis, WITHOUT WARRANTY OF ANY KIND, either express or implied. See the - * License for the specific language governing rights and limitations - * under the License. - * - * LGPL: - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Library General Public - * License as published by the Free Software Foundation; either - * version 2 of the License, or (at your option) any later version. - * - * This library 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 - * Library General Public License for more details. - * - * You should have received a copy of the GNU Library General Public - * License along with this library; if not, write to the - * Free Software Foundation, Inc., 59 Temple Place - Suite 330, - * Boston, MA 02111-1307, USA. - * - * The Original Code is Fluendo MPEG Demuxer plugin. - * - * The Initial Developer of the Original Code is Fluendo, S.L. - * Portions created by Fluendo, S.L. are Copyright (C) 2005 - * Fluendo, S.L. All Rights Reserved. - * - * Contributor(s): Jan Schmidt <jan@fluendo.com> - */ - -#ifndef __FLUTS_PMT_INFO_H__ -#define __FLUTS_PMT_INFO_H__ - -#include <glib.h> -#include "flutspmtstreaminfo.h" - -G_BEGIN_DECLS - -typedef struct MpegTsPmtInfoClass { - GObjectClass parent_class; -} MpegTsPmtInfoClass; - -typedef struct MpegTsPmtInfo { - GObject parent; - - guint16 program_no; - guint16 pcr_pid; - - guint8 version_no; - - GValueArray *descriptors; - GValueArray *streams; -} MpegTsPmtInfo; - -MpegTsPmtInfo *mpegts_pmt_info_new (guint16 program_no, guint16 pcr_pid, guint8 version); -void mpegts_pmt_info_add_stream (MpegTsPmtInfo *pmt_info, MpegTsPmtStreamInfo *stream); -void mpegts_pmt_info_add_descriptor (MpegTsPmtInfo *pmt_info, - const gchar *descriptor, guint length); - -GType mpegts_pmt_info_get_type (void); - -#define MPEGTS_TYPE_PMT_INFO (mpegts_pmt_info_get_type ()) -#define MPEGTS_IS_PMT_INFO(obj) (G_TYPE_CHECK_INSTANCE_TYPE((obj), MPEGTS_TYPE_PMT_INFO)) -#define MPEGTS_PMT_INFO(obj) (G_TYPE_CHECK_INSTANCE_CAST((obj),MPEGTS_TYPE_PMT_INFO, MpegTsPmtInfo)) - -G_END_DECLS - -#endif diff --git a/gst/mpegdemux/flutspmtstreaminfo.h b/gst/mpegdemux/flutspmtstreaminfo.h deleted file mode 100644 index 6c7d42f5..00000000 --- a/gst/mpegdemux/flutspmtstreaminfo.h +++ /dev/null @@ -1,80 +0,0 @@ -/* - * This library is licensed under 2 different licenses and you - * can choose to use it under the terms of either one of them. The - * two licenses are the MPL 1.1 and the LGPL. - * - * MPL: - * - * The contents of this file are subject to the Mozilla Public License - * Version 1.1 (the "License"); you may not use this file except in - * compliance with the License. You may obtain a copy of the License at - * http://www.mozilla.org/MPL/. - * - * Software distributed under the License is distributed on an "AS IS" - * basis, WITHOUT WARRANTY OF ANY KIND, either express or implied. See the - * License for the specific language governing rights and limitations - * under the License. - * - * LGPL: - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Library General Public - * License as published by the Free Software Foundation; either - * version 2 of the License, or (at your option) any later version. - * - * This library 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 - * Library General Public License for more details. - * - * You should have received a copy of the GNU Library General Public - * License along with this library; if not, write to the - * Free Software Foundation, Inc., 59 Temple Place - Suite 330, - * Boston, MA 02111-1307, USA. - * - * The Original Code is Fluendo MPEG Demuxer plugin. - * - * The Initial Developer of the Original Code is Fluendo, S.L. - * Portions created by Fluendo, S.L. are Copyright (C) 2005 - * Fluendo, S.L. All Rights Reserved. - * - * Contributor(s): Jan Schmidt <jan@fluendo.com> - */ - -#ifndef __FLUTS_PMT_STREAM_INFO_H__ -#define __FLUTS_PMT_STREAM_INFO_H__ - -#include <glib.h> - -G_BEGIN_DECLS - - -typedef struct MpegTsPmtStreamInfoClass { - GObjectClass parent_class; -} MpegTsPmtStreamInfoClass; - -typedef struct MpegTsPmtStreamInfo { - GObject parent; - - guint16 pid; - GValueArray *languages; /* null terminated 3 character ISO639 language code */ - guint8 stream_type; - GValueArray *descriptors; -} MpegTsPmtStreamInfo; - -MpegTsPmtStreamInfo *mpegts_pmt_stream_info_new (guint16 pid, guint8 type); -void mpegts_pmt_stream_info_add_language(MpegTsPmtStreamInfo* si, - gchar* language); -void mpegts_pmt_stream_info_add_descriptor (MpegTsPmtStreamInfo *pmt_info, - const gchar *descriptor, guint length); - -GType mpegts_pmt_stream_info_get_type (void); - -#define MPEGTS_TYPE_PMT_STREAM_INFO (mpegts_pmt_stream_info_get_type ()) - -#define MPEGTS_IS_PMT_STREAM_INFO(obj) (G_TYPE_CHECK_INSTANCE_TYPE((obj), MPEGTS_TYPE_PMT_STREAM_INFO)) -#define MPEGTS_PMT_STREAM_INFO(obj) (G_TYPE_CHECK_INSTANCE_CAST((obj),MPEGTS_TYPE_PMT_STREAM_INFO, MpegTsPmtStreamInfo)) - -G_END_DECLS - -#endif diff --git a/gst/mpegdemux/gstmpegdemux.c b/gst/mpegdemux/gstmpegdemux.c index e87642d6..ee78c00a 100644 --- a/gst/mpegdemux/gstmpegdemux.c +++ b/gst/mpegdemux/gstmpegdemux.c @@ -1243,7 +1243,7 @@ gst_flups_demux_handle_seek_pull (GstFluPSDemux * demux, GstEvent * event) gst_flups_demux_mark_discont (demux, TRUE, TRUE); gst_pad_start_task (demux->sinkpad, - (GstTaskFunction) gst_flups_demux_loop, demux->sinkpad); + (GstTaskFunction) gst_flups_demux_loop, demux->sinkpad, NULL); GST_PAD_STREAM_UNLOCK (demux->sinkpad); @@ -2838,12 +2838,17 @@ pause: gst_element_post_message (GST_ELEMENT_CAST (demux), gst_message_new_segment_done (GST_OBJECT_CAST (demux), GST_FORMAT_TIME, stop)); + gst_flups_demux_send_event (demux, + gst_event_new_segment_done (GST_FORMAT_TIME, stop)); } else { /* Reverse playback */ GST_LOG_OBJECT (demux, "Sending segment done, at beginning of " "segment"); gst_element_post_message (GST_ELEMENT_CAST (demux), gst_message_new_segment_done (GST_OBJECT_CAST (demux), GST_FORMAT_TIME, demux->src_segment.start)); + gst_flups_demux_send_event (demux, + gst_event_new_segment_done (GST_FORMAT_TIME, + demux->src_segment.start)); } } else { /* normal playback, send EOS to all linked pads */ @@ -2881,6 +2886,8 @@ gst_flups_demux_sink_activate (GstPad * sinkpad, GstObject * parent) } else { res = gst_pad_activate_mode (sinkpad, GST_PAD_MODE_PUSH, TRUE); } + } else { + res = gst_pad_activate_mode (sinkpad, GST_PAD_MODE_PUSH, TRUE); } gst_query_unref (query); @@ -2899,8 +2906,6 @@ gst_flups_demux_sink_activate_push (GstPad * sinkpad, GstObject * parent, demux->random_access = FALSE; - gst_object_unref (demux); - return TRUE; } @@ -2920,7 +2925,7 @@ gst_flups_demux_sink_activate_pull (GstPad * sinkpad, GstObject * parent, demux->random_access = TRUE; gst_object_unref (demux); return gst_pad_start_task (sinkpad, (GstTaskFunction) gst_flups_demux_loop, - sinkpad); + sinkpad, NULL); } else { demux->random_access = FALSE; gst_object_unref (demux); @@ -3168,14 +3173,3 @@ gst_segment_set_duration (GstSegment * segment, GstFormat format, } segment->duration = duration; } - - -gboolean -gst_flups_demux_plugin_init (GstPlugin * plugin) -{ - if (!gst_element_register (plugin, "mpegpsdemux", - GST_RANK_PRIMARY, GST_TYPE_FLUPS_DEMUX)) - return FALSE; - - return TRUE; -} diff --git a/gst/mpegdemux/gstmpegdemux.h b/gst/mpegdemux/gstmpegdemux.h index 6cf7aed9..bea4dc44 100644 --- a/gst/mpegdemux/gstmpegdemux.h +++ b/gst/mpegdemux/gstmpegdemux.h @@ -161,7 +161,5 @@ struct _GstFluPSDemuxClass GType gst_flups_demux_get_type (void); -gboolean gst_flups_demux_plugin_init (GstPlugin * plugin); - G_END_DECLS #endif /* __GST_FLUPS_DEMUX_H__ */ diff --git a/gst/mpegdemux/gstmpegdesc.h b/gst/mpegdemux/gstmpegdesc.h deleted file mode 100644 index 9e1ae75c..00000000 --- a/gst/mpegdemux/gstmpegdesc.h +++ /dev/null @@ -1,342 +0,0 @@ -/* - * The contents of this file are subject to the Mozilla Public License - * Version 1.1 (the "License"); you may not use this file except in - * compliance with the License. You may obtain a copy of the License at - * http://www.mozilla.org/MPL/. - * - * Software distributed under the License is distributed on an "AS IS" - * basis, WITHOUT WARRANTY OF ANY KIND, either express or implied. See the - * License for the specific language governing rights and limitations - * under the License. - * - * The Original Code is Fluendo MPEG Demuxer plugin. - * - * The Initial Developer of the Original Code is Fluendo, S.L. - * Portions created by Fluendo, S.L. are Copyright (C) 2005 - * Fluendo, S.L. All Rights Reserved. - * - * Contributor(s): Wim Taymans <wim@fluendo.com> - * - * Alternatively, the contents of this file may be used under the terms of - * the GNU Lesser General Public License Version 2 or later (the "LGPL"), - * in which case the provisions of the LGPL are applicable instead - * of those above. If you wish to allow use of your version of this file only - * under the terms of the LGPL, and not to allow others to - * use your version of this file under the terms of the MPL, indicate your - * decision by deleting the provisions above and replace them with the notice - * and other provisions required by the LGPL. If you do not delete - * the provisions above, a recipient may use your version of this file under - * the terms of the MPL or the LGPL. - */ - -#ifndef __GST_MPEG_DESC_H__ -#define __GST_MPEG_DESC_H__ - -#include <glib.h> -/* - * descriptor_tag TS PS Identification - * 0 n/a n/a Reserved - * 1 n/a n/a Reserved - * 2 X X video_stream_descriptor - * 3 X X audio_stream_descriptor - * 4 X X hierarchy_descriptor - * 5 X X registration_descriptor - * 6 X X data_stream_alignment_descriptor - * 7 X X target_background_grid_descriptor - * 8 X X video_window_descriptor - * 9 X X CA_descriptor - * 10 X X ISO_639_language_descriptor - * 11 X X system_clock_descriptor - * 12 X X multiplex_buffer_utilization_descriptor - * 13 X X copyright_descriptor - * 14 X maximum bitrate descriptor - * 15 X X private data indicator descriptor - * 16 X X smoothing buffer descriptor - * 17 X STD_descriptor - * 18 X X IBP descriptor - * 19-63 n/a n/a ITU-T Rec. H.222.0 | ISO/IEC 13818-1 Reserved - * 64-255 n/a n/a User Private - */ -#define DESC_VIDEO_STREAM 2 -#define DESC_AUDIO_STREAM 3 -#define DESC_HIERARCHY 4 -#define DESC_REGISTRATION 5 -#define DESC_DATA_STREAM_ALIGNMENT 6 -#define DESC_TARGET_BACKGROUND_GRID 7 -#define DESC_VIDEO_WINDOW 8 -#define DESC_CA 9 -#define DESC_ISO_639_LANGUAGE 10 -#define DESC_SYSTEM_CLOCK 11 -#define DESC_MULTIPLEX_BUFFER_UTILISATION 12 -#define DESC_COPYRIGHT 13 -#define DESC_MAXIMUM_BITRATE 14 -#define DESC_PRIVATE_DATA_INDICATOR 15 -#define DESC_SMOOTHING_BUFFER 16 -#define DESC_STD 17 -#define DESC_IBP 18 - -#define DESC_DIRAC_TC_PRIVATE 0xAC - -/* DVB tags */ -#define DESC_DVB_CAROUSEL_IDENTIFIER 0x13 -#define DESC_DVB_NETWORK_NAME 0x40 -#define DESC_DVB_SERVICE_LIST 0x41 -#define DESC_DVB_STUFFING 0x42 -#define DESC_DVB_SATELLITE_DELIVERY_SYSTEM 0x43 -#define DESC_DVB_CABLE_DELIVERY_SYSTEM 0x44 -#define DESC_DVB_VBI_DATA 0x45 -#define DESC_DVB_VBI_TELETEXT 0x46 -#define DESC_DVB_BOUQUET_NAME 0x47 -#define DESC_DVB_SERVICE 0x48 -#define DESC_DVB_COUNTRY_AVAILABILITY 0x49 -#define DESC_DVB_LINKAGE 0x4A -#define DESC_DVB_NVOD_REFERENCE 0x4B -#define DESC_DVB_TIME_SHIFTED_SERVICE 0x4C -#define DESC_DVB_SHORT_EVENT 0x4D -#define DESC_DVB_EXTENDED_EVENT 0x4E -#define DESC_DVB_TIME_SHIFTED_EVENT 0x4F -#define DESC_DVB_COMPONENT 0x50 -#define DESC_DVB_MOSAIC 0x51 -#define DESC_DVB_STREAM_IDENTIFIER 0x52 -#define DESC_DVB_CA_IDENTIFIER 0x53 -#define DESC_DVB_CONTENT 0x54 -#define DESC_DVB_PARENTAL_RATING 0x55 -#define DESC_DVB_TELETEXT 0x56 -#define DESC_DVB_TELEPHONE 0x57 -#define DESC_DVB_LOCAL_TIME_OFFSET 0x58 -#define DESC_DVB_SUBTITLING 0x59 -#define DESC_DVB_TERRESTRIAL_DELIVERY_SYSTEM 0x5A -#define DESC_DVB_MULTILINGUAL_NETWORK_NAME 0x5B -#define DESC_DVB_MULTILINGUAL_BOUQUET_NAME 0x5C -#define DESC_DVB_MULTILINGUAL_SERVICE_NAME 0x5D -#define DESC_DVB_MULTILINGUAL_COMPONENT 0x5E -#define DESC_DVB_PRIVATE_DATA 0x5F -#define DESC_DVB_SERVICE_MOVE 0x60 -#define DESC_DVB_SHORT_SMOOTHING_BUFFER 0x61 -#define DESC_DVB_FREQUENCY_LIST 0x62 -#define DESC_DVB_PARTIAL_TRANSPORT_STREAM 0x63 -#define DESC_DVB_DATA_BROADCAST 0x64 -#define DESC_DVB_SCRAMBLING 0x65 -#define DESC_DVB_DATA_BROADCAST_ID 0x66 -#define DESC_DVB_TRANSPORT_STREAM 0x67 -#define DESC_DVB_DSNG 0x68 -#define DESC_DVB_PDC 0x69 -#define DESC_DVB_AC3 0x6A -#define DESC_DVB_ANCILLARY_DATA 0x6B -#define DESC_DVB_CELL_LIST 0x6C -#define DESC_DVB_CELL_FREQUENCY_LINK 0x6D -#define DESC_DVB_ANNOUNCEMENT_SUPPORT 0x6E -#define DESC_DVB_APPLICATION_SIGNALLING 0x6F -#define DESC_DVB_ADAPTATION_FIELD_DATA 0x70 -#define DESC_DVB_SERVICE_IDENTIFIER 0x71 -#define DESC_DVB_SERVICE_AVAILABILITY 0x72 -#define DESC_DVB_DEFAULT_AUTHORITY 0x73 -#define DESC_DVB_RELATED_CONTENT 0x74 -#define DESC_DVB_TVA_ID 0x75 -#define DESC_DVB_CONTENT_IDENTIFIER 0x76 -#define DESC_DVB_TIMESLICE_FEC_IDENTIFIER 0x77 -#define DESC_DVB_ECM_REPETITION_RATE 0x78 -#define DESC_DVB_S2_SATELLITE_DELIVERY_SYSTEM 0x79 -#define DESC_DVB_ENHANCED_AC3 0x7A -#define DESC_DVB_DTS 0x7B -#define DESC_DVB_AAC 0x7C -/* 0x7D and 0x7E are reserved for future use */ -#define DESC_DVB_EXTENSION 0x7F -/* 0x80 - 0xFE are user defined */ -#define DESC_DTG_LOGICAL_CHANNEL 0x83 /* from DTG D-Book */ -/* 0xFF is forbidden */ - -/* common for all descriptors */ -#define DESC_TAG(desc) (desc[0]) -#define DESC_LENGTH(desc) (desc[1]) - -/* video_stream_descriptor */ -#define DESC_VIDEO_STREAM_multiple_framerate_flag(desc) (((desc)[2] & 0x80) == 0x80) -#define DESC_VIDEO_STREAM_frame_rate_code(desc) (((desc)[2] & 0x38) >> 3) -#define DESC_VIDEO_STREAM_MPEG_1_only_flag(desc) (((desc)[2] & 0x04) == 0x04) -#define DESC_VIDEO_STREAM_constrained_parameter_flag(desc) (((desc)[2] & 0x02) == 0x02) -#define DESC_VIDEO_STREAM_still_picture_flag(desc) (((desc)[2] & 0x01) == 0x01) -/* if (MPEG_1_only_flag == 1) */ -#define DESC_VIDEO_STREAM_profile_and_level_indication(desc) ((desc)[3]) -#define DESC_VIDEO_STREAM_chroma_format(desc) (((desc)[4] & 0xc0) >> 6) -#define DESC_VIDEO_STREAM_frame_rate_extension_flag(desc) (((desc)[4] & 0x20) == 0x20) - -/* audio_stream_descriptor */ -#define DESC_AUDIO_STREAM_free_format_flag(desc) (((desc)[2] & 0x80) == 0x80) -#define DESC_AUDIO_STREAM_ID(desc) (((desc)[2] & 0x40) == 0x40) -#define DESC_AUDIO_STREAM_layer(desc) (((desc)[2] & 0x30) >> 4) -#define DESC_AUDIO_STREAM_variable_rate_audio_indicator(desc) (((desc)[2] & 0x08) == 0x08) - -/* hierarchy_descriptor */ -#define DESC_HIERARCHY_hierarchy_type(desc) (((desc)[2] & 0x0f)) -#define DESC_HIERARCHY_hierarchy_layer_index(desc) (((desc)[3] & 0x3f)) -#define DESC_HIERARCHY_hierarchy_embedded_layer_index(desc) (((desc)[4] & 0x3f)) -#define DESC_HIERARCHY_hierarchy_channel(desc) (((desc)[5] & 0x3f)) - -/* registration_descriptor */ -#define DESC_REGISTRATION_format_identifier(desc) (GST_READ_UINT32_BE ((desc)+2)) -#define DESC_REGISTRATION_additional_ident_info_len(desc) ((desc)[1] - 4) -#define DESC_REGISTRATION_additional_ident_info(desc) (&(desc)[6]) - -/* data_stream_alignment_descriptor */ -#define DESC_DATA_STREAM_ALIGNMENT_alignment_type(desc) ((desc)[2]) - -/* target_background_grid_descriptor */ -#define DESC_TARGET_BACKGROUND_GRID_horizontal_size(desc) (GST_READ_UINT16_BE ((desc)+2) >> 2) -#define DESC_TARGET_BACKGROUND_GRID_vertical_size(desc) ((GST_READ_UINT32_BE ((desc)+2) & 0x0003fff0) >> 4) -#define DESC_TARGET_BACKGROUND_GRID_aspect_ratio_information(desc) ((desc)[5] & 0x0f) - -/* video_window_descriptor */ -#define DESC_VIDEO_WINDOW_horizontal_offset(desc) (GST_READ_UINT16_BE ((desc)+2) >> 2) -#define DESC_VIDEO_WINDOW_vertical_offset(desc) ((GST_READ_UINT32_BE ((desc)+2) & 0x0003fff0) >> 4) -#define DESC_VIDEO_WINDOW_window_priority(desc) ((desc)[5] & 0x0f) - -/* CA_descriptor */ -#define DESC_CA_system_ID(desc) (GST_READ_UINT16_BE ((desc)+2)) -#define DESC_CA_PID(desc) (GST_READ_UINT16_BE ((desc)+2) & 0x1fff) - -/* ISO_639_language_descriptor */ -#define DESC_ISO_639_LANGUAGE_codes_n(desc) ((desc[1]) >> 2) -#define DESC_ISO_639_LANGUAGE_language_code_nth(desc,i) (&(desc[2 + (4*i)])) -#define DESC_ISO_639_LANGUAGE_audio_type_nth(desc,i) ((desc)[5 + (4*i)]) - -/* system_clock_descriptor */ -#define DESC_SYSTEM_CLOCK_external_clock_reference_indicator(desc) (((desc)[2] & 0x80) == 0x80) -#define DESC_SYSTEM_CLOCK_clock_accuracy_integer(desc) ((desc)[2] & 0x3f) -#define DESC_SYSTEM_CLOCK_clock_accuracy_exponent(desc) (((desc)[3] & 0xe0) >> 5) - -/* multiplex_buffer_utilization_descriptor */ -#define DESC_MULTIPLEX_BUFFER_UTILISATION_bound_valid_flag(desc) (((desc)[2] & 0x80) == 0x80) -#define DESC_MULTIPLEX_BUFFER_UTILISATION_LTW_offset_lower_bound(desc) (GST_READ_UINT16_BE ((desc)+2) & 0x7fff) -#define DESC_MULTIPLEX_BUFFER_UTILISATION_LTW_offset_upper_bound(desc) (GST_READ_UINT16_BE ((desc)+4) & 0x7fff) - -/* copyright_descriptor */ -#define DESC_COPYRIGHT_copyright_identifier(desc) (GST_READ_UINT32_BE ((desc)+2)) -#define DESC_COPYRIGHT_additional_copyright_info_len(desc) ((desc)[1] - 4) -#define DESC_COPYRIGHT_additional_copyright_info(desc) (&(desc)[6]) - -/* maximum_bitrate_descriptor */ -#define DESC_MAXIMUM_BITRAT_maximum_bitrate(desc) (((((guint32)desc[2]) & 0x3f) << 16) | \ - GST_READ_UINT16_BE ((desc)+3)) - -/* private_data_indicator_descriptor */ -#define DESC_PRIVATE_DATA_INDICATOR_indicator(desc) (GST_READ_UINT32_BE(&desc[2])) - -/* smoothing_buffer_descriptor */ -#define DESC_SMOOTHING_BUFFER_sb_leak_rate(desc) (((((guint32)desc[2]) & 0x3f) << 16) | \ - GST_READ_UINT16_BE ((desc)+3)) -#define DESC_SMOOTHING_BUFFER_sb_size(desc) (((((guint32)desc[5]) & 0x3f) << 16) | \ - GST_READ_UINT16_BE ((desc)+6)) -/* STD_descriptor */ -#define DESC_STD_leak_valid_flag(desc) (((desc)[2] & 0x01) == 0x01) - -/* ibp_descriptor */ -#define DESC_IBP_closed_gop_flag(desc) (((desc)[2] & 0x80) == 0x80) -#define DESC_IBP_identical_gop_flag(desc) (((desc)[2] & 0x40) == 0x40) -#define DESC_IBP_max_gop_length(desc) (GST_READ_UINT16_BE ((desc)+6) & 0x3fff) - -/* time_code descriptor */ -#define DESC_TIMECODE_video_pid(desc) (GST_READ_UINT16_BE ((desc) + 2) & 0x1fff) - -/* Stream identifier descriptor */ -#define DESC_DVB_STREAM_IDENTIFIER_component_tag(desc) (desc[2]) - -/* DVB Network Name descriptor */ -#define DESC_DVB_NETWORK_NAME_length(desc) (GST_READ_UINT8((desc)+1)) -#define DESC_DVB_NETWORK_NAME_text(desc) (desc+2) - -/* DVB Service Descriptor */ -#define DESC_DVB_SERVICE_type(desc) (desc[2]) -#define DESC_DVB_SERVICE_provider_name_length(desc) (desc[3]) -#define DESC_DVB_SERVICE_provider_name_text(desc) (desc+4) -#define DESC_DVB_SERVICE_name_length(desc) (desc[4 + DESC_DVB_SERVICE_provider_name_length(desc)]) -#define DESC_DVB_SERVICE_name_text(desc) (desc + 5 + DESC_DVB_SERVICE_provider_name_length(desc)) - -/* DVB Component Descriptor */ -#define DESC_DVB_COMPONENT_stream_content(desc) (desc[2] & 0x0F) -#define DESC_DVB_COMPONENT_type(desc) (desc[3]) -#define DESC_DVB_COMPONENT_tag(desc) (desc[4]) -#define DESC_DVB_COMPONENT_language(desc) (desc + 5) - -/* DVB Bouquet Name Descriptor */ -#define DESC_DVB_BOUQUET_NAME_text(desc) (desc + 2) - -/* DVB Short Event Descriptor */ -#define DESC_DVB_SHORT_EVENT_name_text(desc) (desc + 6) -#define DESC_DVB_SHORT_EVENT_name_length(desc) (desc[5]) -#define DESC_DVB_SHORT_EVENT_description_text(desc) (desc + 6 + DESC_DVB_SHORT_EVENT_name_length(desc) + 1) -#define DESC_DVB_SHORT_EVENT_description_length(desc) (desc[6 + DESC_DVB_SHORT_EVENT_name_length(desc)]) - -/* DVB Extended Event Descriptor */ -#define DESC_DVB_EXTENDED_EVENT_descriptor_number(desc) ((desc[2] & 0xF0) >> 4) -#define DESC_DVB_EXTENDED_EVENT_last_descriptor_number(desc) (desc[2] & 0x0F) -#define DESC_DVB_EXTENDED_EVENT_iso639_language_code(desc) (desc + 3) -#define DESC_DVB_EXTENDED_EVENT_items_length(desc) (desc[6]) -#define DESC_DVB_EXTENDED_EVENT_items(desc) (desc + 7) -#define DESC_DVB_EXTENDED_EVENT_text_length(desc) (desc[7 + DESC_DVB_EXTENDED_EVENT_items_length(desc)]) -#define DESC_DVB_EXTENDED_EVENT_text(desc) (desc + 7 + DESC_DVB_EXTENDED_EVENT_items_length(desc) + 1) - -/* DVB Satellite Delivery System Descriptor */ -#define DESC_DVB_SATELLITE_DELIVERY_SYSTEM_frequency(desc) (desc + 2) -#define DESC_DVB_SATELLITE_DELIVERY_SYSTEM_orbital_position(desc) (desc + 6) -#define DESC_DVB_SATELLITE_DELIVERY_SYSTEM_west_east_flag(desc) ((desc[8] & 0x80) == 0x80) -#define DESC_DVB_SATELLITE_DELIVERY_SYSTEM_polarization(desc) ((desc[8] >> 5) & 0x3) -#define DESC_DVB_SATELLITE_DELIVERY_SYSTEM_modulation(desc) (desc[8] & 0x1F) -#define DESC_DVB_SATELLITE_DELIVERY_SYSTEM_symbol_rate(desc) (desc + 9) -#define DESC_DVB_SATELLITE_DELIVERY_SYSTEM_fec_inner(desc) (desc[12] & 0x0F) - -/* DVB Terrestrial Delivery System Descriptor */ -#define DESC_DVB_TERRESTRIAL_DELIVERY_SYSTEM_frequency(desc) (GST_READ_UINT32_BE((desc) + 2)) -#define DESC_DVB_TERRESTRIAL_DELIVERY_SYSTEM_bandwidth(desc) ((desc[6] >> 5) & 0x7) -#define DESC_DVB_TERRESTRIAL_DELIVERY_SYSTEM_constellation(desc) ((desc[7] >> 6) & 0x3) -#define DESC_DVB_TERRESTRIAL_DELIVERY_SYSTEM_hierarchy(desc) ((desc[7] >> 3) & 0x7) -#define DESC_DVB_TERRESTRIAL_DELIVERY_SYSTEM_code_rate_hp(desc) (desc[7] & 0x7) -#define DESC_DVB_TERRESTRIAL_DELIVERY_SYSTEM_code_rate_lp(desc) ((desc[8] >> 5) & 0x7) -#define DESC_DVB_TERRESTRIAL_DELIVERY_SYSTEM_guard_interval(desc) ((desc[8] >> 3) & 0x3) -#define DESC_DVB_TERRESTRIAL_DELIVERY_SYSTEM_transmission_mode(desc) ((desc[8] >> 1) & 0x3) -#define DESC_DVB_TERRESTRIAL_DELIVERY_SYSTEM_other_frequency(desc) ((desc[8] & 0x01) == 0x01) - -/* DVB Cable Delivery System Descriptor */ -#define DESC_DVB_CABLE_DELIVERY_SYSTEM_frequency(desc) (desc + 2) -#define DESC_DVB_CABLE_DELIVERY_SYSTEM_fec_outer(desc) (desc[7] & 0x0F) -#define DESC_DVB_CABLE_DELIVERY_SYSTEM_modulation(desc) (desc[8]) -#define DESC_DVB_CABLE_DELIVERY_SYSTEM_symbol_rate(desc) (desc + 9) -#define DESC_DVB_CABLE_DELIVERY_SYSTEM_fec_inner(desc) (desc[12] & 0x0F) - -/* DVB Data Broadcast Descriptor */ -#define DESC_DVB_DATA_BROADCAST_data_broadcast_id(desc) (GST_READ_UINT16_BE((desc) + 2)) -#define DESC_DVB_DATA_BROADCAST_component_tag(desc) (desc[4]) -#define DESC_DVB_DATA_BROADCAST_selector_length(desc) (desc[5]) -#define DESC_DVB_DATA_BROADCAST_selector(desc) (desc + 6) -#define DESC_DVB_DATA_BROADCAST_iso639_language_code(desc) (desc + 6 + DESC_DVB_DATA_BROADCAST_selector_length(desc)) -#define DESC_DVB_DATA_BROADCAST_text_length(desc) (desc + 9 + DESC_DVB_DATA_BROADCAST_selector_length(desc)) -#define DESC_DVB_DATA_BROADCAST_text(desc) (desc + 10 + DESC_DVB_DATA_BROADCAST_selector_length(desc)) - -/* DVB Data Broadcast Id Descriptor */ -#define DESC_DVB_DATA_BROADCAST_ID_data_broadcast_id(desc) (GST_READ_UINT16_BE((desc) + 2)) -#define DESC_DVB_DATA_BROADCAST_ID_id_selector_byte(desc) (desc + 4) - -/* DVB Carousel Identifier Descriptor */ -#define DESC_DVB_CAROUSEL_IDENTIFIER_carousel_id(desc) (GST_READ_UINT32_BE((desc) + 2)) - -/* registration_descriptor format IDs */ -#define DRF_ID_HDMV 0x48444d56 -#define DRF_ID_VC1 0x56432D31 /* defined in RP227 */ - -typedef struct { - guint n_desc; - guint8 data_length; - guint8 *data; -} GstMPEGDescriptor; - -void gst_mpegtsdesc_init_debug (void); -GstMPEGDescriptor* gst_mpeg_descriptor_parse (guint8 *data, guint size); -void gst_mpeg_descriptor_free (GstMPEGDescriptor *desc); - -guint gst_mpeg_descriptor_n_desc (GstMPEGDescriptor *desc); -guint8* gst_mpeg_descriptor_find (GstMPEGDescriptor *desc, gint tag); -GArray* gst_mpeg_descriptor_find_all (GstMPEGDescriptor * desc, gint tag); - -guint8* gst_mpeg_descriptor_nth (GstMPEGDescriptor *desc, guint i); - -#endif /* __GST_MPEG_DESC_H__ */ diff --git a/gst/mpegdemux/gstmpegtsdemux.h b/gst/mpegdemux/gstmpegtsdemux.h deleted file mode 100644 index 935ab403..00000000 --- a/gst/mpegdemux/gstmpegtsdemux.h +++ /dev/null @@ -1,257 +0,0 @@ -/* - * This library is licensed under 2 different licenses and you - * can choose to use it under the terms of either one of them. The - * two licenses are the MPL 1.1 and the LGPL. - * - * MPL: - * - * The contents of this file are subject to the Mozilla Public License - * Version 1.1 (the "License"); you may not use this file except in - * compliance with the License. You may obtain a copy of the License at - * http://www.mozilla.org/MPL/. - * - * Software distributed under the License is distributed on an "AS IS" - * basis, WITHOUT WARRANTY OF ANY KIND, either express or implied. See the - * License for the specific language governing rights and limitations - * under the License. - * - * LGPL: - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Library General Public - * License as published by the Free Software Foundation; either - * version 2 of the License, or (at your option) any later version. - * - * This library 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 - * Library General Public License for more details. - * - * You should have received a copy of the GNU Library General Public - * License along with this library; if not, write to the - * Free Software Foundation, Inc., 59 Temple Place - Suite 330, - * Boston, MA 02111-1307, USA. - * - * The Original Code is Fluendo MPEG Demuxer plugin. - * - * The Initial Developer of the Original Code is Fluendo, S.A. - * Portions created by Fluendo, S.A. are Copyright (C) 2005,2006,2007,2008,2009 - * Fluendo, S.A. All Rights Reserved. - * - * Contributor(s): Wim Taymans <wim@fluendo.com> - */ - -#ifndef __GST_MPEGTS_DEMUX_H__ -#define __GST_MPEGTS_DEMUX_H__ - -#include <gst/gst.h> -#include <gst/base/gstadapter.h> - -#include "gstmpegdesc.h" -#include "gstpesfilter.h" -#include "gstsectionfilter.h" - -G_BEGIN_DECLS - -#define MPEGTS_MIN_PES_BUFFER_SIZE 4 * 1024 -#define MPEGTS_MAX_PES_BUFFER_SIZE 256 * 1024 - -#define MPEGTS_MAX_PID 0x1fff -#define MPEGTS_NORMAL_TS_PACKETSIZE 188 -#define MPEGTS_M2TS_TS_PACKETSIZE 192 -#define MPEGTS_DVB_ASI_TS_PACKETSIZE 204 -#define MPEGTS_ATSC_TS_PACKETSIZE 208 - -#define IS_MPEGTS_SYNC(data) (((data)[0] == 0x47) && \ - (((data)[1] & 0x80) == 0x00) && \ - (((data)[3] & 0x10) == 0x10)) - -#define GST_TYPE_MPEGTS_DEMUX (gst_mpegts_demux_get_type()) -#define GST_MPEGTS_DEMUX(obj) (G_TYPE_CHECK_INSTANCE_CAST((obj),\ - GST_TYPE_MPEGTS_DEMUX,GstMpegTSDemux)) -#define GST_MPEGTS_DEMUX_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST((klass),\ - GST_TYPE_MPEGTS_DEMUX,GstMpegTSDemuxClass)) -#define GST_MPEGTS_DEMUX_GET_CLASS(klass) (G_TYPE_INSTANCE_GET_CLASS((klass),\ - GST_TYPE_MPEGTS_DEMUX,GstMpegTSDemuxClass)) -#define GST_IS_MPEGTS_DEMUX(obj) (G_TYPE_CHECK_INSTANCE_TYPE((obj),\ - GST_TYPE_MPEGTS_DEMUX)) -#define GST_IS_MPEGTS_DEMUX_CLASS(obj) (G_TYPE_CHECK_CLASS_TYPE((klass),\ - GST_TYPE_MPEGTS_DEMUX)) - -typedef struct _GstMpegTSStream GstMpegTSStream; -typedef struct _GstMpegTSPMTEntry GstMpegTSPMTEntry; -typedef struct _GstMpegTSPMT GstMpegTSPMT; -typedef struct _GstMpegTSPATEntry GstMpegTSPATEntry; -typedef struct _GstMpegTSPAT GstMpegTSPAT; -typedef struct _GstMpegTSDemux GstMpegTSDemux; -typedef struct _GstMpegTSDemuxClass GstMpegTSDemuxClass; - -struct _GstMpegTSPMTEntry { - guint16 PID; -}; - -struct _GstMpegTSPMT { - guint16 program_number; - guint8 version_number; - gboolean current_next_indicator; - guint8 section_number; - guint8 last_section_number; - guint16 PCR_PID; - guint16 program_info_length; - GstMPEGDescriptor * program_info; - - GArray * entries; -}; - -struct _GstMpegTSPATEntry { - guint16 program_number; - guint16 PID; -}; - -struct _GstMpegTSPAT { - guint16 transport_stream_id; - guint8 version_number; - gboolean current_next_indicator; - guint8 section_number; - guint8 last_section_number; - - GArray * entries; -}; - -typedef enum _MpegTsStreamFlags { - MPEGTS_STREAM_FLAG_STREAM_TYPE_UNKNOWN = 0x01, - MPEGTS_STREAM_FLAG_PMT_VALID = 0x02, - MPEGTS_STREAM_FLAG_IS_VIDEO = 0x04, - MPEGTS_STREAM_FLAG_IS_AUDIO = 0x08 -} MpegTsStreamFlags; - -/* Information associated to a single MPEG stream. */ -struct _GstMpegTSStream { - GstMpegTSDemux * demux; - - MpegTsStreamFlags flags; - - /* PID and type */ - guint16 PID; - guint8 PID_type; - - /* adaptation_field data */ - guint64 last_PCR; - guint64 base_PCR; - guint64 last_OPCR; - guint64 last_PCR_difference; - gboolean discont_PCR; - GstClockTimeDiff discont_difference; - - /* for PAT streams */ - GstMpegTSPAT PAT; - - /* for PMT streams */ - GstMpegTSPMT PMT; - - /* for CA streams */ - - /* for PAT, PMT, CA and private streams */ - GstSectionFilter section_filter; - - /* for PES streams */ - guint8 id; - guint8 stream_type; - GstBuffer * pes_buffer; - guint32 pes_buffer_size; - guint32 pes_buffer_used; - gboolean pes_buffer_overflow; - gboolean pes_buffer_in_sync; - GstPESFilter filter; - GstPad * pad; - GstFlowReturn last_ret; - GstMPEGDescriptor *ES_info; - /* needed because 33bit mpeg timestamps wrap around every (approx) 26.5 hrs */ - GstClockTimeDiff base_time; - GstClockTime last_time; - /* pid of PMT that this stream belongs to */ - guint16 PMT_pid; - gboolean discont; -}; - -struct _GstMpegTSDemux { - GstElement parent; - - /* properties */ - gboolean check_crc; - - /* sink pad and adapter */ - GstPad * sinkpad; - GstAdapter * adapter; - guint8 ** sync_lut; - guint sync_lut_len; - - /* current PMT PID */ - guint16 current_PMT; - - /* Array of MPEGTS_MAX_PID + 1 stream entries */ - GstMpegTSStream ** streams; - /* Array to perform pmts checks at gst_mpegts_demux_parse_adaptation_field */ - gboolean pmts_checked[MPEGTS_MAX_PID + 1]; - - /* Array of Elementary Stream pids for ts with PMT */ - guint16 * elementary_pids; - guint nb_elementary_pids; - - /* Program number to use */ - gint program_number; - - /* indicates that we need to close our pad group, because we've added - * at least one pad */ - gboolean need_no_more_pads; - gint packetsize; - gboolean m2ts_mode; - /* clocking */ - GstClock * clock; - GstClockTime clock_base; - - /* Additional information required for seeking. - * num_packets: Number of packets outputted - * bitrate: estimated bitrate (based on pcr and num_packets */ - guint64 num_packets; - gint64 bitrate; - - /* Two PCRs observations to calculate bitrate */ - guint64 pcr[2]; - - /* Cached duration estimation */ - GstClockTime cache_duration; - - /* Cached base_PCR in GStreamer time. */ - GstClockTime base_pts; - - /* base timings on first buffer timestamp */ - GstClockTime first_buf_ts; - GstClockTime in_gap; - - /* Detect when the source stops for a while, we will resync the interpolation gap */ - GstClockTime last_buf_ts; - - /* Number of expected pads which have not been added yet */ - gint pending_pads; - - gboolean tried_adding_pads; -}; - -struct _GstMpegTSDemuxClass { - GstElementClass parent_class; - - GstPadTemplate * sink_template; - GstPadTemplate * video_template; - GstPadTemplate * audio_template; - GstPadTemplate * subpicture_template; - GstPadTemplate * private_template; -}; - -GType gst_mpegts_demux_get_type (void); - -gboolean gst_mpegts_demux_plugin_init (GstPlugin *plugin); - -G_END_DECLS - -#endif /* __GST_MPEGTS_DEMUX_H__ */ diff --git a/gst/mpegdemux/gstpesfilter.c b/gst/mpegdemux/gstpesfilter.c index f728e4b9..d58c7260 100644 --- a/gst/mpegdemux/gstpesfilter.c +++ b/gst/mpegdemux/gstpesfilter.c @@ -48,8 +48,8 @@ #include "gstmpegdefs.h" #include "gstpesfilter.h" -GST_DEBUG_CATEGORY (gstflupesfilter_debug); -#define GST_CAT_DEFAULT (gstflupesfilter_debug) +GST_DEBUG_CATEGORY (mpegpspesfilter_debug); +#define GST_CAT_DEFAULT (mpegpspesfilter_debug) static GstFlowReturn gst_pes_filter_data_push (GstPESFilter * filter, gboolean first, GstBuffer * buffer); diff --git a/gst/mpegdemux/gstsectionfilter.h b/gst/mpegdemux/gstsectionfilter.h deleted file mode 100644 index e26e3b28..00000000 --- a/gst/mpegdemux/gstsectionfilter.h +++ /dev/null @@ -1,69 +0,0 @@ -/* - * This library is licensed under 2 different licenses and you - * can choose to use it under the terms of either one of them. The - * two licenses are the MPL 1.1 and the LGPL. - * - * MPL: - * - * The contents of this file are subject to the Mozilla Public License - * Version 1.1 (the "License"); you may not use this file except in - * compliance with the License. You may obtain a copy of the License at - * http://www.mozilla.org/MPL/. - * - * Software distributed under the License is distributed on an "AS IS" - * basis, WITHOUT WARRANTY OF ANY KIND, either express or implied. See the - * License for the specific language governing rights and limitations - * under the License. - * - * LGPL: - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Library General Public - * License as published by the Free Software Foundation; either - * version 2 of the License, or (at your option) any later version. - * - * This library 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 - * Library General Public License for more details. - * - * You should have received a copy of the GNU Library General Public - * License along with this library; if not, write to the - * Free Software Foundation, Inc., 59 Temple Place - Suite 330, - * Boston, MA 02111-1307, USA. - * - * The Original Code is Fluendo MPEG Demuxer plugin. - * - * The Initial Developer of the Original Code is Fluendo, S.L. - * Portions created by Fluendo, S.L. are Copyright (C) 2005 - * Fluendo, S.L. All Rights Reserved. - * - * Contributor(s): Wim Taymans <wim@fluendo.com> - */ - -#ifndef __GST_SECTION_FILTER_H__ -#define __GST_SECTION_FILTER_H__ - -#include <gst/gst.h> -#include <gst/base/gstadapter.h> - -G_BEGIN_DECLS - -typedef struct _GstSectionFilter GstSectionFilter; - -struct _GstSectionFilter { - GstAdapter *adapter; - guint8 last_continuity_counter; - guint16 section_length; -}; - -void gst_section_filter_init (GstSectionFilter *filter); -void gst_section_filter_uninit (GstSectionFilter *filter); -gboolean gst_section_filter_push (GstSectionFilter *filter, - gboolean pusi, - guint8 continuity_counter, - GstBuffer *buf); -void gst_section_filter_clear (GstSectionFilter *filter); -G_END_DECLS - -#endif /* __GST_SECTION_FILTER_H__ */ diff --git a/gst/mpegdemux/mpegtspacketizer.h b/gst/mpegdemux/mpegtspacketizer.h deleted file mode 100644 index 2a71d463..00000000 --- a/gst/mpegdemux/mpegtspacketizer.h +++ /dev/null @@ -1,156 +0,0 @@ -/* - * mpegtspacketizer.h - - * Copyright (C) 2007 Alessandro Decina - * - * Authors: - * Alessandro Decina <alessandro@nnva.org> - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Library General Public - * License as published by the Free Software Foundation; either - * version 2 of the License, or (at your option) any later version. - * - * This library 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 - * Library General Public License for more details. - * - * You should have received a copy of the GNU Library General Public - * License along with this library; if not, write to the - * Free Software Foundation, Inc., 59 Temple Place - Suite 330, - * Boston, MA 02111-1307, USA. - */ - -#ifndef GST_MPEGTS_PACKETIZER_H -#define GST_MPEGTS_PACKETIZER_H - -#include <gst/gst.h> -#include <gst/base/gstadapter.h> -#include <glib.h> - -#define MPEGTS_NORMAL_PACKETSIZE 188 -#define MPEGTS_M2TS_PACKETSIZE 192 -#define MPEGTS_DVB_ASI_PACKETSIZE 204 -#define MPEGTS_ATSC_PACKETSIZE 208 - -#define MPEGTS_MIN_PACKETSIZE MPEGTS_NORMAL_PACKETSIZE -#define MPEGTS_MAX_PACKETSIZE MPEGTS_ATSC_PACKETSIZE - -G_BEGIN_DECLS - -#define GST_TYPE_MPEGTS_PACKETIZER \ - (mpegts_packetizer_get_type()) -#define GST_MPEGTS_PACKETIZER(obj) \ - (G_TYPE_CHECK_INSTANCE_CAST((obj),GST_TYPE_MPEGTS_PACKETIZER,MpegTSPacketizer)) -#define GST_MPEGTS_PACKETIZER_CLASS(klass) \ - (G_TYPE_CHECK_CLASS_CAST((klass),GST_TYPE_MPEGTS_PACKETIZER,MpegTSPacketizerClass)) -#define GST_IS_MPEGTS_PACKETIZER(obj) \ - (G_TYPE_CHECK_INSTANCE_TYPE((obj),GST_TYPE_MPEGTS_PACKETIZER)) -#define GST_IS_MPEGTS_PACKETIZER_CLASS(klass) \ - (G_TYPE_CHECK_CLASS_TYPE((klass),GST_TYPE_MPEGTS_PACKETIZER)) - - -typedef struct _MpegTSPacketizer MpegTSPacketizer; -typedef struct _MpegTSPacketizerClass MpegTSPacketizerClass; - -typedef struct -{ - guint continuity_counter; - GstAdapter *section_adapter; - guint8 section_table_id; - guint section_length; - GSList *subtables; -} MpegTSPacketizerStream; - -struct _MpegTSPacketizer { - GObject object; - - GstAdapter *adapter; - /* streams hashed by pid */ - MpegTSPacketizerStream **streams; - gboolean disposed; - gboolean know_packet_size; - guint16 packet_size; - GstCaps *caps; -}; - -struct _MpegTSPacketizerClass { - GObjectClass object_class; -}; - -typedef struct -{ - GstBuffer *buffer; - gint16 pid; - guint8 payload_unit_start_indicator; - guint8 adaptation_field_control; - guint8 continuity_counter; - guint8 *payload; - - guint8 *data_start; - guint8 *data_end; - guint8 *data; - -} MpegTSPacketizerPacket; - -typedef struct -{ - gboolean complete; - GstBuffer *buffer; - gint16 pid; - guint8 table_id; - guint16 subtable_extension; - guint section_length; - guint8 version_number; - guint8 current_next_indicator; - guint32 crc; -} MpegTSPacketizerSection; - -typedef struct -{ - guint8 table_id; - /* the spec says sub_table_extension is the fourth and fifth byte of a - * section when the section_syntax_indicator is set to a value of "1". If - * section_syntax_indicator is 0, sub_table_extension will be set to 0 */ - guint16 subtable_extension; - guint8 version_number; - guint32 crc; -} MpegTSPacketizerStreamSubtable; - -typedef enum { - PACKET_BAD = FALSE, - PACKET_OK = TRUE, - PACKET_NEED_MORE -} MpegTSPacketizerPacketReturn; - -GType mpegts_packetizer_get_type(void); - -MpegTSPacketizer *mpegts_packetizer_new (void); -void mpegts_packetizer_clear (MpegTSPacketizer *packetizer); -void mpegts_packetizer_push (MpegTSPacketizer *packetizer, GstBuffer *buffer); -gboolean mpegts_packetizer_has_packets (MpegTSPacketizer *packetizer); -MpegTSPacketizerPacketReturn mpegts_packetizer_next_packet (MpegTSPacketizer *packetizer, - MpegTSPacketizerPacket *packet); -void mpegts_packetizer_clear_packet (MpegTSPacketizer *packetizer, - MpegTSPacketizerPacket *packet); -void mpegts_packetizer_remove_stream(MpegTSPacketizer *packetizer, - gint16 pid); - -gboolean mpegts_packetizer_push_section (MpegTSPacketizer *packetzer, - MpegTSPacketizerPacket *packet, MpegTSPacketizerSection *section); -GstStructure *mpegts_packetizer_parse_pat (MpegTSPacketizer *packetizer, - MpegTSPacketizerSection *section); -GstStructure *mpegts_packetizer_parse_pmt (MpegTSPacketizer *packetizer, - MpegTSPacketizerSection *section); -GstStructure *mpegts_packetizer_parse_nit (MpegTSPacketizer *packetizer, - MpegTSPacketizerSection *section); -GstStructure *mpegts_packetizer_parse_sdt (MpegTSPacketizer *packetizer, - MpegTSPacketizerSection *section); -GstStructure *mpegts_packetizer_parse_eit (MpegTSPacketizer *packetizer, - MpegTSPacketizerSection *section); -GstStructure *mpegts_packetizer_parse_tdt (MpegTSPacketizer *packetizer, - MpegTSPacketizerSection *section); - -G_END_DECLS - -#endif /* GST_MPEGTS_PACKETIZER_H */ diff --git a/gst/mpegdemux/mpegtsparse.h b/gst/mpegdemux/mpegtsparse.h deleted file mode 100644 index 149a9171..00000000 --- a/gst/mpegdemux/mpegtsparse.h +++ /dev/null @@ -1,85 +0,0 @@ -/* - * mpegts_parse.h - GStreamer MPEG transport stream parser - * Copyright (C) 2007 Alessandro Decina - * - * Authors: - * Alessandro Decina <alessandro@nnva.org> - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Library General Public - * License as published by the Free Software Foundation; either - * version 2 of the License, or (at your option) any later version. - * - * This library 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 - * Library General Public License for more details. - * - * You should have received a copy of the GNU Library General Public - * License along with this library; if not, write to the - * Free Software Foundation, Inc., 59 Temple Place - Suite 330, - * Boston, MA 02111-1307, USA. - */ - - -#ifndef GST_MPEG_TS_PARSE_H -#define GST_MPEG_TS_PARSE_H - -#include <gst/gst.h> -#include "mpegtspacketizer.h" - -G_BEGIN_DECLS - -#define GST_TYPE_MPEGTS_PARSE \ - (mpegts_parse_get_type()) -#define GST_MPEGTS_PARSE(obj) \ - (G_TYPE_CHECK_INSTANCE_CAST((obj),GST_TYPE_MPEGTS_PARSE,MpegTSParse)) -#define GST_MPEGTS_PARSE_CLASS(klass) \ - (G_TYPE_CHECK_CLASS_CAST((klass),GST_TYPE_MPEGTS_PARSE,MpegTSParseClass)) -#define GST_IS_MPEGTS_PARSE(obj) \ - (G_TYPE_CHECK_INSTANCE_TYPE((obj),GST_TYPE_MPEGTS_PARSE)) -#define GST_IS_MPEGTS_PARSE_CLASS(klass) \ - (G_TYPE_CHECK_CLASS_TYPE((klass),GST_TYPE_MPEGTS_PARSE)) - -typedef struct _MpegTSParse MpegTSParse; -typedef struct _MpegTSParseClass MpegTSParseClass; - -struct _MpegTSParse { - GstElement element; - - GstPad *sinkpad; - - /* the following vars must be protected with the OBJECT_LOCK as they can be - * accessed from the application thread and the streaming thread */ - gchar *program_numbers; - GList *pads_to_add; - GList *pads_to_remove; - GHashTable *programs; - guint req_pads; - - GstStructure *pat; - MpegTSPacketizer *packetizer; - GHashTable *psi_pids; - GHashTable *pes_pids; - gboolean disposed; - gboolean need_sync_program_pads; -}; - -struct _MpegTSParseClass { - GstElementClass parent_class; - - /* signals */ - void (*pat_info) (GstStructure *pat); - void (*pmt_info) (GstStructure *pmt); - void (*nit_info) (GstStructure *nit); - void (*sdt_info) (GstStructure *sdt); - void (*eit_info) (GstStructure *eit); -}; - -GType mpegts_parse_get_type(void); - -gboolean gst_mpegtsparse_plugin_init (GstPlugin * plugin); - -G_END_DECLS - -#endif /* GST_MPEG_TS_PARSE_H */ diff --git a/gst/mpegdemux/flumpegdemux.c b/gst/mpegdemux/plugin.c index ae3d7349..28c691cc 100644 --- a/gst/mpegdemux/flumpegdemux.c +++ b/gst/mpegdemux/plugin.c @@ -46,37 +46,25 @@ #endif #include "gstmpegdemux.h" -#include "gstmpegtsdemux.h" -#include "mpegtsparse.h" -#include "mpegtspacketizer.h" -GST_DEBUG_CATEGORY_EXTERN (gstflupesfilter_debug); -#if 0 -GST_DEBUG_CATEGORY_EXTERN (gstflusectionfilter_debug); -#endif +GST_DEBUG_CATEGORY_EXTERN (mpegpspesfilter_debug); + static gboolean plugin_init (GstPlugin * plugin) { - GST_DEBUG_CATEGORY_INIT (gstflupesfilter_debug, "mpegpesfilter", 0, - "MPEG-TS/PS PES filter output"); -#if 0 - GST_DEBUG_CATEGORY_INIT (gstflusectionfilter_debug, "mpegsectionfilter", 0, - "MPEG-TS Section filter output"); -#endif - if (!gst_flups_demux_plugin_init (plugin)) - return FALSE; -#if 0 - if (!gst_mpegts_demux_plugin_init (plugin)) - return FALSE; - if (!gst_mpegtsparse_plugin_init (plugin)) + GST_DEBUG_CATEGORY_INIT (mpegpspesfilter_debug, "mpegpspesfilter", 0, + "MPEG-PS PES filter"); + + if (!gst_element_register (plugin, "mpegpsdemux", GST_RANK_PRIMARY, + GST_TYPE_FLUPS_DEMUX)) return FALSE; -#endif + return TRUE; } GST_PLUGIN_DEFINE (GST_VERSION_MAJOR, GST_VERSION_MINOR, - mpegdemux2, - "MPEG demuxers", + mpegpsdemux, + "MPEG-PS demuxer", plugin_init, VERSION, GST_LICENSE_UNKNOWN, GST_PACKAGE_NAME, GST_PACKAGE_ORIGIN); diff --git a/gst/mpegpsmux/Makefile.in b/gst/mpegpsmux/Makefile.in index 5e781744..4bcbb215 100644 --- a/gst/mpegpsmux/Makefile.in +++ b/gst/mpegpsmux/Makefile.in @@ -1,4 +1,4 @@ -# Makefile.in generated by automake 1.11.5 from Makefile.am. +# Makefile.in generated by automake 1.11.6 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, @@ -240,11 +240,10 @@ DIRECT3D_LIBS = @DIRECT3D_LIBS@ DIRECTDRAW_LIBS = @DIRECTDRAW_LIBS@ DIRECTFB_CFLAGS = @DIRECTFB_CFLAGS@ DIRECTFB_LIBS = @DIRECTFB_LIBS@ +DIRECTSHOW_LIBS = @DIRECTSHOW_LIBS@ DIRECTSOUND_LIBS = @DIRECTSOUND_LIBS@ DIRECTX_CFLAGS = @DIRECTX_CFLAGS@ DIRECTX_LDFLAGS = @DIRECTX_LDFLAGS@ -DIVXDEC_LIBS = @DIVXDEC_LIBS@ -DIVXENC_LIBS = @DIVXENC_LIBS@ DLLTOOL = @DLLTOOL@ DSYMUTIL = @DSYMUTIL@ DTS_LIBS = @DTS_LIBS@ @@ -279,7 +278,9 @@ GIO_LIBS = @GIO_LIBS@ GLIB_CFLAGS = @GLIB_CFLAGS@ GLIB_COMPILE_SCHEMAS = @GLIB_COMPILE_SCHEMAS@ GLIB_EXTRA_CFLAGS = @GLIB_EXTRA_CFLAGS@ +GLIB_GENMARSHAL = @GLIB_GENMARSHAL@ GLIB_LIBS = @GLIB_LIBS@ +GLIB_MKENUMS = @GLIB_MKENUMS@ GLIB_PREFIX = @GLIB_PREFIX@ GLIB_REQ = @GLIB_REQ@ GME_LIBS = @GME_LIBS@ @@ -355,13 +356,14 @@ HAVE_CXX = @HAVE_CXX@ HAVE_DIRECT3D = @HAVE_DIRECT3D@ HAVE_DIRECT3D9 = @HAVE_DIRECT3D9@ HAVE_DIRECTDRAW = @HAVE_DIRECTDRAW@ +HAVE_DIRECTSHOW = @HAVE_DIRECTSHOW@ HAVE_DIRECTSOUND = @HAVE_DIRECTSOUND@ HAVE_DTS = @HAVE_DTS@ HAVE_FAAC = @HAVE_FAAC@ HAVE_FAAD = @HAVE_FAAD@ HAVE_FLITE = @HAVE_FLITE@ HAVE_GSM = @HAVE_GSM@ -HAVE_JP2K = @HAVE_JP2K@ +HAVE_JASPER = @HAVE_JASPER@ HAVE_NAS = @HAVE_NAS@ HAVE_VPX = @HAVE_VPX@ HAVE_WILDMIDI = @HAVE_WILDMIDI@ @@ -375,7 +377,7 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ INTLLIBS = @INTLLIBS@ INTL_MACOSX_LIBS = @INTL_MACOSX_LIBS@ -JP2K_LIBS = @JP2K_LIBS@ +JASPER_LIBS = @JASPER_LIBS@ KATE_CFLAGS = @KATE_CFLAGS@ KATE_LIBS = @KATE_LIBS@ LD = @LD@ @@ -411,6 +413,8 @@ MODPLUG_CFLAGS = @MODPLUG_CFLAGS@ MODPLUG_LIBS = @MODPLUG_LIBS@ MPEG2ENC_CFLAGS = @MPEG2ENC_CFLAGS@ MPEG2ENC_LIBS = @MPEG2ENC_LIBS@ +MPG123_CFLAGS = @MPG123_CFLAGS@ +MPG123_LIBS = @MPG123_LIBS@ MPLEX_CFLAGS = @MPLEX_CFLAGS@ MPLEX_LDFLAGS = @MPLEX_LDFLAGS@ MPLEX_LIBS = @MPLEX_LIBS@ diff --git a/gst/mpegtsdemux/Makefile.in b/gst/mpegtsdemux/Makefile.in index 8644b0d6..5205b2af 100644 --- a/gst/mpegtsdemux/Makefile.in +++ b/gst/mpegtsdemux/Makefile.in @@ -1,4 +1,4 @@ -# Makefile.in generated by automake 1.11.5 from Makefile.am. +# Makefile.in generated by automake 1.11.6 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, @@ -243,11 +243,10 @@ DIRECT3D_LIBS = @DIRECT3D_LIBS@ DIRECTDRAW_LIBS = @DIRECTDRAW_LIBS@ DIRECTFB_CFLAGS = @DIRECTFB_CFLAGS@ DIRECTFB_LIBS = @DIRECTFB_LIBS@ +DIRECTSHOW_LIBS = @DIRECTSHOW_LIBS@ DIRECTSOUND_LIBS = @DIRECTSOUND_LIBS@ DIRECTX_CFLAGS = @DIRECTX_CFLAGS@ DIRECTX_LDFLAGS = @DIRECTX_LDFLAGS@ -DIVXDEC_LIBS = @DIVXDEC_LIBS@ -DIVXENC_LIBS = @DIVXENC_LIBS@ DLLTOOL = @DLLTOOL@ DSYMUTIL = @DSYMUTIL@ DTS_LIBS = @DTS_LIBS@ @@ -282,7 +281,9 @@ GIO_LIBS = @GIO_LIBS@ GLIB_CFLAGS = @GLIB_CFLAGS@ GLIB_COMPILE_SCHEMAS = @GLIB_COMPILE_SCHEMAS@ GLIB_EXTRA_CFLAGS = @GLIB_EXTRA_CFLAGS@ +GLIB_GENMARSHAL = @GLIB_GENMARSHAL@ GLIB_LIBS = @GLIB_LIBS@ +GLIB_MKENUMS = @GLIB_MKENUMS@ GLIB_PREFIX = @GLIB_PREFIX@ GLIB_REQ = @GLIB_REQ@ GME_LIBS = @GME_LIBS@ @@ -358,13 +359,14 @@ HAVE_CXX = @HAVE_CXX@ HAVE_DIRECT3D = @HAVE_DIRECT3D@ HAVE_DIRECT3D9 = @HAVE_DIRECT3D9@ HAVE_DIRECTDRAW = @HAVE_DIRECTDRAW@ +HAVE_DIRECTSHOW = @HAVE_DIRECTSHOW@ HAVE_DIRECTSOUND = @HAVE_DIRECTSOUND@ HAVE_DTS = @HAVE_DTS@ HAVE_FAAC = @HAVE_FAAC@ HAVE_FAAD = @HAVE_FAAD@ HAVE_FLITE = @HAVE_FLITE@ HAVE_GSM = @HAVE_GSM@ -HAVE_JP2K = @HAVE_JP2K@ +HAVE_JASPER = @HAVE_JASPER@ HAVE_NAS = @HAVE_NAS@ HAVE_VPX = @HAVE_VPX@ HAVE_WILDMIDI = @HAVE_WILDMIDI@ @@ -378,7 +380,7 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ INTLLIBS = @INTLLIBS@ INTL_MACOSX_LIBS = @INTL_MACOSX_LIBS@ -JP2K_LIBS = @JP2K_LIBS@ +JASPER_LIBS = @JASPER_LIBS@ KATE_CFLAGS = @KATE_CFLAGS@ KATE_LIBS = @KATE_LIBS@ LD = @LD@ @@ -414,6 +416,8 @@ MODPLUG_CFLAGS = @MODPLUG_CFLAGS@ MODPLUG_LIBS = @MODPLUG_LIBS@ MPEG2ENC_CFLAGS = @MPEG2ENC_CFLAGS@ MPEG2ENC_LIBS = @MPEG2ENC_LIBS@ +MPG123_CFLAGS = @MPG123_CFLAGS@ +MPG123_LIBS = @MPG123_LIBS@ MPLEX_CFLAGS = @MPLEX_CFLAGS@ MPLEX_LDFLAGS = @MPLEX_LDFLAGS@ MPLEX_LIBS = @MPLEX_LIBS@ diff --git a/gst/mpegtsdemux/gstmpegdesc.c b/gst/mpegtsdemux/gstmpegdesc.c index 4abf5eb3..71ea71a9 100644 --- a/gst/mpegtsdemux/gstmpegdesc.c +++ b/gst/mpegtsdemux/gstmpegdesc.c @@ -34,14 +34,6 @@ GST_DEBUG_CATEGORY (gstmpegtsdesc_debug); #define GST_CAT_DEFAULT (gstmpegtsdesc_debug) -void -gst_mpeg_descriptor_free (GstMPEGDescriptor * desc) -{ - g_return_if_fail (desc != NULL); - - g_free (desc); -} - static guint gst_mpeg_descriptor_parse_1 (guint8 * data, guint size) { @@ -66,18 +58,19 @@ gst_mpeg_descriptor_parse_1 (guint8 * data, guint size) return length + 2; } -GstMPEGDescriptor * -gst_mpeg_descriptor_parse (guint8 * data, guint size) +gboolean +gst_mpeg_descriptor_parse (GstMPEGDescriptor * result, guint8 * data, + guint size) { guint8 *current; guint consumed, total, n_desc; - GstMPEGDescriptor *result; - g_return_val_if_fail (data != NULL, NULL); + g_return_val_if_fail (data != NULL, FALSE); current = data; total = 0; n_desc = 0; + result->n_desc = 0; do { consumed = gst_mpeg_descriptor_parse_1 (current, size); @@ -94,16 +87,13 @@ gst_mpeg_descriptor_parse (guint8 * data, guint size) GST_DEBUG ("parsed %d descriptors", n_desc); if (total == 0) - return NULL; + return FALSE; - result = g_malloc (sizeof (GstMPEGDescriptor) + total); result->n_desc = n_desc; result->data_length = total; - result->data = ((guint8 *) result) + sizeof (GstMPEGDescriptor); - - memcpy (result->data, data, total); + result->data = data; - return result; + return TRUE; } guint diff --git a/gst/mpegtsdemux/gstmpegdesc.h b/gst/mpegtsdemux/gstmpegdesc.h index fb1baa1d..2e98a877 100644 --- a/gst/mpegtsdemux/gstmpegdesc.h +++ b/gst/mpegtsdemux/gstmpegdesc.h @@ -293,7 +293,7 @@ #define DESC_DVB_SATELLITE_DELIVERY_SYSTEM_orbital_position(desc) (desc + 6) #define DESC_DVB_SATELLITE_DELIVERY_SYSTEM_west_east_flag(desc) ((desc[8] & 0x80) == 0x80) #define DESC_DVB_SATELLITE_DELIVERY_SYSTEM_polarization(desc) ((desc[8] >> 5) & 0x3) -#define DESC_DVB_SATELLITE_DELIVERY_SYSTEM_modulation(desc) (desc[8] & 0x1F) +#define DESC_DVB_SATELLITE_DELIVERY_SYSTEM_modulation(desc) (desc[8] & 0x3) #define DESC_DVB_SATELLITE_DELIVERY_SYSTEM_symbol_rate(desc) (desc + 9) #define DESC_DVB_SATELLITE_DELIVERY_SYSTEM_fec_inner(desc) (desc[12] & 0x0F) @@ -349,8 +349,7 @@ typedef struct } GstMPEGDescriptor; void gst_mpegtsdesc_init_debug (void); -GstMPEGDescriptor *gst_mpeg_descriptor_parse (guint8 * data, guint size); -void gst_mpeg_descriptor_free (GstMPEGDescriptor * desc); +gboolean gst_mpeg_descriptor_parse (GstMPEGDescriptor *result, guint8 * data, guint size); guint gst_mpeg_descriptor_n_desc (GstMPEGDescriptor * desc); guint8 *gst_mpeg_descriptor_find (GstMPEGDescriptor * desc, gint tag); diff --git a/gst/mpegtsdemux/mpegtsbase.c b/gst/mpegtsdemux/mpegtsbase.c index 48bba568..ad2bccef 100644 --- a/gst/mpegtsdemux/mpegtsbase.c +++ b/gst/mpegtsdemux/mpegtsbase.c @@ -200,8 +200,14 @@ mpegts_base_reset (MpegTSBase * base) memset (base->is_pes, 0, 1024); memset (base->known_psi, 0, 1024); - /* PAT */ + /* Known PIDs : PAT, TSDT, IPMP CIT */ MPEGTS_BIT_SET (base->known_psi, 0); + MPEGTS_BIT_SET (base->known_psi, 2); + MPEGTS_BIT_SET (base->known_psi, 3); + /* TDT, TOT, ST */ + MPEGTS_BIT_SET (base->known_psi, 0x14); + /* network synchronization */ + MPEGTS_BIT_SET (base->known_psi, 0x15); /* FIXME : Commenting the Following lines is to be in sync with the following * commit @@ -492,7 +498,7 @@ mpegts_base_free_program (MpegTSBaseProgram * program) g_free (program->streams); if (program->tags) - gst_tag_list_free (program->tags); + gst_tag_list_unref (program->tags); g_free (program); } @@ -729,7 +735,7 @@ mpegts_base_activate_program (MpegTSBase * base, MpegTSBaseProgram * program, if (program->pmt_info) gst_structure_free (program->pmt_info); - program->pmt_info = gst_structure_copy (pmt_info); + program->pmt_info = pmt_info; program->pmt_pid = pmt_pid; program->pcr_pid = pcr_pid; @@ -852,7 +858,7 @@ mpegts_base_apply_pat (MpegTSBase * base, GstStructure * pat_info) */ old_pat = base->pat; - base->pat = gst_structure_copy (pat_info); + base->pat = pat_info; gst_element_post_message (GST_ELEMENT_CAST (base), gst_message_new_element (GST_OBJECT (base), @@ -983,14 +989,11 @@ mpegts_base_apply_pmt (MpegTSBase * base, } else program = old_program; - /* First activate program */ + /* activate program */ + /* Ownership of pmt_info is given to the program */ mpegts_base_activate_program (base, program, pmt_pid, pmt_info, initial_program); - /* if (program->pmt_info) */ - /* gst_structure_free (program->pmt_info); */ - /* program->pmt_info = NULL; */ - gst_element_post_message (GST_ELEMENT_CAST (base), gst_message_new_element (GST_OBJECT (base), gst_structure_copy (pmt_info))); @@ -1000,12 +1003,14 @@ mpegts_base_apply_pmt (MpegTSBase * base, no_program: { GST_ERROR ("Attempted to apply a PMT on a program that wasn't created"); + gst_structure_free (pmt_info); return; } same_program: { GST_DEBUG ("Not applying identical program"); + gst_structure_free (pmt_info); return; } } @@ -1016,8 +1021,7 @@ mpegts_base_apply_cat (MpegTSBase * base, GstStructure * cat_info) GST_DEBUG_OBJECT (base, "CAT %" GST_PTR_FORMAT, cat_info); gst_element_post_message (GST_ELEMENT_CAST (base), - gst_message_new_element (GST_OBJECT (base), - gst_structure_copy (cat_info))); + gst_message_new_element (GST_OBJECT (base), cat_info)); } static void @@ -1027,8 +1031,7 @@ mpegts_base_apply_nit (MpegTSBase * base, GST_DEBUG_OBJECT (base, "NIT %" GST_PTR_FORMAT, nit_info); gst_element_post_message (GST_ELEMENT_CAST (base), - gst_message_new_element (GST_OBJECT (base), - gst_structure_copy (nit_info))); + gst_message_new_element (GST_OBJECT (base), nit_info)); } static void @@ -1040,8 +1043,7 @@ mpegts_base_apply_sdt (MpegTSBase * base, mpegts_base_get_tags_from_sdt (base, sdt_info); gst_element_post_message (GST_ELEMENT_CAST (base), - gst_message_new_element (GST_OBJECT (base), - gst_structure_copy (sdt_info))); + gst_message_new_element (GST_OBJECT (base), sdt_info)); } static void @@ -1053,8 +1055,7 @@ mpegts_base_apply_eit (MpegTSBase * base, mpegts_base_get_tags_from_eit (base, eit_info); gst_element_post_message (GST_ELEMENT_CAST (base), - gst_message_new_element (GST_OBJECT (base), - gst_structure_copy (eit_info))); + gst_message_new_element (GST_OBJECT (base), eit_info)); } static void @@ -1066,8 +1067,7 @@ mpegts_base_apply_tdt (MpegTSBase * base, gst_structure_copy (tdt_info))); GST_MPEGTS_BASE_GET_CLASS (base)->push_event (base, - gst_event_new_custom (GST_EVENT_CUSTOM_DOWNSTREAM, - gst_structure_copy (tdt_info))); + gst_event_new_custom (GST_EVENT_CUSTOM_DOWNSTREAM, tdt_info)); } @@ -1214,9 +1214,6 @@ mpegts_base_handle_psi (MpegTSBase * base, MpegTSPacketizerSection * section) break; } - if (structure) - gst_structure_free (structure); - return res; } @@ -1337,7 +1334,7 @@ mpegts_base_sink_event (GstPad * pad, GstObject * parent, GstEvent * event) gboolean res = TRUE; MpegTSBase *base = GST_MPEGTS_BASE (parent); - GST_WARNING_OBJECT (base, "Got event %s", + GST_DEBUG_OBJECT (base, "Got event %s", gst_event_type_get_name (GST_EVENT_TYPE (event))); switch (GST_EVENT_TYPE (event)) { @@ -1350,7 +1347,7 @@ mpegts_base_sink_event (GstPad * pad, GstObject * parent, GstEvent * event) break; case GST_EVENT_EOS: res = gst_mpegts_base_handle_eos (base); - gst_event_unref (event); + res = GST_MPEGTS_BASE_GET_CLASS (base)->push_event (base, event); break; case GST_EVENT_CAPS: /* FIXME, do something */ @@ -1721,7 +1718,8 @@ mpegts_base_handle_seek_event (MpegTSBase * base, GstPad * pad, } //else done: - gst_pad_start_task (base->sinkpad, (GstTaskFunction) mpegts_base_loop, base); + gst_pad_start_task (base->sinkpad, (GstTaskFunction) mpegts_base_loop, base, + NULL); push_mode: GST_PAD_STREAM_UNLOCK (base->sinkpad); return ret == GST_FLOW_OK; @@ -1775,7 +1773,8 @@ mpegts_base_sink_activate_mode (GstPad * pad, GstObject * parent, base->mode = BASE_MODE_SCANNING; base->packetizer->calculate_offset = TRUE; res = - gst_pad_start_task (pad, (GstTaskFunction) mpegts_base_loop, base); + gst_pad_start_task (pad, (GstTaskFunction) mpegts_base_loop, base, + NULL); } else res = gst_pad_stop_task (pad); break; diff --git a/gst/mpegtsdemux/mpegtspacketizer.c b/gst/mpegtsdemux/mpegtspacketizer.c index afe102f6..45c9fcfa 100644 --- a/gst/mpegtsdemux/mpegtspacketizer.c +++ b/gst/mpegtsdemux/mpegtspacketizer.c @@ -548,7 +548,7 @@ mpegts_packetizer_parse_cat (MpegTSPacketizer2 * packetizer, guint8 *data; guint8 tmp; GValueArray *descriptors; - GstMPEGDescriptor *desc; + GstMPEGDescriptor desc; guint desc_len; /* Skip parts already parsed */ @@ -570,10 +570,8 @@ mpegts_packetizer_parse_cat (MpegTSPacketizer2 * packetizer, /* descriptors */ desc_len = section->section_length - 4 - 8; - desc = gst_mpeg_descriptor_parse (data, desc_len); - if (desc) - gst_mpeg_descriptor_free (desc); - descriptors = g_value_array_new (0); + gst_mpeg_descriptor_parse (&desc, data, desc_len); + descriptors = g_value_array_new (desc.n_desc); if (!mpegts_packetizer_parse_descriptors (packetizer, &data, data + desc_len, descriptors)) { g_value_array_free (descriptors); @@ -761,18 +759,19 @@ mpegts_packetizer_parse_pmt (MpegTSPacketizer2 * packetizer, if (stream_info_length) { /* check for AC3 descriptor */ - GstMPEGDescriptor *desc = - gst_mpeg_descriptor_parse (data, stream_info_length); - if (desc != NULL) { + GstMPEGDescriptor desc; + + if (gst_mpeg_descriptor_parse (&desc, data, stream_info_length)) { /* DVB AC3 */ guint8 *desc_data; - if (gst_mpeg_descriptor_find (desc, DESC_DVB_AC3)) { + if (gst_mpeg_descriptor_find (&desc, DESC_DVB_AC3)) { gst_structure_set (stream_info, "has-ac3", G_TYPE_BOOLEAN, TRUE, NULL); } /* DATA BROADCAST ID */ - desc_data = gst_mpeg_descriptor_find (desc, DESC_DVB_DATA_BROADCAST_ID); + desc_data = + gst_mpeg_descriptor_find (&desc, DESC_DVB_DATA_BROADCAST_ID); if (desc_data) { guint16 data_broadcast_id; data_broadcast_id = @@ -782,7 +781,7 @@ mpegts_packetizer_parse_pmt (MpegTSPacketizer2 * packetizer, } /* DATA BROADCAST */ - desc_data = gst_mpeg_descriptor_find (desc, DESC_DVB_DATA_BROADCAST); + desc_data = gst_mpeg_descriptor_find (&desc, DESC_DVB_DATA_BROADCAST); if (desc_data) { GstStructure *databroadcast_info; guint16 data_broadcast_id; @@ -799,7 +798,7 @@ mpegts_packetizer_parse_pmt (MpegTSPacketizer2 * packetizer, /* DVB CAROUSEL IDENTIFIER */ desc_data = - gst_mpeg_descriptor_find (desc, DESC_DVB_CAROUSEL_IDENTIFIER); + gst_mpeg_descriptor_find (&desc, DESC_DVB_CAROUSEL_IDENTIFIER); if (desc_data) { guint32 carousel_id; carousel_id = DESC_DVB_CAROUSEL_IDENTIFIER_carousel_id (desc_data); @@ -808,7 +807,8 @@ mpegts_packetizer_parse_pmt (MpegTSPacketizer2 * packetizer, } /* DVB STREAM IDENTIFIER */ - desc_data = gst_mpeg_descriptor_find (desc, DESC_DVB_STREAM_IDENTIFIER); + desc_data = + gst_mpeg_descriptor_find (&desc, DESC_DVB_STREAM_IDENTIFIER); if (desc_data) { guint8 component_tag; component_tag = DESC_DVB_STREAM_IDENTIFIER_component_tag (desc_data); @@ -817,7 +817,7 @@ mpegts_packetizer_parse_pmt (MpegTSPacketizer2 * packetizer, } /* ISO 639 LANGUAGE */ - desc_data = gst_mpeg_descriptor_find (desc, DESC_ISO_639_LANGUAGE); + desc_data = gst_mpeg_descriptor_find (&desc, DESC_ISO_639_LANGUAGE); if (desc_data && DESC_ISO_639_LANGUAGE_codes_n (desc_data)) { gchar *lang_code; gchar *language_n = (gchar *) @@ -828,22 +828,19 @@ mpegts_packetizer_parse_pmt (MpegTSPacketizer2 * packetizer, g_free (lang_code); } - gst_mpeg_descriptor_free (desc); - } + descriptors = g_value_array_new (desc.n_desc); + if (!mpegts_packetizer_parse_descriptors (packetizer, + &data, data + stream_info_length, descriptors)) { + g_value_unset (&programs); + gst_structure_free (stream_info); + g_value_array_free (descriptors); + goto error; + } - descriptors = g_value_array_new (0); - if (!mpegts_packetizer_parse_descriptors (packetizer, - &data, data + stream_info_length, descriptors)) { - g_value_unset (&programs); - gst_structure_free (stream_info); + gst_structure_id_set (stream_info, + QUARK_DESCRIPTORS, G_TYPE_VALUE_ARRAY, descriptors, NULL); g_value_array_free (descriptors); - goto error; } - - gst_structure_id_set (stream_info, - QUARK_DESCRIPTORS, G_TYPE_VALUE_ARRAY, descriptors, NULL); - g_value_array_free (descriptors); - } g_value_init (&stream_value, GST_TYPE_STRUCTURE); @@ -916,7 +913,7 @@ mpegts_packetizer_parse_nit (MpegTSPacketizer2 * packetizer, /* see if the buffer is large enough */ if (descriptors_loop_length) { guint8 *networkname_descriptor; - GstMPEGDescriptor *mpegdescriptor; + GstMPEGDescriptor mpegdescriptor; if (data + descriptors_loop_length > end - 4) { GST_WARNING ("PID %d invalid NIT descriptors loop length %d", @@ -924,37 +921,37 @@ mpegts_packetizer_parse_nit (MpegTSPacketizer2 * packetizer, gst_structure_free (nit); goto error; } - mpegdescriptor = gst_mpeg_descriptor_parse (data, descriptors_loop_length); - networkname_descriptor = - gst_mpeg_descriptor_find (mpegdescriptor, DESC_DVB_NETWORK_NAME); - if (networkname_descriptor != NULL) { - gchar *networkname_tmp; - - /* No need to bounds check this value as it comes from the descriptor length itself */ - guint8 networkname_length = - DESC_DVB_NETWORK_NAME_length (networkname_descriptor); - gchar *networkname = - (gchar *) DESC_DVB_NETWORK_NAME_text (networkname_descriptor); - - networkname_tmp = - get_encoding_and_convert (networkname, networkname_length); - gst_structure_id_set (nit, QUARK_NETWORK_NAME, G_TYPE_STRING, - networkname_tmp, NULL); - g_free (networkname_tmp); - } - gst_mpeg_descriptor_free (mpegdescriptor); + if (gst_mpeg_descriptor_parse (&mpegdescriptor, data, + descriptors_loop_length)) { + networkname_descriptor = + gst_mpeg_descriptor_find (&mpegdescriptor, DESC_DVB_NETWORK_NAME); + if (networkname_descriptor != NULL) { + gchar *networkname_tmp; + + /* No need to bounds check this value as it comes from the descriptor length itself */ + guint8 networkname_length = + DESC_DVB_NETWORK_NAME_length (networkname_descriptor); + gchar *networkname = + (gchar *) DESC_DVB_NETWORK_NAME_text (networkname_descriptor); + + networkname_tmp = + get_encoding_and_convert (networkname, networkname_length); + gst_structure_id_set (nit, QUARK_NETWORK_NAME, G_TYPE_STRING, + networkname_tmp, NULL); + g_free (networkname_tmp); + } - descriptors = g_value_array_new (0); - if (!mpegts_packetizer_parse_descriptors (packetizer, - &data, data + descriptors_loop_length, descriptors)) { - gst_structure_free (nit); + descriptors = g_value_array_new (mpegdescriptor.n_desc); + if (!mpegts_packetizer_parse_descriptors (packetizer, + &data, data + descriptors_loop_length, descriptors)) { + gst_structure_free (nit); + g_value_array_free (descriptors); + goto error; + } + gst_structure_id_set (nit, QUARK_DESCRIPTORS, G_TYPE_VALUE_ARRAY, + descriptors, NULL); g_value_array_free (descriptors); - goto error; } - - gst_structure_id_set (nit, QUARK_DESCRIPTORS, G_TYPE_VALUE_ARRAY, - descriptors, NULL); - g_value_array_free (descriptors); } transport_stream_loop_length = GST_READ_UINT16_BE (data) & 0x0FFF; @@ -991,7 +988,7 @@ mpegts_packetizer_parse_nit (MpegTSPacketizer2 * packetizer, QUARK_ORIGINAL_NETWORK_ID, G_TYPE_UINT, original_network_id, NULL); if (descriptors_loop_length) { - GstMPEGDescriptor *mpegdescriptor; + GstMPEGDescriptor mpegdescriptor; guint8 *delivery; if (data + descriptors_loop_length > end - 4) { @@ -1000,11 +997,10 @@ mpegts_packetizer_parse_nit (MpegTSPacketizer2 * packetizer, gst_structure_free (transport); goto error; } - mpegdescriptor = - gst_mpeg_descriptor_parse (data, descriptors_loop_length); + gst_mpeg_descriptor_parse (&mpegdescriptor, data, + descriptors_loop_length); - if ((delivery = - gst_mpeg_descriptor_find (mpegdescriptor, + if ((delivery = gst_mpeg_descriptor_find (&mpegdescriptor, DESC_DVB_SATELLITE_DELIVERY_SYSTEM))) { guint8 *frequency_bcd = @@ -1090,25 +1086,20 @@ mpegts_packetizer_parse_nit (MpegTSPacketizer2 * packetizer, } switch (modulation) { case 0x00: - modulation_str = "undefined"; + modulation_str = "auto"; break; case 0x01: - modulation_str = "QAM16"; + modulation_str = "QPSK"; break; case 0x02: - modulation_str = "QAM32"; + modulation_str = "8PSK"; break; case 0x03: - modulation_str = "QAM64"; - break; - case 0x04: - modulation_str = "QAM128"; - break; - case 0x05: - modulation_str = "QAM256"; + modulation_str = "QAM16"; break; default: - modulation_str = "reserved"; + modulation_str = ""; + break; } delivery_structure = gst_structure_new ("satellite", "orbital", G_TYPE_FLOAT, orbital, @@ -1120,8 +1111,7 @@ mpegts_packetizer_parse_nit (MpegTSPacketizer2 * packetizer, "inner-fec", G_TYPE_STRING, fec_inner_str, NULL); gst_structure_set (transport, "delivery", GST_TYPE_STRUCTURE, delivery_structure, NULL); - } else if ((delivery = - gst_mpeg_descriptor_find (mpegdescriptor, + } else if ((delivery = gst_mpeg_descriptor_find (&mpegdescriptor, DESC_DVB_TERRESTRIAL_DELIVERY_SYSTEM))) { guint32 frequency = @@ -1249,8 +1239,7 @@ mpegts_packetizer_parse_nit (MpegTSPacketizer2 * packetizer, "other-frequency", G_TYPE_BOOLEAN, other_frequency, NULL); gst_structure_set (transport, "delivery", GST_TYPE_STRUCTURE, delivery_structure, NULL); - } else if ((delivery = - gst_mpeg_descriptor_find (mpegdescriptor, + } else if ((delivery = gst_mpeg_descriptor_find (&mpegdescriptor, DESC_DVB_CABLE_DELIVERY_SYSTEM))) { guint8 *frequency_bcd = @@ -1345,8 +1334,7 @@ mpegts_packetizer_parse_nit (MpegTSPacketizer2 * packetizer, gst_structure_free (delivery_structure); delivery_structure = NULL; } - if ((delivery = - gst_mpeg_descriptor_find (mpegdescriptor, + if ((delivery = gst_mpeg_descriptor_find (&mpegdescriptor, DESC_DTG_LOGICAL_CHANNEL))) { guint8 *current_pos = delivery + 2; GValue channel_numbers = { 0 }; @@ -1373,8 +1361,7 @@ mpegts_packetizer_parse_nit (MpegTSPacketizer2 * packetizer, gst_structure_set_value (transport, "channels", &channel_numbers); g_value_unset (&channel_numbers); } - if ((delivery = - gst_mpeg_descriptor_find (mpegdescriptor, + if ((delivery = gst_mpeg_descriptor_find (&mpegdescriptor, DESC_DVB_FREQUENCY_LIST))) { guint8 *current_pos = delivery + 2; GValue frequencies = { 0 }; @@ -1445,9 +1432,8 @@ mpegts_packetizer_parse_nit (MpegTSPacketizer2 * packetizer, g_value_unset (&frequencies); } } - gst_mpeg_descriptor_free (mpegdescriptor); - descriptors = g_value_array_new (0); + descriptors = g_value_array_new (mpegdescriptor.n_desc); if (!mpegts_packetizer_parse_descriptors (packetizer, &data, data + descriptors_loop_length, descriptors)) { gst_structure_free (transport); @@ -1581,7 +1567,7 @@ mpegts_packetizer_parse_sdt (MpegTSPacketizer2 * packetizer, if (descriptors_loop_length) { guint8 *service_descriptor; - GstMPEGDescriptor *mpegdescriptor; + GstMPEGDescriptor mpegdescriptor; if (data + descriptors_loop_length > end - 4) { GST_WARNING ("PID %d invalid SDT entry %d descriptors loop length %d", @@ -1589,10 +1575,10 @@ mpegts_packetizer_parse_sdt (MpegTSPacketizer2 * packetizer, gst_structure_free (service); goto error; } - mpegdescriptor = - gst_mpeg_descriptor_parse (data, descriptors_loop_length); + gst_mpeg_descriptor_parse (&mpegdescriptor, data, + descriptors_loop_length); service_descriptor = - gst_mpeg_descriptor_find (mpegdescriptor, DESC_DVB_SERVICE); + gst_mpeg_descriptor_find (&mpegdescriptor, DESC_DVB_SERVICE); if (service_descriptor != NULL) { gchar *servicename_tmp, *serviceprovider_name_tmp; guint8 serviceprovider_name_length = @@ -1641,9 +1627,8 @@ mpegts_packetizer_parse_sdt (MpegTSPacketizer2 * packetizer, g_free (serviceprovider_name_tmp); } } - gst_mpeg_descriptor_free (mpegdescriptor); - descriptors = g_value_array_new (0); + descriptors = g_value_array_new (mpegdescriptor.n_desc); if (!mpegts_packetizer_parse_descriptors (packetizer, &data, data + descriptors_loop_length, descriptors)) { gst_structure_free (service); @@ -1819,7 +1804,7 @@ mpegts_packetizer_parse_eit (MpegTSPacketizer2 * packetizer, guint8 *event_descriptor; GArray *component_descriptors; GArray *extended_event_descriptors; - GstMPEGDescriptor *mpegdescriptor; + GstMPEGDescriptor mpegdescriptor; if (data + descriptors_loop_length > end - 4) { GST_WARNING ("PID %d invalid EIT descriptors loop length %d", @@ -1827,10 +1812,10 @@ mpegts_packetizer_parse_eit (MpegTSPacketizer2 * packetizer, gst_structure_free (event); goto error; } - mpegdescriptor = - gst_mpeg_descriptor_parse (data, descriptors_loop_length); + gst_mpeg_descriptor_parse (&mpegdescriptor, data, + descriptors_loop_length); event_descriptor = - gst_mpeg_descriptor_find (mpegdescriptor, DESC_DVB_SHORT_EVENT); + gst_mpeg_descriptor_find (&mpegdescriptor, DESC_DVB_SHORT_EVENT); if (event_descriptor != NULL) { gchar *eventname_tmp, *eventdescription_tmp; guint8 eventname_length = @@ -1850,14 +1835,14 @@ mpegts_packetizer_parse_eit (MpegTSPacketizer2 * packetizer, get_encoding_and_convert (eventdescription, eventdescription_length); - gst_structure_set (event, "name", G_TYPE_STRING, eventname_tmp, NULL); - gst_structure_set (event, "description", G_TYPE_STRING, - eventdescription_tmp, NULL); + gst_structure_set (event, "name", G_TYPE_STRING, eventname_tmp, + "description", G_TYPE_STRING, eventdescription_tmp, NULL); g_free (eventname_tmp); g_free (eventdescription_tmp); } } - extended_event_descriptors = gst_mpeg_descriptor_find_all (mpegdescriptor, + extended_event_descriptors = + gst_mpeg_descriptor_find_all (&mpegdescriptor, DESC_DVB_EXTENDED_EVENT); if (extended_event_descriptors) { int i; @@ -1930,7 +1915,7 @@ mpegts_packetizer_parse_eit (MpegTSPacketizer2 * packetizer, g_array_free (extended_event_descriptors, TRUE); } - component_descriptors = gst_mpeg_descriptor_find_all (mpegdescriptor, + component_descriptors = gst_mpeg_descriptor_find_all (&mpegdescriptor, DESC_DVB_COMPONENT); if (component_descriptors) { int i; @@ -2132,9 +2117,8 @@ mpegts_packetizer_parse_eit (MpegTSPacketizer2 * packetizer, g_value_unset (&components); g_array_free (component_descriptors, TRUE); } - gst_mpeg_descriptor_free (mpegdescriptor); - descriptors = g_value_array_new (0); + descriptors = g_value_array_new (mpegdescriptor.n_desc); if (!mpegts_packetizer_parse_descriptors (packetizer, &data, data + descriptors_loop_length, descriptors)) { gst_structure_free (event); @@ -2840,7 +2824,7 @@ convert_to_utf8 (const gchar * text, gint length, guint start, const gchar * encoding, gboolean is_multibyte, GError ** error) { gchar *new_text; - GByteArray *sb; + gchar *tmp, *pos; gint i; g_return_val_if_fail (text != NULL, NULL); @@ -2848,8 +2832,7 @@ convert_to_utf8 (const gchar * text, gint length, guint start, text += start; - /* FIXME : GByteArray has a big overhead */ - sb = g_byte_array_sized_new (length * 1.1); + pos = tmp = g_malloc (length * 2); if (is_multibyte) { if (length == -1) { @@ -2862,12 +2845,15 @@ convert_to_utf8 (const gchar * text, gint length, guint start, /* skip it */ break; case 0xE08A:{ - guint8 nl[] = { 0x00, 0x0A }; /* new line */ - g_byte_array_append (sb, nl, 2); + pos[0] = 0x00; /* 0x00 0x0A is a new line */ + pos[1] = 0x0A; + pos += 2; break; } default: - g_byte_array_append (sb, (guint8 *) text, 2); + pos[0] = text[0]; + pos[1] = text[1]; + pos += 2; break; } @@ -2883,12 +2869,15 @@ convert_to_utf8 (const gchar * text, gint length, guint start, /* skip it */ break; case 0xE08A:{ - guint8 nl[] = { 0x00, 0x0A }; /* new line */ - g_byte_array_append (sb, nl, 2); + pos[0] = 0x00; /* 0x00 0x0A is a new line */ + pos[1] = 0x0A; + pos += 2; break; } default: - g_byte_array_append (sb, (guint8 *) text, 2); + pos[0] = text[0]; + pos[1] = text[1]; + pos += 2; break; } @@ -2906,10 +2895,12 @@ convert_to_utf8 (const gchar * text, gint length, guint start, /* skip it */ break; case 0x8A: - g_byte_array_append (sb, (guint8 *) "\n", 1); + *pos = '\n'; + pos += 1; break; default: - g_byte_array_append (sb, &code, 1); + *pos = *text; + pos += 1; break; } @@ -2925,10 +2916,12 @@ convert_to_utf8 (const gchar * text, gint length, guint start, /* skip it */ break; case 0x8A: - g_byte_array_append (sb, (guint8 *) "\n", 1); + *pos = '\n'; + pos += 1; break; default: - g_byte_array_append (sb, &code, 1); + *pos = *text; + pos += 1; break; } @@ -2937,15 +2930,16 @@ convert_to_utf8 (const gchar * text, gint length, guint start, } } - if (sb->len > 0) { + if (pos > tmp) { + gsize bread = 0; new_text = - g_convert ((gchar *) sb->data, sb->len, "utf-8", encoding, NULL, NULL, - error); + g_convert (tmp, pos - tmp, "utf-8", encoding, &bread, NULL, error); + GST_DEBUG ("Converted to : %s", new_text); } else { new_text = g_strdup (""); } - g_byte_array_free (sb, TRUE); + g_free (tmp); return new_text; } diff --git a/gst/mpegtsdemux/mpegtsparse.c b/gst/mpegtsdemux/mpegtsparse.c index 974b98a9..33391154 100644 --- a/gst/mpegtsdemux/mpegtsparse.c +++ b/gst/mpegtsdemux/mpegtsparse.c @@ -26,6 +26,7 @@ #include "config.h" #endif +#include <stdio.h> #include <stdlib.h> #include <string.h> @@ -47,8 +48,6 @@ typedef struct _MpegTSParsePad MpegTSParsePad; typedef struct { MpegTSBaseProgram program; - gint selected; - gboolean active; MpegTSParsePad *tspad; } MpegTSParseProgram; @@ -65,27 +64,23 @@ struct _MpegTSParsePad /* the return of the latest push */ GstFlowReturn flow_return; - - GstTagList *tags; - guint event_id; }; static GstStaticPadTemplate src_template = -GST_STATIC_PAD_TEMPLATE ("src_%u", GST_PAD_SRC, - GST_PAD_REQUEST, +GST_STATIC_PAD_TEMPLATE ("src", GST_PAD_SRC, + GST_PAD_ALWAYS, GST_STATIC_CAPS ("video/mpegts, " "systemstream = (boolean) true ") ); static GstStaticPadTemplate program_template = GST_STATIC_PAD_TEMPLATE ("program_%u", GST_PAD_SRC, - GST_PAD_SOMETIMES, + GST_PAD_REQUEST, GST_STATIC_CAPS ("video/mpegts, " "systemstream = (boolean) true ") ); enum { ARG_0, - PROP_PROGRAM_NUMBERS, /* FILL ME */ }; @@ -97,20 +92,11 @@ mpegts_parse_program_stopped (MpegTSBase * base, MpegTSBaseProgram * program); static GstFlowReturn mpegts_parse_push (MpegTSBase * base, MpegTSPacketizerPacket * packet, MpegTSPacketizerSection * section); -static void mpegts_parse_set_property (GObject * object, guint prop_id, - const GValue * value, GParamSpec * pspec); -static void mpegts_parse_get_property (GObject * object, guint prop_id, - GValue * value, GParamSpec * pspec); -static void mpegts_parse_finalize (GObject * object); static MpegTSParsePad *mpegts_parse_create_tspad (MpegTSParse2 * parse, const gchar * name); static void mpegts_parse_destroy_tspad (MpegTSParse2 * parse, MpegTSParsePad * tspad); -static GstPad *mpegts_parse_activate_program (MpegTSParse2 * parse, - MpegTSParseProgram * program); -static void mpegts_parse_reset_selected_programs (MpegTSParse2 * parse, - gchar * programs); static void mpegts_parse_pad_removed (GstElement * element, GstPad * pad); static GstPad *mpegts_parse_request_new_pad (GstElement * element, @@ -122,11 +108,11 @@ static gboolean push_event (MpegTSBase * base, GstEvent * event); #define mpegts_parse_parent_class parent_class G_DEFINE_TYPE (MpegTSParse2, mpegts_parse, GST_TYPE_MPEGTS_BASE); +static void mpegts_parse_reset (MpegTSBase * base); static void mpegts_parse_class_init (MpegTSParse2Class * klass) { - GObjectClass *gobject_class; GstElementClass *element_class; MpegTSBaseClass *ts_class; @@ -140,101 +126,55 @@ mpegts_parse_class_init (MpegTSParse2Class * klass) gst_element_class_add_pad_template (element_class, gst_static_pad_template_get (&program_template)); - gst_element_class_set_details_simple (element_class, + gst_element_class_set_static_metadata (element_class, "MPEG transport stream parser", "Codec/Parser", "Parses MPEG2 transport streams", "Alessandro Decina <alessandro@nnva.org>, " "Zaheer Abbas Merali <zaheerabbas at merali dot org>"); - gobject_class = G_OBJECT_CLASS (klass); - gobject_class->set_property = mpegts_parse_set_property; - gobject_class->get_property = mpegts_parse_get_property; - gobject_class->finalize = mpegts_parse_finalize; - - g_object_class_install_property (gobject_class, PROP_PROGRAM_NUMBERS, - g_param_spec_string ("program-numbers", - "Program Numbers", - "Colon separated list of programs", "", - G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS)); - ts_class = GST_MPEGTS_BASE_CLASS (klass); ts_class->push = GST_DEBUG_FUNCPTR (mpegts_parse_push); ts_class->push_event = GST_DEBUG_FUNCPTR (push_event); ts_class->program_started = GST_DEBUG_FUNCPTR (mpegts_parse_program_started); ts_class->program_stopped = GST_DEBUG_FUNCPTR (mpegts_parse_program_stopped); + ts_class->reset = GST_DEBUG_FUNCPTR (mpegts_parse_reset); } static void mpegts_parse_init (MpegTSParse2 * parse) { - parse->need_sync_program_pads = FALSE; - parse->program_numbers = g_strdup (""); - parse->pads_to_add = NULL; - parse->pads_to_remove = NULL; GST_MPEGTS_BASE (parse)->program_size = sizeof (MpegTSParseProgram); -} - -static void -mpegts_parse_finalize (GObject * object) -{ - MpegTSParse2 *parse = GST_MPEGTS_PARSE (object); - g_free (parse->program_numbers); - - if (G_OBJECT_CLASS (parent_class)->finalize) - G_OBJECT_CLASS (parent_class)->finalize (object); + parse->srcpad = gst_pad_new_from_static_template (&src_template, "src"); + gst_element_add_pad (GST_ELEMENT (parse), parse->srcpad); } static void -mpegts_parse_set_property (GObject * object, guint prop_id, - const GValue * value, GParamSpec * pspec) +mpegts_parse_reset (MpegTSBase * base) { - MpegTSParse2 *parse = GST_MPEGTS_PARSE (object); + /* Set the various know PIDs we are interested in */ + + /* CAT */ + MPEGTS_BIT_SET (base->known_psi, 1); + /* NIT, ST */ + MPEGTS_BIT_SET (base->known_psi, 0x10); + /* SDT, BAT, ST */ + MPEGTS_BIT_SET (base->known_psi, 0x11); + /* EIT, ST, CIT (TS 102 323) */ + MPEGTS_BIT_SET (base->known_psi, 0x12); + /* RST, ST */ + MPEGTS_BIT_SET (base->known_psi, 0x13); + /* RNT (TS 102 323) */ + MPEGTS_BIT_SET (base->known_psi, 0x16); + /* inband signalling */ + MPEGTS_BIT_SET (base->known_psi, 0x1c); + /* measurement */ + MPEGTS_BIT_SET (base->known_psi, 0x1d); + /* DIT */ + MPEGTS_BIT_SET (base->known_psi, 0x1e); + /* SIT */ + MPEGTS_BIT_SET (base->known_psi, 0x1f); - switch (prop_id) { - case PROP_PROGRAM_NUMBERS: - mpegts_parse_reset_selected_programs (parse, g_value_dup_string (value)); - break; - default: - G_OBJECT_WARN_INVALID_PROPERTY_ID (object, prop_id, pspec); - } -} - -static void -mpegts_parse_get_property (GObject * object, guint prop_id, - GValue * value, GParamSpec * pspec) -{ - MpegTSParse2 *parse = GST_MPEGTS_PARSE (object); - - switch (prop_id) { - case PROP_PROGRAM_NUMBERS: - g_value_set_string (value, parse->program_numbers); - break; - default: - G_OBJECT_WARN_INVALID_PROPERTY_ID (object, prop_id, pspec); - } -} - -static GstPad * -mpegts_parse_activate_program (MpegTSParse2 * parse, - MpegTSParseProgram * program) -{ - MpegTSParsePad *tspad; - gchar *pad_name; - - pad_name = - g_strdup_printf ("program_%u", - ((MpegTSBaseProgram *) program)->program_number); - - tspad = mpegts_parse_create_tspad (parse, pad_name); - tspad->program_number = ((MpegTSBaseProgram *) program)->program_number; - tspad->program = program; - program->tspad = tspad; - g_free (pad_name); - gst_pad_set_active (tspad->pad, TRUE); - program->active = TRUE; - - return tspad->pad; } static gboolean @@ -243,7 +183,7 @@ push_event (MpegTSBase * base, GstEvent * event) MpegTSParse2 *parse = (MpegTSParse2 *) base; GList *tmp; - for (tmp = GST_ELEMENT_CAST (parse)->srcpads; tmp; tmp = tmp->next) { + for (tmp = parse->srcpads; tmp; tmp = tmp->next) { GstPad *pad = (GstPad *) tmp->data; if (pad) { gst_event_ref (event); @@ -251,133 +191,11 @@ push_event (MpegTSBase * base, GstEvent * event) } } - gst_event_unref (event); + gst_pad_push_event (parse->srcpad, event); return TRUE; } -static GstPad * -mpegts_parse_deactivate_program (MpegTSParse2 * parse, - MpegTSParseProgram * program) -{ - MpegTSParsePad *tspad; - - tspad = program->tspad; - gst_pad_set_active (tspad->pad, FALSE); - program->active = FALSE; - - /* tspad will be destroyed in GstElementClass::pad_removed */ - - return tspad->pad; -} - -static void -mpegts_parse_sync_program_pads (MpegTSParse2 * parse) -{ - GList *walk; - - GST_INFO_OBJECT (parse, "begin sync pads"); - for (walk = parse->pads_to_remove; walk; walk = walk->next) - gst_element_remove_pad (GST_ELEMENT (parse), GST_PAD (walk->data)); - - for (walk = parse->pads_to_add; walk; walk = walk->next) - gst_element_add_pad (GST_ELEMENT (parse), GST_PAD (walk->data)); - - if (parse->pads_to_add) - g_list_free (parse->pads_to_add); - - if (parse->pads_to_remove) - g_list_free (parse->pads_to_remove); - - GST_OBJECT_LOCK (parse); - parse->pads_to_remove = NULL; - parse->pads_to_add = NULL; - parse->need_sync_program_pads = FALSE; - GST_OBJECT_UNLOCK (parse); - - GST_INFO_OBJECT (parse, "end sync pads"); -} - -static void -foreach_program_activate_or_deactivate (gpointer key, gpointer value, - gpointer data) -{ - MpegTSParse2 *parse = GST_MPEGTS_PARSE (data); - MpegTSParseProgram *program = (MpegTSParseProgram *) value; - - /* at this point selected programs have program->selected == 2, - * unselected programs thay may have to be deactivated have selected == 1 and - * unselected inactive programs have selected == 0 */ - - switch (--program->selected) { - case 1: - /* selected */ - if (!program->active - && ((MpegTSBaseProgram *) program)->pmt_pid != G_MAXUINT16) - parse->pads_to_add = - g_list_append (parse->pads_to_add, - mpegts_parse_activate_program (parse, program)); - else { - program->selected = 2; - } - break; - case 0: - /* unselected */ - if (program->active) - parse->pads_to_remove = g_list_append (parse->pads_to_remove, - mpegts_parse_deactivate_program (parse, program)); - break; - case -1: - /* was already unselected */ - program->selected = 0; - break; - default: - g_return_if_reached (); - } -} - -static void -mpegts_parse_reset_selected_programs (MpegTSParse2 * parse, - gchar * program_numbers) -{ - GST_OBJECT_LOCK (parse); - if (parse->program_numbers) - g_free (parse->program_numbers); - - parse->program_numbers = program_numbers; - - if (*parse->program_numbers != '\0') { - gint program_number; - MpegTSParseProgram *program; - gchar **progs, **walk; - - progs = g_strsplit (parse->program_numbers, ":", 0); - - walk = progs; - while (*walk != NULL) { - program_number = strtol (*walk, NULL, 0); - program = - (MpegTSParseProgram *) mpegts_base_get_program ((MpegTSBase *) parse, - program_number); - if (program == NULL) - /* create the program, it will get activated once we get a PMT for it */ - program = (MpegTSParseProgram *) mpegts_base_add_program ((MpegTSBase *) - parse, program_number, G_MAXUINT16); - program->selected = 2; - ++walk; - } - g_strfreev (progs); - } - - g_hash_table_foreach (((MpegTSBase *) parse)->programs, - foreach_program_activate_or_deactivate, parse); - - if (parse->pads_to_remove || parse->pads_to_add) - parse->need_sync_program_pads = TRUE; - GST_OBJECT_UNLOCK (parse); -} - - static MpegTSParsePad * mpegts_parse_create_tspad (MpegTSParse2 * parse, const gchar * pad_name) { @@ -403,10 +221,6 @@ mpegts_parse_create_tspad (MpegTSParse2 * parse, const gchar * pad_name) static void mpegts_parse_destroy_tspad (MpegTSParse2 * parse, MpegTSParsePad * tspad) { - if (tspad->tags) { - gst_tag_list_free (tspad->tags); - } - /* free the wrapper */ g_free (tspad); } @@ -421,7 +235,11 @@ mpegts_parse_pad_removed (GstElement * element, GstPad * pad) return; tspad = (MpegTSParsePad *) gst_pad_get_element_private (pad); - mpegts_parse_destroy_tspad (parse, tspad); + if (tspad) { + mpegts_parse_destroy_tspad (parse, tspad); + + parse->srcpads = g_list_remove_all (parse->srcpads, pad); + } if (GST_ELEMENT_CLASS (parent_class)->pad_removed) GST_ELEMENT_CLASS (parent_class)->pad_removed (element, pad); @@ -429,26 +247,47 @@ mpegts_parse_pad_removed (GstElement * element, GstPad * pad) static GstPad * mpegts_parse_request_new_pad (GstElement * element, GstPadTemplate * template, - const gchar * unused, const GstCaps * caps) + const gchar * padname, const GstCaps * caps) { MpegTSParse2 *parse; - gchar *name; + MpegTSParsePad *tspad; + MpegTSParseProgram *parseprogram; GstPad *pad; + gint program_num = -1; + gchar *stream_id; g_return_val_if_fail (template != NULL, NULL); g_return_val_if_fail (GST_IS_MPEGTS_PARSE (element), NULL); + g_return_val_if_fail (padname != NULL, NULL); + + sscanf (padname + 8, "%d", &program_num); + + GST_DEBUG_OBJECT (element, "padname:%s, program:%d", padname, program_num); parse = GST_MPEGTS_PARSE (element); - GST_OBJECT_LOCK (element); - name = g_strdup_printf ("src_%u", parse->req_pads++); - GST_OBJECT_UNLOCK (element); + tspad = mpegts_parse_create_tspad (parse, padname); + tspad->program_number = program_num; + + /* Find if the program is already active */ + parseprogram = + (MpegTSParseProgram *) mpegts_base_get_program (GST_MPEGTS_BASE (parse), + program_num); + if (parseprogram) { + tspad->program = parseprogram; + parseprogram->tspad = tspad; + } + + pad = tspad->pad; + parse->srcpads = g_list_append (parse->srcpads, pad); - pad = mpegts_parse_create_tspad (parse, name)->pad; gst_pad_set_active (pad, TRUE); - gst_pad_push_event (pad, gst_event_new_stream_start ()); + + stream_id = gst_pad_create_stream_id (pad, element, padname + 8); + gst_pad_push_event (pad, gst_event_new_stream_start (stream_id)); + g_free (stream_id); + gst_element_add_pad (element, pad); - g_free (name); return pad; } @@ -456,8 +295,6 @@ mpegts_parse_request_new_pad (GstElement * element, GstPadTemplate * template, static void mpegts_parse_release_pad (GstElement * element, GstPad * pad) { - g_return_if_fail (GST_IS_MPEGTS_PARSE (element)); - gst_pad_set_active (pad, FALSE); /* we do the cleanup in GstElement::pad-removed */ gst_element_remove_pad (element, pad); @@ -465,9 +302,9 @@ mpegts_parse_release_pad (GstElement * element, GstPad * pad) static GstFlowReturn mpegts_parse_tspad_push_section (MpegTSParse2 * parse, MpegTSParsePad * tspad, - MpegTSPacketizerSection * section, GstBuffer * buffer) + MpegTSPacketizerSection * section, MpegTSPacketizerPacket * packet) { - GstFlowReturn ret = GST_FLOW_NOT_LINKED; + GstFlowReturn ret = GST_FLOW_OK; gboolean to_push = TRUE; if (tspad->program_number != -1) { @@ -483,18 +320,19 @@ mpegts_parse_tspad_push_section (MpegTSParse2 * parse, MpegTSParsePad * tspad, /* there's a program filter on the pad but the PMT for the program has not * been parsed yet, ignore the pad until we get a PMT */ to_push = FALSE; - ret = GST_FLOW_OK; } } + GST_DEBUG_OBJECT (parse, "pushing section: %d program number: %d table_id: %d", to_push, tspad->program_number, section->table_id); + if (to_push) { - ret = gst_pad_push (tspad->pad, buffer); - } else { - gst_buffer_unref (buffer); - if (gst_pad_is_linked (tspad->pad)) - ret = GST_FLOW_OK; + GstBuffer *buf = + gst_buffer_new_and_alloc (packet->data_end - packet->data_start); + gst_buffer_fill (buf, 0, packet->data_start, + packet->data_end - packet->data_start); + ret = gst_pad_push (tspad->pad, buf); } return ret; @@ -502,36 +340,29 @@ mpegts_parse_tspad_push_section (MpegTSParse2 * parse, MpegTSParsePad * tspad, static GstFlowReturn mpegts_parse_tspad_push (MpegTSParse2 * parse, MpegTSParsePad * tspad, - guint16 pid, GstBuffer * buffer) + MpegTSPacketizerPacket * packet) { - GstFlowReturn ret = GST_FLOW_NOT_LINKED; + GstFlowReturn ret = GST_FLOW_OK; MpegTSBaseStream **pad_pids = NULL; if (tspad->program_number != -1) { if (tspad->program) { MpegTSBaseProgram *bp = (MpegTSBaseProgram *) tspad->program; pad_pids = bp->streams; - if (bp->tags) { - gst_pad_push_event (tspad->pad, gst_event_new_tag ("GstParser", - bp->tags)); - bp->tags = NULL; - } } else { /* there's a program filter on the pad but the PMT for the program has not * been parsed yet, ignore the pad until we get a PMT */ - gst_buffer_unref (buffer); - ret = GST_FLOW_OK; goto out; } } - if (pad_pids == NULL || pad_pids[pid]) { + if (pad_pids == NULL || pad_pids[packet->pid]) { + GstBuffer *buf = + gst_buffer_new_and_alloc (packet->data_end - packet->data_start); + gst_buffer_fill (buf, 0, packet->data_start, + packet->data_end - packet->data_start); /* push if there's no filter or if the pid is in the filter */ - ret = gst_pad_push (tspad->pad, buffer); - } else { - gst_buffer_unref (buffer); - if (gst_pad_is_linked (tspad->pad)) - ret = GST_FLOW_OK; + ret = gst_pad_push (tspad->pad, buf); } out: @@ -556,33 +387,25 @@ mpegts_parse_push (MpegTSBase * base, MpegTSPacketizerPacket * packet, gboolean done = FALSE; GstPad *pad = NULL; MpegTSParsePad *tspad; - guint16 pid; - GstBuffer *buffer; GstFlowReturn ret; GList *srcpads; - if (G_UNLIKELY (parse->need_sync_program_pads)) - mpegts_parse_sync_program_pads (parse); - - pid = packet->pid; - buffer = - gst_buffer_new_allocate (NULL, packet->data_end - packet->data_start, - NULL); - gst_buffer_fill (buffer, 0, packet->data_start, - packet->data_end - packet->data_start); + /* Shortcut: If no request pads exist, just return */ + if (parse->srcpads == NULL) + return GST_FLOW_OK; GST_OBJECT_LOCK (parse); + srcpads = parse->srcpads; + /* clear tspad->pushed on pads */ - g_list_foreach (GST_ELEMENT_CAST (parse)->srcpads, - (GFunc) pad_clear_for_push, parse); - if (GST_ELEMENT_CAST (parse)->srcpads) + g_list_foreach (srcpads, (GFunc) pad_clear_for_push, parse); + if (srcpads) ret = GST_FLOW_NOT_LINKED; else ret = GST_FLOW_OK; /* Get cookie and source pads list */ pads_cookie = GST_ELEMENT_CAST (parse)->pads_cookie; - srcpads = GST_ELEMENT_CAST (parse)->srcpads; if (G_LIKELY (srcpads)) { pad = GST_PAD_CAST (srcpads->data); g_object_ref (pad); @@ -593,15 +416,11 @@ mpegts_parse_push (MpegTSBase * base, MpegTSPacketizerPacket * packet, tspad = gst_pad_get_element_private (pad); if (G_LIKELY (!tspad->pushed)) { - /* ref the buffer as gst_pad_push takes a ref but we want to reuse the - * same buffer for next pushes */ - gst_buffer_ref (buffer); if (section) { tspad->flow_return = - mpegts_parse_tspad_push_section (parse, tspad, section, buffer); + mpegts_parse_tspad_push_section (parse, tspad, section, packet); } else { - tspad->flow_return = - mpegts_parse_tspad_push (parse, tspad, pid, buffer); + tspad->flow_return = mpegts_parse_tspad_push (parse, tspad, packet); } tspad->pushed = TRUE; @@ -625,7 +444,7 @@ mpegts_parse_push (MpegTSBase * base, MpegTSPacketizerPacket * packet, /* resync */ GST_DEBUG ("resync"); pads_cookie = GST_ELEMENT_CAST (parse)->pads_cookie; - srcpads = GST_ELEMENT_CAST (parse)->srcpads; + srcpads = parse->srcpads; } else { GST_DEBUG ("getting next pad"); /* Get next pad */ @@ -641,24 +460,38 @@ mpegts_parse_push (MpegTSBase * base, MpegTSPacketizerPacket * packet, } } - gst_buffer_unref (buffer); - return ret; } +static MpegTSParsePad * +find_pad_for_program (MpegTSParse2 * parse, guint program_number) +{ + GList *tmp; + + for (tmp = parse->srcpads; tmp; tmp = tmp->next) { + MpegTSParsePad *tspad = gst_pad_get_element_private ((GstPad *) tmp->data); + + if (tspad->program_number == program_number) + return tspad; + } + + return NULL; +} + static void mpegts_parse_program_started (MpegTSBase * base, MpegTSBaseProgram * program) { MpegTSParse2 *parse = GST_MPEGTS_PARSE (base); MpegTSParseProgram *parseprogram = (MpegTSParseProgram *) program; - if (parseprogram->selected == 2) { - parse->pads_to_add = - g_list_append (parse->pads_to_add, - mpegts_parse_activate_program (parse, parseprogram)); - parseprogram->selected = 1; - parse->need_sync_program_pads = TRUE; - } + MpegTSParsePad *tspad; + + /* If we have a request pad for that program, activate it */ + tspad = find_pad_for_program (parse, program->program_number); + if (tspad) { + tspad->program = parseprogram; + parseprogram->tspad = tspad; + } } static void @@ -666,12 +499,14 @@ mpegts_parse_program_stopped (MpegTSBase * base, MpegTSBaseProgram * program) { MpegTSParse2 *parse = GST_MPEGTS_PARSE (base); MpegTSParseProgram *parseprogram = (MpegTSParseProgram *) program; + MpegTSParsePad *tspad; + + /* If we have a request pad for that program, activate it */ + tspad = find_pad_for_program (parse, program->program_number); - if (parseprogram->active) { - parse->pads_to_remove = - g_list_append (parse->pads_to_remove, - mpegts_parse_deactivate_program (parse, parseprogram)); - parse->need_sync_program_pads = TRUE; + if (tspad) { + tspad->program = NULL; + parseprogram->tspad = NULL; } } diff --git a/gst/mpegtsdemux/mpegtsparse.h b/gst/mpegtsdemux/mpegtsparse.h index ef722dd5..c7d1c5e4 100644 --- a/gst/mpegtsdemux/mpegtsparse.h +++ b/gst/mpegtsdemux/mpegtsparse.h @@ -48,14 +48,10 @@ typedef struct _MpegTSParse2Class MpegTSParse2Class; struct _MpegTSParse2 { MpegTSBase parent; - /* the following vars must be protected with the OBJECT_LOCK as they can be - * accessed from the application thread and the streaming thread */ - gchar *program_numbers; - GList *pads_to_add; - GList *pads_to_remove; - guint req_pads; + /* Always present source pad */ + GstPad *srcpad; - gboolean need_sync_program_pads; + GList *srcpads; }; struct _MpegTSParse2Class { diff --git a/gst/mpegtsdemux/tsdemux.c b/gst/mpegtsdemux/tsdemux.c index f3ddd4e7..c420f0db 100644 --- a/gst/mpegtsdemux/tsdemux.c +++ b/gst/mpegtsdemux/tsdemux.c @@ -172,7 +172,7 @@ struct _TSDemuxStream "stream-format = (string) adts; " \ "audio/mpeg, " \ "mpegversion = (int) 4, " \ - "stream-format = (string) latm; " \ + "stream-format = (string) loas; " \ "audio/x-lpcm, " \ "width = (int) { 16, 20, 24 }, " \ "rate = (int) { 48000, 96000 }, " \ @@ -810,7 +810,7 @@ create_pad_for_stream (MpegTSBase * base, MpegTSBaseStream * bstream, name = g_strdup_printf ("audio_%04x", bstream->pid); caps = gst_caps_new_simple ("audio/mpeg", "mpegversion", G_TYPE_INT, 4, - "stream-format", G_TYPE_STRING, "latm", NULL); + "stream-format", G_TYPE_STRING, "loas", NULL); break; case ST_VIDEO_MPEG4: template = gst_static_pad_template_get (&video_template); @@ -959,12 +959,18 @@ create_pad_for_stream (MpegTSBase * base, MpegTSBaseStream * bstream, break; } if (template && name && caps) { + gchar *stream_id; + GST_LOG ("stream:%p creating pad with name %s and caps %s", stream, name, gst_caps_to_string (caps)); pad = gst_pad_new_from_template (template, name); gst_pad_set_active (pad, TRUE); gst_pad_use_fixed_caps (pad); - gst_pad_push_event (pad, gst_event_new_stream_start ()); + stream_id = + gst_pad_create_stream_id_printf (pad, GST_ELEMENT_CAST (base), "%08x", + bstream->pid); + gst_pad_push_event (pad, gst_event_new_stream_start (stream_id)); + g_free (stream_id); gst_pad_set_caps (pad, caps); gst_pad_set_query_function (pad, gst_ts_demux_srcpad_query); gst_pad_set_event_function (pad, gst_ts_demux_srcpad_event); @@ -1301,6 +1307,15 @@ gst_ts_demux_parse_pes_header (GstTSDemux * demux, TSDemuxStream * stream, GST_DEBUG ("Moving data forward by %d bytes (packet_size:%d, have:%d)", header.header_size, header.packet_length, length); stream->expected_size = header.packet_length; + if (stream->expected_size) { + if (G_LIKELY (stream->expected_size > header.header_size)) { + stream->expected_size -= header.header_size; + } else { + /* next packet will have to complete this one */ + GST_ERROR ("invalid header and packet size combination"); + stream->expected_size = 0; + } + } data += header.header_size; length -= header.header_size; @@ -1470,8 +1485,7 @@ push_new_segment: if (stream->taglist) { GST_DEBUG_OBJECT (stream->pad, "Sending tags %" GST_PTR_FORMAT, stream->taglist); - gst_pad_push_event (stream->pad, gst_event_new_tag ("GstDemuxer", - stream->taglist)); + gst_pad_push_event (stream->pad, gst_event_new_tag (stream->taglist)); stream->taglist = NULL; } @@ -1582,8 +1596,10 @@ gst_ts_demux_handle_packet (GstTSDemux * demux, TSDemuxStream * stream, GST_DEBUG ("current_size:%d, expected_size:%d", stream->current_size, stream->expected_size); /* Finally check if the data we queued completes a packet */ - if (stream->expected_size && stream->current_size == stream->expected_size) + if (stream->expected_size && stream->current_size == stream->expected_size) { + GST_LOG ("pushing complete packet"); res = gst_ts_demux_push_pending_data (demux, stream); + } } return res; diff --git a/gst/mpegtsmux/Makefile.am b/gst/mpegtsmux/Makefile.am index a4a98019..6a218063 100644 --- a/gst/mpegtsmux/Makefile.am +++ b/gst/mpegtsmux/Makefile.am @@ -4,8 +4,8 @@ SUBDIRS = tsmux libgstmpegtsmux_la_SOURCES = \ mpegtsmux.c \ - mpegtsmux_h264.c \ - mpegtsmux_aac.c + mpegtsmux_aac.c \ + mpegtsmux_ttxt.c libgstmpegtsmux_la_CFLAGS = $(GST_PLUGINS_BASE_CFLAGS) $(GST_BASE_CFLAGS) $(GST_CFLAGS) libgstmpegtsmux_la_LIBADD = $(top_builddir)/gst/mpegtsmux/tsmux/libtsmux.la \ @@ -15,5 +15,5 @@ libgstmpegtsmux_la_LIBTOOLFLAGS = --tag=disable-static noinst_HEADERS = \ mpegtsmux.h \ - mpegtsmux_h264.h \ - mpegtsmux_aac.h + mpegtsmux_aac.h \ + mpegtsmux_ttxt.h diff --git a/gst/mpegtsmux/Makefile.in b/gst/mpegtsmux/Makefile.in index c008b15c..fa7914b7 100644 --- a/gst/mpegtsmux/Makefile.in +++ b/gst/mpegtsmux/Makefile.in @@ -1,4 +1,4 @@ -# Makefile.in generated by automake 1.11.5 from Makefile.am. +# Makefile.in generated by automake 1.11.6 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, @@ -132,8 +132,8 @@ libgstmpegtsmux_la_DEPENDENCIES = \ $(am__DEPENDENCIES_1) $(am__DEPENDENCIES_1) \ $(am__DEPENDENCIES_1) am_libgstmpegtsmux_la_OBJECTS = libgstmpegtsmux_la-mpegtsmux.lo \ - libgstmpegtsmux_la-mpegtsmux_h264.lo \ - libgstmpegtsmux_la-mpegtsmux_aac.lo + libgstmpegtsmux_la-mpegtsmux_aac.lo \ + libgstmpegtsmux_la-mpegtsmux_ttxt.lo libgstmpegtsmux_la_OBJECTS = $(am_libgstmpegtsmux_la_OBJECTS) AM_V_lt = $(am__v_lt_@AM_V@) am__v_lt_ = $(am__v_lt_@AM_DEFAULT_V@) @@ -279,11 +279,10 @@ DIRECT3D_LIBS = @DIRECT3D_LIBS@ DIRECTDRAW_LIBS = @DIRECTDRAW_LIBS@ DIRECTFB_CFLAGS = @DIRECTFB_CFLAGS@ DIRECTFB_LIBS = @DIRECTFB_LIBS@ +DIRECTSHOW_LIBS = @DIRECTSHOW_LIBS@ DIRECTSOUND_LIBS = @DIRECTSOUND_LIBS@ DIRECTX_CFLAGS = @DIRECTX_CFLAGS@ DIRECTX_LDFLAGS = @DIRECTX_LDFLAGS@ -DIVXDEC_LIBS = @DIVXDEC_LIBS@ -DIVXENC_LIBS = @DIVXENC_LIBS@ DLLTOOL = @DLLTOOL@ DSYMUTIL = @DSYMUTIL@ DTS_LIBS = @DTS_LIBS@ @@ -318,7 +317,9 @@ GIO_LIBS = @GIO_LIBS@ GLIB_CFLAGS = @GLIB_CFLAGS@ GLIB_COMPILE_SCHEMAS = @GLIB_COMPILE_SCHEMAS@ GLIB_EXTRA_CFLAGS = @GLIB_EXTRA_CFLAGS@ +GLIB_GENMARSHAL = @GLIB_GENMARSHAL@ GLIB_LIBS = @GLIB_LIBS@ +GLIB_MKENUMS = @GLIB_MKENUMS@ GLIB_PREFIX = @GLIB_PREFIX@ GLIB_REQ = @GLIB_REQ@ GME_LIBS = @GME_LIBS@ @@ -394,13 +395,14 @@ HAVE_CXX = @HAVE_CXX@ HAVE_DIRECT3D = @HAVE_DIRECT3D@ HAVE_DIRECT3D9 = @HAVE_DIRECT3D9@ HAVE_DIRECTDRAW = @HAVE_DIRECTDRAW@ +HAVE_DIRECTSHOW = @HAVE_DIRECTSHOW@ HAVE_DIRECTSOUND = @HAVE_DIRECTSOUND@ HAVE_DTS = @HAVE_DTS@ HAVE_FAAC = @HAVE_FAAC@ HAVE_FAAD = @HAVE_FAAD@ HAVE_FLITE = @HAVE_FLITE@ HAVE_GSM = @HAVE_GSM@ -HAVE_JP2K = @HAVE_JP2K@ +HAVE_JASPER = @HAVE_JASPER@ HAVE_NAS = @HAVE_NAS@ HAVE_VPX = @HAVE_VPX@ HAVE_WILDMIDI = @HAVE_WILDMIDI@ @@ -414,7 +416,7 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ INTLLIBS = @INTLLIBS@ INTL_MACOSX_LIBS = @INTL_MACOSX_LIBS@ -JP2K_LIBS = @JP2K_LIBS@ +JASPER_LIBS = @JASPER_LIBS@ KATE_CFLAGS = @KATE_CFLAGS@ KATE_LIBS = @KATE_LIBS@ LD = @LD@ @@ -450,6 +452,8 @@ MODPLUG_CFLAGS = @MODPLUG_CFLAGS@ MODPLUG_LIBS = @MODPLUG_LIBS@ MPEG2ENC_CFLAGS = @MPEG2ENC_CFLAGS@ MPEG2ENC_LIBS = @MPEG2ENC_LIBS@ +MPG123_CFLAGS = @MPG123_CFLAGS@ +MPG123_LIBS = @MPG123_LIBS@ MPLEX_CFLAGS = @MPLEX_CFLAGS@ MPLEX_LDFLAGS = @MPLEX_LDFLAGS@ MPLEX_LIBS = @MPLEX_LIBS@ @@ -644,8 +648,8 @@ plugin_LTLIBRARIES = libgstmpegtsmux.la SUBDIRS = tsmux libgstmpegtsmux_la_SOURCES = \ mpegtsmux.c \ - mpegtsmux_h264.c \ - mpegtsmux_aac.c + mpegtsmux_aac.c \ + mpegtsmux_ttxt.c libgstmpegtsmux_la_CFLAGS = $(GST_PLUGINS_BASE_CFLAGS) $(GST_BASE_CFLAGS) $(GST_CFLAGS) libgstmpegtsmux_la_LIBADD = $(top_builddir)/gst/mpegtsmux/tsmux/libtsmux.la \ @@ -655,8 +659,8 @@ libgstmpegtsmux_la_LDFLAGS = $(GST_PLUGIN_LDFLAGS) libgstmpegtsmux_la_LIBTOOLFLAGS = --tag=disable-static noinst_HEADERS = \ mpegtsmux.h \ - mpegtsmux_h264.h \ - mpegtsmux_aac.h + mpegtsmux_aac.h \ + mpegtsmux_ttxt.h all: all-recursive @@ -735,7 +739,7 @@ distclean-compile: @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libgstmpegtsmux_la-mpegtsmux.Plo@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libgstmpegtsmux_la-mpegtsmux_aac.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libgstmpegtsmux_la-mpegtsmux_h264.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libgstmpegtsmux_la-mpegtsmux_ttxt.Plo@am__quote@ .c.o: @am__fastdepCC_TRUE@ $(AM_V_CC)$(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $< @@ -765,13 +769,6 @@ libgstmpegtsmux_la-mpegtsmux.lo: mpegtsmux.c @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(libgstmpegtsmux_la_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libgstmpegtsmux_la_CFLAGS) $(CFLAGS) -c -o libgstmpegtsmux_la-mpegtsmux.lo `test -f 'mpegtsmux.c' || echo '$(srcdir)/'`mpegtsmux.c -libgstmpegtsmux_la-mpegtsmux_h264.lo: mpegtsmux_h264.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(libgstmpegtsmux_la_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libgstmpegtsmux_la_CFLAGS) $(CFLAGS) -MT libgstmpegtsmux_la-mpegtsmux_h264.lo -MD -MP -MF $(DEPDIR)/libgstmpegtsmux_la-mpegtsmux_h264.Tpo -c -o libgstmpegtsmux_la-mpegtsmux_h264.lo `test -f 'mpegtsmux_h264.c' || echo '$(srcdir)/'`mpegtsmux_h264.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libgstmpegtsmux_la-mpegtsmux_h264.Tpo $(DEPDIR)/libgstmpegtsmux_la-mpegtsmux_h264.Plo -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='mpegtsmux_h264.c' object='libgstmpegtsmux_la-mpegtsmux_h264.lo' libtool=yes @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(libgstmpegtsmux_la_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libgstmpegtsmux_la_CFLAGS) $(CFLAGS) -c -o libgstmpegtsmux_la-mpegtsmux_h264.lo `test -f 'mpegtsmux_h264.c' || echo '$(srcdir)/'`mpegtsmux_h264.c - libgstmpegtsmux_la-mpegtsmux_aac.lo: mpegtsmux_aac.c @am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(libgstmpegtsmux_la_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libgstmpegtsmux_la_CFLAGS) $(CFLAGS) -MT libgstmpegtsmux_la-mpegtsmux_aac.lo -MD -MP -MF $(DEPDIR)/libgstmpegtsmux_la-mpegtsmux_aac.Tpo -c -o libgstmpegtsmux_la-mpegtsmux_aac.lo `test -f 'mpegtsmux_aac.c' || echo '$(srcdir)/'`mpegtsmux_aac.c @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libgstmpegtsmux_la-mpegtsmux_aac.Tpo $(DEPDIR)/libgstmpegtsmux_la-mpegtsmux_aac.Plo @@ -779,6 +776,13 @@ libgstmpegtsmux_la-mpegtsmux_aac.lo: mpegtsmux_aac.c @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(libgstmpegtsmux_la_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libgstmpegtsmux_la_CFLAGS) $(CFLAGS) -c -o libgstmpegtsmux_la-mpegtsmux_aac.lo `test -f 'mpegtsmux_aac.c' || echo '$(srcdir)/'`mpegtsmux_aac.c +libgstmpegtsmux_la-mpegtsmux_ttxt.lo: mpegtsmux_ttxt.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(libgstmpegtsmux_la_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libgstmpegtsmux_la_CFLAGS) $(CFLAGS) -MT libgstmpegtsmux_la-mpegtsmux_ttxt.lo -MD -MP -MF $(DEPDIR)/libgstmpegtsmux_la-mpegtsmux_ttxt.Tpo -c -o libgstmpegtsmux_la-mpegtsmux_ttxt.lo `test -f 'mpegtsmux_ttxt.c' || echo '$(srcdir)/'`mpegtsmux_ttxt.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libgstmpegtsmux_la-mpegtsmux_ttxt.Tpo $(DEPDIR)/libgstmpegtsmux_la-mpegtsmux_ttxt.Plo +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='mpegtsmux_ttxt.c' object='libgstmpegtsmux_la-mpegtsmux_ttxt.lo' libtool=yes @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(libgstmpegtsmux_la_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libgstmpegtsmux_la_CFLAGS) $(CFLAGS) -c -o libgstmpegtsmux_la-mpegtsmux_ttxt.lo `test -f 'mpegtsmux_ttxt.c' || echo '$(srcdir)/'`mpegtsmux_ttxt.c + mostlyclean-libtool: -rm -f *.lo diff --git a/gst/mpegtsmux/mpegtsmux.c b/gst/mpegtsmux/mpegtsmux.c index a696408d..957e2975 100644 --- a/gst/mpegtsmux/mpegtsmux.c +++ b/gst/mpegtsmux/mpegtsmux.c @@ -96,8 +96,8 @@ #include "mpegtsmux.h" -#include "mpegtsmux_h264.h" #include "mpegtsmux_aac.h" +#include "mpegtsmux_ttxt.h" GST_DEBUG_CATEGORY (mpegtsmux_debug); #define GST_CAT_DEFAULT mpegtsmux_debug @@ -108,9 +108,13 @@ enum ARG_PROG_MAP, ARG_M2TS_MODE, ARG_PAT_INTERVAL, - ARG_PMT_INTERVAL + ARG_PMT_INTERVAL, + ARG_ALIGNMENT }; +#define MPEGTSMUX_DEFAULT_ALIGNMENT -1 +#define MPEGTSMUX_DEFAULT_M2TS FALSE + static GstStaticPadTemplate mpegtsmux_sink_factory = GST_STATIC_PAD_TEMPLATE ("sink_%d", GST_PAD_SINK, @@ -130,7 +134,8 @@ static GstStaticPadTemplate mpegtsmux_sink_factory = "channels = (int) [ 1, 8 ], " "dynamic_range = (int) [ 0, 255 ], " "emphasis = (boolean) { FALSE, TRUE }, " - "mute = (boolean) { FALSE, TRUE }; " "audio/x-ac3;" "audio/x-dts")); + "mute = (boolean) { FALSE, TRUE }; " "audio/x-ac3;" "audio/x-dts;" + "subpicture/x-dvb;" "private/teletext")); static GstStaticPadTemplate mpegtsmux_src_factory = GST_STATIC_PAD_TEMPLATE ("src", @@ -147,50 +152,86 @@ static void gst_mpegtsmux_get_property (GObject * object, guint prop_id, static void mpegtsmux_reset (MpegTsMux * mux, gboolean alloc); static void mpegtsmux_dispose (GObject * object); -static gboolean new_packet_cb (guint8 * data, guint len, void *user_data, +static void alloc_packet_cb (GstBuffer ** _buf, void *user_data); +static gboolean new_packet_cb (GstBuffer * buf, void *user_data, gint64 new_pcr); static void release_buffer_cb (guint8 * data, void *user_data); static GstFlowReturn mpegtsmux_collect_packet (MpegTsMux * mux, - guint8 * data, guint len); + GstBuffer * buf); +static GstFlowReturn mpegtsmux_push_packets (MpegTsMux * mux, gboolean force); +static gboolean new_packet_m2ts (MpegTsMux * mux, GstBuffer * buf, + gint64 new_pcr); static void mpegtsdemux_prepare_srcpad (MpegTsMux * mux); -static GstFlowReturn mpegtsmux_collected (GstCollectPads2 * pads, - MpegTsMux * mux); -static gboolean mpegtsmux_sink_event (GstCollectPads2 * pads, - GstCollectData2 * data, GstEvent * event, gpointer user_data); +GstFlowReturn mpegtsmux_clip_inc_running_time (GstCollectPads * pads, + GstCollectData * cdata, GstBuffer * buf, GstBuffer ** outbuf, + gpointer user_data); +static GstFlowReturn mpegtsmux_collected (GstCollectPads * pads, + GstCollectData * data, GstBuffer * buf, MpegTsMux * mux); + +static gboolean mpegtsmux_sink_event (GstCollectPads * pads, + GstCollectData * data, GstEvent * event, gpointer user_data); static GstPad *mpegtsmux_request_new_pad (GstElement * element, - GstPadTemplate * templ, const gchar * name); + GstPadTemplate * templ, const gchar * name, const GstCaps * caps); static void mpegtsmux_release_pad (GstElement * element, GstPad * pad); static GstStateChangeReturn mpegtsmux_change_state (GstElement * element, GstStateChange transition); static void mpegtsdemux_set_header_on_caps (MpegTsMux * mux); -static gboolean mpegtsmux_src_event (GstPad * pad, GstEvent * event); +static gboolean mpegtsmux_src_event (GstPad * pad, GstObject * parent, + GstEvent * event); -GST_BOILERPLATE (MpegTsMux, mpegtsmux, GstElement, GST_TYPE_ELEMENT); +#if 0 +static void mpegtsmux_set_index (GstElement * element, GstIndex * index); +static GstIndex *mpegtsmux_get_index (GstElement * element); -static void -mpegtsmux_base_init (gpointer g_class) +static GstFormat pts_format; +static GstFormat spn_format; +#endif + +typedef struct { + GstMapInfo map_info; + GstBuffer *buffer; +} StreamData; - GstElementClass *element_class = GST_ELEMENT_CLASS (g_class); +G_DEFINE_TYPE (MpegTsMux, mpegtsmux, GST_TYPE_ELEMENT) - gst_element_class_add_static_pad_template (element_class, - &mpegtsmux_sink_factory); - gst_element_class_add_static_pad_template (element_class, - &mpegtsmux_src_factory); + static StreamData *stream_data_new (GstBuffer * buffer) +{ + StreamData *res = g_new (StreamData, 1); + res->buffer = buffer; + gst_buffer_map (buffer, &(res->map_info), GST_MAP_READ); + return res; +} - gst_element_class_set_details_simple (element_class, - "MPEG Transport Stream Muxer", "Codec/Muxer", - "Multiplexes media streams into an MPEG Transport Stream", - "Fluendo <contact@fluendo.com>"); +static void +stream_data_free (StreamData * data) +{ + if (data) { + gst_buffer_unmap (data->buffer, &data->map_info); + gst_buffer_unref (data->buffer); + g_free (data); + } } +#define parent_class mpegtsmux_parent_class + static void mpegtsmux_class_init (MpegTsMuxClass * klass) { GstElementClass *gstelement_class = GST_ELEMENT_CLASS (klass); GObjectClass *gobject_class = G_OBJECT_CLASS (klass); + gst_element_class_add_pad_template (gstelement_class, + gst_static_pad_template_get (&mpegtsmux_sink_factory)); + gst_element_class_add_pad_template (gstelement_class, + gst_static_pad_template_get (&mpegtsmux_src_factory)); + + gst_element_class_set_details_simple (gstelement_class, + "MPEG Transport Stream Muxer", "Codec/Muxer", + "Multiplexes media streams into an MPEG Transport Stream", + "Fluendo <contact@fluendo.com>"); + gobject_class->set_property = GST_DEBUG_FUNCPTR (gst_mpegtsmux_set_property); gobject_class->get_property = GST_DEBUG_FUNCPTR (gst_mpegtsmux_get_property); gobject_class->dispose = mpegtsmux_dispose; @@ -199,6 +240,11 @@ mpegtsmux_class_init (MpegTsMuxClass * klass) gstelement_class->release_pad = mpegtsmux_release_pad; gstelement_class->change_state = mpegtsmux_change_state; +#if 0 + gstelement_class->set_index = GST_DEBUG_FUNCPTR (mpegtsmux_set_index); + gstelement_class->get_index = GST_DEBUG_FUNCPTR (mpegtsmux_get_index); +#endif + g_object_class_install_property (G_OBJECT_CLASS (klass), ARG_PROG_MAP, g_param_spec_boxed ("prog-map", "Program map", "A GstStructure specifies the mapping from elementary streams to programs", @@ -207,8 +253,8 @@ mpegtsmux_class_init (MpegTsMuxClass * klass) g_object_class_install_property (G_OBJECT_CLASS (klass), ARG_M2TS_MODE, g_param_spec_boolean ("m2ts-mode", "M2TS(192 bytes) Mode", "Set to TRUE to output Blu-Ray disc format with 192 byte packets. " - "FALSE for standard TS format with 188 byte packets.", FALSE, - G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS)); + "FALSE for standard TS format with 188 byte packets.", + MPEGTSMUX_DEFAULT_M2TS, G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS)); g_object_class_install_property (G_OBJECT_CLASS (klass), ARG_PAT_INTERVAL, g_param_spec_uint ("pat-interval", "PAT interval", @@ -221,31 +267,48 @@ mpegtsmux_class_init (MpegTsMuxClass * klass) "Set the interval (in ticks of the 90kHz clock) for writing out the PMT table", 1, G_MAXUINT, TSMUX_DEFAULT_PMT_INTERVAL, G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS)); + + g_object_class_install_property (G_OBJECT_CLASS (klass), ARG_ALIGNMENT, + g_param_spec_int ("alignment", "packet alignment", + "Number of packets per buffer (padded with dummy packets on EOS) " + "(-1 = auto, 0 = all available packets)", + -1, G_MAXINT, MPEGTSMUX_DEFAULT_ALIGNMENT, + G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS)); } static void -mpegtsmux_init (MpegTsMux * mux, MpegTsMuxClass * g_class) +mpegtsmux_init (MpegTsMux * mux) { mux->srcpad = gst_pad_new_from_static_template (&mpegtsmux_src_factory, "src"); gst_pad_use_fixed_caps (mux->srcpad); - gst_pad_set_event_function (mux->srcpad, mpegtsmux_src_event); + gst_pad_set_event_function (mux->srcpad, + GST_DEBUG_FUNCPTR (mpegtsmux_src_event)); gst_element_add_pad (GST_ELEMENT (mux), mux->srcpad); - mux->collect = gst_collect_pads2_new (); - gst_collect_pads2_set_function (mux->collect, - (GstCollectPads2Function) GST_DEBUG_FUNCPTR (mpegtsmux_collected), mux); - gst_collect_pads2_set_event_function (mux->collect, - (GstCollectPads2EventFunction) GST_DEBUG_FUNCPTR (mpegtsmux_sink_event), + mux->collect = gst_collect_pads_new (); + gst_collect_pads_set_buffer_function (mux->collect, + (GstCollectPadsBufferFunction) GST_DEBUG_FUNCPTR (mpegtsmux_collected), + mux); + + gst_collect_pads_set_event_function (mux->collect, + (GstCollectPadsEventFunction) GST_DEBUG_FUNCPTR (mpegtsmux_sink_event), mux); + gst_collect_pads_set_clip_function (mux->collect, (GstCollectPadsClipFunction) + GST_DEBUG_FUNCPTR (mpegtsmux_clip_inc_running_time), mux); + + mux->tsmux = tsmux_new (); + tsmux_set_write_func (mux->tsmux, new_packet_cb, mux); mux->adapter = gst_adapter_new (); + mux->out_adapter = gst_adapter_new (); /* properties */ - mux->m2ts_mode = FALSE; + mux->m2ts_mode = MPEGTSMUX_DEFAULT_M2TS; mux->pat_interval = TSMUX_DEFAULT_PAT_INTERVAL; mux->pmt_interval = TSMUX_DEFAULT_PMT_INTERVAL; mux->prog_map = NULL; + mux->alignment = MPEGTSMUX_DEFAULT_ALIGNMENT; /* initial state */ mpegtsmux_reset (mux, TRUE); @@ -255,10 +318,13 @@ static void mpegtsmux_pad_reset (MpegTsPadData * pad_data) { pad_data->pid = 0; - pad_data->last_ts = GST_CLOCK_TIME_NONE; - pad_data->cur_ts = GST_CLOCK_TIME_NONE; + pad_data->last_pts = GST_CLOCK_TIME_NONE; + pad_data->last_dts = GST_CLOCK_TIME_NONE; + pad_data->prog_id = -1; +#if 0 pad_data->prog_id = -1; - pad_data->eos = FALSE; + pad_data->element_index_writer_id = -1; +#endif if (pad_data->free_func) pad_data->free_func (pad_data->prepare_data); @@ -266,9 +332,6 @@ mpegtsmux_pad_reset (MpegTsPadData * pad_data) pad_data->prepare_func = NULL; pad_data->free_func = NULL; - if (pad_data->queued_buf) - gst_buffer_replace (&pad_data->queued_buf, NULL); - if (pad_data->codec_data) gst_buffer_replace (&pad_data->codec_data, NULL); @@ -284,7 +347,8 @@ mpegtsmux_reset (MpegTsMux * mux, gboolean alloc) mux->first = TRUE; mux->last_flow_ret = GST_FLOW_OK; - mux->first_pcr = TRUE; + mux->previous_pcr = -1; + mux->pcr_rate_num = mux->pcr_rate_den = 1; mux->last_ts = 0; mux->is_delta = TRUE; @@ -292,6 +356,16 @@ mpegtsmux_reset (MpegTsMux * mux, gboolean alloc) mux->streamheader_sent = FALSE; mux->force_key_unit_event = NULL; mux->pending_key_unit_ts = GST_CLOCK_TIME_NONE; +#if 0 + mux->spn_count = 0; + + if (mux->element_index) { + gst_object_unref (mux->element_index); + mux->element_index = NULL; + } +#endif + gst_adapter_clear (mux->adapter); + gst_adapter_clear (mux->out_adapter); if (mux->tsmux) { tsmux_free (mux->tsmux); @@ -314,14 +388,15 @@ mpegtsmux_reset (MpegTsMux * mux, gboolean alloc) gst_event_replace (&mux->force_key_unit_event, NULL); gst_buffer_replace (&mux->out_buffer, NULL); - GST_COLLECT_PADS2_STREAM_LOCK (mux->collect); + GST_COLLECT_PADS_STREAM_LOCK (mux->collect); for (walk = mux->collect->data; walk != NULL; walk = g_slist_next (walk)) mpegtsmux_pad_reset ((MpegTsPadData *) walk->data); - GST_COLLECT_PADS2_STREAM_UNLOCK (mux->collect); + GST_COLLECT_PADS_STREAM_UNLOCK (mux->collect); if (alloc) { mux->tsmux = tsmux_new (); tsmux_set_write_func (mux->tsmux, new_packet_cb, mux); + tsmux_set_alloc_func (mux->tsmux, alloc_packet_cb, mux); } } @@ -333,10 +408,13 @@ mpegtsmux_dispose (GObject * object) mpegtsmux_reset (mux, FALSE); if (mux->adapter) { - gst_adapter_clear (mux->adapter); g_object_unref (mux->adapter); mux->adapter = NULL; } + if (mux->out_adapter) { + g_object_unref (mux->out_adapter); + mux->out_adapter = NULL; + } if (mux->collect) { gst_object_unref (mux->collect); mux->collect = NULL; @@ -388,6 +466,9 @@ gst_mpegtsmux_set_property (GObject * object, guint prop_id, walk = g_slist_next (walk); } break; + case ARG_ALIGNMENT: + mux->alignment = g_value_get_int (value); + break; default: G_OBJECT_WARN_INVALID_PROPERTY_ID (object, prop_id, pspec); break; @@ -413,17 +494,51 @@ gst_mpegtsmux_get_property (GObject * object, guint prop_id, case ARG_PMT_INTERVAL: g_value_set_uint (value, mux->pmt_interval); break; + case ARG_ALIGNMENT: + g_value_set_int (value, mux->alignment); + break; default: G_OBJECT_WARN_INVALID_PROPERTY_ID (object, prop_id, pspec); break; } } +#if 0 +static void +mpegtsmux_set_index (GstElement * element, GstIndex * index) +{ + MpegTsMux *mux = GST_MPEG_TSMUX (element); + + GST_OBJECT_LOCK (mux); + if (mux->element_index) + gst_object_unref (mux->element_index); + mux->element_index = index ? gst_object_ref (index) : NULL; + GST_OBJECT_UNLOCK (mux); + + GST_DEBUG_OBJECT (mux, "Set index %" GST_PTR_FORMAT, mux->element_index); +} + +static GstIndex * +mpegtsmux_get_index (GstElement * element) +{ + GstIndex *result = NULL; + MpegTsMux *mux = GST_MPEG_TSMUX (element); + + GST_OBJECT_LOCK (mux); + if (mux->element_index) + result = gst_object_ref (mux->element_index); + GST_OBJECT_UNLOCK (mux); + + GST_DEBUG_OBJECT (mux, "Returning index %" GST_PTR_FORMAT, result); + + return result; +} +#endif + static void release_buffer_cb (guint8 * data, void *user_data) { - GstBuffer *buf = (GstBuffer *) user_data; - gst_buffer_unref (buf); + stream_data_free (user_data); } static GstFlowReturn @@ -439,12 +554,12 @@ mpegtsmux_create_stream (MpegTsMux * mux, MpegTsPadData * ts_data) GstBuffer *codec_data = NULL; pad = ts_data->collect.pad; - caps = gst_pad_get_negotiated_caps (pad); + caps = gst_pad_get_current_caps (pad); if (caps == NULL) goto not_negotiated; GST_DEBUG_OBJECT (pad, "Creating stream with PID 0x%04x for caps %" - GST_PTR_FORMAT, caps); + GST_PTR_FORMAT, ts_data->pid, caps); s = gst_caps_get_structure (caps, 0); g_return_val_if_fail (s != NULL, FALSE); @@ -464,16 +579,6 @@ mpegtsmux_create_stream (MpegTsMux * mux, MpegTsPadData * ts_data) st = TSMUX_ST_PS_AUDIO_LPCM; } else if (strcmp (mt, "video/x-h264") == 0) { st = TSMUX_ST_VIDEO_H264; - /* Codec data contains SPS/PPS which need to go in stream for valid ES */ - if (codec_data) { - GST_DEBUG_OBJECT (pad, "we have additional codec data (%d bytes)", - GST_BUFFER_SIZE (codec_data)); - ts_data->codec_data = gst_buffer_ref (codec_data); - ts_data->prepare_func = mpegtsmux_prepare_h264; - ts_data->free_func = mpegtsmux_free_h264; - } else { - ts_data->codec_data = NULL; - } } else if (strcmp (mt, "audio/mpeg") == 0) { gint mpegversion; @@ -492,9 +597,10 @@ mpegtsmux_create_stream (MpegTsMux * mux, MpegTsPadData * ts_data) case 4: { st = TSMUX_ST_AUDIO_AAC; - if (codec_data) { - GST_DEBUG_OBJECT (pad, "we have additional codec data (%d bytes)", - GST_BUFFER_SIZE (codec_data)); + if (codec_data) { /* TODO - Check stream format - codec data should only come with RAW stream */ + GST_DEBUG_OBJECT (pad, + "we have additional codec data (%" G_GSIZE_FORMAT " bytes)", + gst_buffer_get_size (codec_data)); ts_data->codec_data = gst_buffer_ref (codec_data); ts_data->prepare_func = mpegtsmux_prepare_aac; } else { @@ -528,6 +634,12 @@ mpegtsmux_create_stream (MpegTsMux * mux, MpegTsPadData * ts_data) GST_WARNING_OBJECT (pad, "unsupported mpegversion %d", mpegversion); goto not_negotiated; } + } else if (strcmp (mt, "subpicture/x-dvb") == 0) { + st = TSMUX_ST_PS_DVB_SUBPICTURE; + } else if (strcmp (mt, "private/teletext") == 0) { + st = TSMUX_ST_PS_TELETEXT; + /* needs a particularly sized layout */ + ts_data->prepare_func = mpegtsmux_prepare_teletext; } if (st != TSMUX_ST_RESERVED) { @@ -546,6 +658,30 @@ mpegtsmux_create_stream (MpegTsMux * mux, MpegTsPadData * ts_data) ret = GST_FLOW_OK; } +#if 0 + GST_OBJECT_LOCK (mux); + if (mux->element_index) { + gboolean parsed = FALSE; + + if (ts_data->stream->is_video_stream) { + if (gst_structure_get_boolean (s, "parsed", &parsed) && parsed) { + if (ts_data->element_index_writer_id == -1) { + gst_index_get_writer_id (mux->element_index, GST_OBJECT (mux), + &ts_data->element_index_writer_id); + GST_DEBUG_OBJECT (mux, "created GstIndex writer_id = %d for stream", + ts_data->element_index_writer_id); + gst_index_add_format (mux->element_index, + ts_data->element_index_writer_id, pts_format); + gst_index_add_format (mux->element_index, + ts_data->element_index_writer_id, spn_format); + } + } else { + GST_WARNING_OBJECT (pad, "no indexing for (unparsed) stream !"); + } + } + } + GST_OBJECT_UNLOCK (mux); +#endif gst_caps_unref (caps); return ret; @@ -568,7 +704,7 @@ mpegtsmux_create_streams (MpegTsMux * mux) /* Create the streams */ while (walk) { - GstCollectData2 *c_data = (GstCollectData2 *) walk->data; + GstCollectData *c_data = (GstCollectData *) walk->data; MpegTsPadData *ts_data = (MpegTsPadData *) walk->data; gchar *name = NULL; @@ -630,90 +766,16 @@ no_stream: } } -static MpegTsPadData * -mpegtsmux_choose_best_stream (MpegTsMux * mux) -{ - MpegTsPadData *best = NULL; - GSList *walk; - - for (walk = mux->collect->data; walk != NULL; walk = g_slist_next (walk)) { - GstCollectData2 *c_data = (GstCollectData2 *) walk->data; - MpegTsPadData *ts_data = (MpegTsPadData *) walk->data; - - if (ts_data->eos == FALSE) { - if (ts_data->queued_buf == NULL) { - GstBuffer *buf; - - ts_data->queued_buf = buf = - gst_collect_pads2_pop (mux->collect, c_data); - - if (buf != NULL) { - if (ts_data->prepare_func) { - buf = ts_data->prepare_func (buf, ts_data, mux); - if (buf) { /* Take the prepared buffer instead */ - gst_buffer_unref (ts_data->queued_buf); - ts_data->queued_buf = buf; - } else { /* If data preparation returned NULL, use unprepared one */ - buf = ts_data->queued_buf; - } - } - if (GST_BUFFER_TIMESTAMP (buf) != GST_CLOCK_TIME_NONE) { - /* Ignore timestamps that go backward for now. FIXME: Handle all - * incoming PTS */ - if (ts_data->last_ts == GST_CLOCK_TIME_NONE || - ts_data->last_ts < GST_BUFFER_TIMESTAMP (buf)) { - ts_data->cur_ts = ts_data->last_ts = - gst_segment_to_running_time (&c_data->segment, - GST_FORMAT_TIME, GST_BUFFER_TIMESTAMP (buf)); - } else { - GST_DEBUG_OBJECT (mux, "Ignoring PTS that has gone backward"); - } - } else - ts_data->cur_ts = GST_CLOCK_TIME_NONE; - - GST_DEBUG_OBJECT (mux, "Pulled buffer with ts %" GST_TIME_FORMAT - " (uncorrected ts %" GST_TIME_FORMAT " %" G_GUINT64_FORMAT - ") for PID 0x%04x", - GST_TIME_ARGS (ts_data->cur_ts), - GST_TIME_ARGS (GST_BUFFER_TIMESTAMP (buf)), - GST_BUFFER_TIMESTAMP (buf), ts_data->pid); - - /* Choose a stream we've never seen a timestamp for to ensure - * we push enough buffers from it to reach a timestamp */ - if (ts_data->last_ts == GST_CLOCK_TIME_NONE) { - best = ts_data; - } - } else { - ts_data->eos = TRUE; - continue; - } - } - - /* If we don't yet have a best pad, take this one, otherwise take - * whichever has the oldest timestamp */ - if (best != NULL) { - if (ts_data->last_ts != GST_CLOCK_TIME_NONE && - best->last_ts != GST_CLOCK_TIME_NONE && - ts_data->last_ts < best->last_ts) { - best = ts_data; - } - } else { - best = ts_data; - } - } - } - - return best; -} -#define COLLECT_DATA_PAD(collect_data) (((GstCollectData2 *)(collect_data))->pad) +#define COLLECT_DATA_PAD(collect_data) (((GstCollectData *)(collect_data))->pad) static gboolean -mpegtsmux_sink_event (GstCollectPads2 * pads, GstCollectData2 * data, +mpegtsmux_sink_event (GstCollectPads * pads, GstCollectData * data, GstEvent * event, gpointer user_data) { MpegTsMux *mux = GST_MPEG_TSMUX (user_data); gboolean res = FALSE; + gboolean forward = TRUE; GstPad *pad; pad = data->pad; @@ -729,6 +791,7 @@ mpegtsmux_sink_event (GstCollectPads2 * pads, GstCollectData2 * data, goto out; res = TRUE; + forward = FALSE; gst_video_event_parse_downstream_force_key_unit (event, ×tamp, &stream_time, &running_time, &all_headers, &count); @@ -755,14 +818,16 @@ mpegtsmux_sink_event (GstCollectPads2 * pads, GstCollectData2 * data, } out: - if (res) + if (!forward) gst_event_unref (event); + else + res = gst_collect_pads_event_default (pads, data, event, FALSE); return res; } static gboolean -mpegtsmux_src_event (GstPad * pad, GstEvent * event) +mpegtsmux_src_event (GstPad * pad, GstObject * parent, GstEvent * event) { MpegTsMux *mux = GST_MPEG_TSMUX (gst_pad_get_parent (pad)); gboolean res = TRUE, forward = TRUE; @@ -773,6 +838,7 @@ mpegtsmux_src_event (GstPad * pad, GstEvent * event) GstIterator *iter; GstIteratorResult iter_ret; GstPad *sinkpad; + GValue sinkpad_value = G_VALUE_INIT; GstClockTime running_time; gboolean all_headers, done; guint count; @@ -800,7 +866,8 @@ mpegtsmux_src_event (GstPad * pad, GstEvent * event) done = FALSE; while (!done) { gboolean res = FALSE, tmp; - iter_ret = gst_iterator_next (iter, (gpointer *) & sinkpad); + iter_ret = gst_iterator_next (iter, &sinkpad_value); + sinkpad = g_value_get_object (&sinkpad_value); switch (iter_ret) { case GST_ITERATOR_DONE: @@ -813,7 +880,6 @@ mpegtsmux_src_event (GstPad * pad, GstEvent * event) GST_INFO_OBJECT (mux, "result %d", tmp); /* succeed if at least one pad succeeds */ res |= tmp; - gst_object_unref (sinkpad); break; case GST_ITERATOR_ERROR: done = TRUE; @@ -821,7 +887,9 @@ mpegtsmux_src_event (GstPad * pad, GstEvent * event) case GST_ITERATOR_RESYNC: break; } + g_value_reset (&sinkpad_value); } + g_value_unset (&sinkpad_value); gst_iterator_free (iter); break; } @@ -830,7 +898,7 @@ mpegtsmux_src_event (GstPad * pad, GstEvent * event) } if (forward) - res = gst_pad_event_default (pad, event); + res = gst_pad_event_default (pad, parent, event); else gst_event_unref (event); @@ -886,11 +954,89 @@ out: return event; } +GstFlowReturn +mpegtsmux_clip_inc_running_time (GstCollectPads * pads, + GstCollectData * cdata, GstBuffer * buf, GstBuffer ** outbuf, + gpointer user_data) +{ + MpegTsPadData *pad_data = (MpegTsPadData *) cdata; + GstClockTime time; + + *outbuf = buf; + + /* PTS */ + time = GST_BUFFER_TIMESTAMP (buf); + + /* invalid left alone and passed */ + if (G_LIKELY (GST_CLOCK_TIME_IS_VALID (time))) { + time = gst_segment_to_running_time (&cdata->segment, GST_FORMAT_TIME, time); + if (G_UNLIKELY (!GST_CLOCK_TIME_IS_VALID (time))) { + GST_DEBUG_OBJECT (cdata->pad, "clipping buffer on pad outside segment"); + gst_buffer_unref (buf); + *outbuf = NULL; + } else { + GST_LOG_OBJECT (cdata->pad, "buffer pts %" GST_TIME_FORMAT " -> %" + GST_TIME_FORMAT " running time", + GST_TIME_ARGS (GST_BUFFER_TIMESTAMP (buf)), GST_TIME_ARGS (time)); + if (GST_CLOCK_TIME_IS_VALID (pad_data->last_pts) && + time < pad_data->last_pts) { + /* FIXME DTS/PTS mess again; + * probably needs a whole lot more subtle handling (cf qtmux) */ + GST_DEBUG_OBJECT (cdata->pad, "ignoring PTS going backward"); + time = pad_data->last_pts; + } else { + pad_data->last_pts = time; + } + *outbuf = gst_buffer_make_writable (buf); + GST_BUFFER_TIMESTAMP (*outbuf) = time; + } + } + + /* DTS */ + time = GST_BUFFER_DTS (buf); + + /* invalid left alone and passed */ + if (G_LIKELY (GST_CLOCK_TIME_IS_VALID (time))) { + time = gst_segment_to_running_time (&cdata->segment, GST_FORMAT_TIME, time); + /* may have to decode out-of-segment, so pass INVALID */ + if (G_UNLIKELY (!GST_CLOCK_TIME_IS_VALID (time))) { + GST_DEBUG_OBJECT (cdata->pad, "running dts outside segment"); + } else { + GST_LOG_OBJECT (cdata->pad, "buffer dts %" GST_TIME_FORMAT " -> %" + GST_TIME_FORMAT " running time", + GST_TIME_ARGS (GST_BUFFER_TIMESTAMP (buf)), GST_TIME_ARGS (time)); + if (GST_CLOCK_TIME_IS_VALID (pad_data->last_dts) && + time < pad_data->last_dts) { + /* FIXME DTS/PTS mess again; + * probably needs a whole lot more subtle handling (cf qtmux) */ + GST_WARNING_OBJECT (cdata->pad, "ignoring DTS going backward"); + time = pad_data->last_dts; + } else { + pad_data->last_dts = time; + } + *outbuf = gst_buffer_make_writable (buf); + GST_BUFFER_TIMESTAMP (*outbuf) = time; + } + } + + buf = *outbuf; + if (pad_data->prepare_func) { + MpegTsMux *mux = (MpegTsMux *) user_data; + + buf = pad_data->prepare_func (buf, pad_data, mux); + if (buf) + gst_buffer_replace (outbuf, buf); + } + + return GST_FLOW_OK; +} + static GstFlowReturn -mpegtsmux_collected (GstCollectPads2 * pads, MpegTsMux * mux) +mpegtsmux_collected (GstCollectPads * pads, GstCollectData * data, + GstBuffer * buf, MpegTsMux * mux) { GstFlowReturn ret = GST_FLOW_OK; - MpegTsPadData *best = NULL; + MpegTsPadData *best = (MpegTsPadData *) data; GST_DEBUG_OBJECT (mux, "Pads collected"); @@ -904,19 +1050,17 @@ mpegtsmux_collected (GstCollectPads2 * pads, MpegTsMux * mux) mux->first = FALSE; } - best = mpegtsmux_choose_best_stream (mux); - if (best != NULL) { TsMuxProgram *prog = best->prog; - GstBuffer *buf = best->queued_buf; gint64 pts = -1; + guint64 dts = -1; gboolean delta = TRUE; + StreamData *stream_data; if (prog == NULL) goto no_program; g_assert (buf != NULL); - best->queued_buf = NULL; if (mux->force_key_unit_event != NULL && best->stream->is_video_stream) { GstEvent *event; @@ -963,24 +1107,58 @@ mpegtsmux_collected (GstCollectPads2 * pads, MpegTsMux * mux) tsmux_program_set_pcr_stream (prog, best->stream); } - if (best->stream->is_video_stream) - delta = GST_BUFFER_FLAG_IS_SET (buf, GST_BUFFER_FLAG_DELTA_UNIT); - GST_DEBUG_OBJECT (mux, "delta: %d", delta); - GST_DEBUG_OBJECT (COLLECT_DATA_PAD (best), "Chose stream for output (PID: 0x%04x)", best->pid); - if (GST_CLOCK_TIME_IS_VALID (best->cur_ts)) { - pts = GSTTIME_TO_MPEGTIME (best->cur_ts); - GST_DEBUG_OBJECT (mux, "Buffer has TS %" GST_TIME_FORMAT " pts %" - G_GINT64_FORMAT, GST_TIME_ARGS (best->cur_ts), pts); + if (GST_CLOCK_TIME_IS_VALID (GST_BUFFER_PTS (buf)) && + GST_CLOCK_TIME_IS_VALID (best->last_pts)) { + pts = GSTTIME_TO_MPEGTIME (best->last_pts); + GST_DEBUG_OBJECT (mux, "Buffer has PTS %" GST_TIME_FORMAT " pts %" + G_GINT64_FORMAT, GST_TIME_ARGS (best->last_pts), pts); + } + + if (GST_CLOCK_TIME_IS_VALID (GST_BUFFER_DTS (buf)) && + GST_CLOCK_TIME_IS_VALID (best->last_dts)) { + pts = GSTTIME_TO_MPEGTIME (best->last_dts); + GST_DEBUG_OBJECT (mux, "Buffer has DTS %" GST_TIME_FORMAT " dts %" + G_GINT64_FORMAT, GST_TIME_ARGS (best->last_dts), dts); } - tsmux_stream_add_data (best->stream, GST_BUFFER_DATA (buf), - GST_BUFFER_SIZE (buf), buf, pts, -1, !delta); + /* should not have a DTS without PTS */ + if (pts == -1 && dts != -1) { + GST_DEBUG_OBJECT (mux, "using DTS for unknown PTS"); + pts = dts; + } + + if (best->stream->is_video_stream) { + delta = GST_BUFFER_FLAG_IS_SET (buf, GST_BUFFER_FLAG_DELTA_UNIT); +#if 0 + GST_OBJECT_LOCK (mux); + if (mux->element_index && !delta && best->element_index_writer_id != -1) { + gst_index_add_association (mux->element_index, + best->element_index_writer_id, + GST_ASSOCIATION_FLAG_KEY_UNIT, spn_format, mux->spn_count, + pts_format, pts, NULL); + } + GST_OBJECT_UNLOCK (mux); +#endif + } + GST_DEBUG_OBJECT (mux, "delta: %d", delta); + + stream_data = stream_data_new (buf); + tsmux_stream_add_data (best->stream, stream_data->map_info.data, + stream_data->map_info.size, stream_data, pts, dts, !delta); + + /* outgoing ts follows ts of PCR program stream */ + if (prog->pcr_stream == best->stream) { + /* prefer DTS if present for PCR as it should be monotone */ + mux->last_ts = + GST_CLOCK_TIME_IS_VALID (best->last_dts) ? best->last_dts : best-> + last_pts; + } mux->is_delta = delta; - mux->last_size = GST_BUFFER_SIZE (buf); + mux->last_size = stream_data->map_info.size; while (tsmux_stream_bytes_in_buffer (best->stream) > 0) { if (!tsmux_write_stream_packet (mux->tsmux, best->stream)) { /* Failed writing data for some reason. Set appropriate error */ @@ -992,13 +1170,12 @@ mpegtsmux_collected (GstCollectPads2 * pads, MpegTsMux * mux) } } /* flush packet cache */ - mpegtsmux_collect_packet (mux, NULL, 0); - if (prog->pcr_stream == best->stream) { - mux->last_ts = best->last_ts; - } + mpegtsmux_push_packets (mux, FALSE); } else { - /* FIXME: Drain all remaining streams */ - /* At EOS */ + /* EOS */ + /* drain some possibly cached data */ + new_packet_m2ts (mux, NULL, -1); + mpegtsmux_push_packets (mux, TRUE); gst_pad_push_event (mux->srcpad, gst_event_new_eos ()); } @@ -1020,8 +1197,8 @@ no_program: } static GstPad * -mpegtsmux_request_new_pad (GstElement * element, - GstPadTemplate * templ, const gchar * name) +mpegtsmux_request_new_pad (GstElement * element, GstPadTemplate * templ, + const gchar * name, const GstCaps * caps) { MpegTsMux *mux = GST_MPEG_TSMUX (element); gint pid = -1; @@ -1041,8 +1218,8 @@ mpegtsmux_request_new_pad (GstElement * element, g_free (pad_name); pad_data = (MpegTsPadData *) - gst_collect_pads2_add_pad_full (mux->collect, pad, sizeof (MpegTsPadData), - (GstCollectData2DestroyNotify) (mpegtsmux_pad_reset), TRUE); + gst_collect_pads_add_pad_full (mux->collect, pad, sizeof (MpegTsPadData), + (GstCollectDataDestroyNotify) (mpegtsmux_pad_reset), TRUE); if (pad_data == NULL) goto pad_failure; @@ -1065,7 +1242,7 @@ could_not_add: { GST_ELEMENT_ERROR (element, STREAM, FAILED, ("Internal data stream error."), ("Could not add pad to element")); - gst_collect_pads2_remove_pad (mux->collect, pad); + gst_collect_pads_remove_pad (mux->collect, pad); gst_object_unref (pad); return NULL; } @@ -1086,7 +1263,7 @@ mpegtsmux_release_pad (GstElement * element, GstPad * pad) GST_DEBUG_OBJECT (mux, "Pad %" GST_PTR_FORMAT " being released", pad); if (mux->collect) { - gst_collect_pads2_remove_pad (mux->collect, pad); + gst_collect_pads_remove_pad (mux->collect, pad); } /* chain up */ @@ -1108,7 +1285,7 @@ new_packet_common_init (MpegTsMux * mux, GstBuffer * buf, guint8 * data, if (!buf) { hbuf = gst_buffer_new_and_alloc (len); - memcpy (GST_BUFFER_DATA (hbuf), data, len); + gst_buffer_fill (hbuf, 0, data, len); } else { hbuf = gst_buffer_copy (buf); } @@ -1120,10 +1297,6 @@ new_packet_common_init (MpegTsMux * mux, GstBuffer * buf, guint8 * data, } if (buf) { - /* Set the caps on the buffer only after possibly setting the stream headers - * into the pad caps above */ - gst_buffer_set_caps (buf, GST_PAD_CAPS (mux->srcpad)); - if (mux->is_delta) { GST_LOG_OBJECT (mux, "marking as delta unit"); GST_BUFFER_FLAG_SET (buf, GST_BUFFER_FLAG_DELTA_UNIT); @@ -1135,193 +1308,272 @@ new_packet_common_init (MpegTsMux * mux, GstBuffer * buf, guint8 * data, } static GstFlowReturn -mpegtsmux_collect_packet (MpegTsMux * mux, guint8 * data, guint len) +mpegtsmux_push_packets (MpegTsMux * mux, gboolean force) { + gint align = mux->alignment; + gint av, packet_size; GstBuffer *buf; GstFlowReturn ret = GST_FLOW_OK; + GstClockTime ts; - GST_LOG_OBJECT (mux, "collecting packet size %d", len); -again: - if (!mux->out_buffer && data) { - /* some extra spare slack for header overhead and PAT/PMT */ - mux->out_buffer = - gst_buffer_new_and_alloc (MAX (mux->last_size * 2 + 1024, len)); - mux->out_offset = 0; - GST_DEBUG_OBJECT (mux, "created new packet cache size %d", - GST_BUFFER_SIZE (mux->out_buffer)); + if (mux->m2ts_mode) { + packet_size = M2TS_PACKET_LENGTH; + if (align < 0) + align = 32; + } else { + packet_size = NORMAL_TS_PACKET_LENGTH; + if (align < 0) + align = 0; } - buf = mux->out_buffer; - if (data && (len + mux->out_offset <= GST_BUFFER_SIZE (buf))) { - GST_LOG_OBJECT (mux, "collecting packet"); - memcpy (GST_BUFFER_DATA (buf) + mux->out_offset, data, len); - mux->out_offset += len; - ret = GST_FLOW_OK; - } else if (buf) { - GST_LOG_OBJECT (mux, "pushing packet cache"); - GST_BUFFER_TIMESTAMP (buf) = mux->last_ts; - GST_BUFFER_SIZE (buf) = mux->out_offset; - new_packet_common_init (mux, buf, NULL, 0); - mux->out_buffer = NULL; - mux->out_offset = 0; + av = gst_adapter_available (mux->out_adapter); + GST_LOG_OBJECT (mux, "align %d, av %d", align, av); + + if (!align) + align = av; + else + align *= packet_size; + + GST_LOG_OBJECT (mux, "aligning to %d bytes", align); + if (G_LIKELY ((align <= av) && av)) { + GST_LOG_OBJECT (mux, "pushing %d aligned bytes", av - (av % align)); + ts = gst_adapter_prev_timestamp (mux->out_adapter, NULL); + buf = gst_adapter_take_buffer (mux->out_adapter, av - (av % align)); + g_assert (buf); + GST_BUFFER_TIMESTAMP (buf) = ts; + + ret = gst_pad_push (mux->srcpad, buf); + av = av % align; + } + + if (av && force) { + guint8 *data; + guint32 header; + gint dummy; + GstMapInfo map; + + GST_LOG_OBJECT (mux, "handling %d leftover bytes", av); + buf = gst_buffer_new_and_alloc (align); + gst_buffer_map (buf, &map, GST_MAP_READ); + data = map.data; + ts = gst_adapter_prev_timestamp (mux->out_adapter, NULL); + + gst_adapter_copy (mux->out_adapter, data, 0, av); + gst_adapter_clear (mux->out_adapter); + GST_BUFFER_TIMESTAMP (buf) = ts; + + data += av; + header = GST_READ_UINT32_BE (data - packet_size); + + dummy = (map.size - av) / packet_size; + GST_LOG_OBJECT (mux, "adding %d null packets", dummy); + + for (; dummy > 0; dummy--) { + gint offset; + + if (packet_size > NORMAL_TS_PACKET_LENGTH) { + GST_WRITE_UINT32_BE (data, header); + /* simply increase header a bit and never mind too much */ + header++; + offset = 4; + } else { + offset = 0; + } + GST_WRITE_UINT8 (data + offset, TSMUX_SYNC_BYTE); + /* null packet PID */ + GST_WRITE_UINT16_BE (data + offset + 1, 0x1FFF); + /* no adaptation field exists | continuity counter undefined */ + GST_WRITE_UINT8 (data + offset + 3, 0x10); + /* payload */ + memset (data + offset + 4, 0, NORMAL_TS_PACKET_LENGTH - 4); + data += packet_size; + } + + gst_buffer_unmap (buf, &map); + ret = gst_pad_push (mux->srcpad, buf); - if (data) - goto again; } return ret; } -static gboolean -new_packet_m2ts (MpegTsMux * mux, guint8 * data, guint len, gint64 new_pcr) +static GstFlowReturn +mpegtsmux_collect_packet (MpegTsMux * mux, GstBuffer * buf) { - GstBuffer *buf, *out_buf; - GstFlowReturn ret; - int chunk_bytes; - - /* FIXME also collect packets - * although no more separate timestamp for each one then ?? */ + GST_LOG_OBJECT (mux, "collecting packet size %" G_GSIZE_FORMAT, + gst_buffer_get_size (buf)); + gst_adapter_push (mux->out_adapter, buf); - GST_LOG_OBJECT (mux, "Have buffer with new_pcr=%" G_GINT64_FORMAT " size %d", - new_pcr, len); + return GST_FLOW_OK; +} - buf = gst_buffer_new_and_alloc (M2TS_PACKET_LENGTH); - if (G_UNLIKELY (buf == NULL)) { - GST_ELEMENT_ERROR (mux, STREAM, MUX, - ("Failed allocating output buffer"), (NULL)); - mux->last_flow_ret = GST_FLOW_ERROR; - return FALSE; - } +static gboolean +new_packet_m2ts (MpegTsMux * mux, GstBuffer * buf, gint64 new_pcr) +{ + GstBuffer *out_buf; + int chunk_bytes; + GstMapInfo map; - /* copies the TS data of 188 bytes to the m2ts buffer at an offset - of 4 bytes to leave space for writing the timestamp later */ - memcpy (GST_BUFFER_DATA (buf) + 4, data, len); - /* After copying the data into the buffer, do other common init (flags and streamheaders) */ - new_packet_common_init (mux, buf, data, len); - - if (new_pcr < 0) { - /* If theres no pcr in current ts packet then just add the packet - to the adapter for later output when we see a PCR */ - GST_LOG_OBJECT (mux, "Accumulating non-PCR packet"); - gst_adapter_push (mux->adapter, buf); - return TRUE; - } + GST_LOG_OBJECT (mux, "Have buffer %p with new_pcr=%" G_GINT64_FORMAT, + buf, new_pcr); chunk_bytes = gst_adapter_available (mux->adapter); - /* We have a new PCR, output anything in the adapter */ - if (mux->first_pcr) { - /* We can't generate sensible timestamps for anything that might - * be in the adapter preceding the first PCR and will hit a divide - * by zero, so empty the adapter. This is probably a null op. */ - gst_adapter_clear (mux->adapter); - /* Warn if we threw anything away */ - if (chunk_bytes) { - GST_ELEMENT_WARNING (mux, STREAM, MUX, - ("Discarding %d bytes from stream preceding first PCR", - chunk_bytes / M2TS_PACKET_LENGTH * NORMAL_TS_PACKET_LENGTH), - (NULL)); - chunk_bytes = 0; + if (G_LIKELY (buf)) { + if (new_pcr < 0) { + /* If there is no pcr in current ts packet then just add the packet + to the adapter for later output when we see a PCR */ + GST_LOG_OBJECT (mux, "Accumulating non-PCR packet"); + gst_adapter_push (mux->adapter, buf); + goto exit; } - mux->first_pcr = FALSE; - } - if (chunk_bytes) { - /* Start the PCR offset counting at 192 bytes: At the end of the packet - * that had the last PCR */ - guint64 pcr_bytes = M2TS_PACKET_LENGTH, ts_rate; - - /* Include the pending packet size to get the ts_rate right */ - chunk_bytes += M2TS_PACKET_LENGTH; + /* no first interpolation point yet, then this is the one, + * otherwise it is the second interpolation point */ + if (mux->previous_pcr < 0 && chunk_bytes) { + mux->previous_pcr = new_pcr; + mux->previous_offset = chunk_bytes; + GST_LOG_OBJECT (mux, "Accumulating non-PCR packet"); + gst_adapter_push (mux->adapter, buf); + goto exit; + } + } else { + g_assert (new_pcr == -1); + } - /* calculate rate based on latest and previous pcr values */ - ts_rate = gst_util_uint64_scale (chunk_bytes, CLOCK_FREQ_SCR, - (new_pcr - mux->previous_pcr)); - GST_LOG_OBJECT (mux, "Processing pending packets with ts_rate %" - G_GUINT64_FORMAT, ts_rate); + /* interpolate if needed, and 2 points available */ + if (chunk_bytes && (new_pcr != mux->previous_pcr)) { + gint64 offset = 0; + + GST_LOG_OBJECT (mux, "Processing pending packets; " + "previous pcr %" G_GINT64_FORMAT ", previous offset %d, " + "current pcr %" G_GINT64_FORMAT ", current offset %d", + mux->previous_pcr, (gint) mux->previous_offset, + new_pcr, (gint) chunk_bytes); + + g_assert (chunk_bytes > mux->previous_offset); + /* if draining, use previous rate */ + if (G_LIKELY (new_pcr > 0)) { + mux->pcr_rate_num = new_pcr - mux->previous_pcr; + mux->pcr_rate_den = chunk_bytes - mux->previous_offset; + } - while (1) { - guint64 cur_pcr; + while (offset < chunk_bytes) { + guint64 cur_pcr, ts; /* Loop, pulling packets of the adapter, updating their 4 byte * timestamp header and pushing */ - /* The header is the bottom 30 bits of the PCR, apparently not - * encoded into base + ext as in the packets themselves, so - * we can just interpolate, mask and insert */ - cur_pcr = (mux->previous_pcr + - gst_util_uint64_scale (pcr_bytes, CLOCK_FREQ_SCR, ts_rate)); + /* interpolate PCR */ + if (G_LIKELY (offset >= mux->previous_offset)) + cur_pcr = mux->previous_pcr + + gst_util_uint64_scale (offset - mux->previous_offset, + mux->pcr_rate_num, mux->pcr_rate_den); + else + cur_pcr = mux->previous_pcr - + gst_util_uint64_scale (mux->previous_offset - offset, + mux->pcr_rate_num, mux->pcr_rate_den); + ts = gst_adapter_prev_timestamp (mux->adapter, NULL); out_buf = gst_adapter_take_buffer (mux->adapter, M2TS_PACKET_LENGTH); - if (G_UNLIKELY (!out_buf)) - break; - gst_buffer_set_caps (out_buf, GST_PAD_CAPS (mux->srcpad)); - GST_BUFFER_TIMESTAMP (out_buf) = MPEG_SYS_TIME_TO_GSTTIME (cur_pcr); + g_assert (out_buf); + offset += M2TS_PACKET_LENGTH; + + GST_BUFFER_TIMESTAMP (out_buf) = ts; - /* Write the 4 byte timestamp value, bottom 30 bits only = PCR */ - GST_WRITE_UINT32_BE (GST_BUFFER_DATA (out_buf), cur_pcr & 0x3FFFFFFF); + gst_buffer_map (out_buf, &map, GST_MAP_WRITE); + + /* The header is the bottom 30 bits of the PCR, apparently not + * encoded into base + ext as in the packets themselves */ + GST_WRITE_UINT32_BE (map.data, cur_pcr & 0x3FFFFFFF); + gst_buffer_unmap (out_buf, &map); GST_LOG_OBJECT (mux, "Outputting a packet of length %d PCR %" G_GUINT64_FORMAT, M2TS_PACKET_LENGTH, cur_pcr); - ret = gst_pad_push (mux->srcpad, out_buf); - if (G_UNLIKELY (ret != GST_FLOW_OK)) { - mux->last_flow_ret = ret; - return FALSE; - } - pcr_bytes += M2TS_PACKET_LENGTH; + mpegtsmux_collect_packet (mux, out_buf); } } + if (G_UNLIKELY (!buf)) + goto exit; + + gst_buffer_map (buf, &map, GST_MAP_WRITE); + /* Finally, output the passed in packet */ /* Only write the bottom 30 bits of the PCR */ - GST_WRITE_UINT32_BE (GST_BUFFER_DATA (buf), new_pcr & 0x3FFFFFFF); - GST_BUFFER_TIMESTAMP (buf) = MPEG_SYS_TIME_TO_GSTTIME (new_pcr); + GST_WRITE_UINT32_BE (map.data, new_pcr & 0x3FFFFFFF); + + gst_buffer_unmap (buf, &map); GST_LOG_OBJECT (mux, "Outputting a packet of length %d PCR %" G_GUINT64_FORMAT, M2TS_PACKET_LENGTH, new_pcr); - ret = gst_pad_push (mux->srcpad, buf); - if (G_UNLIKELY (ret != GST_FLOW_OK)) { - mux->last_flow_ret = ret; - return FALSE; - } + mpegtsmux_collect_packet (mux, buf); - mux->previous_pcr = new_pcr; + if (new_pcr != mux->previous_pcr) { + mux->previous_pcr = new_pcr; + mux->previous_offset = -M2TS_PACKET_LENGTH; + } +exit: return TRUE; } +/* Called when the TsMux has prepared a packet for output. Return FALSE + * on error */ static gboolean -new_packet_normal_ts (MpegTsMux * mux, guint8 * data, guint len, gint64 new_pcr) +new_packet_cb (GstBuffer * buf, void *user_data, gint64 new_pcr) { - GstFlowReturn ret; + MpegTsMux *mux = (MpegTsMux *) user_data; + gint offset = 0; + GstMapInfo map; - /* Output a normal TS packet */ - GST_LOG_OBJECT (mux, "Pushing a packet of length %d", len); +#if 0 + GST_LOG_OBJECT (mux, "handling packet %d", mux->spn_count); + mux->spn_count++; +#endif - /* do common init (flags and streamheaders) */ - new_packet_common_init (mux, NULL, data, len); - ret = mpegtsmux_collect_packet (mux, data, len); + if (mux->m2ts_mode) { + offset = 4; + gst_buffer_set_size (buf, NORMAL_TS_PACKET_LENGTH + offset); + } - if (G_UNLIKELY (ret != GST_FLOW_OK)) { - mux->last_flow_ret = ret; - return FALSE; + gst_buffer_map (buf, &map, GST_MAP_READWRITE); + + if (offset) { + /* there should be a better way to do this */ + memmove (map.data + offset, map.data, map.size - offset); } + GST_BUFFER_PTS (buf) = mux->last_ts; + /* do common init (flags and streamheaders) */ + new_packet_common_init (mux, buf, map.data + offset, map.size); + + gst_buffer_unmap (buf, &map); + + /* all is meant for downstream, including any prefix */ + if (offset) + return new_packet_m2ts (mux, buf, new_pcr); + else + mpegtsmux_collect_packet (mux, buf); + return TRUE; } -static gboolean -new_packet_cb (guint8 * data, guint len, void *user_data, gint64 new_pcr) +/* called when TsMux needs new packet to write into */ +static void +alloc_packet_cb (GstBuffer ** _buf, void *user_data) { - /* Called when the TsMux has prepared a packet for output. Return FALSE - * on error */ MpegTsMux *mux = (MpegTsMux *) user_data; + GstBuffer *buf; + gint offset = 0; - if (mux->m2ts_mode == TRUE) { - return new_packet_m2ts (mux, data, len, new_pcr); - } + if (mux->m2ts_mode == TRUE) + offset = 4; - return new_packet_normal_ts (mux, data, len, new_pcr); + buf = gst_buffer_new_and_alloc (NORMAL_TS_PACKET_LENGTH + offset); + gst_buffer_set_size (buf, NORMAL_TS_PACKET_LENGTH); + + *_buf = buf; } static void @@ -1334,7 +1586,7 @@ mpegtsdemux_set_header_on_caps (MpegTsMux * mux) GstCaps *caps; GList *sh; - caps = gst_caps_copy (GST_PAD_CAPS (mux->srcpad)); + caps = gst_caps_make_writable (gst_pad_get_current_caps (mux->srcpad)); structure = gst_caps_get_structure (caps, 0); g_value_init (&array, GST_TYPE_ARRAY); @@ -1342,7 +1594,6 @@ mpegtsdemux_set_header_on_caps (MpegTsMux * mux) sh = mux->streamheader; while (sh) { buf = sh->data; - GST_BUFFER_FLAG_SET (buf, GST_BUFFER_FLAG_IN_CAPS); g_value_init (&value, GST_TYPE_BUFFER); gst_value_take_buffer (&value, buf); gst_value_array_append_value (&array, &value); @@ -1362,14 +1613,18 @@ mpegtsdemux_set_header_on_caps (MpegTsMux * mux) static void mpegtsdemux_prepare_srcpad (MpegTsMux * mux) { - GstEvent *new_seg = - gst_event_new_new_segment (FALSE, 1.0, GST_FORMAT_BYTES, 0, -1, 0); + GstSegment seg; + /* we are not going to seek */ + GstEvent *new_seg; GstCaps *caps = gst_caps_new_simple ("video/mpegts", "systemstream", G_TYPE_BOOLEAN, TRUE, "packetsize", G_TYPE_INT, (mux->m2ts_mode ? M2TS_PACKET_LENGTH : NORMAL_TS_PACKET_LENGTH), NULL); + gst_segment_init (&seg, GST_FORMAT_TIME); + new_seg = gst_event_new_segment (&seg); + /* Set caps on src pad from our template and push new segment */ gst_pad_set_caps (mux->srcpad, caps); gst_caps_unref (caps); @@ -1389,12 +1644,12 @@ mpegtsmux_change_state (GstElement * element, GstStateChange transition) case GST_STATE_CHANGE_NULL_TO_READY: break; case GST_STATE_CHANGE_READY_TO_PAUSED: - gst_collect_pads2_start (mux->collect); + gst_collect_pads_start (mux->collect); break; case GST_STATE_CHANGE_PAUSED_TO_PLAYING: break; case GST_STATE_CHANGE_PAUSED_TO_READY: - gst_collect_pads2_stop (mux->collect); + gst_collect_pads_stop (mux->collect); break; case GST_STATE_CHANGE_READY_TO_NULL: break; @@ -1433,5 +1688,5 @@ plugin_init (GstPlugin * plugin) } GST_PLUGIN_DEFINE (GST_VERSION_MAJOR, GST_VERSION_MINOR, - "mpegtsmux", "MPEG-TS muxer", + mpegtsmux, "MPEG-TS muxer", plugin_init, VERSION, "LGPL", GST_PACKAGE_NAME, GST_PACKAGE_ORIGIN); diff --git a/gst/mpegtsmux/mpegtsmux.h b/gst/mpegtsmux/mpegtsmux.h index 8ca61e13..0ae37978 100644 --- a/gst/mpegtsmux/mpegtsmux.h +++ b/gst/mpegtsmux/mpegtsmux.h @@ -84,7 +84,7 @@ #define __MPEGTSMUX_H__ #include <gst/gst.h> -#include <gst/base/gstcollectpads2.h> +#include <gst/base/gstcollectpads.h> #include <gst/base/gstadapter.h> G_BEGIN_DECLS @@ -129,7 +129,7 @@ struct MpegTsMux { GstPad *srcpad; - GstCollectPads2 *collect; + GstCollectPads *collect; TsMux *tsmux; TsMuxProgram *programs[MAX_PROG_NUMBER]; @@ -139,6 +139,7 @@ struct MpegTsMux { GstStructure *prog_map; guint pat_interval; guint pmt_interval; + gint alignment; /* state */ gboolean first; @@ -153,14 +154,23 @@ struct MpegTsMux { GstClockTime last_ts; /* m2ts specific */ - gboolean first_pcr; gint64 previous_pcr; + gint64 previous_offset; + gint64 pcr_rate_num; + gint64 pcr_rate_den; GstAdapter *adapter; /* output buffer aggregation */ + GstAdapter *out_adapter; GstBuffer *out_buffer; gint out_offset; gint last_size; + +#if 0 + /* SPN/PTS index handling */ + GstIndex *element_index; + gint spn_count; +#endif }; struct MpegTsMuxClass { @@ -171,17 +181,19 @@ struct MpegTsMuxClass { struct MpegTsPadData { /* parent */ - GstCollectData2 collect; + GstCollectData collect; gint pid; TsMuxStream *stream; - /* currently pulled buffer */ - GstBuffer *queued_buf; - /* adjusted TS for the pulled buffer */ - GstClockTime cur_ts; /* most recent valid TS for this stream */ - GstClockTime last_ts; + GstClockTime last_pts; + GstClockTime last_dts; + +#if 0 + /* (optional) index writing */ + gint element_index_writer_id; +#endif /* optional codec data available in the caps */ GstBuffer *codec_data; @@ -194,8 +206,6 @@ struct MpegTsPadData { /* handler to free the private data */ MpegTsPadDataFreePrepareDataFunction free_func; - gboolean eos; - /* program id == idx to which it is attached to (not program pid) */ gint prog_id; /* program this stream belongs to == mux->programs[prog_id] */ diff --git a/gst/mpegtsmux/mpegtsmux_aac.c b/gst/mpegtsmux/mpegtsmux_aac.c index c4336641..5191cca6 100644 --- a/gst/mpegtsmux/mpegtsmux_aac.c +++ b/gst/mpegtsmux/mpegtsmux_aac.c @@ -93,23 +93,26 @@ GstBuffer * mpegtsmux_prepare_aac (GstBuffer * buf, MpegTsPadData * data, MpegTsMux * mux) { guint8 adts_header[7] = { 0, }; - GstBuffer *out_buf = gst_buffer_new_and_alloc (GST_BUFFER_SIZE (buf) + 7); + gsize out_size = gst_buffer_get_size (buf) + 7; + GstBuffer *out_buf = gst_buffer_new_and_alloc (out_size); gsize out_offset = 0; guint8 rate_idx = 0, channels = 0, obj_type = 0; + GstMapInfo codec_data_map; + GstMapInfo buf_map; GST_DEBUG_OBJECT (mux, "Preparing AAC buffer for output"); - /* We want the same metadata */ - gst_buffer_copy_metadata (out_buf, buf, GST_BUFFER_COPY_ALL); + gst_buffer_copy_into (out_buf, buf, + GST_BUFFER_COPY_METADATA | GST_BUFFER_COPY_TIMESTAMPS, 0, 0); + + gst_buffer_map (data->codec_data, &codec_data_map, GST_MAP_READ); /* Generate ADTS header */ - obj_type = (GST_READ_UINT8 (GST_BUFFER_DATA (data->codec_data)) & 0xC) >> 2; + obj_type = (GST_READ_UINT8 (codec_data_map.data) & 0xC) >> 2; obj_type++; - rate_idx = (GST_READ_UINT8 (GST_BUFFER_DATA (data->codec_data)) & 0x3) << 1; - rate_idx |= - (GST_READ_UINT8 (GST_BUFFER_DATA (data->codec_data) + 1) & 0x80) >> 7; - channels = - (GST_READ_UINT8 (GST_BUFFER_DATA (data->codec_data) + 1) & 0x78) >> 3; + rate_idx = (GST_READ_UINT8 (codec_data_map.data) & 0x3) << 1; + rate_idx |= (GST_READ_UINT8 (codec_data_map.data + 1) & 0x80) >> 7; + channels = (GST_READ_UINT8 (codec_data_map.data + 1) & 0x78) >> 3; GST_DEBUG_OBJECT (mux, "Rate index %u, channels %u, object type %u", rate_idx, channels, obj_type); /* Sync point over a full byte */ @@ -126,11 +129,11 @@ mpegtsmux_prepare_aac (GstBuffer * buf, MpegTsPadData * data, MpegTsMux * mux) /* channels continued over next 2 bits + 4 bits at zero */ adts_header[3] = (channels & 0x3) << 6; /* frame size over last 2 bits */ - adts_header[3] |= (GST_BUFFER_SIZE (out_buf) & 0x1800) >> 11; + adts_header[3] |= (out_size & 0x1800) >> 11; /* frame size continued over full byte */ - adts_header[4] = (GST_BUFFER_SIZE (out_buf) & 0x1FF8) >> 3; + adts_header[4] = (out_size & 0x1FF8) >> 3; /* frame size continued first 3 bits */ - adts_header[5] = (GST_BUFFER_SIZE (out_buf) & 0x7) << 5; + adts_header[5] = (out_size & 0x7) << 5; /* buffer fullness (0x7FF for VBR) over 5 last bits */ adts_header[5] |= 0x1F; /* buffer fullness (0x7FF for VBR) continued over 6 first bits + 2 zeros for @@ -138,12 +141,16 @@ mpegtsmux_prepare_aac (GstBuffer * buf, MpegTsPadData * data, MpegTsMux * mux) adts_header[6] = 0xFC; /* Insert ADTS header */ - memcpy (GST_BUFFER_DATA (out_buf) + out_offset, adts_header, 7); + gst_buffer_fill (out_buf, out_offset, adts_header, 7); out_offset += 7; + gst_buffer_map (buf, &buf_map, GST_MAP_READ); + /* Now copy complete frame */ - memcpy (GST_BUFFER_DATA (out_buf) + out_offset, GST_BUFFER_DATA (buf), - GST_BUFFER_SIZE (buf)); + gst_buffer_fill (out_buf, out_offset, buf_map.data, buf_map.size); + + gst_buffer_unmap (data->codec_data, &codec_data_map); + gst_buffer_unmap (buf, &buf_map); return out_buf; } diff --git a/gst/mpegtsmux/mpegtsmux_h264.c b/gst/mpegtsmux/mpegtsmux_h264.c deleted file mode 100644 index bdf7f2f0..00000000 --- a/gst/mpegtsmux/mpegtsmux_h264.c +++ /dev/null @@ -1,293 +0,0 @@ -/* - * Copyright 2006, 2007, 2008, 2009, 2010 Fluendo S.A. - * Authors: Jan Schmidt <jan@fluendo.com> - * Kapil Agrawal <kapil@fluendo.com> - * Julien Moutte <julien@fluendo.com> - * - * This library is licensed under 4 different licenses and you - * can choose to use it under the terms of any one of them. The - * four licenses are the MPL 1.1, the LGPL, the GPL and the MIT - * license. - * - * MPL: - * - * The contents of this file are subject to the Mozilla Public License - * Version 1.1 (the "License"); you may not use this file except in - * compliance with the License. You may obtain a copy of the License at - * http://www.mozilla.org/MPL/. - * - * Software distributed under the License is distributed on an "AS IS" - * basis, WITHOUT WARRANTY OF ANY KIND, either express or implied. See the - * License for the specific language governing rights and limitations - * under the License. - * - * LGPL: - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Library General Public - * License as published by the Free Software Foundation; either - * version 2 of the License, or (at your option) any later version. - * - * This library 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 - * Library General Public License for more details. - * - * You should have received a copy of the GNU Library General Public - * License along with this library; if not, write to the - * Free Software Foundation, Inc., 59 Temple Place - Suite 330, - * Boston, MA 02111-1307, USA. - * - * GPL: - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * This program 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 License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. - * - * MIT: - * - * Unless otherwise indicated, Source Code is licensed under MIT license. - * See further explanation attached in License Statement (distributed in the file - * LICENSE). - * - * Permission is hereby granted, free of charge, to any person obtaining a copy of - * this software and associated documentation files (the "Software"), to deal in - * the Software without restriction, including without limitation the rights to - * use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies - * of the Software, and to permit persons to whom the Software is furnished to do - * so, subject to the following conditions: - * - * The above copyright notice and this permission notice shall be included in all - * copies or substantial portions of the Software. - * - * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR - * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, - * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE - * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER - * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, - * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE - * SOFTWARE. - * - */ - -#ifdef HAVE_CONFIG_H -#include "config.h" -#endif - -#include "mpegtsmux_h264.h" -#include <string.h> - -#define GST_CAT_DEFAULT mpegtsmux_debug - -#define SPS_PPS_PERIOD GST_SECOND - -typedef struct PrivDataH264 PrivDataH264; - -struct PrivDataH264 -{ - GstBuffer *last_codec_data; - GstClockTime last_resync_ts; - GstBuffer *cached_es; - guint8 nal_length_size; -}; - -void -mpegtsmux_free_h264 (gpointer prepare_data) -{ - PrivDataH264 *h264_data = (PrivDataH264 *) prepare_data; - if (h264_data->cached_es) { - gst_buffer_unref (h264_data->cached_es); - h264_data->cached_es = NULL; - } - g_free (prepare_data); -} - -static inline gboolean -mpegtsmux_process_codec_data_h264 (MpegTsPadData * data, MpegTsMux * mux) -{ - PrivDataH264 *h264_data; - gboolean ret = FALSE; - - /* Initialize our private data structure for caching */ - if (G_UNLIKELY (!data->prepare_data)) { - data->prepare_data = g_new0 (PrivDataH264, 1); - h264_data = (PrivDataH264 *) data->prepare_data; - h264_data->last_resync_ts = GST_CLOCK_TIME_NONE; - } - - h264_data = (PrivDataH264 *) data->prepare_data; - - /* Detect a codec data change */ - if (h264_data->last_codec_data != data->codec_data) { - if (h264_data->cached_es) { - gst_buffer_unref (h264_data->cached_es); - h264_data->cached_es = NULL; - } - ret = TRUE; - } - - /* Generate the SPS/PPS ES header that will be prepended regularly */ - if (G_UNLIKELY (!h264_data->cached_es)) { - gint offset = 4, i = 0, nb_sps = 0, nb_pps = 0; - gsize out_offset = 0; - guint8 startcode[4] = { 0x00, 0x00, 0x00, 0x01 }; - h264_data->last_codec_data = data->codec_data; - h264_data->cached_es = - gst_buffer_new_and_alloc (GST_BUFFER_SIZE (data->codec_data) * 10); - - /* Get NAL length size */ - h264_data->nal_length_size = - (GST_READ_UINT8 (GST_BUFFER_DATA (data->codec_data) + offset) & 0x03) + - 1; - GST_LOG_OBJECT (mux, "NAL length will be coded on %u bytes", - h264_data->nal_length_size); - offset++; - - /* How many SPS */ - nb_sps = - GST_READ_UINT8 (GST_BUFFER_DATA (data->codec_data) + offset) & 0x1f; - GST_DEBUG_OBJECT (mux, "we have %d Sequence Parameter Set", nb_sps); - offset++; - - /* For each SPS */ - for (i = 0; i < nb_sps; i++) { - guint16 sps_size = - GST_READ_UINT16_BE (GST_BUFFER_DATA (data->codec_data) + offset); - - GST_LOG_OBJECT (mux, "Sequence Parameter Set is %d bytes", sps_size); - - /* Jump over SPS size */ - offset += 2; - - /* Fake a start code */ - memcpy (GST_BUFFER_DATA (h264_data->cached_es) + out_offset, - startcode, 4); - out_offset += 4; - /* Now push the SPS */ - memcpy (GST_BUFFER_DATA (h264_data->cached_es) + out_offset, - GST_BUFFER_DATA (data->codec_data) + offset, sps_size); - - out_offset += sps_size; - offset += sps_size; - } - - /* How many PPS */ - nb_pps = GST_READ_UINT8 (GST_BUFFER_DATA (data->codec_data) + offset); - GST_LOG_OBJECT (mux, "we have %d Picture Parameter Set", nb_sps); - offset++; - - /* For each PPS */ - for (i = 0; i < nb_pps; i++) { - gint pps_size = - GST_READ_UINT16_BE (GST_BUFFER_DATA (data->codec_data) + offset); - - GST_LOG_OBJECT (mux, "Picture Parameter Set is %d bytes", pps_size); - - /* Jump over PPS size */ - offset += 2; - - /* Fake a start code */ - memcpy (GST_BUFFER_DATA (h264_data->cached_es) + out_offset, - startcode, 4); - out_offset += 4; - /* Now push the PPS */ - memcpy (GST_BUFFER_DATA (h264_data->cached_es) + out_offset, - GST_BUFFER_DATA (data->codec_data) + offset, pps_size); - - out_offset += pps_size; - offset += pps_size; - } - GST_BUFFER_SIZE (h264_data->cached_es) = out_offset; - GST_DEBUG_OBJECT (mux, "generated a %" G_GSIZE_FORMAT - " bytes SPS/PPS header", out_offset); - } - return ret; -} - -GstBuffer * -mpegtsmux_prepare_h264 (GstBuffer * buf, MpegTsPadData * data, MpegTsMux * mux) -{ - guint8 startcode[4] = { 0x00, 0x00, 0x00, 0x01 }; - gsize out_offset = 0, in_offset = 0; - GstBuffer *out_buf; - gboolean changed; - PrivDataH264 *h264_data; - GstClockTimeDiff diff = GST_CLOCK_TIME_NONE; - - GST_DEBUG_OBJECT (mux, "Preparing H264 buffer for output"); - - changed = mpegtsmux_process_codec_data_h264 (data, mux); - h264_data = (PrivDataH264 *) data->prepare_data; - - if (GST_CLOCK_TIME_IS_VALID (h264_data->last_resync_ts) && - GST_CLOCK_TIME_IS_VALID (GST_BUFFER_TIMESTAMP (buf))) { - diff = GST_CLOCK_DIFF (h264_data->last_resync_ts, - GST_BUFFER_TIMESTAMP (buf)); - } - - if (changed || (GST_CLOCK_TIME_IS_VALID (diff) && diff > SPS_PPS_PERIOD)) { - out_buf = gst_buffer_new_and_alloc (GST_BUFFER_SIZE (buf) * 2 + - GST_BUFFER_SIZE (h264_data->cached_es)); - h264_data->last_resync_ts = GST_BUFFER_TIMESTAMP (buf); - memcpy (GST_BUFFER_DATA (out_buf), GST_BUFFER_DATA (h264_data->cached_es), - GST_BUFFER_SIZE (h264_data->cached_es)); - out_offset = GST_BUFFER_SIZE (h264_data->cached_es); - GST_DEBUG_OBJECT (mux, "prepending SPS/PPS information to that packet"); - } else { - out_buf = gst_buffer_new_and_alloc (GST_BUFFER_SIZE (buf) * 2); - } - - /* We want the same metadata */ - gst_buffer_copy_metadata (out_buf, buf, GST_BUFFER_COPY_ALL); - - while (in_offset < GST_BUFFER_SIZE (buf) && - out_offset < GST_BUFFER_SIZE (out_buf) - 4) { - guint32 nal_size = 0; - - switch (h264_data->nal_length_size) { - case 1: - nal_size = GST_READ_UINT8 (GST_BUFFER_DATA (buf) + in_offset); - break; - case 2: - nal_size = GST_READ_UINT16_BE (GST_BUFFER_DATA (buf) + in_offset); - break; - case 4: - nal_size = GST_READ_UINT32_BE (GST_BUFFER_DATA (buf) + in_offset); - break; - default: - GST_WARNING_OBJECT (mux, "unsupported NAL length size %u", - h264_data->nal_length_size); - } - in_offset += h264_data->nal_length_size; - - /* Generate an Elementary stream buffer by inserting a startcode */ - memcpy (GST_BUFFER_DATA (out_buf) + out_offset, startcode, 4); - out_offset += 4; - memcpy (GST_BUFFER_DATA (out_buf) + out_offset, - GST_BUFFER_DATA (buf) + in_offset, - MIN (nal_size, GST_BUFFER_SIZE (out_buf) - out_offset)); - in_offset += nal_size; - out_offset += nal_size; - } - - if (out_offset > GST_BUFFER_SIZE (out_buf)) { - GST_WARNING_OBJECT (mux, "Calculated buffer size %" G_GSIZE_FORMAT - " is greater than max expected size %u, " - "using max expected size (Input might not be in " - "avc format", out_offset, GST_BUFFER_SIZE (out_buf)); - out_offset = GST_BUFFER_SIZE (out_buf); - } - GST_BUFFER_SIZE (out_buf) = out_offset; - - return out_buf; -} diff --git a/gst/mpegtsmux/mpegtsmux_ttxt.c b/gst/mpegtsmux/mpegtsmux_ttxt.c new file mode 100644 index 00000000..5fb06e09 --- /dev/null +++ b/gst/mpegtsmux/mpegtsmux_ttxt.c @@ -0,0 +1,156 @@ +/* + * Copyright 2006, 2007, 2008 Fluendo S.A. + * Authors: Jan Schmidt <jan@fluendo.com> + * Kapil Agrawal <kapil@fluendo.com> + * Julien Moutte <julien@fluendo.com> + * + * This library is licensed under 4 different licenses and you + * can choose to use it under the terms of any one of them. The + * four licenses are the MPL 1.1, the LGPL, the GPL and the MIT + * license. + * + * MPL: + * + * The contents of this file are subject to the Mozilla Public License + * Version 1.1 (the "License"); you may not use this file except in + * compliance with the License. You may obtain a copy of the License at + * http://www.mozilla.org/MPL/. + * + * Software distributed under the License is distributed on an "AS IS" + * basis, WITHOUT WARRANTY OF ANY KIND, either express or implied. See the + * License for the specific language governing rights and limitations + * under the License. + * + * LGPL: + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Library General Public + * License as published by the Free Software Foundation; either + * version 2 of the License, or (at your option) any later version. + * + * This library 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 + * Library General Public License for more details. + * + * You should have received a copy of the GNU Library General Public + * License along with this library; if not, write to the + * Free Software Foundation, Inc., 59 Temple Place - Suite 330, + * Boston, MA 02111-1307, USA. + * + * GPL: + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program 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 License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. + * + * MIT: + * + * Unless otherwise indicated, Source Code is licensed under MIT license. + * See further explanation attached in License Statement (distributed in the file + * LICENSE). + * + * Permission is hereby granted, free of charge, to any person obtaining a copy of + * this software and associated documentation files (the "Software"), to deal in + * the Software without restriction, including without limitation the rights to + * use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies + * of the Software, and to permit persons to whom the Software is furnished to do + * so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE + * SOFTWARE. + * + */ + +#ifdef HAVE_CONFIG_H +#include "config.h" +#endif + +#include "mpegtsmux_ttxt.h" +#include <string.h> + +#define GST_CAT_DEFAULT mpegtsmux_debug + +/* from EN 300 472 spec: ITU-R System B Teletext in DVB + * + * PES packet = PES header + PES payload data + * where PES header must be fixed at 45 bytes (likely by using PES stuffing) + * PES packet must completely fill an integral number of TS packets + * using (184 bytes) payload data only (so no adaptation field stuffing) + */ + +GstBuffer * +mpegtsmux_prepare_teletext (GstBuffer * buf, MpegTsPadData * pad_data, + MpegTsMux * mux) +{ + GstBuffer *out_buf; + guint8 *data, *odata; + gint size, stuff; + gboolean add_id; + GstMapInfo map, omap; + + gst_buffer_map (buf, &map, GST_MAP_READ); + size = map.size; + data = map.data; + + /* check if leading data_identifier byte is already present, + * if not increase size since it will need to be added */ + if (data[0] < 0x10 || data[0] > 0x1F) { + size += 1; + add_id = TRUE; + } + + if (size <= 184 - 45) { + stuff = 184 - 45 - size; + } else { + stuff = size - (184 - 45); + stuff = 184 - (stuff % 184); + } + if (G_UNLIKELY (stuff == 1)) + stuff += 184; + + GST_DEBUG_OBJECT (mux, "Preparing teletext buffer for output"); + + out_buf = gst_buffer_new_and_alloc (size + stuff); + gst_buffer_copy_into (out_buf, buf, + GST_BUFFER_COPY_METADATA | GST_BUFFER_COPY_TIMESTAMPS, 0, 0); + + /* copy data */ + gst_buffer_map (out_buf, &omap, GST_MAP_WRITE); + odata = omap.data; + /* add data_identifier if needed */ + if (add_id) { + *odata = 0x10; + memcpy (odata + 1, data, size - 1); + } else { + memcpy (odata, data, size); + } + + /* add stuffing data_unit */ + odata += size; + *odata++ = 0xFF; + *odata = stuff; + + gst_buffer_unmap (buf, &map); + gst_buffer_unmap (out_buf, &omap); + + return out_buf; +} diff --git a/gst/mpegtsmux/mpegtsmux_h264.h b/gst/mpegtsmux/mpegtsmux_ttxt.h index 3a9bccbf..1021a944 100644 --- a/gst/mpegtsmux/mpegtsmux_h264.h +++ b/gst/mpegtsmux/mpegtsmux_ttxt.h @@ -1,5 +1,5 @@ /* - * Copyright 2006, 2007, 2008, 2009, 2010 Fluendo S.A. + * Copyright 2006, 2007, 2008 Fluendo S.A. * Authors: Jan Schmidt <jan@fluendo.com> * Kapil Agrawal <kapil@fluendo.com> * Julien Moutte <julien@fluendo.com> @@ -80,14 +80,12 @@ * */ -#ifndef __MPEGTSMUX_H264_H__ -#define __MPEGTSMUX_H264_H__ +#ifndef __MPEGTSMUX_TTXT_H__ +#define __MPEGTSMUX_TTXT_H__ #include "mpegtsmux.h" -GstBuffer * mpegtsmux_prepare_h264 (GstBuffer * buf, MpegTsPadData * data, +GstBuffer * mpegtsmux_prepare_teletext (GstBuffer * buf, MpegTsPadData * data, MpegTsMux * mux); -void mpegtsmux_free_h264 (gpointer prepare_data); - -#endif /* __MPEGTSMUX_H264_H__ */ +#endif /* __MPEGTSMUX_TTXT_H__ */ diff --git a/gst/mpegtsmux/tsmux/Makefile.in b/gst/mpegtsmux/tsmux/Makefile.in index 2cfff05d..4b8e74a5 100644 --- a/gst/mpegtsmux/tsmux/Makefile.in +++ b/gst/mpegtsmux/tsmux/Makefile.in @@ -1,4 +1,4 @@ -# Makefile.in generated by automake 1.11.5 from Makefile.am. +# Makefile.in generated by automake 1.11.6 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, @@ -208,11 +208,10 @@ DIRECT3D_LIBS = @DIRECT3D_LIBS@ DIRECTDRAW_LIBS = @DIRECTDRAW_LIBS@ DIRECTFB_CFLAGS = @DIRECTFB_CFLAGS@ DIRECTFB_LIBS = @DIRECTFB_LIBS@ +DIRECTSHOW_LIBS = @DIRECTSHOW_LIBS@ DIRECTSOUND_LIBS = @DIRECTSOUND_LIBS@ DIRECTX_CFLAGS = @DIRECTX_CFLAGS@ DIRECTX_LDFLAGS = @DIRECTX_LDFLAGS@ -DIVXDEC_LIBS = @DIVXDEC_LIBS@ -DIVXENC_LIBS = @DIVXENC_LIBS@ DLLTOOL = @DLLTOOL@ DSYMUTIL = @DSYMUTIL@ DTS_LIBS = @DTS_LIBS@ @@ -247,7 +246,9 @@ GIO_LIBS = @GIO_LIBS@ GLIB_CFLAGS = @GLIB_CFLAGS@ GLIB_COMPILE_SCHEMAS = @GLIB_COMPILE_SCHEMAS@ GLIB_EXTRA_CFLAGS = @GLIB_EXTRA_CFLAGS@ +GLIB_GENMARSHAL = @GLIB_GENMARSHAL@ GLIB_LIBS = @GLIB_LIBS@ +GLIB_MKENUMS = @GLIB_MKENUMS@ GLIB_PREFIX = @GLIB_PREFIX@ GLIB_REQ = @GLIB_REQ@ GME_LIBS = @GME_LIBS@ @@ -323,13 +324,14 @@ HAVE_CXX = @HAVE_CXX@ HAVE_DIRECT3D = @HAVE_DIRECT3D@ HAVE_DIRECT3D9 = @HAVE_DIRECT3D9@ HAVE_DIRECTDRAW = @HAVE_DIRECTDRAW@ +HAVE_DIRECTSHOW = @HAVE_DIRECTSHOW@ HAVE_DIRECTSOUND = @HAVE_DIRECTSOUND@ HAVE_DTS = @HAVE_DTS@ HAVE_FAAC = @HAVE_FAAC@ HAVE_FAAD = @HAVE_FAAD@ HAVE_FLITE = @HAVE_FLITE@ HAVE_GSM = @HAVE_GSM@ -HAVE_JP2K = @HAVE_JP2K@ +HAVE_JASPER = @HAVE_JASPER@ HAVE_NAS = @HAVE_NAS@ HAVE_VPX = @HAVE_VPX@ HAVE_WILDMIDI = @HAVE_WILDMIDI@ @@ -343,7 +345,7 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ INTLLIBS = @INTLLIBS@ INTL_MACOSX_LIBS = @INTL_MACOSX_LIBS@ -JP2K_LIBS = @JP2K_LIBS@ +JASPER_LIBS = @JASPER_LIBS@ KATE_CFLAGS = @KATE_CFLAGS@ KATE_LIBS = @KATE_LIBS@ LD = @LD@ @@ -379,6 +381,8 @@ MODPLUG_CFLAGS = @MODPLUG_CFLAGS@ MODPLUG_LIBS = @MODPLUG_LIBS@ MPEG2ENC_CFLAGS = @MPEG2ENC_CFLAGS@ MPEG2ENC_LIBS = @MPEG2ENC_LIBS@ +MPG123_CFLAGS = @MPG123_CFLAGS@ +MPG123_LIBS = @MPG123_LIBS@ MPLEX_CFLAGS = @MPLEX_CFLAGS@ MPLEX_LDFLAGS = @MPLEX_LDFLAGS@ MPLEX_LIBS = @MPLEX_LIBS@ diff --git a/gst/mpegtsmux/tsmux/crc.h b/gst/mpegtsmux/tsmux/crc.h index 089ce2c5..06f94b48 100644 --- a/gst/mpegtsmux/tsmux/crc.h +++ b/gst/mpegtsmux/tsmux/crc.h @@ -45,12 +45,12 @@ static guint32 crc_tab[256] = { }; static guint32 -calc_crc32 (guint8 *data, guint datalen) +calc_crc32 (guint8 * data, guint datalen) { guint i; guint32 crc = 0xffffffff; - for (i=0; i<datalen; i++) { + for (i = 0; i < datalen; i++) { crc = (crc << 8) ^ crc_tab[((crc >> 24) ^ *data++) & 0xff]; } diff --git a/gst/mpegtsmux/tsmux/tsmux.c b/gst/mpegtsmux/tsmux/tsmux.c index a3d8af40..9b0e6583 100644 --- a/gst/mpegtsmux/tsmux/tsmux.c +++ b/gst/mpegtsmux/tsmux/tsmux.c @@ -108,6 +108,10 @@ /* Times per second to write PCR */ #define TSMUX_DEFAULT_PCR_FREQ (25) +/* Base for all written PCR and DTS/PTS, + * so we have some slack to go backwards */ +#define CLOCK_BASE (TSMUX_CLOCK_FREQ * 10 * 360) + static gboolean tsmux_write_pat (TsMux * mux); static gboolean tsmux_write_pmt (TsMux * mux, TsMuxProgram * program); @@ -157,6 +161,25 @@ tsmux_set_write_func (TsMux * mux, TsMuxWriteFunc func, void *user_data) } /** + * tsmux_set_alloc_func: + * @mux: a #TsMux + * @func: a user callback function + * @user_data: user data passed to @func + * + * Set the callback function and user data to be called when @mux needs + * a new buffer to write a packet into. + * @user_data will be passed as user data in @func. + */ +void +tsmux_set_alloc_func (TsMux * mux, TsMuxAllocFunc func, void *user_data) +{ + g_return_if_fail (mux != NULL); + + mux->alloc_func = func; + mux->alloc_func_data = user_data; +} + +/** * tsmux_set_pat_interval: * @mux: a #TsMux * @freq: a new PAT interval @@ -431,13 +454,32 @@ tsmux_find_stream (TsMux * mux, guint16 pid) } static gboolean -tsmux_packet_out (TsMux * mux) +tsmux_get_buffer (TsMux * mux, GstBuffer ** buf) { - if (G_UNLIKELY (mux->write_func == NULL)) + g_return_val_if_fail (buf, FALSE); + + if (G_UNLIKELY (!mux->alloc_func)) + return FALSE; + + mux->alloc_func (buf, mux->alloc_func_data); + + if (!*buf) + return FALSE; + + g_assert (gst_buffer_get_size (*buf) == TSMUX_PACKET_LENGTH); + return TRUE; +} + +static gboolean +tsmux_packet_out (TsMux * mux, GstBuffer * buf, gint64 pcr) +{ + if (G_UNLIKELY (mux->write_func == NULL)) { + if (buf) + gst_buffer_unref (buf); return TRUE; + } - return mux->write_func (mux->packet_buf, TSMUX_PACKET_LENGTH, - mux->write_func_data, mux->new_pcr); + return mux->write_func (buf, mux->write_func_data, pcr); } /* @@ -702,27 +744,31 @@ tsmux_write_stream_packet (TsMux * mux, TsMuxStream * stream) guint payload_len, payload_offs; TsMuxPacketInfo *pi = &stream->pi; gboolean res; + gint64 cur_pcr = -1; + GstBuffer *buf = NULL; + GstMapInfo map; - - mux->new_pcr = -1; g_return_val_if_fail (mux != NULL, FALSE); g_return_val_if_fail (stream != NULL, FALSE); if (tsmux_stream_is_pcr (stream)) { - gint64 cur_pcr = 0; gint64 cur_pts = tsmux_stream_get_pts (stream); gboolean write_pat; GList *cur; + cur_pcr = 0; if (cur_pts != -1) { TS_DEBUG ("TS for PCR stream is %" G_GINT64_FORMAT, cur_pts); } /* FIXME: The current PCR needs more careful calculation than just * writing a fixed offset */ - if (cur_pts != -1 && (cur_pts >= TSMUX_PCR_OFFSET)) + if (cur_pts != -1) { + /* CLOCK_BASE >= TSMUX_PCR_OFFSET */ + cur_pts += CLOCK_BASE; cur_pcr = (cur_pts - TSMUX_PCR_OFFSET) * (TSMUX_SYS_CLOCK_FREQ / TSMUX_CLOCK_FREQ); + } /* Need to decide whether to write a new PCR in this packet */ if (stream->last_pcr == -1 || @@ -733,7 +779,8 @@ tsmux_write_stream_packet (TsMux * mux, TsMuxStream * stream) TSMUX_PACKET_FLAG_ADAPTATION | TSMUX_PACKET_FLAG_WRITE_PCR; stream->pi.pcr = cur_pcr; stream->last_pcr = cur_pcr; - mux->new_pcr = cur_pcr; + } else { + cur_pcr = -1; } /* check if we need to rewrite pat */ @@ -771,23 +818,45 @@ tsmux_write_stream_packet (TsMux * mux, TsMuxStream * stream) } pi->packet_start_unit_indicator = tsmux_stream_at_pes_start (stream); - if (pi->packet_start_unit_indicator) + if (pi->packet_start_unit_indicator) { tsmux_stream_initialize_pes_packet (stream); + if (stream->dts != -1) + stream->dts += CLOCK_BASE; + if (stream->pts != -1) + stream->pts += CLOCK_BASE; + } pi->stream_avail = tsmux_stream_bytes_avail (stream); - if (!tsmux_write_ts_header (mux->packet_buf, pi, &payload_len, &payload_offs)) + /* obtain buffer */ + if (!tsmux_get_buffer (mux, &buf)) return FALSE; - if (!tsmux_stream_get_data (stream, mux->packet_buf + payload_offs, - payload_len)) - return FALSE; + gst_buffer_map (buf, &map, GST_MAP_READ); + + if (!tsmux_write_ts_header (map.data, pi, &payload_len, &payload_offs)) + goto fail; + - res = tsmux_packet_out (mux); + if (!tsmux_stream_get_data (stream, map.data + payload_offs, payload_len)) + goto fail; + + gst_buffer_unmap (buf, &map); + + res = tsmux_packet_out (mux, buf, cur_pcr); /* Reset all dynamic flags */ stream->pi.flags &= TSMUX_PACKET_FLAG_PES_FULL_HEADER; return res; + + /* ERRORS */ +fail: + { + gst_buffer_unmap (buf, &map); + if (buf) + gst_buffer_unref (buf); + return FALSE; + } } /** @@ -813,6 +882,8 @@ tsmux_write_section (TsMux * mux, TsMuxSection * section) guint payload_remain; guint payload_len, payload_offs; TsMuxPacketInfo *pi; + GstBuffer *buf = NULL; + GstMapInfo map; pi = §ion->pi; @@ -822,45 +893,65 @@ tsmux_write_section (TsMux * mux, TsMuxSection * section) payload_remain = pi->stream_avail; while (payload_remain > 0) { + + /* obtain buffer */ + map.data = NULL; + if (!tsmux_get_buffer (mux, &buf)) + goto fail; + + gst_buffer_map (buf, &map, GST_MAP_WRITE); + if (pi->packet_start_unit_indicator) { /* Need to write an extra single byte start pointer */ pi->stream_avail++; - if (!tsmux_write_ts_header (mux->packet_buf, pi, - &payload_len, &payload_offs)) { + if (!tsmux_write_ts_header (map.data, pi, &payload_len, &payload_offs)) { pi->stream_avail--; - return FALSE; + goto fail; } pi->stream_avail--; /* Write the pointer byte */ - mux->packet_buf[payload_offs] = 0x00; + map.data[payload_offs] = 0x00; payload_offs++; payload_len--; pi->packet_start_unit_indicator = FALSE; } else { - if (!tsmux_write_ts_header (mux->packet_buf, pi, - &payload_len, &payload_offs)) - return FALSE; + if (!tsmux_write_ts_header (map.data, pi, &payload_len, &payload_offs)) + goto fail; } TS_DEBUG ("Outputting %d bytes to section. %d remaining after", payload_len, payload_remain - payload_len); - memcpy (mux->packet_buf + payload_offs, cur_in, payload_len); + memcpy (map.data + payload_offs, cur_in, payload_len); cur_in += payload_len; payload_remain -= payload_len; - if (G_UNLIKELY (!tsmux_packet_out (mux))) { - mux->new_pcr = -1; - return FALSE; + gst_buffer_unmap (buf, &map); + + /* we do not write PCR in section */ + if (G_UNLIKELY (!tsmux_packet_out (mux, buf, -1))) { + /* buffer given away */ + buf = NULL; + goto fail; } - mux->new_pcr = -1; + buf = NULL; } return TRUE; + + /* ERRORS */ +fail: + { + if (map.data && buf) + gst_buffer_unmap (buf, &map); + if (buf) + gst_buffer_unref (buf); + return FALSE; + } } static void diff --git a/gst/mpegtsmux/tsmux/tsmux.h b/gst/mpegtsmux/tsmux/tsmux.h index 175e173a..87634420 100644 --- a/gst/mpegtsmux/tsmux/tsmux.h +++ b/gst/mpegtsmux/tsmux/tsmux.h @@ -99,7 +99,8 @@ G_BEGIN_DECLS typedef struct TsMuxSection TsMuxSection; typedef struct TsMux TsMux; -typedef gboolean (*TsMuxWriteFunc) (guint8 *data, guint len, void *user_data, gint64 new_pcr); +typedef gboolean (*TsMuxWriteFunc) (GstBuffer * buf, void *user_data, gint64 new_pcr); +typedef void (*TsMuxAllocFunc) (GstBuffer ** buf, void *user_data); struct TsMuxSection { TsMuxPacketInfo pi; @@ -159,15 +160,15 @@ struct TsMux { /* last time PAT written in MPEG PTS clock time */ gint64 last_pat_ts; - /* temp packet buffer */ - guint8 packet_buf[TSMUX_PACKET_LENGTH]; /* callback to write finished packet */ TsMuxWriteFunc write_func; void *write_func_data; + /* callback to alloc new packet buffer */ + TsMuxAllocFunc alloc_func; + void *alloc_func_data; /* scratch space for writing ES_info descriptors */ guint8 es_info_buf[TSMUX_MAX_ES_INFO_LENGTH]; - gint64 new_pcr; }; /* create/free new muxer session */ @@ -176,6 +177,7 @@ void tsmux_free (TsMux *mux); /* Setting muxing session properties */ void tsmux_set_write_func (TsMux *mux, TsMuxWriteFunc func, void *user_data); +void tsmux_set_alloc_func (TsMux *mux, TsMuxAllocFunc func, void *user_data); void tsmux_set_pat_interval (TsMux *mux, guint interval); guint tsmux_get_pat_interval (TsMux *mux); guint16 tsmux_get_new_pid (TsMux *mux); diff --git a/gst/mpegtsmux/tsmux/tsmuxcommon.h b/gst/mpegtsmux/tsmux/tsmuxcommon.h index 88d3a49b..296ad97c 100644 --- a/gst/mpegtsmux/tsmux/tsmuxcommon.h +++ b/gst/mpegtsmux/tsmux/tsmuxcommon.h @@ -93,7 +93,7 @@ G_BEGIN_DECLS #define TSMUX_MIN_ES_DESC_LEN 8 /* Frequency for PCR representation */ -#define TSMUX_SYS_CLOCK_FREQ (27000000L) +#define TSMUX_SYS_CLOCK_FREQ ((gint64) 27000000) /* Frequency for PTS values */ #define TSMUX_CLOCK_FREQ (TSMUX_SYS_CLOCK_FREQ / 300) @@ -113,6 +113,7 @@ G_BEGIN_DECLS #define TSMUX_PACKET_FLAG_PES_WRITE_PTS_DTS (1 << 10) #define TSMUX_PACKET_FLAG_PES_WRITE_ESCR (1 << 11) #define TSMUX_PACKET_FLAG_PES_EXT_STREAMID (1 << 12) +#define TSMUX_PACKET_FLAG_PES_DATA_ALIGNMENT (1 << 13) /* PAT interval (1/10th sec) */ #define TSMUX_DEFAULT_PAT_INTERVAL (TSMUX_CLOCK_FREQ / 10) @@ -126,6 +127,7 @@ typedef struct TsMuxStream TsMuxStream; struct TsMuxPacketInfo { guint16 pid; guint32 flags; + guint32 pes_header_length; gboolean packet_start_unit_indicator; diff --git a/gst/mpegtsmux/tsmux/tsmuxstream.c b/gst/mpegtsmux/tsmux/tsmuxstream.c index ac2b7b9c..37540105 100644 --- a/gst/mpegtsmux/tsmux/tsmuxstream.c +++ b/gst/mpegtsmux/tsmux/tsmuxstream.c @@ -175,13 +175,25 @@ tsmux_stream_new (guint16 pid, TsMuxStreamType stream_type) TSMUX_PACKET_FLAG_PES_FULL_HEADER | TSMUX_PACKET_FLAG_PES_EXT_STREAMID; break; + case TSMUX_ST_PS_TELETEXT: + /* needs fixes PES header length */ + stream->pi.pes_header_length = 36; + case TSMUX_ST_PS_DVB_SUBPICTURE: + /* private stream 1 */ + stream->id = 0xBD; + stream->stream_type = TSMUX_ST_PRIVATE_DATA; + stream->pi.flags |= + TSMUX_PACKET_FLAG_PES_FULL_HEADER | + TSMUX_PACKET_FLAG_PES_DATA_ALIGNMENT; + + break; default: g_critical ("Stream type 0x%0x not yet implemented", stream_type); break; } -// stream->last_pts = -1; -// stream->last_dts = -1; + stream->last_pts = -1; + stream->last_dts = -1; stream->pcr_ref = 0; stream->last_pcr = -1; @@ -214,8 +226,20 @@ tsmux_stream_get_pid (TsMuxStream * stream) void tsmux_stream_free (TsMuxStream * stream) { + GList *cur; + g_return_if_fail (stream != NULL); + /* free buffers */ + for (cur = stream->buffers; cur; cur = cur->next) { + TsMuxStreamBuffer *tmbuf = (TsMuxStreamBuffer *) cur->data; + + if (stream->buffer_release) + stream->buffer_release (tmbuf->data, tmbuf->user_data); + g_slice_free (TsMuxStreamBuffer, tmbuf); + } + g_list_free (stream->buffers); + g_slice_free (TsMuxStream, stream); } @@ -379,7 +403,7 @@ tsmux_stream_initialize_pes_packet (TsMuxStream * stream) stream->pi.flags &= ~(TSMUX_PACKET_FLAG_PES_WRITE_PTS_DTS | TSMUX_PACKET_FLAG_PES_WRITE_PTS); - if (stream->pts != -1 && stream->dts != -1) + if (stream->pts != -1 && stream->dts != -1 && stream->pts != stream->dts) stream->pi.flags |= TSMUX_PACKET_FLAG_PES_WRITE_PTS_DTS; else { if (stream->pts != -1) @@ -500,6 +524,11 @@ tsmux_stream_pes_header_length (TsMuxStream * stream) * length + extended stream id */ packet_len += 3; } + if (stream->pi.pes_header_length) { + /* check for consistency, then we can add stuffing */ + g_assert (packet_len <= stream->pi.pes_header_length + 6 + 3); + packet_len = stream->pi.pes_header_length + 6 + 3; + } } return packet_len; @@ -544,6 +573,7 @@ tsmux_stream_write_pes_header (TsMuxStream * stream, guint8 * data) { guint16 length_to_write; guint8 hdr_len = tsmux_stream_pes_header_length (stream); + guint8 *orig_data = data; /* start_code prefix + stream_id + pes_packet_length = 6 bytes */ data[0] = 0x00; @@ -566,7 +596,11 @@ tsmux_stream_write_pes_header (TsMuxStream * stream, guint8 * data) guint8 flags = 0; /* Not scrambled, original, not-copyrighted, data_alignment not specified */ - *data++ = 0x81; + flags = 0x81; + if (stream->pi.flags & TSMUX_PACKET_FLAG_PES_DATA_ALIGNMENT) + flags |= 0x4; + *data++ = flags; + flags = 0; /* Flags */ if (stream->pi.flags & TSMUX_PACKET_FLAG_PES_WRITE_PTS_DTS) @@ -599,6 +633,10 @@ tsmux_stream_write_pes_header (TsMuxStream * stream, guint8 * data) /* Write the extended streamID */ *data++ = stream->id_extended; } + /* write stuffing bytes if fixed PES header length requested */ + if (stream->pi.pes_header_length) + while (data < orig_data + stream->pi.pes_header_length + 9) + *data++ = 0xff; } } @@ -839,6 +877,20 @@ tsmux_stream_get_es_descrs (TsMuxStream * stream, guint8 * buf, guint16 * len) case TSMUX_ST_PS_AUDIO_LPCM: /* FIXME */ break; + case TSMUX_ST_PS_DVB_SUBPICTURE: + /* tag */ + *pos++ = 0x59; + /* FIXME empty descriptor for now; + * should be provided by upstream in event or so ? */ + *pos = 0; + break; + case TSMUX_ST_PS_TELETEXT: + /* tag */ + *pos++ = 0x56; + /* FIXME empty descriptor for now; + * should be provided by upstream in event or so ? */ + *pos = 0; + break; default: break; } diff --git a/gst/mpegtsmux/tsmux/tsmuxstream.h b/gst/mpegtsmux/tsmux/tsmuxstream.h index fb87a134..b0fef23e 100644 --- a/gst/mpegtsmux/tsmux/tsmuxstream.h +++ b/gst/mpegtsmux/tsmux/tsmuxstream.h @@ -138,6 +138,8 @@ enum TsMuxStreamType { TSMUX_ST_PS_AUDIO_AC3 = 0x81, TSMUX_ST_PS_AUDIO_DTS = 0x8a, TSMUX_ST_PS_AUDIO_LPCM = 0x8b, + TSMUX_ST_PS_DVB_SUBPICTURE = 0x8c, + TSMUX_ST_PS_TELETEXT = 0x8d, TSMUX_ST_PS_DVD_SUBPICTURE = 0xff, /* Non-standard definitions */ diff --git a/gst/mve/Makefile.in b/gst/mve/Makefile.in index 03d68686..dc8127af 100644 --- a/gst/mve/Makefile.in +++ b/gst/mve/Makefile.in @@ -1,4 +1,4 @@ -# Makefile.in generated by automake 1.11.5 from Makefile.am. +# Makefile.in generated by automake 1.11.6 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, @@ -241,11 +241,10 @@ DIRECT3D_LIBS = @DIRECT3D_LIBS@ DIRECTDRAW_LIBS = @DIRECTDRAW_LIBS@ DIRECTFB_CFLAGS = @DIRECTFB_CFLAGS@ DIRECTFB_LIBS = @DIRECTFB_LIBS@ +DIRECTSHOW_LIBS = @DIRECTSHOW_LIBS@ DIRECTSOUND_LIBS = @DIRECTSOUND_LIBS@ DIRECTX_CFLAGS = @DIRECTX_CFLAGS@ DIRECTX_LDFLAGS = @DIRECTX_LDFLAGS@ -DIVXDEC_LIBS = @DIVXDEC_LIBS@ -DIVXENC_LIBS = @DIVXENC_LIBS@ DLLTOOL = @DLLTOOL@ DSYMUTIL = @DSYMUTIL@ DTS_LIBS = @DTS_LIBS@ @@ -280,7 +279,9 @@ GIO_LIBS = @GIO_LIBS@ GLIB_CFLAGS = @GLIB_CFLAGS@ GLIB_COMPILE_SCHEMAS = @GLIB_COMPILE_SCHEMAS@ GLIB_EXTRA_CFLAGS = @GLIB_EXTRA_CFLAGS@ +GLIB_GENMARSHAL = @GLIB_GENMARSHAL@ GLIB_LIBS = @GLIB_LIBS@ +GLIB_MKENUMS = @GLIB_MKENUMS@ GLIB_PREFIX = @GLIB_PREFIX@ GLIB_REQ = @GLIB_REQ@ GME_LIBS = @GME_LIBS@ @@ -356,13 +357,14 @@ HAVE_CXX = @HAVE_CXX@ HAVE_DIRECT3D = @HAVE_DIRECT3D@ HAVE_DIRECT3D9 = @HAVE_DIRECT3D9@ HAVE_DIRECTDRAW = @HAVE_DIRECTDRAW@ +HAVE_DIRECTSHOW = @HAVE_DIRECTSHOW@ HAVE_DIRECTSOUND = @HAVE_DIRECTSOUND@ HAVE_DTS = @HAVE_DTS@ HAVE_FAAC = @HAVE_FAAC@ HAVE_FAAD = @HAVE_FAAD@ HAVE_FLITE = @HAVE_FLITE@ HAVE_GSM = @HAVE_GSM@ -HAVE_JP2K = @HAVE_JP2K@ +HAVE_JASPER = @HAVE_JASPER@ HAVE_NAS = @HAVE_NAS@ HAVE_VPX = @HAVE_VPX@ HAVE_WILDMIDI = @HAVE_WILDMIDI@ @@ -376,7 +378,7 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ INTLLIBS = @INTLLIBS@ INTL_MACOSX_LIBS = @INTL_MACOSX_LIBS@ -JP2K_LIBS = @JP2K_LIBS@ +JASPER_LIBS = @JASPER_LIBS@ KATE_CFLAGS = @KATE_CFLAGS@ KATE_LIBS = @KATE_LIBS@ LD = @LD@ @@ -412,6 +414,8 @@ MODPLUG_CFLAGS = @MODPLUG_CFLAGS@ MODPLUG_LIBS = @MODPLUG_LIBS@ MPEG2ENC_CFLAGS = @MPEG2ENC_CFLAGS@ MPEG2ENC_LIBS = @MPEG2ENC_LIBS@ +MPG123_CFLAGS = @MPG123_CFLAGS@ +MPG123_LIBS = @MPG123_LIBS@ MPLEX_CFLAGS = @MPLEX_CFLAGS@ MPLEX_LDFLAGS = @MPLEX_LDFLAGS@ MPLEX_LIBS = @MPLEX_LIBS@ diff --git a/gst/mxf/Makefile.in b/gst/mxf/Makefile.in index 6f04db9b..b7143332 100644 --- a/gst/mxf/Makefile.in +++ b/gst/mxf/Makefile.in @@ -1,4 +1,4 @@ -# Makefile.in generated by automake 1.11.5 from Makefile.am. +# Makefile.in generated by automake 1.11.6 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, @@ -245,11 +245,10 @@ DIRECT3D_LIBS = @DIRECT3D_LIBS@ DIRECTDRAW_LIBS = @DIRECTDRAW_LIBS@ DIRECTFB_CFLAGS = @DIRECTFB_CFLAGS@ DIRECTFB_LIBS = @DIRECTFB_LIBS@ +DIRECTSHOW_LIBS = @DIRECTSHOW_LIBS@ DIRECTSOUND_LIBS = @DIRECTSOUND_LIBS@ DIRECTX_CFLAGS = @DIRECTX_CFLAGS@ DIRECTX_LDFLAGS = @DIRECTX_LDFLAGS@ -DIVXDEC_LIBS = @DIVXDEC_LIBS@ -DIVXENC_LIBS = @DIVXENC_LIBS@ DLLTOOL = @DLLTOOL@ DSYMUTIL = @DSYMUTIL@ DTS_LIBS = @DTS_LIBS@ @@ -284,7 +283,9 @@ GIO_LIBS = @GIO_LIBS@ GLIB_CFLAGS = @GLIB_CFLAGS@ GLIB_COMPILE_SCHEMAS = @GLIB_COMPILE_SCHEMAS@ GLIB_EXTRA_CFLAGS = @GLIB_EXTRA_CFLAGS@ +GLIB_GENMARSHAL = @GLIB_GENMARSHAL@ GLIB_LIBS = @GLIB_LIBS@ +GLIB_MKENUMS = @GLIB_MKENUMS@ GLIB_PREFIX = @GLIB_PREFIX@ GLIB_REQ = @GLIB_REQ@ GME_LIBS = @GME_LIBS@ @@ -360,13 +361,14 @@ HAVE_CXX = @HAVE_CXX@ HAVE_DIRECT3D = @HAVE_DIRECT3D@ HAVE_DIRECT3D9 = @HAVE_DIRECT3D9@ HAVE_DIRECTDRAW = @HAVE_DIRECTDRAW@ +HAVE_DIRECTSHOW = @HAVE_DIRECTSHOW@ HAVE_DIRECTSOUND = @HAVE_DIRECTSOUND@ HAVE_DTS = @HAVE_DTS@ HAVE_FAAC = @HAVE_FAAC@ HAVE_FAAD = @HAVE_FAAD@ HAVE_FLITE = @HAVE_FLITE@ HAVE_GSM = @HAVE_GSM@ -HAVE_JP2K = @HAVE_JP2K@ +HAVE_JASPER = @HAVE_JASPER@ HAVE_NAS = @HAVE_NAS@ HAVE_VPX = @HAVE_VPX@ HAVE_WILDMIDI = @HAVE_WILDMIDI@ @@ -380,7 +382,7 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ INTLLIBS = @INTLLIBS@ INTL_MACOSX_LIBS = @INTL_MACOSX_LIBS@ -JP2K_LIBS = @JP2K_LIBS@ +JASPER_LIBS = @JASPER_LIBS@ KATE_CFLAGS = @KATE_CFLAGS@ KATE_LIBS = @KATE_LIBS@ LD = @LD@ @@ -416,6 +418,8 @@ MODPLUG_CFLAGS = @MODPLUG_CFLAGS@ MODPLUG_LIBS = @MODPLUG_LIBS@ MPEG2ENC_CFLAGS = @MPEG2ENC_CFLAGS@ MPEG2ENC_LIBS = @MPEG2ENC_LIBS@ +MPG123_CFLAGS = @MPG123_CFLAGS@ +MPG123_LIBS = @MPG123_LIBS@ MPLEX_CFLAGS = @MPLEX_CFLAGS@ MPLEX_LDFLAGS = @MPLEX_LDFLAGS@ MPLEX_LIBS = @MPLEX_LIBS@ diff --git a/gst/mxf/mxfdemux.c b/gst/mxf/mxfdemux.c index e11a568a..e129ab52 100644 --- a/gst/mxf/mxfdemux.c +++ b/gst/mxf/mxfdemux.c @@ -87,7 +87,7 @@ gst_mxf_demux_pad_finalize (GObject * object) GstMXFDemuxPad *pad = GST_MXF_DEMUX_PAD (object); if (pad->tags) { - gst_tag_list_free (pad->tags); + gst_tag_list_unref (pad->tags); pad->tags = NULL; } @@ -171,7 +171,7 @@ gst_mxf_demux_reset_mxf_state (GstMXFDemux * demux) g_free (t->mapping_data); if (t->tags) - gst_tag_list_free (t->tags); + gst_tag_list_unref (t->tags); if (t->caps) gst_caps_unref (t->caps); @@ -763,7 +763,7 @@ gst_mxf_demux_update_essence_tracks (GstMXFDemux * demux) etrack->handler = NULL; etrack->handle_func = NULL; if (etrack->tags) - gst_tag_list_free (etrack->tags); + gst_tag_list_unref (etrack->tags); etrack->tags = NULL; etrack->handler = mxf_essence_element_handler_find (track); @@ -828,7 +828,7 @@ gst_mxf_demux_update_essence_tracks (GstMXFDemux * demux) g_free (etrack->mapping_data); etrack->mapping_data = NULL; if (etrack->tags) - gst_tag_list_free (etrack->tags); + gst_tag_list_unref (etrack->tags); goto next; } else if (!caps) { GST_WARNING_OBJECT (demux, "Couldn't create updated caps for stream"); @@ -849,7 +849,7 @@ gst_mxf_demux_update_essence_tracks (GstMXFDemux * demux) if (new) { g_free (etrack->mapping_data); if (etrack->tags) - gst_tag_list_free (etrack->tags); + gst_tag_list_unref (etrack->tags); if (etrack->caps) gst_caps_unref (etrack->caps); @@ -2773,6 +2773,7 @@ pause: if (demux->segment.flags & GST_SEEK_FLAG_SEGMENT) { gint64 stop; GstMessage *m; + GstEvent *e; /* for segment playback we need to post when (in stream time) * we stopped, this is either stop (when set) or the duration. */ @@ -2784,6 +2785,9 @@ pause: GST_FORMAT_TIME, stop); gst_message_set_seqnum (m, demux->seqnum); gst_element_post_message (GST_ELEMENT_CAST (demux), m); + e = gst_event_new_segment_done (GST_FORMAT_TIME, stop); + gst_event_set_seqnum (e, demux->seqnum); + gst_mxf_demux_push_src_event (demux, e); } else { GstEvent *e; @@ -3360,7 +3364,7 @@ gst_mxf_demux_seek_pull (GstMXFDemux * demux, GstEvent * event) demux->seqnum = seqnum; gst_pad_start_task (demux->sinkpad, - (GstTaskFunction) gst_mxf_demux_loop, demux->sinkpad); + (GstTaskFunction) gst_mxf_demux_loop, demux->sinkpad, NULL); GST_PAD_STREAM_UNLOCK (demux->sinkpad); @@ -3380,7 +3384,7 @@ wrong_rate: unresolved_metadata: { gst_pad_start_task (demux->sinkpad, - (GstTaskFunction) gst_mxf_demux_loop, demux->sinkpad); + (GstTaskFunction) gst_mxf_demux_loop, demux->sinkpad, NULL); GST_PAD_STREAM_UNLOCK (demux->sinkpad); GST_WARNING_OBJECT (demux, "metadata can't be resolved"); return FALSE; @@ -3592,7 +3596,7 @@ gst_mxf_demux_sink_activate_pull (GstPad * sinkpad, gboolean active) demux->random_access = TRUE; gst_object_unref (demux); return gst_pad_start_task (sinkpad, (GstTaskFunction) gst_mxf_demux_loop, - sinkpad); + sinkpad, NULL); } else { demux->random_access = FALSE; gst_object_unref (demux); diff --git a/gst/nsf/Makefile.in b/gst/nsf/Makefile.in index 11255064..6eb78ca3 100644 --- a/gst/nsf/Makefile.in +++ b/gst/nsf/Makefile.in @@ -1,4 +1,4 @@ -# Makefile.in generated by automake 1.11.5 from Makefile.am. +# Makefile.in generated by automake 1.11.6 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, @@ -242,11 +242,10 @@ DIRECT3D_LIBS = @DIRECT3D_LIBS@ DIRECTDRAW_LIBS = @DIRECTDRAW_LIBS@ DIRECTFB_CFLAGS = @DIRECTFB_CFLAGS@ DIRECTFB_LIBS = @DIRECTFB_LIBS@ +DIRECTSHOW_LIBS = @DIRECTSHOW_LIBS@ DIRECTSOUND_LIBS = @DIRECTSOUND_LIBS@ DIRECTX_CFLAGS = @DIRECTX_CFLAGS@ DIRECTX_LDFLAGS = @DIRECTX_LDFLAGS@ -DIVXDEC_LIBS = @DIVXDEC_LIBS@ -DIVXENC_LIBS = @DIVXENC_LIBS@ DLLTOOL = @DLLTOOL@ DSYMUTIL = @DSYMUTIL@ DTS_LIBS = @DTS_LIBS@ @@ -281,7 +280,9 @@ GIO_LIBS = @GIO_LIBS@ GLIB_CFLAGS = @GLIB_CFLAGS@ GLIB_COMPILE_SCHEMAS = @GLIB_COMPILE_SCHEMAS@ GLIB_EXTRA_CFLAGS = @GLIB_EXTRA_CFLAGS@ +GLIB_GENMARSHAL = @GLIB_GENMARSHAL@ GLIB_LIBS = @GLIB_LIBS@ +GLIB_MKENUMS = @GLIB_MKENUMS@ GLIB_PREFIX = @GLIB_PREFIX@ GLIB_REQ = @GLIB_REQ@ GME_LIBS = @GME_LIBS@ @@ -357,13 +358,14 @@ HAVE_CXX = @HAVE_CXX@ HAVE_DIRECT3D = @HAVE_DIRECT3D@ HAVE_DIRECT3D9 = @HAVE_DIRECT3D9@ HAVE_DIRECTDRAW = @HAVE_DIRECTDRAW@ +HAVE_DIRECTSHOW = @HAVE_DIRECTSHOW@ HAVE_DIRECTSOUND = @HAVE_DIRECTSOUND@ HAVE_DTS = @HAVE_DTS@ HAVE_FAAC = @HAVE_FAAC@ HAVE_FAAD = @HAVE_FAAD@ HAVE_FLITE = @HAVE_FLITE@ HAVE_GSM = @HAVE_GSM@ -HAVE_JP2K = @HAVE_JP2K@ +HAVE_JASPER = @HAVE_JASPER@ HAVE_NAS = @HAVE_NAS@ HAVE_VPX = @HAVE_VPX@ HAVE_WILDMIDI = @HAVE_WILDMIDI@ @@ -377,7 +379,7 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ INTLLIBS = @INTLLIBS@ INTL_MACOSX_LIBS = @INTL_MACOSX_LIBS@ -JP2K_LIBS = @JP2K_LIBS@ +JASPER_LIBS = @JASPER_LIBS@ KATE_CFLAGS = @KATE_CFLAGS@ KATE_LIBS = @KATE_LIBS@ LD = @LD@ @@ -413,6 +415,8 @@ MODPLUG_CFLAGS = @MODPLUG_CFLAGS@ MODPLUG_LIBS = @MODPLUG_LIBS@ MPEG2ENC_CFLAGS = @MPEG2ENC_CFLAGS@ MPEG2ENC_LIBS = @MPEG2ENC_LIBS@ +MPG123_CFLAGS = @MPG123_CFLAGS@ +MPG123_LIBS = @MPG123_LIBS@ MPLEX_CFLAGS = @MPLEX_CFLAGS@ MPLEX_LDFLAGS = @MPLEX_LDFLAGS@ MPLEX_LIBS = @MPLEX_LIBS@ diff --git a/gst/nsf/gstnsf.c b/gst/nsf/gstnsf.c index 5a22cd99..a041554f 100644 --- a/gst/nsf/gstnsf.c +++ b/gst/nsf/gstnsf.c @@ -211,7 +211,7 @@ gst_nsfdec_finalize (GObject * object) gst_buffer_unref (nsfdec->tune_buffer); if (nsfdec->taglist) - gst_tag_list_free (nsfdec->taglist); + gst_tag_list_unref (nsfdec->taglist); G_OBJECT_CLASS (parent_class)->finalize (object); } @@ -397,7 +397,7 @@ start_play_tune (GstNsfDec * nsfdec) gst_event_new_new_segment (FALSE, 1.0, GST_FORMAT_TIME, 0, -1, 0)); res = gst_pad_start_task (nsfdec->srcpad, - (GstTaskFunction) play_loop, nsfdec->srcpad); + (GstTaskFunction) play_loop, nsfdec->srcpad, NULL); return res; diff --git a/gst/nuvdemux/Makefile.in b/gst/nuvdemux/Makefile.in index 5139a631..92a27644 100644 --- a/gst/nuvdemux/Makefile.in +++ b/gst/nuvdemux/Makefile.in @@ -1,4 +1,4 @@ -# Makefile.in generated by automake 1.11.5 from Makefile.am. +# Makefile.in generated by automake 1.11.6 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, @@ -236,11 +236,10 @@ DIRECT3D_LIBS = @DIRECT3D_LIBS@ DIRECTDRAW_LIBS = @DIRECTDRAW_LIBS@ DIRECTFB_CFLAGS = @DIRECTFB_CFLAGS@ DIRECTFB_LIBS = @DIRECTFB_LIBS@ +DIRECTSHOW_LIBS = @DIRECTSHOW_LIBS@ DIRECTSOUND_LIBS = @DIRECTSOUND_LIBS@ DIRECTX_CFLAGS = @DIRECTX_CFLAGS@ DIRECTX_LDFLAGS = @DIRECTX_LDFLAGS@ -DIVXDEC_LIBS = @DIVXDEC_LIBS@ -DIVXENC_LIBS = @DIVXENC_LIBS@ DLLTOOL = @DLLTOOL@ DSYMUTIL = @DSYMUTIL@ DTS_LIBS = @DTS_LIBS@ @@ -275,7 +274,9 @@ GIO_LIBS = @GIO_LIBS@ GLIB_CFLAGS = @GLIB_CFLAGS@ GLIB_COMPILE_SCHEMAS = @GLIB_COMPILE_SCHEMAS@ GLIB_EXTRA_CFLAGS = @GLIB_EXTRA_CFLAGS@ +GLIB_GENMARSHAL = @GLIB_GENMARSHAL@ GLIB_LIBS = @GLIB_LIBS@ +GLIB_MKENUMS = @GLIB_MKENUMS@ GLIB_PREFIX = @GLIB_PREFIX@ GLIB_REQ = @GLIB_REQ@ GME_LIBS = @GME_LIBS@ @@ -351,13 +352,14 @@ HAVE_CXX = @HAVE_CXX@ HAVE_DIRECT3D = @HAVE_DIRECT3D@ HAVE_DIRECT3D9 = @HAVE_DIRECT3D9@ HAVE_DIRECTDRAW = @HAVE_DIRECTDRAW@ +HAVE_DIRECTSHOW = @HAVE_DIRECTSHOW@ HAVE_DIRECTSOUND = @HAVE_DIRECTSOUND@ HAVE_DTS = @HAVE_DTS@ HAVE_FAAC = @HAVE_FAAC@ HAVE_FAAD = @HAVE_FAAD@ HAVE_FLITE = @HAVE_FLITE@ HAVE_GSM = @HAVE_GSM@ -HAVE_JP2K = @HAVE_JP2K@ +HAVE_JASPER = @HAVE_JASPER@ HAVE_NAS = @HAVE_NAS@ HAVE_VPX = @HAVE_VPX@ HAVE_WILDMIDI = @HAVE_WILDMIDI@ @@ -371,7 +373,7 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ INTLLIBS = @INTLLIBS@ INTL_MACOSX_LIBS = @INTL_MACOSX_LIBS@ -JP2K_LIBS = @JP2K_LIBS@ +JASPER_LIBS = @JASPER_LIBS@ KATE_CFLAGS = @KATE_CFLAGS@ KATE_LIBS = @KATE_LIBS@ LD = @LD@ @@ -407,6 +409,8 @@ MODPLUG_CFLAGS = @MODPLUG_CFLAGS@ MODPLUG_LIBS = @MODPLUG_LIBS@ MPEG2ENC_CFLAGS = @MPEG2ENC_CFLAGS@ MPEG2ENC_LIBS = @MPEG2ENC_LIBS@ +MPG123_CFLAGS = @MPG123_CFLAGS@ +MPG123_LIBS = @MPG123_LIBS@ MPLEX_CFLAGS = @MPLEX_CFLAGS@ MPLEX_LDFLAGS = @MPLEX_LDFLAGS@ MPLEX_LIBS = @MPLEX_LIBS@ diff --git a/gst/nuvdemux/gstnuvdemux.c b/gst/nuvdemux/gstnuvdemux.c index e3b8fd93..b59b8e70 100644 --- a/gst/nuvdemux/gstnuvdemux.c +++ b/gst/nuvdemux/gstnuvdemux.c @@ -824,7 +824,8 @@ gst_nuv_demux_sink_activate_pull (GstPad * sinkpad, gboolean active) GstNuvDemux *nuv = GST_NUV_DEMUX (gst_pad_get_parent (sinkpad)); if (active) { - gst_pad_start_task (sinkpad, (GstTaskFunction) gst_nuv_demux_loop, sinkpad); + gst_pad_start_task (sinkpad, (GstTaskFunction) gst_nuv_demux_loop, sinkpad, + NULL); } else { gst_pad_stop_task (sinkpad); } diff --git a/gst/patchdetect/Makefile.in b/gst/patchdetect/Makefile.in index f0cfad26..453fe712 100644 --- a/gst/patchdetect/Makefile.in +++ b/gst/patchdetect/Makefile.in @@ -1,4 +1,4 @@ -# Makefile.in generated by automake 1.11.5 from Makefile.am. +# Makefile.in generated by automake 1.11.6 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, @@ -239,11 +239,10 @@ DIRECT3D_LIBS = @DIRECT3D_LIBS@ DIRECTDRAW_LIBS = @DIRECTDRAW_LIBS@ DIRECTFB_CFLAGS = @DIRECTFB_CFLAGS@ DIRECTFB_LIBS = @DIRECTFB_LIBS@ +DIRECTSHOW_LIBS = @DIRECTSHOW_LIBS@ DIRECTSOUND_LIBS = @DIRECTSOUND_LIBS@ DIRECTX_CFLAGS = @DIRECTX_CFLAGS@ DIRECTX_LDFLAGS = @DIRECTX_LDFLAGS@ -DIVXDEC_LIBS = @DIVXDEC_LIBS@ -DIVXENC_LIBS = @DIVXENC_LIBS@ DLLTOOL = @DLLTOOL@ DSYMUTIL = @DSYMUTIL@ DTS_LIBS = @DTS_LIBS@ @@ -278,7 +277,9 @@ GIO_LIBS = @GIO_LIBS@ GLIB_CFLAGS = @GLIB_CFLAGS@ GLIB_COMPILE_SCHEMAS = @GLIB_COMPILE_SCHEMAS@ GLIB_EXTRA_CFLAGS = @GLIB_EXTRA_CFLAGS@ +GLIB_GENMARSHAL = @GLIB_GENMARSHAL@ GLIB_LIBS = @GLIB_LIBS@ +GLIB_MKENUMS = @GLIB_MKENUMS@ GLIB_PREFIX = @GLIB_PREFIX@ GLIB_REQ = @GLIB_REQ@ GME_LIBS = @GME_LIBS@ @@ -354,13 +355,14 @@ HAVE_CXX = @HAVE_CXX@ HAVE_DIRECT3D = @HAVE_DIRECT3D@ HAVE_DIRECT3D9 = @HAVE_DIRECT3D9@ HAVE_DIRECTDRAW = @HAVE_DIRECTDRAW@ +HAVE_DIRECTSHOW = @HAVE_DIRECTSHOW@ HAVE_DIRECTSOUND = @HAVE_DIRECTSOUND@ HAVE_DTS = @HAVE_DTS@ HAVE_FAAC = @HAVE_FAAC@ HAVE_FAAD = @HAVE_FAAD@ HAVE_FLITE = @HAVE_FLITE@ HAVE_GSM = @HAVE_GSM@ -HAVE_JP2K = @HAVE_JP2K@ +HAVE_JASPER = @HAVE_JASPER@ HAVE_NAS = @HAVE_NAS@ HAVE_VPX = @HAVE_VPX@ HAVE_WILDMIDI = @HAVE_WILDMIDI@ @@ -374,7 +376,7 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ INTLLIBS = @INTLLIBS@ INTL_MACOSX_LIBS = @INTL_MACOSX_LIBS@ -JP2K_LIBS = @JP2K_LIBS@ +JASPER_LIBS = @JASPER_LIBS@ KATE_CFLAGS = @KATE_CFLAGS@ KATE_LIBS = @KATE_LIBS@ LD = @LD@ @@ -410,6 +412,8 @@ MODPLUG_CFLAGS = @MODPLUG_CFLAGS@ MODPLUG_LIBS = @MODPLUG_LIBS@ MPEG2ENC_CFLAGS = @MPEG2ENC_CFLAGS@ MPEG2ENC_LIBS = @MPEG2ENC_LIBS@ +MPG123_CFLAGS = @MPG123_CFLAGS@ +MPG123_LIBS = @MPG123_LIBS@ MPLEX_CFLAGS = @MPLEX_CFLAGS@ MPLEX_LDFLAGS = @MPLEX_LDFLAGS@ MPLEX_LIBS = @MPLEX_LIBS@ diff --git a/gst/pcapparse/Makefile.in b/gst/pcapparse/Makefile.in index 89c1eb4a..d092c5c1 100644 --- a/gst/pcapparse/Makefile.in +++ b/gst/pcapparse/Makefile.in @@ -1,4 +1,4 @@ -# Makefile.in generated by automake 1.11.5 from Makefile.am. +# Makefile.in generated by automake 1.11.6 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, @@ -239,11 +239,10 @@ DIRECT3D_LIBS = @DIRECT3D_LIBS@ DIRECTDRAW_LIBS = @DIRECTDRAW_LIBS@ DIRECTFB_CFLAGS = @DIRECTFB_CFLAGS@ DIRECTFB_LIBS = @DIRECTFB_LIBS@ +DIRECTSHOW_LIBS = @DIRECTSHOW_LIBS@ DIRECTSOUND_LIBS = @DIRECTSOUND_LIBS@ DIRECTX_CFLAGS = @DIRECTX_CFLAGS@ DIRECTX_LDFLAGS = @DIRECTX_LDFLAGS@ -DIVXDEC_LIBS = @DIVXDEC_LIBS@ -DIVXENC_LIBS = @DIVXENC_LIBS@ DLLTOOL = @DLLTOOL@ DSYMUTIL = @DSYMUTIL@ DTS_LIBS = @DTS_LIBS@ @@ -278,7 +277,9 @@ GIO_LIBS = @GIO_LIBS@ GLIB_CFLAGS = @GLIB_CFLAGS@ GLIB_COMPILE_SCHEMAS = @GLIB_COMPILE_SCHEMAS@ GLIB_EXTRA_CFLAGS = @GLIB_EXTRA_CFLAGS@ +GLIB_GENMARSHAL = @GLIB_GENMARSHAL@ GLIB_LIBS = @GLIB_LIBS@ +GLIB_MKENUMS = @GLIB_MKENUMS@ GLIB_PREFIX = @GLIB_PREFIX@ GLIB_REQ = @GLIB_REQ@ GME_LIBS = @GME_LIBS@ @@ -354,13 +355,14 @@ HAVE_CXX = @HAVE_CXX@ HAVE_DIRECT3D = @HAVE_DIRECT3D@ HAVE_DIRECT3D9 = @HAVE_DIRECT3D9@ HAVE_DIRECTDRAW = @HAVE_DIRECTDRAW@ +HAVE_DIRECTSHOW = @HAVE_DIRECTSHOW@ HAVE_DIRECTSOUND = @HAVE_DIRECTSOUND@ HAVE_DTS = @HAVE_DTS@ HAVE_FAAC = @HAVE_FAAC@ HAVE_FAAD = @HAVE_FAAD@ HAVE_FLITE = @HAVE_FLITE@ HAVE_GSM = @HAVE_GSM@ -HAVE_JP2K = @HAVE_JP2K@ +HAVE_JASPER = @HAVE_JASPER@ HAVE_NAS = @HAVE_NAS@ HAVE_VPX = @HAVE_VPX@ HAVE_WILDMIDI = @HAVE_WILDMIDI@ @@ -374,7 +376,7 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ INTLLIBS = @INTLLIBS@ INTL_MACOSX_LIBS = @INTL_MACOSX_LIBS@ -JP2K_LIBS = @JP2K_LIBS@ +JASPER_LIBS = @JASPER_LIBS@ KATE_CFLAGS = @KATE_CFLAGS@ KATE_LIBS = @KATE_LIBS@ LD = @LD@ @@ -410,6 +412,8 @@ MODPLUG_CFLAGS = @MODPLUG_CFLAGS@ MODPLUG_LIBS = @MODPLUG_LIBS@ MPEG2ENC_CFLAGS = @MPEG2ENC_CFLAGS@ MPEG2ENC_LIBS = @MPEG2ENC_LIBS@ +MPG123_CFLAGS = @MPG123_CFLAGS@ +MPG123_LIBS = @MPG123_LIBS@ MPLEX_CFLAGS = @MPLEX_CFLAGS@ MPLEX_LDFLAGS = @MPLEX_LDFLAGS@ MPLEX_LIBS = @MPLEX_LIBS@ diff --git a/gst/pnm/Makefile.in b/gst/pnm/Makefile.in index 9d9b5dd4..7f136363 100644 --- a/gst/pnm/Makefile.in +++ b/gst/pnm/Makefile.in @@ -1,4 +1,4 @@ -# Makefile.in generated by automake 1.11.5 from Makefile.am. +# Makefile.in generated by automake 1.11.6 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, @@ -239,11 +239,10 @@ DIRECT3D_LIBS = @DIRECT3D_LIBS@ DIRECTDRAW_LIBS = @DIRECTDRAW_LIBS@ DIRECTFB_CFLAGS = @DIRECTFB_CFLAGS@ DIRECTFB_LIBS = @DIRECTFB_LIBS@ +DIRECTSHOW_LIBS = @DIRECTSHOW_LIBS@ DIRECTSOUND_LIBS = @DIRECTSOUND_LIBS@ DIRECTX_CFLAGS = @DIRECTX_CFLAGS@ DIRECTX_LDFLAGS = @DIRECTX_LDFLAGS@ -DIVXDEC_LIBS = @DIVXDEC_LIBS@ -DIVXENC_LIBS = @DIVXENC_LIBS@ DLLTOOL = @DLLTOOL@ DSYMUTIL = @DSYMUTIL@ DTS_LIBS = @DTS_LIBS@ @@ -278,7 +277,9 @@ GIO_LIBS = @GIO_LIBS@ GLIB_CFLAGS = @GLIB_CFLAGS@ GLIB_COMPILE_SCHEMAS = @GLIB_COMPILE_SCHEMAS@ GLIB_EXTRA_CFLAGS = @GLIB_EXTRA_CFLAGS@ +GLIB_GENMARSHAL = @GLIB_GENMARSHAL@ GLIB_LIBS = @GLIB_LIBS@ +GLIB_MKENUMS = @GLIB_MKENUMS@ GLIB_PREFIX = @GLIB_PREFIX@ GLIB_REQ = @GLIB_REQ@ GME_LIBS = @GME_LIBS@ @@ -354,13 +355,14 @@ HAVE_CXX = @HAVE_CXX@ HAVE_DIRECT3D = @HAVE_DIRECT3D@ HAVE_DIRECT3D9 = @HAVE_DIRECT3D9@ HAVE_DIRECTDRAW = @HAVE_DIRECTDRAW@ +HAVE_DIRECTSHOW = @HAVE_DIRECTSHOW@ HAVE_DIRECTSOUND = @HAVE_DIRECTSOUND@ HAVE_DTS = @HAVE_DTS@ HAVE_FAAC = @HAVE_FAAC@ HAVE_FAAD = @HAVE_FAAD@ HAVE_FLITE = @HAVE_FLITE@ HAVE_GSM = @HAVE_GSM@ -HAVE_JP2K = @HAVE_JP2K@ +HAVE_JASPER = @HAVE_JASPER@ HAVE_NAS = @HAVE_NAS@ HAVE_VPX = @HAVE_VPX@ HAVE_WILDMIDI = @HAVE_WILDMIDI@ @@ -374,7 +376,7 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ INTLLIBS = @INTLLIBS@ INTL_MACOSX_LIBS = @INTL_MACOSX_LIBS@ -JP2K_LIBS = @JP2K_LIBS@ +JASPER_LIBS = @JASPER_LIBS@ KATE_CFLAGS = @KATE_CFLAGS@ KATE_LIBS = @KATE_LIBS@ LD = @LD@ @@ -410,6 +412,8 @@ MODPLUG_CFLAGS = @MODPLUG_CFLAGS@ MODPLUG_LIBS = @MODPLUG_LIBS@ MPEG2ENC_CFLAGS = @MPEG2ENC_CFLAGS@ MPEG2ENC_LIBS = @MPEG2ENC_LIBS@ +MPG123_CFLAGS = @MPG123_CFLAGS@ +MPG123_LIBS = @MPG123_LIBS@ MPLEX_CFLAGS = @MPLEX_CFLAGS@ MPLEX_LDFLAGS = @MPLEX_LDFLAGS@ MPLEX_LIBS = @MPLEX_LIBS@ diff --git a/gst/rawparse/Makefile.in b/gst/rawparse/Makefile.in index 213ff6da..333db57b 100644 --- a/gst/rawparse/Makefile.in +++ b/gst/rawparse/Makefile.in @@ -1,4 +1,4 @@ -# Makefile.in generated by automake 1.11.5 from Makefile.am. +# Makefile.in generated by automake 1.11.6 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, @@ -239,11 +239,10 @@ DIRECT3D_LIBS = @DIRECT3D_LIBS@ DIRECTDRAW_LIBS = @DIRECTDRAW_LIBS@ DIRECTFB_CFLAGS = @DIRECTFB_CFLAGS@ DIRECTFB_LIBS = @DIRECTFB_LIBS@ +DIRECTSHOW_LIBS = @DIRECTSHOW_LIBS@ DIRECTSOUND_LIBS = @DIRECTSOUND_LIBS@ DIRECTX_CFLAGS = @DIRECTX_CFLAGS@ DIRECTX_LDFLAGS = @DIRECTX_LDFLAGS@ -DIVXDEC_LIBS = @DIVXDEC_LIBS@ -DIVXENC_LIBS = @DIVXENC_LIBS@ DLLTOOL = @DLLTOOL@ DSYMUTIL = @DSYMUTIL@ DTS_LIBS = @DTS_LIBS@ @@ -278,7 +277,9 @@ GIO_LIBS = @GIO_LIBS@ GLIB_CFLAGS = @GLIB_CFLAGS@ GLIB_COMPILE_SCHEMAS = @GLIB_COMPILE_SCHEMAS@ GLIB_EXTRA_CFLAGS = @GLIB_EXTRA_CFLAGS@ +GLIB_GENMARSHAL = @GLIB_GENMARSHAL@ GLIB_LIBS = @GLIB_LIBS@ +GLIB_MKENUMS = @GLIB_MKENUMS@ GLIB_PREFIX = @GLIB_PREFIX@ GLIB_REQ = @GLIB_REQ@ GME_LIBS = @GME_LIBS@ @@ -354,13 +355,14 @@ HAVE_CXX = @HAVE_CXX@ HAVE_DIRECT3D = @HAVE_DIRECT3D@ HAVE_DIRECT3D9 = @HAVE_DIRECT3D9@ HAVE_DIRECTDRAW = @HAVE_DIRECTDRAW@ +HAVE_DIRECTSHOW = @HAVE_DIRECTSHOW@ HAVE_DIRECTSOUND = @HAVE_DIRECTSOUND@ HAVE_DTS = @HAVE_DTS@ HAVE_FAAC = @HAVE_FAAC@ HAVE_FAAD = @HAVE_FAAD@ HAVE_FLITE = @HAVE_FLITE@ HAVE_GSM = @HAVE_GSM@ -HAVE_JP2K = @HAVE_JP2K@ +HAVE_JASPER = @HAVE_JASPER@ HAVE_NAS = @HAVE_NAS@ HAVE_VPX = @HAVE_VPX@ HAVE_WILDMIDI = @HAVE_WILDMIDI@ @@ -374,7 +376,7 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ INTLLIBS = @INTLLIBS@ INTL_MACOSX_LIBS = @INTL_MACOSX_LIBS@ -JP2K_LIBS = @JP2K_LIBS@ +JASPER_LIBS = @JASPER_LIBS@ KATE_CFLAGS = @KATE_CFLAGS@ KATE_LIBS = @KATE_LIBS@ LD = @LD@ @@ -410,6 +412,8 @@ MODPLUG_CFLAGS = @MODPLUG_CFLAGS@ MODPLUG_LIBS = @MODPLUG_LIBS@ MPEG2ENC_CFLAGS = @MPEG2ENC_CFLAGS@ MPEG2ENC_LIBS = @MPEG2ENC_LIBS@ +MPG123_CFLAGS = @MPG123_CFLAGS@ +MPG123_LIBS = @MPG123_LIBS@ MPLEX_CFLAGS = @MPLEX_CFLAGS@ MPLEX_LDFLAGS = @MPLEX_LDFLAGS@ MPLEX_LIBS = @MPLEX_LIBS@ diff --git a/gst/rawparse/gstrawparse.c b/gst/rawparse/gstrawparse.c index 2db07a63..2e3765cb 100644 --- a/gst/rawparse/gstrawparse.c +++ b/gst/rawparse/gstrawparse.c @@ -436,6 +436,8 @@ pause: gst_element_post_message (GST_ELEMENT_CAST (rp), gst_message_new_segment_done (GST_OBJECT_CAST (rp), rp->segment.format, stop)); + gst_pad_push_event (rp->srcpad, + gst_event_new_segment_done (rp->segment.format, stop)); } else { GST_LOG_OBJECT (rp, "Sending EOS, at end of stream"); gst_pad_push_event (rp->srcpad, gst_event_new_eos ()); @@ -864,7 +866,8 @@ gst_raw_parse_handle_seek_pull (GstRawParse * rp, GstEvent * event) rp->discont = TRUE; GST_LOG_OBJECT (rp, "start streaming"); - gst_pad_start_task (rp->sinkpad, (GstTaskFunction) gst_raw_parse_loop, rp); + gst_pad_start_task (rp->sinkpad, (GstTaskFunction) gst_raw_parse_loop, rp, + NULL); GST_PAD_STREAM_UNLOCK (rp->sinkpad); diff --git a/gst/real/Makefile.in b/gst/real/Makefile.in index 5be9a268..c89593a8 100644 --- a/gst/real/Makefile.in +++ b/gst/real/Makefile.in @@ -1,4 +1,4 @@ -# Makefile.in generated by automake 1.11.5 from Makefile.am. +# Makefile.in generated by automake 1.11.6 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, @@ -238,11 +238,10 @@ DIRECT3D_LIBS = @DIRECT3D_LIBS@ DIRECTDRAW_LIBS = @DIRECTDRAW_LIBS@ DIRECTFB_CFLAGS = @DIRECTFB_CFLAGS@ DIRECTFB_LIBS = @DIRECTFB_LIBS@ +DIRECTSHOW_LIBS = @DIRECTSHOW_LIBS@ DIRECTSOUND_LIBS = @DIRECTSOUND_LIBS@ DIRECTX_CFLAGS = @DIRECTX_CFLAGS@ DIRECTX_LDFLAGS = @DIRECTX_LDFLAGS@ -DIVXDEC_LIBS = @DIVXDEC_LIBS@ -DIVXENC_LIBS = @DIVXENC_LIBS@ DLLTOOL = @DLLTOOL@ DSYMUTIL = @DSYMUTIL@ DTS_LIBS = @DTS_LIBS@ @@ -277,7 +276,9 @@ GIO_LIBS = @GIO_LIBS@ GLIB_CFLAGS = @GLIB_CFLAGS@ GLIB_COMPILE_SCHEMAS = @GLIB_COMPILE_SCHEMAS@ GLIB_EXTRA_CFLAGS = @GLIB_EXTRA_CFLAGS@ +GLIB_GENMARSHAL = @GLIB_GENMARSHAL@ GLIB_LIBS = @GLIB_LIBS@ +GLIB_MKENUMS = @GLIB_MKENUMS@ GLIB_PREFIX = @GLIB_PREFIX@ GLIB_REQ = @GLIB_REQ@ GME_LIBS = @GME_LIBS@ @@ -353,13 +354,14 @@ HAVE_CXX = @HAVE_CXX@ HAVE_DIRECT3D = @HAVE_DIRECT3D@ HAVE_DIRECT3D9 = @HAVE_DIRECT3D9@ HAVE_DIRECTDRAW = @HAVE_DIRECTDRAW@ +HAVE_DIRECTSHOW = @HAVE_DIRECTSHOW@ HAVE_DIRECTSOUND = @HAVE_DIRECTSOUND@ HAVE_DTS = @HAVE_DTS@ HAVE_FAAC = @HAVE_FAAC@ HAVE_FAAD = @HAVE_FAAD@ HAVE_FLITE = @HAVE_FLITE@ HAVE_GSM = @HAVE_GSM@ -HAVE_JP2K = @HAVE_JP2K@ +HAVE_JASPER = @HAVE_JASPER@ HAVE_NAS = @HAVE_NAS@ HAVE_VPX = @HAVE_VPX@ HAVE_WILDMIDI = @HAVE_WILDMIDI@ @@ -373,7 +375,7 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ INTLLIBS = @INTLLIBS@ INTL_MACOSX_LIBS = @INTL_MACOSX_LIBS@ -JP2K_LIBS = @JP2K_LIBS@ +JASPER_LIBS = @JASPER_LIBS@ KATE_CFLAGS = @KATE_CFLAGS@ KATE_LIBS = @KATE_LIBS@ LD = @LD@ @@ -409,6 +411,8 @@ MODPLUG_CFLAGS = @MODPLUG_CFLAGS@ MODPLUG_LIBS = @MODPLUG_LIBS@ MPEG2ENC_CFLAGS = @MPEG2ENC_CFLAGS@ MPEG2ENC_LIBS = @MPEG2ENC_LIBS@ +MPG123_CFLAGS = @MPG123_CFLAGS@ +MPG123_LIBS = @MPG123_LIBS@ MPLEX_CFLAGS = @MPLEX_CFLAGS@ MPLEX_LDFLAGS = @MPLEX_LDFLAGS@ MPLEX_LIBS = @MPLEX_LIBS@ diff --git a/gst/removesilence/Makefile.in b/gst/removesilence/Makefile.in index c8217daa..509766a3 100644 --- a/gst/removesilence/Makefile.in +++ b/gst/removesilence/Makefile.in @@ -1,4 +1,4 @@ -# Makefile.in generated by automake 1.11.5 from Makefile.am. +# Makefile.in generated by automake 1.11.6 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, @@ -239,11 +239,10 @@ DIRECT3D_LIBS = @DIRECT3D_LIBS@ DIRECTDRAW_LIBS = @DIRECTDRAW_LIBS@ DIRECTFB_CFLAGS = @DIRECTFB_CFLAGS@ DIRECTFB_LIBS = @DIRECTFB_LIBS@ +DIRECTSHOW_LIBS = @DIRECTSHOW_LIBS@ DIRECTSOUND_LIBS = @DIRECTSOUND_LIBS@ DIRECTX_CFLAGS = @DIRECTX_CFLAGS@ DIRECTX_LDFLAGS = @DIRECTX_LDFLAGS@ -DIVXDEC_LIBS = @DIVXDEC_LIBS@ -DIVXENC_LIBS = @DIVXENC_LIBS@ DLLTOOL = @DLLTOOL@ DSYMUTIL = @DSYMUTIL@ DTS_LIBS = @DTS_LIBS@ @@ -278,7 +277,9 @@ GIO_LIBS = @GIO_LIBS@ GLIB_CFLAGS = @GLIB_CFLAGS@ GLIB_COMPILE_SCHEMAS = @GLIB_COMPILE_SCHEMAS@ GLIB_EXTRA_CFLAGS = @GLIB_EXTRA_CFLAGS@ +GLIB_GENMARSHAL = @GLIB_GENMARSHAL@ GLIB_LIBS = @GLIB_LIBS@ +GLIB_MKENUMS = @GLIB_MKENUMS@ GLIB_PREFIX = @GLIB_PREFIX@ GLIB_REQ = @GLIB_REQ@ GME_LIBS = @GME_LIBS@ @@ -354,13 +355,14 @@ HAVE_CXX = @HAVE_CXX@ HAVE_DIRECT3D = @HAVE_DIRECT3D@ HAVE_DIRECT3D9 = @HAVE_DIRECT3D9@ HAVE_DIRECTDRAW = @HAVE_DIRECTDRAW@ +HAVE_DIRECTSHOW = @HAVE_DIRECTSHOW@ HAVE_DIRECTSOUND = @HAVE_DIRECTSOUND@ HAVE_DTS = @HAVE_DTS@ HAVE_FAAC = @HAVE_FAAC@ HAVE_FAAD = @HAVE_FAAD@ HAVE_FLITE = @HAVE_FLITE@ HAVE_GSM = @HAVE_GSM@ -HAVE_JP2K = @HAVE_JP2K@ +HAVE_JASPER = @HAVE_JASPER@ HAVE_NAS = @HAVE_NAS@ HAVE_VPX = @HAVE_VPX@ HAVE_WILDMIDI = @HAVE_WILDMIDI@ @@ -374,7 +376,7 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ INTLLIBS = @INTLLIBS@ INTL_MACOSX_LIBS = @INTL_MACOSX_LIBS@ -JP2K_LIBS = @JP2K_LIBS@ +JASPER_LIBS = @JASPER_LIBS@ KATE_CFLAGS = @KATE_CFLAGS@ KATE_LIBS = @KATE_LIBS@ LD = @LD@ @@ -410,6 +412,8 @@ MODPLUG_CFLAGS = @MODPLUG_CFLAGS@ MODPLUG_LIBS = @MODPLUG_LIBS@ MPEG2ENC_CFLAGS = @MPEG2ENC_CFLAGS@ MPEG2ENC_LIBS = @MPEG2ENC_LIBS@ +MPG123_CFLAGS = @MPG123_CFLAGS@ +MPG123_LIBS = @MPG123_LIBS@ MPLEX_CFLAGS = @MPLEX_CFLAGS@ MPLEX_LDFLAGS = @MPLEX_LDFLAGS@ MPLEX_LIBS = @MPLEX_LIBS@ diff --git a/gst/rtpmux/Makefile.in b/gst/rtpmux/Makefile.in index de8c23c2..2d2e5217 100644 --- a/gst/rtpmux/Makefile.in +++ b/gst/rtpmux/Makefile.in @@ -1,4 +1,4 @@ -# Makefile.in generated by automake 1.11.5 from Makefile.am. +# Makefile.in generated by automake 1.11.6 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, @@ -238,11 +238,10 @@ DIRECT3D_LIBS = @DIRECT3D_LIBS@ DIRECTDRAW_LIBS = @DIRECTDRAW_LIBS@ DIRECTFB_CFLAGS = @DIRECTFB_CFLAGS@ DIRECTFB_LIBS = @DIRECTFB_LIBS@ +DIRECTSHOW_LIBS = @DIRECTSHOW_LIBS@ DIRECTSOUND_LIBS = @DIRECTSOUND_LIBS@ DIRECTX_CFLAGS = @DIRECTX_CFLAGS@ DIRECTX_LDFLAGS = @DIRECTX_LDFLAGS@ -DIVXDEC_LIBS = @DIVXDEC_LIBS@ -DIVXENC_LIBS = @DIVXENC_LIBS@ DLLTOOL = @DLLTOOL@ DSYMUTIL = @DSYMUTIL@ DTS_LIBS = @DTS_LIBS@ @@ -277,7 +276,9 @@ GIO_LIBS = @GIO_LIBS@ GLIB_CFLAGS = @GLIB_CFLAGS@ GLIB_COMPILE_SCHEMAS = @GLIB_COMPILE_SCHEMAS@ GLIB_EXTRA_CFLAGS = @GLIB_EXTRA_CFLAGS@ +GLIB_GENMARSHAL = @GLIB_GENMARSHAL@ GLIB_LIBS = @GLIB_LIBS@ +GLIB_MKENUMS = @GLIB_MKENUMS@ GLIB_PREFIX = @GLIB_PREFIX@ GLIB_REQ = @GLIB_REQ@ GME_LIBS = @GME_LIBS@ @@ -353,13 +354,14 @@ HAVE_CXX = @HAVE_CXX@ HAVE_DIRECT3D = @HAVE_DIRECT3D@ HAVE_DIRECT3D9 = @HAVE_DIRECT3D9@ HAVE_DIRECTDRAW = @HAVE_DIRECTDRAW@ +HAVE_DIRECTSHOW = @HAVE_DIRECTSHOW@ HAVE_DIRECTSOUND = @HAVE_DIRECTSOUND@ HAVE_DTS = @HAVE_DTS@ HAVE_FAAC = @HAVE_FAAC@ HAVE_FAAD = @HAVE_FAAD@ HAVE_FLITE = @HAVE_FLITE@ HAVE_GSM = @HAVE_GSM@ -HAVE_JP2K = @HAVE_JP2K@ +HAVE_JASPER = @HAVE_JASPER@ HAVE_NAS = @HAVE_NAS@ HAVE_VPX = @HAVE_VPX@ HAVE_WILDMIDI = @HAVE_WILDMIDI@ @@ -373,7 +375,7 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ INTLLIBS = @INTLLIBS@ INTL_MACOSX_LIBS = @INTL_MACOSX_LIBS@ -JP2K_LIBS = @JP2K_LIBS@ +JASPER_LIBS = @JASPER_LIBS@ KATE_CFLAGS = @KATE_CFLAGS@ KATE_LIBS = @KATE_LIBS@ LD = @LD@ @@ -409,6 +411,8 @@ MODPLUG_CFLAGS = @MODPLUG_CFLAGS@ MODPLUG_LIBS = @MODPLUG_LIBS@ MPEG2ENC_CFLAGS = @MPEG2ENC_CFLAGS@ MPEG2ENC_LIBS = @MPEG2ENC_LIBS@ +MPG123_CFLAGS = @MPG123_CFLAGS@ +MPG123_LIBS = @MPG123_LIBS@ MPLEX_CFLAGS = @MPLEX_CFLAGS@ MPLEX_LDFLAGS = @MPLEX_LDFLAGS@ MPLEX_LIBS = @MPLEX_LIBS@ diff --git a/gst/rtpmux/gstrtpmux.c b/gst/rtpmux/gstrtpmux.c index 20ed5a1c..7f69957d 100644 --- a/gst/rtpmux/gstrtpmux.c +++ b/gst/rtpmux/gstrtpmux.c @@ -469,12 +469,6 @@ gst_rtp_mux_chain (GstPad * pad, GstObject * parent, GstBuffer * buffer) rtp_mux = GST_RTP_MUX (GST_OBJECT_PARENT (pad)); - if (!gst_rtp_buffer_validate (buffer)) { - gst_buffer_unref (buffer); - GST_ERROR_OBJECT (rtp_mux, "Invalid RTP buffer"); - return GST_FLOW_ERROR; - } - GST_OBJECT_LOCK (rtp_mux); padpriv = gst_pad_get_element_private (pad); @@ -486,7 +480,12 @@ gst_rtp_mux_chain (GstPad * pad, GstObject * parent, GstBuffer * buffer) buffer = gst_buffer_make_writable (buffer); - gst_rtp_buffer_map (buffer, GST_MAP_READWRITE, &rtpbuffer); + if (!gst_rtp_buffer_map (buffer, GST_MAP_READWRITE, &rtpbuffer)) { + GST_OBJECT_UNLOCK (rtp_mux); + gst_buffer_unref (buffer); + GST_ERROR_OBJECT (rtp_mux, "Invalid RTP buffer"); + return GST_FLOW_ERROR; + } drop = !process_buffer_locked (rtp_mux, padpriv, &rtpbuffer); diff --git a/gst/rtpvp8/Makefile.in b/gst/rtpvp8/Makefile.in index b0f3014b..f8c9e346 100644 --- a/gst/rtpvp8/Makefile.in +++ b/gst/rtpvp8/Makefile.in @@ -1,4 +1,4 @@ -# Makefile.in generated by automake 1.11.5 from Makefile.am. +# Makefile.in generated by automake 1.11.6 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, @@ -239,11 +239,10 @@ DIRECT3D_LIBS = @DIRECT3D_LIBS@ DIRECTDRAW_LIBS = @DIRECTDRAW_LIBS@ DIRECTFB_CFLAGS = @DIRECTFB_CFLAGS@ DIRECTFB_LIBS = @DIRECTFB_LIBS@ +DIRECTSHOW_LIBS = @DIRECTSHOW_LIBS@ DIRECTSOUND_LIBS = @DIRECTSOUND_LIBS@ DIRECTX_CFLAGS = @DIRECTX_CFLAGS@ DIRECTX_LDFLAGS = @DIRECTX_LDFLAGS@ -DIVXDEC_LIBS = @DIVXDEC_LIBS@ -DIVXENC_LIBS = @DIVXENC_LIBS@ DLLTOOL = @DLLTOOL@ DSYMUTIL = @DSYMUTIL@ DTS_LIBS = @DTS_LIBS@ @@ -278,7 +277,9 @@ GIO_LIBS = @GIO_LIBS@ GLIB_CFLAGS = @GLIB_CFLAGS@ GLIB_COMPILE_SCHEMAS = @GLIB_COMPILE_SCHEMAS@ GLIB_EXTRA_CFLAGS = @GLIB_EXTRA_CFLAGS@ +GLIB_GENMARSHAL = @GLIB_GENMARSHAL@ GLIB_LIBS = @GLIB_LIBS@ +GLIB_MKENUMS = @GLIB_MKENUMS@ GLIB_PREFIX = @GLIB_PREFIX@ GLIB_REQ = @GLIB_REQ@ GME_LIBS = @GME_LIBS@ @@ -354,13 +355,14 @@ HAVE_CXX = @HAVE_CXX@ HAVE_DIRECT3D = @HAVE_DIRECT3D@ HAVE_DIRECT3D9 = @HAVE_DIRECT3D9@ HAVE_DIRECTDRAW = @HAVE_DIRECTDRAW@ +HAVE_DIRECTSHOW = @HAVE_DIRECTSHOW@ HAVE_DIRECTSOUND = @HAVE_DIRECTSOUND@ HAVE_DTS = @HAVE_DTS@ HAVE_FAAC = @HAVE_FAAC@ HAVE_FAAD = @HAVE_FAAD@ HAVE_FLITE = @HAVE_FLITE@ HAVE_GSM = @HAVE_GSM@ -HAVE_JP2K = @HAVE_JP2K@ +HAVE_JASPER = @HAVE_JASPER@ HAVE_NAS = @HAVE_NAS@ HAVE_VPX = @HAVE_VPX@ HAVE_WILDMIDI = @HAVE_WILDMIDI@ @@ -374,7 +376,7 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ INTLLIBS = @INTLLIBS@ INTL_MACOSX_LIBS = @INTL_MACOSX_LIBS@ -JP2K_LIBS = @JP2K_LIBS@ +JASPER_LIBS = @JASPER_LIBS@ KATE_CFLAGS = @KATE_CFLAGS@ KATE_LIBS = @KATE_LIBS@ LD = @LD@ @@ -410,6 +412,8 @@ MODPLUG_CFLAGS = @MODPLUG_CFLAGS@ MODPLUG_LIBS = @MODPLUG_LIBS@ MPEG2ENC_CFLAGS = @MPEG2ENC_CFLAGS@ MPEG2ENC_LIBS = @MPEG2ENC_LIBS@ +MPG123_CFLAGS = @MPG123_CFLAGS@ +MPG123_LIBS = @MPG123_LIBS@ MPLEX_CFLAGS = @MPLEX_CFLAGS@ MPLEX_LDFLAGS = @MPLEX_LDFLAGS@ MPLEX_LIBS = @MPLEX_LIBS@ diff --git a/gst/scaletempo/Makefile.in b/gst/scaletempo/Makefile.in index 438ed4ce..a459982e 100644 --- a/gst/scaletempo/Makefile.in +++ b/gst/scaletempo/Makefile.in @@ -1,4 +1,4 @@ -# Makefile.in generated by automake 1.11.5 from Makefile.am. +# Makefile.in generated by automake 1.11.6 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, @@ -241,11 +241,10 @@ DIRECT3D_LIBS = @DIRECT3D_LIBS@ DIRECTDRAW_LIBS = @DIRECTDRAW_LIBS@ DIRECTFB_CFLAGS = @DIRECTFB_CFLAGS@ DIRECTFB_LIBS = @DIRECTFB_LIBS@ +DIRECTSHOW_LIBS = @DIRECTSHOW_LIBS@ DIRECTSOUND_LIBS = @DIRECTSOUND_LIBS@ DIRECTX_CFLAGS = @DIRECTX_CFLAGS@ DIRECTX_LDFLAGS = @DIRECTX_LDFLAGS@ -DIVXDEC_LIBS = @DIVXDEC_LIBS@ -DIVXENC_LIBS = @DIVXENC_LIBS@ DLLTOOL = @DLLTOOL@ DSYMUTIL = @DSYMUTIL@ DTS_LIBS = @DTS_LIBS@ @@ -280,7 +279,9 @@ GIO_LIBS = @GIO_LIBS@ GLIB_CFLAGS = @GLIB_CFLAGS@ GLIB_COMPILE_SCHEMAS = @GLIB_COMPILE_SCHEMAS@ GLIB_EXTRA_CFLAGS = @GLIB_EXTRA_CFLAGS@ +GLIB_GENMARSHAL = @GLIB_GENMARSHAL@ GLIB_LIBS = @GLIB_LIBS@ +GLIB_MKENUMS = @GLIB_MKENUMS@ GLIB_PREFIX = @GLIB_PREFIX@ GLIB_REQ = @GLIB_REQ@ GME_LIBS = @GME_LIBS@ @@ -356,13 +357,14 @@ HAVE_CXX = @HAVE_CXX@ HAVE_DIRECT3D = @HAVE_DIRECT3D@ HAVE_DIRECT3D9 = @HAVE_DIRECT3D9@ HAVE_DIRECTDRAW = @HAVE_DIRECTDRAW@ +HAVE_DIRECTSHOW = @HAVE_DIRECTSHOW@ HAVE_DIRECTSOUND = @HAVE_DIRECTSOUND@ HAVE_DTS = @HAVE_DTS@ HAVE_FAAC = @HAVE_FAAC@ HAVE_FAAD = @HAVE_FAAD@ HAVE_FLITE = @HAVE_FLITE@ HAVE_GSM = @HAVE_GSM@ -HAVE_JP2K = @HAVE_JP2K@ +HAVE_JASPER = @HAVE_JASPER@ HAVE_NAS = @HAVE_NAS@ HAVE_VPX = @HAVE_VPX@ HAVE_WILDMIDI = @HAVE_WILDMIDI@ @@ -376,7 +378,7 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ INTLLIBS = @INTLLIBS@ INTL_MACOSX_LIBS = @INTL_MACOSX_LIBS@ -JP2K_LIBS = @JP2K_LIBS@ +JASPER_LIBS = @JASPER_LIBS@ KATE_CFLAGS = @KATE_CFLAGS@ KATE_LIBS = @KATE_LIBS@ LD = @LD@ @@ -412,6 +414,8 @@ MODPLUG_CFLAGS = @MODPLUG_CFLAGS@ MODPLUG_LIBS = @MODPLUG_LIBS@ MPEG2ENC_CFLAGS = @MPEG2ENC_CFLAGS@ MPEG2ENC_LIBS = @MPEG2ENC_LIBS@ +MPG123_CFLAGS = @MPG123_CFLAGS@ +MPG123_LIBS = @MPG123_LIBS@ MPLEX_CFLAGS = @MPLEX_CFLAGS@ MPLEX_LDFLAGS = @MPLEX_LDFLAGS@ MPLEX_LIBS = @MPLEX_LIBS@ diff --git a/gst/sdi/Makefile.in b/gst/sdi/Makefile.in index 5b17ef98..611df7fc 100644 --- a/gst/sdi/Makefile.in +++ b/gst/sdi/Makefile.in @@ -1,4 +1,4 @@ -# Makefile.in generated by automake 1.11.5 from Makefile.am. +# Makefile.in generated by automake 1.11.6 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, @@ -238,11 +238,10 @@ DIRECT3D_LIBS = @DIRECT3D_LIBS@ DIRECTDRAW_LIBS = @DIRECTDRAW_LIBS@ DIRECTFB_CFLAGS = @DIRECTFB_CFLAGS@ DIRECTFB_LIBS = @DIRECTFB_LIBS@ +DIRECTSHOW_LIBS = @DIRECTSHOW_LIBS@ DIRECTSOUND_LIBS = @DIRECTSOUND_LIBS@ DIRECTX_CFLAGS = @DIRECTX_CFLAGS@ DIRECTX_LDFLAGS = @DIRECTX_LDFLAGS@ -DIVXDEC_LIBS = @DIVXDEC_LIBS@ -DIVXENC_LIBS = @DIVXENC_LIBS@ DLLTOOL = @DLLTOOL@ DSYMUTIL = @DSYMUTIL@ DTS_LIBS = @DTS_LIBS@ @@ -277,7 +276,9 @@ GIO_LIBS = @GIO_LIBS@ GLIB_CFLAGS = @GLIB_CFLAGS@ GLIB_COMPILE_SCHEMAS = @GLIB_COMPILE_SCHEMAS@ GLIB_EXTRA_CFLAGS = @GLIB_EXTRA_CFLAGS@ +GLIB_GENMARSHAL = @GLIB_GENMARSHAL@ GLIB_LIBS = @GLIB_LIBS@ +GLIB_MKENUMS = @GLIB_MKENUMS@ GLIB_PREFIX = @GLIB_PREFIX@ GLIB_REQ = @GLIB_REQ@ GME_LIBS = @GME_LIBS@ @@ -353,13 +354,14 @@ HAVE_CXX = @HAVE_CXX@ HAVE_DIRECT3D = @HAVE_DIRECT3D@ HAVE_DIRECT3D9 = @HAVE_DIRECT3D9@ HAVE_DIRECTDRAW = @HAVE_DIRECTDRAW@ +HAVE_DIRECTSHOW = @HAVE_DIRECTSHOW@ HAVE_DIRECTSOUND = @HAVE_DIRECTSOUND@ HAVE_DTS = @HAVE_DTS@ HAVE_FAAC = @HAVE_FAAC@ HAVE_FAAD = @HAVE_FAAD@ HAVE_FLITE = @HAVE_FLITE@ HAVE_GSM = @HAVE_GSM@ -HAVE_JP2K = @HAVE_JP2K@ +HAVE_JASPER = @HAVE_JASPER@ HAVE_NAS = @HAVE_NAS@ HAVE_VPX = @HAVE_VPX@ HAVE_WILDMIDI = @HAVE_WILDMIDI@ @@ -373,7 +375,7 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ INTLLIBS = @INTLLIBS@ INTL_MACOSX_LIBS = @INTL_MACOSX_LIBS@ -JP2K_LIBS = @JP2K_LIBS@ +JASPER_LIBS = @JASPER_LIBS@ KATE_CFLAGS = @KATE_CFLAGS@ KATE_LIBS = @KATE_LIBS@ LD = @LD@ @@ -409,6 +411,8 @@ MODPLUG_CFLAGS = @MODPLUG_CFLAGS@ MODPLUG_LIBS = @MODPLUG_LIBS@ MPEG2ENC_CFLAGS = @MPEG2ENC_CFLAGS@ MPEG2ENC_LIBS = @MPEG2ENC_LIBS@ +MPG123_CFLAGS = @MPG123_CFLAGS@ +MPG123_LIBS = @MPG123_LIBS@ MPLEX_CFLAGS = @MPLEX_CFLAGS@ MPLEX_LDFLAGS = @MPLEX_LDFLAGS@ MPLEX_LIBS = @MPLEX_LIBS@ diff --git a/gst/sdp/Makefile.in b/gst/sdp/Makefile.in index 74becb6e..0b6f1f08 100644 --- a/gst/sdp/Makefile.in +++ b/gst/sdp/Makefile.in @@ -1,4 +1,4 @@ -# Makefile.in generated by automake 1.11.5 from Makefile.am. +# Makefile.in generated by automake 1.11.6 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, @@ -239,11 +239,10 @@ DIRECT3D_LIBS = @DIRECT3D_LIBS@ DIRECTDRAW_LIBS = @DIRECTDRAW_LIBS@ DIRECTFB_CFLAGS = @DIRECTFB_CFLAGS@ DIRECTFB_LIBS = @DIRECTFB_LIBS@ +DIRECTSHOW_LIBS = @DIRECTSHOW_LIBS@ DIRECTSOUND_LIBS = @DIRECTSOUND_LIBS@ DIRECTX_CFLAGS = @DIRECTX_CFLAGS@ DIRECTX_LDFLAGS = @DIRECTX_LDFLAGS@ -DIVXDEC_LIBS = @DIVXDEC_LIBS@ -DIVXENC_LIBS = @DIVXENC_LIBS@ DLLTOOL = @DLLTOOL@ DSYMUTIL = @DSYMUTIL@ DTS_LIBS = @DTS_LIBS@ @@ -278,7 +277,9 @@ GIO_LIBS = @GIO_LIBS@ GLIB_CFLAGS = @GLIB_CFLAGS@ GLIB_COMPILE_SCHEMAS = @GLIB_COMPILE_SCHEMAS@ GLIB_EXTRA_CFLAGS = @GLIB_EXTRA_CFLAGS@ +GLIB_GENMARSHAL = @GLIB_GENMARSHAL@ GLIB_LIBS = @GLIB_LIBS@ +GLIB_MKENUMS = @GLIB_MKENUMS@ GLIB_PREFIX = @GLIB_PREFIX@ GLIB_REQ = @GLIB_REQ@ GME_LIBS = @GME_LIBS@ @@ -354,13 +355,14 @@ HAVE_CXX = @HAVE_CXX@ HAVE_DIRECT3D = @HAVE_DIRECT3D@ HAVE_DIRECT3D9 = @HAVE_DIRECT3D9@ HAVE_DIRECTDRAW = @HAVE_DIRECTDRAW@ +HAVE_DIRECTSHOW = @HAVE_DIRECTSHOW@ HAVE_DIRECTSOUND = @HAVE_DIRECTSOUND@ HAVE_DTS = @HAVE_DTS@ HAVE_FAAC = @HAVE_FAAC@ HAVE_FAAD = @HAVE_FAAD@ HAVE_FLITE = @HAVE_FLITE@ HAVE_GSM = @HAVE_GSM@ -HAVE_JP2K = @HAVE_JP2K@ +HAVE_JASPER = @HAVE_JASPER@ HAVE_NAS = @HAVE_NAS@ HAVE_VPX = @HAVE_VPX@ HAVE_WILDMIDI = @HAVE_WILDMIDI@ @@ -374,7 +376,7 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ INTLLIBS = @INTLLIBS@ INTL_MACOSX_LIBS = @INTL_MACOSX_LIBS@ -JP2K_LIBS = @JP2K_LIBS@ +JASPER_LIBS = @JASPER_LIBS@ KATE_CFLAGS = @KATE_CFLAGS@ KATE_LIBS = @KATE_LIBS@ LD = @LD@ @@ -410,6 +412,8 @@ MODPLUG_CFLAGS = @MODPLUG_CFLAGS@ MODPLUG_LIBS = @MODPLUG_LIBS@ MPEG2ENC_CFLAGS = @MPEG2ENC_CFLAGS@ MPEG2ENC_LIBS = @MPEG2ENC_LIBS@ +MPG123_CFLAGS = @MPG123_CFLAGS@ +MPG123_LIBS = @MPG123_LIBS@ MPLEX_CFLAGS = @MPLEX_CFLAGS@ MPLEX_LDFLAGS = @MPLEX_LDFLAGS@ MPLEX_LIBS = @MPLEX_LIBS@ diff --git a/gst/sdp/gstsdpdemux.c b/gst/sdp/gstsdpdemux.c index 30e98fd0..095d31a9 100644 --- a/gst/sdp/gstsdpdemux.c +++ b/gst/sdp/gstsdpdemux.c @@ -974,7 +974,8 @@ gst_sdp_demux_stream_configure_udp (GstSDPDemux * demux, GstSDPStream * stream) stream->rtp_port); uri = g_strdup_printf ("udp://%s:%d", destination, stream->rtp_port); - stream->udpsrc[0] = gst_element_make_from_uri (GST_URI_SRC, uri, NULL); + stream->udpsrc[0] = + gst_element_make_from_uri (GST_URI_SRC, uri, NULL, NULL); g_free (uri); if (stream->udpsrc[0] == NULL) goto no_element; @@ -1013,7 +1014,8 @@ gst_sdp_demux_stream_configure_udp (GstSDPDemux * demux, GstSDPStream * stream) GST_DEBUG_OBJECT (demux, "receiving RTCP from %s:%d", destination, stream->rtcp_port); uri = g_strdup_printf ("udp://%s:%d", destination, stream->rtcp_port); - stream->udpsrc[1] = gst_element_make_from_uri (GST_URI_SRC, uri, NULL); + stream->udpsrc[1] = + gst_element_make_from_uri (GST_URI_SRC, uri, NULL, NULL); g_free (uri); if (stream->udpsrc[1] == NULL) goto no_element; @@ -1060,7 +1062,7 @@ gst_sdp_demux_stream_configure_udp_sink (GstSDPDemux * demux, GST_DEBUG_OBJECT (demux, "configure UDP sink for %s:%d", destination, port); uri = g_strdup_printf ("udp://%s:%d", destination, port); - stream->udpsink = gst_element_make_from_uri (GST_URI_SINK, uri, NULL); + stream->udpsink = gst_element_make_from_uri (GST_URI_SINK, uri, NULL, NULL); g_free (uri); if (stream->udpsink == NULL) goto no_sink_element; diff --git a/gst/segmentclip/Makefile.in b/gst/segmentclip/Makefile.in index b4892146..95f4560f 100644 --- a/gst/segmentclip/Makefile.in +++ b/gst/segmentclip/Makefile.in @@ -1,4 +1,4 @@ -# Makefile.in generated by automake 1.11.5 from Makefile.am. +# Makefile.in generated by automake 1.11.6 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, @@ -241,11 +241,10 @@ DIRECT3D_LIBS = @DIRECT3D_LIBS@ DIRECTDRAW_LIBS = @DIRECTDRAW_LIBS@ DIRECTFB_CFLAGS = @DIRECTFB_CFLAGS@ DIRECTFB_LIBS = @DIRECTFB_LIBS@ +DIRECTSHOW_LIBS = @DIRECTSHOW_LIBS@ DIRECTSOUND_LIBS = @DIRECTSOUND_LIBS@ DIRECTX_CFLAGS = @DIRECTX_CFLAGS@ DIRECTX_LDFLAGS = @DIRECTX_LDFLAGS@ -DIVXDEC_LIBS = @DIVXDEC_LIBS@ -DIVXENC_LIBS = @DIVXENC_LIBS@ DLLTOOL = @DLLTOOL@ DSYMUTIL = @DSYMUTIL@ DTS_LIBS = @DTS_LIBS@ @@ -280,7 +279,9 @@ GIO_LIBS = @GIO_LIBS@ GLIB_CFLAGS = @GLIB_CFLAGS@ GLIB_COMPILE_SCHEMAS = @GLIB_COMPILE_SCHEMAS@ GLIB_EXTRA_CFLAGS = @GLIB_EXTRA_CFLAGS@ +GLIB_GENMARSHAL = @GLIB_GENMARSHAL@ GLIB_LIBS = @GLIB_LIBS@ +GLIB_MKENUMS = @GLIB_MKENUMS@ GLIB_PREFIX = @GLIB_PREFIX@ GLIB_REQ = @GLIB_REQ@ GME_LIBS = @GME_LIBS@ @@ -356,13 +357,14 @@ HAVE_CXX = @HAVE_CXX@ HAVE_DIRECT3D = @HAVE_DIRECT3D@ HAVE_DIRECT3D9 = @HAVE_DIRECT3D9@ HAVE_DIRECTDRAW = @HAVE_DIRECTDRAW@ +HAVE_DIRECTSHOW = @HAVE_DIRECTSHOW@ HAVE_DIRECTSOUND = @HAVE_DIRECTSOUND@ HAVE_DTS = @HAVE_DTS@ HAVE_FAAC = @HAVE_FAAC@ HAVE_FAAD = @HAVE_FAAD@ HAVE_FLITE = @HAVE_FLITE@ HAVE_GSM = @HAVE_GSM@ -HAVE_JP2K = @HAVE_JP2K@ +HAVE_JASPER = @HAVE_JASPER@ HAVE_NAS = @HAVE_NAS@ HAVE_VPX = @HAVE_VPX@ HAVE_WILDMIDI = @HAVE_WILDMIDI@ @@ -376,7 +378,7 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ INTLLIBS = @INTLLIBS@ INTL_MACOSX_LIBS = @INTL_MACOSX_LIBS@ -JP2K_LIBS = @JP2K_LIBS@ +JASPER_LIBS = @JASPER_LIBS@ KATE_CFLAGS = @KATE_CFLAGS@ KATE_LIBS = @KATE_LIBS@ LD = @LD@ @@ -412,6 +414,8 @@ MODPLUG_CFLAGS = @MODPLUG_CFLAGS@ MODPLUG_LIBS = @MODPLUG_LIBS@ MPEG2ENC_CFLAGS = @MPEG2ENC_CFLAGS@ MPEG2ENC_LIBS = @MPEG2ENC_LIBS@ +MPG123_CFLAGS = @MPG123_CFLAGS@ +MPG123_LIBS = @MPG123_LIBS@ MPLEX_CFLAGS = @MPLEX_CFLAGS@ MPLEX_LDFLAGS = @MPLEX_LDFLAGS@ MPLEX_LIBS = @MPLEX_LIBS@ diff --git a/gst/siren/Makefile.in b/gst/siren/Makefile.in index d62de4c0..867df94a 100644 --- a/gst/siren/Makefile.in +++ b/gst/siren/Makefile.in @@ -1,4 +1,4 @@ -# Makefile.in generated by automake 1.11.5 from Makefile.am. +# Makefile.in generated by automake 1.11.6 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, @@ -239,11 +239,10 @@ DIRECT3D_LIBS = @DIRECT3D_LIBS@ DIRECTDRAW_LIBS = @DIRECTDRAW_LIBS@ DIRECTFB_CFLAGS = @DIRECTFB_CFLAGS@ DIRECTFB_LIBS = @DIRECTFB_LIBS@ +DIRECTSHOW_LIBS = @DIRECTSHOW_LIBS@ DIRECTSOUND_LIBS = @DIRECTSOUND_LIBS@ DIRECTX_CFLAGS = @DIRECTX_CFLAGS@ DIRECTX_LDFLAGS = @DIRECTX_LDFLAGS@ -DIVXDEC_LIBS = @DIVXDEC_LIBS@ -DIVXENC_LIBS = @DIVXENC_LIBS@ DLLTOOL = @DLLTOOL@ DSYMUTIL = @DSYMUTIL@ DTS_LIBS = @DTS_LIBS@ @@ -278,7 +277,9 @@ GIO_LIBS = @GIO_LIBS@ GLIB_CFLAGS = @GLIB_CFLAGS@ GLIB_COMPILE_SCHEMAS = @GLIB_COMPILE_SCHEMAS@ GLIB_EXTRA_CFLAGS = @GLIB_EXTRA_CFLAGS@ +GLIB_GENMARSHAL = @GLIB_GENMARSHAL@ GLIB_LIBS = @GLIB_LIBS@ +GLIB_MKENUMS = @GLIB_MKENUMS@ GLIB_PREFIX = @GLIB_PREFIX@ GLIB_REQ = @GLIB_REQ@ GME_LIBS = @GME_LIBS@ @@ -354,13 +355,14 @@ HAVE_CXX = @HAVE_CXX@ HAVE_DIRECT3D = @HAVE_DIRECT3D@ HAVE_DIRECT3D9 = @HAVE_DIRECT3D9@ HAVE_DIRECTDRAW = @HAVE_DIRECTDRAW@ +HAVE_DIRECTSHOW = @HAVE_DIRECTSHOW@ HAVE_DIRECTSOUND = @HAVE_DIRECTSOUND@ HAVE_DTS = @HAVE_DTS@ HAVE_FAAC = @HAVE_FAAC@ HAVE_FAAD = @HAVE_FAAD@ HAVE_FLITE = @HAVE_FLITE@ HAVE_GSM = @HAVE_GSM@ -HAVE_JP2K = @HAVE_JP2K@ +HAVE_JASPER = @HAVE_JASPER@ HAVE_NAS = @HAVE_NAS@ HAVE_VPX = @HAVE_VPX@ HAVE_WILDMIDI = @HAVE_WILDMIDI@ @@ -374,7 +376,7 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ INTLLIBS = @INTLLIBS@ INTL_MACOSX_LIBS = @INTL_MACOSX_LIBS@ -JP2K_LIBS = @JP2K_LIBS@ +JASPER_LIBS = @JASPER_LIBS@ KATE_CFLAGS = @KATE_CFLAGS@ KATE_LIBS = @KATE_LIBS@ LD = @LD@ @@ -410,6 +412,8 @@ MODPLUG_CFLAGS = @MODPLUG_CFLAGS@ MODPLUG_LIBS = @MODPLUG_LIBS@ MPEG2ENC_CFLAGS = @MPEG2ENC_CFLAGS@ MPEG2ENC_LIBS = @MPEG2ENC_LIBS@ +MPG123_CFLAGS = @MPG123_CFLAGS@ +MPG123_LIBS = @MPG123_LIBS@ MPLEX_CFLAGS = @MPLEX_CFLAGS@ MPLEX_LDFLAGS = @MPLEX_LDFLAGS@ MPLEX_LIBS = @MPLEX_LIBS@ diff --git a/gst/smooth/Makefile.in b/gst/smooth/Makefile.in index c384da4e..482f5385 100644 --- a/gst/smooth/Makefile.in +++ b/gst/smooth/Makefile.in @@ -1,4 +1,4 @@ -# Makefile.in generated by automake 1.11.5 from Makefile.am. +# Makefile.in generated by automake 1.11.6 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, @@ -237,11 +237,10 @@ DIRECT3D_LIBS = @DIRECT3D_LIBS@ DIRECTDRAW_LIBS = @DIRECTDRAW_LIBS@ DIRECTFB_CFLAGS = @DIRECTFB_CFLAGS@ DIRECTFB_LIBS = @DIRECTFB_LIBS@ +DIRECTSHOW_LIBS = @DIRECTSHOW_LIBS@ DIRECTSOUND_LIBS = @DIRECTSOUND_LIBS@ DIRECTX_CFLAGS = @DIRECTX_CFLAGS@ DIRECTX_LDFLAGS = @DIRECTX_LDFLAGS@ -DIVXDEC_LIBS = @DIVXDEC_LIBS@ -DIVXENC_LIBS = @DIVXENC_LIBS@ DLLTOOL = @DLLTOOL@ DSYMUTIL = @DSYMUTIL@ DTS_LIBS = @DTS_LIBS@ @@ -276,7 +275,9 @@ GIO_LIBS = @GIO_LIBS@ GLIB_CFLAGS = @GLIB_CFLAGS@ GLIB_COMPILE_SCHEMAS = @GLIB_COMPILE_SCHEMAS@ GLIB_EXTRA_CFLAGS = @GLIB_EXTRA_CFLAGS@ +GLIB_GENMARSHAL = @GLIB_GENMARSHAL@ GLIB_LIBS = @GLIB_LIBS@ +GLIB_MKENUMS = @GLIB_MKENUMS@ GLIB_PREFIX = @GLIB_PREFIX@ GLIB_REQ = @GLIB_REQ@ GME_LIBS = @GME_LIBS@ @@ -352,13 +353,14 @@ HAVE_CXX = @HAVE_CXX@ HAVE_DIRECT3D = @HAVE_DIRECT3D@ HAVE_DIRECT3D9 = @HAVE_DIRECT3D9@ HAVE_DIRECTDRAW = @HAVE_DIRECTDRAW@ +HAVE_DIRECTSHOW = @HAVE_DIRECTSHOW@ HAVE_DIRECTSOUND = @HAVE_DIRECTSOUND@ HAVE_DTS = @HAVE_DTS@ HAVE_FAAC = @HAVE_FAAC@ HAVE_FAAD = @HAVE_FAAD@ HAVE_FLITE = @HAVE_FLITE@ HAVE_GSM = @HAVE_GSM@ -HAVE_JP2K = @HAVE_JP2K@ +HAVE_JASPER = @HAVE_JASPER@ HAVE_NAS = @HAVE_NAS@ HAVE_VPX = @HAVE_VPX@ HAVE_WILDMIDI = @HAVE_WILDMIDI@ @@ -372,7 +374,7 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ INTLLIBS = @INTLLIBS@ INTL_MACOSX_LIBS = @INTL_MACOSX_LIBS@ -JP2K_LIBS = @JP2K_LIBS@ +JASPER_LIBS = @JASPER_LIBS@ KATE_CFLAGS = @KATE_CFLAGS@ KATE_LIBS = @KATE_LIBS@ LD = @LD@ @@ -408,6 +410,8 @@ MODPLUG_CFLAGS = @MODPLUG_CFLAGS@ MODPLUG_LIBS = @MODPLUG_LIBS@ MPEG2ENC_CFLAGS = @MPEG2ENC_CFLAGS@ MPEG2ENC_LIBS = @MPEG2ENC_LIBS@ +MPG123_CFLAGS = @MPG123_CFLAGS@ +MPG123_LIBS = @MPG123_LIBS@ MPLEX_CFLAGS = @MPLEX_CFLAGS@ MPLEX_LDFLAGS = @MPLEX_LDFLAGS@ MPLEX_LIBS = @MPLEX_LIBS@ diff --git a/gst/speed/Makefile.in b/gst/speed/Makefile.in index fcbae32b..35322f25 100644 --- a/gst/speed/Makefile.in +++ b/gst/speed/Makefile.in @@ -1,4 +1,4 @@ -# Makefile.in generated by automake 1.11.5 from Makefile.am. +# Makefile.in generated by automake 1.11.6 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, @@ -237,11 +237,10 @@ DIRECT3D_LIBS = @DIRECT3D_LIBS@ DIRECTDRAW_LIBS = @DIRECTDRAW_LIBS@ DIRECTFB_CFLAGS = @DIRECTFB_CFLAGS@ DIRECTFB_LIBS = @DIRECTFB_LIBS@ +DIRECTSHOW_LIBS = @DIRECTSHOW_LIBS@ DIRECTSOUND_LIBS = @DIRECTSOUND_LIBS@ DIRECTX_CFLAGS = @DIRECTX_CFLAGS@ DIRECTX_LDFLAGS = @DIRECTX_LDFLAGS@ -DIVXDEC_LIBS = @DIVXDEC_LIBS@ -DIVXENC_LIBS = @DIVXENC_LIBS@ DLLTOOL = @DLLTOOL@ DSYMUTIL = @DSYMUTIL@ DTS_LIBS = @DTS_LIBS@ @@ -276,7 +275,9 @@ GIO_LIBS = @GIO_LIBS@ GLIB_CFLAGS = @GLIB_CFLAGS@ GLIB_COMPILE_SCHEMAS = @GLIB_COMPILE_SCHEMAS@ GLIB_EXTRA_CFLAGS = @GLIB_EXTRA_CFLAGS@ +GLIB_GENMARSHAL = @GLIB_GENMARSHAL@ GLIB_LIBS = @GLIB_LIBS@ +GLIB_MKENUMS = @GLIB_MKENUMS@ GLIB_PREFIX = @GLIB_PREFIX@ GLIB_REQ = @GLIB_REQ@ GME_LIBS = @GME_LIBS@ @@ -352,13 +353,14 @@ HAVE_CXX = @HAVE_CXX@ HAVE_DIRECT3D = @HAVE_DIRECT3D@ HAVE_DIRECT3D9 = @HAVE_DIRECT3D9@ HAVE_DIRECTDRAW = @HAVE_DIRECTDRAW@ +HAVE_DIRECTSHOW = @HAVE_DIRECTSHOW@ HAVE_DIRECTSOUND = @HAVE_DIRECTSOUND@ HAVE_DTS = @HAVE_DTS@ HAVE_FAAC = @HAVE_FAAC@ HAVE_FAAD = @HAVE_FAAD@ HAVE_FLITE = @HAVE_FLITE@ HAVE_GSM = @HAVE_GSM@ -HAVE_JP2K = @HAVE_JP2K@ +HAVE_JASPER = @HAVE_JASPER@ HAVE_NAS = @HAVE_NAS@ HAVE_VPX = @HAVE_VPX@ HAVE_WILDMIDI = @HAVE_WILDMIDI@ @@ -372,7 +374,7 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ INTLLIBS = @INTLLIBS@ INTL_MACOSX_LIBS = @INTL_MACOSX_LIBS@ -JP2K_LIBS = @JP2K_LIBS@ +JASPER_LIBS = @JASPER_LIBS@ KATE_CFLAGS = @KATE_CFLAGS@ KATE_LIBS = @KATE_LIBS@ LD = @LD@ @@ -408,6 +410,8 @@ MODPLUG_CFLAGS = @MODPLUG_CFLAGS@ MODPLUG_LIBS = @MODPLUG_LIBS@ MPEG2ENC_CFLAGS = @MPEG2ENC_CFLAGS@ MPEG2ENC_LIBS = @MPEG2ENC_LIBS@ +MPG123_CFLAGS = @MPG123_CFLAGS@ +MPG123_LIBS = @MPG123_LIBS@ MPLEX_CFLAGS = @MPLEX_CFLAGS@ MPLEX_LDFLAGS = @MPLEX_LDFLAGS@ MPLEX_LIBS = @MPLEX_LIBS@ diff --git a/gst/stereo/Makefile.in b/gst/stereo/Makefile.in index 132f4ef3..7ff3a4ee 100644 --- a/gst/stereo/Makefile.in +++ b/gst/stereo/Makefile.in @@ -1,4 +1,4 @@ -# Makefile.in generated by automake 1.11.5 from Makefile.am. +# Makefile.in generated by automake 1.11.6 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, @@ -237,11 +237,10 @@ DIRECT3D_LIBS = @DIRECT3D_LIBS@ DIRECTDRAW_LIBS = @DIRECTDRAW_LIBS@ DIRECTFB_CFLAGS = @DIRECTFB_CFLAGS@ DIRECTFB_LIBS = @DIRECTFB_LIBS@ +DIRECTSHOW_LIBS = @DIRECTSHOW_LIBS@ DIRECTSOUND_LIBS = @DIRECTSOUND_LIBS@ DIRECTX_CFLAGS = @DIRECTX_CFLAGS@ DIRECTX_LDFLAGS = @DIRECTX_LDFLAGS@ -DIVXDEC_LIBS = @DIVXDEC_LIBS@ -DIVXENC_LIBS = @DIVXENC_LIBS@ DLLTOOL = @DLLTOOL@ DSYMUTIL = @DSYMUTIL@ DTS_LIBS = @DTS_LIBS@ @@ -276,7 +275,9 @@ GIO_LIBS = @GIO_LIBS@ GLIB_CFLAGS = @GLIB_CFLAGS@ GLIB_COMPILE_SCHEMAS = @GLIB_COMPILE_SCHEMAS@ GLIB_EXTRA_CFLAGS = @GLIB_EXTRA_CFLAGS@ +GLIB_GENMARSHAL = @GLIB_GENMARSHAL@ GLIB_LIBS = @GLIB_LIBS@ +GLIB_MKENUMS = @GLIB_MKENUMS@ GLIB_PREFIX = @GLIB_PREFIX@ GLIB_REQ = @GLIB_REQ@ GME_LIBS = @GME_LIBS@ @@ -352,13 +353,14 @@ HAVE_CXX = @HAVE_CXX@ HAVE_DIRECT3D = @HAVE_DIRECT3D@ HAVE_DIRECT3D9 = @HAVE_DIRECT3D9@ HAVE_DIRECTDRAW = @HAVE_DIRECTDRAW@ +HAVE_DIRECTSHOW = @HAVE_DIRECTSHOW@ HAVE_DIRECTSOUND = @HAVE_DIRECTSOUND@ HAVE_DTS = @HAVE_DTS@ HAVE_FAAC = @HAVE_FAAC@ HAVE_FAAD = @HAVE_FAAD@ HAVE_FLITE = @HAVE_FLITE@ HAVE_GSM = @HAVE_GSM@ -HAVE_JP2K = @HAVE_JP2K@ +HAVE_JASPER = @HAVE_JASPER@ HAVE_NAS = @HAVE_NAS@ HAVE_VPX = @HAVE_VPX@ HAVE_WILDMIDI = @HAVE_WILDMIDI@ @@ -372,7 +374,7 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ INTLLIBS = @INTLLIBS@ INTL_MACOSX_LIBS = @INTL_MACOSX_LIBS@ -JP2K_LIBS = @JP2K_LIBS@ +JASPER_LIBS = @JASPER_LIBS@ KATE_CFLAGS = @KATE_CFLAGS@ KATE_LIBS = @KATE_LIBS@ LD = @LD@ @@ -408,6 +410,8 @@ MODPLUG_CFLAGS = @MODPLUG_CFLAGS@ MODPLUG_LIBS = @MODPLUG_LIBS@ MPEG2ENC_CFLAGS = @MPEG2ENC_CFLAGS@ MPEG2ENC_LIBS = @MPEG2ENC_LIBS@ +MPG123_CFLAGS = @MPG123_CFLAGS@ +MPG123_LIBS = @MPG123_LIBS@ MPLEX_CFLAGS = @MPLEX_CFLAGS@ MPLEX_LDFLAGS = @MPLEX_LDFLAGS@ MPLEX_LIBS = @MPLEX_LIBS@ diff --git a/gst/subenc/Makefile.in b/gst/subenc/Makefile.in index cae30dab..b5a3d539 100644 --- a/gst/subenc/Makefile.in +++ b/gst/subenc/Makefile.in @@ -1,4 +1,4 @@ -# Makefile.in generated by automake 1.11.5 from Makefile.am. +# Makefile.in generated by automake 1.11.6 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, @@ -237,11 +237,10 @@ DIRECT3D_LIBS = @DIRECT3D_LIBS@ DIRECTDRAW_LIBS = @DIRECTDRAW_LIBS@ DIRECTFB_CFLAGS = @DIRECTFB_CFLAGS@ DIRECTFB_LIBS = @DIRECTFB_LIBS@ +DIRECTSHOW_LIBS = @DIRECTSHOW_LIBS@ DIRECTSOUND_LIBS = @DIRECTSOUND_LIBS@ DIRECTX_CFLAGS = @DIRECTX_CFLAGS@ DIRECTX_LDFLAGS = @DIRECTX_LDFLAGS@ -DIVXDEC_LIBS = @DIVXDEC_LIBS@ -DIVXENC_LIBS = @DIVXENC_LIBS@ DLLTOOL = @DLLTOOL@ DSYMUTIL = @DSYMUTIL@ DTS_LIBS = @DTS_LIBS@ @@ -276,7 +275,9 @@ GIO_LIBS = @GIO_LIBS@ GLIB_CFLAGS = @GLIB_CFLAGS@ GLIB_COMPILE_SCHEMAS = @GLIB_COMPILE_SCHEMAS@ GLIB_EXTRA_CFLAGS = @GLIB_EXTRA_CFLAGS@ +GLIB_GENMARSHAL = @GLIB_GENMARSHAL@ GLIB_LIBS = @GLIB_LIBS@ +GLIB_MKENUMS = @GLIB_MKENUMS@ GLIB_PREFIX = @GLIB_PREFIX@ GLIB_REQ = @GLIB_REQ@ GME_LIBS = @GME_LIBS@ @@ -352,13 +353,14 @@ HAVE_CXX = @HAVE_CXX@ HAVE_DIRECT3D = @HAVE_DIRECT3D@ HAVE_DIRECT3D9 = @HAVE_DIRECT3D9@ HAVE_DIRECTDRAW = @HAVE_DIRECTDRAW@ +HAVE_DIRECTSHOW = @HAVE_DIRECTSHOW@ HAVE_DIRECTSOUND = @HAVE_DIRECTSOUND@ HAVE_DTS = @HAVE_DTS@ HAVE_FAAC = @HAVE_FAAC@ HAVE_FAAD = @HAVE_FAAD@ HAVE_FLITE = @HAVE_FLITE@ HAVE_GSM = @HAVE_GSM@ -HAVE_JP2K = @HAVE_JP2K@ +HAVE_JASPER = @HAVE_JASPER@ HAVE_NAS = @HAVE_NAS@ HAVE_VPX = @HAVE_VPX@ HAVE_WILDMIDI = @HAVE_WILDMIDI@ @@ -372,7 +374,7 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ INTLLIBS = @INTLLIBS@ INTL_MACOSX_LIBS = @INTL_MACOSX_LIBS@ -JP2K_LIBS = @JP2K_LIBS@ +JASPER_LIBS = @JASPER_LIBS@ KATE_CFLAGS = @KATE_CFLAGS@ KATE_LIBS = @KATE_LIBS@ LD = @LD@ @@ -408,6 +410,8 @@ MODPLUG_CFLAGS = @MODPLUG_CFLAGS@ MODPLUG_LIBS = @MODPLUG_LIBS@ MPEG2ENC_CFLAGS = @MPEG2ENC_CFLAGS@ MPEG2ENC_LIBS = @MPEG2ENC_LIBS@ +MPG123_CFLAGS = @MPG123_CFLAGS@ +MPG123_LIBS = @MPG123_LIBS@ MPLEX_CFLAGS = @MPLEX_CFLAGS@ MPLEX_LDFLAGS = @MPLEX_LDFLAGS@ MPLEX_LIBS = @MPLEX_LIBS@ diff --git a/gst/tta/Makefile.in b/gst/tta/Makefile.in index 2b52ae12..5d103c1c 100644 --- a/gst/tta/Makefile.in +++ b/gst/tta/Makefile.in @@ -1,4 +1,4 @@ -# Makefile.in generated by automake 1.11.5 from Makefile.am. +# Makefile.in generated by automake 1.11.6 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, @@ -238,11 +238,10 @@ DIRECT3D_LIBS = @DIRECT3D_LIBS@ DIRECTDRAW_LIBS = @DIRECTDRAW_LIBS@ DIRECTFB_CFLAGS = @DIRECTFB_CFLAGS@ DIRECTFB_LIBS = @DIRECTFB_LIBS@ +DIRECTSHOW_LIBS = @DIRECTSHOW_LIBS@ DIRECTSOUND_LIBS = @DIRECTSOUND_LIBS@ DIRECTX_CFLAGS = @DIRECTX_CFLAGS@ DIRECTX_LDFLAGS = @DIRECTX_LDFLAGS@ -DIVXDEC_LIBS = @DIVXDEC_LIBS@ -DIVXENC_LIBS = @DIVXENC_LIBS@ DLLTOOL = @DLLTOOL@ DSYMUTIL = @DSYMUTIL@ DTS_LIBS = @DTS_LIBS@ @@ -277,7 +276,9 @@ GIO_LIBS = @GIO_LIBS@ GLIB_CFLAGS = @GLIB_CFLAGS@ GLIB_COMPILE_SCHEMAS = @GLIB_COMPILE_SCHEMAS@ GLIB_EXTRA_CFLAGS = @GLIB_EXTRA_CFLAGS@ +GLIB_GENMARSHAL = @GLIB_GENMARSHAL@ GLIB_LIBS = @GLIB_LIBS@ +GLIB_MKENUMS = @GLIB_MKENUMS@ GLIB_PREFIX = @GLIB_PREFIX@ GLIB_REQ = @GLIB_REQ@ GME_LIBS = @GME_LIBS@ @@ -353,13 +354,14 @@ HAVE_CXX = @HAVE_CXX@ HAVE_DIRECT3D = @HAVE_DIRECT3D@ HAVE_DIRECT3D9 = @HAVE_DIRECT3D9@ HAVE_DIRECTDRAW = @HAVE_DIRECTDRAW@ +HAVE_DIRECTSHOW = @HAVE_DIRECTSHOW@ HAVE_DIRECTSOUND = @HAVE_DIRECTSOUND@ HAVE_DTS = @HAVE_DTS@ HAVE_FAAC = @HAVE_FAAC@ HAVE_FAAD = @HAVE_FAAD@ HAVE_FLITE = @HAVE_FLITE@ HAVE_GSM = @HAVE_GSM@ -HAVE_JP2K = @HAVE_JP2K@ +HAVE_JASPER = @HAVE_JASPER@ HAVE_NAS = @HAVE_NAS@ HAVE_VPX = @HAVE_VPX@ HAVE_WILDMIDI = @HAVE_WILDMIDI@ @@ -373,7 +375,7 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ INTLLIBS = @INTLLIBS@ INTL_MACOSX_LIBS = @INTL_MACOSX_LIBS@ -JP2K_LIBS = @JP2K_LIBS@ +JASPER_LIBS = @JASPER_LIBS@ KATE_CFLAGS = @KATE_CFLAGS@ KATE_LIBS = @KATE_LIBS@ LD = @LD@ @@ -409,6 +411,8 @@ MODPLUG_CFLAGS = @MODPLUG_CFLAGS@ MODPLUG_LIBS = @MODPLUG_LIBS@ MPEG2ENC_CFLAGS = @MPEG2ENC_CFLAGS@ MPEG2ENC_LIBS = @MPEG2ENC_LIBS@ +MPG123_CFLAGS = @MPG123_CFLAGS@ +MPG123_LIBS = @MPG123_LIBS@ MPLEX_CFLAGS = @MPLEX_CFLAGS@ MPLEX_LDFLAGS = @MPLEX_LDFLAGS@ MPLEX_LIBS = @MPLEX_LIBS@ diff --git a/gst/tta/gstttaparse.c b/gst/tta/gstttaparse.c index 80f93b7b..fe1f4f0a 100644 --- a/gst/tta/gstttaparse.c +++ b/gst/tta/gstttaparse.c @@ -215,7 +215,7 @@ gst_tta_parse_src_event (GstPad * pad, GstEvent * event) ttaparse->num_frames * FRAME_TIME * GST_SECOND, 0)); gst_pad_start_task (ttaparse->sinkpad, - (GstTaskFunction) gst_tta_parse_loop, ttaparse); + (GstTaskFunction) gst_tta_parse_loop, ttaparse, NULL); GST_PAD_STREAM_UNLOCK (ttaparse->sinkpad); @@ -312,7 +312,8 @@ gst_tta_parse_activate_pull (GstPad * pad, gboolean active) GstTtaParse *ttaparse = GST_TTA_PARSE (GST_OBJECT_PARENT (pad)); if (active) { - gst_pad_start_task (pad, (GstTaskFunction) gst_tta_parse_loop, ttaparse); + gst_pad_start_task (pad, (GstTaskFunction) gst_tta_parse_loop, ttaparse, + NULL); } else { gst_pad_stop_task (pad); } diff --git a/gst/videofilters/Makefile.in b/gst/videofilters/Makefile.in index b1ca5a85..e6a28ec6 100644 --- a/gst/videofilters/Makefile.in +++ b/gst/videofilters/Makefile.in @@ -1,4 +1,4 @@ -# Makefile.in generated by automake 1.11.5 from Makefile.am. +# Makefile.in generated by automake 1.11.6 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, @@ -243,11 +243,10 @@ DIRECT3D_LIBS = @DIRECT3D_LIBS@ DIRECTDRAW_LIBS = @DIRECTDRAW_LIBS@ DIRECTFB_CFLAGS = @DIRECTFB_CFLAGS@ DIRECTFB_LIBS = @DIRECTFB_LIBS@ +DIRECTSHOW_LIBS = @DIRECTSHOW_LIBS@ DIRECTSOUND_LIBS = @DIRECTSOUND_LIBS@ DIRECTX_CFLAGS = @DIRECTX_CFLAGS@ DIRECTX_LDFLAGS = @DIRECTX_LDFLAGS@ -DIVXDEC_LIBS = @DIVXDEC_LIBS@ -DIVXENC_LIBS = @DIVXENC_LIBS@ DLLTOOL = @DLLTOOL@ DSYMUTIL = @DSYMUTIL@ DTS_LIBS = @DTS_LIBS@ @@ -282,7 +281,9 @@ GIO_LIBS = @GIO_LIBS@ GLIB_CFLAGS = @GLIB_CFLAGS@ GLIB_COMPILE_SCHEMAS = @GLIB_COMPILE_SCHEMAS@ GLIB_EXTRA_CFLAGS = @GLIB_EXTRA_CFLAGS@ +GLIB_GENMARSHAL = @GLIB_GENMARSHAL@ GLIB_LIBS = @GLIB_LIBS@ +GLIB_MKENUMS = @GLIB_MKENUMS@ GLIB_PREFIX = @GLIB_PREFIX@ GLIB_REQ = @GLIB_REQ@ GME_LIBS = @GME_LIBS@ @@ -358,13 +359,14 @@ HAVE_CXX = @HAVE_CXX@ HAVE_DIRECT3D = @HAVE_DIRECT3D@ HAVE_DIRECT3D9 = @HAVE_DIRECT3D9@ HAVE_DIRECTDRAW = @HAVE_DIRECTDRAW@ +HAVE_DIRECTSHOW = @HAVE_DIRECTSHOW@ HAVE_DIRECTSOUND = @HAVE_DIRECTSOUND@ HAVE_DTS = @HAVE_DTS@ HAVE_FAAC = @HAVE_FAAC@ HAVE_FAAD = @HAVE_FAAD@ HAVE_FLITE = @HAVE_FLITE@ HAVE_GSM = @HAVE_GSM@ -HAVE_JP2K = @HAVE_JP2K@ +HAVE_JASPER = @HAVE_JASPER@ HAVE_NAS = @HAVE_NAS@ HAVE_VPX = @HAVE_VPX@ HAVE_WILDMIDI = @HAVE_WILDMIDI@ @@ -378,7 +380,7 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ INTLLIBS = @INTLLIBS@ INTL_MACOSX_LIBS = @INTL_MACOSX_LIBS@ -JP2K_LIBS = @JP2K_LIBS@ +JASPER_LIBS = @JASPER_LIBS@ KATE_CFLAGS = @KATE_CFLAGS@ KATE_LIBS = @KATE_LIBS@ LD = @LD@ @@ -414,6 +416,8 @@ MODPLUG_CFLAGS = @MODPLUG_CFLAGS@ MODPLUG_LIBS = @MODPLUG_LIBS@ MPEG2ENC_CFLAGS = @MPEG2ENC_CFLAGS@ MPEG2ENC_LIBS = @MPEG2ENC_LIBS@ +MPG123_CFLAGS = @MPG123_CFLAGS@ +MPG123_LIBS = @MPG123_LIBS@ MPLEX_CFLAGS = @MPLEX_CFLAGS@ MPLEX_LDFLAGS = @MPLEX_LDFLAGS@ MPLEX_LIBS = @MPLEX_LIBS@ diff --git a/gst/videomeasure/Makefile.in b/gst/videomeasure/Makefile.in index 83b51fd9..87df987e 100644 --- a/gst/videomeasure/Makefile.in +++ b/gst/videomeasure/Makefile.in @@ -1,4 +1,4 @@ -# Makefile.in generated by automake 1.11.5 from Makefile.am. +# Makefile.in generated by automake 1.11.6 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, @@ -241,11 +241,10 @@ DIRECT3D_LIBS = @DIRECT3D_LIBS@ DIRECTDRAW_LIBS = @DIRECTDRAW_LIBS@ DIRECTFB_CFLAGS = @DIRECTFB_CFLAGS@ DIRECTFB_LIBS = @DIRECTFB_LIBS@ +DIRECTSHOW_LIBS = @DIRECTSHOW_LIBS@ DIRECTSOUND_LIBS = @DIRECTSOUND_LIBS@ DIRECTX_CFLAGS = @DIRECTX_CFLAGS@ DIRECTX_LDFLAGS = @DIRECTX_LDFLAGS@ -DIVXDEC_LIBS = @DIVXDEC_LIBS@ -DIVXENC_LIBS = @DIVXENC_LIBS@ DLLTOOL = @DLLTOOL@ DSYMUTIL = @DSYMUTIL@ DTS_LIBS = @DTS_LIBS@ @@ -280,7 +279,9 @@ GIO_LIBS = @GIO_LIBS@ GLIB_CFLAGS = @GLIB_CFLAGS@ GLIB_COMPILE_SCHEMAS = @GLIB_COMPILE_SCHEMAS@ GLIB_EXTRA_CFLAGS = @GLIB_EXTRA_CFLAGS@ +GLIB_GENMARSHAL = @GLIB_GENMARSHAL@ GLIB_LIBS = @GLIB_LIBS@ +GLIB_MKENUMS = @GLIB_MKENUMS@ GLIB_PREFIX = @GLIB_PREFIX@ GLIB_REQ = @GLIB_REQ@ GME_LIBS = @GME_LIBS@ @@ -356,13 +357,14 @@ HAVE_CXX = @HAVE_CXX@ HAVE_DIRECT3D = @HAVE_DIRECT3D@ HAVE_DIRECT3D9 = @HAVE_DIRECT3D9@ HAVE_DIRECTDRAW = @HAVE_DIRECTDRAW@ +HAVE_DIRECTSHOW = @HAVE_DIRECTSHOW@ HAVE_DIRECTSOUND = @HAVE_DIRECTSOUND@ HAVE_DTS = @HAVE_DTS@ HAVE_FAAC = @HAVE_FAAC@ HAVE_FAAD = @HAVE_FAAD@ HAVE_FLITE = @HAVE_FLITE@ HAVE_GSM = @HAVE_GSM@ -HAVE_JP2K = @HAVE_JP2K@ +HAVE_JASPER = @HAVE_JASPER@ HAVE_NAS = @HAVE_NAS@ HAVE_VPX = @HAVE_VPX@ HAVE_WILDMIDI = @HAVE_WILDMIDI@ @@ -376,7 +378,7 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ INTLLIBS = @INTLLIBS@ INTL_MACOSX_LIBS = @INTL_MACOSX_LIBS@ -JP2K_LIBS = @JP2K_LIBS@ +JASPER_LIBS = @JASPER_LIBS@ KATE_CFLAGS = @KATE_CFLAGS@ KATE_LIBS = @KATE_LIBS@ LD = @LD@ @@ -412,6 +414,8 @@ MODPLUG_CFLAGS = @MODPLUG_CFLAGS@ MODPLUG_LIBS = @MODPLUG_LIBS@ MPEG2ENC_CFLAGS = @MPEG2ENC_CFLAGS@ MPEG2ENC_LIBS = @MPEG2ENC_LIBS@ +MPG123_CFLAGS = @MPG123_CFLAGS@ +MPG123_LIBS = @MPG123_LIBS@ MPLEX_CFLAGS = @MPLEX_CFLAGS@ MPLEX_LDFLAGS = @MPLEX_LDFLAGS@ MPLEX_LIBS = @MPLEX_LIBS@ diff --git a/gst/videoparsers/Makefile.in b/gst/videoparsers/Makefile.in index f86daf8b..1e153805 100644 --- a/gst/videoparsers/Makefile.in +++ b/gst/videoparsers/Makefile.in @@ -1,4 +1,4 @@ -# Makefile.in generated by automake 1.11.5 from Makefile.am. +# Makefile.in generated by automake 1.11.6 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, @@ -247,11 +247,10 @@ DIRECT3D_LIBS = @DIRECT3D_LIBS@ DIRECTDRAW_LIBS = @DIRECTDRAW_LIBS@ DIRECTFB_CFLAGS = @DIRECTFB_CFLAGS@ DIRECTFB_LIBS = @DIRECTFB_LIBS@ +DIRECTSHOW_LIBS = @DIRECTSHOW_LIBS@ DIRECTSOUND_LIBS = @DIRECTSOUND_LIBS@ DIRECTX_CFLAGS = @DIRECTX_CFLAGS@ DIRECTX_LDFLAGS = @DIRECTX_LDFLAGS@ -DIVXDEC_LIBS = @DIVXDEC_LIBS@ -DIVXENC_LIBS = @DIVXENC_LIBS@ DLLTOOL = @DLLTOOL@ DSYMUTIL = @DSYMUTIL@ DTS_LIBS = @DTS_LIBS@ @@ -286,7 +285,9 @@ GIO_LIBS = @GIO_LIBS@ GLIB_CFLAGS = @GLIB_CFLAGS@ GLIB_COMPILE_SCHEMAS = @GLIB_COMPILE_SCHEMAS@ GLIB_EXTRA_CFLAGS = @GLIB_EXTRA_CFLAGS@ +GLIB_GENMARSHAL = @GLIB_GENMARSHAL@ GLIB_LIBS = @GLIB_LIBS@ +GLIB_MKENUMS = @GLIB_MKENUMS@ GLIB_PREFIX = @GLIB_PREFIX@ GLIB_REQ = @GLIB_REQ@ GME_LIBS = @GME_LIBS@ @@ -362,13 +363,14 @@ HAVE_CXX = @HAVE_CXX@ HAVE_DIRECT3D = @HAVE_DIRECT3D@ HAVE_DIRECT3D9 = @HAVE_DIRECT3D9@ HAVE_DIRECTDRAW = @HAVE_DIRECTDRAW@ +HAVE_DIRECTSHOW = @HAVE_DIRECTSHOW@ HAVE_DIRECTSOUND = @HAVE_DIRECTSOUND@ HAVE_DTS = @HAVE_DTS@ HAVE_FAAC = @HAVE_FAAC@ HAVE_FAAD = @HAVE_FAAD@ HAVE_FLITE = @HAVE_FLITE@ HAVE_GSM = @HAVE_GSM@ -HAVE_JP2K = @HAVE_JP2K@ +HAVE_JASPER = @HAVE_JASPER@ HAVE_NAS = @HAVE_NAS@ HAVE_VPX = @HAVE_VPX@ HAVE_WILDMIDI = @HAVE_WILDMIDI@ @@ -382,7 +384,7 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ INTLLIBS = @INTLLIBS@ INTL_MACOSX_LIBS = @INTL_MACOSX_LIBS@ -JP2K_LIBS = @JP2K_LIBS@ +JASPER_LIBS = @JASPER_LIBS@ KATE_CFLAGS = @KATE_CFLAGS@ KATE_LIBS = @KATE_LIBS@ LD = @LD@ @@ -418,6 +420,8 @@ MODPLUG_CFLAGS = @MODPLUG_CFLAGS@ MODPLUG_LIBS = @MODPLUG_LIBS@ MPEG2ENC_CFLAGS = @MPEG2ENC_CFLAGS@ MPEG2ENC_LIBS = @MPEG2ENC_LIBS@ +MPG123_CFLAGS = @MPG123_CFLAGS@ +MPG123_LIBS = @MPG123_LIBS@ MPLEX_CFLAGS = @MPLEX_CFLAGS@ MPLEX_LDFLAGS = @MPLEX_LDFLAGS@ MPLEX_LIBS = @MPLEX_LIBS@ diff --git a/gst/videoparsers/gstmpegvideoparse.c b/gst/videoparsers/gstmpegvideoparse.c index 022016e2..7892229b 100644 --- a/gst/videoparsers/gstmpegvideoparse.c +++ b/gst/videoparsers/gstmpegvideoparse.c @@ -786,7 +786,7 @@ gst_mpegv_parse_pre_push_frame (GstBaseParse * parse, GstBaseParseFrame * frame) g_free (codec); gst_pad_push_event (GST_BASE_PARSE_SRC_PAD (mpvparse), - gst_event_new_tag ("GstParser", taglist)); + gst_event_new_tag (taglist)); mpvparse->send_codec_tag = FALSE; } diff --git a/gst/videosignal/Makefile.in b/gst/videosignal/Makefile.in index 8edb66f8..e4ee90d4 100644 --- a/gst/videosignal/Makefile.in +++ b/gst/videosignal/Makefile.in @@ -1,4 +1,4 @@ -# Makefile.in generated by automake 1.11.5 from Makefile.am. +# Makefile.in generated by automake 1.11.6 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, @@ -241,11 +241,10 @@ DIRECT3D_LIBS = @DIRECT3D_LIBS@ DIRECTDRAW_LIBS = @DIRECTDRAW_LIBS@ DIRECTFB_CFLAGS = @DIRECTFB_CFLAGS@ DIRECTFB_LIBS = @DIRECTFB_LIBS@ +DIRECTSHOW_LIBS = @DIRECTSHOW_LIBS@ DIRECTSOUND_LIBS = @DIRECTSOUND_LIBS@ DIRECTX_CFLAGS = @DIRECTX_CFLAGS@ DIRECTX_LDFLAGS = @DIRECTX_LDFLAGS@ -DIVXDEC_LIBS = @DIVXDEC_LIBS@ -DIVXENC_LIBS = @DIVXENC_LIBS@ DLLTOOL = @DLLTOOL@ DSYMUTIL = @DSYMUTIL@ DTS_LIBS = @DTS_LIBS@ @@ -280,7 +279,9 @@ GIO_LIBS = @GIO_LIBS@ GLIB_CFLAGS = @GLIB_CFLAGS@ GLIB_COMPILE_SCHEMAS = @GLIB_COMPILE_SCHEMAS@ GLIB_EXTRA_CFLAGS = @GLIB_EXTRA_CFLAGS@ +GLIB_GENMARSHAL = @GLIB_GENMARSHAL@ GLIB_LIBS = @GLIB_LIBS@ +GLIB_MKENUMS = @GLIB_MKENUMS@ GLIB_PREFIX = @GLIB_PREFIX@ GLIB_REQ = @GLIB_REQ@ GME_LIBS = @GME_LIBS@ @@ -356,13 +357,14 @@ HAVE_CXX = @HAVE_CXX@ HAVE_DIRECT3D = @HAVE_DIRECT3D@ HAVE_DIRECT3D9 = @HAVE_DIRECT3D9@ HAVE_DIRECTDRAW = @HAVE_DIRECTDRAW@ +HAVE_DIRECTSHOW = @HAVE_DIRECTSHOW@ HAVE_DIRECTSOUND = @HAVE_DIRECTSOUND@ HAVE_DTS = @HAVE_DTS@ HAVE_FAAC = @HAVE_FAAC@ HAVE_FAAD = @HAVE_FAAD@ HAVE_FLITE = @HAVE_FLITE@ HAVE_GSM = @HAVE_GSM@ -HAVE_JP2K = @HAVE_JP2K@ +HAVE_JASPER = @HAVE_JASPER@ HAVE_NAS = @HAVE_NAS@ HAVE_VPX = @HAVE_VPX@ HAVE_WILDMIDI = @HAVE_WILDMIDI@ @@ -376,7 +378,7 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ INTLLIBS = @INTLLIBS@ INTL_MACOSX_LIBS = @INTL_MACOSX_LIBS@ -JP2K_LIBS = @JP2K_LIBS@ +JASPER_LIBS = @JASPER_LIBS@ KATE_CFLAGS = @KATE_CFLAGS@ KATE_LIBS = @KATE_LIBS@ LD = @LD@ @@ -412,6 +414,8 @@ MODPLUG_CFLAGS = @MODPLUG_CFLAGS@ MODPLUG_LIBS = @MODPLUG_LIBS@ MPEG2ENC_CFLAGS = @MPEG2ENC_CFLAGS@ MPEG2ENC_LIBS = @MPEG2ENC_LIBS@ +MPG123_CFLAGS = @MPG123_CFLAGS@ +MPG123_LIBS = @MPG123_LIBS@ MPLEX_CFLAGS = @MPLEX_CFLAGS@ MPLEX_LDFLAGS = @MPLEX_LDFLAGS@ MPLEX_LIBS = @MPLEX_LIBS@ diff --git a/gst/vmnc/Makefile.in b/gst/vmnc/Makefile.in index 8732a980..eef36bf3 100644 --- a/gst/vmnc/Makefile.in +++ b/gst/vmnc/Makefile.in @@ -1,4 +1,4 @@ -# Makefile.in generated by automake 1.11.5 from Makefile.am. +# Makefile.in generated by automake 1.11.6 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, @@ -234,11 +234,10 @@ DIRECT3D_LIBS = @DIRECT3D_LIBS@ DIRECTDRAW_LIBS = @DIRECTDRAW_LIBS@ DIRECTFB_CFLAGS = @DIRECTFB_CFLAGS@ DIRECTFB_LIBS = @DIRECTFB_LIBS@ +DIRECTSHOW_LIBS = @DIRECTSHOW_LIBS@ DIRECTSOUND_LIBS = @DIRECTSOUND_LIBS@ DIRECTX_CFLAGS = @DIRECTX_CFLAGS@ DIRECTX_LDFLAGS = @DIRECTX_LDFLAGS@ -DIVXDEC_LIBS = @DIVXDEC_LIBS@ -DIVXENC_LIBS = @DIVXENC_LIBS@ DLLTOOL = @DLLTOOL@ DSYMUTIL = @DSYMUTIL@ DTS_LIBS = @DTS_LIBS@ @@ -273,7 +272,9 @@ GIO_LIBS = @GIO_LIBS@ GLIB_CFLAGS = @GLIB_CFLAGS@ GLIB_COMPILE_SCHEMAS = @GLIB_COMPILE_SCHEMAS@ GLIB_EXTRA_CFLAGS = @GLIB_EXTRA_CFLAGS@ +GLIB_GENMARSHAL = @GLIB_GENMARSHAL@ GLIB_LIBS = @GLIB_LIBS@ +GLIB_MKENUMS = @GLIB_MKENUMS@ GLIB_PREFIX = @GLIB_PREFIX@ GLIB_REQ = @GLIB_REQ@ GME_LIBS = @GME_LIBS@ @@ -349,13 +350,14 @@ HAVE_CXX = @HAVE_CXX@ HAVE_DIRECT3D = @HAVE_DIRECT3D@ HAVE_DIRECT3D9 = @HAVE_DIRECT3D9@ HAVE_DIRECTDRAW = @HAVE_DIRECTDRAW@ +HAVE_DIRECTSHOW = @HAVE_DIRECTSHOW@ HAVE_DIRECTSOUND = @HAVE_DIRECTSOUND@ HAVE_DTS = @HAVE_DTS@ HAVE_FAAC = @HAVE_FAAC@ HAVE_FAAD = @HAVE_FAAD@ HAVE_FLITE = @HAVE_FLITE@ HAVE_GSM = @HAVE_GSM@ -HAVE_JP2K = @HAVE_JP2K@ +HAVE_JASPER = @HAVE_JASPER@ HAVE_NAS = @HAVE_NAS@ HAVE_VPX = @HAVE_VPX@ HAVE_WILDMIDI = @HAVE_WILDMIDI@ @@ -369,7 +371,7 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ INTLLIBS = @INTLLIBS@ INTL_MACOSX_LIBS = @INTL_MACOSX_LIBS@ -JP2K_LIBS = @JP2K_LIBS@ +JASPER_LIBS = @JASPER_LIBS@ KATE_CFLAGS = @KATE_CFLAGS@ KATE_LIBS = @KATE_LIBS@ LD = @LD@ @@ -405,6 +407,8 @@ MODPLUG_CFLAGS = @MODPLUG_CFLAGS@ MODPLUG_LIBS = @MODPLUG_LIBS@ MPEG2ENC_CFLAGS = @MPEG2ENC_CFLAGS@ MPEG2ENC_LIBS = @MPEG2ENC_LIBS@ +MPG123_CFLAGS = @MPG123_CFLAGS@ +MPG123_LIBS = @MPG123_LIBS@ MPLEX_CFLAGS = @MPLEX_CFLAGS@ MPLEX_LDFLAGS = @MPLEX_LDFLAGS@ MPLEX_LIBS = @MPLEX_LIBS@ diff --git a/gst/y4m/Makefile.in b/gst/y4m/Makefile.in index bb497013..c94d4466 100644 --- a/gst/y4m/Makefile.in +++ b/gst/y4m/Makefile.in @@ -1,4 +1,4 @@ -# Makefile.in generated by automake 1.11.5 from Makefile.am. +# Makefile.in generated by automake 1.11.6 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, @@ -237,11 +237,10 @@ DIRECT3D_LIBS = @DIRECT3D_LIBS@ DIRECTDRAW_LIBS = @DIRECTDRAW_LIBS@ DIRECTFB_CFLAGS = @DIRECTFB_CFLAGS@ DIRECTFB_LIBS = @DIRECTFB_LIBS@ +DIRECTSHOW_LIBS = @DIRECTSHOW_LIBS@ DIRECTSOUND_LIBS = @DIRECTSOUND_LIBS@ DIRECTX_CFLAGS = @DIRECTX_CFLAGS@ DIRECTX_LDFLAGS = @DIRECTX_LDFLAGS@ -DIVXDEC_LIBS = @DIVXDEC_LIBS@ -DIVXENC_LIBS = @DIVXENC_LIBS@ DLLTOOL = @DLLTOOL@ DSYMUTIL = @DSYMUTIL@ DTS_LIBS = @DTS_LIBS@ @@ -276,7 +275,9 @@ GIO_LIBS = @GIO_LIBS@ GLIB_CFLAGS = @GLIB_CFLAGS@ GLIB_COMPILE_SCHEMAS = @GLIB_COMPILE_SCHEMAS@ GLIB_EXTRA_CFLAGS = @GLIB_EXTRA_CFLAGS@ +GLIB_GENMARSHAL = @GLIB_GENMARSHAL@ GLIB_LIBS = @GLIB_LIBS@ +GLIB_MKENUMS = @GLIB_MKENUMS@ GLIB_PREFIX = @GLIB_PREFIX@ GLIB_REQ = @GLIB_REQ@ GME_LIBS = @GME_LIBS@ @@ -352,13 +353,14 @@ HAVE_CXX = @HAVE_CXX@ HAVE_DIRECT3D = @HAVE_DIRECT3D@ HAVE_DIRECT3D9 = @HAVE_DIRECT3D9@ HAVE_DIRECTDRAW = @HAVE_DIRECTDRAW@ +HAVE_DIRECTSHOW = @HAVE_DIRECTSHOW@ HAVE_DIRECTSOUND = @HAVE_DIRECTSOUND@ HAVE_DTS = @HAVE_DTS@ HAVE_FAAC = @HAVE_FAAC@ HAVE_FAAD = @HAVE_FAAD@ HAVE_FLITE = @HAVE_FLITE@ HAVE_GSM = @HAVE_GSM@ -HAVE_JP2K = @HAVE_JP2K@ +HAVE_JASPER = @HAVE_JASPER@ HAVE_NAS = @HAVE_NAS@ HAVE_VPX = @HAVE_VPX@ HAVE_WILDMIDI = @HAVE_WILDMIDI@ @@ -372,7 +374,7 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ INTLLIBS = @INTLLIBS@ INTL_MACOSX_LIBS = @INTL_MACOSX_LIBS@ -JP2K_LIBS = @JP2K_LIBS@ +JASPER_LIBS = @JASPER_LIBS@ KATE_CFLAGS = @KATE_CFLAGS@ KATE_LIBS = @KATE_LIBS@ LD = @LD@ @@ -408,6 +410,8 @@ MODPLUG_CFLAGS = @MODPLUG_CFLAGS@ MODPLUG_LIBS = @MODPLUG_LIBS@ MPEG2ENC_CFLAGS = @MPEG2ENC_CFLAGS@ MPEG2ENC_LIBS = @MPEG2ENC_LIBS@ +MPG123_CFLAGS = @MPG123_CFLAGS@ +MPG123_LIBS = @MPG123_LIBS@ MPLEX_CFLAGS = @MPLEX_CFLAGS@ MPLEX_LDFLAGS = @MPLEX_LDFLAGS@ MPLEX_LIBS = @MPLEX_LIBS@ @@ -70,7 +70,7 @@ # compiler: $LTCC # compiler flags: $LTCFLAGS # linker: $LD (gnu? $with_gnu_ld) -# $progname: (GNU libtool) 2.4.2 Debian-2.4.2-1 +# $progname: (GNU libtool) 2.4.2 Debian-2.4.2-1.1 # automake: $automake_version # autoconf: $autoconf_version # @@ -80,7 +80,7 @@ PROGRAM=libtool PACKAGE=libtool -VERSION="2.4.2 Debian-2.4.2-1" +VERSION="2.4.2 Debian-2.4.2-1.1" TIMESTAMP="" package_revision=1.3337 diff --git a/m4/Makefile.am b/m4/Makefile.am index 8357591c..d4e78930 100644 --- a/m4/Makefile.am +++ b/m4/Makefile.am @@ -1,7 +1,6 @@ EXTRA_DIST = \ a52.m4 \ aalib.m4 \ - as-arts.m4 \ as-ffmpeg.m4 \ as-liblame.m4 \ as-slurp-ffmpeg.m4 \ @@ -11,7 +10,6 @@ EXTRA_DIST = \ gconf-2.m4 \ gettext.m4 \ glibc21.m4 \ - gst-artsc.m4 \ gst-fionread.m4 \ gst-sdl.m4 \ gst-sid.m4 \ diff --git a/m4/Makefile.in b/m4/Makefile.in index fcb4a444..7d339045 100644 --- a/m4/Makefile.in +++ b/m4/Makefile.in @@ -1,4 +1,4 @@ -# Makefile.in generated by automake 1.11.5 from Makefile.am. +# Makefile.in generated by automake 1.11.6 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, @@ -170,11 +170,10 @@ DIRECT3D_LIBS = @DIRECT3D_LIBS@ DIRECTDRAW_LIBS = @DIRECTDRAW_LIBS@ DIRECTFB_CFLAGS = @DIRECTFB_CFLAGS@ DIRECTFB_LIBS = @DIRECTFB_LIBS@ +DIRECTSHOW_LIBS = @DIRECTSHOW_LIBS@ DIRECTSOUND_LIBS = @DIRECTSOUND_LIBS@ DIRECTX_CFLAGS = @DIRECTX_CFLAGS@ DIRECTX_LDFLAGS = @DIRECTX_LDFLAGS@ -DIVXDEC_LIBS = @DIVXDEC_LIBS@ -DIVXENC_LIBS = @DIVXENC_LIBS@ DLLTOOL = @DLLTOOL@ DSYMUTIL = @DSYMUTIL@ DTS_LIBS = @DTS_LIBS@ @@ -209,7 +208,9 @@ GIO_LIBS = @GIO_LIBS@ GLIB_CFLAGS = @GLIB_CFLAGS@ GLIB_COMPILE_SCHEMAS = @GLIB_COMPILE_SCHEMAS@ GLIB_EXTRA_CFLAGS = @GLIB_EXTRA_CFLAGS@ +GLIB_GENMARSHAL = @GLIB_GENMARSHAL@ GLIB_LIBS = @GLIB_LIBS@ +GLIB_MKENUMS = @GLIB_MKENUMS@ GLIB_PREFIX = @GLIB_PREFIX@ GLIB_REQ = @GLIB_REQ@ GME_LIBS = @GME_LIBS@ @@ -285,13 +286,14 @@ HAVE_CXX = @HAVE_CXX@ HAVE_DIRECT3D = @HAVE_DIRECT3D@ HAVE_DIRECT3D9 = @HAVE_DIRECT3D9@ HAVE_DIRECTDRAW = @HAVE_DIRECTDRAW@ +HAVE_DIRECTSHOW = @HAVE_DIRECTSHOW@ HAVE_DIRECTSOUND = @HAVE_DIRECTSOUND@ HAVE_DTS = @HAVE_DTS@ HAVE_FAAC = @HAVE_FAAC@ HAVE_FAAD = @HAVE_FAAD@ HAVE_FLITE = @HAVE_FLITE@ HAVE_GSM = @HAVE_GSM@ -HAVE_JP2K = @HAVE_JP2K@ +HAVE_JASPER = @HAVE_JASPER@ HAVE_NAS = @HAVE_NAS@ HAVE_VPX = @HAVE_VPX@ HAVE_WILDMIDI = @HAVE_WILDMIDI@ @@ -305,7 +307,7 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ INTLLIBS = @INTLLIBS@ INTL_MACOSX_LIBS = @INTL_MACOSX_LIBS@ -JP2K_LIBS = @JP2K_LIBS@ +JASPER_LIBS = @JASPER_LIBS@ KATE_CFLAGS = @KATE_CFLAGS@ KATE_LIBS = @KATE_LIBS@ LD = @LD@ @@ -341,6 +343,8 @@ MODPLUG_CFLAGS = @MODPLUG_CFLAGS@ MODPLUG_LIBS = @MODPLUG_LIBS@ MPEG2ENC_CFLAGS = @MPEG2ENC_CFLAGS@ MPEG2ENC_LIBS = @MPEG2ENC_LIBS@ +MPG123_CFLAGS = @MPG123_CFLAGS@ +MPG123_LIBS = @MPG123_LIBS@ MPLEX_CFLAGS = @MPLEX_CFLAGS@ MPLEX_LDFLAGS = @MPLEX_LDFLAGS@ MPLEX_LIBS = @MPLEX_LIBS@ @@ -534,7 +538,6 @@ top_srcdir = @top_srcdir@ EXTRA_DIST = \ a52.m4 \ aalib.m4 \ - as-arts.m4 \ as-ffmpeg.m4 \ as-liblame.m4 \ as-slurp-ffmpeg.m4 \ @@ -544,7 +547,6 @@ EXTRA_DIST = \ gconf-2.m4 \ gettext.m4 \ glibc21.m4 \ - gst-artsc.m4 \ gst-fionread.m4 \ gst-sdl.m4 \ gst-sid.m4 \ diff --git a/m4/as-arts.m4 b/m4/as-arts.m4 deleted file mode 100644 index a66a8c2d..00000000 --- a/m4/as-arts.m4 +++ /dev/null @@ -1,209 +0,0 @@ -dnl as-arts.m4 0.1.0 - -dnl $Id: as-arts.m4,v 1.5 2004/05/21 11:20:49 thomasvs Exp $ -dnl if you copy this file to your cvs, -dnl add this file using cvs -ko add to retain this header - -dnl This is an example arts .m4 adapted and scrubbed by thomasvs - -# Configure paths for ARTS -# Philip Stadermann 2001-06-21 -# stolen from esd.m4 - -dnl AM_PATH_ARTS([MINIMUM-VERSION, [ACTION-IF-FOUND [, ACTION-IF-NOT-FOUND]]]) -dnl Test for ARTS, and define ARTS_CXXFLAGS and ARTS_LIBS -dnl -AC_DEFUN([AM_PATH_ARTS], -[dnl -dnl Get the cflags and libraries from the artsc-config script -dnl -AC_ARG_WITH(arts-prefix, - AC_HELP_STRING([--with-arts-prefix=PFX], - [prefix where ARTS is installed (optional)]), - arts_prefix="$withval", arts_prefix="") - -AC_ARG_WITH(arts-exec-prefix, - AC_HELP_STRING([--with-arts-exec-prefix=PFX], - [exec prefix where ARTS is installed (optional)]), - arts_exec_prefix="$withval", arts_exec_prefix="") - -AC_ARG_ENABLE(artstest, - AC_HELP_STRING([--disable-artstest], - [do not try to compile and run a test ARTS program]), - , enable_artstest=yes) - - if test x$arts_exec_prefix != x ; then - arts_args="$arts_args --exec-prefix=$arts_exec_prefix" - if test x${ARTS_CONFIG+set} != xset ; then - ARTS_CONFIG=$arts_exec_prefix/bin/artsc-config - fi - fi - if test x$arts_prefix != x ; then - arts_args="$arts_args --prefix=$arts_prefix" - if test x${ARTS_CONFIG+set} != xset ; then - ARTS_CONFIG=$arts_prefix/bin/artsc-config - fi - fi - - AC_PATH_PROG(ARTS_CONFIG, artsc-config, no) - min_arts_version=ifelse([$1], ,0.9.5,$1) - AC_MSG_CHECKING(for ARTS artsc - version >= $min_arts_version) - no_arts="" - if test "$ARTS_CONFIG" = "no" ; then - no_arts=yes - else - # FIXME: thomas added this sed to get arts path instead of artsc - # replace -I.../artsc with -I.../arts - ARTS_CXXFLAGS=`$ARTS_CONFIG $artsconf_args --cflags | artsc-config --cflags | sed 's/\(-I.*\)artsc/\1arts/'` - ARTS_LIBS=`$ARTS_CONFIG $artsconf_args --libs | sed 's/artsc$/arts/'` - - arts_major_version=`$ARTS_CONFIG $arts_args --version | \ - sed 's/\([[0-9]]*\).\([[0-9]]*\).\([[0-9]]*\)/\1/'` - arts_minor_version=`$ARTS_CONFIG $arts_args --version | \ - sed 's/\([[0-9]]*\).\([[0-9]]*\).\([[0-9]]*\)/\2/'` - arts_micro_version=`$ARTS_CONFIG $arts_config_args --version | \ - sed 's/\([[0-9]]*\).\([[0-9]]*\).\([[0-9]]*\)/\3/'` - if test "x$enable_artstest" = "xyes" ; then - dnl ac_save_CXXFLAGS="$CXXFLAGS" - dnl ac_save_LIBS="$LIBS" - dnl CFLAGS="$CFLAGS $ARTS_CXXFLAGS" - dnl LIBS="$LIBS $ARTS_LIBS" -dnl -dnl Now check if the installed ARTS is sufficiently new. (Also sanity -dnl checks the results of artsc-config to some extent) -dnl - -dnl a*s: to successfully compile the C++ test app, we need to -dnl first make sure we're going to compile it as C++ (with AC_LANG_PUSH), -dnl then add the CFLAGS and CLIBS of arts which we just discovered to the -dnl C++ compilation and linking flags. -dnl We also need to clean up after the test; this means using AC_LANG_POP -dnl and restoring the CPPFLAGS and LDFLAGS from the saved values we take -dnl here. - -dnl ask nicely for C++ compilation - AC_LANG_PUSH(C++) - -dnl save compilation and link flags and make our own - ac_save_CPPFLAGS="$CPPFLAGS" - ac_save_LDFLAGS="$LDFLAGS" - AC_SUBST(CPPFLAGS,"$CPPFLAGS $ARTS_CXXFLAGS") - AC_SUBST(LDFLAGS,"$LDFLAGS $ARTS_CLIBS") - - rm -f conf.artstest - AC_TRY_RUN([ -#include <stdio.h> -#include <stdlib.h> -#include <string.h> -#include <artsflow.h> - -char* -my_strdup (char *str) -{ - char *new_str; - - if (str) - { - // thomas: the original test did not have the typecast - new_str = (char *) malloc ((strlen (str) + 1) * sizeof(char)); - strcpy (new_str, str); - } - else - new_str = NULL; - - return new_str; -} - -int main () -{ - int major, minor, micro; - char *tmp_version; - - system ("touch conf.artstest"); - - /* HP/UX 9 (%@#!) writes to sscanf strings */ - tmp_version = my_strdup("$min_arts_version"); - if (sscanf(tmp_version, "%d.%d.%d", &major, &minor, µ) != 3) { - printf("%s, bad version string\n", "$min_arts_version"); - exit(1); - } - - if (($arts_major_version > major) || - (($arts_major_version == major) && ($arts_minor_version > minor)) || - (($arts_major_version == major) && ($arts_minor_version == minor) && ($arts_micro_version >= micro))) - { - return 0; - } - else - { - printf("\n*** 'artsc-config --version' returned %d.%d.%d, but the minimum version\n", $arts_major_version, $arts_minor_version, $arts_micro_version); - printf("*** of ARTS required is %d.%d.%d. If artsc-config is correct, then it is\n", major, minor, micro); - printf("*** best to upgrade to the required version.\n"); - printf("*** If artsc-config was wrong, set the environment variable ARTS_CONFIG\n"); - printf("*** to point to the correct copy of artsc-config, and remove the file\n"); - printf("*** config.cache before re-running configure\n"); - return 1; - } -} - -],, no_arts=yes,[echo $ac_n "cross compiling; assumed OK... $ac_c"]) - dnl CFLAGS="$ac_save_CFLAGS" - dnl LIBS="$ac_save_LIBS" - dnl a*s this is were we clean up after the test - AC_LANG_POP(C++) - CXXFLAGS="$ac_save_CXXFLAGS" - LDFLAGS="$ac_save_LDFLAGS" - dnl a*s we are sure that these are right, so we make them active - AC_SUBST(CXXFLAGS,"$CXXFLAGS") - AC_SUBST(LDFLAGS,"$LDFLAGS") - fi - fi - if test "x$no_arts" = x ; then - AC_MSG_RESULT(yes) - ifelse([$2], , :, [$2]) - else - AC_MSG_RESULT(no) - if test "$ARTS_CONFIG" = "no" ; then - echo "*** The artsc-config script installed by ARTS could not be found" - echo "*** If ARTS was installed in PREFIX, make sure PREFIX/bin is in" - echo "*** your path, or set the ARTS_CONFIG environment variable to the" - echo "*** full path to artsc-config." - else - if test -f conf.artstest ; then - : - else - echo "*** Could not run ARTS test program, checking why..." - CFLAGS="$CFLAGS $ARTS_CXXFLAGS" - LIBS="$LIBS $ARTS_LIBS" - AC_TRY_LINK([ -#include <stdio.h> -#include <artsflow.h> -], [ return 0; ], - [ echo "*** The test program compiled, but did not run. This usually means" - echo "*** that the run-time linker is not finding ARTS or finding the wrong" - echo "*** version of ARTS. If it is not finding ARTS, you'll need to set your" - echo "*** LD_LIBRARY_PATH environment variable, or edit /etc/ld.so.conf to point" - echo "*** to the installed location Also, make sure you have run ldconfig if that" - echo "*** is required on your system" - echo "***" - echo "*** If you have an old version installed, it is best to remove it, although" - echo "*** you may also be able to get things to work by modifying LD_LIBRARY_PATH"], - [ echo "*** The test program failed to compile or link. See the file config.log for the" - echo "*** exact error that occured. This usually means ARTS was incorrectly installed" - echo "*** or that you have moved ARTS since it was installed. In the latter case, you" - echo "*** may want to edit the artsc-config script: $ARTS_CONFIG" ]) - CFLAGS="$ac_save_CFLAGS" - LIBS="$ac_save_LIBS" - fi - fi - ARTS_CXXFLAGS="" - ARTS_LIBS="" - ifelse([$3], , :, [$3]) - fi - AC_SUBST(ARTS_CXXFLAGS) - AC_SUBST(ARTS_LIBS) - rm -f conf.artstest -]) - -dnl release C++ question - diff --git a/m4/gst-artsc.m4 b/m4/gst-artsc.m4 deleted file mode 100644 index 46599609..00000000 --- a/m4/gst-artsc.m4 +++ /dev/null @@ -1,28 +0,0 @@ -dnl Perform a check for existence of ARTSC -dnl Richard Boulton <richard-alsa@tartarus.org> -dnl Last modification: 26/06/2001 -dnl GST_CHECK_ARTSC() -dnl -dnl This check was written for GStreamer: it should be renamed and checked -dnl for portability if you decide to use it elsewhere. -dnl -AC_DEFUN([GST_CHECK_ARTSC], -[ - AC_PATH_PROG(ARTSC_CONFIG, artsc-config, no) - if test "x$ARTSC_CONFIG" = "xno"; then - AC_MSG_WARN([Couldn't find artsc-config]) - HAVE_ARTSC=no - ARTSC_LIBS= - ARTSC_CFLAGS= - else - ARTSC_LIBS=`artsc-config --libs` - ARTSC_CFLAGS=`artsc-config --cflags` - dnl AC_CHECK_HEADER uses CPPFLAGS, but not CFLAGS. - dnl FIXME: Ensure only suitable flags result from artsc-config --cflags - CPPFLAGS="$CPPFLAGS $ARTSC_CFLAGS" - AC_CHECK_HEADER(artsc.h, HAVE_ARTSC=yes, HAVE_ARTSC=no) - fi - AC_SUBST(ARTSC_LIBS) - AC_SUBST(ARTSC_CFLAGS) -]) - diff --git a/m4/libtool.m4 b/m4/libtool.m4 index 828104cf..534d1ccd 100644 --- a/m4/libtool.m4 +++ b/m4/libtool.m4 @@ -2512,17 +2512,6 @@ freebsd* | dragonfly*) esac ;; -gnu*) - version_type=linux # correct to gnu/linux during the next big refactor - need_lib_prefix=no - need_version=no - library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}${major} ${libname}${shared_ext}' - soname_spec='${libname}${release}${shared_ext}$major' - shlibpath_var=LD_LIBRARY_PATH - shlibpath_overrides_runpath=no - hardcode_into_libs=yes - ;; - haiku*) version_type=linux # correct to gnu/linux during the next big refactor need_lib_prefix=no @@ -2639,7 +2628,7 @@ linux*oldld* | linux*aout* | linux*coff*) ;; # This must be glibc/ELF. -linux* | k*bsd*-gnu | kopensolaris*-gnu) +linux* | k*bsd*-gnu | kopensolaris*-gnu | gnu*) version_type=linux # correct to gnu/linux during the next big refactor need_lib_prefix=no need_version=no @@ -3255,10 +3244,6 @@ freebsd* | dragonfly*) fi ;; -gnu*) - lt_cv_deplibs_check_method=pass_all - ;; - haiku*) lt_cv_deplibs_check_method=pass_all ;; @@ -3297,7 +3282,7 @@ irix5* | irix6* | nonstopux*) ;; # This must be glibc/ELF. -linux* | k*bsd*-gnu | kopensolaris*-gnu) +linux* | k*bsd*-gnu | kopensolaris*-gnu | gnu*) lt_cv_deplibs_check_method=pass_all ;; @@ -4049,7 +4034,7 @@ m4_if([$1], [CXX], [ ;; esac ;; - linux* | k*bsd*-gnu | kopensolaris*-gnu) + linux* | k*bsd*-gnu | kopensolaris*-gnu | gnu*) case $cc_basename in KCC*) # KAI C++ Compiler @@ -4348,7 +4333,7 @@ m4_if([$1], [CXX], [ _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared' ;; - linux* | k*bsd*-gnu | kopensolaris*-gnu) + linux* | k*bsd*-gnu | kopensolaris*-gnu | gnu*) case $cc_basename in # old Intel for x86_64 which still supported -KPIC. ecc*) @@ -6241,9 +6226,6 @@ if test "$_lt_caught_CXX_error" != yes; then _LT_TAGVAR(ld_shlibs, $1)=yes ;; - gnu*) - ;; - haiku*) _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib' _LT_TAGVAR(link_all_deplibs, $1)=yes @@ -6405,7 +6387,7 @@ if test "$_lt_caught_CXX_error" != yes; then _LT_TAGVAR(inherit_rpath, $1)=yes ;; - linux* | k*bsd*-gnu | kopensolaris*-gnu) + linux* | k*bsd*-gnu | kopensolaris*-gnu | gnu*) case $cc_basename in KCC*) # Kuck and Associates, Inc. (KAI) C++ Compiler diff --git a/pkgconfig/Makefile.in b/pkgconfig/Makefile.in index 4f1a95ee..608619eb 100644 --- a/pkgconfig/Makefile.in +++ b/pkgconfig/Makefile.in @@ -1,4 +1,4 @@ -# Makefile.in generated by automake 1.11.5 from Makefile.am. +# Makefile.in generated by automake 1.11.6 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, @@ -209,11 +209,10 @@ DIRECT3D_LIBS = @DIRECT3D_LIBS@ DIRECTDRAW_LIBS = @DIRECTDRAW_LIBS@ DIRECTFB_CFLAGS = @DIRECTFB_CFLAGS@ DIRECTFB_LIBS = @DIRECTFB_LIBS@ +DIRECTSHOW_LIBS = @DIRECTSHOW_LIBS@ DIRECTSOUND_LIBS = @DIRECTSOUND_LIBS@ DIRECTX_CFLAGS = @DIRECTX_CFLAGS@ DIRECTX_LDFLAGS = @DIRECTX_LDFLAGS@ -DIVXDEC_LIBS = @DIVXDEC_LIBS@ -DIVXENC_LIBS = @DIVXENC_LIBS@ DLLTOOL = @DLLTOOL@ DSYMUTIL = @DSYMUTIL@ DTS_LIBS = @DTS_LIBS@ @@ -248,7 +247,9 @@ GIO_LIBS = @GIO_LIBS@ GLIB_CFLAGS = @GLIB_CFLAGS@ GLIB_COMPILE_SCHEMAS = @GLIB_COMPILE_SCHEMAS@ GLIB_EXTRA_CFLAGS = @GLIB_EXTRA_CFLAGS@ +GLIB_GENMARSHAL = @GLIB_GENMARSHAL@ GLIB_LIBS = @GLIB_LIBS@ +GLIB_MKENUMS = @GLIB_MKENUMS@ GLIB_PREFIX = @GLIB_PREFIX@ GLIB_REQ = @GLIB_REQ@ GME_LIBS = @GME_LIBS@ @@ -324,13 +325,14 @@ HAVE_CXX = @HAVE_CXX@ HAVE_DIRECT3D = @HAVE_DIRECT3D@ HAVE_DIRECT3D9 = @HAVE_DIRECT3D9@ HAVE_DIRECTDRAW = @HAVE_DIRECTDRAW@ +HAVE_DIRECTSHOW = @HAVE_DIRECTSHOW@ HAVE_DIRECTSOUND = @HAVE_DIRECTSOUND@ HAVE_DTS = @HAVE_DTS@ HAVE_FAAC = @HAVE_FAAC@ HAVE_FAAD = @HAVE_FAAD@ HAVE_FLITE = @HAVE_FLITE@ HAVE_GSM = @HAVE_GSM@ -HAVE_JP2K = @HAVE_JP2K@ +HAVE_JASPER = @HAVE_JASPER@ HAVE_NAS = @HAVE_NAS@ HAVE_VPX = @HAVE_VPX@ HAVE_WILDMIDI = @HAVE_WILDMIDI@ @@ -344,7 +346,7 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ INTLLIBS = @INTLLIBS@ INTL_MACOSX_LIBS = @INTL_MACOSX_LIBS@ -JP2K_LIBS = @JP2K_LIBS@ +JASPER_LIBS = @JASPER_LIBS@ KATE_CFLAGS = @KATE_CFLAGS@ KATE_LIBS = @KATE_LIBS@ LD = @LD@ @@ -380,6 +382,8 @@ MODPLUG_CFLAGS = @MODPLUG_CFLAGS@ MODPLUG_LIBS = @MODPLUG_LIBS@ MPEG2ENC_CFLAGS = @MPEG2ENC_CFLAGS@ MPEG2ENC_LIBS = @MPEG2ENC_LIBS@ +MPG123_CFLAGS = @MPG123_CFLAGS@ +MPG123_LIBS = @MPG123_LIBS@ MPLEX_CFLAGS = @MPLEX_CFLAGS@ MPLEX_LDFLAGS = @MPLEX_LDFLAGS@ MPLEX_LIBS = @MPLEX_LIBS@ Binary files differ@@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: gst-plugins 0.7.6\n" "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n" -"POT-Creation-Date: 2012-06-07 16:21+0200\n" +"POT-Creation-Date: 2012-08-08 12:04+0100\n" "PO-Revision-Date: 2004-03-18 14:16+0200\n" "Last-Translator: Petri Jooste <rkwjpj@puk.ac.za>\n" "Language-Team: Afrikaans <i18n@af.org.za>\n" Binary files differ@@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: gst-plugins-0.8.0\n" "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n" -"POT-Creation-Date: 2012-06-07 16:21+0200\n" +"POT-Creation-Date: 2012-08-08 12:04+0100\n" "PO-Revision-Date: 2004-03-19 18:29+0200\n" "Last-Translator: Metin Amiroff <metin@karegen.com>\n" "Language-Team: Azerbaijani <translation-team-az@lists.sourceforge.net>\n" Binary files differ@@ -8,7 +8,7 @@ msgid "" msgstr "" "Project-Id-Version: gst-plugins-bad 0.10.21.2\n" "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n" -"POT-Creation-Date: 2012-06-07 16:21+0200\n" +"POT-Creation-Date: 2012-08-08 12:04+0100\n" "PO-Revision-Date: 2011-04-26 22:30+0300\n" "Last-Translator: Alexander Shopov <ash@kambanaria.org>\n" "Language-Team: Bulgarian <dict@fsa-bg.org>\n" Binary files differ@@ -9,7 +9,7 @@ msgid "" msgstr "" "Project-Id-Version: gst-plugins-bad 0.10.21.2\n" "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n" -"POT-Creation-Date: 2012-06-07 16:21+0200\n" +"POT-Creation-Date: 2012-08-08 12:04+0100\n" "PO-Revision-Date: 2012-01-01 14:19+0100\n" "Last-Translator: Gil Forcada <gforcada@gnome.org>\n" "Language-Team: Catalan <ca@dodds.net>\n" Binary files differ@@ -8,7 +8,7 @@ msgid "" msgstr "" "Project-Id-Version: gst-plugins-bad 0.10.13.2\n" "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n" -"POT-Creation-Date: 2012-06-07 16:21+0200\n" +"POT-Creation-Date: 2012-08-08 12:04+0100\n" "PO-Revision-Date: 2009-08-29 01:48+0200\n" "Last-Translator: Petr Kovar <pknbe@volny.cz>\n" "Language-Team: Czech <translation-team-cs@lists.sourceforge.net>\n" Binary files differ@@ -8,7 +8,7 @@ msgid "" msgstr "" "Project-Id-Version: gst-plugins-bad-0.10.21.2\n" "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n" -"POT-Creation-Date: 2012-06-07 16:21+0200\n" +"POT-Creation-Date: 2012-08-08 12:04+0100\n" "PO-Revision-Date: 2011-04-28 11:28+0200\n" "Last-Translator: Joe Hansen <joedalton2@yahoo.dk>\n" "Language-Team: Danish <dansk@dansk-gruppen.dk>\n" Binary files differ@@ -8,7 +8,7 @@ msgid "" msgstr "" "Project-Id-Version: gst-plugins-bad 0.10.21.2\n" "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n" -"POT-Creation-Date: 2012-06-07 16:21+0200\n" +"POT-Creation-Date: 2012-08-08 12:04+0100\n" "PO-Revision-Date: 2011-04-28 00:04+0200\n" "Last-Translator: Christian Kirbach <christian.kirbach@googlemail.com>\n" "Language-Team: German <translation-team-de@lists.sourceforge.net>\n" Binary files differ@@ -8,7 +8,7 @@ msgid "" msgstr "" "Project-Id-Version: gst-plugins-bad 0.10.18.2\n" "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n" -"POT-Creation-Date: 2012-06-07 16:21+0200\n" +"POT-Creation-Date: 2012-08-08 12:04+0100\n" "PO-Revision-Date: 2010-09-02 12:32+0300\n" "Last-Translator: Simos Xenitellis <simos.lists@googlemail.com>\n" "Language-Team: Greek <team@lists.gnome.gr>\n" diff --git a/po/en_GB.gmo b/po/en_GB.gmo Binary files differindex 663b6a55..780e254a 100644 --- a/po/en_GB.gmo +++ b/po/en_GB.gmo diff --git a/po/en_GB.po b/po/en_GB.po index 047912a4..42e03ebc 100644 --- a/po/en_GB.po +++ b/po/en_GB.po @@ -6,7 +6,7 @@ msgid "" msgstr "" "Project-Id-Version: gst-plugins 0.8.1\n" "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n" -"POT-Creation-Date: 2012-06-07 16:21+0200\n" +"POT-Creation-Date: 2012-08-08 12:04+0100\n" "PO-Revision-Date: 2004-04-26 10:41-0400\n" "Last-Translator: Gareth Owen <gowen72@yahoo.com>\n" "Language-Team: English (British) <en_gb@li.org>\n" Binary files differ@@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: gst-plugins-bad 0.10.21.2\n" "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n" -"POT-Creation-Date: 2012-06-07 16:21+0200\n" +"POT-Creation-Date: 2012-08-08 12:04+0100\n" "PO-Revision-Date: 2011-06-04 22:18+0200\n" "Last-Translator: Kristjan SCHMIDT <kristjan.schmidt@googlemail.com>\n" "Language-Team: Esperanto <translation-team-eo@lists.sourceforge.net>\n" Binary files differ@@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: gst-plugins-bad 0.10.21.2\n" "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n" -"POT-Creation-Date: 2012-06-07 16:21+0200\n" +"POT-Creation-Date: 2012-08-08 12:04+0100\n" "PO-Revision-Date: 2011-10-02 15:47+0200\n" "Last-Translator: Jorge González González <aloriel@gmail.com>\n" "Language-Team: Spanish <es@li.org>\n" Binary files differ@@ -8,7 +8,7 @@ msgid "" msgstr "" "Project-Id-Version: gst-plugins-bad-0.10.17.2\n" "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n" -"POT-Creation-Date: 2012-06-07 16:21+0200\n" +"POT-Creation-Date: 2012-08-08 12:04+0100\n" "PO-Revision-Date: 2010-03-25 12:30+0100\n" "Last-Translator: Mikel Olasagasti Uranga <hey_neken@mundurat.net>\n" "Language-Team: Basque <translation-team-eu@lists.sourceforge.net>\n" Binary files differ@@ -11,7 +11,7 @@ msgid "" msgstr "" "Project-Id-Version: gst-plugins-bad 0.10.13.2\n" "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n" -"POT-Creation-Date: 2012-06-07 16:21+0200\n" +"POT-Creation-Date: 2012-08-08 12:04+0100\n" "PO-Revision-Date: 2009-08-12 22:13+0300\n" "Last-Translator: Tommi Vainikainen <Tommi.Vainikainen@iki.fi>\n" "Language-Team: Finnish <translation-team-fi@lists.sourceforge.net>\n" Binary files differ@@ -8,7 +8,7 @@ msgid "" msgstr "" "Project-Id-Version: gst-plugins-bad 0.10.21.2\n" "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n" -"POT-Creation-Date: 2012-06-07 16:21+0200\n" +"POT-Creation-Date: 2012-08-08 12:04+0100\n" "PO-Revision-Date: 2011-04-28 09:13+0200\n" "Last-Translator: Claude Paroz <claude@2xlibre.net>\n" "Language-Team: French <traduc@traduc.org>\n" Binary files differ@@ -8,7 +8,7 @@ msgid "" msgstr "" "Project-Id-Version: gst-plugins-bad 0.10.21.2\n" "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n" -"POT-Creation-Date: 2012-06-07 16:21+0200\n" +"POT-Creation-Date: 2012-08-08 12:04+0100\n" "PO-Revision-Date: 2011-09-05 12:50+0200\n" "Last-Translator: Fran Dieguez <frandieguez@ubuntu.com>\n" "Language-Team: Galician <proxecto@trasno.net>\n" diff --git a/po/gst-plugins-bad-1.0.pot b/po/gst-plugins-bad-1.0.pot index 86d7fbdf..25aa1724 100644 --- a/po/gst-plugins-bad-1.0.pot +++ b/po/gst-plugins-bad-1.0.pot @@ -5,9 +5,9 @@ #, fuzzy msgid "" msgstr "" -"Project-Id-Version: gst-plugins-bad 0.11.92\n" +"Project-Id-Version: gst-plugins-bad 0.11.93\n" "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n" -"POT-Creation-Date: 2012-06-07 16:21+0200\n" +"POT-Creation-Date: 2012-08-08 12:04+0100\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n" "Language-Team: LANGUAGE <LL@li.org>\n" @@ -29,13 +29,13 @@ msgstr "" msgid "Failed to set PGC based seeking." msgstr "" -#: ext/resindvd/resindvdsrc.c:1147 +#: ext/resindvd/resindvdsrc.c:1153 msgid "" "Could not read DVD. This may be because the DVD is encrypted and a DVD " "decryption library is not installed." msgstr "" -#: ext/resindvd/resindvdsrc.c:1152 ext/resindvd/resindvdsrc.c:1160 +#: ext/resindvd/resindvdsrc.c:1158 ext/resindvd/resindvdsrc.c:1166 msgid "Could not read DVD." msgstr "" @@ -57,26 +57,26 @@ msgstr "" msgid "Could not write to file \"%s\"." msgstr "" -#: gst/aiff/aiffparse.c:1324 +#: gst/aiff/aiffparse.c:1326 msgid "Internal data flow error." msgstr "" -#: sys/dvb/gstdvbsrc.c:740 sys/dvb/gstdvbsrc.c:837 +#: sys/dvb/gstdvbsrc.c:744 sys/dvb/gstdvbsrc.c:841 #, c-format msgid "Device \"%s\" does not exist." msgstr "" -#: sys/dvb/gstdvbsrc.c:744 +#: sys/dvb/gstdvbsrc.c:748 #, c-format msgid "Could not open frontend device \"%s\"." msgstr "" -#: sys/dvb/gstdvbsrc.c:758 +#: sys/dvb/gstdvbsrc.c:762 #, c-format msgid "Could not get settings from frontend device \"%s\"." msgstr "" -#: sys/dvb/gstdvbsrc.c:841 +#: sys/dvb/gstdvbsrc.c:845 #, c-format msgid "Could not open file \"%s\" for reading." msgstr "" Binary files differ@@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: gst-plugins-bad 0.10.13.2\n" "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n" -"POT-Creation-Date: 2012-06-07 16:21+0200\n" +"POT-Creation-Date: 2012-08-08 12:04+0100\n" "PO-Revision-Date: 2009-08-12 23:33+0200\n" "Last-Translator: Gabor Kelemen <kelemeng@gnome.hu>\n" "Language-Team: Hungarian <translation-team-hu@lists.sourceforge.net>\n" Binary files differ@@ -6,7 +6,7 @@ msgid "" msgstr "" "Project-Id-Version: gst-plugins-bad 0.10.21.2\n" "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n" -"POT-Creation-Date: 2012-06-07 16:21+0200\n" +"POT-Creation-Date: 2012-08-08 12:04+0100\n" "PO-Revision-Date: 2012-01-28 10:27+0700\n" "Last-Translator: Andhika Padmawan <andhika.padmawan@gmail.com>\n" "Language-Team: Indonesian <translation-team-id@lists.sourceforge.net>\n" Binary files differ@@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: gst-plugins-bad 0.10.13.2\n" "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n" -"POT-Creation-Date: 2012-06-07 16:21+0200\n" +"POT-Creation-Date: 2012-08-08 12:04+0100\n" "PO-Revision-Date: 2009-08-14 00:12+0200\n" "Last-Translator: Luca Ferretti <elle.uca@infinito.it>\n" "Language-Team: Italian <tp@lists.linux.it>\n" Binary files differ@@ -6,7 +6,7 @@ msgid "" msgstr "" "Project-Id-Version: gst-plugins-bad 0.10.21.2\n" "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n" -"POT-Creation-Date: 2012-06-07 16:21+0200\n" +"POT-Creation-Date: 2012-08-08 12:04+0100\n" "PO-Revision-Date: 2011-04-26 19:38+0900\n" "Last-Translator: Makoto Kato <makoto.kt@gmail.com>\n" "Language-Team: Japanese <translation-team-ja@lists.sourceforge.net>\n" Binary files differ@@ -6,7 +6,7 @@ msgid "" msgstr "" "Project-Id-Version: gst-plugins-bad 0.10.5\n" "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n" -"POT-Creation-Date: 2012-06-07 16:21+0200\n" +"POT-Creation-Date: 2012-08-08 12:04+0100\n" "PO-Revision-Date: 2007-11-13 17:16+0600\n" "Last-Translator: Ilyas Bakirov <just_ilyas@yahoo.com>\n" "Language-Team: Kirghiz <i18n-team-ky-kyrgyz@lists.sourceforge.net>\n" Binary files differ@@ -6,7 +6,7 @@ msgid "" msgstr "" "Project-Id-Version: gst-plugins-bad-0.10.6.3\n" "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n" -"POT-Creation-Date: 2012-06-07 16:21+0200\n" +"POT-Creation-Date: 2012-08-08 12:04+0100\n" "PO-Revision-Date: 2008-05-14 02:13+0300\n" "Last-Translator: Gintautas Miliauskas <gintas@akl.lt>\n" "Language-Team: Lithuanian <komp_lt@konferencijos.lt>\n" Binary files differ@@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: gst-plugins-bad 0.10.21.2\n" "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n" -"POT-Creation-Date: 2012-06-07 16:21+0200\n" +"POT-Creation-Date: 2012-08-08 12:04+0100\n" "PO-Revision-Date: 2011-09-02 12:04-0000\n" "Last-Translator: Rihards PriedÄ«tis <rprieditis@gmail.com>\n" "Language-Team: Latvian <translation-team-lv@lists.sourceforge.net>\n" Binary files differ@@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: gst-plugins-bad-0.10.8.3\n" "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n" -"POT-Creation-Date: 2012-06-07 16:21+0200\n" +"POT-Creation-Date: 2012-08-08 12:04+0100\n" "PO-Revision-Date: 2008-10-26 20:27+0100\n" "Last-Translator: Michel Bugeja <michelbugeja@rabatmalta.com>\n" "Language-Team: Maltese <translation-team-mt@lists.sourceforge.net>\n" Binary files differ@@ -6,7 +6,7 @@ msgid "" msgstr "" "Project-Id-Version: gst-plugins-bad 0.10.5\n" "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n" -"POT-Creation-Date: 2012-06-07 16:21+0200\n" +"POT-Creation-Date: 2012-08-08 12:04+0100\n" "PO-Revision-Date: 2007-11-03 14:46+0100\n" "Last-Translator: Kjartan Maraas <kmaraas@gnome.org>\n" "Language-Team: Norwegian Bokmaal <i18n-nb@lister.ping.uio.no>\n" Binary files differ@@ -8,7 +8,7 @@ msgid "" msgstr "" "Project-Id-Version: gst-plugins-bad 0.10.21.2\n" "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n" -"POT-Creation-Date: 2012-06-07 16:21+0200\n" +"POT-Creation-Date: 2012-08-08 12:04+0100\n" "PO-Revision-Date: 2011-04-27 00:16+0200\n" "Last-Translator: Freek de Kruijf <f.de.kruijf@gmail.com>\n" "Language-Team: Dutch <vertaling@vrijschrift.org>\n" Binary files differ@@ -8,7 +8,7 @@ msgid "" msgstr "" "Project-Id-Version: gst-plugins-0.8.3\n" "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n" -"POT-Creation-Date: 2012-06-07 16:21+0200\n" +"POT-Creation-Date: 2012-08-08 12:04+0100\n" "PO-Revision-Date: 2004-09-27 13:32+0530\n" "Last-Translator: Gora Mohanty <gora_mohanty@yahoo.co.in>\n" "Language-Team: Oriya <gora_mohanty@yahoo.co.in>\n" Binary files differ@@ -6,7 +6,7 @@ msgid "" msgstr "" "Project-Id-Version: gst-plugins-bad 0.10.21.2\n" "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n" -"POT-Creation-Date: 2012-06-07 16:21+0200\n" +"POT-Creation-Date: 2012-08-08 12:04+0100\n" "PO-Revision-Date: 2011-04-26 17:57+0200\n" "Last-Translator: Jakub Bogusz <qboosh@pld-linux.org>\n" "Language-Team: Polish <translation-team-pl@lists.sourceforge.net>\n" diff --git a/po/pt_BR.gmo b/po/pt_BR.gmo Binary files differindex 062502bf..95492dda 100644 --- a/po/pt_BR.gmo +++ b/po/pt_BR.gmo diff --git a/po/pt_BR.po b/po/pt_BR.po index d277268e..96abf491 100644 --- a/po/pt_BR.po +++ b/po/pt_BR.po @@ -8,7 +8,7 @@ msgid "" msgstr "" "Project-Id-Version: gst-plugins-bad-0.10.18.2\n" "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n" -"POT-Creation-Date: 2012-06-07 16:21+0200\n" +"POT-Creation-Date: 2012-08-08 12:04+0100\n" "PO-Revision-Date: 2010-05-26 00:00-0300\n" "Last-Translator: FabrÃcio Godoy <skarllot@gmail.com>\n" "Language-Team: Brazilian Portuguese <ldp-br@bazar.conectiva.com.br>\n" Binary files differ@@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: gst-plugins-bad 0.10.18.2\n" "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n" -"POT-Creation-Date: 2012-06-07 16:21+0200\n" +"POT-Creation-Date: 2012-08-08 12:04+0100\n" "PO-Revision-Date: 2010-08-16 03:11+0300\n" "Last-Translator: Lucian Adrian Grijincu <lucian.grijincu@gmail.com>\n" "Language-Team: Romanian <translation-team-ro@lists.sourceforge.net>\n" Binary files differ@@ -8,7 +8,7 @@ msgid "" msgstr "" "Project-Id-Version: gst-plugins-bad 0.10.21.2\n" "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n" -"POT-Creation-Date: 2012-06-07 16:21+0200\n" +"POT-Creation-Date: 2012-08-08 12:04+0100\n" "PO-Revision-Date: 2011-04-26 20:31+0400\n" "Last-Translator: Yuri Kozlov <yuray@komyakino.ru>\n" "Language-Team: Russian <gnu@mx.ru>\n" Binary files differ@@ -8,7 +8,7 @@ msgid "" msgstr "" "Project-Id-Version: gst-plugins-bad 0.10.17.2\n" "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n" -"POT-Creation-Date: 2012-06-07 16:21+0200\n" +"POT-Creation-Date: 2012-08-08 12:04+0100\n" "PO-Revision-Date: 2010-03-08 09:20+0100\n" "Last-Translator: Peter Tuhársky <tuharsky@misbb.sk>\n" "Language-Team: Slovak <sk-i18n@lists.linux.sk>\n" Binary files differ@@ -8,7 +8,7 @@ msgid "" msgstr "" "Project-Id-Version: gst-plugins-bad 0.10.21.2\n" "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n" -"POT-Creation-Date: 2012-06-07 16:21+0200\n" +"POT-Creation-Date: 2012-08-08 12:04+0100\n" "PO-Revision-Date: 2011-04-26 15:21+0100\n" "Last-Translator: Klemen KoÅ¡ir <klemen.kosir@gmx.com>\n" "Language-Team: Slovenian <translation-team-sl@lists.sourceforge.net>\n" Binary files differ@@ -6,7 +6,7 @@ msgid "" msgstr "" "Project-Id-Version: gst-plugins-bad 0.10.7.2\n" "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n" -"POT-Creation-Date: 2012-06-07 16:21+0200\n" +"POT-Creation-Date: 2012-08-08 12:04+0100\n" "PO-Revision-Date: 2008-08-15 16:07+0200\n" "Last-Translator: Laurent Dhima <laurenti@alblinux.net>\n" "Language-Team: Albanian <translation-team-sq@lists.sourceforge.net>\n" Binary files differ@@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: gst-plugins-bad-0.10.21.2\n" "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n" -"POT-Creation-Date: 2012-06-07 16:21+0200\n" +"POT-Creation-Date: 2012-08-08 12:04+0100\n" "PO-Revision-Date: 2011-12-04 09:59+0200\n" "Last-Translator: МироÑлав Ðиколић <miroslavnikolic@rocketmail.com>\n" "Language-Team: Serbian <gnu@prevod.org>\n" Binary files differ@@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: gst-plugins-bad 0.10.13.2\n" "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n" -"POT-Creation-Date: 2012-06-07 16:21+0200\n" +"POT-Creation-Date: 2012-08-08 12:04+0100\n" "PO-Revision-Date: 2009-08-12 20:29+0100\n" "Last-Translator: Daniel Nylander <po@danielnylander.se>\n" "Language-Team: Swedish <tp-sv@listor.tp-sv.se>\n" Binary files differ@@ -6,7 +6,7 @@ msgid "" msgstr "" "Project-Id-Version: gst-plugins-bad-0.10.21.2\n" "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n" -"POT-Creation-Date: 2012-06-07 16:21+0200\n" +"POT-Creation-Date: 2012-08-08 12:04+0100\n" "PO-Revision-Date: 2011-04-26 19:21+0200\n" "Last-Translator: Server Acim <serveracim@gmail.com>\n" "Language-Team: Turkish <gnu-tr-u12a@lists.sourceforge.net>\n" Binary files differ@@ -8,7 +8,7 @@ msgid "" msgstr "" "Project-Id-Version: gst-plugins-bad 0.10.21.2\n" "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n" -"POT-Creation-Date: 2012-06-07 16:21+0200\n" +"POT-Creation-Date: 2012-08-08 12:04+0100\n" "PO-Revision-Date: 2011-04-30 14:00+0300\n" "Last-Translator: Yuri Chornoivan <yurchor@ukr.net>\n" "Language-Team: Ukrainian <translation-team-uk@lists.sourceforge.net>\n" Binary files differ@@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: gst-plugins-bad 0.10.17.2\n" "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n" -"POT-Creation-Date: 2012-06-07 16:21+0200\n" +"POT-Creation-Date: 2012-08-08 12:04+0100\n" "PO-Revision-Date: 2010-03-06 22:09+1030\n" "Last-Translator: Clytie Siddall <clytie@riverland.net.au>\n" "Language-Team: Vietnamese <vi-VN@googlegroups.com>\n" diff --git a/po/zh_CN.gmo b/po/zh_CN.gmo Binary files differindex 0aebcd93..89579aec 100644 --- a/po/zh_CN.gmo +++ b/po/zh_CN.gmo diff --git a/po/zh_CN.po b/po/zh_CN.po index 1e5fbe25..e28d5342 100644 --- a/po/zh_CN.po +++ b/po/zh_CN.po @@ -9,7 +9,7 @@ msgid "" msgstr "" "Project-Id-Version: gst-plugins-bad 0.10.16.2\n" "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n" -"POT-Creation-Date: 2012-06-07 16:21+0200\n" +"POT-Creation-Date: 2012-08-08 12:04+0100\n" "PO-Revision-Date: 2009-11-20 18:12ä¸å›½æ ‡å‡†æ—¶é—´\n" "Last-Translator: Ji ZhengYu <zhengyuji@gmail.com>\n" "Language-Team: Chinese (simplified) <i18n-zh@googlegroups.com>\n" diff --git a/sys/Makefile.am b/sys/Makefile.am index b0ddf9e0..d1a29b34 100644 --- a/sys/Makefile.am +++ b/sys/Makefile.am @@ -40,6 +40,12 @@ else DIRECTDRAW_DIR= endif +if USE_DIRECTSHOW +DIRECTSHOW_DIR=winks +else +DIRECTSHOW_DIR= +endif + if USE_DIRECTSOUND DIRECTSOUND_DIR=directsound else @@ -124,7 +130,7 @@ else WINSCREENCAP_DIR= endif -SUBDIRS = $(ACM_DIR) $(APPLE_MEDIA_DIR) $(AVC_DIR) $(D3DVIDEOSINK_DIR) $(DECKLINK_DIR) $(DIRECTDRAW_DIR) $(DIRECTSOUND_DIR) $(DVB_DIR) $(FBDEV_DIR) $(LINSYS_DIR) $(OSX_VIDEO_DIR) $(PVR_DIR) $(QT_DIR) $(SHM_DIR) $(VCD_DIR) $(VDPAU_DIR) $(WININET_DIR) $(WINSCREENCAP_DIR) +SUBDIRS = $(ACM_DIR) $(APPLE_MEDIA_DIR) $(AVC_DIR) $(D3DVIDEOSINK_DIR) $(DECKLINK_DIR) $(DIRECTDRAW_DIR) $(DIRECTSOUND_DIR) $(DIRECTSHOW_DIR) $(DVB_DIR) $(FBDEV_DIR) $(LINSYS_DIR) $(OSX_VIDEO_DIR) $(PVR_DIR) $(QT_DIR) $(SHM_DIR) $(VCD_DIR) $(VDPAU_DIR) $(WININET_DIR) $(WINSCREENCAP_DIR) DIST_SUBDIRS = acmenc acmmp3dec applemedia avc d3dvideosink decklink directdraw directsound dvb linsys fbdev dshowdecwrapper dshowsrcwrapper dshowvideosink \ osxvideo pvr2d qtwrapper shm vcd vdpau wasapi wininet winks winscreencap diff --git a/sys/Makefile.in b/sys/Makefile.in index f0d40eea..28bdd303 100644 --- a/sys/Makefile.in +++ b/sys/Makefile.in @@ -1,4 +1,4 @@ -# Makefile.in generated by automake 1.11.5 from Makefile.am. +# Makefile.in generated by automake 1.11.6 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, @@ -215,11 +215,10 @@ DIRECT3D_LIBS = @DIRECT3D_LIBS@ DIRECTDRAW_LIBS = @DIRECTDRAW_LIBS@ DIRECTFB_CFLAGS = @DIRECTFB_CFLAGS@ DIRECTFB_LIBS = @DIRECTFB_LIBS@ +DIRECTSHOW_LIBS = @DIRECTSHOW_LIBS@ DIRECTSOUND_LIBS = @DIRECTSOUND_LIBS@ DIRECTX_CFLAGS = @DIRECTX_CFLAGS@ DIRECTX_LDFLAGS = @DIRECTX_LDFLAGS@ -DIVXDEC_LIBS = @DIVXDEC_LIBS@ -DIVXENC_LIBS = @DIVXENC_LIBS@ DLLTOOL = @DLLTOOL@ DSYMUTIL = @DSYMUTIL@ DTS_LIBS = @DTS_LIBS@ @@ -254,7 +253,9 @@ GIO_LIBS = @GIO_LIBS@ GLIB_CFLAGS = @GLIB_CFLAGS@ GLIB_COMPILE_SCHEMAS = @GLIB_COMPILE_SCHEMAS@ GLIB_EXTRA_CFLAGS = @GLIB_EXTRA_CFLAGS@ +GLIB_GENMARSHAL = @GLIB_GENMARSHAL@ GLIB_LIBS = @GLIB_LIBS@ +GLIB_MKENUMS = @GLIB_MKENUMS@ GLIB_PREFIX = @GLIB_PREFIX@ GLIB_REQ = @GLIB_REQ@ GME_LIBS = @GME_LIBS@ @@ -330,13 +331,14 @@ HAVE_CXX = @HAVE_CXX@ HAVE_DIRECT3D = @HAVE_DIRECT3D@ HAVE_DIRECT3D9 = @HAVE_DIRECT3D9@ HAVE_DIRECTDRAW = @HAVE_DIRECTDRAW@ +HAVE_DIRECTSHOW = @HAVE_DIRECTSHOW@ HAVE_DIRECTSOUND = @HAVE_DIRECTSOUND@ HAVE_DTS = @HAVE_DTS@ HAVE_FAAC = @HAVE_FAAC@ HAVE_FAAD = @HAVE_FAAD@ HAVE_FLITE = @HAVE_FLITE@ HAVE_GSM = @HAVE_GSM@ -HAVE_JP2K = @HAVE_JP2K@ +HAVE_JASPER = @HAVE_JASPER@ HAVE_NAS = @HAVE_NAS@ HAVE_VPX = @HAVE_VPX@ HAVE_WILDMIDI = @HAVE_WILDMIDI@ @@ -350,7 +352,7 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ INTLLIBS = @INTLLIBS@ INTL_MACOSX_LIBS = @INTL_MACOSX_LIBS@ -JP2K_LIBS = @JP2K_LIBS@ +JASPER_LIBS = @JASPER_LIBS@ KATE_CFLAGS = @KATE_CFLAGS@ KATE_LIBS = @KATE_LIBS@ LD = @LD@ @@ -386,6 +388,8 @@ MODPLUG_CFLAGS = @MODPLUG_CFLAGS@ MODPLUG_LIBS = @MODPLUG_LIBS@ MPEG2ENC_CFLAGS = @MPEG2ENC_CFLAGS@ MPEG2ENC_LIBS = @MPEG2ENC_LIBS@ +MPG123_CFLAGS = @MPG123_CFLAGS@ +MPG123_LIBS = @MPG123_LIBS@ MPLEX_CFLAGS = @MPLEX_CFLAGS@ MPLEX_LDFLAGS = @MPLEX_LDFLAGS@ MPLEX_LIBS = @MPLEX_LIBS@ @@ -594,6 +598,8 @@ top_srcdir = @top_srcdir@ @USE_DECKLINK_TRUE@DECKLINK_DIR = decklink @USE_DIRECTDRAW_FALSE@DIRECTDRAW_DIR = @USE_DIRECTDRAW_TRUE@DIRECTDRAW_DIR = directdraw +@USE_DIRECTSHOW_FALSE@DIRECTSHOW_DIR = +@USE_DIRECTSHOW_TRUE@DIRECTSHOW_DIR = winks @USE_DIRECTSOUND_FALSE@DIRECTSOUND_DIR = @USE_DIRECTSOUND_TRUE@DIRECTSOUND_DIR = directsound @USE_FBDEV_FALSE@FBDEV_DIR = @@ -634,7 +640,7 @@ top_srcdir = @top_srcdir@ #VDPAU_DIR= #endif @USE_DIRECT3D9_TRUE@WINSCREENCAP_DIR = winscreencap -SUBDIRS = $(ACM_DIR) $(APPLE_MEDIA_DIR) $(AVC_DIR) $(D3DVIDEOSINK_DIR) $(DECKLINK_DIR) $(DIRECTDRAW_DIR) $(DIRECTSOUND_DIR) $(DVB_DIR) $(FBDEV_DIR) $(LINSYS_DIR) $(OSX_VIDEO_DIR) $(PVR_DIR) $(QT_DIR) $(SHM_DIR) $(VCD_DIR) $(VDPAU_DIR) $(WININET_DIR) $(WINSCREENCAP_DIR) +SUBDIRS = $(ACM_DIR) $(APPLE_MEDIA_DIR) $(AVC_DIR) $(D3DVIDEOSINK_DIR) $(DECKLINK_DIR) $(DIRECTDRAW_DIR) $(DIRECTSOUND_DIR) $(DIRECTSHOW_DIR) $(DVB_DIR) $(FBDEV_DIR) $(LINSYS_DIR) $(OSX_VIDEO_DIR) $(PVR_DIR) $(QT_DIR) $(SHM_DIR) $(VCD_DIR) $(VDPAU_DIR) $(WININET_DIR) $(WINSCREENCAP_DIR) DIST_SUBDIRS = acmenc acmmp3dec applemedia avc d3dvideosink decklink directdraw directsound dvb linsys fbdev dshowdecwrapper dshowsrcwrapper dshowvideosink \ osxvideo pvr2d qtwrapper shm vcd vdpau wasapi wininet winks winscreencap diff --git a/sys/acmenc/Makefile.in b/sys/acmenc/Makefile.in index 293da622..9077a7d3 100644 --- a/sys/acmenc/Makefile.in +++ b/sys/acmenc/Makefile.in @@ -1,4 +1,4 @@ -# Makefile.in generated by automake 1.11.5 from Makefile.am. +# Makefile.in generated by automake 1.11.6 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, @@ -234,11 +234,10 @@ DIRECT3D_LIBS = @DIRECT3D_LIBS@ DIRECTDRAW_LIBS = @DIRECTDRAW_LIBS@ DIRECTFB_CFLAGS = @DIRECTFB_CFLAGS@ DIRECTFB_LIBS = @DIRECTFB_LIBS@ +DIRECTSHOW_LIBS = @DIRECTSHOW_LIBS@ DIRECTSOUND_LIBS = @DIRECTSOUND_LIBS@ DIRECTX_CFLAGS = @DIRECTX_CFLAGS@ DIRECTX_LDFLAGS = @DIRECTX_LDFLAGS@ -DIVXDEC_LIBS = @DIVXDEC_LIBS@ -DIVXENC_LIBS = @DIVXENC_LIBS@ DLLTOOL = @DLLTOOL@ DSYMUTIL = @DSYMUTIL@ DTS_LIBS = @DTS_LIBS@ @@ -273,7 +272,9 @@ GIO_LIBS = @GIO_LIBS@ GLIB_CFLAGS = @GLIB_CFLAGS@ GLIB_COMPILE_SCHEMAS = @GLIB_COMPILE_SCHEMAS@ GLIB_EXTRA_CFLAGS = @GLIB_EXTRA_CFLAGS@ +GLIB_GENMARSHAL = @GLIB_GENMARSHAL@ GLIB_LIBS = @GLIB_LIBS@ +GLIB_MKENUMS = @GLIB_MKENUMS@ GLIB_PREFIX = @GLIB_PREFIX@ GLIB_REQ = @GLIB_REQ@ GME_LIBS = @GME_LIBS@ @@ -349,13 +350,14 @@ HAVE_CXX = @HAVE_CXX@ HAVE_DIRECT3D = @HAVE_DIRECT3D@ HAVE_DIRECT3D9 = @HAVE_DIRECT3D9@ HAVE_DIRECTDRAW = @HAVE_DIRECTDRAW@ +HAVE_DIRECTSHOW = @HAVE_DIRECTSHOW@ HAVE_DIRECTSOUND = @HAVE_DIRECTSOUND@ HAVE_DTS = @HAVE_DTS@ HAVE_FAAC = @HAVE_FAAC@ HAVE_FAAD = @HAVE_FAAD@ HAVE_FLITE = @HAVE_FLITE@ HAVE_GSM = @HAVE_GSM@ -HAVE_JP2K = @HAVE_JP2K@ +HAVE_JASPER = @HAVE_JASPER@ HAVE_NAS = @HAVE_NAS@ HAVE_VPX = @HAVE_VPX@ HAVE_WILDMIDI = @HAVE_WILDMIDI@ @@ -369,7 +371,7 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ INTLLIBS = @INTLLIBS@ INTL_MACOSX_LIBS = @INTL_MACOSX_LIBS@ -JP2K_LIBS = @JP2K_LIBS@ +JASPER_LIBS = @JASPER_LIBS@ KATE_CFLAGS = @KATE_CFLAGS@ KATE_LIBS = @KATE_LIBS@ LD = @LD@ @@ -405,6 +407,8 @@ MODPLUG_CFLAGS = @MODPLUG_CFLAGS@ MODPLUG_LIBS = @MODPLUG_LIBS@ MPEG2ENC_CFLAGS = @MPEG2ENC_CFLAGS@ MPEG2ENC_LIBS = @MPEG2ENC_LIBS@ +MPG123_CFLAGS = @MPG123_CFLAGS@ +MPG123_LIBS = @MPG123_LIBS@ MPLEX_CFLAGS = @MPLEX_CFLAGS@ MPLEX_LDFLAGS = @MPLEX_LDFLAGS@ MPLEX_LIBS = @MPLEX_LIBS@ diff --git a/sys/acmmp3dec/Makefile.in b/sys/acmmp3dec/Makefile.in index 2a3dcbe9..56cc8214 100644 --- a/sys/acmmp3dec/Makefile.in +++ b/sys/acmmp3dec/Makefile.in @@ -1,4 +1,4 @@ -# Makefile.in generated by automake 1.11.5 from Makefile.am. +# Makefile.in generated by automake 1.11.6 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, @@ -234,11 +234,10 @@ DIRECT3D_LIBS = @DIRECT3D_LIBS@ DIRECTDRAW_LIBS = @DIRECTDRAW_LIBS@ DIRECTFB_CFLAGS = @DIRECTFB_CFLAGS@ DIRECTFB_LIBS = @DIRECTFB_LIBS@ +DIRECTSHOW_LIBS = @DIRECTSHOW_LIBS@ DIRECTSOUND_LIBS = @DIRECTSOUND_LIBS@ DIRECTX_CFLAGS = @DIRECTX_CFLAGS@ DIRECTX_LDFLAGS = @DIRECTX_LDFLAGS@ -DIVXDEC_LIBS = @DIVXDEC_LIBS@ -DIVXENC_LIBS = @DIVXENC_LIBS@ DLLTOOL = @DLLTOOL@ DSYMUTIL = @DSYMUTIL@ DTS_LIBS = @DTS_LIBS@ @@ -273,7 +272,9 @@ GIO_LIBS = @GIO_LIBS@ GLIB_CFLAGS = @GLIB_CFLAGS@ GLIB_COMPILE_SCHEMAS = @GLIB_COMPILE_SCHEMAS@ GLIB_EXTRA_CFLAGS = @GLIB_EXTRA_CFLAGS@ +GLIB_GENMARSHAL = @GLIB_GENMARSHAL@ GLIB_LIBS = @GLIB_LIBS@ +GLIB_MKENUMS = @GLIB_MKENUMS@ GLIB_PREFIX = @GLIB_PREFIX@ GLIB_REQ = @GLIB_REQ@ GME_LIBS = @GME_LIBS@ @@ -349,13 +350,14 @@ HAVE_CXX = @HAVE_CXX@ HAVE_DIRECT3D = @HAVE_DIRECT3D@ HAVE_DIRECT3D9 = @HAVE_DIRECT3D9@ HAVE_DIRECTDRAW = @HAVE_DIRECTDRAW@ +HAVE_DIRECTSHOW = @HAVE_DIRECTSHOW@ HAVE_DIRECTSOUND = @HAVE_DIRECTSOUND@ HAVE_DTS = @HAVE_DTS@ HAVE_FAAC = @HAVE_FAAC@ HAVE_FAAD = @HAVE_FAAD@ HAVE_FLITE = @HAVE_FLITE@ HAVE_GSM = @HAVE_GSM@ -HAVE_JP2K = @HAVE_JP2K@ +HAVE_JASPER = @HAVE_JASPER@ HAVE_NAS = @HAVE_NAS@ HAVE_VPX = @HAVE_VPX@ HAVE_WILDMIDI = @HAVE_WILDMIDI@ @@ -369,7 +371,7 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ INTLLIBS = @INTLLIBS@ INTL_MACOSX_LIBS = @INTL_MACOSX_LIBS@ -JP2K_LIBS = @JP2K_LIBS@ +JASPER_LIBS = @JASPER_LIBS@ KATE_CFLAGS = @KATE_CFLAGS@ KATE_LIBS = @KATE_LIBS@ LD = @LD@ @@ -405,6 +407,8 @@ MODPLUG_CFLAGS = @MODPLUG_CFLAGS@ MODPLUG_LIBS = @MODPLUG_LIBS@ MPEG2ENC_CFLAGS = @MPEG2ENC_CFLAGS@ MPEG2ENC_LIBS = @MPEG2ENC_LIBS@ +MPG123_CFLAGS = @MPG123_CFLAGS@ +MPG123_LIBS = @MPG123_LIBS@ MPLEX_CFLAGS = @MPLEX_CFLAGS@ MPLEX_LDFLAGS = @MPLEX_LDFLAGS@ MPLEX_LIBS = @MPLEX_LIBS@ diff --git a/sys/applemedia/Makefile.in b/sys/applemedia/Makefile.in index ddd7a958..d67e3ec2 100644 --- a/sys/applemedia/Makefile.in +++ b/sys/applemedia/Makefile.in @@ -1,4 +1,4 @@ -# Makefile.in generated by automake 1.11.5 from Makefile.am. +# Makefile.in generated by automake 1.11.6 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, @@ -293,11 +293,10 @@ DIRECT3D_LIBS = @DIRECT3D_LIBS@ DIRECTDRAW_LIBS = @DIRECTDRAW_LIBS@ DIRECTFB_CFLAGS = @DIRECTFB_CFLAGS@ DIRECTFB_LIBS = @DIRECTFB_LIBS@ +DIRECTSHOW_LIBS = @DIRECTSHOW_LIBS@ DIRECTSOUND_LIBS = @DIRECTSOUND_LIBS@ DIRECTX_CFLAGS = @DIRECTX_CFLAGS@ DIRECTX_LDFLAGS = @DIRECTX_LDFLAGS@ -DIVXDEC_LIBS = @DIVXDEC_LIBS@ -DIVXENC_LIBS = @DIVXENC_LIBS@ DLLTOOL = @DLLTOOL@ DSYMUTIL = @DSYMUTIL@ DTS_LIBS = @DTS_LIBS@ @@ -332,7 +331,9 @@ GIO_LIBS = @GIO_LIBS@ GLIB_CFLAGS = @GLIB_CFLAGS@ GLIB_COMPILE_SCHEMAS = @GLIB_COMPILE_SCHEMAS@ GLIB_EXTRA_CFLAGS = @GLIB_EXTRA_CFLAGS@ +GLIB_GENMARSHAL = @GLIB_GENMARSHAL@ GLIB_LIBS = @GLIB_LIBS@ +GLIB_MKENUMS = @GLIB_MKENUMS@ GLIB_PREFIX = @GLIB_PREFIX@ GLIB_REQ = @GLIB_REQ@ GME_LIBS = @GME_LIBS@ @@ -408,13 +409,14 @@ HAVE_CXX = @HAVE_CXX@ HAVE_DIRECT3D = @HAVE_DIRECT3D@ HAVE_DIRECT3D9 = @HAVE_DIRECT3D9@ HAVE_DIRECTDRAW = @HAVE_DIRECTDRAW@ +HAVE_DIRECTSHOW = @HAVE_DIRECTSHOW@ HAVE_DIRECTSOUND = @HAVE_DIRECTSOUND@ HAVE_DTS = @HAVE_DTS@ HAVE_FAAC = @HAVE_FAAC@ HAVE_FAAD = @HAVE_FAAD@ HAVE_FLITE = @HAVE_FLITE@ HAVE_GSM = @HAVE_GSM@ -HAVE_JP2K = @HAVE_JP2K@ +HAVE_JASPER = @HAVE_JASPER@ HAVE_NAS = @HAVE_NAS@ HAVE_VPX = @HAVE_VPX@ HAVE_WILDMIDI = @HAVE_WILDMIDI@ @@ -428,7 +430,7 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ INTLLIBS = @INTLLIBS@ INTL_MACOSX_LIBS = @INTL_MACOSX_LIBS@ -JP2K_LIBS = @JP2K_LIBS@ +JASPER_LIBS = @JASPER_LIBS@ KATE_CFLAGS = @KATE_CFLAGS@ KATE_LIBS = @KATE_LIBS@ LD = @LD@ @@ -464,6 +466,8 @@ MODPLUG_CFLAGS = @MODPLUG_CFLAGS@ MODPLUG_LIBS = @MODPLUG_LIBS@ MPEG2ENC_CFLAGS = @MPEG2ENC_CFLAGS@ MPEG2ENC_LIBS = @MPEG2ENC_LIBS@ +MPG123_CFLAGS = @MPG123_CFLAGS@ +MPG123_LIBS = @MPG123_LIBS@ MPLEX_CFLAGS = @MPLEX_CFLAGS@ MPLEX_LDFLAGS = @MPLEX_LDFLAGS@ MPLEX_LIBS = @MPLEX_LIBS@ diff --git a/sys/avc/Makefile.in b/sys/avc/Makefile.in index 84bc76a5..9e06a2e4 100644 --- a/sys/avc/Makefile.in +++ b/sys/avc/Makefile.in @@ -1,4 +1,4 @@ -# Makefile.in generated by automake 1.11.5 from Makefile.am. +# Makefile.in generated by automake 1.11.6 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, @@ -238,11 +238,10 @@ DIRECT3D_LIBS = @DIRECT3D_LIBS@ DIRECTDRAW_LIBS = @DIRECTDRAW_LIBS@ DIRECTFB_CFLAGS = @DIRECTFB_CFLAGS@ DIRECTFB_LIBS = @DIRECTFB_LIBS@ +DIRECTSHOW_LIBS = @DIRECTSHOW_LIBS@ DIRECTSOUND_LIBS = @DIRECTSOUND_LIBS@ DIRECTX_CFLAGS = @DIRECTX_CFLAGS@ DIRECTX_LDFLAGS = @DIRECTX_LDFLAGS@ -DIVXDEC_LIBS = @DIVXDEC_LIBS@ -DIVXENC_LIBS = @DIVXENC_LIBS@ DLLTOOL = @DLLTOOL@ DSYMUTIL = @DSYMUTIL@ DTS_LIBS = @DTS_LIBS@ @@ -277,7 +276,9 @@ GIO_LIBS = @GIO_LIBS@ GLIB_CFLAGS = @GLIB_CFLAGS@ GLIB_COMPILE_SCHEMAS = @GLIB_COMPILE_SCHEMAS@ GLIB_EXTRA_CFLAGS = @GLIB_EXTRA_CFLAGS@ +GLIB_GENMARSHAL = @GLIB_GENMARSHAL@ GLIB_LIBS = @GLIB_LIBS@ +GLIB_MKENUMS = @GLIB_MKENUMS@ GLIB_PREFIX = @GLIB_PREFIX@ GLIB_REQ = @GLIB_REQ@ GME_LIBS = @GME_LIBS@ @@ -353,13 +354,14 @@ HAVE_CXX = @HAVE_CXX@ HAVE_DIRECT3D = @HAVE_DIRECT3D@ HAVE_DIRECT3D9 = @HAVE_DIRECT3D9@ HAVE_DIRECTDRAW = @HAVE_DIRECTDRAW@ +HAVE_DIRECTSHOW = @HAVE_DIRECTSHOW@ HAVE_DIRECTSOUND = @HAVE_DIRECTSOUND@ HAVE_DTS = @HAVE_DTS@ HAVE_FAAC = @HAVE_FAAC@ HAVE_FAAD = @HAVE_FAAD@ HAVE_FLITE = @HAVE_FLITE@ HAVE_GSM = @HAVE_GSM@ -HAVE_JP2K = @HAVE_JP2K@ +HAVE_JASPER = @HAVE_JASPER@ HAVE_NAS = @HAVE_NAS@ HAVE_VPX = @HAVE_VPX@ HAVE_WILDMIDI = @HAVE_WILDMIDI@ @@ -373,7 +375,7 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ INTLLIBS = @INTLLIBS@ INTL_MACOSX_LIBS = @INTL_MACOSX_LIBS@ -JP2K_LIBS = @JP2K_LIBS@ +JASPER_LIBS = @JASPER_LIBS@ KATE_CFLAGS = @KATE_CFLAGS@ KATE_LIBS = @KATE_LIBS@ LD = @LD@ @@ -409,6 +411,8 @@ MODPLUG_CFLAGS = @MODPLUG_CFLAGS@ MODPLUG_LIBS = @MODPLUG_LIBS@ MPEG2ENC_CFLAGS = @MPEG2ENC_CFLAGS@ MPEG2ENC_LIBS = @MPEG2ENC_LIBS@ +MPG123_CFLAGS = @MPG123_CFLAGS@ +MPG123_LIBS = @MPG123_LIBS@ MPLEX_CFLAGS = @MPLEX_CFLAGS@ MPLEX_LDFLAGS = @MPLEX_LDFLAGS@ MPLEX_LIBS = @MPLEX_LIBS@ diff --git a/sys/d3dvideosink/Makefile.am b/sys/d3dvideosink/Makefile.am index abbb751f..a38feb3f 100644 --- a/sys/d3dvideosink/Makefile.am +++ b/sys/d3dvideosink/Makefile.am @@ -8,7 +8,7 @@ libgstd3dvideosink_la_CFLAGS = $(GST_PLUGINS_BAD_CFLAGS) $(GST_CFLAGS) $(DIRECTX libgstd3dvideosink_la_LIBADD = $(GST_BASE_LIBS) $(GST_PLUGINS_BASE_LIBS) \ -lgstvideo-$(GST_API_VERSION) \ $(DIRECT3D_LIBS) -libgstd3dvideosink_la_LDFLAGS = $(GST_PLUGIN_LDFLAGS) $(DIRECTX_LDFAGS) +libgstd3dvideosink_la_LDFLAGS = $(GST_PLUGIN_LDFLAGS) $(DIRECTX_LDFAGS) -e D3dDllMain libgstd3dvideosink_la_LIBTOOLFLAGS = --tag=disable-static noinst_HEADERS = d3dvideosink.h directx/directx_d3d.h directx/dx.h directx/directx.h \ diff --git a/sys/d3dvideosink/Makefile.in b/sys/d3dvideosink/Makefile.in index 9900a1f0..9644a3a0 100644 --- a/sys/d3dvideosink/Makefile.in +++ b/sys/d3dvideosink/Makefile.in @@ -1,4 +1,4 @@ -# Makefile.in generated by automake 1.11.5 from Makefile.am. +# Makefile.in generated by automake 1.11.6 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, @@ -244,11 +244,10 @@ DIRECT3D_LIBS = @DIRECT3D_LIBS@ DIRECTDRAW_LIBS = @DIRECTDRAW_LIBS@ DIRECTFB_CFLAGS = @DIRECTFB_CFLAGS@ DIRECTFB_LIBS = @DIRECTFB_LIBS@ +DIRECTSHOW_LIBS = @DIRECTSHOW_LIBS@ DIRECTSOUND_LIBS = @DIRECTSOUND_LIBS@ DIRECTX_CFLAGS = @DIRECTX_CFLAGS@ DIRECTX_LDFLAGS = @DIRECTX_LDFLAGS@ -DIVXDEC_LIBS = @DIVXDEC_LIBS@ -DIVXENC_LIBS = @DIVXENC_LIBS@ DLLTOOL = @DLLTOOL@ DSYMUTIL = @DSYMUTIL@ DTS_LIBS = @DTS_LIBS@ @@ -283,7 +282,9 @@ GIO_LIBS = @GIO_LIBS@ GLIB_CFLAGS = @GLIB_CFLAGS@ GLIB_COMPILE_SCHEMAS = @GLIB_COMPILE_SCHEMAS@ GLIB_EXTRA_CFLAGS = @GLIB_EXTRA_CFLAGS@ +GLIB_GENMARSHAL = @GLIB_GENMARSHAL@ GLIB_LIBS = @GLIB_LIBS@ +GLIB_MKENUMS = @GLIB_MKENUMS@ GLIB_PREFIX = @GLIB_PREFIX@ GLIB_REQ = @GLIB_REQ@ GME_LIBS = @GME_LIBS@ @@ -359,13 +360,14 @@ HAVE_CXX = @HAVE_CXX@ HAVE_DIRECT3D = @HAVE_DIRECT3D@ HAVE_DIRECT3D9 = @HAVE_DIRECT3D9@ HAVE_DIRECTDRAW = @HAVE_DIRECTDRAW@ +HAVE_DIRECTSHOW = @HAVE_DIRECTSHOW@ HAVE_DIRECTSOUND = @HAVE_DIRECTSOUND@ HAVE_DTS = @HAVE_DTS@ HAVE_FAAC = @HAVE_FAAC@ HAVE_FAAD = @HAVE_FAAD@ HAVE_FLITE = @HAVE_FLITE@ HAVE_GSM = @HAVE_GSM@ -HAVE_JP2K = @HAVE_JP2K@ +HAVE_JASPER = @HAVE_JASPER@ HAVE_NAS = @HAVE_NAS@ HAVE_VPX = @HAVE_VPX@ HAVE_WILDMIDI = @HAVE_WILDMIDI@ @@ -379,7 +381,7 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ INTLLIBS = @INTLLIBS@ INTL_MACOSX_LIBS = @INTL_MACOSX_LIBS@ -JP2K_LIBS = @JP2K_LIBS@ +JASPER_LIBS = @JASPER_LIBS@ KATE_CFLAGS = @KATE_CFLAGS@ KATE_LIBS = @KATE_LIBS@ LD = @LD@ @@ -415,6 +417,8 @@ MODPLUG_CFLAGS = @MODPLUG_CFLAGS@ MODPLUG_LIBS = @MODPLUG_LIBS@ MPEG2ENC_CFLAGS = @MPEG2ENC_CFLAGS@ MPEG2ENC_LIBS = @MPEG2ENC_LIBS@ +MPG123_CFLAGS = @MPG123_CFLAGS@ +MPG123_LIBS = @MPG123_LIBS@ MPLEX_CFLAGS = @MPLEX_CFLAGS@ MPLEX_LDFLAGS = @MPLEX_LDFLAGS@ MPLEX_LIBS = @MPLEX_LIBS@ @@ -616,7 +620,7 @@ libgstd3dvideosink_la_LIBADD = $(GST_BASE_LIBS) $(GST_PLUGINS_BASE_LIBS) \ -lgstvideo-$(GST_API_VERSION) \ $(DIRECT3D_LIBS) -libgstd3dvideosink_la_LDFLAGS = $(GST_PLUGIN_LDFLAGS) $(DIRECTX_LDFAGS) +libgstd3dvideosink_la_LDFLAGS = $(GST_PLUGIN_LDFLAGS) $(DIRECTX_LDFAGS) -e D3dDllMain libgstd3dvideosink_la_LIBTOOLFLAGS = --tag=disable-static noinst_HEADERS = d3dvideosink.h directx/directx_d3d.h directx/dx.h directx/directx.h \ directx/directx9/dx9.h directx/directx9/dx9_d3d.h \ diff --git a/sys/d3dvideosink/d3dvideosink.c b/sys/d3dvideosink/d3dvideosink.c index 53d30447..7f437c41 100644 --- a/sys/d3dvideosink/d3dvideosink.c +++ b/sys/d3dvideosink/d3dvideosink.c @@ -86,8 +86,7 @@ static GstStaticPadTemplate sink_template = GST_STATIC_PAD_TEMPLATE ("sink", GST_STATIC_CAPS ("video/x-raw, " "format = (string) { I420, YV12, YUY2, UYVY, BGRx, BGRA, NV12 }, " "framerate = (fraction) [ 0, MAX ], " - "width = (int) [ 1, MAX ], " - "height = (int) [ 1, MAX ]") + "width = (int) [ 1, MAX ], " "height = (int) [ 1, MAX ]") ); static void gst_d3dvideosink_navigation_init (GstNavigationInterface * iface); @@ -121,7 +120,8 @@ static GstStateChangeReturn gst_d3dvideosink_change_state (GstElement * element, static gboolean gst_d3dvideosink_start (GstBaseSink * bsink); static gboolean gst_d3dvideosink_stop (GstBaseSink * bsink); static gboolean gst_d3dvideosink_set_caps (GstBaseSink * bsink, GstCaps * caps); -static GstCaps *gst_d3dvideosink_get_caps (GstBaseSink * bsink, GstCaps * filter); +static GstCaps *gst_d3dvideosink_get_caps (GstBaseSink * bsink, + GstCaps * filter); static GstFlowReturn gst_d3dvideosink_show_frame (GstVideoSink * sink, GstBuffer * buffer); @@ -157,7 +157,7 @@ static void gst_d3dvideosink_stretch (GstD3DVideoSink * sink, LPDIRECT3DSURFACE9 backBuffer); /* Misc methods */ -BOOL WINAPI DllMain (HINSTANCE hinstDll, DWORD fdwReason, PVOID fImpLoad); +BOOL WINAPI D3dDllMain (HINSTANCE hinstDll, DWORD fdwReason, PVOID fImpLoad); static void gst_d3dvideosink_remove_window_for_renderer (GstD3DVideoSink * sink); static gboolean gst_d3dvideosink_initialize_direct3d (GstD3DVideoSink * sink); @@ -198,7 +198,7 @@ static DirectXInitParams directx_init_params = { */ BOOL WINAPI -DllMain (HINSTANCE hinstDll, DWORD fdwReason, PVOID fImpLoad) +D3dDllMain (HINSTANCE hinstDll, DWORD fdwReason, PVOID fImpLoad) { switch (fdwReason) { case DLL_PROCESS_ATTACH: @@ -264,7 +264,7 @@ gst_d3dvideosink_class_init (GstD3DVideoSinkClass * klass) g_object_class_install_property (G_OBJECT_CLASS (klass), PROP_KEEP_ASPECT_RATIO, g_param_spec_boolean ("force-aspect-ratio", "Force aspect ratio", - "When enabled, scaling will respect original aspect ratio", FALSE, + "When enabled, scaling will respect original aspect ratio", TRUE, (GParamFlags) G_PARAM_READWRITE)); g_object_class_install_property (G_OBJECT_CLASS (klass), PROP_PIXEL_ASPECT_RATIO, g_param_spec_string ("pixel-aspect-ratio", @@ -281,8 +281,8 @@ gst_d3dvideosink_class_init (GstD3DVideoSinkClass * klass) gst_element_class_add_pad_template (gstelement_class, gst_static_pad_template_get (&sink_template)); - gst_element_class_set_static_metadata (gstelement_class, "Direct3D video sink", - "Sink/Video", + gst_element_class_set_static_metadata (gstelement_class, + "Direct3D video sink", "Sink/Video", "Display data using a Direct3D video renderer", "David Hoyt <dhoyt@hoytsoft.org>"); @@ -319,7 +319,7 @@ gst_d3dvideosink_init (GstD3DVideoSink * sink) { gst_d3dvideosink_clear (sink); - sink->d3d_swap_chain_lock = g_mutex_new (); + sink->d3d_device_lock = g_mutex_new (); sink->par = g_new0 (GValue, 1); g_value_init (sink->par, GST_TYPE_FRACTION); @@ -341,8 +341,8 @@ gst_d3dvideosink_finalize (GObject * gobject) sink->par = NULL; } - g_mutex_free (sink->d3d_swap_chain_lock); - sink->d3d_swap_chain_lock = NULL; + g_mutex_free (sink->d3d_device_lock); + sink->d3d_device_lock = NULL; G_OBJECT_CLASS (parent_class)->finalize (gobject); } @@ -401,7 +401,7 @@ gst_d3dvideosink_get_property (GObject * object, guint prop_id, } static GstCaps * -gst_d3dvideosink_get_device_caps (GstBaseSink *basesink, D3DDISPLAYMODE d3ddm) +gst_d3dvideosink_get_device_caps (GstBaseSink * basesink, D3DDISPLAYMODE d3ddm) { GstD3DVideoSink *sink = GST_D3DVIDEOSINK (basesink); gint i; @@ -409,20 +409,19 @@ gst_d3dvideosink_get_device_caps (GstBaseSink *basesink, D3DDISPLAYMODE d3ddm) GstCaps *c; caps = gst_caps_new_empty (); - c = gst_caps_normalize (gst_pad_get_pad_template_caps (GST_VIDEO_SINK_PAD (sink))); + c = gst_caps_normalize (gst_pad_get_pad_template_caps (GST_VIDEO_SINK_PAD + (sink))); for (i = 0; i < gst_caps_get_size (c); i++) { GstStructure *stru; stru = gst_caps_get_structure (c, i); - if (gst_structure_has_name (stru, "video/x-raw")) - { + if (gst_structure_has_name (stru, "video/x-raw")) { GstVideoFormat format; const gchar *s; D3DFORMAT d3dfourcc = 0; s = gst_structure_get_string (stru, "format"); format = gst_video_format_from_string (s); - switch (format) - { + switch (format) { case GST_VIDEO_FORMAT_YV12: case GST_VIDEO_FORMAT_I420: d3dfourcc = (D3DFORMAT) MAKEFOURCC ('Y', 'V', '1', '2'); @@ -460,9 +459,8 @@ gst_d3dvideosink_get_device_caps (GstBaseSink *basesink, D3DDISPLAYMODE d3ddm) if (d3dfourcc == 0) continue; if (SUCCEEDED (IDirect3D9_CheckDeviceFormat (shared.d3d, - D3DADAPTER_DEFAULT, D3DDEVTYPE_HAL, d3ddm.Format, 0, D3DRTYPE_SURFACE, - d3dfourcc))) - { + D3DADAPTER_DEFAULT, D3DDEVTYPE_HAL, d3ddm.Format, 0, + D3DRTYPE_SURFACE, d3dfourcc))) { /* hw supports this format */ gst_caps_append (caps, gst_caps_copy_nth (c, i)); } @@ -491,8 +489,7 @@ gst_d3dvideosink_get_caps (GstBaseSink * basesink, GstCaps * filter) } } else { caps = gst_pad_get_pad_template_caps (GST_VIDEO_SINK_PAD (sink)); - if (filter) - { + if (filter) { GstCaps *intersection; intersection = @@ -588,6 +585,7 @@ gst_d3dvideosink_shared_hidden_window_thread (GstD3DVideoSink * sink) shared.hidden_window_handle = hWnd; shared.device_lost_timer = 0; + shared.device_lost = FALSE; gst_d3dvideosink_shared_hidden_window_created (sink); @@ -643,27 +641,29 @@ SharedHiddenWndProc (HWND hWnd, UINT message, WPARAM wParam, LPARAM lParam) { shared.device_lost_sink = NULL; GST_DEBUG ("Initializing Direct3D"); - GST_D3DVIDEOSINK_SWAP_CHAIN_LOCK (sink); - gst_d3dvideosink_initialize_d3d_device (sink); - GST_D3DVIDEOSINK_SWAP_CHAIN_UNLOCK (sink); - GST_DEBUG ("Direct3D initialization complete"); + if (!gst_d3dvideosink_initialize_d3d_device (sink)) + gst_d3dvideosink_notify_device_lost (sink); + else + GST_DEBUG ("Direct3D initialization complete"); break; } case WM_DIRECTX_D3D_INIT_DEVICELOST: { - if (!shared.device_lost) { + if (shared.device_lost) + break; - shared.device_lost = TRUE; - shared.device_lost_sink = sink; + shared.device_lost = TRUE; + GST_D3DVIDEOSINK_D3D_DEVICE_LOCK (sink); - /* Handle device lost by creating a timer and posting WM_D3D_DEVICELOST twice a second */ - /* Create a timer to periodically check the d3d device and attempt to recreate it */ - shared.device_lost_timer = SetTimer (hWnd, IDT_DEVICELOST, 500, NULL); - /* Try it once immediately */ - SendMessage (hWnd, WM_DIRECTX_D3D_DEVICELOST, 0, (LPARAM) sink); - } + /* Handle device lost by creating a timer and posting WM_D3D_DEVICELOST twice a second */ + /* Create a timer to periodically check the d3d device and attempt to recreate it */ + shared.device_lost_timer = SetTimer (hWnd, IDT_DEVICELOST, 500, NULL); + shared.device_lost_sink = sink; + + /* Try it once immediately */ + SendMessage (hWnd, WM_DIRECTX_D3D_DEVICELOST, 0, (LPARAM) sink); break; } case WM_TIMER: @@ -683,21 +683,24 @@ SharedHiddenWndProc (HWND hWnd, UINT message, WPARAM wParam, LPARAM lParam) } case WM_DIRECTX_D3D_END_DEVICELOST: { - if (shared.device_lost) { - /* gst_d3dvideosink_notify_device_reset() sends this message. */ - if (shared.device_lost_timer != 0) - KillTimer (hWnd, shared.device_lost_timer); + if (!shared.device_lost) + break; - shared.device_lost_timer = 0; - shared.device_lost = FALSE; + /* gst_d3dvideosink_notify_device_reset() sends this message. */ + if (shared.device_lost_timer != 0) + KillTimer (hWnd, shared.device_lost_timer); - /* Refresh the video with the last buffer */ - gst_d3dvideosink_update_all (sink); + shared.device_lost_timer = 0; + shared.device_lost = FALSE; - /* Then redraw just in case we don't have a last buffer */ - gst_d3dvideosink_refresh_all (sink); + GST_D3DVIDEOSINK_D3D_DEVICE_UNLOCK (sink); + + /* Refresh the video with the last buffer */ + gst_d3dvideosink_update_all (sink); + + /* Then redraw just in case we don't have a last buffer */ + gst_d3dvideosink_refresh_all (sink); - } shared.device_lost_sink = NULL; break; } @@ -785,7 +788,8 @@ WndProc (HWND hWnd, UINT message, WPARAM wParam, LPARAM lParam) SetWindowLongPtr (hWnd, GWLP_USERDATA, (LONG_PTR) sink); /* signal application we created a window */ - gst_video_overlay_got_window_handle (GST_VIDEO_OVERLAY (sink), (guintptr) hWnd); + gst_video_overlay_got_window_handle (GST_VIDEO_OVERLAY (sink), + (guintptr) hWnd); } @@ -1015,7 +1019,6 @@ gst_d3dvideosink_window_thread (GstD3DVideoSink * sink) /* start message loop processing our default window messages */ while (TRUE) { - //while(PeekMessage(&msg, NULL, 0, 0, PM_REMOVE)) while (GetMessage (&msg, NULL, 0, 0)) { TranslateMessage (&msg); DispatchMessage (&msg); @@ -1029,14 +1032,6 @@ gst_d3dvideosink_window_thread (GstD3DVideoSink * sink) sink->window_handle = NULL; return NULL; -/*destroy_window:*/ -/* if (video_window) { */ -/* DestroyWindow(video_window); */ -/* UnregisterClass(WndClass.lpszClassName, WndClass.hInstance); */ -/* } */ -/* sink->window_handle = NULL; */ -/* ReleaseSemaphore (sink->window_created_signal, 1, NULL); */ -/* return NULL; */ } static gboolean @@ -1068,7 +1063,8 @@ failed: } static void -gst_d3dvideosink_set_window_handle (GstVideoOverlay * overlay, guintptr window_id) +gst_d3dvideosink_set_window_handle (GstVideoOverlay * overlay, + guintptr window_id) { GstD3DVideoSink *sink = GST_D3DVIDEOSINK (overlay); HWND hWnd = (HWND) window_id; @@ -1078,9 +1074,9 @@ gst_d3dvideosink_set_window_handle (GstVideoOverlay * overlay, guintptr window_i return; } + GST_D3DVIDEOSINK_D3D_DEVICE_LOCK (sink); /* If we're already playing/paused, then we need to lock the swap chain, and recreate it with the new window. */ if (sink->d3ddev != NULL) { - GST_D3DVIDEOSINK_SWAP_CHAIN_LOCK (sink); /* Close our existing window if there is one */ gst_d3dvideosink_close_window (sink); /* Save our window id */ @@ -1089,33 +1085,23 @@ gst_d3dvideosink_set_window_handle (GstVideoOverlay * overlay, guintptr window_i sink->window_closed = FALSE; gst_d3dvideosink_notify_device_reinit (sink); - GST_D3DVIDEOSINK_SWAP_CHAIN_UNLOCK (sink); - //gst_d3dvideosink_notify_device_init(sink); - } else { sink->window_handle = hWnd; } -/*success:*/ + GST_D3DVIDEOSINK_D3D_DEVICE_UNLOCK (sink); + GST_DEBUG_OBJECT (sink, "Direct3D window id successfully changed to %p", hWnd); gst_d3dvideosink_update (GST_BASE_SINK_CAST (sink)); return; -/*error:*/ -/* GST_DEBUG("Error attempting to change the window id for sink %d to %d", sink, hWnd); */ -/* GST_D3DVIDEOSINK_SWAP_CHAIN_UNLOCK(sink); */ -/* return; */ } /* Hook for out-of-process rendering */ LRESULT CALLBACK gst_d3dvideosink_hook_proc (int nCode, WPARAM wParam, LPARAM lParam) { - //LPCWPSTRUCT p = (LPCWPSTRUCT)lParam; - // - //if (p && p->hwnd) - // WndProcHook(p->hwnd, p->message, p->wParam, p->lParam); return CallNextHookEx (NULL, nCode, wParam, lParam); } @@ -1372,13 +1358,20 @@ gst_d3dvideosink_prepare_window (GstD3DVideoSink * sink) } /* If the app supplied one, use it. Otherwise, go ahead - * and create (and use) our own window */ - if (sink->window_handle) { + * and create (and use) our own window, if we didn't create + * one before */ + if (sink->window_handle && sink->is_new_window) { + GST_D3DVIDEOSINK_D3D_DEVICE_LOCK (sink); + gst_d3dvideosink_release_d3d_device (sink); + GST_D3DVIDEOSINK_D3D_DEVICE_UNLOCK (sink); + } else if (sink->window_handle) { gst_d3dvideosink_set_window_for_renderer (sink); } else { gst_d3dvideosink_create_default_window (sink); } + GST_D3DVIDEOSINK_D3D_DEVICE_LOCK (sink); gst_d3dvideosink_notify_device_init (sink); + GST_D3DVIDEOSINK_D3D_DEVICE_UNLOCK (sink); } static GstStateChangeReturn @@ -1412,7 +1405,9 @@ gst_d3dvideosink_change_state (GstElement * element, GstStateChange transition) case GST_STATE_CHANGE_PLAYING_TO_PAUSED: break; case GST_STATE_CHANGE_PAUSED_TO_READY: - gst_d3dvideosink_remove_window_for_renderer (sink); + if (!sink->is_new_window) { + gst_d3dvideosink_remove_window_for_renderer (sink); + } break; case GST_STATE_CHANGE_READY_TO_NULL: gst_d3dvideosink_release_direct3d (sink); @@ -1442,7 +1437,7 @@ static gboolean gst_d3dvideosink_set_caps (GstBaseSink * bsink, GstCaps * caps) { GstD3DVideoSink *sink; - /*GstStructure *structure;*/ + /*GstStructure *structure; */ GstCaps *sink_caps; GstVideoInfo info; gint video_width, video_height; @@ -1463,7 +1458,7 @@ gst_d3dvideosink_set_caps (GstBaseSink * bsink, GstCaps * caps) if (!gst_video_info_from_caps (&info, caps)) goto invalid_format; - /*structure = gst_caps_get_structure (caps, 0);*/ + /*structure = gst_caps_get_structure (caps, 0); */ video_width = info.width; video_height = info.height; @@ -1620,7 +1615,8 @@ gst_d3dvideosink_show_frame (GstVideoSink * vsink, GstBuffer * buffer) GstD3DVideoSink *sink = GST_D3DVIDEOSINK (vsink); LPDIRECT3DSURFACE9 drawSurface = NULL; - GST_D3DVIDEOSINK_SWAP_CHAIN_LOCK (sink); + if (!GST_D3DVIDEOSINK_D3D_DEVICE_TRYLOCK (sink)) + return GST_FLOW_OK; if (!sink->d3ddev) { if (!shared.device_lost) { GST_ERROR_OBJECT (sink, "No Direct3D device has been created, stopping"); @@ -1657,7 +1653,8 @@ gst_d3dvideosink_show_frame (GstVideoSink * vsink, GstBuffer * buffer) case GST_VIDEO_FORMAT_YUY2: case GST_VIDEO_FORMAT_UYVY: dststride = lr.Pitch; - srcstride = gst_buffer_get_size (buffer) / GST_VIDEO_SINK_HEIGHT (sink); + srcstride = + gst_buffer_get_size (buffer) / GST_VIDEO_SINK_HEIGHT (sink); for (i = 0; i < GST_VIDEO_SINK_HEIGHT (sink); ++i) memcpy (dest + dststride * i, source + srcstride * i, srcstride); @@ -1716,9 +1713,11 @@ gst_d3dvideosink_show_frame (GstVideoSink * vsink, GstBuffer * buffer) int component; dststride = lr.Pitch; for (component = 0; component < 2; component++) { - const int compHeight = GST_VIDEO_INFO_COMP_HEIGHT (&sink->info, component); - guint8 *src = source + GST_VIDEO_INFO_COMP_OFFSET(&sink->info, component); - srcstride = GST_VIDEO_INFO_COMP_STRIDE(&sink->info, component); + const int compHeight = + GST_VIDEO_INFO_COMP_HEIGHT (&sink->info, component); + guint8 *src = source + GST_VIDEO_INFO_COMP_OFFSET (&sink->info, + component); + srcstride = GST_VIDEO_INFO_COMP_STRIDE (&sink->info, component); for (i = 0; i < compHeight; i++) { memcpy (dst + dststride * i, src + srcstride * i, srcstride); } @@ -1731,7 +1730,8 @@ gst_d3dvideosink_show_frame (GstVideoSink * vsink, GstBuffer * buffer) } } else if (GST_VIDEO_INFO_IS_RGB (&sink->info)) { dststride = lr.Pitch; - srcstride = gst_buffer_get_size (buffer) / GST_VIDEO_SINK_HEIGHT (sink); + srcstride = + gst_buffer_get_size (buffer) / GST_VIDEO_SINK_HEIGHT (sink); for (i = 0; i < GST_VIDEO_SINK_HEIGHT (sink); ++i) memcpy (dest + dststride * i, source + srcstride * i, srcstride); } @@ -1742,20 +1742,11 @@ gst_d3dvideosink_show_frame (GstVideoSink * vsink, GstBuffer * buffer) IDirect3DDevice9_EndScene (sink->d3ddev); } success: - GST_D3DVIDEOSINK_SWAP_CHAIN_UNLOCK (sink); + GST_D3DVIDEOSINK_D3D_DEVICE_UNLOCK (sink); gst_d3dvideosink_refresh (sink); return GST_FLOW_OK; -#if 0 -wrong_state: - GST_D3DVIDEOSINK_SWAP_CHAIN_UNLOCK (sink); - return GST_FLOW_FLUSHING; -/*unexpected:*/ -/* GST_D3DVIDEOSINK_SWAP_CHAIN_UNLOCK(sink); */ -/* */ -/* return GST_FLOW_UNEXPECTED; */ -#endif error: - GST_D3DVIDEOSINK_SWAP_CHAIN_UNLOCK (sink); + GST_D3DVIDEOSINK_D3D_DEVICE_UNLOCK (sink); return GST_FLOW_ERROR; } @@ -1763,105 +1754,96 @@ error: static gboolean gst_d3dvideosink_refresh (GstD3DVideoSink * sink) { - GST_D3DVIDEOSINK_SWAP_CHAIN_LOCK (sink); - { - HRESULT hr; - LPDIRECT3DSURFACE9 backBuffer; + HRESULT hr; + LPDIRECT3DSURFACE9 backBuffer; - if (!sink->d3ddev) { - if (!shared.device_lost) - GST_DEBUG ("No Direct3D device has been created"); - goto error; - } + if (!GST_D3DVIDEOSINK_D3D_DEVICE_TRYLOCK (sink)) + return TRUE; - if (!sink->d3d_offscreen_surface) { - GST_DEBUG ("No Direct3D offscreen surface has been created"); - goto error; - } + if (!sink->d3ddev) { + if (!shared.device_lost) + GST_DEBUG ("No Direct3D device has been created"); + goto error; + } - if (sink->window_closed) { - GST_DEBUG ("Window has been closed"); - goto error; - } + if (!sink->d3d_offscreen_surface) { + GST_DEBUG ("No Direct3D offscreen surface has been created"); + goto error; + } - /* Set the render target to our swap chain */ - if (FAILED (IDirect3DDevice9_GetBackBuffer (sink->d3ddev, 0, 0, - D3DBACKBUFFER_TYPE_MONO, &backBuffer))) { - GST_ERROR_OBJECT (sink, "failed to get back buffer"); - goto error; - } - IDirect3DDevice9_SetRenderTarget (sink->d3ddev, 0, backBuffer); - IDirect3DSurface9_Release (backBuffer); + if (sink->window_closed) { + GST_DEBUG ("Window has been closed"); + goto error; + } - /* Clear the target */ - IDirect3DDevice9_Clear (sink->d3ddev, 0, NULL, D3DCLEAR_TARGET, - D3DCOLOR_XRGB (0, 0, 0), 1.0f, 0); + /* Set the render target to our swap chain */ + if (FAILED (IDirect3DDevice9_GetBackBuffer (sink->d3ddev, 0, 0, + D3DBACKBUFFER_TYPE_MONO, &backBuffer))) { + GST_ERROR_OBJECT (sink, "failed to get back buffer"); + goto error; + } + IDirect3DDevice9_SetRenderTarget (sink->d3ddev, 0, backBuffer); + IDirect3DSurface9_Release (backBuffer); - if (SUCCEEDED (IDirect3DDevice9_BeginScene (sink->d3ddev))) { - gst_d3dvideosink_stretch (sink, backBuffer); - IDirect3DDevice9_EndScene (sink->d3ddev); - } - IDirect3DSurface9_Release (backBuffer); - gst_d3dvideosink_flush_gpu (sink); - /* Swap back and front buffers on video card and present to the user */ - if (FAILED (hr = - IDirect3DDevice9_Present (sink->d3ddev, NULL, NULL, NULL, NULL))) { - switch (hr) { - case D3DERR_DEVICELOST: - case D3DERR_DEVICENOTRESET: - gst_d3dvideosink_notify_device_lost (sink); - break; - default: - goto error; - } + /* Clear the target */ + IDirect3DDevice9_Clear (sink->d3ddev, 0, NULL, D3DCLEAR_TARGET, + D3DCOLOR_XRGB (0, 0, 0), 1.0f, 0); + + if (SUCCEEDED (IDirect3DDevice9_BeginScene (sink->d3ddev))) { + gst_d3dvideosink_stretch (sink, backBuffer); + IDirect3DDevice9_EndScene (sink->d3ddev); + } + IDirect3DSurface9_Release (backBuffer); + gst_d3dvideosink_flush_gpu (sink); + /* Swap back and front buffers on video card and present to the user */ + if (FAILED (hr = + IDirect3DDevice9_Present (sink->d3ddev, NULL, NULL, NULL, NULL))) { + switch (hr) { + case D3DERR_DEVICELOST: + case D3DERR_DEVICENOTRESET: + gst_d3dvideosink_notify_device_lost (sink); + break; + default: + goto error; } } -/*success:*/ - GST_D3DVIDEOSINK_SWAP_CHAIN_UNLOCK (sink); + GST_D3DVIDEOSINK_D3D_DEVICE_UNLOCK (sink); return TRUE; + error: - GST_D3DVIDEOSINK_SWAP_CHAIN_UNLOCK (sink); + GST_D3DVIDEOSINK_D3D_DEVICE_UNLOCK (sink); return FALSE; } static gboolean gst_d3dvideosink_update_all (GstD3DVideoSink * sink) { - GST_D3DVIDEOSINK_SHARED_D3D_LOCK; { - GList *item; - GstD3DVideoSink *s; - for (item = g_list_first (shared.element_list); item; item = item->next) { - s = (GstD3DVideoSink *) item->data; - gst_d3dvideosink_update (GST_BASE_SINK (s)); - } + GList *item; + GstD3DVideoSink *s; + + GST_D3DVIDEOSINK_SHARED_D3D_LOCK; + for (item = g_list_first (shared.element_list); item; item = item->next) { + s = (GstD3DVideoSink *) item->data; + gst_d3dvideosink_update (GST_BASE_SINK (s)); } -/*success:*/ GST_D3DVIDEOSINK_SHARED_D3D_UNLOCK; return TRUE; -/*error:*/ -/* GST_D3DVIDEOSINK_SHARED_D3D_UNLOCK */ -/* */ -/* return FALSE; */ } static gboolean gst_d3dvideosink_refresh_all (GstD3DVideoSink * sink) { - GST_D3DVIDEOSINK_SHARED_D3D_LOCK; { - GList *item; - GstD3DVideoSink *s; - for (item = g_list_first (shared.element_list); item; item = item->next) { - s = (GstD3DVideoSink *) item->data; - gst_d3dvideosink_refresh (s); - } + GList *item; + GstD3DVideoSink *s; + + GST_D3DVIDEOSINK_SHARED_D3D_LOCK; + for (item = g_list_first (shared.element_list); item; item = item->next) { + s = (GstD3DVideoSink *) item->data; + gst_d3dvideosink_refresh (s); } -/*success:*/ GST_D3DVIDEOSINK_SHARED_D3D_UNLOCK; return TRUE; -/*error:*/ -/* GST_D3DVIDEOSINK_SHARED_D3D_UNLOCK */ -/* return FALSE; */ } static void @@ -2119,22 +2101,6 @@ gst_d3dvideosink_initialize_d3d_device (GstD3DVideoSink * sink) GST_DEBUG ("Determined Direct3D format: %" GST_FOURCC_FORMAT, GST_FOURCC_ARGS (d3dfourcc)); - //Stencil/depth buffers aren't created by default when using swap chains - //if (SUCCEEDED(IDirect3D9_CheckDeviceFormat(shared.d3d, D3DADAPTER_DEFAULT, D3DDEVTYPE_HAL, d3dformat, D3DUSAGE_DEPTHSTENCIL, D3DRTYPE_SURFACE, D3DFMT_D32))) { - // d3dstencilformat = D3DFMT_D32; - // d3dEnableAutoDepthStencil = TRUE; - //} else if (SUCCEEDED(IDirect3D9_CheckDeviceFormat(shared.d3d, D3DADAPTER_DEFAULT, D3DDEVTYPE_HAL, d3dformat, D3DUSAGE_DEPTHSTENCIL, D3DRTYPE_SURFACE, D3DFMT_D24X8))) { - // d3dstencilformat = D3DFMT_D24X8; - // d3dEnableAutoDepthStencil = TRUE; - //} else if (SUCCEEDED(IDirect3D9_CheckDeviceFormat(shared.d3d, D3DADAPTER_DEFAULT, D3DDEVTYPE_HAL, d3dformat, D3DUSAGE_DEPTHSTENCIL, D3DRTYPE_SURFACE, D3DFMT_D16))) { - // d3dstencilformat = D3DFMT_D16; - // d3dEnableAutoDepthStencil = TRUE; - //} else { - // d3dstencilformat = D3DFMT_X8R8G8B8; - // d3dEnableAutoDepthStencil = FALSE; - //} - // - //GST_DEBUG("Determined Direct3D stencil format: %d", d3dstencilformat); GST_DEBUG ("Direct3D back buffer size: %dx%d", GST_VIDEO_SINK_WIDTH (sink), GST_VIDEO_SINK_HEIGHT (sink)); @@ -2159,14 +2125,17 @@ gst_d3dvideosink_initialize_d3d_device (GstD3DVideoSink * sink) sink->d3ddev = NULL; - hr = IDirect3D9_CreateDevice (shared.d3d, D3DADAPTER_DEFAULT, D3DDEVTYPE_HAL, hwnd, d3dcreate, &sink->d3dpp, &sink->d3ddev); - if (FAILED (hr)) - { - GST_WARNING ("Unable to create Direct3D device. Result: %ld (0x%lx)", hr, hr); + hr = IDirect3D9_CreateDevice (shared.d3d, D3DADAPTER_DEFAULT, D3DDEVTYPE_HAL, + hwnd, d3dcreate, &sink->d3dpp, &sink->d3ddev); + if (FAILED (hr)) { + GST_WARNING ("Unable to create Direct3D device. Result: %ld (0x%lx)", hr, + hr); goto error; } - hr = IDirect3DDevice9_CreateOffscreenPlainSurface (sink->d3ddev, GST_VIDEO_SINK_WIDTH (sink), GST_VIDEO_SINK_HEIGHT (sink), d3dfourcc, D3DPOOL_DEFAULT, &sink->d3d_offscreen_surface, NULL); + hr = IDirect3DDevice9_CreateOffscreenPlainSurface (sink->d3ddev, + GST_VIDEO_SINK_WIDTH (sink), GST_VIDEO_SINK_HEIGHT (sink), d3dfourcc, + D3DPOOL_DEFAULT, &sink->d3d_offscreen_surface, NULL); if (FAILED (hr)) { goto error; } @@ -2184,21 +2153,9 @@ gst_d3dvideosink_initialize_d3d_device (GstD3DVideoSink * sink) sink->d3dfiltertype = d3dfiltertype; - //if (FAILED(IDirect3DDevice9_GetDeviceCaps( - // d3ddev, - // &d3dcaps - //))) { - // /* Prevent memory leak */ - // IDirect3D9_Release(d3d); - // GST_WARNING ("Unable to retrieve Direct3D device caps"); - // goto error; - //} - /*success:*/ - //GST_D3DVIDEOSINK_SWAP_CHAIN_UNLOCK (sink); return TRUE; error: - //GST_D3DVIDEOSINK_SWAP_CHAIN_UNLOCK (sink); return FALSE; } @@ -2229,15 +2186,9 @@ gst_d3dvideosink_notify_device_lost (GstD3DVideoSink * sink) PostMessage (shared.hidden_window_handle, WM_DIRECTX_D3D_INIT_DEVICELOST, 0, (LPARAM) sink); -/*success:*/ GST_DEBUG ("Successfully sent notification of device lost event for sink %p", sink); return TRUE; -/*error:*/ -/* GST_DEBUG("Error attempting to send notification of device lost event for sink %d", sink); */ -/* GST_D3DVIDEOSINK_SHARED_D3D_UNLOCK */ -/* */ -/* return FALSE; */ } static gboolean @@ -2248,15 +2199,9 @@ gst_d3dvideosink_notify_device_reset (GstD3DVideoSink * sink) SendMessage (shared.hidden_window_handle, WM_DIRECTX_D3D_END_DEVICELOST, 0, (LPARAM) sink); } -/*success:*/ GST_DEBUG ("Successfully sent notification of device reset event for sink %p", sink); return TRUE; -/*error:*/ -/* GST_DEBUG("Error attempting to send notification of reset lost event for sink %d", sink); */ -/* GST_D3DVIDEOSINK_SHARED_D3D_UNLOCK */ -/* */ -/* return FALSE; */ } static gboolean @@ -2264,52 +2209,36 @@ gst_d3dvideosink_device_lost (GstD3DVideoSink * sink) { /* Must be called from hidden window's message loop! */ - { - if (shared.device_lost) - GST_DEBUG ("Direct3D device lost"); - - GST_DEBUG_OBJECT (sink, ". Resetting the device."); - - if (g_thread_self () != shared.hidden_window_thread) { - GST_ERROR - ("Direct3D device can only be reset by the thread that created it."); - goto error; - } + if (shared.device_lost) + GST_DEBUG ("Direct3D device lost"); - if (!shared.d3d) { - GST_ERROR ("Direct3D device has not been initialized"); - goto error; - } + GST_DEBUG_OBJECT (sink, ". Resetting the device."); - { - //GList *item; - //GstD3DVideoSink *s; + if (g_thread_self () != shared.hidden_window_thread) { + GST_ERROR + ("Direct3D device can only be reset by the thread that created it."); + goto error; + } - /* This is technically a bit different from the normal. We don't call reset(), instead */ - /* we recreate everything from scratch. */ + if (!shared.d3d) { + GST_ERROR ("Direct3D device has not been initialized"); + goto error; + } - /* Release the device */ - if (!gst_d3dvideosink_release_d3d_device (sink)) - goto error; + /* This is technically a bit different from the normal. We don't call reset(), instead */ + /* we recreate everything from scratch. */ - /* Recreate device */ - if (!gst_d3dvideosink_initialize_d3d_device (sink)) - goto error; + /* Release the device */ + if (!gst_d3dvideosink_release_d3d_device (sink)) + goto error; - /* Reinitialize all swap chains, surfaces, buffers, etc. */ - /* - for (item = g_list_first (shared.element_list); item; item = item->next) { - s = (GstD3DVideoSink *) item->data; - gst_d3dvideosink_initialize_swap_chain (s); - } - */ - } + /* Recreate device */ + if (!gst_d3dvideosink_initialize_d3d_device (sink)) + goto error; - /* Let the hidden window know that it's okay to kill the timer */ - gst_d3dvideosink_notify_device_reset (sink); - } + /* Let the hidden window know that it's okay to kill the timer */ + gst_d3dvideosink_notify_device_reset (sink); -/*success:*/ GST_DEBUG ("Direct3D device has successfully been reset."); return TRUE; error: @@ -2320,13 +2249,6 @@ error: static gboolean gst_d3dvideosink_release_d3d_device (GstD3DVideoSink * sink) { - if (sink->d3ddev) { - int ref_count; - ref_count = IDirect3DDevice9_Release (sink->d3ddev); - sink->d3ddev = NULL; - GST_DEBUG_OBJECT (sink, "Direct3D device released. Reference count: %d", - ref_count); - } if (sink->d3d_offscreen_surface) { int ref_count; ref_count = IDirect3DSurface9_Release (sink->d3d_offscreen_surface); @@ -2334,7 +2256,13 @@ gst_d3dvideosink_release_d3d_device (GstD3DVideoSink * sink) GST_DEBUG_OBJECT (sink, "Direct3D offscreen surface released. Reference count: %d", ref_count); } - //GST_D3DVIDEOSINK_SWAP_CHAIN_UNLOCK (sink); + if (sink->d3ddev) { + int ref_count; + ref_count = IDirect3DDevice9_Release (sink->d3ddev); + sink->d3ddev = NULL; + GST_DEBUG_OBJECT (sink, "Direct3D device released. Reference count: %d", + ref_count); + } return TRUE; } @@ -2356,9 +2284,10 @@ gst_d3dvideosink_release_direct3d (GstD3DVideoSink * sink) if (shared.element_count > 0) goto success; - GST_D3DVIDEOSINK_SWAP_CHAIN_LOCK (sink); + GST_D3DVIDEOSINK_D3D_DEVICE_LOCK (sink); gst_d3dvideosink_release_d3d_device (sink); - GST_D3DVIDEOSINK_SWAP_CHAIN_UNLOCK (sink); + GST_D3DVIDEOSINK_D3D_DEVICE_UNLOCK (sink); + if (shared.d3d) { int ref_count; ref_count = IDirect3D9_Release (shared.d3d); @@ -2372,9 +2301,6 @@ gst_d3dvideosink_release_direct3d (GstD3DVideoSink * sink) success: GST_D3DVIDEOSINK_SHARED_D3D_UNLOCK; return TRUE; -/*error:*/ -/* GST_D3DVIDEOSINK_SHARED_D3D_UNLOCK */ -/* return FALSE; */ } static gboolean diff --git a/sys/d3dvideosink/d3dvideosink.h b/sys/d3dvideosink/d3dvideosink.h index 67877fa8..6d9b4957 100644 --- a/sys/d3dvideosink/d3dvideosink.h +++ b/sys/d3dvideosink/d3dvideosink.h @@ -63,8 +63,9 @@ G_BEGIN_DECLS typedef struct _GstD3DVideoSink GstD3DVideoSink; typedef struct _GstD3DVideoSinkClass GstD3DVideoSinkClass; -#define GST_D3DVIDEOSINK_SWAP_CHAIN_LOCK(sink) g_mutex_lock (GST_D3DVIDEOSINK (sink)->d3d_swap_chain_lock); -#define GST_D3DVIDEOSINK_SWAP_CHAIN_UNLOCK(sink) g_mutex_unlock (GST_D3DVIDEOSINK (sink)->d3d_swap_chain_lock); +#define GST_D3DVIDEOSINK_D3D_DEVICE_LOCK(sink) g_mutex_lock (GST_D3DVIDEOSINK (sink)->d3d_device_lock) +#define GST_D3DVIDEOSINK_D3D_DEVICE_TRYLOCK(sink) g_mutex_trylock (GST_D3DVIDEOSINK (sink)->d3d_device_lock) +#define GST_D3DVIDEOSINK_D3D_DEVICE_UNLOCK(sink) g_mutex_unlock (GST_D3DVIDEOSINK (sink)->d3d_device_lock) struct _GstD3DVideoSink { @@ -99,7 +100,7 @@ struct _GstD3DVideoSink WNDPROC prevWndProc; gboolean is_hooked; - GMutex *d3d_swap_chain_lock; + GMutex *d3d_device_lock; LPDIRECT3DSURFACE9 d3d_offscreen_surface; LPDIRECT3DDEVICE9 d3ddev; D3DPRESENT_PARAMETERS d3dpp; diff --git a/sys/decklink/Makefile.in b/sys/decklink/Makefile.in index 2535aa53..5075d2dc 100644 --- a/sys/decklink/Makefile.in +++ b/sys/decklink/Makefile.in @@ -1,4 +1,4 @@ -# Makefile.in generated by automake 1.11.5 from Makefile.am. +# Makefile.in generated by automake 1.11.6 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, @@ -256,11 +256,10 @@ DIRECT3D_LIBS = @DIRECT3D_LIBS@ DIRECTDRAW_LIBS = @DIRECTDRAW_LIBS@ DIRECTFB_CFLAGS = @DIRECTFB_CFLAGS@ DIRECTFB_LIBS = @DIRECTFB_LIBS@ +DIRECTSHOW_LIBS = @DIRECTSHOW_LIBS@ DIRECTSOUND_LIBS = @DIRECTSOUND_LIBS@ DIRECTX_CFLAGS = @DIRECTX_CFLAGS@ DIRECTX_LDFLAGS = @DIRECTX_LDFLAGS@ -DIVXDEC_LIBS = @DIVXDEC_LIBS@ -DIVXENC_LIBS = @DIVXENC_LIBS@ DLLTOOL = @DLLTOOL@ DSYMUTIL = @DSYMUTIL@ DTS_LIBS = @DTS_LIBS@ @@ -295,7 +294,9 @@ GIO_LIBS = @GIO_LIBS@ GLIB_CFLAGS = @GLIB_CFLAGS@ GLIB_COMPILE_SCHEMAS = @GLIB_COMPILE_SCHEMAS@ GLIB_EXTRA_CFLAGS = @GLIB_EXTRA_CFLAGS@ +GLIB_GENMARSHAL = @GLIB_GENMARSHAL@ GLIB_LIBS = @GLIB_LIBS@ +GLIB_MKENUMS = @GLIB_MKENUMS@ GLIB_PREFIX = @GLIB_PREFIX@ GLIB_REQ = @GLIB_REQ@ GME_LIBS = @GME_LIBS@ @@ -371,13 +372,14 @@ HAVE_CXX = @HAVE_CXX@ HAVE_DIRECT3D = @HAVE_DIRECT3D@ HAVE_DIRECT3D9 = @HAVE_DIRECT3D9@ HAVE_DIRECTDRAW = @HAVE_DIRECTDRAW@ +HAVE_DIRECTSHOW = @HAVE_DIRECTSHOW@ HAVE_DIRECTSOUND = @HAVE_DIRECTSOUND@ HAVE_DTS = @HAVE_DTS@ HAVE_FAAC = @HAVE_FAAC@ HAVE_FAAD = @HAVE_FAAD@ HAVE_FLITE = @HAVE_FLITE@ HAVE_GSM = @HAVE_GSM@ -HAVE_JP2K = @HAVE_JP2K@ +HAVE_JASPER = @HAVE_JASPER@ HAVE_NAS = @HAVE_NAS@ HAVE_VPX = @HAVE_VPX@ HAVE_WILDMIDI = @HAVE_WILDMIDI@ @@ -391,7 +393,7 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ INTLLIBS = @INTLLIBS@ INTL_MACOSX_LIBS = @INTL_MACOSX_LIBS@ -JP2K_LIBS = @JP2K_LIBS@ +JASPER_LIBS = @JASPER_LIBS@ KATE_CFLAGS = @KATE_CFLAGS@ KATE_LIBS = @KATE_LIBS@ LD = @LD@ @@ -427,6 +429,8 @@ MODPLUG_CFLAGS = @MODPLUG_CFLAGS@ MODPLUG_LIBS = @MODPLUG_LIBS@ MPEG2ENC_CFLAGS = @MPEG2ENC_CFLAGS@ MPEG2ENC_LIBS = @MPEG2ENC_LIBS@ +MPG123_CFLAGS = @MPG123_CFLAGS@ +MPG123_LIBS = @MPG123_LIBS@ MPLEX_CFLAGS = @MPLEX_CFLAGS@ MPLEX_LDFLAGS = @MPLEX_LDFLAGS@ MPLEX_LIBS = @MPLEX_LIBS@ diff --git a/sys/decklink/gstdecklink.cpp b/sys/decklink/gstdecklink.cpp index ae3e62be..88e3559b 100644 --- a/sys/decklink/gstdecklink.cpp +++ b/sys/decklink/gstdecklink.cpp @@ -29,81 +29,85 @@ GType gst_decklink_mode_get_type (void) { - static GType type; - - if (!type) { - static const GEnumValue modes[] = { - {GST_DECKLINK_MODE_NTSC, "ntsc", "NTSC SD 60i"}, - {GST_DECKLINK_MODE_NTSC2398, "ntsc2398", "NTSC SD 60i (24 fps)"}, - {GST_DECKLINK_MODE_PAL, "pal", "PAL SD 50i"}, - {GST_DECKLINK_MODE_NTSC_P, "ntsc-p", "NTSC SD 60p"}, - {GST_DECKLINK_MODE_PAL_P, "pal-p", "PAL SD 50p"}, - - {GST_DECKLINK_MODE_1080p2398, "1080p2398", "HD1080 23.98p"}, - {GST_DECKLINK_MODE_1080p24, "1080p24", "HD1080 24p"}, - {GST_DECKLINK_MODE_1080p25, "1080p25", "HD1080 25p"}, - {GST_DECKLINK_MODE_1080p2997, "1080p2997", "HD1080 29.97p"}, - {GST_DECKLINK_MODE_1080p30, "1080p30", "HD1080 30p"}, - - {GST_DECKLINK_MODE_1080i50, "1080i50", "HD1080 50i"}, - {GST_DECKLINK_MODE_1080i5994, "1080i5994", "HD1080 59.94i"}, - {GST_DECKLINK_MODE_1080i60, "1080i60", "HD1080 60i"}, - - {GST_DECKLINK_MODE_1080p50, "1080p50", "HD1080 50p"}, - {GST_DECKLINK_MODE_1080p5994, "1080p5994", "HD1080 59.94p"}, - {GST_DECKLINK_MODE_1080p60, "1080p60", "HD1080 60p"}, - - {GST_DECKLINK_MODE_720p50, "720p50", "HD720 50p"}, - {GST_DECKLINK_MODE_720p5994, "720p5994", "HD720 59.94p"}, - {GST_DECKLINK_MODE_720p60, "720p60", "HD720 60p"}, - - {0, NULL, NULL} - }; - - type = g_enum_register_static ("GstDecklinkModes", modes); + static gsize id = 0; + static const GEnumValue modes[] = { + {GST_DECKLINK_MODE_NTSC, "ntsc", "NTSC SD 60i"}, + {GST_DECKLINK_MODE_NTSC2398, "ntsc2398", "NTSC SD 60i (24 fps)"}, + {GST_DECKLINK_MODE_PAL, "pal", "PAL SD 50i"}, + {GST_DECKLINK_MODE_NTSC_P, "ntsc-p", "NTSC SD 60p"}, + {GST_DECKLINK_MODE_PAL_P, "pal-p", "PAL SD 50p"}, + + {GST_DECKLINK_MODE_1080p2398, "1080p2398", "HD1080 23.98p"}, + {GST_DECKLINK_MODE_1080p24, "1080p24", "HD1080 24p"}, + {GST_DECKLINK_MODE_1080p25, "1080p25", "HD1080 25p"}, + {GST_DECKLINK_MODE_1080p2997, "1080p2997", "HD1080 29.97p"}, + {GST_DECKLINK_MODE_1080p30, "1080p30", "HD1080 30p"}, + + {GST_DECKLINK_MODE_1080i50, "1080i50", "HD1080 50i"}, + {GST_DECKLINK_MODE_1080i5994, "1080i5994", "HD1080 59.94i"}, + {GST_DECKLINK_MODE_1080i60, "1080i60", "HD1080 60i"}, + + {GST_DECKLINK_MODE_1080p50, "1080p50", "HD1080 50p"}, + {GST_DECKLINK_MODE_1080p5994, "1080p5994", "HD1080 59.94p"}, + {GST_DECKLINK_MODE_1080p60, "1080p60", "HD1080 60p"}, + + {GST_DECKLINK_MODE_720p50, "720p50", "HD720 50p"}, + {GST_DECKLINK_MODE_720p5994, "720p5994", "HD720 59.94p"}, + {GST_DECKLINK_MODE_720p60, "720p60", "HD720 60p"}, + + {0, NULL, NULL} + }; + + if (g_once_init_enter (&id)) { + GType tmp = g_enum_register_static ("GstDecklinkModes", modes); + g_once_init_leave (&id, tmp); } - return type; + + return (GType) id; } GType gst_decklink_connection_get_type (void) { - static GType type; - - if (!type) { - static const GEnumValue connections[] = { - {GST_DECKLINK_CONNECTION_SDI, "sdi", "SDI"}, - {GST_DECKLINK_CONNECTION_HDMI, "hdmi", "HDMI"}, - {GST_DECKLINK_CONNECTION_OPTICAL_SDI, "optical-sdi", "Optical SDI"}, - {GST_DECKLINK_CONNECTION_COMPONENT, "component", "Component"}, - {GST_DECKLINK_CONNECTION_COMPOSITE, "composite", "Composite"}, - {GST_DECKLINK_CONNECTION_SVIDEO, "svideo", "S-Video"}, - {0, NULL, NULL} - }; - - type = g_enum_register_static ("GstDecklinkConnection", connections); + static gsize id = 0; + static const GEnumValue connections[] = { + {GST_DECKLINK_CONNECTION_SDI, "sdi", "SDI"}, + {GST_DECKLINK_CONNECTION_HDMI, "hdmi", "HDMI"}, + {GST_DECKLINK_CONNECTION_OPTICAL_SDI, "optical-sdi", "Optical SDI"}, + {GST_DECKLINK_CONNECTION_COMPONENT, "component", "Component"}, + {GST_DECKLINK_CONNECTION_COMPOSITE, "composite", "Composite"}, + {GST_DECKLINK_CONNECTION_SVIDEO, "svideo", "S-Video"}, + {0, NULL, NULL} + }; + + if (g_once_init_enter (&id)) { + GType tmp = g_enum_register_static ("GstDecklinkConnection", connections); + g_once_init_leave (&id, tmp); } - return type; + + return (GType) id; } GType gst_decklink_audio_connection_get_type (void) { - static GType type; - - if (!type) { - static const GEnumValue connections[] = { - {GST_DECKLINK_AUDIO_CONNECTION_AUTO, "auto", "Automatic"}, - {GST_DECKLINK_AUDIO_CONNECTION_EMBEDDED, "embedded", - "SDI/HDMI embedded audio"}, - {GST_DECKLINK_AUDIO_CONNECTION_AES_EBU, "aes", "AES/EBU input"}, - {GST_DECKLINK_AUDIO_CONNECTION_ANALOG, "analog", "Analog input"}, - {0, NULL, NULL} - }; - - type = g_enum_register_static ("GstDecklinkAudioConnection", connections); + static gsize id = 0; + static const GEnumValue connections[] = { + {GST_DECKLINK_AUDIO_CONNECTION_AUTO, "auto", "Automatic"}, + {GST_DECKLINK_AUDIO_CONNECTION_EMBEDDED, "embedded", + "SDI/HDMI embedded audio"}, + {GST_DECKLINK_AUDIO_CONNECTION_AES_EBU, "aes", "AES/EBU input"}, + {GST_DECKLINK_AUDIO_CONNECTION_ANALOG, "analog", "Analog input"}, + {0, NULL, NULL} + }; + + if (g_once_init_enter (&id)) { + GType tmp = + g_enum_register_static ("GstDecklinkAudioConnection", connections); + g_once_init_leave (&id, tmp); } - return type; + + return (GType) id; } #define NTSC 10, 11, false, false diff --git a/sys/decklink/gstdecklinksink.cpp b/sys/decklink/gstdecklinksink.cpp index 6a105d46..023569fc 100644 --- a/sys/decklink/gstdecklinksink.cpp +++ b/sys/decklink/gstdecklinksink.cpp @@ -294,10 +294,12 @@ gst_decklink_sink_init (GstDecklinkSink * decklinksink, GST_DEBUG_FUNCPTR (gst_decklink_sink_audiosink_iterintlink)); gst_element_add_pad (GST_ELEMENT (decklinksink), decklinksink->audiosinkpad); + GST_OBJECT_FLAG_SET (decklinksink, GST_ELEMENT_IS_SINK); decklinksink->cond = g_cond_new (); decklinksink->mutex = g_mutex_new (); decklinksink->audio_mutex = g_mutex_new (); + decklinksink->audio_cond = g_cond_new (); decklinksink->mode = GST_DECKLINK_MODE_NTSC; decklinksink->device = 0; @@ -429,6 +431,7 @@ gst_decklink_sink_finalize (GObject * object) /* clean up object here */ g_cond_free (decklinksink->cond); g_mutex_free (decklinksink->mutex); + g_cond_free (decklinksink->audio_cond); g_mutex_free (decklinksink->audio_mutex); delete decklinksink->callback; @@ -461,14 +464,15 @@ gst_decklink_sink_start (GstDecklinkSink * decklinksink) BMDAudioSampleType sample_depth; decklinksink->decklink = gst_decklink_get_nth_device (decklinksink->device); - if (decklinksink->decklink) { + if (!decklinksink->decklink) { + GST_WARNING ("failed to get device %d", decklinksink->device); return FALSE; } ret = decklinksink->decklink->QueryInterface (IID_IDeckLinkOutput, (void **) &decklinksink->output); if (ret != S_OK) { - GST_ERROR ("selected device does not have output interface"); + GST_WARNING ("selected device does not have output interface"); return FALSE; } @@ -479,7 +483,7 @@ gst_decklink_sink_start (GstDecklinkSink * decklinksink) ret = decklinksink->output->EnableVideoOutput (mode->mode, bmdVideoOutputFlagDefault); if (ret != S_OK) { - GST_ERROR ("failed to enable video output"); + GST_WARNING ("failed to enable video output"); return FALSE; } //decklinksink->video_enabled = TRUE; @@ -491,10 +495,10 @@ gst_decklink_sink_start (GstDecklinkSink * decklinksink) ret = decklinksink->output->EnableAudioOutput (bmdAudioSampleRate48kHz, sample_depth, 2, bmdAudioOutputStreamContinuous); if (ret != S_OK) { - GST_ERROR ("failed to enable audio output"); + GST_WARNING ("failed to enable audio output"); return FALSE; } - decklinksink->audio_buffer = gst_buffer_new (); + decklinksink->audio_adapter = gst_adapter_new (); decklinksink->num_frames = 0; @@ -509,6 +513,10 @@ gst_decklink_sink_force_stop (GstDecklinkSink * decklinksink) g_cond_signal (decklinksink->cond); g_mutex_unlock (decklinksink->mutex); + g_mutex_lock (decklinksink->audio_mutex); + g_cond_signal (decklinksink->audio_cond); + g_mutex_unlock (decklinksink->audio_mutex); + return TRUE; } @@ -747,7 +755,7 @@ gst_decklink_sink_videosink_chain (GstPad * pad, GstBuffer * buffer) ret = decklinksink->output->EnableVideoOutput (decklinksink->display_mode, bmdVideoOutputFlagDefault); if (ret != S_OK) { - GST_ERROR ("failed to enable video output"); + GST_WARNING ("failed to enable video output"); //return FALSE; } decklinksink->video_enabled = TRUE; @@ -819,6 +827,18 @@ gst_decklink_sink_videosink_event (GstPad * pad, GstEvent * event) GST_DEBUG_OBJECT (decklinksink, "event"); switch (GST_EVENT_TYPE (event)) { + case GST_EVENT_EOS: + decklinksink->video_eos = TRUE; + decklinksink->video_seqnum = gst_event_get_seqnum (event); + { + GstMessage *message; + + message = gst_message_new_eos (GST_OBJECT_CAST (decklinksink)); + gst_message_set_seqnum (message, decklinksink->video_seqnum); + gst_element_post_message (GST_ELEMENT_CAST (decklinksink), message); + } + + break; default: res = gst_pad_event_default (pad, event); break; @@ -1000,14 +1020,18 @@ gst_decklink_sink_audiosink_chain (GstPad * pad, GstBuffer * buffer) GST_DEBUG_OBJECT (decklinksink, "chain"); - // concatenate both buffers + if (decklinksink->stop) { + return GST_FLOW_WRONG_STATE; + } + g_mutex_lock (decklinksink->audio_mutex); - decklinksink->audio_buffer = - gst_buffer_append (decklinksink->audio_buffer, buffer); + while (!decklinksink->stop && + gst_adapter_available (decklinksink->audio_adapter) > 1600 * 4 * 2) { + g_cond_wait (decklinksink->audio_cond, decklinksink->audio_mutex); + } + gst_adapter_push (decklinksink->audio_adapter, buffer); g_mutex_unlock (decklinksink->audio_mutex); - // GST_DEBUG("Audio Buffer Size: %d", GST_BUFFER_SIZE (decklinksink->audio_buffer)); - gst_object_unref (decklinksink); ret = GST_FLOW_OK; @@ -1039,6 +1063,10 @@ gst_decklink_sink_audiosink_event (GstPad * pad, GstEvent * event) GST_DEBUG_OBJECT (decklinksink, "event"); switch (GST_EVENT_TYPE (event)) { + case GST_EVENT_EOS: + decklinksink->audio_eos = TRUE; + decklinksink->audio_seqnum = gst_event_get_seqnum (event); + break; default: res = gst_pad_event_default (pad, event); break; @@ -1121,7 +1149,7 @@ HRESULT HRESULT Output::ScheduledPlaybackHasStopped () { - GST_ERROR ("ScheduledPlaybackHasStopped"); + GST_DEBUG ("ScheduledPlaybackHasStopped"); return S_OK; } @@ -1129,7 +1157,6 @@ HRESULT Output::RenderAudioSamples (bool preroll) { uint32_t samplesWritten; - GstBuffer *buffer; // guint64 samplesToWrite; @@ -1138,22 +1165,31 @@ Output::RenderAudioSamples (bool preroll) decklinksink->output->BeginAudioPreroll (); // running = true; } else { + int n; + const guint8 *data; + g_mutex_lock (decklinksink->audio_mutex); - decklinksink->output->ScheduleAudioSamples (GST_BUFFER_DATA (decklinksink->audio_buffer), GST_BUFFER_SIZE (decklinksink->audio_buffer) / 4, // 2 bytes per sample, stereo - 0, 0, &samplesWritten); - buffer = - gst_buffer_new_and_alloc (GST_BUFFER_SIZE (decklinksink->audio_buffer) - - (samplesWritten * 4)); + n = gst_adapter_available (decklinksink->audio_adapter); + if (n > 0) { + data = gst_adapter_peek (decklinksink->audio_adapter, n); - memcpy (GST_BUFFER_DATA (buffer), - GST_BUFFER_DATA (decklinksink->audio_buffer) + (samplesWritten * 4), - GST_BUFFER_SIZE (decklinksink->audio_buffer) - (samplesWritten * 4)); + decklinksink->output->ScheduleAudioSamples ((void *) data, n / 4, + 0, 0, &samplesWritten); - gst_buffer_unref (decklinksink->audio_buffer); + gst_adapter_flush (decklinksink->audio_adapter, samplesWritten * 4); + GST_DEBUG ("wrote %d samples, %d available", samplesWritten, n / 4); - decklinksink->audio_buffer = buffer; + g_cond_signal (decklinksink->audio_cond); + } else { + if (decklinksink->audio_eos) { + GstMessage *message; + message = gst_message_new_eos (GST_OBJECT_CAST (decklinksink)); + gst_message_set_seqnum (message, decklinksink->audio_seqnum); + gst_element_post_message (GST_ELEMENT_CAST (decklinksink), message); + } + } g_mutex_unlock (decklinksink->audio_mutex); } diff --git a/sys/decklink/gstdecklinksink.h b/sys/decklink/gstdecklinksink.h index 20c47edc..8969303e 100644 --- a/sys/decklink/gstdecklinksink.h +++ b/sys/decklink/gstdecklinksink.h @@ -21,6 +21,7 @@ #define _GST_DECKLINK_SINK_H_ #include <gst/gst.h> +#include <gst/base/gstadapter.h> #include "gstdecklink.h" G_BEGIN_DECLS @@ -51,7 +52,7 @@ public IDeckLinkAudioOutputCallback struct _GstDecklinkSink { GstElement base_decklinksink; - GstBuffer *audio_buffer; + GstAdapter *audio_adapter; GstPad *videosinkpad; GstPad *audiosinkpad; @@ -59,9 +60,13 @@ struct _GstDecklinkSink GMutex *mutex; GCond *cond; GMutex *audio_mutex; -// GCond *audio_cond; + GCond *audio_cond; int queued_frames; gboolean stop; + gboolean video_eos; + gboolean audio_eos; + int video_seqnum; + int audio_seqnum; IDeckLink *decklink; IDeckLinkOutput *output; diff --git a/sys/decklink/gstdecklinksrc.cpp b/sys/decklink/gstdecklinksrc.cpp index 891b88ee..6b706493 100644 --- a/sys/decklink/gstdecklinksrc.cpp +++ b/sys/decklink/gstdecklinksrc.cpp @@ -1266,6 +1266,21 @@ gst_decklink_src_task (void *priv) decklinksrc->dropped_frames_old = decklinksrc->dropped_frames; } + if (!decklinksrc->video_new_segment) { + GstEvent *event; + gboolean ret; + + event = gst_event_new_new_segment (FALSE, 1.0, GST_FORMAT_TIME, + 0, GST_CLOCK_TIME_NONE, 0); + + ret = gst_pad_push_event (decklinksrc->videosrcpad, event); + if (!ret) { + GST_WARNING ("new segment event not handled"); + } + + decklinksrc->video_new_segment = TRUE; + } + mode = gst_decklink_get_mode (decklinksrc->mode); video_frame->GetBytes (&data); @@ -1340,6 +1355,21 @@ gst_decklink_src_task (void *priv) } if (gst_pad_is_linked (decklinksrc->audiosrcpad)) { + if (!decklinksrc->audio_new_segment) { + GstEvent *event; + gboolean ret; + + event = gst_event_new_new_segment (FALSE, 1.0, GST_FORMAT_TIME, + 0, GST_CLOCK_TIME_NONE, 0); + + ret = gst_pad_push_event (decklinksrc->audiosrcpad, event); + if (!ret) { + GST_WARNING ("new segment event not handled"); + } + + decklinksrc->audio_new_segment = TRUE; + } + n_samples = audio_frame->GetSampleFrameCount (); audio_frame->GetBytes (&data); audio_buffer = gst_buffer_new_and_alloc (n_samples * 2 * 2); diff --git a/sys/decklink/gstdecklinksrc.h b/sys/decklink/gstdecklinksrc.h index c47279a8..38d00d71 100644 --- a/sys/decklink/gstdecklinksrc.h +++ b/sys/decklink/gstdecklinksrc.h @@ -67,6 +67,8 @@ struct _GstDecklinkSrc int height; gboolean interlaced; BMDDisplayMode bmd_mode; + gboolean video_new_segment; + gboolean audio_new_segment; /* properties */ gboolean copy_data; diff --git a/sys/directdraw/Makefile.in b/sys/directdraw/Makefile.in index 71df0ca1..815174b1 100644 --- a/sys/directdraw/Makefile.in +++ b/sys/directdraw/Makefile.in @@ -1,4 +1,4 @@ -# Makefile.in generated by automake 1.11.5 from Makefile.am. +# Makefile.in generated by automake 1.11.6 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, @@ -240,11 +240,10 @@ DIRECT3D_LIBS = @DIRECT3D_LIBS@ DIRECTDRAW_LIBS = @DIRECTDRAW_LIBS@ DIRECTFB_CFLAGS = @DIRECTFB_CFLAGS@ DIRECTFB_LIBS = @DIRECTFB_LIBS@ +DIRECTSHOW_LIBS = @DIRECTSHOW_LIBS@ DIRECTSOUND_LIBS = @DIRECTSOUND_LIBS@ DIRECTX_CFLAGS = @DIRECTX_CFLAGS@ DIRECTX_LDFLAGS = @DIRECTX_LDFLAGS@ -DIVXDEC_LIBS = @DIVXDEC_LIBS@ -DIVXENC_LIBS = @DIVXENC_LIBS@ DLLTOOL = @DLLTOOL@ DSYMUTIL = @DSYMUTIL@ DTS_LIBS = @DTS_LIBS@ @@ -279,7 +278,9 @@ GIO_LIBS = @GIO_LIBS@ GLIB_CFLAGS = @GLIB_CFLAGS@ GLIB_COMPILE_SCHEMAS = @GLIB_COMPILE_SCHEMAS@ GLIB_EXTRA_CFLAGS = @GLIB_EXTRA_CFLAGS@ +GLIB_GENMARSHAL = @GLIB_GENMARSHAL@ GLIB_LIBS = @GLIB_LIBS@ +GLIB_MKENUMS = @GLIB_MKENUMS@ GLIB_PREFIX = @GLIB_PREFIX@ GLIB_REQ = @GLIB_REQ@ GME_LIBS = @GME_LIBS@ @@ -355,13 +356,14 @@ HAVE_CXX = @HAVE_CXX@ HAVE_DIRECT3D = @HAVE_DIRECT3D@ HAVE_DIRECT3D9 = @HAVE_DIRECT3D9@ HAVE_DIRECTDRAW = @HAVE_DIRECTDRAW@ +HAVE_DIRECTSHOW = @HAVE_DIRECTSHOW@ HAVE_DIRECTSOUND = @HAVE_DIRECTSOUND@ HAVE_DTS = @HAVE_DTS@ HAVE_FAAC = @HAVE_FAAC@ HAVE_FAAD = @HAVE_FAAD@ HAVE_FLITE = @HAVE_FLITE@ HAVE_GSM = @HAVE_GSM@ -HAVE_JP2K = @HAVE_JP2K@ +HAVE_JASPER = @HAVE_JASPER@ HAVE_NAS = @HAVE_NAS@ HAVE_VPX = @HAVE_VPX@ HAVE_WILDMIDI = @HAVE_WILDMIDI@ @@ -375,7 +377,7 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ INTLLIBS = @INTLLIBS@ INTL_MACOSX_LIBS = @INTL_MACOSX_LIBS@ -JP2K_LIBS = @JP2K_LIBS@ +JASPER_LIBS = @JASPER_LIBS@ KATE_CFLAGS = @KATE_CFLAGS@ KATE_LIBS = @KATE_LIBS@ LD = @LD@ @@ -411,6 +413,8 @@ MODPLUG_CFLAGS = @MODPLUG_CFLAGS@ MODPLUG_LIBS = @MODPLUG_LIBS@ MPEG2ENC_CFLAGS = @MPEG2ENC_CFLAGS@ MPEG2ENC_LIBS = @MPEG2ENC_LIBS@ +MPG123_CFLAGS = @MPG123_CFLAGS@ +MPG123_LIBS = @MPG123_LIBS@ MPLEX_CFLAGS = @MPLEX_CFLAGS@ MPLEX_LDFLAGS = @MPLEX_LDFLAGS@ MPLEX_LIBS = @MPLEX_LIBS@ diff --git a/sys/directdraw/gstdirectdrawsink.c b/sys/directdraw/gstdirectdrawsink.c index 08bb9e0a..70cc503f 100644 --- a/sys/directdraw/gstdirectdrawsink.c +++ b/sys/directdraw/gstdirectdrawsink.c @@ -429,7 +429,7 @@ gst_directdraw_sink_class_init (GstDirectDrawSinkClass * klass) g_object_class_install_property (G_OBJECT_CLASS (klass), PROP_KEEP_ASPECT_RATIO, g_param_spec_boolean ("force-aspect-ratio", "Force aspect ratio", - "When enabled, scaling will respect original aspect ratio", FALSE, + "When enabled, scaling will respect original aspect ratio", TRUE, G_PARAM_READWRITE)); } diff --git a/sys/directsound/Makefile.in b/sys/directsound/Makefile.in index f4c87586..4cc4b9db 100644 --- a/sys/directsound/Makefile.in +++ b/sys/directsound/Makefile.in @@ -1,4 +1,4 @@ -# Makefile.in generated by automake 1.11.5 from Makefile.am. +# Makefile.in generated by automake 1.11.6 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, @@ -240,11 +240,10 @@ DIRECT3D_LIBS = @DIRECT3D_LIBS@ DIRECTDRAW_LIBS = @DIRECTDRAW_LIBS@ DIRECTFB_CFLAGS = @DIRECTFB_CFLAGS@ DIRECTFB_LIBS = @DIRECTFB_LIBS@ +DIRECTSHOW_LIBS = @DIRECTSHOW_LIBS@ DIRECTSOUND_LIBS = @DIRECTSOUND_LIBS@ DIRECTX_CFLAGS = @DIRECTX_CFLAGS@ DIRECTX_LDFLAGS = @DIRECTX_LDFLAGS@ -DIVXDEC_LIBS = @DIVXDEC_LIBS@ -DIVXENC_LIBS = @DIVXENC_LIBS@ DLLTOOL = @DLLTOOL@ DSYMUTIL = @DSYMUTIL@ DTS_LIBS = @DTS_LIBS@ @@ -279,7 +278,9 @@ GIO_LIBS = @GIO_LIBS@ GLIB_CFLAGS = @GLIB_CFLAGS@ GLIB_COMPILE_SCHEMAS = @GLIB_COMPILE_SCHEMAS@ GLIB_EXTRA_CFLAGS = @GLIB_EXTRA_CFLAGS@ +GLIB_GENMARSHAL = @GLIB_GENMARSHAL@ GLIB_LIBS = @GLIB_LIBS@ +GLIB_MKENUMS = @GLIB_MKENUMS@ GLIB_PREFIX = @GLIB_PREFIX@ GLIB_REQ = @GLIB_REQ@ GME_LIBS = @GME_LIBS@ @@ -355,13 +356,14 @@ HAVE_CXX = @HAVE_CXX@ HAVE_DIRECT3D = @HAVE_DIRECT3D@ HAVE_DIRECT3D9 = @HAVE_DIRECT3D9@ HAVE_DIRECTDRAW = @HAVE_DIRECTDRAW@ +HAVE_DIRECTSHOW = @HAVE_DIRECTSHOW@ HAVE_DIRECTSOUND = @HAVE_DIRECTSOUND@ HAVE_DTS = @HAVE_DTS@ HAVE_FAAC = @HAVE_FAAC@ HAVE_FAAD = @HAVE_FAAD@ HAVE_FLITE = @HAVE_FLITE@ HAVE_GSM = @HAVE_GSM@ -HAVE_JP2K = @HAVE_JP2K@ +HAVE_JASPER = @HAVE_JASPER@ HAVE_NAS = @HAVE_NAS@ HAVE_VPX = @HAVE_VPX@ HAVE_WILDMIDI = @HAVE_WILDMIDI@ @@ -375,7 +377,7 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ INTLLIBS = @INTLLIBS@ INTL_MACOSX_LIBS = @INTL_MACOSX_LIBS@ -JP2K_LIBS = @JP2K_LIBS@ +JASPER_LIBS = @JASPER_LIBS@ KATE_CFLAGS = @KATE_CFLAGS@ KATE_LIBS = @KATE_LIBS@ LD = @LD@ @@ -411,6 +413,8 @@ MODPLUG_CFLAGS = @MODPLUG_CFLAGS@ MODPLUG_LIBS = @MODPLUG_LIBS@ MPEG2ENC_CFLAGS = @MPEG2ENC_CFLAGS@ MPEG2ENC_LIBS = @MPEG2ENC_LIBS@ +MPG123_CFLAGS = @MPG123_CFLAGS@ +MPG123_LIBS = @MPG123_LIBS@ MPLEX_CFLAGS = @MPLEX_CFLAGS@ MPLEX_LDFLAGS = @MPLEX_LDFLAGS@ MPLEX_LIBS = @MPLEX_LIBS@ diff --git a/sys/directsound/gstdirectsoundsrc.c b/sys/directsound/gstdirectsoundsrc.c index 54282f66..3562c40a 100644 --- a/sys/directsound/gstdirectsoundsrc.c +++ b/sys/directsound/gstdirectsoundsrc.c @@ -77,7 +77,7 @@ enum static HRESULT (WINAPI * pDSoundCaptureCreate) (LPGUID, LPDIRECTSOUNDCAPTURE *, LPUNKNOWN); -static void gst_directsound_src_finalise (GObject * object); +static void gst_directsound_src_finalize (GObject * object); static void gst_directsound_src_set_property (GObject * object, guint prop_id, const GValue * value, GParamSpec * pspec); @@ -137,11 +137,13 @@ gst_directsound_src_dispose (GObject * object) } static void -gst_directsound_src_finalise (GObject * object) +gst_directsound_src_finalize (GObject * object) { GstDirectSoundSrc *dsoundsrc = GST_DIRECTSOUND_SRC (object); g_mutex_free (dsoundsrc->dsound_lock); + + G_OBJECT_CLASS (parent_class)->finalize (object); } static void @@ -179,7 +181,7 @@ gst_directsound_src_class_init (GstDirectSoundSrcClass * klass) GST_DEBUG ("initializing directsoundsrc class\n"); - gobject_class->finalize = GST_DEBUG_FUNCPTR (gst_directsound_src_finalise); + gobject_class->finalize = GST_DEBUG_FUNCPTR (gst_directsound_src_finalize); gobject_class->dispose = GST_DEBUG_FUNCPTR (gst_directsound_src_dispose); gobject_class->get_property = GST_DEBUG_FUNCPTR (gst_directsound_src_get_property); @@ -420,8 +422,8 @@ gst_directsound_src_prepare (GstAudioSrc * asrc, GstRingBufferSpec * spec) spec->bytes_per_sample = (spec->width / 8) * spec->channels; dsoundsrc->bytes_per_sample = spec->bytes_per_sample; - GST_DEBUG ("latency time: %" G_GUINT64_FORMAT " - buffer time: %" G_GUINT64_FORMAT, - spec->latency_time, spec->buffer_time); + GST_DEBUG ("latency time: %" G_GUINT64_FORMAT " - buffer time: %" + G_GUINT64_FORMAT, spec->latency_time, spec->buffer_time); /* Buffer-time should be allways more than 2*latency */ if (spec->buffer_time < spec->latency_time * 2) { diff --git a/sys/dshowdecwrapper/Makefile.in b/sys/dshowdecwrapper/Makefile.in index 66d097d2..cf7f3a26 100644 --- a/sys/dshowdecwrapper/Makefile.in +++ b/sys/dshowdecwrapper/Makefile.in @@ -1,4 +1,4 @@ -# Makefile.in generated by automake 1.11.5 from Makefile.am. +# Makefile.in generated by automake 1.11.6 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, @@ -243,11 +243,10 @@ DIRECT3D_LIBS = @DIRECT3D_LIBS@ DIRECTDRAW_LIBS = @DIRECTDRAW_LIBS@ DIRECTFB_CFLAGS = @DIRECTFB_CFLAGS@ DIRECTFB_LIBS = @DIRECTFB_LIBS@ +DIRECTSHOW_LIBS = @DIRECTSHOW_LIBS@ DIRECTSOUND_LIBS = @DIRECTSOUND_LIBS@ DIRECTX_CFLAGS = @DIRECTX_CFLAGS@ DIRECTX_LDFLAGS = @DIRECTX_LDFLAGS@ -DIVXDEC_LIBS = @DIVXDEC_LIBS@ -DIVXENC_LIBS = @DIVXENC_LIBS@ DLLTOOL = @DLLTOOL@ DSYMUTIL = @DSYMUTIL@ DTS_LIBS = @DTS_LIBS@ @@ -282,7 +281,9 @@ GIO_LIBS = @GIO_LIBS@ GLIB_CFLAGS = @GLIB_CFLAGS@ GLIB_COMPILE_SCHEMAS = @GLIB_COMPILE_SCHEMAS@ GLIB_EXTRA_CFLAGS = @GLIB_EXTRA_CFLAGS@ +GLIB_GENMARSHAL = @GLIB_GENMARSHAL@ GLIB_LIBS = @GLIB_LIBS@ +GLIB_MKENUMS = @GLIB_MKENUMS@ GLIB_PREFIX = @GLIB_PREFIX@ GLIB_REQ = @GLIB_REQ@ GME_LIBS = @GME_LIBS@ @@ -358,13 +359,14 @@ HAVE_CXX = @HAVE_CXX@ HAVE_DIRECT3D = @HAVE_DIRECT3D@ HAVE_DIRECT3D9 = @HAVE_DIRECT3D9@ HAVE_DIRECTDRAW = @HAVE_DIRECTDRAW@ +HAVE_DIRECTSHOW = @HAVE_DIRECTSHOW@ HAVE_DIRECTSOUND = @HAVE_DIRECTSOUND@ HAVE_DTS = @HAVE_DTS@ HAVE_FAAC = @HAVE_FAAC@ HAVE_FAAD = @HAVE_FAAD@ HAVE_FLITE = @HAVE_FLITE@ HAVE_GSM = @HAVE_GSM@ -HAVE_JP2K = @HAVE_JP2K@ +HAVE_JASPER = @HAVE_JASPER@ HAVE_NAS = @HAVE_NAS@ HAVE_VPX = @HAVE_VPX@ HAVE_WILDMIDI = @HAVE_WILDMIDI@ @@ -378,7 +380,7 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ INTLLIBS = @INTLLIBS@ INTL_MACOSX_LIBS = @INTL_MACOSX_LIBS@ -JP2K_LIBS = @JP2K_LIBS@ +JASPER_LIBS = @JASPER_LIBS@ KATE_CFLAGS = @KATE_CFLAGS@ KATE_LIBS = @KATE_LIBS@ LD = @LD@ @@ -414,6 +416,8 @@ MODPLUG_CFLAGS = @MODPLUG_CFLAGS@ MODPLUG_LIBS = @MODPLUG_LIBS@ MPEG2ENC_CFLAGS = @MPEG2ENC_CFLAGS@ MPEG2ENC_LIBS = @MPEG2ENC_LIBS@ +MPG123_CFLAGS = @MPG123_CFLAGS@ +MPG123_LIBS = @MPG123_LIBS@ MPLEX_CFLAGS = @MPLEX_CFLAGS@ MPLEX_LDFLAGS = @MPLEX_LDFLAGS@ MPLEX_LIBS = @MPLEX_LIBS@ diff --git a/sys/dshowdecwrapper/gstdshowvideodec.cpp b/sys/dshowdecwrapper/gstdshowvideodec.cpp index 2b90b6e1..9ea1d5fe 100644 --- a/sys/dshowdecwrapper/gstdshowvideodec.cpp +++ b/sys/dshowdecwrapper/gstdshowvideodec.cpp @@ -161,7 +161,7 @@ static const VideoCodecEntry video_dec_codecs[] = { {"dshowvdec_wmv3", "Windows Media Video 9", GST_MAKE_FOURCC ('W', 'M', 'V', '3'), GUID_MEDIATYPE_VIDEO, GUID_MEDIASUBTYPE_WMVV3, - "video/x-wmv, wmvversion = (int) 3, " "format = (fourcc) WMV3", + "video/x-wmv, wmvversion = (int) 3, " "format = (string) WMV3", GUID_MEDIATYPE_VIDEO, GUID_MEDIASUBTYPE_YUY2, "video/x-raw-yuv, format=(fourcc)YUY2", preferred_wmv_filters}, @@ -169,7 +169,7 @@ static const VideoCodecEntry video_dec_codecs[] = { {"dshowvdec_wmvp", "Windows Media Video 9 Image", GST_MAKE_FOURCC ('W', 'M', 'V', 'P'), GUID_MEDIATYPE_VIDEO, GUID_MEDIASUBTYPE_WMVP, - "video/x-wmv, wmvversion = (int) 3, " "format = (fourcc) { WMVP, MSS1 }", + "video/x-wmv, wmvversion = (int) 3, " "format = (string) { WMVP, MSS1 }", GUID_MEDIATYPE_VIDEO, GUID_MEDIASUBTYPE_YUY2, "video/x-raw-yuv, format=(fourcc)YUY2", preferred_wmv_filters}, @@ -177,7 +177,7 @@ static const VideoCodecEntry video_dec_codecs[] = { {"dshowvdec_wmva", "Windows Media Video 9 Advanced", GST_MAKE_FOURCC ('W', 'M', 'V', 'A'), GUID_MEDIATYPE_VIDEO, GUID_MEDIASUBTYPE_WMVA, - "video/x-wmv, wmvversion = (int) 3, " "format = (fourcc) WMVA", + "video/x-wmv, wmvversion = (int) 3, " "format = (string) WMVA", GUID_MEDIATYPE_VIDEO, GUID_MEDIASUBTYPE_YUY2, "video/x-raw-yuv, format=(fourcc)YUY2", preferred_wmv_filters}, @@ -185,7 +185,7 @@ static const VideoCodecEntry video_dec_codecs[] = { {"dshowvdec_wvc1", "Windows Media VC1 video", GST_MAKE_FOURCC ('W', 'V', 'C', '1'), GUID_MEDIATYPE_VIDEO, GUID_MEDIASUBTYPE_WVC1, - "video/x-wmv, wmvversion = (int) 3, " "format = (fourcc) WVC1", + "video/x-wmv, wmvversion = (int) 3, " "format = (string) WVC1", GUID_MEDIATYPE_VIDEO, GUID_MEDIASUBTYPE_YUY2, "video/x-raw-yuv, format=(fourcc)YUY2", preferred_wmv_filters}, diff --git a/sys/dshowsrcwrapper/Makefile.in b/sys/dshowsrcwrapper/Makefile.in index b6c8ef03..bbf3635c 100644 --- a/sys/dshowsrcwrapper/Makefile.in +++ b/sys/dshowsrcwrapper/Makefile.in @@ -1,4 +1,4 @@ -# Makefile.in generated by automake 1.11.5 from Makefile.am. +# Makefile.in generated by automake 1.11.6 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, @@ -173,11 +173,10 @@ DIRECT3D_LIBS = @DIRECT3D_LIBS@ DIRECTDRAW_LIBS = @DIRECTDRAW_LIBS@ DIRECTFB_CFLAGS = @DIRECTFB_CFLAGS@ DIRECTFB_LIBS = @DIRECTFB_LIBS@ +DIRECTSHOW_LIBS = @DIRECTSHOW_LIBS@ DIRECTSOUND_LIBS = @DIRECTSOUND_LIBS@ DIRECTX_CFLAGS = @DIRECTX_CFLAGS@ DIRECTX_LDFLAGS = @DIRECTX_LDFLAGS@ -DIVXDEC_LIBS = @DIVXDEC_LIBS@ -DIVXENC_LIBS = @DIVXENC_LIBS@ DLLTOOL = @DLLTOOL@ DSYMUTIL = @DSYMUTIL@ DTS_LIBS = @DTS_LIBS@ @@ -212,7 +211,9 @@ GIO_LIBS = @GIO_LIBS@ GLIB_CFLAGS = @GLIB_CFLAGS@ GLIB_COMPILE_SCHEMAS = @GLIB_COMPILE_SCHEMAS@ GLIB_EXTRA_CFLAGS = @GLIB_EXTRA_CFLAGS@ +GLIB_GENMARSHAL = @GLIB_GENMARSHAL@ GLIB_LIBS = @GLIB_LIBS@ +GLIB_MKENUMS = @GLIB_MKENUMS@ GLIB_PREFIX = @GLIB_PREFIX@ GLIB_REQ = @GLIB_REQ@ GME_LIBS = @GME_LIBS@ @@ -288,13 +289,14 @@ HAVE_CXX = @HAVE_CXX@ HAVE_DIRECT3D = @HAVE_DIRECT3D@ HAVE_DIRECT3D9 = @HAVE_DIRECT3D9@ HAVE_DIRECTDRAW = @HAVE_DIRECTDRAW@ +HAVE_DIRECTSHOW = @HAVE_DIRECTSHOW@ HAVE_DIRECTSOUND = @HAVE_DIRECTSOUND@ HAVE_DTS = @HAVE_DTS@ HAVE_FAAC = @HAVE_FAAC@ HAVE_FAAD = @HAVE_FAAD@ HAVE_FLITE = @HAVE_FLITE@ HAVE_GSM = @HAVE_GSM@ -HAVE_JP2K = @HAVE_JP2K@ +HAVE_JASPER = @HAVE_JASPER@ HAVE_NAS = @HAVE_NAS@ HAVE_VPX = @HAVE_VPX@ HAVE_WILDMIDI = @HAVE_WILDMIDI@ @@ -308,7 +310,7 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ INTLLIBS = @INTLLIBS@ INTL_MACOSX_LIBS = @INTL_MACOSX_LIBS@ -JP2K_LIBS = @JP2K_LIBS@ +JASPER_LIBS = @JASPER_LIBS@ KATE_CFLAGS = @KATE_CFLAGS@ KATE_LIBS = @KATE_LIBS@ LD = @LD@ @@ -344,6 +346,8 @@ MODPLUG_CFLAGS = @MODPLUG_CFLAGS@ MODPLUG_LIBS = @MODPLUG_LIBS@ MPEG2ENC_CFLAGS = @MPEG2ENC_CFLAGS@ MPEG2ENC_LIBS = @MPEG2ENC_LIBS@ +MPG123_CFLAGS = @MPG123_CFLAGS@ +MPG123_LIBS = @MPG123_LIBS@ MPLEX_CFLAGS = @MPLEX_CFLAGS@ MPLEX_LDFLAGS = @MPLEX_LDFLAGS@ MPLEX_LIBS = @MPLEX_LIBS@ diff --git a/sys/dshowsrcwrapper/gstdshow.cpp b/sys/dshowsrcwrapper/gstdshow.cpp index 11ea159d..c02abea3 100644 --- a/sys/dshowsrcwrapper/gstdshow.cpp +++ b/sys/dshowsrcwrapper/gstdshow.cpp @@ -435,12 +435,12 @@ gst_dshow_new_video_caps (GstVideoFormat video_format, const gchar * name, /* other video format */ if (!video_caps) { - if (g_strcasecmp (name, "video/x-dv, systemstream=FALSE") == 0) { + if (g_ascii_strncasecmp (name, "video/x-dv, systemstream=FALSE", 31) == 0) { video_caps = gst_caps_new_simple ("video/x-dv", "systemstream", G_TYPE_BOOLEAN, FALSE, "format", GST_TYPE_FOURCC, GST_MAKE_FOURCC ('d', 'v', 's', 'd'), NULL); - } else if (g_strcasecmp (name, "video/x-dv, systemstream=TRUE") == 0) { + } else if (g_ascii_strncasecmp (name, "video/x-dv, systemstream=TRUE", 31) == 0) { video_caps = gst_caps_new_simple ("video/x-dv", "systemstream", G_TYPE_BOOLEAN, TRUE, NULL); return video_caps; diff --git a/sys/dshowvideosink/Makefile.in b/sys/dshowvideosink/Makefile.in index c7acaf53..9408752a 100644 --- a/sys/dshowvideosink/Makefile.in +++ b/sys/dshowvideosink/Makefile.in @@ -1,4 +1,4 @@ -# Makefile.in generated by automake 1.11.5 from Makefile.am. +# Makefile.in generated by automake 1.11.6 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, @@ -173,11 +173,10 @@ DIRECT3D_LIBS = @DIRECT3D_LIBS@ DIRECTDRAW_LIBS = @DIRECTDRAW_LIBS@ DIRECTFB_CFLAGS = @DIRECTFB_CFLAGS@ DIRECTFB_LIBS = @DIRECTFB_LIBS@ +DIRECTSHOW_LIBS = @DIRECTSHOW_LIBS@ DIRECTSOUND_LIBS = @DIRECTSOUND_LIBS@ DIRECTX_CFLAGS = @DIRECTX_CFLAGS@ DIRECTX_LDFLAGS = @DIRECTX_LDFLAGS@ -DIVXDEC_LIBS = @DIVXDEC_LIBS@ -DIVXENC_LIBS = @DIVXENC_LIBS@ DLLTOOL = @DLLTOOL@ DSYMUTIL = @DSYMUTIL@ DTS_LIBS = @DTS_LIBS@ @@ -212,7 +211,9 @@ GIO_LIBS = @GIO_LIBS@ GLIB_CFLAGS = @GLIB_CFLAGS@ GLIB_COMPILE_SCHEMAS = @GLIB_COMPILE_SCHEMAS@ GLIB_EXTRA_CFLAGS = @GLIB_EXTRA_CFLAGS@ +GLIB_GENMARSHAL = @GLIB_GENMARSHAL@ GLIB_LIBS = @GLIB_LIBS@ +GLIB_MKENUMS = @GLIB_MKENUMS@ GLIB_PREFIX = @GLIB_PREFIX@ GLIB_REQ = @GLIB_REQ@ GME_LIBS = @GME_LIBS@ @@ -288,13 +289,14 @@ HAVE_CXX = @HAVE_CXX@ HAVE_DIRECT3D = @HAVE_DIRECT3D@ HAVE_DIRECT3D9 = @HAVE_DIRECT3D9@ HAVE_DIRECTDRAW = @HAVE_DIRECTDRAW@ +HAVE_DIRECTSHOW = @HAVE_DIRECTSHOW@ HAVE_DIRECTSOUND = @HAVE_DIRECTSOUND@ HAVE_DTS = @HAVE_DTS@ HAVE_FAAC = @HAVE_FAAC@ HAVE_FAAD = @HAVE_FAAD@ HAVE_FLITE = @HAVE_FLITE@ HAVE_GSM = @HAVE_GSM@ -HAVE_JP2K = @HAVE_JP2K@ +HAVE_JASPER = @HAVE_JASPER@ HAVE_NAS = @HAVE_NAS@ HAVE_VPX = @HAVE_VPX@ HAVE_WILDMIDI = @HAVE_WILDMIDI@ @@ -308,7 +310,7 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ INTLLIBS = @INTLLIBS@ INTL_MACOSX_LIBS = @INTL_MACOSX_LIBS@ -JP2K_LIBS = @JP2K_LIBS@ +JASPER_LIBS = @JASPER_LIBS@ KATE_CFLAGS = @KATE_CFLAGS@ KATE_LIBS = @KATE_LIBS@ LD = @LD@ @@ -344,6 +346,8 @@ MODPLUG_CFLAGS = @MODPLUG_CFLAGS@ MODPLUG_LIBS = @MODPLUG_LIBS@ MPEG2ENC_CFLAGS = @MPEG2ENC_CFLAGS@ MPEG2ENC_LIBS = @MPEG2ENC_LIBS@ +MPG123_CFLAGS = @MPG123_CFLAGS@ +MPG123_LIBS = @MPG123_LIBS@ MPLEX_CFLAGS = @MPLEX_CFLAGS@ MPLEX_LDFLAGS = @MPLEX_LDFLAGS@ MPLEX_LIBS = @MPLEX_LIBS@ diff --git a/sys/dshowvideosink/dshowvideosink.cpp b/sys/dshowvideosink/dshowvideosink.cpp index 6458b638..d166d988 100644 --- a/sys/dshowvideosink/dshowvideosink.cpp +++ b/sys/dshowvideosink/dshowvideosink.cpp @@ -263,7 +263,7 @@ gst_dshowvideosink_class_init (GstDshowVideoSinkClass * klass) g_object_class_install_property (G_OBJECT_CLASS (klass), PROP_KEEP_ASPECT_RATIO, g_param_spec_boolean ("force-aspect-ratio", "Force aspect ratio", - "When enabled, scaling will respect original aspect ratio", FALSE, + "When enabled, scaling will respect original aspect ratio", TRUE, (GParamFlags)G_PARAM_READWRITE)); g_object_class_install_property (G_OBJECT_CLASS (klass), PROP_FULL_SCREEN, g_param_spec_boolean ("fullscreen", diff --git a/sys/dvb/Makefile.in b/sys/dvb/Makefile.in index 231b4a57..1795b961 100644 --- a/sys/dvb/Makefile.in +++ b/sys/dvb/Makefile.in @@ -1,4 +1,4 @@ -# Makefile.in generated by automake 1.11.5 from Makefile.am. +# Makefile.in generated by automake 1.11.6 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, @@ -246,11 +246,10 @@ DIRECT3D_LIBS = @DIRECT3D_LIBS@ DIRECTDRAW_LIBS = @DIRECTDRAW_LIBS@ DIRECTFB_CFLAGS = @DIRECTFB_CFLAGS@ DIRECTFB_LIBS = @DIRECTFB_LIBS@ +DIRECTSHOW_LIBS = @DIRECTSHOW_LIBS@ DIRECTSOUND_LIBS = @DIRECTSOUND_LIBS@ DIRECTX_CFLAGS = @DIRECTX_CFLAGS@ DIRECTX_LDFLAGS = @DIRECTX_LDFLAGS@ -DIVXDEC_LIBS = @DIVXDEC_LIBS@ -DIVXENC_LIBS = @DIVXENC_LIBS@ DLLTOOL = @DLLTOOL@ DSYMUTIL = @DSYMUTIL@ DTS_LIBS = @DTS_LIBS@ @@ -285,7 +284,9 @@ GIO_LIBS = @GIO_LIBS@ GLIB_CFLAGS = @GLIB_CFLAGS@ GLIB_COMPILE_SCHEMAS = @GLIB_COMPILE_SCHEMAS@ GLIB_EXTRA_CFLAGS = @GLIB_EXTRA_CFLAGS@ +GLIB_GENMARSHAL = @GLIB_GENMARSHAL@ GLIB_LIBS = @GLIB_LIBS@ +GLIB_MKENUMS = @GLIB_MKENUMS@ GLIB_PREFIX = @GLIB_PREFIX@ GLIB_REQ = @GLIB_REQ@ GME_LIBS = @GME_LIBS@ @@ -361,13 +362,14 @@ HAVE_CXX = @HAVE_CXX@ HAVE_DIRECT3D = @HAVE_DIRECT3D@ HAVE_DIRECT3D9 = @HAVE_DIRECT3D9@ HAVE_DIRECTDRAW = @HAVE_DIRECTDRAW@ +HAVE_DIRECTSHOW = @HAVE_DIRECTSHOW@ HAVE_DIRECTSOUND = @HAVE_DIRECTSOUND@ HAVE_DTS = @HAVE_DTS@ HAVE_FAAC = @HAVE_FAAC@ HAVE_FAAD = @HAVE_FAAD@ HAVE_FLITE = @HAVE_FLITE@ HAVE_GSM = @HAVE_GSM@ -HAVE_JP2K = @HAVE_JP2K@ +HAVE_JASPER = @HAVE_JASPER@ HAVE_NAS = @HAVE_NAS@ HAVE_VPX = @HAVE_VPX@ HAVE_WILDMIDI = @HAVE_WILDMIDI@ @@ -381,7 +383,7 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ INTLLIBS = @INTLLIBS@ INTL_MACOSX_LIBS = @INTL_MACOSX_LIBS@ -JP2K_LIBS = @JP2K_LIBS@ +JASPER_LIBS = @JASPER_LIBS@ KATE_CFLAGS = @KATE_CFLAGS@ KATE_LIBS = @KATE_LIBS@ LD = @LD@ @@ -417,6 +419,8 @@ MODPLUG_CFLAGS = @MODPLUG_CFLAGS@ MODPLUG_LIBS = @MODPLUG_LIBS@ MPEG2ENC_CFLAGS = @MPEG2ENC_CFLAGS@ MPEG2ENC_LIBS = @MPEG2ENC_LIBS@ +MPG123_CFLAGS = @MPG123_CFLAGS@ +MPG123_LIBS = @MPG123_LIBS@ MPLEX_CFLAGS = @MPLEX_CFLAGS@ MPLEX_LDFLAGS = @MPLEX_LDFLAGS@ MPLEX_LIBS = @MPLEX_LIBS@ diff --git a/sys/dvb/dvbbasebin.c b/sys/dvb/dvbbasebin.c index 415e3d63..c8e66499 100644 --- a/sys/dvb/dvbbasebin.c +++ b/sys/dvb/dvbbasebin.c @@ -987,7 +987,7 @@ dvb_base_bin_uri_set_uri (GstURIHandler * handler, const gchar * uri, if (location == NULL) goto no_location; - if (!set_properties_for_channel (G_OBJECT (dvbbasebin), location)) + if (!set_properties_for_channel (GST_ELEMENT (dvbbasebin), location)) goto set_properties_failed; /* FIXME: here is where we parse channels.conf */ diff --git a/sys/dvb/gstdvbsrc.c b/sys/dvb/gstdvbsrc.c index b7ea3425..3a83a40d 100644 --- a/sys/dvb/gstdvbsrc.c +++ b/sys/dvb/gstdvbsrc.c @@ -155,6 +155,7 @@ gst_dvbsrc_modulation_get_type (void) {QAM_AUTO, "AUTO", "auto"}, {VSB_8, "8VSB", "8vsb"}, {VSB_16, "16VSB", "16vsb"}, + {PSK_8, "8PSK", "8psk"}, {0, NULL, NULL}, }; @@ -529,11 +530,14 @@ gst_dvbsrc_set_property (GObject * _object, guint prop_id, const char *s = NULL; s = g_value_get_string (value); - if (s != NULL) + if (s != NULL) { object->pol = (s[0] == 'h' || s[0] == 'H') ? DVB_POL_H : DVB_POL_V; - } - GST_INFO_OBJECT (object, "Set Property: ARG_DVBSRC_POLARITY"); + GST_INFO_OBJECT (object, "Set Property: ARG_DVBSRC_POLARITY"); + GST_INFO_OBJECT (object, "\t%s", (s[0] == 'h' + || s[0] == 'H') ? "DVB_POL_H" : "DVB_POL_V"); + } break; + } case ARG_DVBSRC_PIDS: { gchar *pid_string; @@ -565,7 +569,7 @@ gst_dvbsrc_set_property (GObject * _object, guint prop_id, while (*pids != NULL && pid_count < MAX_FILTERS) { pid = strtol (*pids, NULL, 0); if (pid > 1 && pid <= 8192) { - GST_INFO_OBJECT (object, "Parsed Pid: %d", pid); + GST_INFO_OBJECT (object, "\tParsed Pid: %d", pid); object->pids[pid_count] = pid; pid_count++; } @@ -875,7 +879,7 @@ gst_dvbsrc_finalize (GObject * _object) /* ****************************** * * - * Plugin Realisation * + * Plugin Realization * * * ****************************** */ diff --git a/sys/dvb/parsechannels.c b/sys/dvb/parsechannels.c index d0f338cc..d6e94eb1 100644 --- a/sys/dvb/parsechannels.c +++ b/sys/dvb/parsechannels.c @@ -29,9 +29,14 @@ #include "parsechannels.h" -/* this will do zap style channels.conf only for the moment*/ -GHashTable * -parse_channels_conf_from_file (const gchar * filename) +/* TODO: + * Store the channels hash table around instead of constantly parsing it + * Detect when the file changed on disk + */ + +/* this will do zap style channels.conf only for the moment */ +static GHashTable * +parse_channels_conf_from_file (GstElement * dvbbasebin, const gchar * filename) { gchar *contents; gchar **lines; @@ -47,86 +52,108 @@ parse_channels_conf_from_file (const gchar * filename) const gchar *cable[] = { "inversion", "symbol-rate", "code-rate-hp", "modulation" }; - int i; - GHashTable *res = NULL; - - if (g_file_get_contents (filename, &contents, NULL, NULL)) { - lines = g_strsplit (contents, "\n", 0); - res = g_hash_table_new (g_str_hash, g_str_equal); - - i = 0; - line = lines[0]; - while (line != NULL) { - if (line[0] != '#') { - int numfields; - gboolean parsed = FALSE; - GHashTable *params = g_hash_table_new_full (g_str_hash, g_str_equal, - g_free, g_free); - - fields = g_strsplit (line, ":", 0); - numfields = g_strv_length (fields); - if (numfields == 8) { - /* satellite */ - int j; - - g_hash_table_insert (params, g_strdup ("type"), - g_strdup ("satellite")); - for (j = 2; j <= 4; j++) { - g_hash_table_insert (params, g_strdup (satellite[j - 2]), - g_strdup (fields[j])); - } - g_hash_table_insert (params, g_strdup ("frequency"), - g_strdup_printf ("%d", atoi (fields[1]) * 1000)); - parsed = TRUE; - } else if (numfields == 13) { - /* terrestrial */ - int j; - - g_hash_table_insert (params, g_strdup ("type"), - g_strdup ("terrestrial")); - for (j = 2; j <= 9; j++) { - g_hash_table_insert (params, g_strdup (terrestrial[j - 2]), - g_strdup (fields[j])); - } - g_hash_table_insert (params, g_strdup ("frequency"), - g_strdup (fields[1])); - parsed = TRUE; - } else if (numfields == 9) { - /* cable */ - int j; - - g_hash_table_insert (params, g_strdup ("type"), g_strdup ("cable")); - for (j = 2; j <= 5; j++) { - g_hash_table_insert (params, g_strdup (cable[j - 2]), - g_strdup (fields[j])); - } - g_hash_table_insert (params, g_strdup ("frequency"), - g_strdup (fields[1])); - parsed = TRUE; - } else if (numfields == 6) { - /* atsc (vsb/qam) */ - g_hash_table_insert (params, g_strdup ("type"), g_strdup ("atsc")); - g_hash_table_insert (params, g_strdup ("modulation"), - g_strdup (fields[2])); - - g_hash_table_insert (params, g_strdup ("frequency"), - g_strdup (fields[1])); - parsed = TRUE; + int i, parsedchannels = 0; + GHashTable *res; + GError *err = NULL; + + if (!g_file_get_contents (filename, &contents, NULL, &err)) + goto open_fail; + + lines = g_strsplit (contents, "\n", 0); + res = g_hash_table_new (g_str_hash, g_str_equal); + + i = 0; + line = lines[0]; + while (line != NULL) { + if (line[0] != '#') { + int numfields; + gboolean parsed = FALSE; + GHashTable *params = g_hash_table_new_full (g_str_hash, g_str_equal, + g_free, g_free); + + fields = g_strsplit (line, ":", 0); + numfields = g_strv_length (fields); + if (numfields == 8) { + /* satellite */ + int j; + + g_hash_table_insert (params, g_strdup ("type"), g_strdup ("satellite")); + for (j = 2; j <= 4; j++) { + g_hash_table_insert (params, g_strdup (satellite[j - 2]), + g_strdup (fields[j])); + } + g_hash_table_insert (params, g_strdup ("frequency"), + g_strdup_printf ("%d", atoi (fields[1]) * 1000)); + parsed = TRUE; + } else if (numfields == 13) { + /* terrestrial */ + int j; + + g_hash_table_insert (params, g_strdup ("type"), + g_strdup ("terrestrial")); + for (j = 2; j <= 9; j++) { + g_hash_table_insert (params, g_strdup (terrestrial[j - 2]), + g_strdup (fields[j])); } - if (parsed) { - g_hash_table_insert (params, g_strdup ("sid"), - g_strdup (fields[numfields - 1])); - g_hash_table_insert (res, g_strdup (fields[0]), params); + g_hash_table_insert (params, g_strdup ("frequency"), + g_strdup (fields[1])); + parsed = TRUE; + } else if (numfields == 9) { + /* cable */ + int j; + + g_hash_table_insert (params, g_strdup ("type"), g_strdup ("cable")); + for (j = 2; j <= 5; j++) { + g_hash_table_insert (params, g_strdup (cable[j - 2]), + g_strdup (fields[j])); } - g_strfreev (fields); + g_hash_table_insert (params, g_strdup ("frequency"), + g_strdup (fields[1])); + parsed = TRUE; + } else if (numfields == 6) { + /* atsc (vsb/qam) */ + g_hash_table_insert (params, g_strdup ("type"), g_strdup ("atsc")); + g_hash_table_insert (params, g_strdup ("modulation"), + g_strdup (fields[2])); + + g_hash_table_insert (params, g_strdup ("frequency"), + g_strdup (fields[1])); + parsed = TRUE; } - line = lines[++i]; + if (parsed) { + g_hash_table_insert (params, g_strdup ("sid"), + g_strdup (fields[numfields - 1])); + g_hash_table_insert (res, g_strdup (fields[0]), params); + parsedchannels++; + } + g_strfreev (fields); } - g_strfreev (lines); - g_free (contents); - } else - GST_WARNING ("Couldn't open file"); + line = lines[++i]; + } + g_strfreev (lines); + g_free (contents); + + if (parsedchannels == 0) + goto no_channels; + return res; + +open_fail: + { + GST_ELEMENT_ERROR (dvbbasebin, RESOURCE, READ, (NULL), + ("Opening channels configuration file failed : %s", filename, + err->message)); + g_clear_error (&err); + return NULL; + } + +no_channels: + { + GST_ELEMENT_ERROR (dvbbasebin, RESOURCE, READ, (NULL), + ("Channels configuration file doesn't contain any channels")); + g_hash_table_unref (res); + return NULL; + } } static gboolean @@ -146,11 +173,13 @@ destroy_channels_hash (GHashTable * channels) } gboolean -set_properties_for_channel (GObject * dvbbasebin, const gchar * channel_name) +set_properties_for_channel (GstElement * dvbbasebin, const gchar * channel_name) { gboolean ret = FALSE; - GHashTable *channels; + GHashTable *channels, *params; gchar *filename; + gchar *type; + const gchar *adapter; filename = g_strdup (g_getenv ("GST_DVB_CHANNELS_CONF")); if (filename == NULL) { @@ -160,230 +189,239 @@ set_properties_for_channel (GObject * dvbbasebin, const gchar * channel_name) filename = g_strdup_printf ("%s/gstreamer-%d.%d/dvb-channels.conf", g_get_user_config_dir (), major, minor); } - channels = parse_channels_conf_from_file (filename); + channels = parse_channels_conf_from_file (dvbbasebin, filename); g_free (filename); - if (channels) { - GHashTable *params = g_hash_table_lookup (channels, - channel_name); - - if (params) { - gchar *type; - const gchar *adapter; - - g_object_set (dvbbasebin, "program-numbers", - g_hash_table_lookup (params, "sid"), NULL); - /* check if it is terrestrial or satellite */ - adapter = g_getenv ("GST_DVB_ADAPTER"); - if (adapter) - g_object_set (dvbbasebin, "adapter", atoi (adapter), NULL); - g_object_set (dvbbasebin, "frequency", - atoi (g_hash_table_lookup (params, "frequency")), NULL); - type = g_hash_table_lookup (params, "type"); - if (strcmp (type, "terrestrial") == 0) { - gchar *val; - - val = g_hash_table_lookup (params, "inversion"); - if (strcmp (val, "INVERSION_OFF") == 0) - g_object_set (dvbbasebin, "inversion", 0, NULL); - else if (strcmp (val, "INVERSION_ON") == 0) - g_object_set (dvbbasebin, "inversion", 1, NULL); - else - g_object_set (dvbbasebin, "inversion", 2, NULL); - - val = g_hash_table_lookup (params, "bandwidth"); - if (strcmp (val, "BANDWIDTH_8_MHZ") == 0) - g_object_set (dvbbasebin, "bandwidth", 0, NULL); - else if (strcmp (val, "BANDWIDTH_7_MHZ") == 0) - g_object_set (dvbbasebin, "bandwidth", 1, NULL); - else if (strcmp (val, "BANDWIDTH_6_MHZ") == 0) - g_object_set (dvbbasebin, "bandwidth", 2, NULL); - else - g_object_set (dvbbasebin, "bandwidth", 3, NULL); - - val = g_hash_table_lookup (params, "code-rate-hp"); - if (strcmp (val, "FEC_NONE") == 0) - g_object_set (dvbbasebin, "code-rate-hp", 0, NULL); - else if (strcmp (val, "FEC_1_2") == 0) - g_object_set (dvbbasebin, "code-rate-hp", 1, NULL); - else if (strcmp (val, "FEC_2_3") == 0) - g_object_set (dvbbasebin, "code-rate-hp", 2, NULL); - else if (strcmp (val, "FEC_3_4") == 0) - g_object_set (dvbbasebin, "code-rate-hp", 3, NULL); - else if (strcmp (val, "FEC_4_5") == 0) - g_object_set (dvbbasebin, "code-rate-hp", 4, NULL); - else if (strcmp (val, "FEC_5_6") == 0) - g_object_set (dvbbasebin, "code-rate-hp", 5, NULL); - else if (strcmp (val, "FEC_6_7") == 0) - g_object_set (dvbbasebin, "code-rate-hp", 6, NULL); - else if (strcmp (val, "FEC_7_8") == 0) - g_object_set (dvbbasebin, "code-rate-hp", 7, NULL); - else if (strcmp (val, "FEC_8_9") == 0) - g_object_set (dvbbasebin, "code-rate-hp", 8, NULL); - else - g_object_set (dvbbasebin, "code-rate-hp", 9, NULL); - - val = g_hash_table_lookup (params, "code-rate-lp"); - if (strcmp (val, "FEC_NONE") == 0) - g_object_set (dvbbasebin, "code-rate-lp", 0, NULL); - else if (strcmp (val, "FEC_1_2") == 0) - g_object_set (dvbbasebin, "code-rate-lp", 1, NULL); - else if (strcmp (val, "FEC_2_3") == 0) - g_object_set (dvbbasebin, "code-rate-lp", 2, NULL); - else if (strcmp (val, "FEC_3_4") == 0) - g_object_set (dvbbasebin, "code-rate-lp", 3, NULL); - else if (strcmp (val, "FEC_4_5") == 0) - g_object_set (dvbbasebin, "code-rate-lp", 4, NULL); - else if (strcmp (val, "FEC_5_6") == 0) - g_object_set (dvbbasebin, "code-rate-lp", 5, NULL); - else if (strcmp (val, "FEC_6_7") == 0) - g_object_set (dvbbasebin, "code-rate-lp", 6, NULL); - else if (strcmp (val, "FEC_7_8") == 0) - g_object_set (dvbbasebin, "code-rate-lp", 7, NULL); - else if (strcmp (val, "FEC_8_9") == 0) - g_object_set (dvbbasebin, "code-rate-lp", 8, NULL); - else - g_object_set (dvbbasebin, "code-rate-lp", 9, NULL); - - val = g_hash_table_lookup (params, "modulation"); - if (strcmp (val, "QPSK") == 0) - g_object_set (dvbbasebin, "modulation", 0, NULL); - else if (strcmp (val, "QAM_16") == 0) - g_object_set (dvbbasebin, "modulation", 1, NULL); - else if (strcmp (val, "QAM_32") == 0) - g_object_set (dvbbasebin, "modulation", 2, NULL); - else if (strcmp (val, "QAM_64") == 0) - g_object_set (dvbbasebin, "modulation", 3, NULL); - else if (strcmp (val, "QAM_128") == 0) - g_object_set (dvbbasebin, "modulation", 4, NULL); - else if (strcmp (val, "QAM_256") == 0) - g_object_set (dvbbasebin, "modulation", 5, NULL); - else - g_object_set (dvbbasebin, "modulation", 6, NULL); - - val = g_hash_table_lookup (params, "transmission-mode"); - if (strcmp (val, "TRANSMISSION_MODE_2K") == 0) - g_object_set (dvbbasebin, "trans-mode", 0, NULL); - else if (strcmp (val, "TRANSMISSION_MODE_8K") == 0) - g_object_set (dvbbasebin, "trans-mode", 1, NULL); - else - g_object_set (dvbbasebin, "trans-mode", 2, NULL); - - val = g_hash_table_lookup (params, "guard"); - if (strcmp (val, "GUARD_INTERVAL_1_32") == 0) - g_object_set (dvbbasebin, "guard", 0, NULL); - else if (strcmp (val, "GUARD_INTERVAL_1_16") == 0) - g_object_set (dvbbasebin, "guard", 1, NULL); - else if (strcmp (val, "GUARD_INTERVAL_1_8") == 0) - g_object_set (dvbbasebin, "guard", 2, NULL); - else if (strcmp (val, "GUARD_INTERVAL_1_4") == 0) - g_object_set (dvbbasebin, "guard", 3, NULL); - else - g_object_set (dvbbasebin, "guard", 4, NULL); - - val = g_hash_table_lookup (params, "hierarchy"); - if (strcmp (val, "HIERARCHY_NONE") == 0) - g_object_set (dvbbasebin, "hierarchy", 0, NULL); - else if (strcmp (val, "HIERARCHY_1") == 0) - g_object_set (dvbbasebin, "hierarchy", 1, NULL); - else if (strcmp (val, "HIERARCHY_2") == 0) - g_object_set (dvbbasebin, "hierarchy", 2, NULL); - else if (strcmp (val, "HIERARCHY_4") == 0) - g_object_set (dvbbasebin, "hierarchy", 3, NULL); - else - g_object_set (dvbbasebin, "hierarchy", 4, NULL); - - ret = TRUE; - } else if (strcmp (type, "satellite") == 0) { - gchar *val; - - ret = TRUE; - - val = g_hash_table_lookup (params, "polarity"); - if (val) - g_object_set (dvbbasebin, "polarity", val, NULL); - else - ret = FALSE; - - val = g_hash_table_lookup (params, "diseqc-source"); - if (val) - g_object_set (dvbbasebin, "diseqc-source", atoi (val), NULL); - - val = g_hash_table_lookup (params, "symbol-rate"); - if (val) - g_object_set (dvbbasebin, "symbol-rate", atoi (val), NULL); - else - ret = FALSE; - } else if (strcmp (type, "cable") == 0) { - gchar *val; - - ret = TRUE; - val = g_hash_table_lookup (params, "symbol-rate"); - if (val) - g_object_set (dvbbasebin, "symbol-rate", atoi (val) / 1000, NULL); - val = g_hash_table_lookup (params, "modulation"); - if (strcmp (val, "QPSK") == 0) - g_object_set (dvbbasebin, "modulation", 0, NULL); - else if (strcmp (val, "QAM_16") == 0) - g_object_set (dvbbasebin, "modulation", 1, NULL); - else if (strcmp (val, "QAM_32") == 0) - g_object_set (dvbbasebin, "modulation", 2, NULL); - else if (strcmp (val, "QAM_64") == 0) - g_object_set (dvbbasebin, "modulation", 3, NULL); - else if (strcmp (val, "QAM_128") == 0) - g_object_set (dvbbasebin, "modulation", 4, NULL); - else if (strcmp (val, "QAM_256") == 0) - g_object_set (dvbbasebin, "modulation", 5, NULL); - else - g_object_set (dvbbasebin, "modulation", 6, NULL); - val = g_hash_table_lookup (params, "code-rate-hp"); - if (strcmp (val, "FEC_NONE") == 0) - g_object_set (dvbbasebin, "code-rate-hp", 0, NULL); - else if (strcmp (val, "FEC_1_2") == 0) - g_object_set (dvbbasebin, "code-rate-hp", 1, NULL); - else if (strcmp (val, "FEC_2_3") == 0) - g_object_set (dvbbasebin, "code-rate-hp", 2, NULL); - else if (strcmp (val, "FEC_3_4") == 0) - g_object_set (dvbbasebin, "code-rate-hp", 3, NULL); - else if (strcmp (val, "FEC_4_5") == 0) - g_object_set (dvbbasebin, "code-rate-hp", 4, NULL); - else if (strcmp (val, "FEC_5_6") == 0) - g_object_set (dvbbasebin, "code-rate-hp", 5, NULL); - else if (strcmp (val, "FEC_6_7") == 0) - g_object_set (dvbbasebin, "code-rate-hp", 6, NULL); - else if (strcmp (val, "FEC_7_8") == 0) - g_object_set (dvbbasebin, "code-rate-hp", 7, NULL); - else if (strcmp (val, "FEC_8_9") == 0) - g_object_set (dvbbasebin, "code-rate-hp", 8, NULL); - else - g_object_set (dvbbasebin, "code-rate-hp", 9, NULL); - val = g_hash_table_lookup (params, "inversion"); - if (strcmp (val, "INVERSION_OFF") == 0) - g_object_set (dvbbasebin, "inversion", 0, NULL); - else if (strcmp (val, "INVERSION_ON") == 0) - g_object_set (dvbbasebin, "inversion", 1, NULL); - else - g_object_set (dvbbasebin, "inversion", 2, NULL); - } else if (strcmp (type, "atsc") == 0) { - gchar *val; - - ret = TRUE; - - val = g_hash_table_lookup (params, "modulation"); - if (strcmp (val, "QAM_64") == 0) - g_object_set (dvbbasebin, "modulation", 3, NULL); - else if (strcmp (val, "QAM_256") == 0) - g_object_set (dvbbasebin, "modulation", 5, NULL); - else if (strcmp (val, "8VSB") == 0) - g_object_set (dvbbasebin, "modulation", 7, NULL); - else if (strcmp (val, "16VSB") == 0) - g_object_set (dvbbasebin, "modulation", 8, NULL); - else - ret = FALSE; - } - } - destroy_channels_hash (channels); + if (!channels) + goto beach; + + params = g_hash_table_lookup (channels, channel_name); + + if (!params) + goto unknown_channel; + + g_object_set (dvbbasebin, "program-numbers", + g_hash_table_lookup (params, "sid"), NULL); + /* check if it is terrestrial or satellite */ + adapter = g_getenv ("GST_DVB_ADAPTER"); + if (adapter) + g_object_set (dvbbasebin, "adapter", atoi (adapter), NULL); + g_object_set (dvbbasebin, "frequency", + atoi (g_hash_table_lookup (params, "frequency")), NULL); + type = g_hash_table_lookup (params, "type"); + if (strcmp (type, "terrestrial") == 0) { + gchar *val; + + val = g_hash_table_lookup (params, "inversion"); + if (strcmp (val, "INVERSION_OFF") == 0) + g_object_set (dvbbasebin, "inversion", 0, NULL); + else if (strcmp (val, "INVERSION_ON") == 0) + g_object_set (dvbbasebin, "inversion", 1, NULL); + else + g_object_set (dvbbasebin, "inversion", 2, NULL); + + val = g_hash_table_lookup (params, "bandwidth"); + if (strcmp (val, "BANDWIDTH_8_MHZ") == 0) + g_object_set (dvbbasebin, "bandwidth", 0, NULL); + else if (strcmp (val, "BANDWIDTH_7_MHZ") == 0) + g_object_set (dvbbasebin, "bandwidth", 1, NULL); + else if (strcmp (val, "BANDWIDTH_6_MHZ") == 0) + g_object_set (dvbbasebin, "bandwidth", 2, NULL); + else + g_object_set (dvbbasebin, "bandwidth", 3, NULL); + + val = g_hash_table_lookup (params, "code-rate-hp"); + if (strcmp (val, "FEC_NONE") == 0) + g_object_set (dvbbasebin, "code-rate-hp", 0, NULL); + else if (strcmp (val, "FEC_1_2") == 0) + g_object_set (dvbbasebin, "code-rate-hp", 1, NULL); + else if (strcmp (val, "FEC_2_3") == 0) + g_object_set (dvbbasebin, "code-rate-hp", 2, NULL); + else if (strcmp (val, "FEC_3_4") == 0) + g_object_set (dvbbasebin, "code-rate-hp", 3, NULL); + else if (strcmp (val, "FEC_4_5") == 0) + g_object_set (dvbbasebin, "code-rate-hp", 4, NULL); + else if (strcmp (val, "FEC_5_6") == 0) + g_object_set (dvbbasebin, "code-rate-hp", 5, NULL); + else if (strcmp (val, "FEC_6_7") == 0) + g_object_set (dvbbasebin, "code-rate-hp", 6, NULL); + else if (strcmp (val, "FEC_7_8") == 0) + g_object_set (dvbbasebin, "code-rate-hp", 7, NULL); + else if (strcmp (val, "FEC_8_9") == 0) + g_object_set (dvbbasebin, "code-rate-hp", 8, NULL); + else + g_object_set (dvbbasebin, "code-rate-hp", 9, NULL); + + val = g_hash_table_lookup (params, "code-rate-lp"); + if (strcmp (val, "FEC_NONE") == 0) + g_object_set (dvbbasebin, "code-rate-lp", 0, NULL); + else if (strcmp (val, "FEC_1_2") == 0) + g_object_set (dvbbasebin, "code-rate-lp", 1, NULL); + else if (strcmp (val, "FEC_2_3") == 0) + g_object_set (dvbbasebin, "code-rate-lp", 2, NULL); + else if (strcmp (val, "FEC_3_4") == 0) + g_object_set (dvbbasebin, "code-rate-lp", 3, NULL); + else if (strcmp (val, "FEC_4_5") == 0) + g_object_set (dvbbasebin, "code-rate-lp", 4, NULL); + else if (strcmp (val, "FEC_5_6") == 0) + g_object_set (dvbbasebin, "code-rate-lp", 5, NULL); + else if (strcmp (val, "FEC_6_7") == 0) + g_object_set (dvbbasebin, "code-rate-lp", 6, NULL); + else if (strcmp (val, "FEC_7_8") == 0) + g_object_set (dvbbasebin, "code-rate-lp", 7, NULL); + else if (strcmp (val, "FEC_8_9") == 0) + g_object_set (dvbbasebin, "code-rate-lp", 8, NULL); + else + g_object_set (dvbbasebin, "code-rate-lp", 9, NULL); + + val = g_hash_table_lookup (params, "modulation"); + if (strcmp (val, "QPSK") == 0) + g_object_set (dvbbasebin, "modulation", 0, NULL); + else if (strcmp (val, "QAM_16") == 0) + g_object_set (dvbbasebin, "modulation", 1, NULL); + else if (strcmp (val, "QAM_32") == 0) + g_object_set (dvbbasebin, "modulation", 2, NULL); + else if (strcmp (val, "QAM_64") == 0) + g_object_set (dvbbasebin, "modulation", 3, NULL); + else if (strcmp (val, "QAM_128") == 0) + g_object_set (dvbbasebin, "modulation", 4, NULL); + else if (strcmp (val, "QAM_256") == 0) + g_object_set (dvbbasebin, "modulation", 5, NULL); + else + g_object_set (dvbbasebin, "modulation", 6, NULL); + + val = g_hash_table_lookup (params, "transmission-mode"); + if (strcmp (val, "TRANSMISSION_MODE_2K") == 0) + g_object_set (dvbbasebin, "trans-mode", 0, NULL); + else if (strcmp (val, "TRANSMISSION_MODE_8K") == 0) + g_object_set (dvbbasebin, "trans-mode", 1, NULL); + else + g_object_set (dvbbasebin, "trans-mode", 2, NULL); + + val = g_hash_table_lookup (params, "guard"); + if (strcmp (val, "GUARD_INTERVAL_1_32") == 0) + g_object_set (dvbbasebin, "guard", 0, NULL); + else if (strcmp (val, "GUARD_INTERVAL_1_16") == 0) + g_object_set (dvbbasebin, "guard", 1, NULL); + else if (strcmp (val, "GUARD_INTERVAL_1_8") == 0) + g_object_set (dvbbasebin, "guard", 2, NULL); + else if (strcmp (val, "GUARD_INTERVAL_1_4") == 0) + g_object_set (dvbbasebin, "guard", 3, NULL); + else + g_object_set (dvbbasebin, "guard", 4, NULL); + + val = g_hash_table_lookup (params, "hierarchy"); + if (strcmp (val, "HIERARCHY_NONE") == 0) + g_object_set (dvbbasebin, "hierarchy", 0, NULL); + else if (strcmp (val, "HIERARCHY_1") == 0) + g_object_set (dvbbasebin, "hierarchy", 1, NULL); + else if (strcmp (val, "HIERARCHY_2") == 0) + g_object_set (dvbbasebin, "hierarchy", 2, NULL); + else if (strcmp (val, "HIERARCHY_4") == 0) + g_object_set (dvbbasebin, "hierarchy", 3, NULL); + else + g_object_set (dvbbasebin, "hierarchy", 4, NULL); + + ret = TRUE; + } else if (strcmp (type, "satellite") == 0) { + gchar *val; + + ret = TRUE; + + val = g_hash_table_lookup (params, "polarity"); + if (val) + g_object_set (dvbbasebin, "polarity", val, NULL); + else + ret = FALSE; + + val = g_hash_table_lookup (params, "diseqc-source"); + if (val) + g_object_set (dvbbasebin, "diseqc-source", atoi (val), NULL); + + val = g_hash_table_lookup (params, "symbol-rate"); + if (val) + g_object_set (dvbbasebin, "symbol-rate", atoi (val), NULL); + else + ret = FALSE; + } else if (strcmp (type, "cable") == 0) { + gchar *val; + + ret = TRUE; + val = g_hash_table_lookup (params, "symbol-rate"); + if (val) + g_object_set (dvbbasebin, "symbol-rate", atoi (val) / 1000, NULL); + val = g_hash_table_lookup (params, "modulation"); + if (strcmp (val, "QPSK") == 0) + g_object_set (dvbbasebin, "modulation", 0, NULL); + else if (strcmp (val, "QAM_16") == 0) + g_object_set (dvbbasebin, "modulation", 1, NULL); + else if (strcmp (val, "QAM_32") == 0) + g_object_set (dvbbasebin, "modulation", 2, NULL); + else if (strcmp (val, "QAM_64") == 0) + g_object_set (dvbbasebin, "modulation", 3, NULL); + else if (strcmp (val, "QAM_128") == 0) + g_object_set (dvbbasebin, "modulation", 4, NULL); + else if (strcmp (val, "QAM_256") == 0) + g_object_set (dvbbasebin, "modulation", 5, NULL); + else + g_object_set (dvbbasebin, "modulation", 6, NULL); + val = g_hash_table_lookup (params, "code-rate-hp"); + if (strcmp (val, "FEC_NONE") == 0) + g_object_set (dvbbasebin, "code-rate-hp", 0, NULL); + else if (strcmp (val, "FEC_1_2") == 0) + g_object_set (dvbbasebin, "code-rate-hp", 1, NULL); + else if (strcmp (val, "FEC_2_3") == 0) + g_object_set (dvbbasebin, "code-rate-hp", 2, NULL); + else if (strcmp (val, "FEC_3_4") == 0) + g_object_set (dvbbasebin, "code-rate-hp", 3, NULL); + else if (strcmp (val, "FEC_4_5") == 0) + g_object_set (dvbbasebin, "code-rate-hp", 4, NULL); + else if (strcmp (val, "FEC_5_6") == 0) + g_object_set (dvbbasebin, "code-rate-hp", 5, NULL); + else if (strcmp (val, "FEC_6_7") == 0) + g_object_set (dvbbasebin, "code-rate-hp", 6, NULL); + else if (strcmp (val, "FEC_7_8") == 0) + g_object_set (dvbbasebin, "code-rate-hp", 7, NULL); + else if (strcmp (val, "FEC_8_9") == 0) + g_object_set (dvbbasebin, "code-rate-hp", 8, NULL); + else + g_object_set (dvbbasebin, "code-rate-hp", 9, NULL); + val = g_hash_table_lookup (params, "inversion"); + if (strcmp (val, "INVERSION_OFF") == 0) + g_object_set (dvbbasebin, "inversion", 0, NULL); + else if (strcmp (val, "INVERSION_ON") == 0) + g_object_set (dvbbasebin, "inversion", 1, NULL); + else + g_object_set (dvbbasebin, "inversion", 2, NULL); + } else if (strcmp (type, "atsc") == 0) { + gchar *val; + + ret = TRUE; + + val = g_hash_table_lookup (params, "modulation"); + if (strcmp (val, "QAM_64") == 0) + g_object_set (dvbbasebin, "modulation", 3, NULL); + else if (strcmp (val, "QAM_256") == 0) + g_object_set (dvbbasebin, "modulation", 5, NULL); + else if (strcmp (val, "8VSB") == 0) + g_object_set (dvbbasebin, "modulation", 7, NULL); + else if (strcmp (val, "16VSB") == 0) + g_object_set (dvbbasebin, "modulation", 8, NULL); + else + ret = FALSE; } + destroy_channels_hash (channels); + +beach: return ret; + +unknown_channel: + { + GST_ELEMENT_ERROR (dvbbasebin, RESOURCE, READ, (NULL), + ("Couldn't find configuration properties for channel \"%s\"", + channel_name)); + destroy_channels_hash (channels); + return FALSE; + } } diff --git a/sys/dvb/parsechannels.h b/sys/dvb/parsechannels.h index 727419b1..8dd17fde 100644 --- a/sys/dvb/parsechannels.h +++ b/sys/dvb/parsechannels.h @@ -24,8 +24,7 @@ #ifndef PARSE_CHANNELS_H #define PARSE_CHANNELS_H -GHashTable* parse_channels_conf_from_file(const gchar* filename); -gboolean set_properties_for_channel(GObject *dvbbasebin, +gboolean set_properties_for_channel(GstElement *dvbbasebin, const gchar* channel_name); #endif diff --git a/sys/fbdev/Makefile.in b/sys/fbdev/Makefile.in index f4d46d99..10fd542e 100644 --- a/sys/fbdev/Makefile.in +++ b/sys/fbdev/Makefile.in @@ -1,4 +1,4 @@ -# Makefile.in generated by automake 1.11.5 from Makefile.am. +# Makefile.in generated by automake 1.11.6 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, @@ -237,11 +237,10 @@ DIRECT3D_LIBS = @DIRECT3D_LIBS@ DIRECTDRAW_LIBS = @DIRECTDRAW_LIBS@ DIRECTFB_CFLAGS = @DIRECTFB_CFLAGS@ DIRECTFB_LIBS = @DIRECTFB_LIBS@ +DIRECTSHOW_LIBS = @DIRECTSHOW_LIBS@ DIRECTSOUND_LIBS = @DIRECTSOUND_LIBS@ DIRECTX_CFLAGS = @DIRECTX_CFLAGS@ DIRECTX_LDFLAGS = @DIRECTX_LDFLAGS@ -DIVXDEC_LIBS = @DIVXDEC_LIBS@ -DIVXENC_LIBS = @DIVXENC_LIBS@ DLLTOOL = @DLLTOOL@ DSYMUTIL = @DSYMUTIL@ DTS_LIBS = @DTS_LIBS@ @@ -276,7 +275,9 @@ GIO_LIBS = @GIO_LIBS@ GLIB_CFLAGS = @GLIB_CFLAGS@ GLIB_COMPILE_SCHEMAS = @GLIB_COMPILE_SCHEMAS@ GLIB_EXTRA_CFLAGS = @GLIB_EXTRA_CFLAGS@ +GLIB_GENMARSHAL = @GLIB_GENMARSHAL@ GLIB_LIBS = @GLIB_LIBS@ +GLIB_MKENUMS = @GLIB_MKENUMS@ GLIB_PREFIX = @GLIB_PREFIX@ GLIB_REQ = @GLIB_REQ@ GME_LIBS = @GME_LIBS@ @@ -352,13 +353,14 @@ HAVE_CXX = @HAVE_CXX@ HAVE_DIRECT3D = @HAVE_DIRECT3D@ HAVE_DIRECT3D9 = @HAVE_DIRECT3D9@ HAVE_DIRECTDRAW = @HAVE_DIRECTDRAW@ +HAVE_DIRECTSHOW = @HAVE_DIRECTSHOW@ HAVE_DIRECTSOUND = @HAVE_DIRECTSOUND@ HAVE_DTS = @HAVE_DTS@ HAVE_FAAC = @HAVE_FAAC@ HAVE_FAAD = @HAVE_FAAD@ HAVE_FLITE = @HAVE_FLITE@ HAVE_GSM = @HAVE_GSM@ -HAVE_JP2K = @HAVE_JP2K@ +HAVE_JASPER = @HAVE_JASPER@ HAVE_NAS = @HAVE_NAS@ HAVE_VPX = @HAVE_VPX@ HAVE_WILDMIDI = @HAVE_WILDMIDI@ @@ -372,7 +374,7 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ INTLLIBS = @INTLLIBS@ INTL_MACOSX_LIBS = @INTL_MACOSX_LIBS@ -JP2K_LIBS = @JP2K_LIBS@ +JASPER_LIBS = @JASPER_LIBS@ KATE_CFLAGS = @KATE_CFLAGS@ KATE_LIBS = @KATE_LIBS@ LD = @LD@ @@ -408,6 +410,8 @@ MODPLUG_CFLAGS = @MODPLUG_CFLAGS@ MODPLUG_LIBS = @MODPLUG_LIBS@ MPEG2ENC_CFLAGS = @MPEG2ENC_CFLAGS@ MPEG2ENC_LIBS = @MPEG2ENC_LIBS@ +MPG123_CFLAGS = @MPG123_CFLAGS@ +MPG123_LIBS = @MPG123_LIBS@ MPLEX_CFLAGS = @MPLEX_CFLAGS@ MPLEX_LDFLAGS = @MPLEX_LDFLAGS@ MPLEX_LIBS = @MPLEX_LIBS@ diff --git a/sys/linsys/Makefile.in b/sys/linsys/Makefile.in index ef31064f..dab647b9 100644 --- a/sys/linsys/Makefile.in +++ b/sys/linsys/Makefile.in @@ -1,4 +1,4 @@ -# Makefile.in generated by automake 1.11.5 from Makefile.am. +# Makefile.in generated by automake 1.11.6 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, @@ -239,11 +239,10 @@ DIRECT3D_LIBS = @DIRECT3D_LIBS@ DIRECTDRAW_LIBS = @DIRECTDRAW_LIBS@ DIRECTFB_CFLAGS = @DIRECTFB_CFLAGS@ DIRECTFB_LIBS = @DIRECTFB_LIBS@ +DIRECTSHOW_LIBS = @DIRECTSHOW_LIBS@ DIRECTSOUND_LIBS = @DIRECTSOUND_LIBS@ DIRECTX_CFLAGS = @DIRECTX_CFLAGS@ DIRECTX_LDFLAGS = @DIRECTX_LDFLAGS@ -DIVXDEC_LIBS = @DIVXDEC_LIBS@ -DIVXENC_LIBS = @DIVXENC_LIBS@ DLLTOOL = @DLLTOOL@ DSYMUTIL = @DSYMUTIL@ DTS_LIBS = @DTS_LIBS@ @@ -278,7 +277,9 @@ GIO_LIBS = @GIO_LIBS@ GLIB_CFLAGS = @GLIB_CFLAGS@ GLIB_COMPILE_SCHEMAS = @GLIB_COMPILE_SCHEMAS@ GLIB_EXTRA_CFLAGS = @GLIB_EXTRA_CFLAGS@ +GLIB_GENMARSHAL = @GLIB_GENMARSHAL@ GLIB_LIBS = @GLIB_LIBS@ +GLIB_MKENUMS = @GLIB_MKENUMS@ GLIB_PREFIX = @GLIB_PREFIX@ GLIB_REQ = @GLIB_REQ@ GME_LIBS = @GME_LIBS@ @@ -354,13 +355,14 @@ HAVE_CXX = @HAVE_CXX@ HAVE_DIRECT3D = @HAVE_DIRECT3D@ HAVE_DIRECT3D9 = @HAVE_DIRECT3D9@ HAVE_DIRECTDRAW = @HAVE_DIRECTDRAW@ +HAVE_DIRECTSHOW = @HAVE_DIRECTSHOW@ HAVE_DIRECTSOUND = @HAVE_DIRECTSOUND@ HAVE_DTS = @HAVE_DTS@ HAVE_FAAC = @HAVE_FAAC@ HAVE_FAAD = @HAVE_FAAD@ HAVE_FLITE = @HAVE_FLITE@ HAVE_GSM = @HAVE_GSM@ -HAVE_JP2K = @HAVE_JP2K@ +HAVE_JASPER = @HAVE_JASPER@ HAVE_NAS = @HAVE_NAS@ HAVE_VPX = @HAVE_VPX@ HAVE_WILDMIDI = @HAVE_WILDMIDI@ @@ -374,7 +376,7 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ INTLLIBS = @INTLLIBS@ INTL_MACOSX_LIBS = @INTL_MACOSX_LIBS@ -JP2K_LIBS = @JP2K_LIBS@ +JASPER_LIBS = @JASPER_LIBS@ KATE_CFLAGS = @KATE_CFLAGS@ KATE_LIBS = @KATE_LIBS@ LD = @LD@ @@ -410,6 +412,8 @@ MODPLUG_CFLAGS = @MODPLUG_CFLAGS@ MODPLUG_LIBS = @MODPLUG_LIBS@ MPEG2ENC_CFLAGS = @MPEG2ENC_CFLAGS@ MPEG2ENC_LIBS = @MPEG2ENC_LIBS@ +MPG123_CFLAGS = @MPG123_CFLAGS@ +MPG123_LIBS = @MPG123_LIBS@ MPLEX_CFLAGS = @MPLEX_CFLAGS@ MPLEX_LDFLAGS = @MPLEX_LDFLAGS@ MPLEX_LIBS = @MPLEX_LIBS@ diff --git a/sys/osxvideo/Makefile.in b/sys/osxvideo/Makefile.in index 1ca599f6..4e91c69d 100644 --- a/sys/osxvideo/Makefile.in +++ b/sys/osxvideo/Makefile.in @@ -1,4 +1,4 @@ -# Makefile.in generated by automake 1.11.5 from Makefile.am. +# Makefile.in generated by automake 1.11.6 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, @@ -239,11 +239,10 @@ DIRECT3D_LIBS = @DIRECT3D_LIBS@ DIRECTDRAW_LIBS = @DIRECTDRAW_LIBS@ DIRECTFB_CFLAGS = @DIRECTFB_CFLAGS@ DIRECTFB_LIBS = @DIRECTFB_LIBS@ +DIRECTSHOW_LIBS = @DIRECTSHOW_LIBS@ DIRECTSOUND_LIBS = @DIRECTSOUND_LIBS@ DIRECTX_CFLAGS = @DIRECTX_CFLAGS@ DIRECTX_LDFLAGS = @DIRECTX_LDFLAGS@ -DIVXDEC_LIBS = @DIVXDEC_LIBS@ -DIVXENC_LIBS = @DIVXENC_LIBS@ DLLTOOL = @DLLTOOL@ DSYMUTIL = @DSYMUTIL@ DTS_LIBS = @DTS_LIBS@ @@ -278,7 +277,9 @@ GIO_LIBS = @GIO_LIBS@ GLIB_CFLAGS = @GLIB_CFLAGS@ GLIB_COMPILE_SCHEMAS = @GLIB_COMPILE_SCHEMAS@ GLIB_EXTRA_CFLAGS = @GLIB_EXTRA_CFLAGS@ +GLIB_GENMARSHAL = @GLIB_GENMARSHAL@ GLIB_LIBS = @GLIB_LIBS@ +GLIB_MKENUMS = @GLIB_MKENUMS@ GLIB_PREFIX = @GLIB_PREFIX@ GLIB_REQ = @GLIB_REQ@ GME_LIBS = @GME_LIBS@ @@ -354,13 +355,14 @@ HAVE_CXX = @HAVE_CXX@ HAVE_DIRECT3D = @HAVE_DIRECT3D@ HAVE_DIRECT3D9 = @HAVE_DIRECT3D9@ HAVE_DIRECTDRAW = @HAVE_DIRECTDRAW@ +HAVE_DIRECTSHOW = @HAVE_DIRECTSHOW@ HAVE_DIRECTSOUND = @HAVE_DIRECTSOUND@ HAVE_DTS = @HAVE_DTS@ HAVE_FAAC = @HAVE_FAAC@ HAVE_FAAD = @HAVE_FAAD@ HAVE_FLITE = @HAVE_FLITE@ HAVE_GSM = @HAVE_GSM@ -HAVE_JP2K = @HAVE_JP2K@ +HAVE_JASPER = @HAVE_JASPER@ HAVE_NAS = @HAVE_NAS@ HAVE_VPX = @HAVE_VPX@ HAVE_WILDMIDI = @HAVE_WILDMIDI@ @@ -374,7 +376,7 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ INTLLIBS = @INTLLIBS@ INTL_MACOSX_LIBS = @INTL_MACOSX_LIBS@ -JP2K_LIBS = @JP2K_LIBS@ +JASPER_LIBS = @JASPER_LIBS@ KATE_CFLAGS = @KATE_CFLAGS@ KATE_LIBS = @KATE_LIBS@ LD = @LD@ @@ -410,6 +412,8 @@ MODPLUG_CFLAGS = @MODPLUG_CFLAGS@ MODPLUG_LIBS = @MODPLUG_LIBS@ MPEG2ENC_CFLAGS = @MPEG2ENC_CFLAGS@ MPEG2ENC_LIBS = @MPEG2ENC_LIBS@ +MPG123_CFLAGS = @MPG123_CFLAGS@ +MPG123_LIBS = @MPG123_LIBS@ MPLEX_CFLAGS = @MPLEX_CFLAGS@ MPLEX_LDFLAGS = @MPLEX_LDFLAGS@ MPLEX_LIBS = @MPLEX_LIBS@ diff --git a/sys/pvr2d/Makefile.in b/sys/pvr2d/Makefile.in index 73951421..41195b46 100644 --- a/sys/pvr2d/Makefile.in +++ b/sys/pvr2d/Makefile.in @@ -1,4 +1,4 @@ -# Makefile.in generated by automake 1.11.5 from Makefile.am. +# Makefile.in generated by automake 1.11.6 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, @@ -241,11 +241,10 @@ DIRECT3D_LIBS = @DIRECT3D_LIBS@ DIRECTDRAW_LIBS = @DIRECTDRAW_LIBS@ DIRECTFB_CFLAGS = @DIRECTFB_CFLAGS@ DIRECTFB_LIBS = @DIRECTFB_LIBS@ +DIRECTSHOW_LIBS = @DIRECTSHOW_LIBS@ DIRECTSOUND_LIBS = @DIRECTSOUND_LIBS@ DIRECTX_CFLAGS = @DIRECTX_CFLAGS@ DIRECTX_LDFLAGS = @DIRECTX_LDFLAGS@ -DIVXDEC_LIBS = @DIVXDEC_LIBS@ -DIVXENC_LIBS = @DIVXENC_LIBS@ DLLTOOL = @DLLTOOL@ DSYMUTIL = @DSYMUTIL@ DTS_LIBS = @DTS_LIBS@ @@ -280,7 +279,9 @@ GIO_LIBS = @GIO_LIBS@ GLIB_CFLAGS = @GLIB_CFLAGS@ GLIB_COMPILE_SCHEMAS = @GLIB_COMPILE_SCHEMAS@ GLIB_EXTRA_CFLAGS = @GLIB_EXTRA_CFLAGS@ +GLIB_GENMARSHAL = @GLIB_GENMARSHAL@ GLIB_LIBS = @GLIB_LIBS@ +GLIB_MKENUMS = @GLIB_MKENUMS@ GLIB_PREFIX = @GLIB_PREFIX@ GLIB_REQ = @GLIB_REQ@ GME_LIBS = @GME_LIBS@ @@ -356,13 +357,14 @@ HAVE_CXX = @HAVE_CXX@ HAVE_DIRECT3D = @HAVE_DIRECT3D@ HAVE_DIRECT3D9 = @HAVE_DIRECT3D9@ HAVE_DIRECTDRAW = @HAVE_DIRECTDRAW@ +HAVE_DIRECTSHOW = @HAVE_DIRECTSHOW@ HAVE_DIRECTSOUND = @HAVE_DIRECTSOUND@ HAVE_DTS = @HAVE_DTS@ HAVE_FAAC = @HAVE_FAAC@ HAVE_FAAD = @HAVE_FAAD@ HAVE_FLITE = @HAVE_FLITE@ HAVE_GSM = @HAVE_GSM@ -HAVE_JP2K = @HAVE_JP2K@ +HAVE_JASPER = @HAVE_JASPER@ HAVE_NAS = @HAVE_NAS@ HAVE_VPX = @HAVE_VPX@ HAVE_WILDMIDI = @HAVE_WILDMIDI@ @@ -376,7 +378,7 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ INTLLIBS = @INTLLIBS@ INTL_MACOSX_LIBS = @INTL_MACOSX_LIBS@ -JP2K_LIBS = @JP2K_LIBS@ +JASPER_LIBS = @JASPER_LIBS@ KATE_CFLAGS = @KATE_CFLAGS@ KATE_LIBS = @KATE_LIBS@ LD = @LD@ @@ -412,6 +414,8 @@ MODPLUG_CFLAGS = @MODPLUG_CFLAGS@ MODPLUG_LIBS = @MODPLUG_LIBS@ MPEG2ENC_CFLAGS = @MPEG2ENC_CFLAGS@ MPEG2ENC_LIBS = @MPEG2ENC_LIBS@ +MPG123_CFLAGS = @MPG123_CFLAGS@ +MPG123_LIBS = @MPG123_LIBS@ MPLEX_CFLAGS = @MPLEX_CFLAGS@ MPLEX_LDFLAGS = @MPLEX_LDFLAGS@ MPLEX_LIBS = @MPLEX_LIBS@ diff --git a/sys/pvr2d/gstpvrvideosink.c b/sys/pvr2d/gstpvrvideosink.c index 19cbad65..1b596018 100644 --- a/sys/pvr2d/gstpvrvideosink.c +++ b/sys/pvr2d/gstpvrvideosink.c @@ -1024,7 +1024,7 @@ gst_pvrvideosink_propose_allocation (GstBaseSink * bsink, GstQuery * query) gst_query_set_allocation_params (query, size, 3, 0, 0, 0, pool); /* we also support various metadata */ - gst_query_add_allocation_meta (query, GST_VIDEO_CROP_META_API); + gst_query_add_allocation_meta (query, GST_VIDEO_CROP_META_API, NULL); gst_object_unref (pool); @@ -1457,7 +1457,7 @@ gst_pvrvideosink_class_init (GstPVRVideoSinkClass * klass) g_object_class_install_property (gobject_class, PROP_FORCE_ASPECT_RATIO, g_param_spec_boolean ("force-aspect-ratio", "Force aspect ratio", "When enabled, reverse caps negotiation (scaling) will respect " - "original aspect ratio", FALSE, + "original aspect ratio", TRUE, G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS)); gst_element_class_set_details_simple (gstelement_class, diff --git a/sys/qtwrapper/Makefile.in b/sys/qtwrapper/Makefile.in index 363dfccd..cdbfef8e 100644 --- a/sys/qtwrapper/Makefile.in +++ b/sys/qtwrapper/Makefile.in @@ -1,4 +1,4 @@ -# Makefile.in generated by automake 1.11.5 from Makefile.am. +# Makefile.in generated by automake 1.11.6 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, @@ -242,11 +242,10 @@ DIRECT3D_LIBS = @DIRECT3D_LIBS@ DIRECTDRAW_LIBS = @DIRECTDRAW_LIBS@ DIRECTFB_CFLAGS = @DIRECTFB_CFLAGS@ DIRECTFB_LIBS = @DIRECTFB_LIBS@ +DIRECTSHOW_LIBS = @DIRECTSHOW_LIBS@ DIRECTSOUND_LIBS = @DIRECTSOUND_LIBS@ DIRECTX_CFLAGS = @DIRECTX_CFLAGS@ DIRECTX_LDFLAGS = @DIRECTX_LDFLAGS@ -DIVXDEC_LIBS = @DIVXDEC_LIBS@ -DIVXENC_LIBS = @DIVXENC_LIBS@ DLLTOOL = @DLLTOOL@ DSYMUTIL = @DSYMUTIL@ DTS_LIBS = @DTS_LIBS@ @@ -281,7 +280,9 @@ GIO_LIBS = @GIO_LIBS@ GLIB_CFLAGS = @GLIB_CFLAGS@ GLIB_COMPILE_SCHEMAS = @GLIB_COMPILE_SCHEMAS@ GLIB_EXTRA_CFLAGS = @GLIB_EXTRA_CFLAGS@ +GLIB_GENMARSHAL = @GLIB_GENMARSHAL@ GLIB_LIBS = @GLIB_LIBS@ +GLIB_MKENUMS = @GLIB_MKENUMS@ GLIB_PREFIX = @GLIB_PREFIX@ GLIB_REQ = @GLIB_REQ@ GME_LIBS = @GME_LIBS@ @@ -357,13 +358,14 @@ HAVE_CXX = @HAVE_CXX@ HAVE_DIRECT3D = @HAVE_DIRECT3D@ HAVE_DIRECT3D9 = @HAVE_DIRECT3D9@ HAVE_DIRECTDRAW = @HAVE_DIRECTDRAW@ +HAVE_DIRECTSHOW = @HAVE_DIRECTSHOW@ HAVE_DIRECTSOUND = @HAVE_DIRECTSOUND@ HAVE_DTS = @HAVE_DTS@ HAVE_FAAC = @HAVE_FAAC@ HAVE_FAAD = @HAVE_FAAD@ HAVE_FLITE = @HAVE_FLITE@ HAVE_GSM = @HAVE_GSM@ -HAVE_JP2K = @HAVE_JP2K@ +HAVE_JASPER = @HAVE_JASPER@ HAVE_NAS = @HAVE_NAS@ HAVE_VPX = @HAVE_VPX@ HAVE_WILDMIDI = @HAVE_WILDMIDI@ @@ -377,7 +379,7 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ INTLLIBS = @INTLLIBS@ INTL_MACOSX_LIBS = @INTL_MACOSX_LIBS@ -JP2K_LIBS = @JP2K_LIBS@ +JASPER_LIBS = @JASPER_LIBS@ KATE_CFLAGS = @KATE_CFLAGS@ KATE_LIBS = @KATE_LIBS@ LD = @LD@ @@ -413,6 +415,8 @@ MODPLUG_CFLAGS = @MODPLUG_CFLAGS@ MODPLUG_LIBS = @MODPLUG_LIBS@ MPEG2ENC_CFLAGS = @MPEG2ENC_CFLAGS@ MPEG2ENC_LIBS = @MPEG2ENC_LIBS@ +MPG123_CFLAGS = @MPG123_CFLAGS@ +MPG123_LIBS = @MPG123_LIBS@ MPLEX_CFLAGS = @MPLEX_CFLAGS@ MPLEX_LDFLAGS = @MPLEX_LDFLAGS@ MPLEX_LIBS = @MPLEX_LIBS@ diff --git a/sys/shm/Makefile.in b/sys/shm/Makefile.in index 92336e99..377d8524 100644 --- a/sys/shm/Makefile.in +++ b/sys/shm/Makefile.in @@ -1,4 +1,4 @@ -# Makefile.in generated by automake 1.11.5 from Makefile.am. +# Makefile.in generated by automake 1.11.6 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, @@ -244,11 +244,10 @@ DIRECT3D_LIBS = @DIRECT3D_LIBS@ DIRECTDRAW_LIBS = @DIRECTDRAW_LIBS@ DIRECTFB_CFLAGS = @DIRECTFB_CFLAGS@ DIRECTFB_LIBS = @DIRECTFB_LIBS@ +DIRECTSHOW_LIBS = @DIRECTSHOW_LIBS@ DIRECTSOUND_LIBS = @DIRECTSOUND_LIBS@ DIRECTX_CFLAGS = @DIRECTX_CFLAGS@ DIRECTX_LDFLAGS = @DIRECTX_LDFLAGS@ -DIVXDEC_LIBS = @DIVXDEC_LIBS@ -DIVXENC_LIBS = @DIVXENC_LIBS@ DLLTOOL = @DLLTOOL@ DSYMUTIL = @DSYMUTIL@ DTS_LIBS = @DTS_LIBS@ @@ -283,7 +282,9 @@ GIO_LIBS = @GIO_LIBS@ GLIB_CFLAGS = @GLIB_CFLAGS@ GLIB_COMPILE_SCHEMAS = @GLIB_COMPILE_SCHEMAS@ GLIB_EXTRA_CFLAGS = @GLIB_EXTRA_CFLAGS@ +GLIB_GENMARSHAL = @GLIB_GENMARSHAL@ GLIB_LIBS = @GLIB_LIBS@ +GLIB_MKENUMS = @GLIB_MKENUMS@ GLIB_PREFIX = @GLIB_PREFIX@ GLIB_REQ = @GLIB_REQ@ GME_LIBS = @GME_LIBS@ @@ -359,13 +360,14 @@ HAVE_CXX = @HAVE_CXX@ HAVE_DIRECT3D = @HAVE_DIRECT3D@ HAVE_DIRECT3D9 = @HAVE_DIRECT3D9@ HAVE_DIRECTDRAW = @HAVE_DIRECTDRAW@ +HAVE_DIRECTSHOW = @HAVE_DIRECTSHOW@ HAVE_DIRECTSOUND = @HAVE_DIRECTSOUND@ HAVE_DTS = @HAVE_DTS@ HAVE_FAAC = @HAVE_FAAC@ HAVE_FAAD = @HAVE_FAAD@ HAVE_FLITE = @HAVE_FLITE@ HAVE_GSM = @HAVE_GSM@ -HAVE_JP2K = @HAVE_JP2K@ +HAVE_JASPER = @HAVE_JASPER@ HAVE_NAS = @HAVE_NAS@ HAVE_VPX = @HAVE_VPX@ HAVE_WILDMIDI = @HAVE_WILDMIDI@ @@ -379,7 +381,7 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ INTLLIBS = @INTLLIBS@ INTL_MACOSX_LIBS = @INTL_MACOSX_LIBS@ -JP2K_LIBS = @JP2K_LIBS@ +JASPER_LIBS = @JASPER_LIBS@ KATE_CFLAGS = @KATE_CFLAGS@ KATE_LIBS = @KATE_LIBS@ LD = @LD@ @@ -415,6 +417,8 @@ MODPLUG_CFLAGS = @MODPLUG_CFLAGS@ MODPLUG_LIBS = @MODPLUG_LIBS@ MPEG2ENC_CFLAGS = @MPEG2ENC_CFLAGS@ MPEG2ENC_LIBS = @MPEG2ENC_LIBS@ +MPG123_CFLAGS = @MPG123_CFLAGS@ +MPG123_LIBS = @MPG123_LIBS@ MPLEX_CFLAGS = @MPLEX_CFLAGS@ MPLEX_LDFLAGS = @MPLEX_LDFLAGS@ MPLEX_LIBS = @MPLEX_LIBS@ diff --git a/sys/shm/shmpipe.c b/sys/shm/shmpipe.c index bde4c4e7..c692417e 100644 --- a/sys/shm/shmpipe.c +++ b/sys/shm/shmpipe.c @@ -867,8 +867,8 @@ again: goto again; break; } - prev_buf = buffer; } + prev_buf = buffer; } for (item = self->clients; item; item = item->next) { diff --git a/sys/vcd/Makefile.in b/sys/vcd/Makefile.in index 0670768c..ce7eb377 100644 --- a/sys/vcd/Makefile.in +++ b/sys/vcd/Makefile.in @@ -1,4 +1,4 @@ -# Makefile.in generated by automake 1.11.5 from Makefile.am. +# Makefile.in generated by automake 1.11.6 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, @@ -237,11 +237,10 @@ DIRECT3D_LIBS = @DIRECT3D_LIBS@ DIRECTDRAW_LIBS = @DIRECTDRAW_LIBS@ DIRECTFB_CFLAGS = @DIRECTFB_CFLAGS@ DIRECTFB_LIBS = @DIRECTFB_LIBS@ +DIRECTSHOW_LIBS = @DIRECTSHOW_LIBS@ DIRECTSOUND_LIBS = @DIRECTSOUND_LIBS@ DIRECTX_CFLAGS = @DIRECTX_CFLAGS@ DIRECTX_LDFLAGS = @DIRECTX_LDFLAGS@ -DIVXDEC_LIBS = @DIVXDEC_LIBS@ -DIVXENC_LIBS = @DIVXENC_LIBS@ DLLTOOL = @DLLTOOL@ DSYMUTIL = @DSYMUTIL@ DTS_LIBS = @DTS_LIBS@ @@ -276,7 +275,9 @@ GIO_LIBS = @GIO_LIBS@ GLIB_CFLAGS = @GLIB_CFLAGS@ GLIB_COMPILE_SCHEMAS = @GLIB_COMPILE_SCHEMAS@ GLIB_EXTRA_CFLAGS = @GLIB_EXTRA_CFLAGS@ +GLIB_GENMARSHAL = @GLIB_GENMARSHAL@ GLIB_LIBS = @GLIB_LIBS@ +GLIB_MKENUMS = @GLIB_MKENUMS@ GLIB_PREFIX = @GLIB_PREFIX@ GLIB_REQ = @GLIB_REQ@ GME_LIBS = @GME_LIBS@ @@ -352,13 +353,14 @@ HAVE_CXX = @HAVE_CXX@ HAVE_DIRECT3D = @HAVE_DIRECT3D@ HAVE_DIRECT3D9 = @HAVE_DIRECT3D9@ HAVE_DIRECTDRAW = @HAVE_DIRECTDRAW@ +HAVE_DIRECTSHOW = @HAVE_DIRECTSHOW@ HAVE_DIRECTSOUND = @HAVE_DIRECTSOUND@ HAVE_DTS = @HAVE_DTS@ HAVE_FAAC = @HAVE_FAAC@ HAVE_FAAD = @HAVE_FAAD@ HAVE_FLITE = @HAVE_FLITE@ HAVE_GSM = @HAVE_GSM@ -HAVE_JP2K = @HAVE_JP2K@ +HAVE_JASPER = @HAVE_JASPER@ HAVE_NAS = @HAVE_NAS@ HAVE_VPX = @HAVE_VPX@ HAVE_WILDMIDI = @HAVE_WILDMIDI@ @@ -372,7 +374,7 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ INTLLIBS = @INTLLIBS@ INTL_MACOSX_LIBS = @INTL_MACOSX_LIBS@ -JP2K_LIBS = @JP2K_LIBS@ +JASPER_LIBS = @JASPER_LIBS@ KATE_CFLAGS = @KATE_CFLAGS@ KATE_LIBS = @KATE_LIBS@ LD = @LD@ @@ -408,6 +410,8 @@ MODPLUG_CFLAGS = @MODPLUG_CFLAGS@ MODPLUG_LIBS = @MODPLUG_LIBS@ MPEG2ENC_CFLAGS = @MPEG2ENC_CFLAGS@ MPEG2ENC_LIBS = @MPEG2ENC_LIBS@ +MPG123_CFLAGS = @MPG123_CFLAGS@ +MPG123_LIBS = @MPG123_LIBS@ MPLEX_CFLAGS = @MPLEX_CFLAGS@ MPLEX_LDFLAGS = @MPLEX_LDFLAGS@ MPLEX_LIBS = @MPLEX_LIBS@ diff --git a/sys/vdpau/Makefile.in b/sys/vdpau/Makefile.in index af2b6031..99ba979c 100644 --- a/sys/vdpau/Makefile.in +++ b/sys/vdpau/Makefile.in @@ -1,4 +1,4 @@ -# Makefile.in generated by automake 1.11.5 from Makefile.am. +# Makefile.in generated by automake 1.11.6 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, @@ -285,11 +285,10 @@ DIRECT3D_LIBS = @DIRECT3D_LIBS@ DIRECTDRAW_LIBS = @DIRECTDRAW_LIBS@ DIRECTFB_CFLAGS = @DIRECTFB_CFLAGS@ DIRECTFB_LIBS = @DIRECTFB_LIBS@ +DIRECTSHOW_LIBS = @DIRECTSHOW_LIBS@ DIRECTSOUND_LIBS = @DIRECTSOUND_LIBS@ DIRECTX_CFLAGS = @DIRECTX_CFLAGS@ DIRECTX_LDFLAGS = @DIRECTX_LDFLAGS@ -DIVXDEC_LIBS = @DIVXDEC_LIBS@ -DIVXENC_LIBS = @DIVXENC_LIBS@ DLLTOOL = @DLLTOOL@ DSYMUTIL = @DSYMUTIL@ DTS_LIBS = @DTS_LIBS@ @@ -324,7 +323,9 @@ GIO_LIBS = @GIO_LIBS@ GLIB_CFLAGS = @GLIB_CFLAGS@ GLIB_COMPILE_SCHEMAS = @GLIB_COMPILE_SCHEMAS@ GLIB_EXTRA_CFLAGS = @GLIB_EXTRA_CFLAGS@ +GLIB_GENMARSHAL = @GLIB_GENMARSHAL@ GLIB_LIBS = @GLIB_LIBS@ +GLIB_MKENUMS = @GLIB_MKENUMS@ GLIB_PREFIX = @GLIB_PREFIX@ GLIB_REQ = @GLIB_REQ@ GME_LIBS = @GME_LIBS@ @@ -400,13 +401,14 @@ HAVE_CXX = @HAVE_CXX@ HAVE_DIRECT3D = @HAVE_DIRECT3D@ HAVE_DIRECT3D9 = @HAVE_DIRECT3D9@ HAVE_DIRECTDRAW = @HAVE_DIRECTDRAW@ +HAVE_DIRECTSHOW = @HAVE_DIRECTSHOW@ HAVE_DIRECTSOUND = @HAVE_DIRECTSOUND@ HAVE_DTS = @HAVE_DTS@ HAVE_FAAC = @HAVE_FAAC@ HAVE_FAAD = @HAVE_FAAD@ HAVE_FLITE = @HAVE_FLITE@ HAVE_GSM = @HAVE_GSM@ -HAVE_JP2K = @HAVE_JP2K@ +HAVE_JASPER = @HAVE_JASPER@ HAVE_NAS = @HAVE_NAS@ HAVE_VPX = @HAVE_VPX@ HAVE_WILDMIDI = @HAVE_WILDMIDI@ @@ -420,7 +422,7 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ INTLLIBS = @INTLLIBS@ INTL_MACOSX_LIBS = @INTL_MACOSX_LIBS@ -JP2K_LIBS = @JP2K_LIBS@ +JASPER_LIBS = @JASPER_LIBS@ KATE_CFLAGS = @KATE_CFLAGS@ KATE_LIBS = @KATE_LIBS@ LD = @LD@ @@ -456,6 +458,8 @@ MODPLUG_CFLAGS = @MODPLUG_CFLAGS@ MODPLUG_LIBS = @MODPLUG_LIBS@ MPEG2ENC_CFLAGS = @MPEG2ENC_CFLAGS@ MPEG2ENC_LIBS = @MPEG2ENC_LIBS@ +MPG123_CFLAGS = @MPG123_CFLAGS@ +MPG123_LIBS = @MPG123_LIBS@ MPLEX_CFLAGS = @MPLEX_CFLAGS@ MPLEX_LDFLAGS = @MPLEX_LDFLAGS@ MPLEX_LIBS = @MPLEX_LIBS@ diff --git a/sys/vdpau/basevideodecoder/Makefile.in b/sys/vdpau/basevideodecoder/Makefile.in index be53aed8..20556ffe 100644 --- a/sys/vdpau/basevideodecoder/Makefile.in +++ b/sys/vdpau/basevideodecoder/Makefile.in @@ -1,4 +1,4 @@ -# Makefile.in generated by automake 1.11.5 from Makefile.am. +# Makefile.in generated by automake 1.11.6 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, @@ -212,11 +212,10 @@ DIRECT3D_LIBS = @DIRECT3D_LIBS@ DIRECTDRAW_LIBS = @DIRECTDRAW_LIBS@ DIRECTFB_CFLAGS = @DIRECTFB_CFLAGS@ DIRECTFB_LIBS = @DIRECTFB_LIBS@ +DIRECTSHOW_LIBS = @DIRECTSHOW_LIBS@ DIRECTSOUND_LIBS = @DIRECTSOUND_LIBS@ DIRECTX_CFLAGS = @DIRECTX_CFLAGS@ DIRECTX_LDFLAGS = @DIRECTX_LDFLAGS@ -DIVXDEC_LIBS = @DIVXDEC_LIBS@ -DIVXENC_LIBS = @DIVXENC_LIBS@ DLLTOOL = @DLLTOOL@ DSYMUTIL = @DSYMUTIL@ DTS_LIBS = @DTS_LIBS@ @@ -251,7 +250,9 @@ GIO_LIBS = @GIO_LIBS@ GLIB_CFLAGS = @GLIB_CFLAGS@ GLIB_COMPILE_SCHEMAS = @GLIB_COMPILE_SCHEMAS@ GLIB_EXTRA_CFLAGS = @GLIB_EXTRA_CFLAGS@ +GLIB_GENMARSHAL = @GLIB_GENMARSHAL@ GLIB_LIBS = @GLIB_LIBS@ +GLIB_MKENUMS = @GLIB_MKENUMS@ GLIB_PREFIX = @GLIB_PREFIX@ GLIB_REQ = @GLIB_REQ@ GME_LIBS = @GME_LIBS@ @@ -327,13 +328,14 @@ HAVE_CXX = @HAVE_CXX@ HAVE_DIRECT3D = @HAVE_DIRECT3D@ HAVE_DIRECT3D9 = @HAVE_DIRECT3D9@ HAVE_DIRECTDRAW = @HAVE_DIRECTDRAW@ +HAVE_DIRECTSHOW = @HAVE_DIRECTSHOW@ HAVE_DIRECTSOUND = @HAVE_DIRECTSOUND@ HAVE_DTS = @HAVE_DTS@ HAVE_FAAC = @HAVE_FAAC@ HAVE_FAAD = @HAVE_FAAD@ HAVE_FLITE = @HAVE_FLITE@ HAVE_GSM = @HAVE_GSM@ -HAVE_JP2K = @HAVE_JP2K@ +HAVE_JASPER = @HAVE_JASPER@ HAVE_NAS = @HAVE_NAS@ HAVE_VPX = @HAVE_VPX@ HAVE_WILDMIDI = @HAVE_WILDMIDI@ @@ -347,7 +349,7 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ INTLLIBS = @INTLLIBS@ INTL_MACOSX_LIBS = @INTL_MACOSX_LIBS@ -JP2K_LIBS = @JP2K_LIBS@ +JASPER_LIBS = @JASPER_LIBS@ KATE_CFLAGS = @KATE_CFLAGS@ KATE_LIBS = @KATE_LIBS@ LD = @LD@ @@ -383,6 +385,8 @@ MODPLUG_CFLAGS = @MODPLUG_CFLAGS@ MODPLUG_LIBS = @MODPLUG_LIBS@ MPEG2ENC_CFLAGS = @MPEG2ENC_CFLAGS@ MPEG2ENC_LIBS = @MPEG2ENC_LIBS@ +MPG123_CFLAGS = @MPG123_CFLAGS@ +MPG123_LIBS = @MPG123_LIBS@ MPLEX_CFLAGS = @MPLEX_CFLAGS@ MPLEX_LDFLAGS = @MPLEX_LDFLAGS@ MPLEX_LIBS = @MPLEX_LIBS@ diff --git a/sys/vdpau/gstvdp/Makefile.in b/sys/vdpau/gstvdp/Makefile.in index 7fc51c49..19cc103a 100644 --- a/sys/vdpau/gstvdp/Makefile.in +++ b/sys/vdpau/gstvdp/Makefile.in @@ -1,4 +1,4 @@ -# Makefile.in generated by automake 1.11.5 from Makefile.am. +# Makefile.in generated by automake 1.11.6 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, @@ -253,11 +253,10 @@ DIRECT3D_LIBS = @DIRECT3D_LIBS@ DIRECTDRAW_LIBS = @DIRECTDRAW_LIBS@ DIRECTFB_CFLAGS = @DIRECTFB_CFLAGS@ DIRECTFB_LIBS = @DIRECTFB_LIBS@ +DIRECTSHOW_LIBS = @DIRECTSHOW_LIBS@ DIRECTSOUND_LIBS = @DIRECTSOUND_LIBS@ DIRECTX_CFLAGS = @DIRECTX_CFLAGS@ DIRECTX_LDFLAGS = @DIRECTX_LDFLAGS@ -DIVXDEC_LIBS = @DIVXDEC_LIBS@ -DIVXENC_LIBS = @DIVXENC_LIBS@ DLLTOOL = @DLLTOOL@ DSYMUTIL = @DSYMUTIL@ DTS_LIBS = @DTS_LIBS@ @@ -292,7 +291,9 @@ GIO_LIBS = @GIO_LIBS@ GLIB_CFLAGS = @GLIB_CFLAGS@ GLIB_COMPILE_SCHEMAS = @GLIB_COMPILE_SCHEMAS@ GLIB_EXTRA_CFLAGS = @GLIB_EXTRA_CFLAGS@ +GLIB_GENMARSHAL = @GLIB_GENMARSHAL@ GLIB_LIBS = @GLIB_LIBS@ +GLIB_MKENUMS = @GLIB_MKENUMS@ GLIB_PREFIX = @GLIB_PREFIX@ GLIB_REQ = @GLIB_REQ@ GME_LIBS = @GME_LIBS@ @@ -368,13 +369,14 @@ HAVE_CXX = @HAVE_CXX@ HAVE_DIRECT3D = @HAVE_DIRECT3D@ HAVE_DIRECT3D9 = @HAVE_DIRECT3D9@ HAVE_DIRECTDRAW = @HAVE_DIRECTDRAW@ +HAVE_DIRECTSHOW = @HAVE_DIRECTSHOW@ HAVE_DIRECTSOUND = @HAVE_DIRECTSOUND@ HAVE_DTS = @HAVE_DTS@ HAVE_FAAC = @HAVE_FAAC@ HAVE_FAAD = @HAVE_FAAD@ HAVE_FLITE = @HAVE_FLITE@ HAVE_GSM = @HAVE_GSM@ -HAVE_JP2K = @HAVE_JP2K@ +HAVE_JASPER = @HAVE_JASPER@ HAVE_NAS = @HAVE_NAS@ HAVE_VPX = @HAVE_VPX@ HAVE_WILDMIDI = @HAVE_WILDMIDI@ @@ -388,7 +390,7 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ INTLLIBS = @INTLLIBS@ INTL_MACOSX_LIBS = @INTL_MACOSX_LIBS@ -JP2K_LIBS = @JP2K_LIBS@ +JASPER_LIBS = @JASPER_LIBS@ KATE_CFLAGS = @KATE_CFLAGS@ KATE_LIBS = @KATE_LIBS@ LD = @LD@ @@ -424,6 +426,8 @@ MODPLUG_CFLAGS = @MODPLUG_CFLAGS@ MODPLUG_LIBS = @MODPLUG_LIBS@ MPEG2ENC_CFLAGS = @MPEG2ENC_CFLAGS@ MPEG2ENC_LIBS = @MPEG2ENC_LIBS@ +MPG123_CFLAGS = @MPG123_CFLAGS@ +MPG123_LIBS = @MPG123_LIBS@ MPLEX_CFLAGS = @MPLEX_CFLAGS@ MPLEX_LDFLAGS = @MPLEX_LDFLAGS@ MPLEX_LIBS = @MPLEX_LIBS@ diff --git a/sys/vdpau/gstvdpvideopostprocess.c b/sys/vdpau/gstvdpvideopostprocess.c index ced168fe..15a16565 100644 --- a/sys/vdpau/gstvdpvideopostprocess.c +++ b/sys/vdpau/gstvdpvideopostprocess.c @@ -1219,7 +1219,7 @@ gst_vdp_vpp_class_init (GstVdpVideoPostProcessClass * klass) g_object_class_install_property (gobject_class, PROP_FORCE_ASPECT_RATIO, g_param_spec_boolean ("force-aspect-ratio", "Force aspect ratio", "When enabled, the plugin will only scale up the input surface to the" - "maximum size where the aspect ratio can be preserved", FALSE, + "maximum size where the aspect ratio can be preserved", TRUE, G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS)); g_object_class_install_property (gobject_class, PROP_DEINTERLACE_MODE, diff --git a/sys/wasapi/Makefile.in b/sys/wasapi/Makefile.in index 813760e9..bb781bd3 100644 --- a/sys/wasapi/Makefile.in +++ b/sys/wasapi/Makefile.in @@ -1,4 +1,4 @@ -# Makefile.in generated by automake 1.11.5 from Makefile.am. +# Makefile.in generated by automake 1.11.6 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, @@ -170,11 +170,10 @@ DIRECT3D_LIBS = @DIRECT3D_LIBS@ DIRECTDRAW_LIBS = @DIRECTDRAW_LIBS@ DIRECTFB_CFLAGS = @DIRECTFB_CFLAGS@ DIRECTFB_LIBS = @DIRECTFB_LIBS@ +DIRECTSHOW_LIBS = @DIRECTSHOW_LIBS@ DIRECTSOUND_LIBS = @DIRECTSOUND_LIBS@ DIRECTX_CFLAGS = @DIRECTX_CFLAGS@ DIRECTX_LDFLAGS = @DIRECTX_LDFLAGS@ -DIVXDEC_LIBS = @DIVXDEC_LIBS@ -DIVXENC_LIBS = @DIVXENC_LIBS@ DLLTOOL = @DLLTOOL@ DSYMUTIL = @DSYMUTIL@ DTS_LIBS = @DTS_LIBS@ @@ -209,7 +208,9 @@ GIO_LIBS = @GIO_LIBS@ GLIB_CFLAGS = @GLIB_CFLAGS@ GLIB_COMPILE_SCHEMAS = @GLIB_COMPILE_SCHEMAS@ GLIB_EXTRA_CFLAGS = @GLIB_EXTRA_CFLAGS@ +GLIB_GENMARSHAL = @GLIB_GENMARSHAL@ GLIB_LIBS = @GLIB_LIBS@ +GLIB_MKENUMS = @GLIB_MKENUMS@ GLIB_PREFIX = @GLIB_PREFIX@ GLIB_REQ = @GLIB_REQ@ GME_LIBS = @GME_LIBS@ @@ -285,13 +286,14 @@ HAVE_CXX = @HAVE_CXX@ HAVE_DIRECT3D = @HAVE_DIRECT3D@ HAVE_DIRECT3D9 = @HAVE_DIRECT3D9@ HAVE_DIRECTDRAW = @HAVE_DIRECTDRAW@ +HAVE_DIRECTSHOW = @HAVE_DIRECTSHOW@ HAVE_DIRECTSOUND = @HAVE_DIRECTSOUND@ HAVE_DTS = @HAVE_DTS@ HAVE_FAAC = @HAVE_FAAC@ HAVE_FAAD = @HAVE_FAAD@ HAVE_FLITE = @HAVE_FLITE@ HAVE_GSM = @HAVE_GSM@ -HAVE_JP2K = @HAVE_JP2K@ +HAVE_JASPER = @HAVE_JASPER@ HAVE_NAS = @HAVE_NAS@ HAVE_VPX = @HAVE_VPX@ HAVE_WILDMIDI = @HAVE_WILDMIDI@ @@ -305,7 +307,7 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ INTLLIBS = @INTLLIBS@ INTL_MACOSX_LIBS = @INTL_MACOSX_LIBS@ -JP2K_LIBS = @JP2K_LIBS@ +JASPER_LIBS = @JASPER_LIBS@ KATE_CFLAGS = @KATE_CFLAGS@ KATE_LIBS = @KATE_LIBS@ LD = @LD@ @@ -341,6 +343,8 @@ MODPLUG_CFLAGS = @MODPLUG_CFLAGS@ MODPLUG_LIBS = @MODPLUG_LIBS@ MPEG2ENC_CFLAGS = @MPEG2ENC_CFLAGS@ MPEG2ENC_LIBS = @MPEG2ENC_LIBS@ +MPG123_CFLAGS = @MPG123_CFLAGS@ +MPG123_LIBS = @MPG123_LIBS@ MPLEX_CFLAGS = @MPLEX_CFLAGS@ MPLEX_LDFLAGS = @MPLEX_LDFLAGS@ MPLEX_LIBS = @MPLEX_LIBS@ diff --git a/sys/wininet/Makefile.in b/sys/wininet/Makefile.in index c1111034..80d246ad 100644 --- a/sys/wininet/Makefile.in +++ b/sys/wininet/Makefile.in @@ -1,4 +1,4 @@ -# Makefile.in generated by automake 1.11.5 from Makefile.am. +# Makefile.in generated by automake 1.11.6 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, @@ -237,11 +237,10 @@ DIRECT3D_LIBS = @DIRECT3D_LIBS@ DIRECTDRAW_LIBS = @DIRECTDRAW_LIBS@ DIRECTFB_CFLAGS = @DIRECTFB_CFLAGS@ DIRECTFB_LIBS = @DIRECTFB_LIBS@ +DIRECTSHOW_LIBS = @DIRECTSHOW_LIBS@ DIRECTSOUND_LIBS = @DIRECTSOUND_LIBS@ DIRECTX_CFLAGS = @DIRECTX_CFLAGS@ DIRECTX_LDFLAGS = @DIRECTX_LDFLAGS@ -DIVXDEC_LIBS = @DIVXDEC_LIBS@ -DIVXENC_LIBS = @DIVXENC_LIBS@ DLLTOOL = @DLLTOOL@ DSYMUTIL = @DSYMUTIL@ DTS_LIBS = @DTS_LIBS@ @@ -276,7 +275,9 @@ GIO_LIBS = @GIO_LIBS@ GLIB_CFLAGS = @GLIB_CFLAGS@ GLIB_COMPILE_SCHEMAS = @GLIB_COMPILE_SCHEMAS@ GLIB_EXTRA_CFLAGS = @GLIB_EXTRA_CFLAGS@ +GLIB_GENMARSHAL = @GLIB_GENMARSHAL@ GLIB_LIBS = @GLIB_LIBS@ +GLIB_MKENUMS = @GLIB_MKENUMS@ GLIB_PREFIX = @GLIB_PREFIX@ GLIB_REQ = @GLIB_REQ@ GME_LIBS = @GME_LIBS@ @@ -352,13 +353,14 @@ HAVE_CXX = @HAVE_CXX@ HAVE_DIRECT3D = @HAVE_DIRECT3D@ HAVE_DIRECT3D9 = @HAVE_DIRECT3D9@ HAVE_DIRECTDRAW = @HAVE_DIRECTDRAW@ +HAVE_DIRECTSHOW = @HAVE_DIRECTSHOW@ HAVE_DIRECTSOUND = @HAVE_DIRECTSOUND@ HAVE_DTS = @HAVE_DTS@ HAVE_FAAC = @HAVE_FAAC@ HAVE_FAAD = @HAVE_FAAD@ HAVE_FLITE = @HAVE_FLITE@ HAVE_GSM = @HAVE_GSM@ -HAVE_JP2K = @HAVE_JP2K@ +HAVE_JASPER = @HAVE_JASPER@ HAVE_NAS = @HAVE_NAS@ HAVE_VPX = @HAVE_VPX@ HAVE_WILDMIDI = @HAVE_WILDMIDI@ @@ -372,7 +374,7 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ INTLLIBS = @INTLLIBS@ INTL_MACOSX_LIBS = @INTL_MACOSX_LIBS@ -JP2K_LIBS = @JP2K_LIBS@ +JASPER_LIBS = @JASPER_LIBS@ KATE_CFLAGS = @KATE_CFLAGS@ KATE_LIBS = @KATE_LIBS@ LD = @LD@ @@ -408,6 +410,8 @@ MODPLUG_CFLAGS = @MODPLUG_CFLAGS@ MODPLUG_LIBS = @MODPLUG_LIBS@ MPEG2ENC_CFLAGS = @MPEG2ENC_CFLAGS@ MPEG2ENC_LIBS = @MPEG2ENC_LIBS@ +MPG123_CFLAGS = @MPG123_CFLAGS@ +MPG123_LIBS = @MPG123_LIBS@ MPLEX_CFLAGS = @MPLEX_CFLAGS@ MPLEX_LDFLAGS = @MPLEX_LDFLAGS@ MPLEX_LIBS = @MPLEX_LIBS@ diff --git a/sys/winks/Makefile.am b/sys/winks/Makefile.am index a89eef31..13dbe81b 100644 --- a/sys/winks/Makefile.am +++ b/sys/winks/Makefile.am @@ -1,9 +1,17 @@ -# This plugin isn't buildable with autotools at this point in time, so just -# ensure everything's listed in EXTRA_DIST +plugin_LTLIBRARIES = libgstwinks.la -EXTRA_DIST = \ - gstksclock.c gstksclock.h \ - gstksvideodevice.c gstksvideodevice.h \ - gstksvideosrc.c gstksvideosrc.h \ +libgstwinks_la_SOURCES = gstksclock.c \ + gstksvideodevice.c \ + gstksvideosrc.c \ kshelpers.c kshelpers.h \ - ksvideohelpers.c ksvideohelpers.h + ksvideohelpers.c +libgstwinks_la_CFLAGS = $(GST_CFLAGS) $(GST_BASE_CFLAGS) \ + $(GST_PLUGINS_BASE_CFLAGS) $(DIRECTX_CFLAGS) +libgstwinks_la_LIBADD = $(DIRECTSHOW_LIBS) \ + $(GST_BASE_LIBS) $(GST_PLUGINS_BASE_LIBS) -lgstvideo-$(GST_MAJORMINOR) \ + -lgstinterfaces-$(GST_MAJORMINOR) +libgstwinks_la_LDFLAGS = $(GST_PLUGIN_LDFLAGS) $(DIRECTX_LDFLAGS) +libgstwinks_la_LIBTOOLFLAGS = --tag=disable-static + +noinst_HEADERS= gstksclock.h + diff --git a/sys/winks/Makefile.in b/sys/winks/Makefile.in index f4d97f2c..98245bbc 100644 --- a/sys/winks/Makefile.in +++ b/sys/winks/Makefile.in @@ -1,4 +1,4 @@ -# Makefile.in generated by automake 1.11.5 from Makefile.am. +# Makefile.in generated by automake 1.11.6 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, @@ -15,8 +15,7 @@ @SET_MAKE@ -# This plugin isn't buildable with autotools at this point in time, so just -# ensure everything's listed in EXTRA_DIST + VPATH = @srcdir@ am__make_dryrun = \ { \ @@ -55,7 +54,8 @@ build_triplet = @build@ host_triplet = @host@ target_triplet = @target@ subdir = sys/winks -DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in +DIST_COMMON = $(noinst_HEADERS) $(srcdir)/Makefile.am \ + $(srcdir)/Makefile.in ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/common/m4/as-ac-expand.m4 \ $(top_srcdir)/common/m4/as-auto-alt.m4 \ @@ -97,19 +97,86 @@ mkinstalldirs = $(install_sh) -d CONFIG_HEADER = $(top_builddir)/config.h CONFIG_CLEAN_FILES = CONFIG_CLEAN_VPATH_FILES = -AM_V_GEN = $(am__v_GEN_@AM_V@) -am__v_GEN_ = $(am__v_GEN_@AM_DEFAULT_V@) -am__v_GEN_0 = @echo " GEN " $@; +am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; +am__vpath_adj = case $$p in \ + $(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \ + *) f=$$p;; \ + esac; +am__strip_dir = f=`echo $$p | sed -e 's|^.*/||'`; +am__install_max = 40 +am__nobase_strip_setup = \ + srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*|]/\\\\&/g'` +am__nobase_strip = \ + for p in $$list; do echo "$$p"; done | sed -e "s|$$srcdirstrip/||" +am__nobase_list = $(am__nobase_strip_setup); \ + for p in $$list; do echo "$$p $$p"; done | \ + sed "s| $$srcdirstrip/| |;"' / .*\//!s/ .*/ ./; s,\( .*\)/[^/]*$$,\1,' | \ + $(AWK) 'BEGIN { files["."] = "" } { files[$$2] = files[$$2] " " $$1; \ + if (++n[$$2] == $(am__install_max)) \ + { print $$2, files[$$2]; n[$$2] = 0; files[$$2] = "" } } \ + END { for (dir in files) print dir, files[dir] }' +am__base_list = \ + sed '$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;s/\n/ /g' | \ + sed '$$!N;$$!N;$$!N;$$!N;s/\n/ /g' +am__uninstall_files_from_dir = { \ + test -z "$$files" \ + || { test ! -d "$$dir" && test ! -f "$$dir" && test ! -r "$$dir"; } \ + || { echo " ( cd '$$dir' && rm -f" $$files ")"; \ + $(am__cd) "$$dir" && rm -f $$files; }; \ + } +am__installdirs = "$(DESTDIR)$(plugindir)" +LTLIBRARIES = $(plugin_LTLIBRARIES) +am__DEPENDENCIES_1 = +libgstwinks_la_DEPENDENCIES = $(am__DEPENDENCIES_1) \ + $(am__DEPENDENCIES_1) $(am__DEPENDENCIES_1) +am_libgstwinks_la_OBJECTS = libgstwinks_la-gstksclock.lo \ + libgstwinks_la-gstksvideodevice.lo \ + libgstwinks_la-gstksvideosrc.lo libgstwinks_la-kshelpers.lo \ + libgstwinks_la-ksvideohelpers.lo +libgstwinks_la_OBJECTS = $(am_libgstwinks_la_OBJECTS) +AM_V_lt = $(am__v_lt_@AM_V@) +am__v_lt_ = $(am__v_lt_@AM_DEFAULT_V@) +am__v_lt_0 = --silent +libgstwinks_la_LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC \ + $(libgstwinks_la_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=link \ + $(CCLD) $(libgstwinks_la_CFLAGS) $(CFLAGS) \ + $(libgstwinks_la_LDFLAGS) $(LDFLAGS) -o $@ +DEFAULT_INCLUDES = -I.@am__isrc@ -I$(top_builddir) +depcomp = $(SHELL) $(top_srcdir)/depcomp +am__depfiles_maybe = depfiles +am__mv = mv -f +COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \ + $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) +LTCOMPILE = $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) \ + $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) \ + $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) \ + $(AM_CFLAGS) $(CFLAGS) +AM_V_CC = $(am__v_CC_@AM_V@) +am__v_CC_ = $(am__v_CC_@AM_DEFAULT_V@) +am__v_CC_0 = @echo " CC " $@; AM_V_at = $(am__v_at_@AM_V@) am__v_at_ = $(am__v_at_@AM_DEFAULT_V@) am__v_at_0 = @ -SOURCES = -DIST_SOURCES = +CCLD = $(CC) +LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) \ + $(LIBTOOLFLAGS) --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) \ + $(AM_LDFLAGS) $(LDFLAGS) -o $@ +AM_V_CCLD = $(am__v_CCLD_@AM_V@) +am__v_CCLD_ = $(am__v_CCLD_@AM_DEFAULT_V@) +am__v_CCLD_0 = @echo " CCLD " $@; +AM_V_GEN = $(am__v_GEN_@AM_V@) +am__v_GEN_ = $(am__v_GEN_@AM_DEFAULT_V@) +am__v_GEN_0 = @echo " GEN " $@; +SOURCES = $(libgstwinks_la_SOURCES) +DIST_SOURCES = $(libgstwinks_la_SOURCES) am__can_run_installinfo = \ case $$AM_UPDATE_INFO_DIR in \ n|no|NO) false;; \ *) (install-info --version) >/dev/null 2>&1;; \ esac +HEADERS = $(noinst_HEADERS) +ETAGS = etags +CTAGS = ctags DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) ACLOCAL = @ACLOCAL@ ACLOCAL_AMFLAGS = @ACLOCAL_AMFLAGS@ @@ -173,11 +240,10 @@ DIRECT3D_LIBS = @DIRECT3D_LIBS@ DIRECTDRAW_LIBS = @DIRECTDRAW_LIBS@ DIRECTFB_CFLAGS = @DIRECTFB_CFLAGS@ DIRECTFB_LIBS = @DIRECTFB_LIBS@ +DIRECTSHOW_LIBS = @DIRECTSHOW_LIBS@ DIRECTSOUND_LIBS = @DIRECTSOUND_LIBS@ DIRECTX_CFLAGS = @DIRECTX_CFLAGS@ DIRECTX_LDFLAGS = @DIRECTX_LDFLAGS@ -DIVXDEC_LIBS = @DIVXDEC_LIBS@ -DIVXENC_LIBS = @DIVXENC_LIBS@ DLLTOOL = @DLLTOOL@ DSYMUTIL = @DSYMUTIL@ DTS_LIBS = @DTS_LIBS@ @@ -212,7 +278,9 @@ GIO_LIBS = @GIO_LIBS@ GLIB_CFLAGS = @GLIB_CFLAGS@ GLIB_COMPILE_SCHEMAS = @GLIB_COMPILE_SCHEMAS@ GLIB_EXTRA_CFLAGS = @GLIB_EXTRA_CFLAGS@ +GLIB_GENMARSHAL = @GLIB_GENMARSHAL@ GLIB_LIBS = @GLIB_LIBS@ +GLIB_MKENUMS = @GLIB_MKENUMS@ GLIB_PREFIX = @GLIB_PREFIX@ GLIB_REQ = @GLIB_REQ@ GME_LIBS = @GME_LIBS@ @@ -288,13 +356,14 @@ HAVE_CXX = @HAVE_CXX@ HAVE_DIRECT3D = @HAVE_DIRECT3D@ HAVE_DIRECT3D9 = @HAVE_DIRECT3D9@ HAVE_DIRECTDRAW = @HAVE_DIRECTDRAW@ +HAVE_DIRECTSHOW = @HAVE_DIRECTSHOW@ HAVE_DIRECTSOUND = @HAVE_DIRECTSOUND@ HAVE_DTS = @HAVE_DTS@ HAVE_FAAC = @HAVE_FAAC@ HAVE_FAAD = @HAVE_FAAD@ HAVE_FLITE = @HAVE_FLITE@ HAVE_GSM = @HAVE_GSM@ -HAVE_JP2K = @HAVE_JP2K@ +HAVE_JASPER = @HAVE_JASPER@ HAVE_NAS = @HAVE_NAS@ HAVE_VPX = @HAVE_VPX@ HAVE_WILDMIDI = @HAVE_WILDMIDI@ @@ -308,7 +377,7 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ INTLLIBS = @INTLLIBS@ INTL_MACOSX_LIBS = @INTL_MACOSX_LIBS@ -JP2K_LIBS = @JP2K_LIBS@ +JASPER_LIBS = @JASPER_LIBS@ KATE_CFLAGS = @KATE_CFLAGS@ KATE_LIBS = @KATE_LIBS@ LD = @LD@ @@ -344,6 +413,8 @@ MODPLUG_CFLAGS = @MODPLUG_CFLAGS@ MODPLUG_LIBS = @MODPLUG_LIBS@ MPEG2ENC_CFLAGS = @MPEG2ENC_CFLAGS@ MPEG2ENC_LIBS = @MPEG2ENC_LIBS@ +MPG123_CFLAGS = @MPG123_CFLAGS@ +MPG123_LIBS = @MPG123_LIBS@ MPLEX_CFLAGS = @MPLEX_CFLAGS@ MPLEX_LDFLAGS = @MPLEX_LDFLAGS@ MPLEX_LIBS = @MPLEX_LIBS@ @@ -534,16 +605,27 @@ target_vendor = @target_vendor@ top_build_prefix = @top_build_prefix@ top_builddir = @top_builddir@ top_srcdir = @top_srcdir@ -EXTRA_DIST = \ - gstksclock.c gstksclock.h \ - gstksvideodevice.c gstksvideodevice.h \ - gstksvideosrc.c gstksvideosrc.h \ +plugin_LTLIBRARIES = libgstwinks.la +libgstwinks_la_SOURCES = gstksclock.c \ + gstksvideodevice.c \ + gstksvideosrc.c \ kshelpers.c kshelpers.h \ - ksvideohelpers.c ksvideohelpers.h + ksvideohelpers.c + +libgstwinks_la_CFLAGS = $(GST_CFLAGS) $(GST_BASE_CFLAGS) \ + $(GST_PLUGINS_BASE_CFLAGS) $(DIRECTX_CFLAGS) + +libgstwinks_la_LIBADD = $(DIRECTSHOW_LIBS) \ + $(GST_BASE_LIBS) $(GST_PLUGINS_BASE_LIBS) -lgstvideo-$(GST_MAJORMINOR) \ + -lgstinterfaces-$(GST_MAJORMINOR) +libgstwinks_la_LDFLAGS = $(GST_PLUGIN_LDFLAGS) $(DIRECTX_LDFLAGS) +libgstwinks_la_LIBTOOLFLAGS = --tag=disable-static +noinst_HEADERS = gstksclock.h all: all-am .SUFFIXES: +.SUFFIXES: .c .lo .o .obj $(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(am__configure_deps) @for dep in $?; do \ case '$(am__configure_deps)' in \ @@ -574,18 +656,166 @@ $(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps) $(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps) cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh $(am__aclocal_m4_deps): +install-pluginLTLIBRARIES: $(plugin_LTLIBRARIES) + @$(NORMAL_INSTALL) + @list='$(plugin_LTLIBRARIES)'; test -n "$(plugindir)" || list=; \ + list2=; for p in $$list; do \ + if test -f $$p; then \ + list2="$$list2 $$p"; \ + else :; fi; \ + done; \ + test -z "$$list2" || { \ + echo " $(MKDIR_P) '$(DESTDIR)$(plugindir)'"; \ + $(MKDIR_P) "$(DESTDIR)$(plugindir)" || exit 1; \ + echo " $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=install $(INSTALL) $(INSTALL_STRIP_FLAG) $$list2 '$(DESTDIR)$(plugindir)'"; \ + $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=install $(INSTALL) $(INSTALL_STRIP_FLAG) $$list2 "$(DESTDIR)$(plugindir)"; \ + } + +uninstall-pluginLTLIBRARIES: + @$(NORMAL_UNINSTALL) + @list='$(plugin_LTLIBRARIES)'; test -n "$(plugindir)" || list=; \ + for p in $$list; do \ + $(am__strip_dir) \ + echo " $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=uninstall rm -f '$(DESTDIR)$(plugindir)/$$f'"; \ + $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=uninstall rm -f "$(DESTDIR)$(plugindir)/$$f"; \ + done + +clean-pluginLTLIBRARIES: + -test -z "$(plugin_LTLIBRARIES)" || rm -f $(plugin_LTLIBRARIES) + @list='$(plugin_LTLIBRARIES)'; for p in $$list; do \ + dir="`echo $$p | sed -e 's|/[^/]*$$||'`"; \ + test "$$dir" != "$$p" || dir=.; \ + echo "rm -f \"$${dir}/so_locations\""; \ + rm -f "$${dir}/so_locations"; \ + done +libgstwinks.la: $(libgstwinks_la_OBJECTS) $(libgstwinks_la_DEPENDENCIES) $(EXTRA_libgstwinks_la_DEPENDENCIES) + $(AM_V_CCLD)$(libgstwinks_la_LINK) -rpath $(plugindir) $(libgstwinks_la_OBJECTS) $(libgstwinks_la_LIBADD) $(LIBS) + +mostlyclean-compile: + -rm -f *.$(OBJEXT) + +distclean-compile: + -rm -f *.tab.c + +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libgstwinks_la-gstksclock.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libgstwinks_la-gstksvideodevice.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libgstwinks_la-gstksvideosrc.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libgstwinks_la-kshelpers.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libgstwinks_la-ksvideohelpers.Plo@am__quote@ + +.c.o: +@am__fastdepCC_TRUE@ $(AM_V_CC)$(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $< +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='$<' object='$@' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(COMPILE) -c $< + +.c.obj: +@am__fastdepCC_TRUE@ $(AM_V_CC)$(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ `$(CYGPATH_W) '$<'` +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='$<' object='$@' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(COMPILE) -c `$(CYGPATH_W) '$<'` + +.c.lo: +@am__fastdepCC_TRUE@ $(AM_V_CC)$(LTCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $< +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Plo +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='$<' object='$@' libtool=yes @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LTCOMPILE) -c -o $@ $< + +libgstwinks_la-gstksclock.lo: gstksclock.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(libgstwinks_la_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libgstwinks_la_CFLAGS) $(CFLAGS) -MT libgstwinks_la-gstksclock.lo -MD -MP -MF $(DEPDIR)/libgstwinks_la-gstksclock.Tpo -c -o libgstwinks_la-gstksclock.lo `test -f 'gstksclock.c' || echo '$(srcdir)/'`gstksclock.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libgstwinks_la-gstksclock.Tpo $(DEPDIR)/libgstwinks_la-gstksclock.Plo +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='gstksclock.c' object='libgstwinks_la-gstksclock.lo' libtool=yes @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(libgstwinks_la_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libgstwinks_la_CFLAGS) $(CFLAGS) -c -o libgstwinks_la-gstksclock.lo `test -f 'gstksclock.c' || echo '$(srcdir)/'`gstksclock.c + +libgstwinks_la-gstksvideodevice.lo: gstksvideodevice.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(libgstwinks_la_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libgstwinks_la_CFLAGS) $(CFLAGS) -MT libgstwinks_la-gstksvideodevice.lo -MD -MP -MF $(DEPDIR)/libgstwinks_la-gstksvideodevice.Tpo -c -o libgstwinks_la-gstksvideodevice.lo `test -f 'gstksvideodevice.c' || echo '$(srcdir)/'`gstksvideodevice.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libgstwinks_la-gstksvideodevice.Tpo $(DEPDIR)/libgstwinks_la-gstksvideodevice.Plo +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='gstksvideodevice.c' object='libgstwinks_la-gstksvideodevice.lo' libtool=yes @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(libgstwinks_la_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libgstwinks_la_CFLAGS) $(CFLAGS) -c -o libgstwinks_la-gstksvideodevice.lo `test -f 'gstksvideodevice.c' || echo '$(srcdir)/'`gstksvideodevice.c + +libgstwinks_la-gstksvideosrc.lo: gstksvideosrc.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(libgstwinks_la_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libgstwinks_la_CFLAGS) $(CFLAGS) -MT libgstwinks_la-gstksvideosrc.lo -MD -MP -MF $(DEPDIR)/libgstwinks_la-gstksvideosrc.Tpo -c -o libgstwinks_la-gstksvideosrc.lo `test -f 'gstksvideosrc.c' || echo '$(srcdir)/'`gstksvideosrc.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libgstwinks_la-gstksvideosrc.Tpo $(DEPDIR)/libgstwinks_la-gstksvideosrc.Plo +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='gstksvideosrc.c' object='libgstwinks_la-gstksvideosrc.lo' libtool=yes @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(libgstwinks_la_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libgstwinks_la_CFLAGS) $(CFLAGS) -c -o libgstwinks_la-gstksvideosrc.lo `test -f 'gstksvideosrc.c' || echo '$(srcdir)/'`gstksvideosrc.c + +libgstwinks_la-kshelpers.lo: kshelpers.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(libgstwinks_la_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libgstwinks_la_CFLAGS) $(CFLAGS) -MT libgstwinks_la-kshelpers.lo -MD -MP -MF $(DEPDIR)/libgstwinks_la-kshelpers.Tpo -c -o libgstwinks_la-kshelpers.lo `test -f 'kshelpers.c' || echo '$(srcdir)/'`kshelpers.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libgstwinks_la-kshelpers.Tpo $(DEPDIR)/libgstwinks_la-kshelpers.Plo +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='kshelpers.c' object='libgstwinks_la-kshelpers.lo' libtool=yes @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(libgstwinks_la_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libgstwinks_la_CFLAGS) $(CFLAGS) -c -o libgstwinks_la-kshelpers.lo `test -f 'kshelpers.c' || echo '$(srcdir)/'`kshelpers.c + +libgstwinks_la-ksvideohelpers.lo: ksvideohelpers.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(libgstwinks_la_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libgstwinks_la_CFLAGS) $(CFLAGS) -MT libgstwinks_la-ksvideohelpers.lo -MD -MP -MF $(DEPDIR)/libgstwinks_la-ksvideohelpers.Tpo -c -o libgstwinks_la-ksvideohelpers.lo `test -f 'ksvideohelpers.c' || echo '$(srcdir)/'`ksvideohelpers.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libgstwinks_la-ksvideohelpers.Tpo $(DEPDIR)/libgstwinks_la-ksvideohelpers.Plo +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='ksvideohelpers.c' object='libgstwinks_la-ksvideohelpers.lo' libtool=yes @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(libgstwinks_la_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libgstwinks_la_CFLAGS) $(CFLAGS) -c -o libgstwinks_la-ksvideohelpers.lo `test -f 'ksvideohelpers.c' || echo '$(srcdir)/'`ksvideohelpers.c mostlyclean-libtool: -rm -f *.lo clean-libtool: -rm -rf .libs _libs + +ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES) + list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ + unique=`for i in $$list; do \ + if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ + done | \ + $(AWK) '{ files[$$0] = 1; nonempty = 1; } \ + END { if (nonempty) { for (i in files) print i; }; }'`; \ + mkid -fID $$unique tags: TAGS -TAGS: +TAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \ + $(TAGS_FILES) $(LISP) + set x; \ + here=`pwd`; \ + list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ + unique=`for i in $$list; do \ + if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ + done | \ + $(AWK) '{ files[$$0] = 1; nonempty = 1; } \ + END { if (nonempty) { for (i in files) print i; }; }'`; \ + shift; \ + if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \ + test -n "$$unique" || unique=$$empty_fix; \ + if test $$# -gt 0; then \ + $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \ + "$$@" $$unique; \ + else \ + $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \ + $$unique; \ + fi; \ + fi ctags: CTAGS -CTAGS: - +CTAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \ + $(TAGS_FILES) $(LISP) + list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ + unique=`for i in $$list; do \ + if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ + done | \ + $(AWK) '{ files[$$0] = 1; nonempty = 1; } \ + END { if (nonempty) { for (i in files) print i; }; }'`; \ + test -z "$(CTAGS_ARGS)$$unique" \ + || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \ + $$unique + +GTAGS: + here=`$(am__cd) $(top_builddir) && pwd` \ + && $(am__cd) $(top_srcdir) \ + && gtags -i $(GTAGS_ARGS) "$$here" + +distclean-tags: + -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags distdir: $(DISTFILES) @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ @@ -619,8 +849,11 @@ distdir: $(DISTFILES) done check-am: all-am check: check-am -all-am: Makefile +all-am: Makefile $(LTLIBRARIES) $(HEADERS) installdirs: + for dir in "$(DESTDIR)$(plugindir)"; do \ + test -z "$$dir" || $(MKDIR_P) "$$dir"; \ + done install: install-am install-exec: install-exec-am install-data: install-data-am @@ -653,11 +886,14 @@ maintainer-clean-generic: @echo "it deletes files that may require special tools to rebuild." clean: clean-am -clean-am: clean-generic clean-libtool mostlyclean-am +clean-am: clean-generic clean-libtool clean-pluginLTLIBRARIES \ + mostlyclean-am distclean: distclean-am + -rm -rf ./$(DEPDIR) -rm -f Makefile -distclean-am: clean-am distclean-generic +distclean-am: clean-am distclean-compile distclean-generic \ + distclean-tags dvi: dvi-am @@ -671,7 +907,7 @@ info: info-am info-am: -install-data-am: +install-data-am: install-pluginLTLIBRARIES install-dvi: install-dvi-am @@ -700,12 +936,14 @@ install-ps-am: installcheck-am: maintainer-clean: maintainer-clean-am + -rm -rf ./$(DEPDIR) -rm -f Makefile maintainer-clean-am: distclean-am maintainer-clean-generic mostlyclean: mostlyclean-am -mostlyclean-am: mostlyclean-generic mostlyclean-libtool +mostlyclean-am: mostlyclean-compile mostlyclean-generic \ + mostlyclean-libtool pdf: pdf-am @@ -715,20 +953,23 @@ ps: ps-am ps-am: -uninstall-am: +uninstall-am: uninstall-pluginLTLIBRARIES .MAKE: install-am install-strip -.PHONY: all all-am check check-am clean clean-generic clean-libtool \ - distclean distclean-generic distclean-libtool distdir dvi \ - dvi-am html html-am info info-am install install-am \ - install-data install-data-am install-dvi install-dvi-am \ - install-exec install-exec-am install-html install-html-am \ - install-info install-info-am install-man install-pdf \ - install-pdf-am install-ps install-ps-am install-strip \ - installcheck installcheck-am installdirs maintainer-clean \ - maintainer-clean-generic mostlyclean mostlyclean-generic \ - mostlyclean-libtool pdf pdf-am ps ps-am uninstall uninstall-am +.PHONY: CTAGS GTAGS all all-am check check-am clean clean-generic \ + clean-libtool clean-pluginLTLIBRARIES ctags distclean \ + distclean-compile distclean-generic distclean-libtool \ + distclean-tags distdir dvi dvi-am html html-am info info-am \ + install install-am install-data install-data-am install-dvi \ + install-dvi-am install-exec install-exec-am install-html \ + install-html-am install-info install-info-am install-man \ + install-pdf install-pdf-am install-pluginLTLIBRARIES \ + install-ps install-ps-am install-strip installcheck \ + installcheck-am installdirs maintainer-clean \ + maintainer-clean-generic mostlyclean mostlyclean-compile \ + mostlyclean-generic mostlyclean-libtool pdf pdf-am ps ps-am \ + tags uninstall uninstall-am uninstall-pluginLTLIBRARIES # Tell versions [3.59,3.63) of GNU make to not export all variables. diff --git a/sys/winks/gstksclock.c b/sys/winks/gstksclock.c index 33c3e4d0..898b12d3 100644 --- a/sys/winks/gstksclock.c +++ b/sys/winks/gstksclock.c @@ -99,10 +99,7 @@ gst_ks_clock_init (GstKsClock * self, GstKsClockClass * gclass) static void gst_ks_clock_dispose (GObject * object) { - GstKsClock *self = GST_KS_CLOCK (object); - GstKsClockPrivate *priv = GST_KS_CLOCK_GET_PRIVATE (self); - - g_assert (!priv->open); + g_assert (!GST_KS_CLOCK_GET_PRIVATE (GST_KS_CLOCK (object))->open); G_OBJECT_CLASS (parent_class)->dispose (object); } @@ -126,7 +123,6 @@ gboolean gst_ks_clock_open (GstKsClock * self) { GstKsClockPrivate *priv = GST_KS_CLOCK_GET_PRIVATE (self); - gboolean ret = FALSE; GList *devices; KsDeviceEntry *device; KSSTATE state; diff --git a/sys/winks/gstksvideodevice.c b/sys/winks/gstksvideodevice.c index 957b874e..726a8b6f 100644 --- a/sys/winks/gstksvideodevice.c +++ b/sys/winks/gstksvideodevice.c @@ -228,13 +228,13 @@ gst_ks_video_device_parse_win32_error (const gchar * func_name, FORMAT_MESSAGE_IGNORE_INSERTS, NULL, error_code, 0, buf, sizeof (buf), NULL); if (result != 0) { - g_string_append_printf (message, "0x%08x: %s", error_code, + g_string_append_printf (message, "0x%08x: %s", (guint) error_code, g_strchomp (buf)); } else { DWORD format_error_code = GetLastError (); g_string_append_printf (message, - "<0x%08x (FormatMessage error code: %s)>", error_code, + "<0x%08x (FormatMessage error code: %s)>", (guint) error_code, (format_error_code == ERROR_MR_MID_NOT_FOUND) ? "no system error message found" : "failed to retrieve system error message"); @@ -340,7 +340,7 @@ gst_ks_video_device_dump_supported_property_sets (GstKsVideoDevice * self, { guint i; - GST_DEBUG ("%s supports %d property set%s", obj_name, propsets_len, + GST_DEBUG ("%s supports %lu property set%s", obj_name, propsets_len, (propsets_len != 1) ? "s" : ""); for (i = 0; i < propsets_len; i++) { @@ -589,7 +589,7 @@ gst_ks_video_device_create_pin (GstKsVideoDevice * self, } } - GST_DEBUG ("num_outstanding: %d alignment: 0x%08x", *num_outstanding, + GST_DEBUG ("num_outstanding: %lu alignment: 0x%08x", *num_outstanding, alignment); if (*num_outstanding == 0 || *num_outstanding > MAX_OUTSTANDING_FRAMES) { @@ -713,7 +713,7 @@ gst_ks_video_device_set_caps (GstKsVideoDevice * self, GstCaps * caps) /* State to be committed on success */ KsVideoMediaType *media_type = NULL; - guint width, height, fps_n, fps_d; + gint width, height, fps_n, fps_d; HANDLE pin_handle = INVALID_HANDLE_VALUE; /* Reset? */ @@ -1080,7 +1080,7 @@ gst_ks_video_device_read_frame (GstKsVideoDevice * self, GstBuffer ** buf, GST_DEBUG ("PictureNumber=%" G_GUINT64_FORMAT ", DropCount=%" G_GUINT64_FORMAT ", PresentationTime=%" GST_TIME_FORMAT - ", Duration=%" GST_TIME_FORMAT ", OptionsFlags=%s: %d bytes", + ", Duration=%" GST_TIME_FORMAT ", OptionsFlags=%s: %lu bytes", frame_info->PictureNumber, frame_info->DropCount, GST_TIME_ARGS (timestamp), GST_TIME_ARGS (duration), options_flags_str, hdr->DataUsed); diff --git a/sys/winks/gstksvideodevice.h b/sys/winks/gstksvideodevice.h deleted file mode 100644 index d830492f..00000000 --- a/sys/winks/gstksvideodevice.h +++ /dev/null @@ -1,86 +0,0 @@ -/* - * Copyright (C) 2008 Ole André Vadla RavnÃ¥s <ole.andre.ravnas@tandberg.com> - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Library General Public - * License as published by the Free Software Foundation; either - * version 2 of the License, or (at your option) any later version. - * - * This library 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 - * Library General Public License for more details. - * - * You should have received a copy of the GNU Library General Public - * License along with this library; if not, write to the - * Free Software Foundation, Inc., 59 Temple Place - Suite 330, - * Boston, MA 02111-1307, USA. - */ - -#ifndef __GST_KS_VIDEO_DEVICE_H__ -#define __GST_KS_VIDEO_DEVICE_H__ - -#include "gstksclock.h" - -#include <gst/gst.h> - -#include <windows.h> -#include <ks.h> - -G_BEGIN_DECLS - -#define GST_TYPE_KS_VIDEO_DEVICE \ - (gst_ks_video_device_get_type ()) -#define GST_KS_VIDEO_DEVICE(obj) \ - (G_TYPE_CHECK_INSTANCE_CAST ((obj), GST_TYPE_KS_VIDEO_DEVICE, GstKsVideoDevice)) -#define GST_KS_VIDEO_DEVICE_CLASS(klass) \ - (G_TYPE_CHECK_CLASS_CAST ((klass), GST_TYPE_KS_VIDEO_DEVICE, GstKsVideoDeviceClass)) -#define GST_IS_KS_VIDEO_DEVICE(obj) \ - (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GST_TYPE_KS_VIDEO_DEVICE)) -#define GST_IS_KS_VIDEO_DEVICE_CLASS(klass) \ - (G_TYPE_CHECK_CLASS_TYPE ((klass), GST_TYPE_KS_VIDEO_DEVICE)) - -typedef struct _GstKsVideoDevice GstKsVideoDevice; -typedef struct _GstKsVideoDeviceClass GstKsVideoDeviceClass; -typedef struct _GstKsVideoDevicePrivate GstKsVideoDevicePrivate; - -typedef GstBuffer * (* GstKsAllocFunction)(guint buf_size, guint alignment, gpointer user_data); - -struct _GstKsVideoDevice -{ - GObject parent; - - GstKsAllocFunction allocfunc; - gpointer allocfunc_data; - - GstKsVideoDevicePrivate *priv; -}; - -struct _GstKsVideoDeviceClass -{ - GObjectClass parent_class; -}; - -GType gst_ks_video_device_get_type (void); - -GstKsVideoDevice * gst_ks_video_device_new (const gchar * device_path, GstKsClock * clock, GstKsAllocFunction allocfunc, gpointer allocfunc_data); -gboolean gst_ks_video_device_open (GstKsVideoDevice * self); -void gst_ks_video_device_close (GstKsVideoDevice * self); - -GstCaps * gst_ks_video_device_get_available_caps (GstKsVideoDevice * self); -gboolean gst_ks_video_device_has_caps (GstKsVideoDevice * self); -gboolean gst_ks_video_device_set_caps (GstKsVideoDevice * self, GstCaps * caps); - -gboolean gst_ks_video_device_set_state (GstKsVideoDevice * self, KSSTATE state, gulong * error_code); - -GstClockTime gst_ks_video_device_get_duration (GstKsVideoDevice * self); -gboolean gst_ks_video_device_get_latency (GstKsVideoDevice * self, GstClockTime * min_latency, GstClockTime * max_latency); - -GstFlowReturn gst_ks_video_device_read_frame (GstKsVideoDevice * self, GstBuffer ** buf, GstClockTime * presentation_time, gulong * error_code, gchar ** error_str); -void gst_ks_video_device_postprocess_frame (GstKsVideoDevice * self, guint8 * buf, guint buf_size); -void gst_ks_video_device_cancel (GstKsVideoDevice * self); -void gst_ks_video_device_cancel_stop (GstKsVideoDevice * self); - -G_END_DECLS - -#endif /* __GST_KS_VIDEO_DEVICE_H__ */ diff --git a/sys/winks/gstksvideosrc.c b/sys/winks/gstksvideosrc.c index f0907c47..fa831f1b 100644 --- a/sys/winks/gstksvideosrc.c +++ b/sys/winks/gstksvideosrc.c @@ -365,7 +365,6 @@ gst_ks_video_src_reset (GstKsVideoSrc * self) static void gst_ks_video_src_apply_driver_quirks (GstKsVideoSrc * self) { - GstKsVideoSrcPrivate *priv = GST_KS_VIDEO_SRC_GET_PRIVATE (self); HMODULE mod; /* @@ -722,6 +721,8 @@ gst_ks_video_src_change_state (GstElement * element, GstStateChange transition) if (!gst_ks_video_src_start_worker (self)) goto open_failed; break; + default: + break; } ret = GST_ELEMENT_CLASS (parent_class)->change_state (element, transition); @@ -730,6 +731,8 @@ gst_ks_video_src_change_state (GstElement * element, GstStateChange transition) case GST_STATE_CHANGE_READY_TO_NULL: gst_ks_video_src_stop_worker (self); break; + default: + break; } return ret; diff --git a/sys/winks/gstksvideosrc.h b/sys/winks/gstksvideosrc.h deleted file mode 100644 index d7766c27..00000000 --- a/sys/winks/gstksvideosrc.h +++ /dev/null @@ -1,59 +0,0 @@ -/* - * Copyright (C) 2008 Ole André Vadla RavnÃ¥s <ole.andre.ravnas@tandberg.com> - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Library General Public - * License as published by the Free Software Foundation; either - * version 2 of the License, or (at your option) any later version. - * - * This library 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 - * Library General Public License for more details. - * - * You should have received a copy of the GNU Library General Public - * License along with this library; if not, write to the - * Free Software Foundation, Inc., 59 Temple Place - Suite 330, - * Boston, MA 02111-1307, USA. - */ - -#ifndef __GST_KS_VIDEO_SRC_H__ -#define __GST_KS_VIDEO_SRC_H__ - -#include <gst/base/gstpushsrc.h> -#include <gst/interfaces/propertyprobe.h> - -G_BEGIN_DECLS - -#define GST_TYPE_KS_VIDEO_SRC \ - (gst_ks_video_src_get_type ()) -#define GST_KS_VIDEO_SRC(obj) \ - (G_TYPE_CHECK_INSTANCE_CAST ((obj), GST_TYPE_KS_VIDEO_SRC, GstKsVideoSrc)) -#define GST_KS_VIDEO_SRC_CLASS(klass) \ - (G_TYPE_CHECK_CLASS_CAST ((klass), GST_TYPE_KS_VIDEO_SRC, GstKsVideoSrcClass)) -#define GST_IS_KS_VIDEO_SRC(obj) \ - (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GST_TYPE_KS_VIDEO_SRC)) -#define GST_IS_KS_VIDEO_SRC_CLASS(klass) \ - (G_TYPE_CHECK_CLASS_TYPE ((klass), GST_TYPE_KS_VIDEO_SRC)) - -typedef struct _GstKsVideoSrc GstKsVideoSrc; -typedef struct _GstKsVideoSrcClass GstKsVideoSrcClass; -typedef struct _GstKsVideoSrcPrivate GstKsVideoSrcPrivate; - -struct _GstKsVideoSrc -{ - GstPushSrc push_src; - - GstKsVideoSrcPrivate * priv; -}; - -struct _GstKsVideoSrcClass -{ - GstPushSrcClass parent_class; -}; - -GType gst_ks_video_src_get_type (void); - -G_END_DECLS - -#endif /* __GST_KS_VIDEO_SRC_H__ */ diff --git a/sys/winks/kshelpers.c b/sys/winks/kshelpers.c index 787b3158..c2432f5e 100644 --- a/sys/winks/kshelpers.c +++ b/sys/winks/kshelpers.c @@ -25,6 +25,12 @@ GST_DEBUG_CATEGORY_EXTERN (gst_ks_debug); #define GST_CAT_DEFAULT gst_ks_debug +#ifndef STATIC_KSPROPSETID_Wave_Queued +#define STATIC_KSPROPSETID_Wave_Queued \ + 0x16a15b10L,0x16f0,0x11d0,0xa1,0x95,0x00,0x20,0xaf,0xd1,0x56,0xe4 +DEFINE_GUIDSTRUCT("16a15b10-16f0-11d0-a195-0020afd156e4", KSPROPSETID_Wave_Queued); +#endif + gboolean ks_is_valid_handle (HANDLE h) { diff --git a/sys/winks/ksvideohelpers.c b/sys/winks/ksvideohelpers.c index e8981222..5b375cf8 100644 --- a/sys/winks/ksvideohelpers.c +++ b/sys/winks/ksvideohelpers.c @@ -33,11 +33,6 @@ static const GUID MEDIASUBTYPE_FOURCC = 0x38, 0x9B, 0x71} }; -extern const GUID MEDIASUBTYPE_I420 = - { 0x30323449, 0x0000, 0x0010, {0x80, 0x00, 0x00, 0xAA, 0x00, 0x38, 0x9B, - 0x71} -}; - typedef struct _KsVideoDeviceEntry KsVideoDeviceEntry; struct _KsVideoDeviceEntry @@ -472,7 +467,7 @@ ks_video_probe_filter_for_caps (HANDLE filter_handle) KSPROPERTY_PIN_CTYPES, &pin_count, sizeof (pin_count), NULL)) goto beach; - GST_DEBUG ("pin_count = %d", pin_count); + GST_DEBUG ("pin_count = %lu", pin_count); for (pin_id = 0; pin_id < pin_count; pin_id++) { KSPIN_COMMUNICATION pin_comm; diff --git a/sys/winks/ksvideohelpers.h b/sys/winks/ksvideohelpers.h deleted file mode 100644 index 0755d235..00000000 --- a/sys/winks/ksvideohelpers.h +++ /dev/null @@ -1,66 +0,0 @@ -/* - * Copyright (C) 2007 Haakon Sporsheim <hakon.sporsheim@tandberg.com> - * 2008 Ole André Vadla Ravnås <ole.andre.ravnas@tandberg.com> - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Library General Public - * License as published by the Free Software Foundation; either - * version 2 of the License, or (at your option) any later version. - * - * This library 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 - * Library General Public License for more details. - * - * You should have received a copy of the GNU Library General Public - * License along with this library; if not, write to the - * Free Software Foundation, Inc., 59 Temple Place - Suite 330, - * Boston, MA 02111-1307, USA. - */ - -#ifndef __KSVIDEOHELPERS_H__ -#define __KSVIDEOHELPERS_H__ - -#include <gst/gst.h> -#include <windows.h> -#include <ks.h> -#include <ksmedia.h> - -G_BEGIN_DECLS - -DEFINE_GUID(MEDIASUBTYPE_I420, 0x30323449, 0x0000, 0x0010, 0x80, 0x00, 0x00, 0xAA, 0x00, 0x38, 0x9B, 0x71); - -typedef struct _KsVideoMediaType KsVideoMediaType; - -/** - * A structure that contain metadata about capabilities - * for both KS and GStreamer for video only. - */ -struct _KsVideoMediaType -{ - guint pin_id; - - const KSDATARANGE * range; - const KS_VIDEO_STREAM_CONFIG_CAPS vscc; - - guint8 * format; - guint format_size; - - guint sample_size; - - GstCaps * translated_caps; -}; - -GList * ks_video_device_list_sort_cameras_first (GList * devices); - -KsVideoMediaType * ks_video_media_type_dup (KsVideoMediaType * media_type); -void ks_video_media_type_free (KsVideoMediaType * media_type); -GList * ks_video_probe_filter_for_caps (HANDLE filter_handle); -KSPIN_CONNECT * ks_video_create_pin_conn_from_media_type (KsVideoMediaType * media_type); -gboolean ks_video_fixate_media_type (const KSDATARANGE * range, guint8 * format, gint width, gint height, gint fps_n, gint fps_d); - -GstCaps * ks_video_get_all_caps (void); - -G_END_DECLS - -#endif /* __KSVIDEOHELPERS_H__ */ diff --git a/sys/winscreencap/Makefile.in b/sys/winscreencap/Makefile.in index 7c810667..4eb4e2c7 100644 --- a/sys/winscreencap/Makefile.in +++ b/sys/winscreencap/Makefile.in @@ -1,4 +1,4 @@ -# Makefile.in generated by automake 1.11.5 from Makefile.am. +# Makefile.in generated by automake 1.11.6 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, @@ -240,11 +240,10 @@ DIRECT3D_LIBS = @DIRECT3D_LIBS@ DIRECTDRAW_LIBS = @DIRECTDRAW_LIBS@ DIRECTFB_CFLAGS = @DIRECTFB_CFLAGS@ DIRECTFB_LIBS = @DIRECTFB_LIBS@ +DIRECTSHOW_LIBS = @DIRECTSHOW_LIBS@ DIRECTSOUND_LIBS = @DIRECTSOUND_LIBS@ DIRECTX_CFLAGS = @DIRECTX_CFLAGS@ DIRECTX_LDFLAGS = @DIRECTX_LDFLAGS@ -DIVXDEC_LIBS = @DIVXDEC_LIBS@ -DIVXENC_LIBS = @DIVXENC_LIBS@ DLLTOOL = @DLLTOOL@ DSYMUTIL = @DSYMUTIL@ DTS_LIBS = @DTS_LIBS@ @@ -279,7 +278,9 @@ GIO_LIBS = @GIO_LIBS@ GLIB_CFLAGS = @GLIB_CFLAGS@ GLIB_COMPILE_SCHEMAS = @GLIB_COMPILE_SCHEMAS@ GLIB_EXTRA_CFLAGS = @GLIB_EXTRA_CFLAGS@ +GLIB_GENMARSHAL = @GLIB_GENMARSHAL@ GLIB_LIBS = @GLIB_LIBS@ +GLIB_MKENUMS = @GLIB_MKENUMS@ GLIB_PREFIX = @GLIB_PREFIX@ GLIB_REQ = @GLIB_REQ@ GME_LIBS = @GME_LIBS@ @@ -355,13 +356,14 @@ HAVE_CXX = @HAVE_CXX@ HAVE_DIRECT3D = @HAVE_DIRECT3D@ HAVE_DIRECT3D9 = @HAVE_DIRECT3D9@ HAVE_DIRECTDRAW = @HAVE_DIRECTDRAW@ +HAVE_DIRECTSHOW = @HAVE_DIRECTSHOW@ HAVE_DIRECTSOUND = @HAVE_DIRECTSOUND@ HAVE_DTS = @HAVE_DTS@ HAVE_FAAC = @HAVE_FAAC@ HAVE_FAAD = @HAVE_FAAD@ HAVE_FLITE = @HAVE_FLITE@ HAVE_GSM = @HAVE_GSM@ -HAVE_JP2K = @HAVE_JP2K@ +HAVE_JASPER = @HAVE_JASPER@ HAVE_NAS = @HAVE_NAS@ HAVE_VPX = @HAVE_VPX@ HAVE_WILDMIDI = @HAVE_WILDMIDI@ @@ -375,7 +377,7 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ INTLLIBS = @INTLLIBS@ INTL_MACOSX_LIBS = @INTL_MACOSX_LIBS@ -JP2K_LIBS = @JP2K_LIBS@ +JASPER_LIBS = @JASPER_LIBS@ KATE_CFLAGS = @KATE_CFLAGS@ KATE_LIBS = @KATE_LIBS@ LD = @LD@ @@ -411,6 +413,8 @@ MODPLUG_CFLAGS = @MODPLUG_CFLAGS@ MODPLUG_LIBS = @MODPLUG_LIBS@ MPEG2ENC_CFLAGS = @MPEG2ENC_CFLAGS@ MPEG2ENC_LIBS = @MPEG2ENC_LIBS@ +MPG123_CFLAGS = @MPG123_CFLAGS@ +MPG123_LIBS = @MPG123_LIBS@ MPLEX_CFLAGS = @MPLEX_CFLAGS@ MPLEX_LDFLAGS = @MPLEX_LDFLAGS@ MPLEX_LIBS = @MPLEX_LIBS@ diff --git a/tests/Makefile.in b/tests/Makefile.in index afaa7a9a..aed52e6d 100644 --- a/tests/Makefile.in +++ b/tests/Makefile.in @@ -1,4 +1,4 @@ -# Makefile.in generated by automake 1.11.5 from Makefile.am. +# Makefile.in generated by automake 1.11.6 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, @@ -209,11 +209,10 @@ DIRECT3D_LIBS = @DIRECT3D_LIBS@ DIRECTDRAW_LIBS = @DIRECTDRAW_LIBS@ DIRECTFB_CFLAGS = @DIRECTFB_CFLAGS@ DIRECTFB_LIBS = @DIRECTFB_LIBS@ +DIRECTSHOW_LIBS = @DIRECTSHOW_LIBS@ DIRECTSOUND_LIBS = @DIRECTSOUND_LIBS@ DIRECTX_CFLAGS = @DIRECTX_CFLAGS@ DIRECTX_LDFLAGS = @DIRECTX_LDFLAGS@ -DIVXDEC_LIBS = @DIVXDEC_LIBS@ -DIVXENC_LIBS = @DIVXENC_LIBS@ DLLTOOL = @DLLTOOL@ DSYMUTIL = @DSYMUTIL@ DTS_LIBS = @DTS_LIBS@ @@ -248,7 +247,9 @@ GIO_LIBS = @GIO_LIBS@ GLIB_CFLAGS = @GLIB_CFLAGS@ GLIB_COMPILE_SCHEMAS = @GLIB_COMPILE_SCHEMAS@ GLIB_EXTRA_CFLAGS = @GLIB_EXTRA_CFLAGS@ +GLIB_GENMARSHAL = @GLIB_GENMARSHAL@ GLIB_LIBS = @GLIB_LIBS@ +GLIB_MKENUMS = @GLIB_MKENUMS@ GLIB_PREFIX = @GLIB_PREFIX@ GLIB_REQ = @GLIB_REQ@ GME_LIBS = @GME_LIBS@ @@ -324,13 +325,14 @@ HAVE_CXX = @HAVE_CXX@ HAVE_DIRECT3D = @HAVE_DIRECT3D@ HAVE_DIRECT3D9 = @HAVE_DIRECT3D9@ HAVE_DIRECTDRAW = @HAVE_DIRECTDRAW@ +HAVE_DIRECTSHOW = @HAVE_DIRECTSHOW@ HAVE_DIRECTSOUND = @HAVE_DIRECTSOUND@ HAVE_DTS = @HAVE_DTS@ HAVE_FAAC = @HAVE_FAAC@ HAVE_FAAD = @HAVE_FAAD@ HAVE_FLITE = @HAVE_FLITE@ HAVE_GSM = @HAVE_GSM@ -HAVE_JP2K = @HAVE_JP2K@ +HAVE_JASPER = @HAVE_JASPER@ HAVE_NAS = @HAVE_NAS@ HAVE_VPX = @HAVE_VPX@ HAVE_WILDMIDI = @HAVE_WILDMIDI@ @@ -344,7 +346,7 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ INTLLIBS = @INTLLIBS@ INTL_MACOSX_LIBS = @INTL_MACOSX_LIBS@ -JP2K_LIBS = @JP2K_LIBS@ +JASPER_LIBS = @JASPER_LIBS@ KATE_CFLAGS = @KATE_CFLAGS@ KATE_LIBS = @KATE_LIBS@ LD = @LD@ @@ -380,6 +382,8 @@ MODPLUG_CFLAGS = @MODPLUG_CFLAGS@ MODPLUG_LIBS = @MODPLUG_LIBS@ MPEG2ENC_CFLAGS = @MPEG2ENC_CFLAGS@ MPEG2ENC_LIBS = @MPEG2ENC_LIBS@ +MPG123_CFLAGS = @MPG123_CFLAGS@ +MPG123_LIBS = @MPG123_LIBS@ MPLEX_CFLAGS = @MPLEX_CFLAGS@ MPLEX_LDFLAGS = @MPLEX_LDFLAGS@ MPLEX_LIBS = @MPLEX_LIBS@ diff --git a/tests/check/Makefile.am b/tests/check/Makefile.am index e4e6aa9a..84cee4d2 100644 --- a/tests/check/Makefile.am +++ b/tests/check/Makefile.am @@ -130,7 +130,7 @@ check_vp8= endif if HAVE_ORC -check_orc = orc/cog +check_orc = orc/cog orc/bayer else check_orc = endif @@ -193,7 +193,6 @@ check_PROGRAMS = \ elements/baseaudiovisualizer \ elements/camerabin \ elements/dataurisrc \ - elements/legacyresample \ $(check_jifmux) \ elements/jpegparse \ $(check_logoinsert) \ @@ -286,13 +285,6 @@ elements_faac_LDADD = \ $(GST_PLUGINS_BASE_LIBS) $(GST_BASE_LIBS) $(GST_LIBS) $(LDADD) \ -lgstaudio-@GST_API_VERSION@ -elements_legacyresample_CFLAGS = \ - $(GST_PLUGINS_BASE_CFLAGS) \ - $(GST_BASE_CFLAGS) $(GST_CFLAGS) $(AM_CFLAGS) -elements_legacyresample_LDADD = \ - $(GST_PLUGINS_BASE_LIBS) $(GST_BASE_LIBS) $(GST_LIBS) $(LDADD) \ - -lgstaudio-@GST_API_VERSION@ - elements_voaacenc_CFLAGS = \ $(GST_PLUGINS_BASE_CFLAGS) \ $(GST_BASE_CFLAGS) $(GST_CFLAGS) $(AM_CFLAGS) @@ -301,8 +293,8 @@ elements_voaacenc_LDADD = \ -lgstaudio-@GST_API_VERSION@ elements_baseaudiovisualizer_SOURCES = elements/baseaudiovisualizer.c \ - $(top_srcdir)/gst/audiovisualizers/gstbaseaudiovisualizer.c \ - $(top_srcdir)/gst/audiovisualizers/gstbaseaudiovisualizer.h + $(top_srcdir)/gst/audiovisualizers/gstaudiovisualizer.c \ + $(top_srcdir)/gst/audiovisualizers/gstaudiovisualizer.h elements_baseaudiovisualizer_CFLAGS = $(GST_PLUGINS_BAD_CFLAGS) \ -I$(top_srcdir)/gst/audiovisualizers $(GST_PLUGINS_BASE_CFLAGS) \ $(GST_BASE_CFLAGS) $(GST_CONTROLLER_CFLAGS) $(GST_CFLAGS) $(AM_CFLAGS) @@ -343,6 +335,8 @@ elements_mpegtsmux_LDADD = $(GST_PLUGINS_BASE_LIBS) -lgstvideo-$(GST_API_VERSION EXTRA_DIST = gst-plugins-bad.supp +orc_bayer_CFLAGS = $(ORC_CFLAGS) +orc_bayer_LDADD = $(ORC_LIBS) -lorc-test-0.4 orc_cog_CFLAGS = $(ORC_CFLAGS) orc_cog_LDADD = $(ORC_LIBS) -lorc-test-0.4 @@ -350,6 +344,10 @@ orc/cog.c: $(top_srcdir)/ext/cog/gstcogorc.orc $(MKDIR_P) orc $(ORCC) --test -o $@ $< +orc/bayer.c: $(top_srcdir)/gst/bayer/gstbayerorc.orc + $(MKDIR_P) orc + $(ORCC) --test -o $@ $< + clean-local-orc: rm -rf orc diff --git a/tests/check/Makefile.in b/tests/check/Makefile.in index 17d59f34..606777e7 100644 --- a/tests/check/Makefile.in +++ b/tests/check/Makefile.in @@ -1,4 +1,4 @@ -# Makefile.in generated by automake 1.11.5 from Makefile.am. +# Makefile.in generated by automake 1.11.6 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, @@ -66,8 +66,7 @@ check_PROGRAMS = generic/states$(EXEEXT) $(am__EXEEXT_1) \ elements/autovideoconvert$(EXEEXT) elements/asfmux$(EXEEXT) \ elements/baseaudiovisualizer$(EXEEXT) \ elements/camerabin$(EXEEXT) elements/dataurisrc$(EXEEXT) \ - elements/legacyresample$(EXEEXT) $(am__EXEEXT_13) \ - elements/jpegparse$(EXEEXT) $(am__EXEEXT_14) \ + $(am__EXEEXT_13) elements/jpegparse$(EXEEXT) $(am__EXEEXT_14) \ elements/h263parse$(EXEEXT) elements/h264parse$(EXEEXT) \ elements/mpegtsmux$(EXEEXT) elements/mpegvideoparse$(EXEEXT) \ elements/mpeg4videoparse$(EXEEXT) elements/mxfdemux$(EXEEXT) \ @@ -152,7 +151,7 @@ libparser_la_LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) \ @USE_VP8_TRUE@am__EXEEXT_17 = elements/vp8enc$(EXEEXT) \ @USE_VP8_TRUE@ elements/vp8dec$(EXEEXT) @USE_ZBAR_TRUE@am__EXEEXT_18 = elements/zbar$(EXEEXT) -@HAVE_ORC_TRUE@am__EXEEXT_19 = orc/cog$(EXEEXT) +@HAVE_ORC_TRUE@am__EXEEXT_19 = orc/cog$(EXEEXT) orc/bayer$(EXEEXT) @USE_NEON_TRUE@am__EXEEXT_20 = elements/neonhttpsrc$(EXEEXT) PROGRAMS = $(noinst_PROGRAMS) elements_asfmux_SOURCES = elements/asfmux.c @@ -180,7 +179,7 @@ elements_autovideoconvert_LDADD = $(LDADD) elements_autovideoconvert_DEPENDENCIES = $(am__DEPENDENCIES_1) am_elements_baseaudiovisualizer_OBJECTS = \ elements_baseaudiovisualizer-baseaudiovisualizer.$(OBJEXT) \ - elements_baseaudiovisualizer-gstbaseaudiovisualizer.$(OBJEXT) + elements_baseaudiovisualizer-gstaudiovisualizer.$(OBJEXT) elements_baseaudiovisualizer_OBJECTS = \ $(am_elements_baseaudiovisualizer_OBJECTS) elements_baseaudiovisualizer_DEPENDENCIES = $(am__DEPENDENCIES_1) \ @@ -267,16 +266,6 @@ elements_kate_DEPENDENCIES = $(am__DEPENDENCIES_1) \ elements_kate_LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) \ $(LIBTOOLFLAGS) --mode=link $(CCLD) $(elements_kate_CFLAGS) \ $(CFLAGS) $(AM_LDFLAGS) $(LDFLAGS) -o $@ -elements_legacyresample_SOURCES = elements/legacyresample.c -elements_legacyresample_OBJECTS = \ - elements_legacyresample-legacyresample.$(OBJEXT) -elements_legacyresample_DEPENDENCIES = $(am__DEPENDENCIES_1) \ - $(am__DEPENDENCIES_1) $(am__DEPENDENCIES_1) \ - $(am__DEPENDENCIES_2) -elements_legacyresample_LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC \ - $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=link $(CCLD) \ - $(elements_legacyresample_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) \ - $(LDFLAGS) -o $@ elements_logoinsert_SOURCES = elements/logoinsert.c elements_logoinsert_OBJECTS = logoinsert.$(OBJEXT) elements_logoinsert_LDADD = $(LDADD) @@ -406,6 +395,12 @@ libs_vc1parser_LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC \ $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=link $(CCLD) \ $(libs_vc1parser_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) $(LDFLAGS) -o \ $@ +orc_bayer_SOURCES = orc/bayer.c +orc_bayer_OBJECTS = orc_bayer-bayer.$(OBJEXT) +orc_bayer_DEPENDENCIES = $(am__DEPENDENCIES_1) +orc_bayer_LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) \ + $(LIBTOOLFLAGS) --mode=link $(CCLD) $(orc_bayer_CFLAGS) \ + $(CFLAGS) $(AM_LDFLAGS) $(LDFLAGS) -o $@ orc_cog_SOURCES = orc/cog.c orc_cog_OBJECTS = orc_cog-cog.$(OBJEXT) orc_cog_DEPENDENCIES = $(am__DEPENDENCIES_1) @@ -459,18 +454,17 @@ SOURCES = $(libparser_la_SOURCES) elements/asfmux.c \ elements/curlsmtpsink.c elements/dataurisrc.c elements/faac.c \ elements/faad.c elements/h263parse.c elements/h264parse.c \ elements/id3mux.c $(elements_jifmux_SOURCES) \ - elements/jpegparse.c elements/kate.c elements/legacyresample.c \ - elements/logoinsert.c elements/mpeg2enc.c \ - elements/mpeg4videoparse.c elements/mpegtsmux.c \ - elements/mpegvideoparse.c elements/mplex.c elements/mxfdemux.c \ - elements/mxfmux.c elements/neonhttpsrc.c elements/ofa.c \ - elements/opus.c elements/rtpmux.c elements/schroenc.c \ - elements/timidity.c elements/viewfinderbin.c \ - elements/voaacenc.c elements/voamrwbenc.c elements/vp8dec.c \ - elements/vp8enc.c elements/zbar.c generic/states.c \ - libs/h264parser.c libs/mpegvideoparser.c libs/vc1parser.c \ - orc/cog.c pipelines/colorspace.c pipelines/mimic.c \ - pipelines/mxf.c + elements/jpegparse.c elements/kate.c elements/logoinsert.c \ + elements/mpeg2enc.c elements/mpeg4videoparse.c \ + elements/mpegtsmux.c elements/mpegvideoparse.c \ + elements/mplex.c elements/mxfdemux.c elements/mxfmux.c \ + elements/neonhttpsrc.c elements/ofa.c elements/opus.c \ + elements/rtpmux.c elements/schroenc.c elements/timidity.c \ + elements/viewfinderbin.c elements/voaacenc.c \ + elements/voamrwbenc.c elements/vp8dec.c elements/vp8enc.c \ + elements/zbar.c generic/states.c libs/h264parser.c \ + libs/mpegvideoparser.c libs/vc1parser.c orc/bayer.c orc/cog.c \ + pipelines/colorspace.c pipelines/mimic.c pipelines/mxf.c DIST_SOURCES = $(libparser_la_SOURCES) elements/asfmux.c \ elements/assrender.c elements/autoconvert.c \ elements/autovideoconvert.c \ @@ -480,18 +474,17 @@ DIST_SOURCES = $(libparser_la_SOURCES) elements/asfmux.c \ elements/curlsmtpsink.c elements/dataurisrc.c elements/faac.c \ elements/faad.c elements/h263parse.c elements/h264parse.c \ elements/id3mux.c $(elements_jifmux_SOURCES) \ - elements/jpegparse.c elements/kate.c elements/legacyresample.c \ - elements/logoinsert.c elements/mpeg2enc.c \ - elements/mpeg4videoparse.c elements/mpegtsmux.c \ - elements/mpegvideoparse.c elements/mplex.c elements/mxfdemux.c \ - elements/mxfmux.c elements/neonhttpsrc.c elements/ofa.c \ - elements/opus.c elements/rtpmux.c elements/schroenc.c \ - elements/timidity.c elements/viewfinderbin.c \ - elements/voaacenc.c elements/voamrwbenc.c elements/vp8dec.c \ - elements/vp8enc.c elements/zbar.c generic/states.c \ - libs/h264parser.c libs/mpegvideoparser.c libs/vc1parser.c \ - orc/cog.c pipelines/colorspace.c pipelines/mimic.c \ - pipelines/mxf.c + elements/jpegparse.c elements/kate.c elements/logoinsert.c \ + elements/mpeg2enc.c elements/mpeg4videoparse.c \ + elements/mpegtsmux.c elements/mpegvideoparse.c \ + elements/mplex.c elements/mxfdemux.c elements/mxfmux.c \ + elements/neonhttpsrc.c elements/ofa.c elements/opus.c \ + elements/rtpmux.c elements/schroenc.c elements/timidity.c \ + elements/viewfinderbin.c elements/voaacenc.c \ + elements/voamrwbenc.c elements/vp8dec.c elements/vp8enc.c \ + elements/zbar.c generic/states.c libs/h264parser.c \ + libs/mpegvideoparser.c libs/vc1parser.c orc/bayer.c orc/cog.c \ + pipelines/colorspace.c pipelines/mimic.c pipelines/mxf.c am__can_run_installinfo = \ case $$AM_UPDATE_INFO_DIR in \ n|no|NO) false;; \ @@ -565,11 +558,10 @@ DIRECT3D_LIBS = @DIRECT3D_LIBS@ DIRECTDRAW_LIBS = @DIRECTDRAW_LIBS@ DIRECTFB_CFLAGS = @DIRECTFB_CFLAGS@ DIRECTFB_LIBS = @DIRECTFB_LIBS@ +DIRECTSHOW_LIBS = @DIRECTSHOW_LIBS@ DIRECTSOUND_LIBS = @DIRECTSOUND_LIBS@ DIRECTX_CFLAGS = @DIRECTX_CFLAGS@ DIRECTX_LDFLAGS = @DIRECTX_LDFLAGS@ -DIVXDEC_LIBS = @DIVXDEC_LIBS@ -DIVXENC_LIBS = @DIVXENC_LIBS@ DLLTOOL = @DLLTOOL@ DSYMUTIL = @DSYMUTIL@ DTS_LIBS = @DTS_LIBS@ @@ -604,7 +596,9 @@ GIO_LIBS = @GIO_LIBS@ GLIB_CFLAGS = @GLIB_CFLAGS@ GLIB_COMPILE_SCHEMAS = @GLIB_COMPILE_SCHEMAS@ GLIB_EXTRA_CFLAGS = @GLIB_EXTRA_CFLAGS@ +GLIB_GENMARSHAL = @GLIB_GENMARSHAL@ GLIB_LIBS = @GLIB_LIBS@ +GLIB_MKENUMS = @GLIB_MKENUMS@ GLIB_PREFIX = @GLIB_PREFIX@ GLIB_REQ = @GLIB_REQ@ GME_LIBS = @GME_LIBS@ @@ -680,13 +674,14 @@ HAVE_CXX = @HAVE_CXX@ HAVE_DIRECT3D = @HAVE_DIRECT3D@ HAVE_DIRECT3D9 = @HAVE_DIRECT3D9@ HAVE_DIRECTDRAW = @HAVE_DIRECTDRAW@ +HAVE_DIRECTSHOW = @HAVE_DIRECTSHOW@ HAVE_DIRECTSOUND = @HAVE_DIRECTSOUND@ HAVE_DTS = @HAVE_DTS@ HAVE_FAAC = @HAVE_FAAC@ HAVE_FAAD = @HAVE_FAAD@ HAVE_FLITE = @HAVE_FLITE@ HAVE_GSM = @HAVE_GSM@ -HAVE_JP2K = @HAVE_JP2K@ +HAVE_JASPER = @HAVE_JASPER@ HAVE_NAS = @HAVE_NAS@ HAVE_VPX = @HAVE_VPX@ HAVE_WILDMIDI = @HAVE_WILDMIDI@ @@ -700,7 +695,7 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ INTLLIBS = @INTLLIBS@ INTL_MACOSX_LIBS = @INTL_MACOSX_LIBS@ -JP2K_LIBS = @JP2K_LIBS@ +JASPER_LIBS = @JASPER_LIBS@ KATE_CFLAGS = @KATE_CFLAGS@ KATE_LIBS = @KATE_LIBS@ LD = @LD@ @@ -736,6 +731,8 @@ MODPLUG_CFLAGS = @MODPLUG_CFLAGS@ MODPLUG_LIBS = @MODPLUG_LIBS@ MPEG2ENC_CFLAGS = @MPEG2ENC_CFLAGS@ MPEG2ENC_LIBS = @MPEG2ENC_LIBS@ +MPG123_CFLAGS = @MPG123_CFLAGS@ +MPG123_LIBS = @MPG123_LIBS@ MPLEX_CFLAGS = @MPLEX_CFLAGS@ MPLEX_LDFLAGS = @MPLEX_LDFLAGS@ MPLEX_LIBS = @MPLEX_LIBS@ @@ -986,7 +983,7 @@ SUPPRESSIONS = $(top_srcdir)/common/gst.supp $(srcdir)/gst-plugins-bad.supp @USE_VP8_FALSE@check_vp8 = @USE_VP8_TRUE@check_vp8 = elements/vp8enc elements/vp8dec @HAVE_ORC_FALSE@check_orc = -@HAVE_ORC_TRUE@check_orc = orc/cog +@HAVE_ORC_TRUE@check_orc = orc/cog orc/bayer @USE_ZBAR_FALSE@check_zbar = @USE_ZBAR_TRUE@check_zbar = elements/zbar @USE_OPUS_FALSE@check_opus = @@ -1073,14 +1070,6 @@ elements_faac_LDADD = \ $(GST_PLUGINS_BASE_LIBS) $(GST_BASE_LIBS) $(GST_LIBS) $(LDADD) \ -lgstaudio-@GST_API_VERSION@ -elements_legacyresample_CFLAGS = \ - $(GST_PLUGINS_BASE_CFLAGS) \ - $(GST_BASE_CFLAGS) $(GST_CFLAGS) $(AM_CFLAGS) - -elements_legacyresample_LDADD = \ - $(GST_PLUGINS_BASE_LIBS) $(GST_BASE_LIBS) $(GST_LIBS) $(LDADD) \ - -lgstaudio-@GST_API_VERSION@ - elements_voaacenc_CFLAGS = \ $(GST_PLUGINS_BASE_CFLAGS) \ $(GST_BASE_CFLAGS) $(GST_CFLAGS) $(AM_CFLAGS) @@ -1090,8 +1079,8 @@ elements_voaacenc_LDADD = \ -lgstaudio-@GST_API_VERSION@ elements_baseaudiovisualizer_SOURCES = elements/baseaudiovisualizer.c \ - $(top_srcdir)/gst/audiovisualizers/gstbaseaudiovisualizer.c \ - $(top_srcdir)/gst/audiovisualizers/gstbaseaudiovisualizer.h + $(top_srcdir)/gst/audiovisualizers/gstaudiovisualizer.c \ + $(top_srcdir)/gst/audiovisualizers/gstaudiovisualizer.h elements_baseaudiovisualizer_CFLAGS = $(GST_PLUGINS_BAD_CFLAGS) \ -I$(top_srcdir)/gst/audiovisualizers $(GST_PLUGINS_BASE_CFLAGS) \ @@ -1127,6 +1116,8 @@ elements_assrender_LDADD = $(GST_PLUGINS_BASE_LIBS) -lgstvideo-$(GST_API_VERSION elements_mpegtsmux_CFLAGS = $(GST_PLUGINS_BASE_CFLAGS) $(GST_BASE_CFLAGS) $(AM_CFLAGS) elements_mpegtsmux_LDADD = $(GST_PLUGINS_BASE_LIBS) -lgstvideo-$(GST_API_VERSION) $(GST_BASE_LIBS) $(LDADD) EXTRA_DIST = gst-plugins-bad.supp +orc_bayer_CFLAGS = $(ORC_CFLAGS) +orc_bayer_LDADD = $(ORC_LIBS) -lorc-test-0.4 orc_cog_CFLAGS = $(ORC_CFLAGS) orc_cog_LDADD = $(ORC_LIBS) -lorc-test-0.4 all: all-am @@ -1253,9 +1244,6 @@ elements/jpegparse$(EXEEXT): $(elements_jpegparse_OBJECTS) $(elements_jpegparse_ elements/kate$(EXEEXT): $(elements_kate_OBJECTS) $(elements_kate_DEPENDENCIES) $(EXTRA_elements_kate_DEPENDENCIES) elements/$(am__dirstamp) @rm -f elements/kate$(EXEEXT) $(AM_V_CCLD)$(elements_kate_LINK) $(elements_kate_OBJECTS) $(elements_kate_LDADD) $(LIBS) -elements/legacyresample$(EXEEXT): $(elements_legacyresample_OBJECTS) $(elements_legacyresample_DEPENDENCIES) $(EXTRA_elements_legacyresample_DEPENDENCIES) elements/$(am__dirstamp) - @rm -f elements/legacyresample$(EXEEXT) - $(AM_V_CCLD)$(elements_legacyresample_LINK) $(elements_legacyresample_OBJECTS) $(elements_legacyresample_LDADD) $(LIBS) elements/logoinsert$(EXEEXT): $(elements_logoinsert_OBJECTS) $(elements_logoinsert_DEPENDENCIES) $(EXTRA_elements_logoinsert_DEPENDENCIES) elements/$(am__dirstamp) @rm -f elements/logoinsert$(EXEEXT) $(AM_V_CCLD)$(LINK) $(elements_logoinsert_OBJECTS) $(elements_logoinsert_LDADD) $(LIBS) @@ -1337,6 +1325,9 @@ libs/vc1parser$(EXEEXT): $(libs_vc1parser_OBJECTS) $(libs_vc1parser_DEPENDENCIES orc/$(am__dirstamp): @$(MKDIR_P) orc @: > orc/$(am__dirstamp) +orc/bayer$(EXEEXT): $(orc_bayer_OBJECTS) $(orc_bayer_DEPENDENCIES) $(EXTRA_orc_bayer_DEPENDENCIES) orc/$(am__dirstamp) + @rm -f orc/bayer$(EXEEXT) + $(AM_V_CCLD)$(orc_bayer_LINK) $(orc_bayer_OBJECTS) $(orc_bayer_LDADD) $(LIBS) orc/cog$(EXEEXT): $(orc_cog_OBJECTS) $(orc_cog_DEPENDENCIES) $(EXTRA_orc_cog_DEPENDENCIES) orc/$(am__dirstamp) @rm -f orc/cog$(EXEEXT) $(AM_V_CCLD)$(orc_cog_LINK) $(orc_cog_OBJECTS) $(orc_cog_LDADD) $(LIBS) @@ -1370,13 +1361,12 @@ distclean-compile: @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/dataurisrc.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/elements_assrender-assrender.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/elements_baseaudiovisualizer-baseaudiovisualizer.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/elements_baseaudiovisualizer-gstbaseaudiovisualizer.Po@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/elements_baseaudiovisualizer-gstaudiovisualizer.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/elements_camerabin-camerabin.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/elements_faac-faac.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/elements_faad-faad.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/elements_jifmux-jifmux.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/elements_kate-kate.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/elements_legacyresample-legacyresample.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/elements_mpegtsmux-mpegtsmux.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/elements_rtpmux-rtpmux.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/elements_timidity-timidity.Po@am__quote@ @@ -1401,6 +1391,7 @@ distclean-compile: @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/neonhttpsrc.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/ofa.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/opus.Po@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/orc_bayer-bayer.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/orc_cog-cog.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/schroenc.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/states.Po@am__quote@ @@ -1508,19 +1499,19 @@ elements_baseaudiovisualizer-baseaudiovisualizer.obj: elements/baseaudiovisualiz @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(elements_baseaudiovisualizer_CFLAGS) $(CFLAGS) -c -o elements_baseaudiovisualizer-baseaudiovisualizer.obj `if test -f 'elements/baseaudiovisualizer.c'; then $(CYGPATH_W) 'elements/baseaudiovisualizer.c'; else $(CYGPATH_W) '$(srcdir)/elements/baseaudiovisualizer.c'; fi` -elements_baseaudiovisualizer-gstbaseaudiovisualizer.o: $(top_srcdir)/gst/audiovisualizers/gstbaseaudiovisualizer.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(elements_baseaudiovisualizer_CFLAGS) $(CFLAGS) -MT elements_baseaudiovisualizer-gstbaseaudiovisualizer.o -MD -MP -MF $(DEPDIR)/elements_baseaudiovisualizer-gstbaseaudiovisualizer.Tpo -c -o elements_baseaudiovisualizer-gstbaseaudiovisualizer.o `test -f '$(top_srcdir)/gst/audiovisualizers/gstbaseaudiovisualizer.c' || echo '$(srcdir)/'`$(top_srcdir)/gst/audiovisualizers/gstbaseaudiovisualizer.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/elements_baseaudiovisualizer-gstbaseaudiovisualizer.Tpo $(DEPDIR)/elements_baseaudiovisualizer-gstbaseaudiovisualizer.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='$(top_srcdir)/gst/audiovisualizers/gstbaseaudiovisualizer.c' object='elements_baseaudiovisualizer-gstbaseaudiovisualizer.o' libtool=no @AMDEPBACKSLASH@ +elements_baseaudiovisualizer-gstaudiovisualizer.o: $(top_srcdir)/gst/audiovisualizers/gstaudiovisualizer.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(elements_baseaudiovisualizer_CFLAGS) $(CFLAGS) -MT elements_baseaudiovisualizer-gstaudiovisualizer.o -MD -MP -MF $(DEPDIR)/elements_baseaudiovisualizer-gstaudiovisualizer.Tpo -c -o elements_baseaudiovisualizer-gstaudiovisualizer.o `test -f '$(top_srcdir)/gst/audiovisualizers/gstaudiovisualizer.c' || echo '$(srcdir)/'`$(top_srcdir)/gst/audiovisualizers/gstaudiovisualizer.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/elements_baseaudiovisualizer-gstaudiovisualizer.Tpo $(DEPDIR)/elements_baseaudiovisualizer-gstaudiovisualizer.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='$(top_srcdir)/gst/audiovisualizers/gstaudiovisualizer.c' object='elements_baseaudiovisualizer-gstaudiovisualizer.o' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(elements_baseaudiovisualizer_CFLAGS) $(CFLAGS) -c -o elements_baseaudiovisualizer-gstbaseaudiovisualizer.o `test -f '$(top_srcdir)/gst/audiovisualizers/gstbaseaudiovisualizer.c' || echo '$(srcdir)/'`$(top_srcdir)/gst/audiovisualizers/gstbaseaudiovisualizer.c +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(elements_baseaudiovisualizer_CFLAGS) $(CFLAGS) -c -o elements_baseaudiovisualizer-gstaudiovisualizer.o `test -f '$(top_srcdir)/gst/audiovisualizers/gstaudiovisualizer.c' || echo '$(srcdir)/'`$(top_srcdir)/gst/audiovisualizers/gstaudiovisualizer.c -elements_baseaudiovisualizer-gstbaseaudiovisualizer.obj: $(top_srcdir)/gst/audiovisualizers/gstbaseaudiovisualizer.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(elements_baseaudiovisualizer_CFLAGS) $(CFLAGS) -MT elements_baseaudiovisualizer-gstbaseaudiovisualizer.obj -MD -MP -MF $(DEPDIR)/elements_baseaudiovisualizer-gstbaseaudiovisualizer.Tpo -c -o elements_baseaudiovisualizer-gstbaseaudiovisualizer.obj `if test -f '$(top_srcdir)/gst/audiovisualizers/gstbaseaudiovisualizer.c'; then $(CYGPATH_W) '$(top_srcdir)/gst/audiovisualizers/gstbaseaudiovisualizer.c'; else $(CYGPATH_W) '$(srcdir)/$(top_srcdir)/gst/audiovisualizers/gstbaseaudiovisualizer.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/elements_baseaudiovisualizer-gstbaseaudiovisualizer.Tpo $(DEPDIR)/elements_baseaudiovisualizer-gstbaseaudiovisualizer.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='$(top_srcdir)/gst/audiovisualizers/gstbaseaudiovisualizer.c' object='elements_baseaudiovisualizer-gstbaseaudiovisualizer.obj' libtool=no @AMDEPBACKSLASH@ +elements_baseaudiovisualizer-gstaudiovisualizer.obj: $(top_srcdir)/gst/audiovisualizers/gstaudiovisualizer.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(elements_baseaudiovisualizer_CFLAGS) $(CFLAGS) -MT elements_baseaudiovisualizer-gstaudiovisualizer.obj -MD -MP -MF $(DEPDIR)/elements_baseaudiovisualizer-gstaudiovisualizer.Tpo -c -o elements_baseaudiovisualizer-gstaudiovisualizer.obj `if test -f '$(top_srcdir)/gst/audiovisualizers/gstaudiovisualizer.c'; then $(CYGPATH_W) '$(top_srcdir)/gst/audiovisualizers/gstaudiovisualizer.c'; else $(CYGPATH_W) '$(srcdir)/$(top_srcdir)/gst/audiovisualizers/gstaudiovisualizer.c'; fi` +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/elements_baseaudiovisualizer-gstaudiovisualizer.Tpo $(DEPDIR)/elements_baseaudiovisualizer-gstaudiovisualizer.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='$(top_srcdir)/gst/audiovisualizers/gstaudiovisualizer.c' object='elements_baseaudiovisualizer-gstaudiovisualizer.obj' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(elements_baseaudiovisualizer_CFLAGS) $(CFLAGS) -c -o elements_baseaudiovisualizer-gstbaseaudiovisualizer.obj `if test -f '$(top_srcdir)/gst/audiovisualizers/gstbaseaudiovisualizer.c'; then $(CYGPATH_W) '$(top_srcdir)/gst/audiovisualizers/gstbaseaudiovisualizer.c'; else $(CYGPATH_W) '$(srcdir)/$(top_srcdir)/gst/audiovisualizers/gstbaseaudiovisualizer.c'; fi` +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(elements_baseaudiovisualizer_CFLAGS) $(CFLAGS) -c -o elements_baseaudiovisualizer-gstaudiovisualizer.obj `if test -f '$(top_srcdir)/gst/audiovisualizers/gstaudiovisualizer.c'; then $(CYGPATH_W) '$(top_srcdir)/gst/audiovisualizers/gstaudiovisualizer.c'; else $(CYGPATH_W) '$(srcdir)/$(top_srcdir)/gst/audiovisualizers/gstaudiovisualizer.c'; fi` elements_camerabin-camerabin.o: elements/camerabin.c @am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(elements_camerabin_CFLAGS) $(CFLAGS) -MT elements_camerabin-camerabin.o -MD -MP -MF $(DEPDIR)/elements_camerabin-camerabin.Tpo -c -o elements_camerabin-camerabin.o `test -f 'elements/camerabin.c' || echo '$(srcdir)/'`elements/camerabin.c @@ -1718,20 +1709,6 @@ elements_kate-kate.obj: elements/kate.c @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(elements_kate_CFLAGS) $(CFLAGS) -c -o elements_kate-kate.obj `if test -f 'elements/kate.c'; then $(CYGPATH_W) 'elements/kate.c'; else $(CYGPATH_W) '$(srcdir)/elements/kate.c'; fi` -elements_legacyresample-legacyresample.o: elements/legacyresample.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(elements_legacyresample_CFLAGS) $(CFLAGS) -MT elements_legacyresample-legacyresample.o -MD -MP -MF $(DEPDIR)/elements_legacyresample-legacyresample.Tpo -c -o elements_legacyresample-legacyresample.o `test -f 'elements/legacyresample.c' || echo '$(srcdir)/'`elements/legacyresample.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/elements_legacyresample-legacyresample.Tpo $(DEPDIR)/elements_legacyresample-legacyresample.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='elements/legacyresample.c' object='elements_legacyresample-legacyresample.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(elements_legacyresample_CFLAGS) $(CFLAGS) -c -o elements_legacyresample-legacyresample.o `test -f 'elements/legacyresample.c' || echo '$(srcdir)/'`elements/legacyresample.c - -elements_legacyresample-legacyresample.obj: elements/legacyresample.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(elements_legacyresample_CFLAGS) $(CFLAGS) -MT elements_legacyresample-legacyresample.obj -MD -MP -MF $(DEPDIR)/elements_legacyresample-legacyresample.Tpo -c -o elements_legacyresample-legacyresample.obj `if test -f 'elements/legacyresample.c'; then $(CYGPATH_W) 'elements/legacyresample.c'; else $(CYGPATH_W) '$(srcdir)/elements/legacyresample.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/elements_legacyresample-legacyresample.Tpo $(DEPDIR)/elements_legacyresample-legacyresample.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='elements/legacyresample.c' object='elements_legacyresample-legacyresample.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(elements_legacyresample_CFLAGS) $(CFLAGS) -c -o elements_legacyresample-legacyresample.obj `if test -f 'elements/legacyresample.c'; then $(CYGPATH_W) 'elements/legacyresample.c'; else $(CYGPATH_W) '$(srcdir)/elements/legacyresample.c'; fi` - logoinsert.o: elements/logoinsert.c @am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT logoinsert.o -MD -MP -MF $(DEPDIR)/logoinsert.Tpo -c -o logoinsert.o `test -f 'elements/logoinsert.c' || echo '$(srcdir)/'`elements/logoinsert.c @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/logoinsert.Tpo $(DEPDIR)/logoinsert.Po @@ -2068,6 +2045,20 @@ libs_vc1parser-vc1parser.obj: libs/vc1parser.c @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libs_vc1parser_CFLAGS) $(CFLAGS) -c -o libs_vc1parser-vc1parser.obj `if test -f 'libs/vc1parser.c'; then $(CYGPATH_W) 'libs/vc1parser.c'; else $(CYGPATH_W) '$(srcdir)/libs/vc1parser.c'; fi` +orc_bayer-bayer.o: orc/bayer.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(orc_bayer_CFLAGS) $(CFLAGS) -MT orc_bayer-bayer.o -MD -MP -MF $(DEPDIR)/orc_bayer-bayer.Tpo -c -o orc_bayer-bayer.o `test -f 'orc/bayer.c' || echo '$(srcdir)/'`orc/bayer.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/orc_bayer-bayer.Tpo $(DEPDIR)/orc_bayer-bayer.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='orc/bayer.c' object='orc_bayer-bayer.o' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(orc_bayer_CFLAGS) $(CFLAGS) -c -o orc_bayer-bayer.o `test -f 'orc/bayer.c' || echo '$(srcdir)/'`orc/bayer.c + +orc_bayer-bayer.obj: orc/bayer.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(orc_bayer_CFLAGS) $(CFLAGS) -MT orc_bayer-bayer.obj -MD -MP -MF $(DEPDIR)/orc_bayer-bayer.Tpo -c -o orc_bayer-bayer.obj `if test -f 'orc/bayer.c'; then $(CYGPATH_W) 'orc/bayer.c'; else $(CYGPATH_W) '$(srcdir)/orc/bayer.c'; fi` +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/orc_bayer-bayer.Tpo $(DEPDIR)/orc_bayer-bayer.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='orc/bayer.c' object='orc_bayer-bayer.obj' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(orc_bayer_CFLAGS) $(CFLAGS) -c -o orc_bayer-bayer.obj `if test -f 'orc/bayer.c'; then $(CYGPATH_W) 'orc/bayer.c'; else $(CYGPATH_W) '$(srcdir)/orc/bayer.c'; fi` + orc_cog-cog.o: orc/cog.c @am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(orc_cog_CFLAGS) $(CFLAGS) -MT orc_cog-cog.o -MD -MP -MF $(DEPDIR)/orc_cog-cog.Tpo -c -o orc_cog-cog.o `test -f 'orc/cog.c' || echo '$(srcdir)/'`orc/cog.c @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/orc_cog-cog.Tpo $(DEPDIR)/orc_cog-cog.Po @@ -2629,6 +2620,10 @@ orc/cog.c: $(top_srcdir)/ext/cog/gstcogorc.orc $(MKDIR_P) orc $(ORCC) --test -o $@ $< +orc/bayer.c: $(top_srcdir)/gst/bayer/gstbayerorc.orc + $(MKDIR_P) orc + $(ORCC) --test -o $@ $< + clean-local-orc: rm -rf orc diff --git a/tests/check/elements/baseaudiovisualizer.c b/tests/check/elements/baseaudiovisualizer.c index f1458a28..d66bd7d8 100644 --- a/tests/check/elements/baseaudiovisualizer.c +++ b/tests/check/elements/baseaudiovisualizer.c @@ -24,7 +24,7 @@ #include <gst/gst.h> #include <string.h> -#include "gstbaseaudiovisualizer.h" +#include "gstaudiovisualizer.h" /* dummy subclass for testing */ @@ -36,12 +36,12 @@ typedef struct _GstTestScopeClass GstTestScopeClass; struct _GstTestScope { - GstBaseAudioVisualizer parent; + GstAudioVisualizer parent; }; struct _GstTestScopeClass { - GstBaseAudioVisualizerClass parent_class; + GstAudioVisualizerClass parent_class; }; static GstStaticPadTemplate gst_test_scope_src_template = @@ -64,7 +64,7 @@ GST_STATIC_PAD_TEMPLATE ("sink", static GType gst_test_scope_get_type (void); -G_DEFINE_TYPE (GstTestScope, gst_test_scope, GST_TYPE_BASE_AUDIO_VISUALIZER); +G_DEFINE_TYPE (GstTestScope, gst_test_scope, GST_TYPE_AUDIO_VISUALIZER); static void gst_test_scope_class_init (GstTestScopeClass * g_class) diff --git a/tests/check/elements/camerabin.c b/tests/check/elements/camerabin.c index a5f94a65..da727098 100644 --- a/tests/check/elements/camerabin.c +++ b/tests/check/elements/camerabin.c @@ -42,6 +42,24 @@ #define VIDEO_PAD_SUPPORTED_CAPS "video/x-raw, format=RGB, width=600, height=480" #define IMAGE_PAD_SUPPORTED_CAPS "video/x-raw, format=RGB, width=800, height=600" +static GstStaticPadTemplate vfsrc_template = +GST_STATIC_PAD_TEMPLATE (GST_BASE_CAMERA_SRC_VIEWFINDER_PAD_NAME, + GST_PAD_SRC, + GST_PAD_ALWAYS, + GST_STATIC_CAPS_ANY); + +static GstStaticPadTemplate imgsrc_template = +GST_STATIC_PAD_TEMPLATE (GST_BASE_CAMERA_SRC_IMAGE_PAD_NAME, + GST_PAD_SRC, + GST_PAD_ALWAYS, + GST_STATIC_CAPS_ANY); + +static GstStaticPadTemplate vidsrc_template = +GST_STATIC_PAD_TEMPLATE (GST_BASE_CAMERA_SRC_VIDEO_PAD_NAME, + GST_PAD_SRC, + GST_PAD_ALWAYS, + GST_STATIC_CAPS_ANY); + /* custom test camera src element */ #define GST_TYPE_TEST_CAMERA_SRC \ (gst_test_camera_src_get_type()) @@ -140,12 +158,19 @@ gst_test_camera_src_class_init (GstTestCameraSrcClass * klass) "Camera/Src", "Some test camera src", "Thiago Santos <thiago.sousa.santos@collabora.com>"); + + gst_element_class_add_pad_template (gstelement_class, + gst_static_pad_template_get (&vidsrc_template)); + gst_element_class_add_pad_template (gstelement_class, + gst_static_pad_template_get (&imgsrc_template)); + gst_element_class_add_pad_template (gstelement_class, + gst_static_pad_template_get (&vfsrc_template)); } static void gst_test_camera_src_init (GstTestCameraSrc * self) { - GstElementClass *gstelement_class = GST_ELEMENT_CLASS (parent_class); + GstElementClass *gstelement_class = GST_ELEMENT_GET_CLASS (self); GstPadTemplate *template; /* create pads */ @@ -184,7 +209,7 @@ guint32 test_id = 0; static gchar *image_filename; static gchar *video_filename; -static GstBuffer *preview_buffer; +static GstSample *preview_sample; static gchar *preview_filename; static GstCaps *preview_caps; static GstTagList *tags_found; @@ -290,16 +315,16 @@ capture_bus_cb (GstBus * bus, GstMessage * message, gpointer data) GST_INFO ("image captured"); } else if (st && gst_structure_has_name (st, GST_BASE_CAMERA_SRC_PREVIEW_MESSAGE_NAME)) { - GstBuffer *buf; + GstSample *sample; const GValue *value; - value = gst_structure_get_value (st, "buffer"); + value = gst_structure_get_value (st, "sample"); fail_unless (value != NULL); - buf = gst_value_get_buffer (value); + sample = gst_value_get_sample (value); - if (preview_buffer) - gst_buffer_unref (preview_buffer); - preview_buffer = gst_buffer_ref (buf); + if (preview_sample) + gst_sample_unref (preview_sample); + preview_sample = gst_sample_ref (sample); g_free (preview_filename); preview_filename = g_strdup (gst_structure_get_string (st, "location")); } @@ -313,13 +338,13 @@ check_preview_image (GstElement * camera, const gchar * filename, gint index) { gchar *prev_filename = NULL; - if (!preview_buffer && camera) { + if (!preview_sample && camera) { GstMessage *msg = wait_for_element_message (camera, GST_BASE_CAMERA_SRC_PREVIEW_MESSAGE_NAME, GST_CLOCK_TIME_NONE); fail_unless (msg != NULL); gst_message_unref (msg); } - fail_unless (preview_buffer != NULL); + fail_unless (preview_sample != NULL); if (filename) { if (index >= 0) { prev_filename = g_strdup_printf (filename, index); @@ -330,11 +355,9 @@ check_preview_image (GstElement * camera, const gchar * filename, gint index) fail_unless (strcmp (preview_filename, prev_filename) == 0); } if (preview_caps) { - /* TODO porting - fail_unless (GST_BUFFER_CAPS (preview_buffer) != NULL); - fail_unless (gst_caps_can_intersect (GST_BUFFER_CAPS (preview_buffer), - preview_caps)); - */ + fail_unless (gst_sample_get_caps (preview_sample) != NULL); + fail_unless (gst_caps_can_intersect (gst_sample_get_caps (preview_sample), + preview_caps)); } g_free (prev_filename); } @@ -439,15 +462,15 @@ teardown (void) gst_caps_unref (preview_caps); preview_caps = NULL; - if (preview_buffer) - gst_buffer_unref (preview_buffer); - preview_buffer = NULL; + if (preview_sample) + gst_sample_unref (preview_sample); + preview_sample = NULL; g_free (preview_filename); preview_filename = NULL; if (tags_found) - gst_tag_list_free (tags_found); + gst_tag_list_unref (tags_found); tags_found = NULL; g_free (video_filename); @@ -488,7 +511,7 @@ validity_bus_cb (GstBus * bus, GstMessage * message, gpointer data) gst_message_parse_tag (message, &taglist); if (tags_found) { gst_tag_list_insert (tags_found, taglist, GST_TAG_MERGE_REPLACE); - gst_tag_list_free (taglist); + gst_tag_list_unref (taglist); } else { tags_found = taglist; } @@ -623,16 +646,16 @@ wait_for_element_message (GstElement * camera, const gchar * name, const GstStructure *st = gst_message_get_structure (msg); if (gst_structure_has_name (st, GST_BASE_CAMERA_SRC_PREVIEW_MESSAGE_NAME)) { - GstBuffer *buf; + GstSample *sample; const GValue *value; - value = gst_structure_get_value (st, "buffer"); + value = gst_structure_get_value (st, "sample"); fail_unless (value != NULL); - buf = gst_value_get_buffer (value); + sample = gst_value_get_sample (value); - if (preview_buffer) - gst_buffer_unref (preview_buffer); - preview_buffer = gst_buffer_ref (buf); + if (preview_sample) + gst_sample_unref (preview_sample); + preview_sample = gst_sample_ref (sample); g_free (preview_filename); preview_filename = g_strdup (gst_structure_get_string (st, "location")); @@ -998,9 +1021,9 @@ GST_START_TEST (test_image_capture_previews) check_preview_image (camera, image_filename, i); remove_file (image_filename, i); - if (preview_buffer) - gst_buffer_unref (preview_buffer); - preview_buffer = NULL; + if (preview_sample) + gst_sample_unref (preview_sample); + preview_sample = NULL; gst_caps_replace (&preview_caps, NULL); } @@ -1075,7 +1098,7 @@ GST_START_TEST (test_image_capture_with_tags) for (i = 0; i < 3; i++) { check_file_validity (image_filename, i, taglists[i], 0, 0, NO_AUDIO); - gst_tag_list_free (taglists[i]); + gst_tag_list_unref (taglists[i]); remove_file (image_filename, i); } } @@ -1153,7 +1176,7 @@ GST_START_TEST (test_video_capture_with_tags) for (i = 0; i < 3; i++) { check_file_validity (video_filename, i, taglists[i], 0, 0, NO_AUDIO); - gst_tag_list_free (taglists[i]); + gst_tag_list_unref (taglists[i]); remove_file (video_filename, i); } } diff --git a/tests/check/elements/curlfilesink.c b/tests/check/elements/curlfilesink.c index 088ac40c..66dabe18 100644 --- a/tests/check/elements/curlfilesink.c +++ b/tests/check/elements/curlfilesink.c @@ -37,8 +37,8 @@ cleanup_curlfilesink (GstElement * sink) } static void -test_verify_file_data (const gchar *dir, gchar *file_name, - const gchar *expected_file_content) +test_verify_file_data (const gchar * dir, gchar * file_name, + const gchar * expected_file_content) { GError *err = NULL; gchar *res_file_content = NULL; @@ -55,7 +55,7 @@ test_verify_file_data (const gchar *dir, gchar *file_name, fail_unless (res_file_content != NULL); fail_unless (strncmp (res_file_content, expected_file_content, - strlen (expected_file_content)) == 0); + strlen (expected_file_content)) == 0); g_free (res_file_content); g_unlink (path); g_free (path); @@ -71,7 +71,7 @@ test_set_and_play_buffer (const gchar * _data) num_bytes = strlen (data); buffer = gst_buffer_new (); gst_buffer_insert_memory (buffer, 0, - gst_memory_new_wrapped (GST_MEMORY_FLAG_READONLY, + gst_memory_new_wrapped (GST_MEMORY_FLAG_READONLY, data, num_bytes, 0, num_bytes, data, NULL)); fail_unless (gst_pad_push (srcpad, buffer) == GST_FLOW_OK); @@ -87,46 +87,17 @@ test_set_and_fail_to_play_buffer (const gchar * _data) num_bytes = strlen (data); buffer = gst_buffer_new (); gst_buffer_insert_memory (buffer, 0, - gst_memory_new_wrapped (GST_MEMORY_FLAG_READONLY, + gst_memory_new_wrapped (GST_MEMORY_FLAG_READONLY, data, num_bytes, 0, num_bytes, data, NULL)); fail_unless (gst_pad_push (srcpad, buffer) == GST_FLOW_ERROR); } -static gboolean -sebras_gst_pad_set_caps (GstPad * pad, GstCaps * caps) -{ - GstEvent *event; - gboolean res = TRUE; - - GST_WARNING ("sebraz: a %p %p", pad, caps); - g_return_val_if_fail (GST_IS_PAD (pad), FALSE); - GST_WARNING ("sebraz: b"); - g_return_val_if_fail (caps != NULL && gst_caps_is_fixed (caps), FALSE); - GST_WARNING ("sebraz: c"); - - GST_WARNING ("sebraz: d"); - event = gst_event_new_caps (caps); - GST_WARNING ("sebraz: e"); - - if (GST_PAD_IS_SRC (pad)) { - GST_WARNING ("sebraz: f1"); - res = gst_pad_push_event (pad, event); - } else { - GST_WARNING ("sebraz: f2"); - res = gst_pad_send_event (pad, event); - } - - GST_WARNING ("sebraz: g"); - - return res; -} - GST_START_TEST (test_properties) { GstElement *sink; GstCaps *caps; - const gchar *location= "file:///tmp/"; + const gchar *location = "file:///tmp/"; const gchar *file_contents = "line 1\r\n"; gchar *file_name = g_strdup_printf ("curlfilesink_%d", g_random_int ()); gchar *res_location = NULL; @@ -134,72 +105,48 @@ GST_START_TEST (test_properties) gboolean res_create_dirs = FALSE; gchar *path = NULL; - GST_WARNING ("sebras: a"); - sink = setup_curlfilesink (); - GST_WARNING ("sebras: b"); g_object_set (G_OBJECT (sink), "location", "mylocation", NULL); g_object_set (G_OBJECT (sink), "file-name", "myfile", NULL); g_object_set (G_OBJECT (sink), "create-dirs", TRUE, NULL); - GST_WARNING ("sebras: c"); g_object_get (sink, "location", &res_location, - "file-name", &res_file_name, - "create-dirs", &res_create_dirs, - NULL); - GST_WARNING ("sebras: d"); + "file-name", &res_file_name, "create-dirs", &res_create_dirs, NULL); fail_unless (strncmp (res_location, "mylocation", strlen ("mylocation")) == 0); - GST_WARNING ("sebras: e"); fail_unless (strncmp (res_file_name, "myfile", strlen ("myfile")) == 0); - GST_WARNING ("sebras: f"); fail_unless (res_create_dirs == TRUE); - GST_WARNING ("sebras: g"); g_free (res_location); g_free (res_file_name); - GST_WARNING ("sebras: h"); /* change properties */ g_object_set (G_OBJECT (sink), "location", location, NULL); g_object_set (G_OBJECT (sink), "file-name", file_name, NULL); g_object_set (G_OBJECT (sink), "create-dirs", FALSE, NULL); - GST_WARNING ("sebras: i"); g_object_get (sink, "location", &res_location, - "file-name", &res_file_name, - "create-dirs", &res_create_dirs, - NULL); - GST_WARNING ("sebras: j"); + "file-name", &res_file_name, "create-dirs", &res_create_dirs, NULL); fail_unless (strncmp (res_location, location, strlen (location)) == 0); - GST_WARNING ("sebras: k"); fail_unless (strncmp (res_file_name, file_name, strlen (file_name)) == 0); - GST_WARNING ("sebras: l"); fail_unless (res_create_dirs == FALSE); - GST_WARNING ("sebras: m"); g_free (res_location); g_free (res_file_name); - GST_WARNING ("sebras: n"); /* start playing */ ASSERT_SET_STATE (sink, GST_STATE_PLAYING, GST_STATE_CHANGE_ASYNC); - GST_WARNING ("sebras: o"); caps = gst_caps_from_string ("application/x-gst-check"); - GST_WARNING ("sebras: p"); - fail_unless (sebras_gst_pad_set_caps (srcpad, caps)); fail_unless (gst_pad_set_caps (srcpad, caps)); - GST_WARNING ("sebras: q"); /* setup buffer */ test_set_and_play_buffer (file_contents); - GST_WARNING ("sebras: r"); /* try to change location property while in PLAYING state */ g_object_set (G_OBJECT (sink), "location", "newlocation", NULL); @@ -222,13 +169,14 @@ GST_START_TEST (test_properties) g_free (file_name); g_free (path); } + GST_END_TEST; GST_START_TEST (test_one_file) { GstElement *sink; GstCaps *caps; - const gchar *location= "file:///tmp/"; + const gchar *location = "file:///tmp/"; gchar *file_name = g_strdup_printf ("curlfilesink_%d", g_random_int ()); const gchar *file_content = "line 1\r\n"; gchar *res_location = NULL; @@ -240,9 +188,7 @@ GST_START_TEST (test_one_file) g_object_set (G_OBJECT (sink), "file-name", file_name, NULL); g_object_get (sink, - "location", &res_location, - "file-name", &res_file_name, - NULL); + "location", &res_location, "file-name", &res_file_name, NULL); fail_unless (strncmp (res_location, location, strlen (location)) == 0); @@ -270,20 +216,19 @@ GST_START_TEST (test_one_file) /* verify file content */ test_verify_file_data ("/tmp", file_name, file_content); } + GST_END_TEST; GST_START_TEST (test_one_big_file) { GstElement *sink; GstCaps *caps; - const gchar *location= "file:///tmp/"; + const gchar *location = "file:///tmp/"; gchar *file_name = g_strdup_printf ("curlfilesink_%d", g_random_int ()); const gchar *file_line1 = "line 1\r\n"; const gchar *file_line2 = "line 2\r\n"; const gchar *file_line3 = "line 3\r\n"; - const gchar *expected_file_content = "line 1\r\n" \ - "line 2\r\n" \ - "line 3\r\n"; + const gchar *expected_file_content = "line 1\r\n" "line 2\r\n" "line 3\r\n"; gchar *res_location = NULL; gchar *res_file_name = NULL; @@ -293,9 +238,7 @@ GST_START_TEST (test_one_big_file) g_object_set (G_OBJECT (sink), "file-name", file_name, NULL); g_object_get (sink, - "location", &res_location, - "file-name", &res_file_name, - NULL); + "location", &res_location, "file-name", &res_file_name, NULL); fail_unless (strncmp (res_location, location, strlen (location)) == 0); @@ -329,13 +272,14 @@ GST_START_TEST (test_one_big_file) /* verify file content */ test_verify_file_data ("/tmp", file_name, expected_file_content); } + GST_END_TEST; GST_START_TEST (test_two_files) { GstElement *sink; GstCaps *caps; - const gchar *location= "file:///tmp/"; + const gchar *location = "file:///tmp/"; gchar *file_name1 = g_strdup_printf ("curlfilesink_%d", g_random_int ()); gchar *file_name2 = g_strdup_printf ("curlfilesink_%d", g_random_int ()); const gchar *file_content1 = "file content 1\r\n"; @@ -349,9 +293,7 @@ GST_START_TEST (test_two_files) g_object_set (G_OBJECT (sink), "file-name", file_name1, NULL); g_object_get (sink, - "location", &res_location, - "file-name", &res_file_name, - NULL); + "location", &res_location, "file-name", &res_file_name, NULL); fail_unless (strncmp (res_location, location, strlen (location)) == 0); @@ -389,6 +331,7 @@ GST_START_TEST (test_two_files) test_verify_file_data ("/tmp", file_name1, file_content1); test_verify_file_data ("/tmp", file_name2, file_content2); } + GST_END_TEST; GST_START_TEST (test_create_dirs) @@ -441,14 +384,16 @@ GST_START_TEST (test_create_dirs) g_free (sub_sub_dir); g_free (sub_dir); g_free (tmp_dir); + g_free (location); } + GST_END_TEST; GST_START_TEST (test_missing_path) { GstElement *sink; GstCaps *caps; - const gchar *location= "file:///missing/path/"; + const gchar *location = "file:///missing/path/"; gchar *file_name = g_strdup_printf ("curlfilesink_%d", g_random_int ()); const gchar *file_content = "line 1\r\n"; gchar *res_location = NULL; @@ -460,9 +405,7 @@ GST_START_TEST (test_missing_path) g_object_set (G_OBJECT (sink), "file-name", file_name, NULL); g_object_get (sink, - "location", &res_location, - "file-name", &res_file_name, - NULL); + "location", &res_location, "file-name", &res_file_name, NULL); fail_unless (strncmp (res_location, location, strlen (location)) == 0); @@ -471,6 +414,7 @@ GST_START_TEST (test_missing_path) g_free (res_location); g_free (res_file_name); + g_free (file_name); /* start playing */ ASSERT_SET_STATE (sink, GST_STATE_PLAYING, GST_STATE_CHANGE_ASYNC); @@ -487,6 +431,7 @@ GST_START_TEST (test_missing_path) gst_caps_unref (caps); cleanup_curlfilesink (sink); } + GST_END_TEST; static Suite * diff --git a/tests/check/elements/id3mux.c b/tests/check/elements/id3mux.c index b494c2ea..ff45926e 100644 --- a/tests/check/elements/id3mux.c +++ b/tests/check/elements/id3mux.c @@ -450,7 +450,7 @@ test_taglib_id3mux_with_tags (GstTagList * tags, guint32 mask, int v2version) GST_LOG ("Got tags: %" GST_PTR_FORMAT, tags_read); test_taglib_id3mux_check_tags (tags_read, mask, v2version); - gst_tag_list_free (tags_read); + gst_tag_list_unref (tags_read); fail_unless (tagbuf != NULL); test_taglib_id3mux_check_tag_buffer (tagbuf, mask, v2version); @@ -494,7 +494,7 @@ run_id3mux_test (int v2version) /* internal consistency check */ tags = test_taglib_id3mux_create_tags (0xFFFFFFFF); test_taglib_id3mux_check_tags (tags, 0xFFFFFFFF, v2version); - gst_tag_list_free (tags); + gst_tag_list_unref (tags); /* now the real tests */ for (i = 0; i < 50; ++i) { @@ -517,7 +517,7 @@ run_id3mux_test (int v2version) test_taglib_id3mux_with_tags (tags, mask, v2version); /* free tags */ - gst_tag_list_free (tags); + gst_tag_list_unref (tags); } } diff --git a/tests/check/elements/jifmux.c b/tests/check/elements/jifmux.c index dbc004ec..0f129086 100644 --- a/tests/check/elements/jifmux.c +++ b/tests/check/elements/jifmux.c @@ -314,15 +314,13 @@ compare_ ## name (ExifEntry * entry, ExifTagCheckData * testdata) \ if (!gst_tag_list_get_string_index (testdata->taglist, \ gst_tag, 0, &str_tag)) { \ /* fail the test if we can't get the tag */ \ - GST_WARNING ("Failed to get %s from taglist", gst_tag); \ - fail (); \ + fail ("Failed to get %s from taglist", gst_tag); \ } \ \ value = __exif_tag_ ## name ## _to_exif_value (str_tag); \ \ if (value == -1) { \ - GST_WARNING ("Invalid %s tag value: %s", gst_tag, str_tag); \ - fail (); \ + fail ("Invalid %s tag value: %s", gst_tag, str_tag); \ } \ \ if (entry->format == EXIF_TYPE_SHORT) \ @@ -332,9 +330,8 @@ compare_ ## name (ExifEntry * entry, ExifTagCheckData * testdata) \ exif_value = (gint) entry->data[0]; \ \ if (value != exif_value) { \ - GST_WARNING ("Gstreamer tag value (%d) is different from libexif (%d)", \ + fail ("Gstreamer tag value (%d) is different from libexif (%d)", \ value, exif_value); \ - fail (); \ } \ \ testdata->result = TRUE; \ @@ -503,7 +500,7 @@ compare_flash (ExifEntry * entry, ExifTagCheckData * testdata) } else if (strcmp (flash_mode, "never") == 0) { fail_unless (((flags >> 3) & 0x3) == 2); } else { - fail (); + fail ("unexpected flash mode"); } testdata->result = TRUE; } @@ -889,13 +886,14 @@ check_content (ExifContent * content, void *user_data) case EXIF_TYPE_UNDEFINED:{ GstMapInfo map; GstBuffer *buf; + GstSample *sample; gint i; - if (!gst_tag_list_get_buffer_index (test_data->taglist, - tag_map[tagindex].gst_tag, 0, &buf)) { + if (!gst_tag_list_get_sample_index (test_data->taglist, + tag_map[tagindex].gst_tag, 0, &sample)) { return; } - + buf = gst_sample_get_buffer (sample); gst_buffer_map (buf, &map, GST_MAP_READ); fail_unless (entry->size, map.size); for (i = 0; i < map.size; i++) { @@ -904,11 +902,11 @@ check_content (ExifContent * content, void *user_data) gst_buffer_unmap (buf, &map); test_data->result = TRUE; - gst_buffer_unref (buf); + gst_sample_unref (sample); } break; default: - fail (); + fail ("unexpected exif type %d", entry->format); } } @@ -978,7 +976,7 @@ generate_jif_file_with_tags (const gchar * tags, const gchar * filepath) taglist = gst_tag_list_new_from_string (tags); generate_jif_file_with_tags_from_taglist (taglist, filepath); - gst_tag_list_free (taglist); + gst_tag_list_unref (taglist); } static void @@ -1012,7 +1010,7 @@ libexif_check_tags (const gchar * tags, const gchar * filepath) libexif_check_tags_from_taglist (taglist, filepath); - gst_tag_list_free (taglist); + gst_tag_list_unref (taglist); } GST_START_TEST (test_jifmux_tags) @@ -1071,7 +1069,7 @@ GST_START_TEST (test_jifmux_tags) gst_buffer_unref (buffer); generate_jif_file_with_tags_from_taglist (taglist, tmpfile); libexif_check_tags_from_taglist (taglist, tmpfile); - gst_tag_list_free (taglist); + gst_tag_list_unref (taglist); #define IMAGE_ORIENTATION_TAG(t) "taglist," GST_TAG_IMAGE_ORIENTATION "=" t generate_jif_file_with_tags (IMAGE_ORIENTATION_TAG ("rotate-0"), tmpfile); diff --git a/tests/check/elements/kate.c b/tests/check/elements/kate.c index d1d9218b..c33c8f92 100644 --- a/tests/check/elements/kate.c +++ b/tests/check/elements/kate.c @@ -362,7 +362,7 @@ GST_START_TEST (test_kate_identification_header) fail_unless (gst_tag_list_get_string (tag_list, GST_TAG_TITLE, &title)); fail_unless_equals_string (title, "Tiger"); g_free (title); - gst_tag_list_free (tag_list); + gst_tag_list_unref (tag_list); gst_message_unref (message); /* cleanup */ diff --git a/tests/check/elements/legacyresample.c b/tests/check/elements/legacyresample.c deleted file mode 100644 index 3c1bda3d..00000000 --- a/tests/check/elements/legacyresample.c +++ /dev/null @@ -1,574 +0,0 @@ -/* GStreamer - * - * unit test for legacyresample - * - * Copyright (C) <2005> Thomas Vander Stichele <thomas at apestaart dot org> - * Copyright (C) <2006> Tim-Philipp Müller <tim at centricular net> - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Library General Public - * License as published by the Free Software Foundation; either - * version 2 of the License, or (at your option) any later version. - * - * This library 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 - * Library General Public License for more details. - * - * You should have received a copy of the GNU Library General Public - * License along with this library; if not, write to the - * Free Software Foundation, Inc., 59 Temple Place - Suite 330, - * Boston, MA 02111-1307, USA. - */ - -#include <unistd.h> - -#include <gst/check/gstcheck.h> -#include <gst/audio/audio.h> - -/* For ease of programming we use globals to keep refs for our floating - * src and sink pads we create; otherwise we always have to do get_pad, - * get_peer, and then remove references in every test function */ -static GstPad *mysrcpad, *mysinkpad; - - -#define RESAMPLE_CAPS_TEMPLATE_STRING \ - "audio/x-raw, " \ - "format = (string) " GST_AUDIO_NE (S16) ", " \ - "channels = (int) [ 1, MAX ], " \ - "rate = (int) [ 1, MAX ]" - -static GstStaticPadTemplate sinktemplate = GST_STATIC_PAD_TEMPLATE ("sink", - GST_PAD_SINK, - GST_PAD_ALWAYS, - GST_STATIC_CAPS (RESAMPLE_CAPS_TEMPLATE_STRING) - ); -static GstStaticPadTemplate srctemplate = GST_STATIC_PAD_TEMPLATE ("src", - GST_PAD_SRC, - GST_PAD_ALWAYS, - GST_STATIC_CAPS (RESAMPLE_CAPS_TEMPLATE_STRING) - ); - -static GstElement * -setup_legacyresample (int channels, int inrate, int outrate) -{ - GstElement *legacyresample; - GstCaps *caps; - GstStructure *structure; - - GST_DEBUG ("setup_legacyresample"); - legacyresample = gst_check_setup_element ("legacyresample"); - - caps = gst_caps_from_string (RESAMPLE_CAPS_TEMPLATE_STRING); - structure = gst_caps_get_structure (caps, 0); - gst_structure_set (structure, "channels", G_TYPE_INT, channels, - "rate", G_TYPE_INT, inrate, NULL); - fail_unless (gst_caps_is_fixed (caps)); - - fail_unless (gst_element_set_state (legacyresample, - GST_STATE_PAUSED) == GST_STATE_CHANGE_SUCCESS, - "could not set to paused"); - - mysrcpad = gst_check_setup_src_pad (legacyresample, &srctemplate); - gst_pad_set_active (mysrcpad, TRUE); - fail_unless (gst_pad_set_caps (mysrcpad, caps)); - gst_caps_unref (caps); - - caps = gst_caps_from_string (RESAMPLE_CAPS_TEMPLATE_STRING); - structure = gst_caps_get_structure (caps, 0); - gst_structure_set (structure, "channels", G_TYPE_INT, channels, - "rate", G_TYPE_INT, outrate, NULL); - fail_unless (gst_caps_is_fixed (caps)); - - mysinkpad = gst_check_setup_sink_pad (legacyresample, &sinktemplate); - gst_pad_set_active (mysinkpad, TRUE); - /* this installs a getcaps func that will always return the caps we set - * later */ - fail_unless (gst_pad_set_caps (mysinkpad, caps)); - gst_pad_use_fixed_caps (mysinkpad); - gst_caps_unref (caps); - - return legacyresample; -} - -static void -cleanup_legacyresample (GstElement * legacyresample) -{ - GST_DEBUG ("cleanup_legacyresample"); - - fail_unless (gst_element_set_state (legacyresample, - GST_STATE_NULL) == GST_STATE_CHANGE_SUCCESS, "could not set to NULL"); - - gst_pad_set_active (mysrcpad, FALSE); - gst_pad_set_active (mysinkpad, FALSE); - gst_check_teardown_src_pad (legacyresample); - gst_check_teardown_sink_pad (legacyresample); - gst_check_teardown_element (legacyresample); -} - -static void -fail_unless_perfect_stream (void) -{ - guint64 timestamp = 0L, duration = 0L; - guint64 offset = 0L, offset_end = 0L; - - GList *l; - GstBuffer *buffer; - - for (l = buffers; l; l = l->next) { - buffer = GST_BUFFER (l->data); - ASSERT_BUFFER_REFCOUNT (buffer, "buffer", 1); - GST_DEBUG ("buffer timestamp %" G_GUINT64_FORMAT ", duration %" - G_GUINT64_FORMAT " offset %" G_GUINT64_FORMAT " offset_end %" - G_GUINT64_FORMAT, - GST_BUFFER_TIMESTAMP (buffer), - GST_BUFFER_DURATION (buffer), - GST_BUFFER_OFFSET (buffer), GST_BUFFER_OFFSET_END (buffer)); - - fail_unless_equals_uint64 (timestamp, GST_BUFFER_TIMESTAMP (buffer)); - fail_unless_equals_uint64 (offset, GST_BUFFER_OFFSET (buffer)); - duration = GST_BUFFER_DURATION (buffer); - offset_end = GST_BUFFER_OFFSET_END (buffer); - - timestamp += duration; - offset = offset_end; - gst_buffer_unref (buffer); - } - g_list_free (buffers); - buffers = NULL; -} - -/* this tests that the output is a perfect stream if the input is */ -static void -test_perfect_stream_instance (int inrate, int outrate, int samples, - int numbuffers) -{ - GstElement *legacyresample; - GstBuffer *inbuffer, *outbuffer; - GstCaps *caps; - guint64 offset = 0; - - int i, j; - gint16 *p; - - legacyresample = setup_legacyresample (2, inrate, outrate); - caps = gst_pad_get_current_caps (mysrcpad); - fail_unless (gst_caps_is_fixed (caps)); - - fail_unless (gst_element_set_state (legacyresample, - GST_STATE_PLAYING) == GST_STATE_CHANGE_SUCCESS, - "could not set to playing"); - - for (j = 1; j <= numbuffers; ++j) { - GstMapInfo map; - - inbuffer = gst_buffer_new_and_alloc (samples * 4); - GST_BUFFER_DURATION (inbuffer) = samples * GST_SECOND / inrate; - GST_BUFFER_TIMESTAMP (inbuffer) = GST_BUFFER_DURATION (inbuffer) * (j - 1); - GST_BUFFER_OFFSET (inbuffer) = offset; - offset += samples; - GST_BUFFER_OFFSET_END (inbuffer) = offset; - - gst_buffer_map (inbuffer, &map, GST_MAP_WRITE); - p = (gint16 *) map.data; - - /* create a 16 bit signed ramp */ - for (i = 0; i < samples; ++i) { - *p = -32767 + i * (65535 / samples); - ++p; - *p = -32767 + i * (65535 / samples); - ++p; - } - gst_buffer_unmap (inbuffer, &map); - - /* pushing gives away my reference ... */ - fail_unless (gst_pad_push (mysrcpad, inbuffer) == GST_FLOW_OK); - /* ... but it ends up being collected on the global buffer list */ - fail_unless_equals_int (g_list_length (buffers), j); - } - - /* FIXME: we should make legacyresample handle eos by flushing out the last - * samples, which will give us one more, small, buffer */ - fail_if ((outbuffer = (GstBuffer *) buffers->data) == NULL); - ASSERT_BUFFER_REFCOUNT (outbuffer, "outbuffer", 1); - - fail_unless_perfect_stream (); - - /* cleanup */ - gst_caps_unref (caps); - cleanup_legacyresample (legacyresample); -} - - -/* make sure that outgoing buffers are contiguous in timestamp/duration and - * offset/offsetend - */ -GST_START_TEST (test_perfect_stream) -{ - /* integral scalings */ - test_perfect_stream_instance (48000, 24000, 500, 20); - test_perfect_stream_instance (48000, 12000, 500, 20); - test_perfect_stream_instance (12000, 24000, 500, 20); - test_perfect_stream_instance (12000, 48000, 500, 20); - - /* non-integral scalings */ - test_perfect_stream_instance (44100, 8000, 500, 20); - test_perfect_stream_instance (8000, 44100, 500, 20); - - /* wacky scalings */ - test_perfect_stream_instance (12345, 54321, 500, 20); - test_perfect_stream_instance (101, 99, 500, 20); -} - -GST_END_TEST; - -/* this tests that the output is a correct discontinuous stream - * if the input is; ie input drops in time come out the same way */ -static void -test_discont_stream_instance (int inrate, int outrate, int samples, - int numbuffers) -{ - GstElement *legacyresample; - GstBuffer *inbuffer, *outbuffer; - GstCaps *caps; - GstClockTime ints; - - int i, j; - gint16 *p; - - GST_DEBUG ("inrate:%d outrate:%d samples:%d numbuffers:%d", - inrate, outrate, samples, numbuffers); - - legacyresample = setup_legacyresample (2, inrate, outrate); - caps = gst_pad_get_current_caps (mysrcpad); - fail_unless (gst_caps_is_fixed (caps)); - - fail_unless (gst_element_set_state (legacyresample, - GST_STATE_PLAYING) == GST_STATE_CHANGE_SUCCESS, - "could not set to playing"); - - for (j = 1; j <= numbuffers; ++j) { - GstMapInfo map; - - inbuffer = gst_buffer_new_and_alloc (samples * 4); - GST_BUFFER_DURATION (inbuffer) = samples * GST_SECOND / inrate; - /* "drop" half the buffers */ - ints = GST_BUFFER_DURATION (inbuffer) * 2 * (j - 1); - GST_BUFFER_TIMESTAMP (inbuffer) = ints; - GST_BUFFER_OFFSET (inbuffer) = (j - 1) * 2 * samples; - GST_BUFFER_OFFSET_END (inbuffer) = j * 2 * samples + samples; - - gst_buffer_map (inbuffer, &map, GST_MAP_WRITE); - p = (gint16 *) map.data; - - /* create a 16 bit signed ramp */ - for (i = 0; i < samples; ++i) { - *p = -32767 + i * (65535 / samples); - ++p; - *p = -32767 + i * (65535 / samples); - ++p; - } - gst_buffer_unmap (inbuffer, &map); - - GST_DEBUG ("Sending Buffer time:%" G_GUINT64_FORMAT " duration:%" - G_GINT64_FORMAT " discont:%d offset:%" G_GUINT64_FORMAT " offset_end:%" - G_GUINT64_FORMAT, GST_BUFFER_TIMESTAMP (inbuffer), - GST_BUFFER_DURATION (inbuffer), GST_BUFFER_IS_DISCONT (inbuffer), - GST_BUFFER_OFFSET (inbuffer), GST_BUFFER_OFFSET_END (inbuffer)); - /* pushing gives away my reference ... */ - fail_unless (gst_pad_push (mysrcpad, inbuffer) == GST_FLOW_OK); - - /* check if the timestamp of the pushed buffer matches the incoming one */ - outbuffer = g_list_nth_data (buffers, g_list_length (buffers) - 1); - fail_if (outbuffer == NULL); - fail_unless_equals_uint64 (ints, GST_BUFFER_TIMESTAMP (outbuffer)); - GST_DEBUG ("Got Buffer time:%" G_GUINT64_FORMAT " duration:%" - G_GINT64_FORMAT " discont:%d offset:%" G_GUINT64_FORMAT " offset_end:%" - G_GUINT64_FORMAT, GST_BUFFER_TIMESTAMP (outbuffer), - GST_BUFFER_DURATION (outbuffer), GST_BUFFER_IS_DISCONT (outbuffer), - GST_BUFFER_OFFSET (outbuffer), GST_BUFFER_OFFSET_END (outbuffer)); - if (j > 1) { - fail_unless (GST_BUFFER_IS_DISCONT (outbuffer), - "expected discont for buffer #%d", j); - } - } - - /* cleanup */ - gst_caps_unref (caps); - cleanup_legacyresample (legacyresample); -} - -GST_START_TEST (test_discont_stream) -{ - /* integral scalings */ - test_discont_stream_instance (48000, 24000, 500, 20); - test_discont_stream_instance (48000, 12000, 500, 20); - test_discont_stream_instance (12000, 24000, 500, 20); - test_discont_stream_instance (12000, 48000, 500, 20); - - /* non-integral scalings */ - test_discont_stream_instance (44100, 8000, 500, 20); - test_discont_stream_instance (8000, 44100, 500, 20); - - /* wacky scalings */ - test_discont_stream_instance (12345, 54321, 500, 20); - test_discont_stream_instance (101, 99, 500, 20); -} - -GST_END_TEST; - - - -GST_START_TEST (test_reuse) -{ - GstElement *legacyresample; - GstEvent *newseg; - GstBuffer *inbuffer; - GstCaps *caps; - GstSegment seg; - - legacyresample = setup_legacyresample (1, 9343, 48000); - caps = gst_pad_get_current_caps (mysrcpad); - fail_unless (gst_caps_is_fixed (caps)); - - fail_unless (gst_element_set_state (legacyresample, - GST_STATE_PLAYING) == GST_STATE_CHANGE_SUCCESS, - "could not set to playing"); - - gst_segment_init (&seg, GST_FORMAT_TIME); - newseg = gst_event_new_segment (&seg); - fail_unless (gst_pad_push_event (mysrcpad, newseg) != FALSE); - - inbuffer = gst_buffer_new_and_alloc (9343 * 4); - gst_buffer_memset (inbuffer, 0, 0, -1); - GST_BUFFER_DURATION (inbuffer) = GST_SECOND; - GST_BUFFER_TIMESTAMP (inbuffer) = 0; - GST_BUFFER_OFFSET (inbuffer) = 0; - - /* pushing gives away my reference ... */ - fail_unless (gst_pad_push (mysrcpad, inbuffer) == GST_FLOW_OK); - - /* ... but it ends up being collected on the global buffer list */ - fail_unless_equals_int (g_list_length (buffers), 1); - - /* now reset and try again ... */ - fail_unless (gst_element_set_state (legacyresample, - GST_STATE_NULL) == GST_STATE_CHANGE_SUCCESS, "could not set to NULL"); - - fail_unless (gst_element_set_state (legacyresample, - GST_STATE_PLAYING) == GST_STATE_CHANGE_SUCCESS, - "could not set to playing"); - - gst_segment_init (&seg, GST_FORMAT_TIME); - newseg = gst_event_new_segment (&seg); - fail_unless (gst_pad_push_event (mysrcpad, newseg) != FALSE); - - inbuffer = gst_buffer_new_and_alloc (9343 * 4); - gst_buffer_memset (inbuffer, 0, 0, -1); - GST_BUFFER_DURATION (inbuffer) = GST_SECOND; - GST_BUFFER_TIMESTAMP (inbuffer) = 0; - GST_BUFFER_OFFSET (inbuffer) = 0; - - fail_unless (gst_pad_push (mysrcpad, inbuffer) == GST_FLOW_OK); - - /* ... it also ends up being collected on the global buffer list. If we - * now have more than 2 buffers, then legacyresample probably didn't clean - * up its internal buffer properly and tried to push the remaining samples - * when it got the second NEWSEGMENT event */ - fail_unless_equals_int (g_list_length (buffers), 2); - - cleanup_legacyresample (legacyresample); - gst_caps_unref (caps); -} - -GST_END_TEST; - -GST_START_TEST (test_shutdown) -{ - GstElement *pipeline, *src, *cf1, *ar, *cf2, *sink; - GstCaps *caps; - guint i; - - /* create pipeline, force legacyresample to actually resample */ - pipeline = gst_pipeline_new (NULL); - - src = gst_check_setup_element ("audiotestsrc"); - cf1 = gst_check_setup_element ("capsfilter"); - ar = gst_check_setup_element ("legacyresample"); - cf2 = gst_check_setup_element ("capsfilter"); - g_object_set (cf2, "name", "capsfilter2", NULL); - sink = gst_check_setup_element ("fakesink"); - - caps = - gst_caps_new_simple ("audio/x-raw-int", "rate", G_TYPE_INT, 11025, NULL); - g_object_set (cf1, "caps", caps, NULL); - gst_caps_unref (caps); - - caps = - gst_caps_new_simple ("audio/x-raw-int", "rate", G_TYPE_INT, 48000, NULL); - g_object_set (cf2, "caps", caps, NULL); - gst_caps_unref (caps); - - /* don't want to sync against the clock, the more throughput the better */ - g_object_set (src, "is-live", FALSE, NULL); - g_object_set (sink, "sync", FALSE, NULL); - - gst_bin_add_many (GST_BIN (pipeline), src, cf1, ar, cf2, sink, NULL); - fail_if (!gst_element_link_many (src, cf1, ar, cf2, sink, NULL)); - - /* now, wait until pipeline is running and then shut it down again; repeat */ - for (i = 0; i < 20; ++i) { - gst_element_set_state (pipeline, GST_STATE_PAUSED); - gst_element_get_state (pipeline, NULL, NULL, -1); - gst_element_set_state (pipeline, GST_STATE_PLAYING); - g_usleep (100); - gst_element_set_state (pipeline, GST_STATE_NULL); - } - - gst_object_unref (pipeline); -} - -GST_END_TEST; - -#if 0 -static GstFlowReturn -live_switch_alloc_only_48000 (GstPad * pad, guint64 offset, - guint size, GstCaps * caps, GstBuffer ** buf) -{ - GstStructure *structure; - gint rate; - gint channels; - GstCaps *desired; - - structure = gst_caps_get_structure (caps, 0); - fail_unless (gst_structure_get_int (structure, "rate", &rate)); - fail_unless (gst_structure_get_int (structure, "channels", &channels)); - - if (rate < 48000) - return GST_FLOW_NOT_NEGOTIATED; - - desired = gst_caps_copy (caps); - gst_caps_set_simple (desired, "rate", G_TYPE_INT, 48000, NULL); - - *buf = gst_buffer_new_and_alloc (channels * 48000); - gst_buffer_set_caps (*buf, desired); - gst_caps_unref (desired); - - return GST_FLOW_OK; -} - -static GstCaps * -live_switch_get_sink_caps (GstPad * pad) -{ - GstCaps *result; - - result = gst_caps_copy (GST_PAD_CAPS (pad)); - - gst_caps_set_simple (result, - "rate", GST_TYPE_INT_RANGE, 48000, G_MAXINT, NULL); - - return result; -} - -static void -live_switch_push (int rate, GstCaps * caps) -{ - GstBuffer *inbuffer; - GstCaps *desired; - GList *l; - - desired = gst_caps_copy (caps); - gst_caps_set_simple (desired, "rate", G_TYPE_INT, rate, NULL); - - fail_unless (gst_pad_alloc_buffer_and_set_caps (mysrcpad, - GST_BUFFER_OFFSET_NONE, rate * 4, desired, &inbuffer) == GST_FLOW_OK); - - /* When the basetransform hits the non-configured case it always - * returns a buffer with exactly the same caps as we requested so the actual - * renegotiation (if needed) will be done in the _chain*/ - fail_unless (inbuffer != NULL); - fail_unless (gst_caps_is_equal (desired, GST_BUFFER_CAPS (inbuffer))); - - gst_buffer_memset (inbuffer, 0, 0, -1); - GST_BUFFER_DURATION (inbuffer) = GST_SECOND; - GST_BUFFER_TIMESTAMP (inbuffer) = 0; - GST_BUFFER_OFFSET (inbuffer) = 0; - - /* pushing gives away my reference ... */ - fail_unless (gst_pad_push (mysrcpad, inbuffer) == GST_FLOW_OK); - - /* ... but it ends up being collected on the global buffer list */ - fail_unless_equals_int (g_list_length (buffers), 1); - - for (l = buffers; l; l = l->next) { - GstBuffer *buffer = GST_BUFFER (l->data); - - gst_buffer_unref (buffer); - } - - g_list_free (buffers); - buffers = NULL; - - gst_caps_unref (desired); -} - -GST_START_TEST (test_live_switch) -{ - GstElement *legacyresample; - GstEvent *newseg; - GstCaps *caps; - - legacyresample = setup_legacyresample (4, 48000, 48000); - - /* Let the sinkpad act like something that can only handle things of - * rate 48000- and can only allocate buffers for that rate, but if someone - * tries to get a buffer with a rate higher then 48000 tries to renegotiate - * */ - gst_pad_set_bufferalloc_function (mysinkpad, live_switch_alloc_only_48000); - gst_pad_set_getcaps_function (mysinkpad, live_switch_get_sink_caps); - - caps = gst_pad_get_negotiated_caps (mysrcpad); - fail_unless (gst_caps_is_fixed (caps)); - - fail_unless (gst_element_set_state (legacyresample, - GST_STATE_PLAYING) == GST_STATE_CHANGE_SUCCESS, - "could not set to playing"); - - newseg = gst_event_new_new_segment (FALSE, 1.0, GST_FORMAT_TIME, 0, -1, 0); - fail_unless (gst_pad_push_event (mysrcpad, newseg) != FALSE); - - /* downstream can provide the requested rate, a buffer alloc will be passed - * on */ - live_switch_push (48000, caps); - - /* Downstream can never accept this rate, buffer alloc isn't passed on */ - live_switch_push (40000, caps); - - /* Downstream can provide the requested rate but will re-negotiate */ - live_switch_push (50000, caps); - - cleanup_legacyresample (legacyresample); - gst_caps_unref (caps); -} - -GST_END_TEST -#endif -static Suite * -legacyresample_suite (void) -{ - Suite *s = suite_create ("legacyresample"); - TCase *tc_chain = tcase_create ("general"); - - suite_add_tcase (s, tc_chain); - tcase_add_test (tc_chain, test_perfect_stream); - tcase_add_test (tc_chain, test_discont_stream); - tcase_add_test (tc_chain, test_reuse); - tcase_add_test (tc_chain, test_shutdown); -#if 0 - tcase_add_test (tc_chain, test_live_switch); -#endif - - return s; -} - -GST_CHECK_MAIN (legacyresample); diff --git a/tests/check/elements/mpegtsmux.c b/tests/check/elements/mpegtsmux.c index c7de27d1..90709e15 100644 --- a/tests/check/elements/mpegtsmux.c +++ b/tests/check/elements/mpegtsmux.c @@ -39,6 +39,303 @@ static GstStaticPadTemplate audio_src_template = GST_STATIC_PAD_TEMPLATE ("src", GST_STATIC_CAPS ("audio/mpeg") ); +/* For ease of programming we use globals to keep refs for our floating + * src and sink pads we create; otherwise we always have to do get_pad, + * get_peer, and then remove references in every test function */ +static GstPad *mysrcpad, *mysinkpad; + +#define AUDIO_CAPS_STRING "audio/mpeg, " \ + "channels = (int) 1, " \ + "rate = (int) 8000, " \ + "mpegversion = (int) 1" +#define VIDEO_CAPS_STRING "video/x-h264, " \ + "format = (string) byte-stream" + +/* setup and teardown needs some special handling for muxer */ +static GstPad * +setup_src_pad (GstElement * element, + GstStaticPadTemplate * template, GstCaps * caps, const gchar * sinkname, + gchar ** padname) +{ + GstPad *srcpad, *sinkpad; + + GST_DEBUG_OBJECT (element, "setting up sending pad"); + /* sending pad */ + srcpad = gst_pad_new_from_static_template (template, "src"); + fail_if (srcpad == NULL, "Could not create a srcpad"); + ASSERT_OBJECT_REFCOUNT (srcpad, "srcpad", 1); + + if (!(sinkpad = gst_element_get_static_pad (element, sinkname))) + sinkpad = gst_element_get_request_pad (element, sinkname); + fail_if (sinkpad == NULL, "Could not get sink pad from %s", + GST_ELEMENT_NAME (element)); + /* references are owned by: 1) us, 2) tsmux, 3) collect pads */ + ASSERT_OBJECT_REFCOUNT (sinkpad, "sinkpad", 3); + if (caps) + fail_unless (gst_pad_set_caps (srcpad, caps)); + fail_unless (gst_pad_link (srcpad, sinkpad) == GST_PAD_LINK_OK, + "Could not link source and %s sink pads", GST_ELEMENT_NAME (element)); + gst_object_unref (sinkpad); /* because we got it higher up */ + + /* references are owned by: 1) tsmux, 2) collect pads */ + ASSERT_OBJECT_REFCOUNT (sinkpad, "sinkpad", 2); + + if (padname) + *padname = g_strdup (GST_PAD_NAME (sinkpad)); + + return srcpad; +} + +static void +teardown_src_pad (GstElement * element, const gchar * sinkname) +{ + GstPad *srcpad, *sinkpad; + + /* clean up floating src pad */ + if (!(sinkpad = gst_element_get_static_pad (element, sinkname))) + sinkpad = gst_element_get_request_pad (element, sinkname); + /* pad refs held by 1) tsmux 2) collectpads and 3) us (through _get) */ + ASSERT_OBJECT_REFCOUNT (sinkpad, "sinkpad", 3); + srcpad = gst_pad_get_peer (sinkpad); + + gst_pad_unlink (srcpad, sinkpad); + GST_DEBUG ("src %p", srcpad); + + /* after unlinking, pad refs still held by + * 1) tsmux and 2) collectpads and 3) us (through _get) */ + ASSERT_OBJECT_REFCOUNT (sinkpad, "sinkpad", 3); + gst_object_unref (sinkpad); + /* one more ref is held by element itself */ + + /* pad refs held by both creator and this function (through _get_peer) */ + ASSERT_OBJECT_REFCOUNT (srcpad, "srcpad", 2); + gst_object_unref (srcpad); + gst_object_unref (srcpad); + +} + +static GstElement * +setup_tsmux (GstStaticPadTemplate * srctemplate, const gchar * sinkname, + gchar ** padname) +{ + GstElement *mux; + + GST_DEBUG ("setup_tsmux"); + mux = gst_check_setup_element ("mpegtsmux"); + mysrcpad = setup_src_pad (mux, srctemplate, NULL, sinkname, padname); + mysinkpad = gst_check_setup_sink_pad (mux, &sink_template); + gst_pad_set_active (mysrcpad, TRUE); + gst_pad_set_active (mysinkpad, TRUE); + + return mux; +} + +static void +cleanup_tsmux (GstElement * mux, const gchar * sinkname) +{ + GST_DEBUG ("cleanup_mux"); + gst_element_set_state (mux, GST_STATE_NULL); + + gst_pad_set_active (mysrcpad, FALSE); + gst_pad_set_active (mysinkpad, FALSE); + teardown_src_pad (mux, sinkname); + gst_check_teardown_sink_pad (mux); + gst_check_teardown_element (mux); +} + +static void +check_tsmux_pad (GstStaticPadTemplate * srctemplate, + const gchar * src_caps_string, gint pes_id, gint pmt_id, + const gchar * sinkname) +{ + GstElement *mux; + GstBuffer *inbuffer, *outbuffer; + GstCaps *caps; + gint num_buffers; + gint i; + gint pmt_pid = -1, el_pid = -1, pcr_pid = -1, packets = 0; + gchar *padname; + GstSegment segment; + + mux = setup_tsmux (srctemplate, sinkname, &padname); + fail_unless (gst_element_set_state (mux, + GST_STATE_PLAYING) == GST_STATE_CHANGE_SUCCESS, + "could not set to playing"); + + gst_segment_init (&segment, GST_FORMAT_TIME); + fail_unless (gst_pad_push_event (mysrcpad, gst_event_new_segment (&segment))); + + inbuffer = gst_buffer_new_and_alloc (1); + caps = gst_caps_from_string (src_caps_string); + gst_pad_set_caps (mysrcpad, caps); + gst_caps_unref (caps); + GST_BUFFER_TIMESTAMP (inbuffer) = 0; + ASSERT_BUFFER_REFCOUNT (inbuffer, "inbuffer", 1); + fail_unless (gst_pad_push (mysrcpad, inbuffer) == GST_FLOW_OK); + num_buffers = g_list_length (buffers); + /* all output might get aggregated */ + fail_unless (num_buffers >= 1); + + /* collect buffers in adapter for convenience */ + for (i = 0; i < num_buffers; ++i) { + guint8 *odata; + gint size; + GstMapInfo map; + + outbuffer = GST_BUFFER (buffers->data); + fail_if (outbuffer == NULL); + buffers = g_list_remove (buffers, outbuffer); + ASSERT_BUFFER_REFCOUNT (outbuffer, "outbuffer", 1); + + gst_buffer_map (outbuffer, &map, GST_MAP_READ); + odata = map.data; + size = map.size; + fail_unless (size % 188 == 0); + + for (; size; odata += 188, size -= 188) { + guint pid, y; + guint8 *data = odata; + + /* need sync_byte */ + fail_unless (*data == 0x47); + data++; + + y = GST_READ_UINT16_BE (data); + pid = y & (0x1FFF); + data += 2; + GST_DEBUG ("pid: %d", pid); + + y = (y >> 14) & 0x1; + /* only check packets with payload_start_indicator == 1 */ + if (!y) { + GST_DEBUG ("not at start"); + continue; + } + + y = *data; + data++; + + if (y & 0x20) { + /* adaptation field */ + y = *data; + data++; + data += y; + GST_DEBUG ("adaptation %d", y); + } + + if (pid == 0) { + /* look for PAT */ + /* pointer field */ + y = *data; + data++; + data += y; + /* table_id */ + y = *data; + data++; + fail_unless (y == 0x0); + /* skip */ + data += 5; + /* section_number */ + y = *data; + fail_unless (y == 0); + data++; + /* last_section_number */ + y = *data; + fail_unless (y == 0); + data++; + /* program_number */ + y = GST_READ_UINT16_BE (data); + fail_unless (y != 0); + data += 2; + /* program_map_PID */ + y = GST_READ_UINT16_BE (data); + pmt_pid = y & 0x1FFF; + fail_unless (pmt_pid > 0x10 && pmt_pid != 0x1FF); + } else if (pid == pmt_pid) { + /* look for PMT */ + /* pointer field */ + y = *data; + data++; + data += y; + /* table_id */ + y = *data; + data++; + fail_unless (y == 0x2); + /* skip */ + data += 5; + /* section_number */ + y = *data; + fail_unless (y == 0); + data++; + /* last_section_number */ + y = *data; + fail_unless (y == 0); + data++; + /* PCR_PID */ + y = GST_READ_UINT16_BE (data); + data += 2; + pcr_pid = y & 0x1FFF; + /* program_info_length */ + y = GST_READ_UINT16_BE (data); + data += 2; + y = y & 0x0FFF; + data += y; + /* parsing only ES stream */ + /* stream_type */ + y = *data; + data++; + fail_unless (y == pmt_id); + /* elementary_PID */ + y = GST_READ_UINT16_BE (data); + data += 2; + el_pid = y & 0x1FFF; + fail_unless (el_pid > 0x10 && el_pid != 0x1FF); + } else if (pid == el_pid) { + packets++; + /* expect to see a PES packet start */ + y = GST_READ_UINT32_BE (data); + fail_unless (y >> 8 == 0x1); + /* stream_id */ + y = y & 0xFF; + fail_unless ((pes_id & 0xF0) == (y & 0xF0)); + } + } + gst_buffer_unmap (outbuffer, &map); + gst_buffer_unref (outbuffer); + outbuffer = NULL; + } + + fail_unless (pmt_pid > 0); + fail_unless (el_pid > 0); + fail_unless (pcr_pid == el_pid); + fail_unless (packets > 0); + + g_list_free (buffers); + buffers = NULL; + + cleanup_tsmux (mux, padname); + g_free (padname); +} + + +GST_START_TEST (test_video) +{ + check_tsmux_pad (&video_src_template, VIDEO_CAPS_STRING, 0xE0, 0x1b, + "sink_%d"); +} + +GST_END_TEST; + + +GST_START_TEST (test_audio) +{ + check_tsmux_pad (&audio_src_template, AUDIO_CAPS_STRING, 0xC0, 0x03, + "sink_%d"); +} + +GST_END_TEST; + + typedef struct _TestData { GstEvent *sink_event; @@ -82,7 +379,6 @@ link_sinks (GstElement * mpegtsmux, GstPad ** src1, GstPad ** src2, GstPad ** src3, TestData * test_data) { GstPad *mux_sink1, *mux_sink2, *mux_sink3; - GstCaps *caps; /* link 3 sink pads, 2 video 1 audio */ *src1 = gst_pad_new_from_static_template (&video_src_template, "src1"); @@ -106,14 +402,6 @@ link_sinks (GstElement * mpegtsmux, mux_sink3 = gst_element_get_request_pad (mpegtsmux, "sink_3"); fail_unless (gst_pad_link (*src3, mux_sink3) == GST_PAD_LINK_OK); - caps = gst_caps_new_empty_simple ("video/x-h264"); - gst_pad_set_caps (mux_sink1, caps); - gst_pad_set_caps (mux_sink2, caps); - gst_caps_unref (caps); - caps = gst_caps_new_simple ("audio/mpeg", "mpegversion", G_TYPE_INT, 4, NULL); - gst_pad_set_caps (mux_sink3, caps); - gst_caps_unref (caps); - gst_object_unref (mux_sink1); gst_object_unref (mux_sink2); gst_object_unref (mux_sink3); @@ -134,6 +422,22 @@ link_src (GstElement * mpegtsmux, GstPad ** sink, TestData * test_data) gst_object_unref (mux_src); } +static void +setup_caps (GstElement * mpegtsmux, GstPad * src1, GstPad * src2, GstPad * src3) +{ + GstCaps *caps; + + caps = gst_caps_new_simple ("video/x-h264", + "stream-format", G_TYPE_STRING, "byte-stream", NULL); + gst_pad_set_caps (src1, caps); + gst_pad_set_caps (src2, caps); + gst_caps_unref (caps); + caps = gst_caps_new_simple ("audio/mpeg", "mpegversion", G_TYPE_INT, 4, + "stream-format", G_TYPE_STRING, "raw", NULL); + gst_pad_set_caps (src3, caps); + gst_caps_unref (caps); +} + static gpointer pad_push_thread (gpointer user_data) { @@ -171,16 +475,24 @@ GST_START_TEST (test_force_key_unit_event_downstream) gint count = 0; ThreadData *thread_data_1, *thread_data_2, *thread_data_3, *thread_data_4; TestData test_data = { 0, }; + GstSegment segment; + GstEvent *event; mpegtsmux = gst_check_setup_element ("mpegtsmux"); - gst_element_set_state (mpegtsmux, GST_STATE_PLAYING); link_src (mpegtsmux, &sink, &test_data); link_sinks (mpegtsmux, &src1, &src2, &src3, &test_data); + gst_element_set_state (mpegtsmux, GST_STATE_PLAYING); + setup_caps (mpegtsmux, src1, src2, src3); - /* hack: make sure collectpads builds collect->data */ - gst_pad_push_event (src1, gst_event_new_flush_start ()); - gst_pad_push_event (src1, gst_event_new_flush_stop (FALSE)); + /* send segment info */ + gst_segment_init (&segment, GST_FORMAT_TIME); + event = gst_event_new_segment (&segment); + fail_unless (gst_pad_push_event (src1, event)); + event = gst_event_new_segment (&segment); + fail_unless (gst_pad_push_event (src2, event)); + event = gst_event_new_segment (&segment); + fail_unless (gst_pad_push_event (src3, event)); /* send a force-key-unit event with running_time=2s */ timestamp = stream_time = running_time = 2 * GST_SECOND; @@ -236,16 +548,23 @@ GST_START_TEST (test_force_key_unit_event_upstream) gint count = 0; TestData test_data = { 0, }; ThreadData *thread_data_1, *thread_data_2, *thread_data_3, *thread_data_4; + GstSegment segment; mpegtsmux = gst_check_setup_element ("mpegtsmux"); - gst_element_set_state (mpegtsmux, GST_STATE_PLAYING); link_src (mpegtsmux, &sink, &test_data); link_sinks (mpegtsmux, &src1, &src2, &src3, &test_data); + gst_element_set_state (mpegtsmux, GST_STATE_PLAYING); + setup_caps (mpegtsmux, src1, src2, src3); - /* hack: make sure collectpads builds collect->data */ - gst_pad_push_event (src1, gst_event_new_flush_start ()); - gst_pad_push_event (src1, gst_event_new_flush_stop (FALSE)); + /* send segment info */ + gst_segment_init (&segment, GST_FORMAT_TIME); + event = gst_event_new_segment (&segment); + fail_unless (gst_pad_push_event (src1, event)); + event = gst_event_new_segment (&segment); + fail_unless (gst_pad_push_event (src2, event)); + event = gst_event_new_segment (&segment); + fail_unless (gst_pad_push_event (src3, event)); /* send an upstream force-key-unit event with running_time=2s */ timestamp = stream_time = running_time = 2 * GST_SECOND; @@ -309,6 +628,8 @@ mpegtsmux_suite (void) suite_add_tcase (s, tc_chain); + tcase_add_test (tc_chain, test_audio); + tcase_add_test (tc_chain, test_video); tcase_add_test (tc_chain, test_force_key_unit_event_downstream); tcase_add_test (tc_chain, test_force_key_unit_event_upstream); diff --git a/tests/check/elements/ofa.c b/tests/check/elements/ofa.c index d1d61be5..c2ce70d1 100644 --- a/tests/check/elements/ofa.c +++ b/tests/check/elements/ofa.c @@ -63,7 +63,7 @@ bus_handler (GstBus * bus, GstMessage * message, gpointer data) } g_free (fpr); - gst_tag_list_free (tag_list); + gst_tag_list_unref (tag_list); found_fingerprint = TRUE; diff --git a/tests/check/elements/zbar.c b/tests/check/elements/zbar.c index 38f4961e..dd1ab8c9 100644 --- a/tests/check/elements/zbar.c +++ b/tests/check/elements/zbar.c @@ -33,7 +33,7 @@ GST_START_TEST (test_still_image) src = gst_element_factory_make ("filesrc", NULL); dec = gst_element_factory_make ("pngdec", NULL); - csp = gst_element_factory_make ("ffmpegcolorspace", NULL); + csp = gst_element_factory_make ("videoconvert", NULL); zbar = gst_element_factory_make ("zbar", NULL); sink = gst_element_factory_make ("fakesink", NULL); diff --git a/tests/check/libs/mpegvideoparser.c b/tests/check/libs/mpegvideoparser.c index e5a2358a..f598dd7e 100644 --- a/tests/check/libs/mpegvideoparser.c +++ b/tests/check/libs/mpegvideoparser.c @@ -68,41 +68,37 @@ static GstMpegVideoPacketTypeCode ordercode[] = { GST_START_TEST (test_mpeg_parse) { - gint i; - GList *list, *tmp; - GstMpegVideoTypeOffsetSize *typeoffsz; - - list = gst_mpeg_video_parse (mpeg2_seq, sizeof (mpeg2_seq), 12); - - assert_equals_int (g_list_length (list), 4); - for (tmp = list, i = 0; tmp; tmp = g_list_next (tmp), i++) { - typeoffsz = tmp->data; + gint i, off; + GstMpegVideoPacket packet; + + off = 12; + for (i = 0; i < 4; ++i) { + fail_unless (gst_mpeg_video_parse (&packet, mpeg2_seq, sizeof (mpeg2_seq), + off)); + fail_unless (packet.offset == off + 4); if (i == 3) { - fail_unless (GST_MPEG_VIDEO_PACKET_SLICE_MIN <= typeoffsz->type && - typeoffsz->type <= GST_MPEG_VIDEO_PACKET_SLICE_MAX); - fail_unless (typeoffsz->size < 0); - } else - assert_equals_int (ordercode[i], typeoffsz->type); + fail_unless (GST_MPEG_VIDEO_PACKET_SLICE_MIN <= packet.type && + packet.type <= GST_MPEG_VIDEO_PACKET_SLICE_MAX); + fail_unless (packet.size < 0); + } else { + assert_equals_int (ordercode[i], packet.type); + } + off = packet.offset + packet.size; } - - g_list_foreach (list, (GFunc) g_free, NULL); - g_list_free (list); } GST_END_TEST; GST_START_TEST (test_mpeg_parse_sequence_header) { - GList *list; - GstMpegVideoTypeOffsetSize *typeoffsz; GstMpegVideoSequenceHdr seqhdr; + GstMpegVideoPacket packet; - list = gst_mpeg_video_parse (mpeg2_seq, sizeof (mpeg2_seq), 12); + gst_mpeg_video_parse (&packet, mpeg2_seq, sizeof (mpeg2_seq), 12); - typeoffsz = list->data; - fail_unless (typeoffsz->type == GST_MPEG_VIDEO_PACKET_SEQUENCE); + fail_unless (packet.type == GST_MPEG_VIDEO_PACKET_SEQUENCE); fail_unless (gst_mpeg_video_parse_sequence_header (&seqhdr, mpeg2_seq, - sizeof (mpeg2_seq), typeoffsz->offset)); + sizeof (mpeg2_seq), packet.offset)); assert_equals_int (seqhdr.width, 1920); assert_equals_int (seqhdr.height, 1080); assert_equals_int (seqhdr.aspect_ratio_info, 3); @@ -115,25 +111,20 @@ GST_START_TEST (test_mpeg_parse_sequence_header) assert_equals_int (seqhdr.bitrate, 0); assert_equals_int (seqhdr.vbv_buffer_size_value, 512); fail_unless (seqhdr.constrained_parameters_flag == FALSE); - - g_list_foreach (list, (GFunc) g_free, NULL); - g_list_free (list); } GST_END_TEST; GST_START_TEST (test_mpeg_parse_sequence_extension) { - GList *list; - GstMpegVideoTypeOffsetSize *typeoffsz; GstMpegVideoSequenceExt seqext; + GstMpegVideoPacket packet; - list = gst_mpeg_video_parse (mpeg2_seq, sizeof (mpeg2_seq), 12); + gst_mpeg_video_parse (&packet, mpeg2_seq, sizeof (mpeg2_seq), 24); - typeoffsz = list->next->data; - fail_unless (typeoffsz->type == GST_MPEG_VIDEO_PACKET_EXTENSION); + fail_unless (packet.type == GST_MPEG_VIDEO_PACKET_EXTENSION); fail_unless (gst_mpeg_video_parse_sequence_extension (&seqext, - mpeg2_seq, sizeof (mpeg2_seq), typeoffsz->offset)); + mpeg2_seq, sizeof (mpeg2_seq), packet.offset)); assert_equals_int (seqext.profile, 4); assert_equals_int (seqext.level, 8); assert_equals_int (seqext.progressive, 1); @@ -146,33 +137,29 @@ GST_START_TEST (test_mpeg_parse_sequence_extension) assert_equals_int (seqext.low_delay, 0); assert_equals_int (seqext.fps_n_ext, 3); assert_equals_int (seqext.fps_d_ext, 2); - - g_list_foreach (list, (GFunc) g_free, NULL); - g_list_free (list); } GST_END_TEST; GST_START_TEST (test_mis_identified_datas) { - GList *list, *tmp; - GstMpegVideoTypeOffsetSize *typeoffsz; + GstMpegVideoPacket packet = { 0, }; const guint8 *data = mis_identified_datas; - - list = gst_mpeg_video_parse (mis_identified_datas, - sizeof (mis_identified_datas), 0); - - assert_equals_int (g_list_length (list), 2); - for (tmp = list; tmp; tmp = g_list_next (tmp)) { - typeoffsz = tmp->data; - - assert_equals_int (data[typeoffsz->offset - 4], 0); - assert_equals_int (data[typeoffsz->offset - 3], 0); - assert_equals_int (data[typeoffsz->offset - 2], 1); + gint i, off; + + off = 0; + for (i = 0; i < 2; i++) { + gst_mpeg_video_parse (&packet, mis_identified_datas, + sizeof (mis_identified_datas), off); + assert_equals_int (data[packet.offset - 4], 0); + assert_equals_int (data[packet.offset - 3], 0); + assert_equals_int (data[packet.offset - 2], 1); + off = packet.offset + packet.size; + if (i == 1) + fail_unless (packet.size < 0); + else + fail_unless (packet.size > 0); } - - g_list_foreach (list, (GFunc) g_free, NULL); - g_list_free (list); } GST_END_TEST; diff --git a/tests/check/orc/bayer.c b/tests/check/orc/bayer.c new file mode 100644 index 00000000..77058263 --- /dev/null +++ b/tests/check/orc/bayer.c @@ -0,0 +1,1978 @@ + +/* autogenerated from gstbayerorc.orc */ + +#include <stdio.h> +#include <string.h> +#include <stdlib.h> +#include <math.h> + +#ifndef _ORC_INTEGER_TYPEDEFS_ +#define _ORC_INTEGER_TYPEDEFS_ +#if defined(__STDC_VERSION__) && __STDC_VERSION__ >= 199901L +#include <stdint.h> +typedef int8_t orc_int8; +typedef int16_t orc_int16; +typedef int32_t orc_int32; +typedef int64_t orc_int64; +typedef uint8_t orc_uint8; +typedef uint16_t orc_uint16; +typedef uint32_t orc_uint32; +typedef uint64_t orc_uint64; +#define ORC_UINT64_C(x) UINT64_C(x) +#elif defined(_MSC_VER) +typedef signed __int8 orc_int8; +typedef signed __int16 orc_int16; +typedef signed __int32 orc_int32; +typedef signed __int64 orc_int64; +typedef unsigned __int8 orc_uint8; +typedef unsigned __int16 orc_uint16; +typedef unsigned __int32 orc_uint32; +typedef unsigned __int64 orc_uint64; +#define ORC_UINT64_C(x) (x##Ui64) +#define inline __inline +#else +#include <limits.h> +typedef signed char orc_int8; +typedef short orc_int16; +typedef int orc_int32; +typedef unsigned char orc_uint8; +typedef unsigned short orc_uint16; +typedef unsigned int orc_uint32; +#if INT_MAX == LONG_MAX +typedef long long orc_int64; +typedef unsigned long long orc_uint64; +#define ORC_UINT64_C(x) (x##ULL) +#else +typedef long orc_int64; +typedef unsigned long orc_uint64; +#define ORC_UINT64_C(x) (x##UL) +#endif +#endif +typedef union { orc_int16 i; orc_int8 x2[2]; } orc_union16; +typedef union { orc_int32 i; float f; orc_int16 x2[2]; orc_int8 x4[4]; } orc_union32; +typedef union { orc_int64 i; double f; orc_int32 x2[2]; float x2f[2]; orc_int16 x4[4]; } orc_union64; +#endif +#ifndef ORC_RESTRICT +#if defined(__STDC_VERSION__) && __STDC_VERSION__ >= 199901L +#define ORC_RESTRICT restrict +#elif defined(__GNUC__) && __GNUC__ >= 4 +#define ORC_RESTRICT __restrict__ +#else +#define ORC_RESTRICT +#endif +#endif +#include <orc/orc.h> +#include <orc-test/orctest.h> + +/* begin Orc C target preamble */ +#define ORC_CLAMP(x,a,b) ((x)<(a) ? (a) : ((x)>(b) ? (b) : (x))) +#define ORC_ABS(a) ((a)<0 ? -(a) : (a)) +#define ORC_MIN(a,b) ((a)<(b) ? (a) : (b)) +#define ORC_MAX(a,b) ((a)>(b) ? (a) : (b)) +#define ORC_SB_MAX 127 +#define ORC_SB_MIN (-1-ORC_SB_MAX) +#define ORC_UB_MAX 255 +#define ORC_UB_MIN 0 +#define ORC_SW_MAX 32767 +#define ORC_SW_MIN (-1-ORC_SW_MAX) +#define ORC_UW_MAX 65535 +#define ORC_UW_MIN 0 +#define ORC_SL_MAX 2147483647 +#define ORC_SL_MIN (-1-ORC_SL_MAX) +#define ORC_UL_MAX 4294967295U +#define ORC_UL_MIN 0 +#define ORC_CLAMP_SB(x) ORC_CLAMP(x,ORC_SB_MIN,ORC_SB_MAX) +#define ORC_CLAMP_UB(x) ORC_CLAMP(x,ORC_UB_MIN,ORC_UB_MAX) +#define ORC_CLAMP_SW(x) ORC_CLAMP(x,ORC_SW_MIN,ORC_SW_MAX) +#define ORC_CLAMP_UW(x) ORC_CLAMP(x,ORC_UW_MIN,ORC_UW_MAX) +#define ORC_CLAMP_SL(x) ORC_CLAMP(x,ORC_SL_MIN,ORC_SL_MAX) +#define ORC_CLAMP_UL(x) ORC_CLAMP(x,ORC_UL_MIN,ORC_UL_MAX) +#define ORC_SWAP_W(x) ((((x)&0xff)<<8) | (((x)&0xff00)>>8)) +#define ORC_SWAP_L(x) ((((x)&0xff)<<24) | (((x)&0xff00)<<8) | (((x)&0xff0000)>>8) | (((x)&0xff000000)>>24)) +#define ORC_SWAP_Q(x) ((((x)&ORC_UINT64_C(0xff))<<56) | (((x)&ORC_UINT64_C(0xff00))<<40) | (((x)&ORC_UINT64_C(0xff0000))<<24) | (((x)&ORC_UINT64_C(0xff000000))<<8) | (((x)&ORC_UINT64_C(0xff00000000))>>8) | (((x)&ORC_UINT64_C(0xff0000000000))>>24) | (((x)&ORC_UINT64_C(0xff000000000000))>>40) | (((x)&ORC_UINT64_C(0xff00000000000000))>>56)) +#define ORC_PTR_OFFSET(ptr,offset) ((void *)(((unsigned char *)(ptr)) + (offset))) +#define ORC_DENORMAL(x) ((x) & ((((x)&0x7f800000) == 0) ? 0xff800000 : 0xffffffff)) +#define ORC_ISNAN(x) ((((x)&0x7f800000) == 0x7f800000) && (((x)&0x007fffff) != 0)) +#define ORC_DENORMAL_DOUBLE(x) ((x) & ((((x)&ORC_UINT64_C(0x7ff0000000000000)) == 0) ? ORC_UINT64_C(0xfff0000000000000) : ORC_UINT64_C(0xffffffffffffffff))) +#define ORC_ISNAN_DOUBLE(x) ((((x)&ORC_UINT64_C(0x7ff0000000000000)) == ORC_UINT64_C(0x7ff0000000000000)) && (((x)&ORC_UINT64_C(0x000fffffffffffff)) != 0)) +#ifndef ORC_RESTRICT +#if defined(__STDC_VERSION__) && __STDC_VERSION__ >= 199901L +#define ORC_RESTRICT restrict +#elif defined(__GNUC__) && __GNUC__ >= 4 +#define ORC_RESTRICT __restrict__ +#else +#define ORC_RESTRICT +#endif +#endif +/* end Orc C target preamble */ + + +/* bayer_orc_horiz_upsample_unaligned */ +static void +_backup_bayer_orc_horiz_upsample_unaligned (OrcExecutor * ORC_RESTRICT ex) +{ + int i; + int n = ex->n; + orc_union16 * ORC_RESTRICT ptr0; + orc_union16 * ORC_RESTRICT ptr1; + const orc_union16 * ORC_RESTRICT ptr4; + orc_union16 var37; + orc_union16 var38; + orc_union16 var39; + orc_int8 var40; + orc_int8 var41; + orc_union16 var42; + orc_int8 var43; + orc_int8 var44; + orc_int8 var45; + orc_int8 var46; + + ptr0 = (orc_union16 *)ex->arrays[0]; + ptr1 = (orc_union16 *)ex->arrays[1]; + ptr4 = (orc_union16 *)ex->arrays[4]; + + + for (i = 0; i < n; i++) { + /* 0: loadw */ + var37 = ptr4[i]; + /* 1: splitwb */ + { + orc_union16 _src; + _src.i = var37.i; + var40 = _src.x2[1]; + var41 = _src.x2[0]; + } + /* 2: loadoffw */ + var42 = ptr4[i + 1]; + /* 3: splitwb */ + { + orc_union16 _src; + _src.i = var42.i; + var43 = _src.x2[1]; + var44 = _src.x2[0]; + } + /* 4: avgub */ + var45 = ((orc_uint8)var40 + (orc_uint8)var43 + 1)>>1; + /* 5: mergebw */ + { + orc_union16 _dest; + _dest.x2[0] = var40; + _dest.x2[1] = var45; + var38.i = _dest.i; + } + /* 6: storew */ + ptr0[i] = var38; + /* 7: avgub */ + var46 = ((orc_uint8)var41 + (orc_uint8)var44 + 1)>>1; + /* 8: mergebw */ + { + orc_union16 _dest; + _dest.x2[0] = var46; + _dest.x2[1] = var44; + var39.i = _dest.i; + } + /* 9: storew */ + ptr1[i] = var39; + } + +} + +/* bayer_orc_horiz_upsample */ +static void +_backup_bayer_orc_horiz_upsample (OrcExecutor * ORC_RESTRICT ex) +{ + int i; + int n = ex->n; + orc_union16 * ORC_RESTRICT ptr0; + orc_union16 * ORC_RESTRICT ptr1; + const orc_union16 * ORC_RESTRICT ptr4; + orc_union16 var39; + orc_union16 var40; + orc_union16 var41; + orc_union16 var42; + orc_int8 var43; + orc_int8 var44; + orc_int8 var45; + orc_int8 var46; + orc_union16 var47; + orc_int8 var48; + orc_int8 var49; + orc_int8 var50; + orc_int8 var51; + + ptr0 = (orc_union16 *)ex->arrays[0]; + ptr1 = (orc_union16 *)ex->arrays[1]; + ptr4 = (orc_union16 *)ex->arrays[4]; + + + for (i = 0; i < n; i++) { + /* 0: loadoffw */ + var42 = ptr4[i + -1]; + /* 1: splitwb */ + { + orc_union16 _src; + _src.i = var42.i; + var43 = _src.x2[1]; + var44 = _src.x2[0]; + } + /* 2: loadw */ + var39 = ptr4[i]; + /* 3: splitwb */ + { + orc_union16 _src; + _src.i = var39.i; + var45 = _src.x2[1]; + var46 = _src.x2[0]; + } + /* 4: loadoffw */ + var47 = ptr4[i + 1]; + /* 5: splitwb */ + { + orc_union16 _src; + _src.i = var47.i; + var48 = _src.x2[1]; + var49 = _src.x2[0]; + } + /* 6: avgub */ + var50 = ((orc_uint8)var46 + (orc_uint8)var49 + 1)>>1; + /* 7: mergebw */ + { + orc_union16 _dest; + _dest.x2[0] = var46; + _dest.x2[1] = var50; + var40.i = _dest.i; + } + /* 8: storew */ + ptr0[i] = var40; + /* 9: avgub */ + var51 = ((orc_uint8)var43 + (orc_uint8)var45 + 1)>>1; + /* 10: mergebw */ + { + orc_union16 _dest; + _dest.x2[0] = var51; + _dest.x2[1] = var45; + var41.i = _dest.i; + } + /* 11: storew */ + ptr1[i] = var41; + } + +} + +/* bayer_orc_merge_bg_bgra */ +static void +_backup_bayer_orc_merge_bg_bgra (OrcExecutor * ORC_RESTRICT ex) +{ + int i; + int n = ex->n; + orc_union64 * ORC_RESTRICT ptr0; + const orc_union16 * ORC_RESTRICT ptr4; + const orc_union16 * ORC_RESTRICT ptr5; + const orc_union16 * ORC_RESTRICT ptr6; + const orc_union16 * ORC_RESTRICT ptr7; + const orc_union16 * ORC_RESTRICT ptr8; + const orc_union16 * ORC_RESTRICT ptr9; + orc_union16 var37; + orc_union16 var38; + orc_union16 var39; + orc_union16 var40; + orc_union16 var41; + orc_union16 var42; + orc_union16 var43; + orc_union16 var44; + orc_union16 var45; + orc_union64 var46; + orc_union16 var47; + orc_union16 var48; + orc_union16 var49; + orc_union16 var50; + orc_union16 var51; + orc_union16 var52; + orc_union16 var53; + orc_union32 var54; + orc_union32 var55; + + ptr0 = (orc_union64 *)ex->arrays[0]; + ptr4 = (orc_union16 *)ex->arrays[4]; + ptr5 = (orc_union16 *)ex->arrays[5]; + ptr6 = (orc_union16 *)ex->arrays[6]; + ptr7 = (orc_union16 *)ex->arrays[7]; + ptr8 = (orc_union16 *)ex->arrays[8]; + ptr9 = (orc_union16 *)ex->arrays[9]; + + /* 9: loadpw */ + var42.i = (int)0x000000ff; /* 255 or 1.25987e-321f */ + /* 11: loadpw */ + var43.i = (int)0x0000ff00; /* 65280 or 3.22526e-319f */ + /* 16: loadpb */ + var45.x2[0] = (int)0x000000ff; /* 255 or 1.25987e-321f */ + var45.x2[1] = (int)0x000000ff; /* 255 or 1.25987e-321f */ + + for (i = 0; i < n; i++) { + /* 0: loadw */ + var37 = ptr5[i]; + /* 1: loadw */ + var38 = ptr9[i]; + /* 2: avgub */ + var47.x2[0] = ((orc_uint8)var37.x2[0] + (orc_uint8)var38.x2[0] + 1)>>1; + var47.x2[1] = ((orc_uint8)var37.x2[1] + (orc_uint8)var38.x2[1] + 1)>>1; + /* 3: loadw */ + var39 = ptr4[i]; + /* 4: loadw */ + var40 = ptr8[i]; + /* 5: avgub */ + var48.x2[0] = ((orc_uint8)var39.x2[0] + (orc_uint8)var40.x2[0] + 1)>>1; + var48.x2[1] = ((orc_uint8)var39.x2[1] + (orc_uint8)var40.x2[1] + 1)>>1; + /* 6: loadw */ + var41 = ptr7[i]; + /* 7: copyw */ + var49.i = var41.i; + /* 8: avgub */ + var50.x2[0] = ((orc_uint8)var48.x2[0] + (orc_uint8)var49.x2[0] + 1)>>1; + var50.x2[1] = ((orc_uint8)var48.x2[1] + (orc_uint8)var49.x2[1] + 1)>>1; + /* 10: andw */ + var51.i = var50.i & var42.i; + /* 12: andw */ + var52.i = var49.i & var43.i; + /* 13: orw */ + var53.i = var52.i | var51.i; + /* 14: loadw */ + var44 = ptr6[i]; + /* 15: mergebw */ + { + orc_union16 _dest; + _dest.x2[0] = var44.x2[0]; + _dest.x2[1] = var53.x2[0]; + var54.x2[0] = _dest.i; + } + { + orc_union16 _dest; + _dest.x2[0] = var44.x2[1]; + _dest.x2[1] = var53.x2[1]; + var54.x2[1] = _dest.i; + } + /* 17: mergebw */ + { + orc_union16 _dest; + _dest.x2[0] = var47.x2[0]; + _dest.x2[1] = var45.x2[0]; + var55.x2[0] = _dest.i; + } + { + orc_union16 _dest; + _dest.x2[0] = var47.x2[1]; + _dest.x2[1] = var45.x2[1]; + var55.x2[1] = _dest.i; + } + /* 18: mergewl */ + { + orc_union32 _dest; + _dest.x2[0] = var54.x2[0]; + _dest.x2[1] = var55.x2[0]; + var46.x2[0] = _dest.i; + } + { + orc_union32 _dest; + _dest.x2[0] = var54.x2[1]; + _dest.x2[1] = var55.x2[1]; + var46.x2[1] = _dest.i; + } + /* 19: storeq */ + ptr0[i] = var46; + } + +} + +/* bayer_orc_merge_gr_bgra */ +static void +_backup_bayer_orc_merge_gr_bgra (OrcExecutor * ORC_RESTRICT ex) +{ + int i; + int n = ex->n; + orc_union64 * ORC_RESTRICT ptr0; + const orc_union16 * ORC_RESTRICT ptr4; + const orc_union16 * ORC_RESTRICT ptr5; + const orc_union16 * ORC_RESTRICT ptr6; + const orc_union16 * ORC_RESTRICT ptr7; + const orc_union16 * ORC_RESTRICT ptr8; + const orc_union16 * ORC_RESTRICT ptr9; + orc_union16 var37; + orc_union16 var38; + orc_union16 var39; + orc_union16 var40; + orc_union16 var41; + orc_union16 var42; + orc_union16 var43; + orc_union16 var44; + orc_union16 var45; + orc_union64 var46; + orc_union16 var47; + orc_union16 var48; + orc_union16 var49; + orc_union16 var50; + orc_union16 var51; + orc_union16 var52; + orc_union16 var53; + orc_union32 var54; + orc_union32 var55; + + ptr0 = (orc_union64 *)ex->arrays[0]; + ptr4 = (orc_union16 *)ex->arrays[4]; + ptr5 = (orc_union16 *)ex->arrays[5]; + ptr6 = (orc_union16 *)ex->arrays[6]; + ptr7 = (orc_union16 *)ex->arrays[7]; + ptr8 = (orc_union16 *)ex->arrays[8]; + ptr9 = (orc_union16 *)ex->arrays[9]; + + /* 9: loadpw */ + var42.i = (int)0x0000ff00; /* 65280 or 3.22526e-319f */ + /* 11: loadpw */ + var43.i = (int)0x000000ff; /* 255 or 1.25987e-321f */ + /* 16: loadpb */ + var45.x2[0] = (int)0x000000ff; /* 255 or 1.25987e-321f */ + var45.x2[1] = (int)0x000000ff; /* 255 or 1.25987e-321f */ + + for (i = 0; i < n; i++) { + /* 0: loadw */ + var37 = ptr4[i]; + /* 1: loadw */ + var38 = ptr8[i]; + /* 2: avgub */ + var47.x2[0] = ((orc_uint8)var37.x2[0] + (orc_uint8)var38.x2[0] + 1)>>1; + var47.x2[1] = ((orc_uint8)var37.x2[1] + (orc_uint8)var38.x2[1] + 1)>>1; + /* 3: loadw */ + var39 = ptr5[i]; + /* 4: loadw */ + var40 = ptr9[i]; + /* 5: avgub */ + var48.x2[0] = ((orc_uint8)var39.x2[0] + (orc_uint8)var40.x2[0] + 1)>>1; + var48.x2[1] = ((orc_uint8)var39.x2[1] + (orc_uint8)var40.x2[1] + 1)>>1; + /* 6: loadw */ + var41 = ptr6[i]; + /* 7: copyw */ + var49.i = var41.i; + /* 8: avgub */ + var50.x2[0] = ((orc_uint8)var48.x2[0] + (orc_uint8)var49.x2[0] + 1)>>1; + var50.x2[1] = ((orc_uint8)var48.x2[1] + (orc_uint8)var49.x2[1] + 1)>>1; + /* 10: andw */ + var51.i = var50.i & var42.i; + /* 12: andw */ + var52.i = var49.i & var43.i; + /* 13: orw */ + var53.i = var52.i | var51.i; + /* 14: mergebw */ + { + orc_union16 _dest; + _dest.x2[0] = var47.x2[0]; + _dest.x2[1] = var53.x2[0]; + var54.x2[0] = _dest.i; + } + { + orc_union16 _dest; + _dest.x2[0] = var47.x2[1]; + _dest.x2[1] = var53.x2[1]; + var54.x2[1] = _dest.i; + } + /* 15: loadw */ + var44 = ptr7[i]; + /* 17: mergebw */ + { + orc_union16 _dest; + _dest.x2[0] = var44.x2[0]; + _dest.x2[1] = var45.x2[0]; + var55.x2[0] = _dest.i; + } + { + orc_union16 _dest; + _dest.x2[0] = var44.x2[1]; + _dest.x2[1] = var45.x2[1]; + var55.x2[1] = _dest.i; + } + /* 18: mergewl */ + { + orc_union32 _dest; + _dest.x2[0] = var54.x2[0]; + _dest.x2[1] = var55.x2[0]; + var46.x2[0] = _dest.i; + } + { + orc_union32 _dest; + _dest.x2[0] = var54.x2[1]; + _dest.x2[1] = var55.x2[1]; + var46.x2[1] = _dest.i; + } + /* 19: storeq */ + ptr0[i] = var46; + } + +} + +/* bayer_orc_merge_bg_abgr */ +static void +_backup_bayer_orc_merge_bg_abgr (OrcExecutor * ORC_RESTRICT ex) +{ + int i; + int n = ex->n; + orc_union64 * ORC_RESTRICT ptr0; + const orc_union16 * ORC_RESTRICT ptr4; + const orc_union16 * ORC_RESTRICT ptr5; + const orc_union16 * ORC_RESTRICT ptr6; + const orc_union16 * ORC_RESTRICT ptr7; + const orc_union16 * ORC_RESTRICT ptr8; + const orc_union16 * ORC_RESTRICT ptr9; + orc_union16 var37; + orc_union16 var38; + orc_union16 var39; + orc_union16 var40; + orc_union16 var41; + orc_union16 var42; + orc_union16 var43; + orc_union16 var44; + orc_union16 var45; + orc_union64 var46; + orc_union16 var47; + orc_union16 var48; + orc_union16 var49; + orc_union16 var50; + orc_union16 var51; + orc_union16 var52; + orc_union16 var53; + orc_union32 var54; + orc_union32 var55; + + ptr0 = (orc_union64 *)ex->arrays[0]; + ptr4 = (orc_union16 *)ex->arrays[4]; + ptr5 = (orc_union16 *)ex->arrays[5]; + ptr6 = (orc_union16 *)ex->arrays[6]; + ptr7 = (orc_union16 *)ex->arrays[7]; + ptr8 = (orc_union16 *)ex->arrays[8]; + ptr9 = (orc_union16 *)ex->arrays[9]; + + /* 9: loadpw */ + var42.i = (int)0x000000ff; /* 255 or 1.25987e-321f */ + /* 11: loadpw */ + var43.i = (int)0x0000ff00; /* 65280 or 3.22526e-319f */ + /* 14: loadpb */ + var44.x2[0] = (int)0x000000ff; /* 255 or 1.25987e-321f */ + var44.x2[1] = (int)0x000000ff; /* 255 or 1.25987e-321f */ + + for (i = 0; i < n; i++) { + /* 0: loadw */ + var37 = ptr5[i]; + /* 1: loadw */ + var38 = ptr9[i]; + /* 2: avgub */ + var47.x2[0] = ((orc_uint8)var37.x2[0] + (orc_uint8)var38.x2[0] + 1)>>1; + var47.x2[1] = ((orc_uint8)var37.x2[1] + (orc_uint8)var38.x2[1] + 1)>>1; + /* 3: loadw */ + var39 = ptr4[i]; + /* 4: loadw */ + var40 = ptr8[i]; + /* 5: avgub */ + var48.x2[0] = ((orc_uint8)var39.x2[0] + (orc_uint8)var40.x2[0] + 1)>>1; + var48.x2[1] = ((orc_uint8)var39.x2[1] + (orc_uint8)var40.x2[1] + 1)>>1; + /* 6: loadw */ + var41 = ptr7[i]; + /* 7: copyw */ + var49.i = var41.i; + /* 8: avgub */ + var50.x2[0] = ((orc_uint8)var48.x2[0] + (orc_uint8)var49.x2[0] + 1)>>1; + var50.x2[1] = ((orc_uint8)var48.x2[1] + (orc_uint8)var49.x2[1] + 1)>>1; + /* 10: andw */ + var51.i = var50.i & var42.i; + /* 12: andw */ + var52.i = var49.i & var43.i; + /* 13: orw */ + var53.i = var52.i | var51.i; + /* 15: loadw */ + var45 = ptr6[i]; + /* 16: mergebw */ + { + orc_union16 _dest; + _dest.x2[0] = var44.x2[0]; + _dest.x2[1] = var45.x2[0]; + var54.x2[0] = _dest.i; + } + { + orc_union16 _dest; + _dest.x2[0] = var44.x2[1]; + _dest.x2[1] = var45.x2[1]; + var54.x2[1] = _dest.i; + } + /* 17: mergebw */ + { + orc_union16 _dest; + _dest.x2[0] = var53.x2[0]; + _dest.x2[1] = var47.x2[0]; + var55.x2[0] = _dest.i; + } + { + orc_union16 _dest; + _dest.x2[0] = var53.x2[1]; + _dest.x2[1] = var47.x2[1]; + var55.x2[1] = _dest.i; + } + /* 18: mergewl */ + { + orc_union32 _dest; + _dest.x2[0] = var54.x2[0]; + _dest.x2[1] = var55.x2[0]; + var46.x2[0] = _dest.i; + } + { + orc_union32 _dest; + _dest.x2[0] = var54.x2[1]; + _dest.x2[1] = var55.x2[1]; + var46.x2[1] = _dest.i; + } + /* 19: storeq */ + ptr0[i] = var46; + } + +} + +/* bayer_orc_merge_gr_abgr */ +static void +_backup_bayer_orc_merge_gr_abgr (OrcExecutor * ORC_RESTRICT ex) +{ + int i; + int n = ex->n; + orc_union64 * ORC_RESTRICT ptr0; + const orc_union16 * ORC_RESTRICT ptr4; + const orc_union16 * ORC_RESTRICT ptr5; + const orc_union16 * ORC_RESTRICT ptr6; + const orc_union16 * ORC_RESTRICT ptr7; + const orc_union16 * ORC_RESTRICT ptr8; + const orc_union16 * ORC_RESTRICT ptr9; + orc_union16 var37; + orc_union16 var38; + orc_union16 var39; + orc_union16 var40; + orc_union16 var41; + orc_union16 var42; + orc_union16 var43; + orc_union16 var44; + orc_union16 var45; + orc_union64 var46; + orc_union16 var47; + orc_union16 var48; + orc_union16 var49; + orc_union16 var50; + orc_union16 var51; + orc_union16 var52; + orc_union16 var53; + orc_union32 var54; + orc_union32 var55; + + ptr0 = (orc_union64 *)ex->arrays[0]; + ptr4 = (orc_union16 *)ex->arrays[4]; + ptr5 = (orc_union16 *)ex->arrays[5]; + ptr6 = (orc_union16 *)ex->arrays[6]; + ptr7 = (orc_union16 *)ex->arrays[7]; + ptr8 = (orc_union16 *)ex->arrays[8]; + ptr9 = (orc_union16 *)ex->arrays[9]; + + /* 9: loadpw */ + var42.i = (int)0x0000ff00; /* 65280 or 3.22526e-319f */ + /* 11: loadpw */ + var43.i = (int)0x000000ff; /* 255 or 1.25987e-321f */ + /* 14: loadpb */ + var44.x2[0] = (int)0x000000ff; /* 255 or 1.25987e-321f */ + var44.x2[1] = (int)0x000000ff; /* 255 or 1.25987e-321f */ + + for (i = 0; i < n; i++) { + /* 0: loadw */ + var37 = ptr4[i]; + /* 1: loadw */ + var38 = ptr8[i]; + /* 2: avgub */ + var47.x2[0] = ((orc_uint8)var37.x2[0] + (orc_uint8)var38.x2[0] + 1)>>1; + var47.x2[1] = ((orc_uint8)var37.x2[1] + (orc_uint8)var38.x2[1] + 1)>>1; + /* 3: loadw */ + var39 = ptr5[i]; + /* 4: loadw */ + var40 = ptr9[i]; + /* 5: avgub */ + var48.x2[0] = ((orc_uint8)var39.x2[0] + (orc_uint8)var40.x2[0] + 1)>>1; + var48.x2[1] = ((orc_uint8)var39.x2[1] + (orc_uint8)var40.x2[1] + 1)>>1; + /* 6: loadw */ + var41 = ptr6[i]; + /* 7: copyw */ + var49.i = var41.i; + /* 8: avgub */ + var50.x2[0] = ((orc_uint8)var48.x2[0] + (orc_uint8)var49.x2[0] + 1)>>1; + var50.x2[1] = ((orc_uint8)var48.x2[1] + (orc_uint8)var49.x2[1] + 1)>>1; + /* 10: andw */ + var51.i = var50.i & var42.i; + /* 12: andw */ + var52.i = var49.i & var43.i; + /* 13: orw */ + var53.i = var52.i | var51.i; + /* 15: mergebw */ + { + orc_union16 _dest; + _dest.x2[0] = var44.x2[0]; + _dest.x2[1] = var47.x2[0]; + var54.x2[0] = _dest.i; + } + { + orc_union16 _dest; + _dest.x2[0] = var44.x2[1]; + _dest.x2[1] = var47.x2[1]; + var54.x2[1] = _dest.i; + } + /* 16: loadw */ + var45 = ptr7[i]; + /* 17: mergebw */ + { + orc_union16 _dest; + _dest.x2[0] = var53.x2[0]; + _dest.x2[1] = var45.x2[0]; + var55.x2[0] = _dest.i; + } + { + orc_union16 _dest; + _dest.x2[0] = var53.x2[1]; + _dest.x2[1] = var45.x2[1]; + var55.x2[1] = _dest.i; + } + /* 18: mergewl */ + { + orc_union32 _dest; + _dest.x2[0] = var54.x2[0]; + _dest.x2[1] = var55.x2[0]; + var46.x2[0] = _dest.i; + } + { + orc_union32 _dest; + _dest.x2[0] = var54.x2[1]; + _dest.x2[1] = var55.x2[1]; + var46.x2[1] = _dest.i; + } + /* 19: storeq */ + ptr0[i] = var46; + } + +} + +/* bayer_orc_merge_bg_rgba */ +static void +_backup_bayer_orc_merge_bg_rgba (OrcExecutor * ORC_RESTRICT ex) +{ + int i; + int n = ex->n; + orc_union64 * ORC_RESTRICT ptr0; + const orc_union16 * ORC_RESTRICT ptr4; + const orc_union16 * ORC_RESTRICT ptr5; + const orc_union16 * ORC_RESTRICT ptr6; + const orc_union16 * ORC_RESTRICT ptr7; + const orc_union16 * ORC_RESTRICT ptr8; + const orc_union16 * ORC_RESTRICT ptr9; + orc_union16 var37; + orc_union16 var38; + orc_union16 var39; + orc_union16 var40; + orc_union16 var41; + orc_union16 var42; + orc_union16 var43; + orc_union16 var44; + orc_union16 var45; + orc_union64 var46; + orc_union16 var47; + orc_union16 var48; + orc_union16 var49; + orc_union16 var50; + orc_union16 var51; + orc_union16 var52; + orc_union16 var53; + orc_union32 var54; + orc_union32 var55; + + ptr0 = (orc_union64 *)ex->arrays[0]; + ptr4 = (orc_union16 *)ex->arrays[4]; + ptr5 = (orc_union16 *)ex->arrays[5]; + ptr6 = (orc_union16 *)ex->arrays[6]; + ptr7 = (orc_union16 *)ex->arrays[7]; + ptr8 = (orc_union16 *)ex->arrays[8]; + ptr9 = (orc_union16 *)ex->arrays[9]; + + /* 9: loadpw */ + var42.i = (int)0x000000ff; /* 255 or 1.25987e-321f */ + /* 11: loadpw */ + var43.i = (int)0x0000ff00; /* 65280 or 3.22526e-319f */ + /* 16: loadpb */ + var45.x2[0] = (int)0x000000ff; /* 255 or 1.25987e-321f */ + var45.x2[1] = (int)0x000000ff; /* 255 or 1.25987e-321f */ + + for (i = 0; i < n; i++) { + /* 0: loadw */ + var37 = ptr5[i]; + /* 1: loadw */ + var38 = ptr9[i]; + /* 2: avgub */ + var47.x2[0] = ((orc_uint8)var37.x2[0] + (orc_uint8)var38.x2[0] + 1)>>1; + var47.x2[1] = ((orc_uint8)var37.x2[1] + (orc_uint8)var38.x2[1] + 1)>>1; + /* 3: loadw */ + var39 = ptr4[i]; + /* 4: loadw */ + var40 = ptr8[i]; + /* 5: avgub */ + var48.x2[0] = ((orc_uint8)var39.x2[0] + (orc_uint8)var40.x2[0] + 1)>>1; + var48.x2[1] = ((orc_uint8)var39.x2[1] + (orc_uint8)var40.x2[1] + 1)>>1; + /* 6: loadw */ + var41 = ptr7[i]; + /* 7: copyw */ + var49.i = var41.i; + /* 8: avgub */ + var50.x2[0] = ((orc_uint8)var48.x2[0] + (orc_uint8)var49.x2[0] + 1)>>1; + var50.x2[1] = ((orc_uint8)var48.x2[1] + (orc_uint8)var49.x2[1] + 1)>>1; + /* 10: andw */ + var51.i = var50.i & var42.i; + /* 12: andw */ + var52.i = var49.i & var43.i; + /* 13: orw */ + var53.i = var52.i | var51.i; + /* 14: mergebw */ + { + orc_union16 _dest; + _dest.x2[0] = var47.x2[0]; + _dest.x2[1] = var53.x2[0]; + var54.x2[0] = _dest.i; + } + { + orc_union16 _dest; + _dest.x2[0] = var47.x2[1]; + _dest.x2[1] = var53.x2[1]; + var54.x2[1] = _dest.i; + } + /* 15: loadw */ + var44 = ptr6[i]; + /* 17: mergebw */ + { + orc_union16 _dest; + _dest.x2[0] = var44.x2[0]; + _dest.x2[1] = var45.x2[0]; + var55.x2[0] = _dest.i; + } + { + orc_union16 _dest; + _dest.x2[0] = var44.x2[1]; + _dest.x2[1] = var45.x2[1]; + var55.x2[1] = _dest.i; + } + /* 18: mergewl */ + { + orc_union32 _dest; + _dest.x2[0] = var54.x2[0]; + _dest.x2[1] = var55.x2[0]; + var46.x2[0] = _dest.i; + } + { + orc_union32 _dest; + _dest.x2[0] = var54.x2[1]; + _dest.x2[1] = var55.x2[1]; + var46.x2[1] = _dest.i; + } + /* 19: storeq */ + ptr0[i] = var46; + } + +} + +/* bayer_orc_merge_gr_rgba */ +static void +_backup_bayer_orc_merge_gr_rgba (OrcExecutor * ORC_RESTRICT ex) +{ + int i; + int n = ex->n; + orc_union64 * ORC_RESTRICT ptr0; + const orc_union16 * ORC_RESTRICT ptr4; + const orc_union16 * ORC_RESTRICT ptr5; + const orc_union16 * ORC_RESTRICT ptr6; + const orc_union16 * ORC_RESTRICT ptr7; + const orc_union16 * ORC_RESTRICT ptr8; + const orc_union16 * ORC_RESTRICT ptr9; + orc_union16 var37; + orc_union16 var38; + orc_union16 var39; + orc_union16 var40; + orc_union16 var41; + orc_union16 var42; + orc_union16 var43; + orc_union16 var44; + orc_union16 var45; + orc_union64 var46; + orc_union16 var47; + orc_union16 var48; + orc_union16 var49; + orc_union16 var50; + orc_union16 var51; + orc_union16 var52; + orc_union16 var53; + orc_union32 var54; + orc_union32 var55; + + ptr0 = (orc_union64 *)ex->arrays[0]; + ptr4 = (orc_union16 *)ex->arrays[4]; + ptr5 = (orc_union16 *)ex->arrays[5]; + ptr6 = (orc_union16 *)ex->arrays[6]; + ptr7 = (orc_union16 *)ex->arrays[7]; + ptr8 = (orc_union16 *)ex->arrays[8]; + ptr9 = (orc_union16 *)ex->arrays[9]; + + /* 9: loadpw */ + var42.i = (int)0x0000ff00; /* 65280 or 3.22526e-319f */ + /* 11: loadpw */ + var43.i = (int)0x000000ff; /* 255 or 1.25987e-321f */ + /* 16: loadpb */ + var45.x2[0] = (int)0x000000ff; /* 255 or 1.25987e-321f */ + var45.x2[1] = (int)0x000000ff; /* 255 or 1.25987e-321f */ + + for (i = 0; i < n; i++) { + /* 0: loadw */ + var37 = ptr4[i]; + /* 1: loadw */ + var38 = ptr8[i]; + /* 2: avgub */ + var47.x2[0] = ((orc_uint8)var37.x2[0] + (orc_uint8)var38.x2[0] + 1)>>1; + var47.x2[1] = ((orc_uint8)var37.x2[1] + (orc_uint8)var38.x2[1] + 1)>>1; + /* 3: loadw */ + var39 = ptr5[i]; + /* 4: loadw */ + var40 = ptr9[i]; + /* 5: avgub */ + var48.x2[0] = ((orc_uint8)var39.x2[0] + (orc_uint8)var40.x2[0] + 1)>>1; + var48.x2[1] = ((orc_uint8)var39.x2[1] + (orc_uint8)var40.x2[1] + 1)>>1; + /* 6: loadw */ + var41 = ptr6[i]; + /* 7: copyw */ + var49.i = var41.i; + /* 8: avgub */ + var50.x2[0] = ((orc_uint8)var48.x2[0] + (orc_uint8)var49.x2[0] + 1)>>1; + var50.x2[1] = ((orc_uint8)var48.x2[1] + (orc_uint8)var49.x2[1] + 1)>>1; + /* 10: andw */ + var51.i = var50.i & var42.i; + /* 12: andw */ + var52.i = var49.i & var43.i; + /* 13: orw */ + var53.i = var52.i | var51.i; + /* 14: loadw */ + var44 = ptr7[i]; + /* 15: mergebw */ + { + orc_union16 _dest; + _dest.x2[0] = var44.x2[0]; + _dest.x2[1] = var53.x2[0]; + var54.x2[0] = _dest.i; + } + { + orc_union16 _dest; + _dest.x2[0] = var44.x2[1]; + _dest.x2[1] = var53.x2[1]; + var54.x2[1] = _dest.i; + } + /* 17: mergebw */ + { + orc_union16 _dest; + _dest.x2[0] = var47.x2[0]; + _dest.x2[1] = var45.x2[0]; + var55.x2[0] = _dest.i; + } + { + orc_union16 _dest; + _dest.x2[0] = var47.x2[1]; + _dest.x2[1] = var45.x2[1]; + var55.x2[1] = _dest.i; + } + /* 18: mergewl */ + { + orc_union32 _dest; + _dest.x2[0] = var54.x2[0]; + _dest.x2[1] = var55.x2[0]; + var46.x2[0] = _dest.i; + } + { + orc_union32 _dest; + _dest.x2[0] = var54.x2[1]; + _dest.x2[1] = var55.x2[1]; + var46.x2[1] = _dest.i; + } + /* 19: storeq */ + ptr0[i] = var46; + } + +} + +/* bayer_orc_merge_bg_argb */ +static void +_backup_bayer_orc_merge_bg_argb (OrcExecutor * ORC_RESTRICT ex) +{ + int i; + int n = ex->n; + orc_union64 * ORC_RESTRICT ptr0; + const orc_union16 * ORC_RESTRICT ptr4; + const orc_union16 * ORC_RESTRICT ptr5; + const orc_union16 * ORC_RESTRICT ptr6; + const orc_union16 * ORC_RESTRICT ptr7; + const orc_union16 * ORC_RESTRICT ptr8; + const orc_union16 * ORC_RESTRICT ptr9; + orc_union16 var37; + orc_union16 var38; + orc_union16 var39; + orc_union16 var40; + orc_union16 var41; + orc_union16 var42; + orc_union16 var43; + orc_union16 var44; + orc_union16 var45; + orc_union64 var46; + orc_union16 var47; + orc_union16 var48; + orc_union16 var49; + orc_union16 var50; + orc_union16 var51; + orc_union16 var52; + orc_union16 var53; + orc_union32 var54; + orc_union32 var55; + + ptr0 = (orc_union64 *)ex->arrays[0]; + ptr4 = (orc_union16 *)ex->arrays[4]; + ptr5 = (orc_union16 *)ex->arrays[5]; + ptr6 = (orc_union16 *)ex->arrays[6]; + ptr7 = (orc_union16 *)ex->arrays[7]; + ptr8 = (orc_union16 *)ex->arrays[8]; + ptr9 = (orc_union16 *)ex->arrays[9]; + + /* 9: loadpw */ + var42.i = (int)0x000000ff; /* 255 or 1.25987e-321f */ + /* 11: loadpw */ + var43.i = (int)0x0000ff00; /* 65280 or 3.22526e-319f */ + /* 14: loadpb */ + var44.x2[0] = (int)0x000000ff; /* 255 or 1.25987e-321f */ + var44.x2[1] = (int)0x000000ff; /* 255 or 1.25987e-321f */ + + for (i = 0; i < n; i++) { + /* 0: loadw */ + var37 = ptr5[i]; + /* 1: loadw */ + var38 = ptr9[i]; + /* 2: avgub */ + var47.x2[0] = ((orc_uint8)var37.x2[0] + (orc_uint8)var38.x2[0] + 1)>>1; + var47.x2[1] = ((orc_uint8)var37.x2[1] + (orc_uint8)var38.x2[1] + 1)>>1; + /* 3: loadw */ + var39 = ptr4[i]; + /* 4: loadw */ + var40 = ptr8[i]; + /* 5: avgub */ + var48.x2[0] = ((orc_uint8)var39.x2[0] + (orc_uint8)var40.x2[0] + 1)>>1; + var48.x2[1] = ((orc_uint8)var39.x2[1] + (orc_uint8)var40.x2[1] + 1)>>1; + /* 6: loadw */ + var41 = ptr7[i]; + /* 7: copyw */ + var49.i = var41.i; + /* 8: avgub */ + var50.x2[0] = ((orc_uint8)var48.x2[0] + (orc_uint8)var49.x2[0] + 1)>>1; + var50.x2[1] = ((orc_uint8)var48.x2[1] + (orc_uint8)var49.x2[1] + 1)>>1; + /* 10: andw */ + var51.i = var50.i & var42.i; + /* 12: andw */ + var52.i = var49.i & var43.i; + /* 13: orw */ + var53.i = var52.i | var51.i; + /* 15: mergebw */ + { + orc_union16 _dest; + _dest.x2[0] = var44.x2[0]; + _dest.x2[1] = var47.x2[0]; + var54.x2[0] = _dest.i; + } + { + orc_union16 _dest; + _dest.x2[0] = var44.x2[1]; + _dest.x2[1] = var47.x2[1]; + var54.x2[1] = _dest.i; + } + /* 16: loadw */ + var45 = ptr6[i]; + /* 17: mergebw */ + { + orc_union16 _dest; + _dest.x2[0] = var53.x2[0]; + _dest.x2[1] = var45.x2[0]; + var55.x2[0] = _dest.i; + } + { + orc_union16 _dest; + _dest.x2[0] = var53.x2[1]; + _dest.x2[1] = var45.x2[1]; + var55.x2[1] = _dest.i; + } + /* 18: mergewl */ + { + orc_union32 _dest; + _dest.x2[0] = var54.x2[0]; + _dest.x2[1] = var55.x2[0]; + var46.x2[0] = _dest.i; + } + { + orc_union32 _dest; + _dest.x2[0] = var54.x2[1]; + _dest.x2[1] = var55.x2[1]; + var46.x2[1] = _dest.i; + } + /* 19: storeq */ + ptr0[i] = var46; + } + +} + +/* bayer_orc_merge_gr_argb */ +static void +_backup_bayer_orc_merge_gr_argb (OrcExecutor * ORC_RESTRICT ex) +{ + int i; + int n = ex->n; + orc_union64 * ORC_RESTRICT ptr0; + const orc_union16 * ORC_RESTRICT ptr4; + const orc_union16 * ORC_RESTRICT ptr5; + const orc_union16 * ORC_RESTRICT ptr6; + const orc_union16 * ORC_RESTRICT ptr7; + const orc_union16 * ORC_RESTRICT ptr8; + const orc_union16 * ORC_RESTRICT ptr9; + orc_union16 var37; + orc_union16 var38; + orc_union16 var39; + orc_union16 var40; + orc_union16 var41; + orc_union16 var42; + orc_union16 var43; + orc_union16 var44; + orc_union16 var45; + orc_union64 var46; + orc_union16 var47; + orc_union16 var48; + orc_union16 var49; + orc_union16 var50; + orc_union16 var51; + orc_union16 var52; + orc_union16 var53; + orc_union32 var54; + orc_union32 var55; + + ptr0 = (orc_union64 *)ex->arrays[0]; + ptr4 = (orc_union16 *)ex->arrays[4]; + ptr5 = (orc_union16 *)ex->arrays[5]; + ptr6 = (orc_union16 *)ex->arrays[6]; + ptr7 = (orc_union16 *)ex->arrays[7]; + ptr8 = (orc_union16 *)ex->arrays[8]; + ptr9 = (orc_union16 *)ex->arrays[9]; + + /* 9: loadpw */ + var42.i = (int)0x0000ff00; /* 65280 or 3.22526e-319f */ + /* 11: loadpw */ + var43.i = (int)0x000000ff; /* 255 or 1.25987e-321f */ + /* 14: loadpb */ + var44.x2[0] = (int)0x000000ff; /* 255 or 1.25987e-321f */ + var44.x2[1] = (int)0x000000ff; /* 255 or 1.25987e-321f */ + + for (i = 0; i < n; i++) { + /* 0: loadw */ + var37 = ptr4[i]; + /* 1: loadw */ + var38 = ptr8[i]; + /* 2: avgub */ + var47.x2[0] = ((orc_uint8)var37.x2[0] + (orc_uint8)var38.x2[0] + 1)>>1; + var47.x2[1] = ((orc_uint8)var37.x2[1] + (orc_uint8)var38.x2[1] + 1)>>1; + /* 3: loadw */ + var39 = ptr5[i]; + /* 4: loadw */ + var40 = ptr9[i]; + /* 5: avgub */ + var48.x2[0] = ((orc_uint8)var39.x2[0] + (orc_uint8)var40.x2[0] + 1)>>1; + var48.x2[1] = ((orc_uint8)var39.x2[1] + (orc_uint8)var40.x2[1] + 1)>>1; + /* 6: loadw */ + var41 = ptr6[i]; + /* 7: copyw */ + var49.i = var41.i; + /* 8: avgub */ + var50.x2[0] = ((orc_uint8)var48.x2[0] + (orc_uint8)var49.x2[0] + 1)>>1; + var50.x2[1] = ((orc_uint8)var48.x2[1] + (orc_uint8)var49.x2[1] + 1)>>1; + /* 10: andw */ + var51.i = var50.i & var42.i; + /* 12: andw */ + var52.i = var49.i & var43.i; + /* 13: orw */ + var53.i = var52.i | var51.i; + /* 15: loadw */ + var45 = ptr7[i]; + /* 16: mergebw */ + { + orc_union16 _dest; + _dest.x2[0] = var44.x2[0]; + _dest.x2[1] = var45.x2[0]; + var54.x2[0] = _dest.i; + } + { + orc_union16 _dest; + _dest.x2[0] = var44.x2[1]; + _dest.x2[1] = var45.x2[1]; + var54.x2[1] = _dest.i; + } + /* 17: mergebw */ + { + orc_union16 _dest; + _dest.x2[0] = var53.x2[0]; + _dest.x2[1] = var47.x2[0]; + var55.x2[0] = _dest.i; + } + { + orc_union16 _dest; + _dest.x2[0] = var53.x2[1]; + _dest.x2[1] = var47.x2[1]; + var55.x2[1] = _dest.i; + } + /* 18: mergewl */ + { + orc_union32 _dest; + _dest.x2[0] = var54.x2[0]; + _dest.x2[1] = var55.x2[0]; + var46.x2[0] = _dest.i; + } + { + orc_union32 _dest; + _dest.x2[0] = var54.x2[1]; + _dest.x2[1] = var55.x2[1]; + var46.x2[1] = _dest.i; + } + /* 19: storeq */ + ptr0[i] = var46; + } + +} + + +static int quiet = 0; +static int benchmark = 0; + +static void help (const char *argv0) +{ + printf("Usage:\n"); + printf(" %s [OPTION]\n", argv0); + printf("Help Options:\n"); + printf(" -h, --help Show help options\n"); + printf("Application Options:\n"); + printf(" -b, --benchmark Run benchmark and show results\n"); + printf(" -q, --quiet Don't output anything except on failures\n"); + + exit(0); +} + +int +main (int argc, char *argv[]) +{ + int error = FALSE; + int i; + + orc_test_init (); + + for(i=1;i<argc;i++) { + if (strcmp(argv[i], "--help") == 0 || + strcmp(argv[i], "-h") == 0) { + help(argv[0]); + } else if (strcmp(argv[i], "--quiet") == 0 || + strcmp(argv[i], "-q") == 0) { + quiet = 1; + benchmark = 0; + } else if (strcmp(argv[i], "--benchmark") == 0 || + strcmp(argv[i], "-b") == 0) { + benchmark = 1; + quiet = 0; + } + } + + /* bayer_orc_horiz_upsample_unaligned */ + { + OrcProgram *p = NULL; + int ret; + + if (!quiet) printf ("bayer_orc_horiz_upsample_unaligned:\n"); + p = orc_program_new (); + orc_program_set_name (p, "bayer_orc_horiz_upsample_unaligned"); + orc_program_set_backup_function (p, _backup_bayer_orc_horiz_upsample_unaligned); + orc_program_add_destination (p, 2, "d1"); + orc_program_add_destination (p, 2, "d2"); + orc_program_add_source (p, 2, "s1"); + orc_program_add_constant (p, 4, 0x00000001, "c1"); + orc_program_add_temporary (p, 2, "t1"); + orc_program_add_temporary (p, 1, "t2"); + orc_program_add_temporary (p, 1, "t3"); + orc_program_add_temporary (p, 1, "t4"); + orc_program_add_temporary (p, 1, "t5"); + + orc_program_append_2 (p, "splitwb", 0, ORC_VAR_T3, ORC_VAR_T2, ORC_VAR_S1, ORC_VAR_D1); + orc_program_append_2 (p, "loadoffw", 0, ORC_VAR_T1, ORC_VAR_S1, ORC_VAR_C1, ORC_VAR_D1); + orc_program_append_2 (p, "splitwb", 0, ORC_VAR_T5, ORC_VAR_T4, ORC_VAR_T1, ORC_VAR_D1); + orc_program_append_2 (p, "avgub", 0, ORC_VAR_T5, ORC_VAR_T3, ORC_VAR_T5, ORC_VAR_D1); + orc_program_append_2 (p, "mergebw", 0, ORC_VAR_D1, ORC_VAR_T3, ORC_VAR_T5, ORC_VAR_D1); + orc_program_append_2 (p, "avgub", 0, ORC_VAR_T2, ORC_VAR_T2, ORC_VAR_T4, ORC_VAR_D1); + orc_program_append_2 (p, "mergebw", 0, ORC_VAR_D2, ORC_VAR_T2, ORC_VAR_T4, ORC_VAR_D1); + + if (benchmark) { + printf (" cycles (emulate) : %g\n", + orc_test_performance_full (p, ORC_TEST_FLAGS_EMULATE, NULL)); + } + + ret = orc_test_compare_output_backup (p); + if (!ret) { + error = TRUE; + } else if (!quiet) { + printf (" backup function : PASSED\n"); + } + + if (benchmark) { + printf (" cycles (backup) : %g\n", + orc_test_performance_full (p, ORC_TEST_FLAGS_BACKUP, NULL)); + } + + ret = orc_test_compare_output (p); + if (ret == ORC_TEST_INDETERMINATE && !quiet) { + printf (" compiled function: COMPILE FAILED\n"); + } else if (!ret) { + error = TRUE; + } else if (!quiet) { + printf (" compiled function: PASSED\n"); + } + + if (benchmark) { + printf (" cycles (compiled): %g\n", + orc_test_performance_full (p, 0, NULL)); + } + + orc_program_free (p); + } + + /* bayer_orc_horiz_upsample */ + { + OrcProgram *p = NULL; + int ret; + + if (!quiet) printf ("bayer_orc_horiz_upsample:\n"); + p = orc_program_new (); + orc_program_set_name (p, "bayer_orc_horiz_upsample"); + orc_program_set_backup_function (p, _backup_bayer_orc_horiz_upsample); + orc_program_add_destination (p, 2, "d1"); + orc_program_add_destination (p, 2, "d2"); + orc_program_add_source (p, 2, "s1"); + orc_program_add_constant (p, 4, 0xffffffff, "c1"); + orc_program_add_constant (p, 4, 0x00000001, "c2"); + orc_program_add_temporary (p, 2, "t1"); + orc_program_add_temporary (p, 1, "t2"); + orc_program_add_temporary (p, 1, "t3"); + orc_program_add_temporary (p, 1, "t4"); + orc_program_add_temporary (p, 1, "t5"); + orc_program_add_temporary (p, 1, "t6"); + orc_program_add_temporary (p, 1, "t7"); + + orc_program_append_2 (p, "loadoffw", 0, ORC_VAR_T1, ORC_VAR_S1, ORC_VAR_C1, ORC_VAR_D1); + orc_program_append_2 (p, "splitwb", 0, ORC_VAR_T3, ORC_VAR_T2, ORC_VAR_T1, ORC_VAR_D1); + orc_program_append_2 (p, "splitwb", 0, ORC_VAR_T5, ORC_VAR_T4, ORC_VAR_S1, ORC_VAR_D1); + orc_program_append_2 (p, "loadoffw", 0, ORC_VAR_T1, ORC_VAR_S1, ORC_VAR_C2, ORC_VAR_D1); + orc_program_append_2 (p, "splitwb", 0, ORC_VAR_T7, ORC_VAR_T6, ORC_VAR_T1, ORC_VAR_D1); + orc_program_append_2 (p, "avgub", 0, ORC_VAR_T6, ORC_VAR_T4, ORC_VAR_T6, ORC_VAR_D1); + orc_program_append_2 (p, "mergebw", 0, ORC_VAR_D1, ORC_VAR_T4, ORC_VAR_T6, ORC_VAR_D1); + orc_program_append_2 (p, "avgub", 0, ORC_VAR_T3, ORC_VAR_T3, ORC_VAR_T5, ORC_VAR_D1); + orc_program_append_2 (p, "mergebw", 0, ORC_VAR_D2, ORC_VAR_T3, ORC_VAR_T5, ORC_VAR_D1); + + if (benchmark) { + printf (" cycles (emulate) : %g\n", + orc_test_performance_full (p, ORC_TEST_FLAGS_EMULATE, NULL)); + } + + ret = orc_test_compare_output_backup (p); + if (!ret) { + error = TRUE; + } else if (!quiet) { + printf (" backup function : PASSED\n"); + } + + if (benchmark) { + printf (" cycles (backup) : %g\n", + orc_test_performance_full (p, ORC_TEST_FLAGS_BACKUP, NULL)); + } + + ret = orc_test_compare_output (p); + if (ret == ORC_TEST_INDETERMINATE && !quiet) { + printf (" compiled function: COMPILE FAILED\n"); + } else if (!ret) { + error = TRUE; + } else if (!quiet) { + printf (" compiled function: PASSED\n"); + } + + if (benchmark) { + printf (" cycles (compiled): %g\n", + orc_test_performance_full (p, 0, NULL)); + } + + orc_program_free (p); + } + + /* bayer_orc_merge_bg_bgra */ + { + OrcProgram *p = NULL; + int ret; + + if (!quiet) printf ("bayer_orc_merge_bg_bgra:\n"); + p = orc_program_new (); + orc_program_set_name (p, "bayer_orc_merge_bg_bgra"); + orc_program_set_backup_function (p, _backup_bayer_orc_merge_bg_bgra); + orc_program_add_destination (p, 8, "d1"); + orc_program_add_source (p, 2, "s1"); + orc_program_add_source (p, 2, "s2"); + orc_program_add_source (p, 2, "s3"); + orc_program_add_source (p, 2, "s4"); + orc_program_add_source (p, 2, "s5"); + orc_program_add_source (p, 2, "s6"); + orc_program_add_constant (p, 4, 0x000000ff, "c1"); + orc_program_add_constant (p, 4, 0x0000ff00, "c2"); + orc_program_add_temporary (p, 4, "t1"); + orc_program_add_temporary (p, 4, "t2"); + orc_program_add_temporary (p, 2, "t3"); + orc_program_add_temporary (p, 2, "t4"); + orc_program_add_temporary (p, 2, "t5"); + + orc_program_append_2 (p, "avgub", 1, ORC_VAR_T3, ORC_VAR_S2, ORC_VAR_S6, ORC_VAR_D1); + orc_program_append_2 (p, "avgub", 1, ORC_VAR_T4, ORC_VAR_S1, ORC_VAR_S5, ORC_VAR_D1); + orc_program_append_2 (p, "copyw", 0, ORC_VAR_T5, ORC_VAR_S4, ORC_VAR_D1, ORC_VAR_D1); + orc_program_append_2 (p, "avgub", 1, ORC_VAR_T4, ORC_VAR_T4, ORC_VAR_T5, ORC_VAR_D1); + orc_program_append_2 (p, "andw", 0, ORC_VAR_T4, ORC_VAR_T4, ORC_VAR_C1, ORC_VAR_D1); + orc_program_append_2 (p, "andw", 0, ORC_VAR_T5, ORC_VAR_T5, ORC_VAR_C2, ORC_VAR_D1); + orc_program_append_2 (p, "orw", 0, ORC_VAR_T4, ORC_VAR_T5, ORC_VAR_T4, ORC_VAR_D1); + orc_program_append_2 (p, "mergebw", 1, ORC_VAR_T2, ORC_VAR_S3, ORC_VAR_T4, ORC_VAR_D1); + orc_program_append_2 (p, "mergebw", 1, ORC_VAR_T1, ORC_VAR_T3, ORC_VAR_C1, ORC_VAR_D1); + orc_program_append_2 (p, "mergewl", 1, ORC_VAR_D1, ORC_VAR_T2, ORC_VAR_T1, ORC_VAR_D1); + + if (benchmark) { + printf (" cycles (emulate) : %g\n", + orc_test_performance_full (p, ORC_TEST_FLAGS_EMULATE, NULL)); + } + + ret = orc_test_compare_output_backup (p); + if (!ret) { + error = TRUE; + } else if (!quiet) { + printf (" backup function : PASSED\n"); + } + + if (benchmark) { + printf (" cycles (backup) : %g\n", + orc_test_performance_full (p, ORC_TEST_FLAGS_BACKUP, NULL)); + } + + ret = orc_test_compare_output (p); + if (ret == ORC_TEST_INDETERMINATE && !quiet) { + printf (" compiled function: COMPILE FAILED\n"); + } else if (!ret) { + error = TRUE; + } else if (!quiet) { + printf (" compiled function: PASSED\n"); + } + + if (benchmark) { + printf (" cycles (compiled): %g\n", + orc_test_performance_full (p, 0, NULL)); + } + + orc_program_free (p); + } + + /* bayer_orc_merge_gr_bgra */ + { + OrcProgram *p = NULL; + int ret; + + if (!quiet) printf ("bayer_orc_merge_gr_bgra:\n"); + p = orc_program_new (); + orc_program_set_name (p, "bayer_orc_merge_gr_bgra"); + orc_program_set_backup_function (p, _backup_bayer_orc_merge_gr_bgra); + orc_program_add_destination (p, 8, "d1"); + orc_program_add_source (p, 2, "s1"); + orc_program_add_source (p, 2, "s2"); + orc_program_add_source (p, 2, "s3"); + orc_program_add_source (p, 2, "s4"); + orc_program_add_source (p, 2, "s5"); + orc_program_add_source (p, 2, "s6"); + orc_program_add_constant (p, 4, 0x0000ff00, "c1"); + orc_program_add_constant (p, 4, 0x000000ff, "c2"); + orc_program_add_temporary (p, 4, "t1"); + orc_program_add_temporary (p, 4, "t2"); + orc_program_add_temporary (p, 2, "t3"); + orc_program_add_temporary (p, 2, "t4"); + orc_program_add_temporary (p, 2, "t5"); + + orc_program_append_2 (p, "avgub", 1, ORC_VAR_T3, ORC_VAR_S1, ORC_VAR_S5, ORC_VAR_D1); + orc_program_append_2 (p, "avgub", 1, ORC_VAR_T4, ORC_VAR_S2, ORC_VAR_S6, ORC_VAR_D1); + orc_program_append_2 (p, "copyw", 0, ORC_VAR_T5, ORC_VAR_S3, ORC_VAR_D1, ORC_VAR_D1); + orc_program_append_2 (p, "avgub", 1, ORC_VAR_T4, ORC_VAR_T4, ORC_VAR_T5, ORC_VAR_D1); + orc_program_append_2 (p, "andw", 0, ORC_VAR_T4, ORC_VAR_T4, ORC_VAR_C1, ORC_VAR_D1); + orc_program_append_2 (p, "andw", 0, ORC_VAR_T5, ORC_VAR_T5, ORC_VAR_C2, ORC_VAR_D1); + orc_program_append_2 (p, "orw", 0, ORC_VAR_T4, ORC_VAR_T5, ORC_VAR_T4, ORC_VAR_D1); + orc_program_append_2 (p, "mergebw", 1, ORC_VAR_T2, ORC_VAR_T3, ORC_VAR_T4, ORC_VAR_D1); + orc_program_append_2 (p, "mergebw", 1, ORC_VAR_T1, ORC_VAR_S4, ORC_VAR_C2, ORC_VAR_D1); + orc_program_append_2 (p, "mergewl", 1, ORC_VAR_D1, ORC_VAR_T2, ORC_VAR_T1, ORC_VAR_D1); + + if (benchmark) { + printf (" cycles (emulate) : %g\n", + orc_test_performance_full (p, ORC_TEST_FLAGS_EMULATE, NULL)); + } + + ret = orc_test_compare_output_backup (p); + if (!ret) { + error = TRUE; + } else if (!quiet) { + printf (" backup function : PASSED\n"); + } + + if (benchmark) { + printf (" cycles (backup) : %g\n", + orc_test_performance_full (p, ORC_TEST_FLAGS_BACKUP, NULL)); + } + + ret = orc_test_compare_output (p); + if (ret == ORC_TEST_INDETERMINATE && !quiet) { + printf (" compiled function: COMPILE FAILED\n"); + } else if (!ret) { + error = TRUE; + } else if (!quiet) { + printf (" compiled function: PASSED\n"); + } + + if (benchmark) { + printf (" cycles (compiled): %g\n", + orc_test_performance_full (p, 0, NULL)); + } + + orc_program_free (p); + } + + /* bayer_orc_merge_bg_abgr */ + { + OrcProgram *p = NULL; + int ret; + + if (!quiet) printf ("bayer_orc_merge_bg_abgr:\n"); + p = orc_program_new (); + orc_program_set_name (p, "bayer_orc_merge_bg_abgr"); + orc_program_set_backup_function (p, _backup_bayer_orc_merge_bg_abgr); + orc_program_add_destination (p, 8, "d1"); + orc_program_add_source (p, 2, "s1"); + orc_program_add_source (p, 2, "s2"); + orc_program_add_source (p, 2, "s3"); + orc_program_add_source (p, 2, "s4"); + orc_program_add_source (p, 2, "s5"); + orc_program_add_source (p, 2, "s6"); + orc_program_add_constant (p, 4, 0x000000ff, "c1"); + orc_program_add_constant (p, 4, 0x0000ff00, "c2"); + orc_program_add_temporary (p, 4, "t1"); + orc_program_add_temporary (p, 4, "t2"); + orc_program_add_temporary (p, 2, "t3"); + orc_program_add_temporary (p, 2, "t4"); + orc_program_add_temporary (p, 2, "t5"); + + orc_program_append_2 (p, "avgub", 1, ORC_VAR_T3, ORC_VAR_S2, ORC_VAR_S6, ORC_VAR_D1); + orc_program_append_2 (p, "avgub", 1, ORC_VAR_T4, ORC_VAR_S1, ORC_VAR_S5, ORC_VAR_D1); + orc_program_append_2 (p, "copyw", 0, ORC_VAR_T5, ORC_VAR_S4, ORC_VAR_D1, ORC_VAR_D1); + orc_program_append_2 (p, "avgub", 1, ORC_VAR_T4, ORC_VAR_T4, ORC_VAR_T5, ORC_VAR_D1); + orc_program_append_2 (p, "andw", 0, ORC_VAR_T4, ORC_VAR_T4, ORC_VAR_C1, ORC_VAR_D1); + orc_program_append_2 (p, "andw", 0, ORC_VAR_T5, ORC_VAR_T5, ORC_VAR_C2, ORC_VAR_D1); + orc_program_append_2 (p, "orw", 0, ORC_VAR_T4, ORC_VAR_T5, ORC_VAR_T4, ORC_VAR_D1); + orc_program_append_2 (p, "mergebw", 1, ORC_VAR_T1, ORC_VAR_C1, ORC_VAR_S3, ORC_VAR_D1); + orc_program_append_2 (p, "mergebw", 1, ORC_VAR_T2, ORC_VAR_T4, ORC_VAR_T3, ORC_VAR_D1); + orc_program_append_2 (p, "mergewl", 1, ORC_VAR_D1, ORC_VAR_T1, ORC_VAR_T2, ORC_VAR_D1); + + if (benchmark) { + printf (" cycles (emulate) : %g\n", + orc_test_performance_full (p, ORC_TEST_FLAGS_EMULATE, NULL)); + } + + ret = orc_test_compare_output_backup (p); + if (!ret) { + error = TRUE; + } else if (!quiet) { + printf (" backup function : PASSED\n"); + } + + if (benchmark) { + printf (" cycles (backup) : %g\n", + orc_test_performance_full (p, ORC_TEST_FLAGS_BACKUP, NULL)); + } + + ret = orc_test_compare_output (p); + if (ret == ORC_TEST_INDETERMINATE && !quiet) { + printf (" compiled function: COMPILE FAILED\n"); + } else if (!ret) { + error = TRUE; + } else if (!quiet) { + printf (" compiled function: PASSED\n"); + } + + if (benchmark) { + printf (" cycles (compiled): %g\n", + orc_test_performance_full (p, 0, NULL)); + } + + orc_program_free (p); + } + + /* bayer_orc_merge_gr_abgr */ + { + OrcProgram *p = NULL; + int ret; + + if (!quiet) printf ("bayer_orc_merge_gr_abgr:\n"); + p = orc_program_new (); + orc_program_set_name (p, "bayer_orc_merge_gr_abgr"); + orc_program_set_backup_function (p, _backup_bayer_orc_merge_gr_abgr); + orc_program_add_destination (p, 8, "d1"); + orc_program_add_source (p, 2, "s1"); + orc_program_add_source (p, 2, "s2"); + orc_program_add_source (p, 2, "s3"); + orc_program_add_source (p, 2, "s4"); + orc_program_add_source (p, 2, "s5"); + orc_program_add_source (p, 2, "s6"); + orc_program_add_constant (p, 4, 0x0000ff00, "c1"); + orc_program_add_constant (p, 4, 0x000000ff, "c2"); + orc_program_add_temporary (p, 4, "t1"); + orc_program_add_temporary (p, 4, "t2"); + orc_program_add_temporary (p, 2, "t3"); + orc_program_add_temporary (p, 2, "t4"); + orc_program_add_temporary (p, 2, "t5"); + + orc_program_append_2 (p, "avgub", 1, ORC_VAR_T3, ORC_VAR_S1, ORC_VAR_S5, ORC_VAR_D1); + orc_program_append_2 (p, "avgub", 1, ORC_VAR_T4, ORC_VAR_S2, ORC_VAR_S6, ORC_VAR_D1); + orc_program_append_2 (p, "copyw", 0, ORC_VAR_T5, ORC_VAR_S3, ORC_VAR_D1, ORC_VAR_D1); + orc_program_append_2 (p, "avgub", 1, ORC_VAR_T4, ORC_VAR_T4, ORC_VAR_T5, ORC_VAR_D1); + orc_program_append_2 (p, "andw", 0, ORC_VAR_T4, ORC_VAR_T4, ORC_VAR_C1, ORC_VAR_D1); + orc_program_append_2 (p, "andw", 0, ORC_VAR_T5, ORC_VAR_T5, ORC_VAR_C2, ORC_VAR_D1); + orc_program_append_2 (p, "orw", 0, ORC_VAR_T4, ORC_VAR_T5, ORC_VAR_T4, ORC_VAR_D1); + orc_program_append_2 (p, "mergebw", 1, ORC_VAR_T1, ORC_VAR_C2, ORC_VAR_T3, ORC_VAR_D1); + orc_program_append_2 (p, "mergebw", 1, ORC_VAR_T2, ORC_VAR_T4, ORC_VAR_S4, ORC_VAR_D1); + orc_program_append_2 (p, "mergewl", 1, ORC_VAR_D1, ORC_VAR_T1, ORC_VAR_T2, ORC_VAR_D1); + + if (benchmark) { + printf (" cycles (emulate) : %g\n", + orc_test_performance_full (p, ORC_TEST_FLAGS_EMULATE, NULL)); + } + + ret = orc_test_compare_output_backup (p); + if (!ret) { + error = TRUE; + } else if (!quiet) { + printf (" backup function : PASSED\n"); + } + + if (benchmark) { + printf (" cycles (backup) : %g\n", + orc_test_performance_full (p, ORC_TEST_FLAGS_BACKUP, NULL)); + } + + ret = orc_test_compare_output (p); + if (ret == ORC_TEST_INDETERMINATE && !quiet) { + printf (" compiled function: COMPILE FAILED\n"); + } else if (!ret) { + error = TRUE; + } else if (!quiet) { + printf (" compiled function: PASSED\n"); + } + + if (benchmark) { + printf (" cycles (compiled): %g\n", + orc_test_performance_full (p, 0, NULL)); + } + + orc_program_free (p); + } + + /* bayer_orc_merge_bg_rgba */ + { + OrcProgram *p = NULL; + int ret; + + if (!quiet) printf ("bayer_orc_merge_bg_rgba:\n"); + p = orc_program_new (); + orc_program_set_name (p, "bayer_orc_merge_bg_rgba"); + orc_program_set_backup_function (p, _backup_bayer_orc_merge_bg_rgba); + orc_program_add_destination (p, 8, "d1"); + orc_program_add_source (p, 2, "s1"); + orc_program_add_source (p, 2, "s2"); + orc_program_add_source (p, 2, "s3"); + orc_program_add_source (p, 2, "s4"); + orc_program_add_source (p, 2, "s5"); + orc_program_add_source (p, 2, "s6"); + orc_program_add_constant (p, 4, 0x000000ff, "c1"); + orc_program_add_constant (p, 4, 0x0000ff00, "c2"); + orc_program_add_temporary (p, 4, "t1"); + orc_program_add_temporary (p, 4, "t2"); + orc_program_add_temporary (p, 2, "t3"); + orc_program_add_temporary (p, 2, "t4"); + orc_program_add_temporary (p, 2, "t5"); + + orc_program_append_2 (p, "avgub", 1, ORC_VAR_T3, ORC_VAR_S2, ORC_VAR_S6, ORC_VAR_D1); + orc_program_append_2 (p, "avgub", 1, ORC_VAR_T4, ORC_VAR_S1, ORC_VAR_S5, ORC_VAR_D1); + orc_program_append_2 (p, "copyw", 0, ORC_VAR_T5, ORC_VAR_S4, ORC_VAR_D1, ORC_VAR_D1); + orc_program_append_2 (p, "avgub", 1, ORC_VAR_T4, ORC_VAR_T4, ORC_VAR_T5, ORC_VAR_D1); + orc_program_append_2 (p, "andw", 0, ORC_VAR_T4, ORC_VAR_T4, ORC_VAR_C1, ORC_VAR_D1); + orc_program_append_2 (p, "andw", 0, ORC_VAR_T5, ORC_VAR_T5, ORC_VAR_C2, ORC_VAR_D1); + orc_program_append_2 (p, "orw", 0, ORC_VAR_T4, ORC_VAR_T5, ORC_VAR_T4, ORC_VAR_D1); + orc_program_append_2 (p, "mergebw", 1, ORC_VAR_T1, ORC_VAR_T3, ORC_VAR_T4, ORC_VAR_D1); + orc_program_append_2 (p, "mergebw", 1, ORC_VAR_T2, ORC_VAR_S3, ORC_VAR_C1, ORC_VAR_D1); + orc_program_append_2 (p, "mergewl", 1, ORC_VAR_D1, ORC_VAR_T1, ORC_VAR_T2, ORC_VAR_D1); + + if (benchmark) { + printf (" cycles (emulate) : %g\n", + orc_test_performance_full (p, ORC_TEST_FLAGS_EMULATE, NULL)); + } + + ret = orc_test_compare_output_backup (p); + if (!ret) { + error = TRUE; + } else if (!quiet) { + printf (" backup function : PASSED\n"); + } + + if (benchmark) { + printf (" cycles (backup) : %g\n", + orc_test_performance_full (p, ORC_TEST_FLAGS_BACKUP, NULL)); + } + + ret = orc_test_compare_output (p); + if (ret == ORC_TEST_INDETERMINATE && !quiet) { + printf (" compiled function: COMPILE FAILED\n"); + } else if (!ret) { + error = TRUE; + } else if (!quiet) { + printf (" compiled function: PASSED\n"); + } + + if (benchmark) { + printf (" cycles (compiled): %g\n", + orc_test_performance_full (p, 0, NULL)); + } + + orc_program_free (p); + } + + /* bayer_orc_merge_gr_rgba */ + { + OrcProgram *p = NULL; + int ret; + + if (!quiet) printf ("bayer_orc_merge_gr_rgba:\n"); + p = orc_program_new (); + orc_program_set_name (p, "bayer_orc_merge_gr_rgba"); + orc_program_set_backup_function (p, _backup_bayer_orc_merge_gr_rgba); + orc_program_add_destination (p, 8, "d1"); + orc_program_add_source (p, 2, "s1"); + orc_program_add_source (p, 2, "s2"); + orc_program_add_source (p, 2, "s3"); + orc_program_add_source (p, 2, "s4"); + orc_program_add_source (p, 2, "s5"); + orc_program_add_source (p, 2, "s6"); + orc_program_add_constant (p, 4, 0x0000ff00, "c1"); + orc_program_add_constant (p, 4, 0x000000ff, "c2"); + orc_program_add_temporary (p, 4, "t1"); + orc_program_add_temporary (p, 4, "t2"); + orc_program_add_temporary (p, 2, "t3"); + orc_program_add_temporary (p, 2, "t4"); + orc_program_add_temporary (p, 2, "t5"); + + orc_program_append_2 (p, "avgub", 1, ORC_VAR_T3, ORC_VAR_S1, ORC_VAR_S5, ORC_VAR_D1); + orc_program_append_2 (p, "avgub", 1, ORC_VAR_T4, ORC_VAR_S2, ORC_VAR_S6, ORC_VAR_D1); + orc_program_append_2 (p, "copyw", 0, ORC_VAR_T5, ORC_VAR_S3, ORC_VAR_D1, ORC_VAR_D1); + orc_program_append_2 (p, "avgub", 1, ORC_VAR_T4, ORC_VAR_T4, ORC_VAR_T5, ORC_VAR_D1); + orc_program_append_2 (p, "andw", 0, ORC_VAR_T4, ORC_VAR_T4, ORC_VAR_C1, ORC_VAR_D1); + orc_program_append_2 (p, "andw", 0, ORC_VAR_T5, ORC_VAR_T5, ORC_VAR_C2, ORC_VAR_D1); + orc_program_append_2 (p, "orw", 0, ORC_VAR_T4, ORC_VAR_T5, ORC_VAR_T4, ORC_VAR_D1); + orc_program_append_2 (p, "mergebw", 1, ORC_VAR_T1, ORC_VAR_S4, ORC_VAR_T4, ORC_VAR_D1); + orc_program_append_2 (p, "mergebw", 1, ORC_VAR_T2, ORC_VAR_T3, ORC_VAR_C2, ORC_VAR_D1); + orc_program_append_2 (p, "mergewl", 1, ORC_VAR_D1, ORC_VAR_T1, ORC_VAR_T2, ORC_VAR_D1); + + if (benchmark) { + printf (" cycles (emulate) : %g\n", + orc_test_performance_full (p, ORC_TEST_FLAGS_EMULATE, NULL)); + } + + ret = orc_test_compare_output_backup (p); + if (!ret) { + error = TRUE; + } else if (!quiet) { + printf (" backup function : PASSED\n"); + } + + if (benchmark) { + printf (" cycles (backup) : %g\n", + orc_test_performance_full (p, ORC_TEST_FLAGS_BACKUP, NULL)); + } + + ret = orc_test_compare_output (p); + if (ret == ORC_TEST_INDETERMINATE && !quiet) { + printf (" compiled function: COMPILE FAILED\n"); + } else if (!ret) { + error = TRUE; + } else if (!quiet) { + printf (" compiled function: PASSED\n"); + } + + if (benchmark) { + printf (" cycles (compiled): %g\n", + orc_test_performance_full (p, 0, NULL)); + } + + orc_program_free (p); + } + + /* bayer_orc_merge_bg_argb */ + { + OrcProgram *p = NULL; + int ret; + + if (!quiet) printf ("bayer_orc_merge_bg_argb:\n"); + p = orc_program_new (); + orc_program_set_name (p, "bayer_orc_merge_bg_argb"); + orc_program_set_backup_function (p, _backup_bayer_orc_merge_bg_argb); + orc_program_add_destination (p, 8, "d1"); + orc_program_add_source (p, 2, "s1"); + orc_program_add_source (p, 2, "s2"); + orc_program_add_source (p, 2, "s3"); + orc_program_add_source (p, 2, "s4"); + orc_program_add_source (p, 2, "s5"); + orc_program_add_source (p, 2, "s6"); + orc_program_add_constant (p, 4, 0x000000ff, "c1"); + orc_program_add_constant (p, 4, 0x0000ff00, "c2"); + orc_program_add_temporary (p, 4, "t1"); + orc_program_add_temporary (p, 4, "t2"); + orc_program_add_temporary (p, 2, "t3"); + orc_program_add_temporary (p, 2, "t4"); + orc_program_add_temporary (p, 2, "t5"); + + orc_program_append_2 (p, "avgub", 1, ORC_VAR_T3, ORC_VAR_S2, ORC_VAR_S6, ORC_VAR_D1); + orc_program_append_2 (p, "avgub", 1, ORC_VAR_T4, ORC_VAR_S1, ORC_VAR_S5, ORC_VAR_D1); + orc_program_append_2 (p, "copyw", 0, ORC_VAR_T5, ORC_VAR_S4, ORC_VAR_D1, ORC_VAR_D1); + orc_program_append_2 (p, "avgub", 1, ORC_VAR_T4, ORC_VAR_T4, ORC_VAR_T5, ORC_VAR_D1); + orc_program_append_2 (p, "andw", 0, ORC_VAR_T4, ORC_VAR_T4, ORC_VAR_C1, ORC_VAR_D1); + orc_program_append_2 (p, "andw", 0, ORC_VAR_T5, ORC_VAR_T5, ORC_VAR_C2, ORC_VAR_D1); + orc_program_append_2 (p, "orw", 0, ORC_VAR_T4, ORC_VAR_T5, ORC_VAR_T4, ORC_VAR_D1); + orc_program_append_2 (p, "mergebw", 1, ORC_VAR_T1, ORC_VAR_C1, ORC_VAR_T3, ORC_VAR_D1); + orc_program_append_2 (p, "mergebw", 1, ORC_VAR_T2, ORC_VAR_T4, ORC_VAR_S3, ORC_VAR_D1); + orc_program_append_2 (p, "mergewl", 1, ORC_VAR_D1, ORC_VAR_T1, ORC_VAR_T2, ORC_VAR_D1); + + if (benchmark) { + printf (" cycles (emulate) : %g\n", + orc_test_performance_full (p, ORC_TEST_FLAGS_EMULATE, NULL)); + } + + ret = orc_test_compare_output_backup (p); + if (!ret) { + error = TRUE; + } else if (!quiet) { + printf (" backup function : PASSED\n"); + } + + if (benchmark) { + printf (" cycles (backup) : %g\n", + orc_test_performance_full (p, ORC_TEST_FLAGS_BACKUP, NULL)); + } + + ret = orc_test_compare_output (p); + if (ret == ORC_TEST_INDETERMINATE && !quiet) { + printf (" compiled function: COMPILE FAILED\n"); + } else if (!ret) { + error = TRUE; + } else if (!quiet) { + printf (" compiled function: PASSED\n"); + } + + if (benchmark) { + printf (" cycles (compiled): %g\n", + orc_test_performance_full (p, 0, NULL)); + } + + orc_program_free (p); + } + + /* bayer_orc_merge_gr_argb */ + { + OrcProgram *p = NULL; + int ret; + + if (!quiet) printf ("bayer_orc_merge_gr_argb:\n"); + p = orc_program_new (); + orc_program_set_name (p, "bayer_orc_merge_gr_argb"); + orc_program_set_backup_function (p, _backup_bayer_orc_merge_gr_argb); + orc_program_add_destination (p, 8, "d1"); + orc_program_add_source (p, 2, "s1"); + orc_program_add_source (p, 2, "s2"); + orc_program_add_source (p, 2, "s3"); + orc_program_add_source (p, 2, "s4"); + orc_program_add_source (p, 2, "s5"); + orc_program_add_source (p, 2, "s6"); + orc_program_add_constant (p, 4, 0x0000ff00, "c1"); + orc_program_add_constant (p, 4, 0x000000ff, "c2"); + orc_program_add_temporary (p, 4, "t1"); + orc_program_add_temporary (p, 4, "t2"); + orc_program_add_temporary (p, 2, "t3"); + orc_program_add_temporary (p, 2, "t4"); + orc_program_add_temporary (p, 2, "t5"); + + orc_program_append_2 (p, "avgub", 1, ORC_VAR_T3, ORC_VAR_S1, ORC_VAR_S5, ORC_VAR_D1); + orc_program_append_2 (p, "avgub", 1, ORC_VAR_T4, ORC_VAR_S2, ORC_VAR_S6, ORC_VAR_D1); + orc_program_append_2 (p, "copyw", 0, ORC_VAR_T5, ORC_VAR_S3, ORC_VAR_D1, ORC_VAR_D1); + orc_program_append_2 (p, "avgub", 1, ORC_VAR_T4, ORC_VAR_T4, ORC_VAR_T5, ORC_VAR_D1); + orc_program_append_2 (p, "andw", 0, ORC_VAR_T4, ORC_VAR_T4, ORC_VAR_C1, ORC_VAR_D1); + orc_program_append_2 (p, "andw", 0, ORC_VAR_T5, ORC_VAR_T5, ORC_VAR_C2, ORC_VAR_D1); + orc_program_append_2 (p, "orw", 0, ORC_VAR_T4, ORC_VAR_T5, ORC_VAR_T4, ORC_VAR_D1); + orc_program_append_2 (p, "mergebw", 1, ORC_VAR_T1, ORC_VAR_C2, ORC_VAR_S4, ORC_VAR_D1); + orc_program_append_2 (p, "mergebw", 1, ORC_VAR_T2, ORC_VAR_T4, ORC_VAR_T3, ORC_VAR_D1); + orc_program_append_2 (p, "mergewl", 1, ORC_VAR_D1, ORC_VAR_T1, ORC_VAR_T2, ORC_VAR_D1); + + if (benchmark) { + printf (" cycles (emulate) : %g\n", + orc_test_performance_full (p, ORC_TEST_FLAGS_EMULATE, NULL)); + } + + ret = orc_test_compare_output_backup (p); + if (!ret) { + error = TRUE; + } else if (!quiet) { + printf (" backup function : PASSED\n"); + } + + if (benchmark) { + printf (" cycles (backup) : %g\n", + orc_test_performance_full (p, ORC_TEST_FLAGS_BACKUP, NULL)); + } + + ret = orc_test_compare_output (p); + if (ret == ORC_TEST_INDETERMINATE && !quiet) { + printf (" compiled function: COMPILE FAILED\n"); + } else if (!ret) { + error = TRUE; + } else if (!quiet) { + printf (" compiled function: PASSED\n"); + } + + if (benchmark) { + printf (" cycles (compiled): %g\n", + orc_test_performance_full (p, 0, NULL)); + } + + orc_program_free (p); + } + + + if (error) { + return 1; + }; + return 0; +} diff --git a/tests/examples/Makefile.in b/tests/examples/Makefile.in index 6c401c75..f75fb23b 100644 --- a/tests/examples/Makefile.in +++ b/tests/examples/Makefile.in @@ -1,4 +1,4 @@ -# Makefile.in generated by automake 1.11.5 from Makefile.am. +# Makefile.in generated by automake 1.11.6 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, @@ -215,11 +215,10 @@ DIRECT3D_LIBS = @DIRECT3D_LIBS@ DIRECTDRAW_LIBS = @DIRECTDRAW_LIBS@ DIRECTFB_CFLAGS = @DIRECTFB_CFLAGS@ DIRECTFB_LIBS = @DIRECTFB_LIBS@ +DIRECTSHOW_LIBS = @DIRECTSHOW_LIBS@ DIRECTSOUND_LIBS = @DIRECTSOUND_LIBS@ DIRECTX_CFLAGS = @DIRECTX_CFLAGS@ DIRECTX_LDFLAGS = @DIRECTX_LDFLAGS@ -DIVXDEC_LIBS = @DIVXDEC_LIBS@ -DIVXENC_LIBS = @DIVXENC_LIBS@ DLLTOOL = @DLLTOOL@ DSYMUTIL = @DSYMUTIL@ DTS_LIBS = @DTS_LIBS@ @@ -254,7 +253,9 @@ GIO_LIBS = @GIO_LIBS@ GLIB_CFLAGS = @GLIB_CFLAGS@ GLIB_COMPILE_SCHEMAS = @GLIB_COMPILE_SCHEMAS@ GLIB_EXTRA_CFLAGS = @GLIB_EXTRA_CFLAGS@ +GLIB_GENMARSHAL = @GLIB_GENMARSHAL@ GLIB_LIBS = @GLIB_LIBS@ +GLIB_MKENUMS = @GLIB_MKENUMS@ GLIB_PREFIX = @GLIB_PREFIX@ GLIB_REQ = @GLIB_REQ@ GME_LIBS = @GME_LIBS@ @@ -330,13 +331,14 @@ HAVE_CXX = @HAVE_CXX@ HAVE_DIRECT3D = @HAVE_DIRECT3D@ HAVE_DIRECT3D9 = @HAVE_DIRECT3D9@ HAVE_DIRECTDRAW = @HAVE_DIRECTDRAW@ +HAVE_DIRECTSHOW = @HAVE_DIRECTSHOW@ HAVE_DIRECTSOUND = @HAVE_DIRECTSOUND@ HAVE_DTS = @HAVE_DTS@ HAVE_FAAC = @HAVE_FAAC@ HAVE_FAAD = @HAVE_FAAD@ HAVE_FLITE = @HAVE_FLITE@ HAVE_GSM = @HAVE_GSM@ -HAVE_JP2K = @HAVE_JP2K@ +HAVE_JASPER = @HAVE_JASPER@ HAVE_NAS = @HAVE_NAS@ HAVE_VPX = @HAVE_VPX@ HAVE_WILDMIDI = @HAVE_WILDMIDI@ @@ -350,7 +352,7 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ INTLLIBS = @INTLLIBS@ INTL_MACOSX_LIBS = @INTL_MACOSX_LIBS@ -JP2K_LIBS = @JP2K_LIBS@ +JASPER_LIBS = @JASPER_LIBS@ KATE_CFLAGS = @KATE_CFLAGS@ KATE_LIBS = @KATE_LIBS@ LD = @LD@ @@ -386,6 +388,8 @@ MODPLUG_CFLAGS = @MODPLUG_CFLAGS@ MODPLUG_LIBS = @MODPLUG_LIBS@ MPEG2ENC_CFLAGS = @MPEG2ENC_CFLAGS@ MPEG2ENC_LIBS = @MPEG2ENC_LIBS@ +MPG123_CFLAGS = @MPG123_CFLAGS@ +MPG123_LIBS = @MPG123_LIBS@ MPLEX_CFLAGS = @MPLEX_CFLAGS@ MPLEX_LDFLAGS = @MPLEX_LDFLAGS@ MPLEX_LIBS = @MPLEX_LIBS@ diff --git a/tests/examples/camerabin2/Makefile.in b/tests/examples/camerabin2/Makefile.in index 4a929864..fed26c78 100644 --- a/tests/examples/camerabin2/Makefile.in +++ b/tests/examples/camerabin2/Makefile.in @@ -1,4 +1,4 @@ -# Makefile.in generated by automake 1.11.5 from Makefile.am. +# Makefile.in generated by automake 1.11.6 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, @@ -224,11 +224,10 @@ DIRECT3D_LIBS = @DIRECT3D_LIBS@ DIRECTDRAW_LIBS = @DIRECTDRAW_LIBS@ DIRECTFB_CFLAGS = @DIRECTFB_CFLAGS@ DIRECTFB_LIBS = @DIRECTFB_LIBS@ +DIRECTSHOW_LIBS = @DIRECTSHOW_LIBS@ DIRECTSOUND_LIBS = @DIRECTSOUND_LIBS@ DIRECTX_CFLAGS = @DIRECTX_CFLAGS@ DIRECTX_LDFLAGS = @DIRECTX_LDFLAGS@ -DIVXDEC_LIBS = @DIVXDEC_LIBS@ -DIVXENC_LIBS = @DIVXENC_LIBS@ DLLTOOL = @DLLTOOL@ DSYMUTIL = @DSYMUTIL@ DTS_LIBS = @DTS_LIBS@ @@ -263,7 +262,9 @@ GIO_LIBS = @GIO_LIBS@ GLIB_CFLAGS = @GLIB_CFLAGS@ GLIB_COMPILE_SCHEMAS = @GLIB_COMPILE_SCHEMAS@ GLIB_EXTRA_CFLAGS = @GLIB_EXTRA_CFLAGS@ +GLIB_GENMARSHAL = @GLIB_GENMARSHAL@ GLIB_LIBS = @GLIB_LIBS@ +GLIB_MKENUMS = @GLIB_MKENUMS@ GLIB_PREFIX = @GLIB_PREFIX@ GLIB_REQ = @GLIB_REQ@ GME_LIBS = @GME_LIBS@ @@ -339,13 +340,14 @@ HAVE_CXX = @HAVE_CXX@ HAVE_DIRECT3D = @HAVE_DIRECT3D@ HAVE_DIRECT3D9 = @HAVE_DIRECT3D9@ HAVE_DIRECTDRAW = @HAVE_DIRECTDRAW@ +HAVE_DIRECTSHOW = @HAVE_DIRECTSHOW@ HAVE_DIRECTSOUND = @HAVE_DIRECTSOUND@ HAVE_DTS = @HAVE_DTS@ HAVE_FAAC = @HAVE_FAAC@ HAVE_FAAD = @HAVE_FAAD@ HAVE_FLITE = @HAVE_FLITE@ HAVE_GSM = @HAVE_GSM@ -HAVE_JP2K = @HAVE_JP2K@ +HAVE_JASPER = @HAVE_JASPER@ HAVE_NAS = @HAVE_NAS@ HAVE_VPX = @HAVE_VPX@ HAVE_WILDMIDI = @HAVE_WILDMIDI@ @@ -359,7 +361,7 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ INTLLIBS = @INTLLIBS@ INTL_MACOSX_LIBS = @INTL_MACOSX_LIBS@ -JP2K_LIBS = @JP2K_LIBS@ +JASPER_LIBS = @JASPER_LIBS@ KATE_CFLAGS = @KATE_CFLAGS@ KATE_LIBS = @KATE_LIBS@ LD = @LD@ @@ -395,6 +397,8 @@ MODPLUG_CFLAGS = @MODPLUG_CFLAGS@ MODPLUG_LIBS = @MODPLUG_LIBS@ MPEG2ENC_CFLAGS = @MPEG2ENC_CFLAGS@ MPEG2ENC_LIBS = @MPEG2ENC_LIBS@ +MPG123_CFLAGS = @MPG123_CFLAGS@ +MPG123_LIBS = @MPG123_LIBS@ MPLEX_CFLAGS = @MPLEX_CFLAGS@ MPLEX_LDFLAGS = @MPLEX_LDFLAGS@ MPLEX_LIBS = @MPLEX_LIBS@ diff --git a/tests/examples/camerabin2/gst-camera2.c b/tests/examples/camerabin2/gst-camera2.c index fe913ee5..b2620637 100644 --- a/tests/examples/camerabin2/gst-camera2.c +++ b/tests/examples/camerabin2/gst-camera2.c @@ -301,7 +301,7 @@ main (int argc, char *argv[]) camera = gst_element_factory_make ("camerabin", "camera"); bus = gst_pipeline_get_bus (GST_PIPELINE (camera)); gst_bus_add_watch (bus, bus_callback, NULL); - gst_bus_set_sync_handler (bus, bus_sync_callback, NULL); + gst_bus_set_sync_handler (bus, bus_sync_callback, NULL, NULL); gst_object_unref (bus); if (!init_gtkwidgets_data ()) { diff --git a/tests/examples/camerabin2/gst-camerabin2-test.c b/tests/examples/camerabin2/gst-camerabin2-test.c index e6c299c3..e5ad385a 100644 --- a/tests/examples/camerabin2/gst-camerabin2-test.c +++ b/tests/examples/camerabin2/gst-camerabin2-test.c @@ -672,14 +672,17 @@ setup_pipeline (void) bus = gst_pipeline_get_bus (GST_PIPELINE (camerabin)); /* Add sync handler for time critical messages that need to be handled fast */ - gst_bus_set_sync_handler (bus, sync_bus_callback, NULL); + gst_bus_set_sync_handler (bus, sync_bus_callback, NULL, NULL); /* Handle normal messages asynchronously */ gst_bus_add_watch (bus, bus_callback, NULL); gst_object_unref (bus); GST_INFO_OBJECT (camerabin, "camerabin created"); - gst_util_set_object_arg (G_OBJECT (camerabin), "flags", camerabin_flags); + if (camerabin_flags) + gst_util_set_object_arg (G_OBJECT (camerabin), "flags", camerabin_flags); + else + gst_util_set_object_arg (G_OBJECT (camerabin), "flags", ""); if (videosrc_name) { GstElement *wrapper; diff --git a/tests/examples/directfb/Makefile.in b/tests/examples/directfb/Makefile.in index 2027c1d2..62dad588 100644 --- a/tests/examples/directfb/Makefile.in +++ b/tests/examples/directfb/Makefile.in @@ -1,4 +1,4 @@ -# Makefile.in generated by automake 1.11.5 from Makefile.am. +# Makefile.in generated by automake 1.11.6 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, @@ -204,11 +204,10 @@ DIRECT3D_LIBS = @DIRECT3D_LIBS@ DIRECTDRAW_LIBS = @DIRECTDRAW_LIBS@ DIRECTFB_CFLAGS = @DIRECTFB_CFLAGS@ DIRECTFB_LIBS = @DIRECTFB_LIBS@ +DIRECTSHOW_LIBS = @DIRECTSHOW_LIBS@ DIRECTSOUND_LIBS = @DIRECTSOUND_LIBS@ DIRECTX_CFLAGS = @DIRECTX_CFLAGS@ DIRECTX_LDFLAGS = @DIRECTX_LDFLAGS@ -DIVXDEC_LIBS = @DIVXDEC_LIBS@ -DIVXENC_LIBS = @DIVXENC_LIBS@ DLLTOOL = @DLLTOOL@ DSYMUTIL = @DSYMUTIL@ DTS_LIBS = @DTS_LIBS@ @@ -243,7 +242,9 @@ GIO_LIBS = @GIO_LIBS@ GLIB_CFLAGS = @GLIB_CFLAGS@ GLIB_COMPILE_SCHEMAS = @GLIB_COMPILE_SCHEMAS@ GLIB_EXTRA_CFLAGS = @GLIB_EXTRA_CFLAGS@ +GLIB_GENMARSHAL = @GLIB_GENMARSHAL@ GLIB_LIBS = @GLIB_LIBS@ +GLIB_MKENUMS = @GLIB_MKENUMS@ GLIB_PREFIX = @GLIB_PREFIX@ GLIB_REQ = @GLIB_REQ@ GME_LIBS = @GME_LIBS@ @@ -319,13 +320,14 @@ HAVE_CXX = @HAVE_CXX@ HAVE_DIRECT3D = @HAVE_DIRECT3D@ HAVE_DIRECT3D9 = @HAVE_DIRECT3D9@ HAVE_DIRECTDRAW = @HAVE_DIRECTDRAW@ +HAVE_DIRECTSHOW = @HAVE_DIRECTSHOW@ HAVE_DIRECTSOUND = @HAVE_DIRECTSOUND@ HAVE_DTS = @HAVE_DTS@ HAVE_FAAC = @HAVE_FAAC@ HAVE_FAAD = @HAVE_FAAD@ HAVE_FLITE = @HAVE_FLITE@ HAVE_GSM = @HAVE_GSM@ -HAVE_JP2K = @HAVE_JP2K@ +HAVE_JASPER = @HAVE_JASPER@ HAVE_NAS = @HAVE_NAS@ HAVE_VPX = @HAVE_VPX@ HAVE_WILDMIDI = @HAVE_WILDMIDI@ @@ -339,7 +341,7 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ INTLLIBS = @INTLLIBS@ INTL_MACOSX_LIBS = @INTL_MACOSX_LIBS@ -JP2K_LIBS = @JP2K_LIBS@ +JASPER_LIBS = @JASPER_LIBS@ KATE_CFLAGS = @KATE_CFLAGS@ KATE_LIBS = @KATE_LIBS@ LD = @LD@ @@ -375,6 +377,8 @@ MODPLUG_CFLAGS = @MODPLUG_CFLAGS@ MODPLUG_LIBS = @MODPLUG_LIBS@ MPEG2ENC_CFLAGS = @MPEG2ENC_CFLAGS@ MPEG2ENC_LIBS = @MPEG2ENC_LIBS@ +MPG123_CFLAGS = @MPG123_CFLAGS@ +MPG123_LIBS = @MPG123_LIBS@ MPLEX_CFLAGS = @MPLEX_CFLAGS@ MPLEX_LDFLAGS = @MPLEX_LDFLAGS@ MPLEX_LIBS = @MPLEX_LIBS@ diff --git a/tests/examples/mxf/Makefile.in b/tests/examples/mxf/Makefile.in index 93c3cb80..cc439ff0 100644 --- a/tests/examples/mxf/Makefile.in +++ b/tests/examples/mxf/Makefile.in @@ -1,4 +1,4 @@ -# Makefile.in generated by automake 1.11.5 from Makefile.am. +# Makefile.in generated by automake 1.11.6 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, @@ -209,11 +209,10 @@ DIRECT3D_LIBS = @DIRECT3D_LIBS@ DIRECTDRAW_LIBS = @DIRECTDRAW_LIBS@ DIRECTFB_CFLAGS = @DIRECTFB_CFLAGS@ DIRECTFB_LIBS = @DIRECTFB_LIBS@ +DIRECTSHOW_LIBS = @DIRECTSHOW_LIBS@ DIRECTSOUND_LIBS = @DIRECTSOUND_LIBS@ DIRECTX_CFLAGS = @DIRECTX_CFLAGS@ DIRECTX_LDFLAGS = @DIRECTX_LDFLAGS@ -DIVXDEC_LIBS = @DIVXDEC_LIBS@ -DIVXENC_LIBS = @DIVXENC_LIBS@ DLLTOOL = @DLLTOOL@ DSYMUTIL = @DSYMUTIL@ DTS_LIBS = @DTS_LIBS@ @@ -248,7 +247,9 @@ GIO_LIBS = @GIO_LIBS@ GLIB_CFLAGS = @GLIB_CFLAGS@ GLIB_COMPILE_SCHEMAS = @GLIB_COMPILE_SCHEMAS@ GLIB_EXTRA_CFLAGS = @GLIB_EXTRA_CFLAGS@ +GLIB_GENMARSHAL = @GLIB_GENMARSHAL@ GLIB_LIBS = @GLIB_LIBS@ +GLIB_MKENUMS = @GLIB_MKENUMS@ GLIB_PREFIX = @GLIB_PREFIX@ GLIB_REQ = @GLIB_REQ@ GME_LIBS = @GME_LIBS@ @@ -324,13 +325,14 @@ HAVE_CXX = @HAVE_CXX@ HAVE_DIRECT3D = @HAVE_DIRECT3D@ HAVE_DIRECT3D9 = @HAVE_DIRECT3D9@ HAVE_DIRECTDRAW = @HAVE_DIRECTDRAW@ +HAVE_DIRECTSHOW = @HAVE_DIRECTSHOW@ HAVE_DIRECTSOUND = @HAVE_DIRECTSOUND@ HAVE_DTS = @HAVE_DTS@ HAVE_FAAC = @HAVE_FAAC@ HAVE_FAAD = @HAVE_FAAD@ HAVE_FLITE = @HAVE_FLITE@ HAVE_GSM = @HAVE_GSM@ -HAVE_JP2K = @HAVE_JP2K@ +HAVE_JASPER = @HAVE_JASPER@ HAVE_NAS = @HAVE_NAS@ HAVE_VPX = @HAVE_VPX@ HAVE_WILDMIDI = @HAVE_WILDMIDI@ @@ -344,7 +346,7 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ INTLLIBS = @INTLLIBS@ INTL_MACOSX_LIBS = @INTL_MACOSX_LIBS@ -JP2K_LIBS = @JP2K_LIBS@ +JASPER_LIBS = @JASPER_LIBS@ KATE_CFLAGS = @KATE_CFLAGS@ KATE_LIBS = @KATE_LIBS@ LD = @LD@ @@ -380,6 +382,8 @@ MODPLUG_CFLAGS = @MODPLUG_CFLAGS@ MODPLUG_LIBS = @MODPLUG_LIBS@ MPEG2ENC_CFLAGS = @MPEG2ENC_CFLAGS@ MPEG2ENC_LIBS = @MPEG2ENC_LIBS@ +MPG123_CFLAGS = @MPG123_CFLAGS@ +MPG123_LIBS = @MPG123_LIBS@ MPLEX_CFLAGS = @MPLEX_CFLAGS@ MPLEX_LDFLAGS = @MPLEX_LDFLAGS@ MPLEX_LIBS = @MPLEX_LIBS@ diff --git a/tests/examples/mxf/mxfdemux-structure.c b/tests/examples/mxf/mxfdemux-structure.c index e3a3f72c..7c2261e8 100644 --- a/tests/examples/mxf/mxfdemux-structure.c +++ b/tests/examples/mxf/mxfdemux-structure.c @@ -154,7 +154,7 @@ on_message (GstBus * bus, GstMessage * message, gpointer data) g_value_unset (&v); } - gst_tag_list_free (tags); + gst_tag_list_unref (tags); break; } default: diff --git a/tests/examples/opencv/Makefile.in b/tests/examples/opencv/Makefile.in index bc2c1b17..3741f17c 100644 --- a/tests/examples/opencv/Makefile.in +++ b/tests/examples/opencv/Makefile.in @@ -1,4 +1,4 @@ -# Makefile.in generated by automake 1.11.5 from Makefile.am. +# Makefile.in generated by automake 1.11.6 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, @@ -210,11 +210,10 @@ DIRECT3D_LIBS = @DIRECT3D_LIBS@ DIRECTDRAW_LIBS = @DIRECTDRAW_LIBS@ DIRECTFB_CFLAGS = @DIRECTFB_CFLAGS@ DIRECTFB_LIBS = @DIRECTFB_LIBS@ +DIRECTSHOW_LIBS = @DIRECTSHOW_LIBS@ DIRECTSOUND_LIBS = @DIRECTSOUND_LIBS@ DIRECTX_CFLAGS = @DIRECTX_CFLAGS@ DIRECTX_LDFLAGS = @DIRECTX_LDFLAGS@ -DIVXDEC_LIBS = @DIVXDEC_LIBS@ -DIVXENC_LIBS = @DIVXENC_LIBS@ DLLTOOL = @DLLTOOL@ DSYMUTIL = @DSYMUTIL@ DTS_LIBS = @DTS_LIBS@ @@ -249,7 +248,9 @@ GIO_LIBS = @GIO_LIBS@ GLIB_CFLAGS = @GLIB_CFLAGS@ GLIB_COMPILE_SCHEMAS = @GLIB_COMPILE_SCHEMAS@ GLIB_EXTRA_CFLAGS = @GLIB_EXTRA_CFLAGS@ +GLIB_GENMARSHAL = @GLIB_GENMARSHAL@ GLIB_LIBS = @GLIB_LIBS@ +GLIB_MKENUMS = @GLIB_MKENUMS@ GLIB_PREFIX = @GLIB_PREFIX@ GLIB_REQ = @GLIB_REQ@ GME_LIBS = @GME_LIBS@ @@ -325,13 +326,14 @@ HAVE_CXX = @HAVE_CXX@ HAVE_DIRECT3D = @HAVE_DIRECT3D@ HAVE_DIRECT3D9 = @HAVE_DIRECT3D9@ HAVE_DIRECTDRAW = @HAVE_DIRECTDRAW@ +HAVE_DIRECTSHOW = @HAVE_DIRECTSHOW@ HAVE_DIRECTSOUND = @HAVE_DIRECTSOUND@ HAVE_DTS = @HAVE_DTS@ HAVE_FAAC = @HAVE_FAAC@ HAVE_FAAD = @HAVE_FAAD@ HAVE_FLITE = @HAVE_FLITE@ HAVE_GSM = @HAVE_GSM@ -HAVE_JP2K = @HAVE_JP2K@ +HAVE_JASPER = @HAVE_JASPER@ HAVE_NAS = @HAVE_NAS@ HAVE_VPX = @HAVE_VPX@ HAVE_WILDMIDI = @HAVE_WILDMIDI@ @@ -345,7 +347,7 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ INTLLIBS = @INTLLIBS@ INTL_MACOSX_LIBS = @INTL_MACOSX_LIBS@ -JP2K_LIBS = @JP2K_LIBS@ +JASPER_LIBS = @JASPER_LIBS@ KATE_CFLAGS = @KATE_CFLAGS@ KATE_LIBS = @KATE_LIBS@ LD = @LD@ @@ -381,6 +383,8 @@ MODPLUG_CFLAGS = @MODPLUG_CFLAGS@ MODPLUG_LIBS = @MODPLUG_LIBS@ MPEG2ENC_CFLAGS = @MPEG2ENC_CFLAGS@ MPEG2ENC_LIBS = @MPEG2ENC_LIBS@ +MPG123_CFLAGS = @MPG123_CFLAGS@ +MPG123_LIBS = @MPG123_LIBS@ MPLEX_CFLAGS = @MPLEX_CFLAGS@ MPLEX_LDFLAGS = @MPLEX_LDFLAGS@ MPLEX_LIBS = @MPLEX_LIBS@ diff --git a/tests/examples/scaletempo/Makefile.in b/tests/examples/scaletempo/Makefile.in index 68df8882..346adf74 100644 --- a/tests/examples/scaletempo/Makefile.in +++ b/tests/examples/scaletempo/Makefile.in @@ -1,4 +1,4 @@ -# Makefile.in generated by automake 1.11.5 from Makefile.am. +# Makefile.in generated by automake 1.11.6 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, @@ -210,11 +210,10 @@ DIRECT3D_LIBS = @DIRECT3D_LIBS@ DIRECTDRAW_LIBS = @DIRECTDRAW_LIBS@ DIRECTFB_CFLAGS = @DIRECTFB_CFLAGS@ DIRECTFB_LIBS = @DIRECTFB_LIBS@ +DIRECTSHOW_LIBS = @DIRECTSHOW_LIBS@ DIRECTSOUND_LIBS = @DIRECTSOUND_LIBS@ DIRECTX_CFLAGS = @DIRECTX_CFLAGS@ DIRECTX_LDFLAGS = @DIRECTX_LDFLAGS@ -DIVXDEC_LIBS = @DIVXDEC_LIBS@ -DIVXENC_LIBS = @DIVXENC_LIBS@ DLLTOOL = @DLLTOOL@ DSYMUTIL = @DSYMUTIL@ DTS_LIBS = @DTS_LIBS@ @@ -251,7 +250,9 @@ GIO_LIBS = @GIO_LIBS@ GLIB_CFLAGS = @GLIB_CFLAGS@ GLIB_COMPILE_SCHEMAS = @GLIB_COMPILE_SCHEMAS@ GLIB_EXTRA_CFLAGS = @GLIB_EXTRA_CFLAGS@ +GLIB_GENMARSHAL = @GLIB_GENMARSHAL@ GLIB_LIBS = @GLIB_LIBS@ +GLIB_MKENUMS = @GLIB_MKENUMS@ GLIB_PREFIX = @GLIB_PREFIX@ GLIB_REQ = @GLIB_REQ@ GME_LIBS = @GME_LIBS@ @@ -327,13 +328,14 @@ HAVE_CXX = @HAVE_CXX@ HAVE_DIRECT3D = @HAVE_DIRECT3D@ HAVE_DIRECT3D9 = @HAVE_DIRECT3D9@ HAVE_DIRECTDRAW = @HAVE_DIRECTDRAW@ +HAVE_DIRECTSHOW = @HAVE_DIRECTSHOW@ HAVE_DIRECTSOUND = @HAVE_DIRECTSOUND@ HAVE_DTS = @HAVE_DTS@ HAVE_FAAC = @HAVE_FAAC@ HAVE_FAAD = @HAVE_FAAD@ HAVE_FLITE = @HAVE_FLITE@ HAVE_GSM = @HAVE_GSM@ -HAVE_JP2K = @HAVE_JP2K@ +HAVE_JASPER = @HAVE_JASPER@ HAVE_NAS = @HAVE_NAS@ HAVE_VPX = @HAVE_VPX@ HAVE_WILDMIDI = @HAVE_WILDMIDI@ @@ -347,7 +349,7 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ INTLLIBS = @INTLLIBS@ INTL_MACOSX_LIBS = @INTL_MACOSX_LIBS@ -JP2K_LIBS = @JP2K_LIBS@ +JASPER_LIBS = @JASPER_LIBS@ KATE_CFLAGS = @KATE_CFLAGS@ KATE_LIBS = @KATE_LIBS@ LD = @LD@ @@ -383,6 +385,8 @@ MODPLUG_CFLAGS = @MODPLUG_CFLAGS@ MODPLUG_LIBS = @MODPLUG_LIBS@ MPEG2ENC_CFLAGS = @MPEG2ENC_CFLAGS@ MPEG2ENC_LIBS = @MPEG2ENC_LIBS@ +MPG123_CFLAGS = @MPG123_CFLAGS@ +MPG123_LIBS = @MPG123_LIBS@ MPLEX_CFLAGS = @MPLEX_CFLAGS@ MPLEX_LDFLAGS = @MPLEX_LDFLAGS@ MPLEX_LIBS = @MPLEX_LIBS@ diff --git a/tests/files/Makefile.in b/tests/files/Makefile.in index 2b94e8c8..04207cd6 100644 --- a/tests/files/Makefile.in +++ b/tests/files/Makefile.in @@ -1,4 +1,4 @@ -# Makefile.in generated by automake 1.11.5 from Makefile.am. +# Makefile.in generated by automake 1.11.6 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, @@ -170,11 +170,10 @@ DIRECT3D_LIBS = @DIRECT3D_LIBS@ DIRECTDRAW_LIBS = @DIRECTDRAW_LIBS@ DIRECTFB_CFLAGS = @DIRECTFB_CFLAGS@ DIRECTFB_LIBS = @DIRECTFB_LIBS@ +DIRECTSHOW_LIBS = @DIRECTSHOW_LIBS@ DIRECTSOUND_LIBS = @DIRECTSOUND_LIBS@ DIRECTX_CFLAGS = @DIRECTX_CFLAGS@ DIRECTX_LDFLAGS = @DIRECTX_LDFLAGS@ -DIVXDEC_LIBS = @DIVXDEC_LIBS@ -DIVXENC_LIBS = @DIVXENC_LIBS@ DLLTOOL = @DLLTOOL@ DSYMUTIL = @DSYMUTIL@ DTS_LIBS = @DTS_LIBS@ @@ -209,7 +208,9 @@ GIO_LIBS = @GIO_LIBS@ GLIB_CFLAGS = @GLIB_CFLAGS@ GLIB_COMPILE_SCHEMAS = @GLIB_COMPILE_SCHEMAS@ GLIB_EXTRA_CFLAGS = @GLIB_EXTRA_CFLAGS@ +GLIB_GENMARSHAL = @GLIB_GENMARSHAL@ GLIB_LIBS = @GLIB_LIBS@ +GLIB_MKENUMS = @GLIB_MKENUMS@ GLIB_PREFIX = @GLIB_PREFIX@ GLIB_REQ = @GLIB_REQ@ GME_LIBS = @GME_LIBS@ @@ -285,13 +286,14 @@ HAVE_CXX = @HAVE_CXX@ HAVE_DIRECT3D = @HAVE_DIRECT3D@ HAVE_DIRECT3D9 = @HAVE_DIRECT3D9@ HAVE_DIRECTDRAW = @HAVE_DIRECTDRAW@ +HAVE_DIRECTSHOW = @HAVE_DIRECTSHOW@ HAVE_DIRECTSOUND = @HAVE_DIRECTSOUND@ HAVE_DTS = @HAVE_DTS@ HAVE_FAAC = @HAVE_FAAC@ HAVE_FAAD = @HAVE_FAAD@ HAVE_FLITE = @HAVE_FLITE@ HAVE_GSM = @HAVE_GSM@ -HAVE_JP2K = @HAVE_JP2K@ +HAVE_JASPER = @HAVE_JASPER@ HAVE_NAS = @HAVE_NAS@ HAVE_VPX = @HAVE_VPX@ HAVE_WILDMIDI = @HAVE_WILDMIDI@ @@ -305,7 +307,7 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ INTLLIBS = @INTLLIBS@ INTL_MACOSX_LIBS = @INTL_MACOSX_LIBS@ -JP2K_LIBS = @JP2K_LIBS@ +JASPER_LIBS = @JASPER_LIBS@ KATE_CFLAGS = @KATE_CFLAGS@ KATE_LIBS = @KATE_LIBS@ LD = @LD@ @@ -341,6 +343,8 @@ MODPLUG_CFLAGS = @MODPLUG_CFLAGS@ MODPLUG_LIBS = @MODPLUG_LIBS@ MPEG2ENC_CFLAGS = @MPEG2ENC_CFLAGS@ MPEG2ENC_LIBS = @MPEG2ENC_LIBS@ +MPG123_CFLAGS = @MPG123_CFLAGS@ +MPG123_LIBS = @MPG123_LIBS@ MPLEX_CFLAGS = @MPLEX_CFLAGS@ MPLEX_LDFLAGS = @MPLEX_LDFLAGS@ MPLEX_LIBS = @MPLEX_LIBS@ diff --git a/tests/icles/Makefile.in b/tests/icles/Makefile.in index 3b95b5c4..f9066c99 100644 --- a/tests/icles/Makefile.in +++ b/tests/icles/Makefile.in @@ -1,4 +1,4 @@ -# Makefile.in generated by automake 1.11.5 from Makefile.am. +# Makefile.in generated by automake 1.11.6 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, @@ -209,11 +209,10 @@ DIRECT3D_LIBS = @DIRECT3D_LIBS@ DIRECTDRAW_LIBS = @DIRECTDRAW_LIBS@ DIRECTFB_CFLAGS = @DIRECTFB_CFLAGS@ DIRECTFB_LIBS = @DIRECTFB_LIBS@ +DIRECTSHOW_LIBS = @DIRECTSHOW_LIBS@ DIRECTSOUND_LIBS = @DIRECTSOUND_LIBS@ DIRECTX_CFLAGS = @DIRECTX_CFLAGS@ DIRECTX_LDFLAGS = @DIRECTX_LDFLAGS@ -DIVXDEC_LIBS = @DIVXDEC_LIBS@ -DIVXENC_LIBS = @DIVXENC_LIBS@ DLLTOOL = @DLLTOOL@ DSYMUTIL = @DSYMUTIL@ DTS_LIBS = @DTS_LIBS@ @@ -248,7 +247,9 @@ GIO_LIBS = @GIO_LIBS@ GLIB_CFLAGS = @GLIB_CFLAGS@ GLIB_COMPILE_SCHEMAS = @GLIB_COMPILE_SCHEMAS@ GLIB_EXTRA_CFLAGS = @GLIB_EXTRA_CFLAGS@ +GLIB_GENMARSHAL = @GLIB_GENMARSHAL@ GLIB_LIBS = @GLIB_LIBS@ +GLIB_MKENUMS = @GLIB_MKENUMS@ GLIB_PREFIX = @GLIB_PREFIX@ GLIB_REQ = @GLIB_REQ@ GME_LIBS = @GME_LIBS@ @@ -324,13 +325,14 @@ HAVE_CXX = @HAVE_CXX@ HAVE_DIRECT3D = @HAVE_DIRECT3D@ HAVE_DIRECT3D9 = @HAVE_DIRECT3D9@ HAVE_DIRECTDRAW = @HAVE_DIRECTDRAW@ +HAVE_DIRECTSHOW = @HAVE_DIRECTSHOW@ HAVE_DIRECTSOUND = @HAVE_DIRECTSOUND@ HAVE_DTS = @HAVE_DTS@ HAVE_FAAC = @HAVE_FAAC@ HAVE_FAAD = @HAVE_FAAD@ HAVE_FLITE = @HAVE_FLITE@ HAVE_GSM = @HAVE_GSM@ -HAVE_JP2K = @HAVE_JP2K@ +HAVE_JASPER = @HAVE_JASPER@ HAVE_NAS = @HAVE_NAS@ HAVE_VPX = @HAVE_VPX@ HAVE_WILDMIDI = @HAVE_WILDMIDI@ @@ -344,7 +346,7 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ INTLLIBS = @INTLLIBS@ INTL_MACOSX_LIBS = @INTL_MACOSX_LIBS@ -JP2K_LIBS = @JP2K_LIBS@ +JASPER_LIBS = @JASPER_LIBS@ KATE_CFLAGS = @KATE_CFLAGS@ KATE_LIBS = @KATE_LIBS@ LD = @LD@ @@ -380,6 +382,8 @@ MODPLUG_CFLAGS = @MODPLUG_CFLAGS@ MODPLUG_LIBS = @MODPLUG_LIBS@ MPEG2ENC_CFLAGS = @MPEG2ENC_CFLAGS@ MPEG2ENC_LIBS = @MPEG2ENC_LIBS@ +MPG123_CFLAGS = @MPG123_CFLAGS@ +MPG123_LIBS = @MPG123_LIBS@ MPLEX_CFLAGS = @MPLEX_CFLAGS@ MPLEX_LDFLAGS = @MPLEX_LDFLAGS@ MPLEX_LIBS = @MPLEX_LIBS@ diff --git a/tests/icles/pitch-test.c b/tests/icles/pitch-test.c index dc793d8b..98456ae3 100644 --- a/tests/icles/pitch-test.c +++ b/tests/icles/pitch-test.c @@ -25,6 +25,9 @@ #include <string.h> #include <unistd.h> #include <gst/gst.h> +#include <gst/controller/gsttimedvaluecontrolsource.h> +#include <gst/controller/gstinterpolationcontrolsource.h> +#include <gst/controller/gstdirectcontrolbinding.h> int main (int argc, char **argv) @@ -71,8 +74,8 @@ main (int argc, char **argv) cs = gst_interpolation_control_source_new (); g_object_set (cs, "mode", GST_INTERPOLATION_MODE_LINEAR, NULL); - gst_object_add_control_binding (pitch, - gst_direct_control_binding_new (pitch, "pitch", cs)); + gst_object_add_control_binding (GST_OBJECT (pitch), + gst_direct_control_binding_new (GST_OBJECT (pitch), "pitch", cs)); tvcs = (GstTimedValueControlSource *) cs; for (i = 0; i < 100; ++i) { diff --git a/tools/Makefile.in b/tools/Makefile.in index 7840fcf4..8f1ee891 100644 --- a/tools/Makefile.in +++ b/tools/Makefile.in @@ -1,4 +1,4 @@ -# Makefile.in generated by automake 1.11.5 from Makefile.am. +# Makefile.in generated by automake 1.11.6 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, @@ -170,11 +170,10 @@ DIRECT3D_LIBS = @DIRECT3D_LIBS@ DIRECTDRAW_LIBS = @DIRECTDRAW_LIBS@ DIRECTFB_CFLAGS = @DIRECTFB_CFLAGS@ DIRECTFB_LIBS = @DIRECTFB_LIBS@ +DIRECTSHOW_LIBS = @DIRECTSHOW_LIBS@ DIRECTSOUND_LIBS = @DIRECTSOUND_LIBS@ DIRECTX_CFLAGS = @DIRECTX_CFLAGS@ DIRECTX_LDFLAGS = @DIRECTX_LDFLAGS@ -DIVXDEC_LIBS = @DIVXDEC_LIBS@ -DIVXENC_LIBS = @DIVXENC_LIBS@ DLLTOOL = @DLLTOOL@ DSYMUTIL = @DSYMUTIL@ DTS_LIBS = @DTS_LIBS@ @@ -209,7 +208,9 @@ GIO_LIBS = @GIO_LIBS@ GLIB_CFLAGS = @GLIB_CFLAGS@ GLIB_COMPILE_SCHEMAS = @GLIB_COMPILE_SCHEMAS@ GLIB_EXTRA_CFLAGS = @GLIB_EXTRA_CFLAGS@ +GLIB_GENMARSHAL = @GLIB_GENMARSHAL@ GLIB_LIBS = @GLIB_LIBS@ +GLIB_MKENUMS = @GLIB_MKENUMS@ GLIB_PREFIX = @GLIB_PREFIX@ GLIB_REQ = @GLIB_REQ@ GME_LIBS = @GME_LIBS@ @@ -285,13 +286,14 @@ HAVE_CXX = @HAVE_CXX@ HAVE_DIRECT3D = @HAVE_DIRECT3D@ HAVE_DIRECT3D9 = @HAVE_DIRECT3D9@ HAVE_DIRECTDRAW = @HAVE_DIRECTDRAW@ +HAVE_DIRECTSHOW = @HAVE_DIRECTSHOW@ HAVE_DIRECTSOUND = @HAVE_DIRECTSOUND@ HAVE_DTS = @HAVE_DTS@ HAVE_FAAC = @HAVE_FAAC@ HAVE_FAAD = @HAVE_FAAD@ HAVE_FLITE = @HAVE_FLITE@ HAVE_GSM = @HAVE_GSM@ -HAVE_JP2K = @HAVE_JP2K@ +HAVE_JASPER = @HAVE_JASPER@ HAVE_NAS = @HAVE_NAS@ HAVE_VPX = @HAVE_VPX@ HAVE_WILDMIDI = @HAVE_WILDMIDI@ @@ -305,7 +307,7 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ INTLLIBS = @INTLLIBS@ INTL_MACOSX_LIBS = @INTL_MACOSX_LIBS@ -JP2K_LIBS = @JP2K_LIBS@ +JASPER_LIBS = @JASPER_LIBS@ KATE_CFLAGS = @KATE_CFLAGS@ KATE_LIBS = @KATE_LIBS@ LD = @LD@ @@ -341,6 +343,8 @@ MODPLUG_CFLAGS = @MODPLUG_CFLAGS@ MODPLUG_LIBS = @MODPLUG_LIBS@ MPEG2ENC_CFLAGS = @MPEG2ENC_CFLAGS@ MPEG2ENC_LIBS = @MPEG2ENC_LIBS@ +MPG123_CFLAGS = @MPG123_CFLAGS@ +MPG123_LIBS = @MPG123_LIBS@ MPLEX_CFLAGS = @MPLEX_CFLAGS@ MPLEX_LDFLAGS = @MPLEX_LDFLAGS@ MPLEX_LIBS = @MPLEX_LIBS@ diff --git a/win32/common/config.h b/win32/common/config.h index 44c76af3..08cbdf48 100644 --- a/win32/common/config.h +++ b/win32/common/config.h @@ -199,7 +199,7 @@ #undef USE_POISONING /* Version number of package */ -#define VERSION "0.11.92" +#define VERSION "0.11.93" /* Define to 1 if your processor stores words with the most significant byte first (like Motorola and SPARC, unlike Intel and VAX). */ |