
--- gst-plugins-good-0.10.1/docs/plugins/Makefile.in	2006-01-13 13:56:58.000000000 -0500
+++ gst-plugins-good-0.10.1-new/docs/plugins/Makefile.in	2006-01-19 14:00:59.000000000 -0500
@@ -904,7 +904,7 @@
 
 @ENABLE_GTK_DOC_TRUE@html-build.stamp: sgml.stamp $(DOC_MAIN_SGML_FILE) $(content_files)
 @ENABLE_GTK_DOC_TRUE@	@echo '*** Building HTML ***'
-@ENABLE_GTK_DOC_TRUE@	if test -d html; then rm -rf html; fi
+@ENABLE_GTK_DOC_TRUE@	if test -d html; then rm -rf html || rm -rf html; fi
 @ENABLE_GTK_DOC_TRUE@	mkdir html
 @ENABLE_GTK_DOC_TRUE@	cp $(srcdir)/$(DOC_MAIN_SGML_FILE) html
 @ENABLE_GTK_DOC_TRUE@	@for f in $(content_files); do cp $(srcdir)/$$f html; done
@@ -912,7 +912,7 @@
 @ENABLE_GTK_DOC_TRUE@	cp ../version.entities html
 @ENABLE_GTK_DOC_TRUE@	cd html && gtkdoc-mkhtml $(DOC_MODULE) $(DOC_MAIN_SGML_FILE)
 @ENABLE_GTK_DOC_TRUE@	rm -f html/$(DOC_MAIN_SGML_FILE)
-@ENABLE_GTK_DOC_TRUE@	rm -rf html/xml
+@ENABLE_GTK_DOC_TRUE@	rm -rf html/xml || rm -rf html/xml
 @ENABLE_GTK_DOC_TRUE@	rm -f html/version.entities
 @ENABLE_GTK_DOC_TRUE@	test "x$(HTML_IMAGES)" = "x" || for i in "" $(HTML_IMAGES) ; do \
 @ENABLE_GTK_DOC_TRUE@	    if test "$$i" != ""; then cp $(srcdir)/$$i html ; fi; done
--- gst-plugins-good-0.10.3/configure	2006-05-04 11:07:01.000000000 -0400
+++ gst-plugins-good-0.10.3-new/configure	2006-05-18 10:54:00.000000000 -0400
@@ -36296,7 +36296,7 @@
 
 
 
-                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        ac_config_files="$ac_config_files Makefile gst/Makefile gst/alpha/Makefile gst/apetag/Makefile gst/auparse/Makefile gst/autodetect/Makefile gst/avi/Makefile gst/cutter/Makefile gst/debug/Makefile gst/effectv/Makefile gst/id3demux/Makefile gst/icydemux/Makefile gst/goom/Makefile gst/law/Makefile gst/level/Makefile gst/matroska/Makefile gst/multipart/Makefile gst/rtp/Makefile gst/rtsp/Makefile gst/smpte/Makefile gst/udp/Makefile gst/videobox/Makefile gst/videofilter/Makefile gst/videomixer/Makefile gst/wavenc/Makefile gst/wavparse/Makefile gst/flx/Makefile ext/jpeg/Makefile ext/Makefile ext/aalib/Makefile ext/annodex/Makefile ext/cairo/Makefile ext/cdio/Makefile ext/dv/Makefile ext/esd/Makefile ext/flac/Makefile ext/gconf/Makefile ext/gdk_pixbuf/Makefile ext/hal/Makefile ext/ladspa/Makefile ext/libcaca/Makefile ext/libpng/Makefile ext/raw1394/Makefile ext/shout2/Makefile ext/speex/Makefile ext/taglib/Makefile sys/Makefile sys/oss/Makefile sys/sunaudio/Makefile sys/ximage/Makefile po/Makefile.in tests/Makefile tests/check/Makefile tests/icles/Makefile tests/examples/Makefile tests/examples/level/Makefile gconf/Makefile gconf/gstreamer.schemas common/Makefile common/m4/Makefile m4/Makefile docs/Makefile docs/plugins/Makefile docs/version.entities win32/common/config.h pkgconfig/Makefile pkgconfig/gstreamer-plugins-good-uninstalled.pc gst-plugins-good.spec"
+                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        ac_config_files="$ac_config_files Makefile gst/Makefile gst/alpha/Makefile gst/apetag/Makefile gst/auparse/Makefile gst/autodetect/Makefile gst/avi/Makefile gst/cutter/Makefile gst/debug/Makefile gst/effectv/Makefile gst/id3demux/Makefile gst/icydemux/Makefile gst/goom/Makefile gst/law/Makefile gst/level/Makefile gst/matroska/Makefile gst/multipart/Makefile gst/rtp/Makefile gst/rtsp/Makefile gst/smpte/Makefile gst/udp/Makefile gst/videobox/Makefile gst/videofilter/Makefile gst/videomixer/Makefile gst/wavenc/Makefile gst/wavparse/Makefile gst/flx/Makefile ext/jpeg/Makefile ext/Makefile ext/aalib/Makefile ext/annodex/Makefile ext/cairo/Makefile ext/cdio/Makefile ext/dv/Makefile ext/esd/Makefile ext/flac/Makefile ext/gconf/Makefile ext/gdk_pixbuf/Makefile ext/hal/Makefile ext/ladspa/Makefile ext/libcaca/Makefile ext/libpng/Makefile ext/raw1394/Makefile ext/shout2/Makefile ext/speex/Makefile ext/taglib/Makefile sys/Makefile sys/oss/Makefile sys/sunaudio/Makefile sys/ximage/Makefile sys/osxaudio/Makefile po/Makefile.in tests/Makefile tests/check/Makefile tests/icles/Makefile tests/examples/Makefile tests/examples/level/Makefile gconf/Makefile gconf/gstreamer.schemas common/Makefile common/m4/Makefile m4/Makefile docs/Makefile docs/plugins/Makefile docs/version.entities win32/common/config.h pkgconfig/Makefile pkgconfig/gstreamer-plugins-good-uninstalled.pc gst-plugins-good.spec"
 
 cat >confcache <<\_ACEOF
 # This file is a shell script that caches the results of configure
--- gst-plugins-good-0.10.3/sys/Makefile.in	2006-05-04 11:06:57.000000000 -0400
+++ gst-plugins-good-0.10.3-new/sys/Makefile.in	2006-05-18 10:46:02.000000000 -0400
@@ -475,8 +475,8 @@
 # GL_DIR=
 # endif
 @USE_X_TRUE@XIMAGE_DIR = ximage
-SUBDIRS = $(OSS_DIR) $(SUNAUDIO_DIR) $(XIMAGE_DIR)
-DIST_SUBDIRS = oss sunaudio ximage
+SUBDIRS = $(OSS_DIR) $(SUNAUDIO_DIR) $(XIMAGE_DIR) osxaudio
+DIST_SUBDIRS = oss sunaudio ximage osxaudio
 all: all-recursive
 
 .SUFFIXES:
--- gst-plugins-good-0.10.3/sys/osxaudio/Makefile.am	1969-12-31 19:00:00.000000000 -0500
+++ gst-plugins-good-0.10.3-new/sys/osxaudio/Makefile.am	2006-04-28 10:55:20.000000000 -0400
@@ -0,0 +1,18 @@
+plugin_LTLIBRARIES = libgstosxaudio.la
+
+libgstosxaudio_la_SOURCES = gstosxringbuffer.c		\
+			    gstosxaudioelement.c	\
+			    gstosxaudiosink.c \
+			    gstosxaudiosrc.c
+
+libgstosxaudio_la_CFLAGS = $(GST_CFLAGS) $(GST_BASE_CFLAGS) $(GSTPB_BASE_FLAGS)
+libgstosxaudio_la_LIBADD = $(GST_LIBS) $(GST_BASE_LIBS) $(GSTPB_BASE_LIBS) -lgstaudio-@GST_MAJORMINOR@
+libgstosxaudio_la_LDFLAGS = $(GST_PLUGIN_LDFLAGS) -Wl,-framework -Wl,CoreAudio
+
+noinst_HEADERS = gstosxaudiosink.h	\
+		gstosxaudioelement.h	\
+		gstosxringbuffer.h	\
+		gstosxaudiosrc.h
+
+
+
--- gst-plugins-good-0.10.3/sys/osxaudio/Makefile.in	1969-12-31 19:00:00.000000000 -0500
+++ gst-plugins-good-0.10.3-new/sys/osxaudio/Makefile.in	2006-05-18 11:00:28.000000000 -0400
@@ -0,0 +1,773 @@
+# Makefile.in generated by automake 1.9.6 from Makefile.am.
+# @configure_input@
+
+# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
+# 2003, 2004, 2005  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@
+
+
+srcdir = @srcdir@
+top_srcdir = @top_srcdir@
+VPATH = @srcdir@
+pkgdatadir = $(datadir)/@PACKAGE@
+pkglibdir = $(libdir)/@PACKAGE@
+pkgincludedir = $(includedir)/@PACKAGE@
+top_builddir = ../..
+am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
+INSTALL = @INSTALL@
+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@
+subdir = sys/osxaudio
+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-objc.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/check.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-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-plugindir.m4 \
+	$(top_srcdir)/common/m4/gtk-doc.m4 \
+	$(top_srcdir)/common/m4/pkg.m4 $(top_srcdir)/m4/aalib.m4 \
+	$(top_srcdir)/m4/esd.m4 $(top_srcdir)/m4/gconf-2.m4 \
+	$(top_srcdir)/m4/gettext.m4 $(top_srcdir)/m4/gst-fionread.m4 \
+	$(top_srcdir)/m4/gst-shout2.m4 $(top_srcdir)/m4/iconv.m4 \
+	$(top_srcdir)/m4/lib-ld.m4 $(top_srcdir)/m4/lib-link.m4 \
+	$(top_srcdir)/m4/lib-prefix.m4 $(top_srcdir)/m4/lrint.m4 \
+	$(top_srcdir)/m4/lrintf.m4 $(top_srcdir)/m4/progtest.m4 \
+	$(top_srcdir)/configure.ac
+am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
+	$(ACLOCAL_M4)
+mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs
+CONFIG_HEADER = $(top_builddir)/config.h
+CONFIG_CLEAN_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 = `echo $$p | sed -e 's|^.*/||'`;
+am__installdirs = "$(DESTDIR)$(plugindir)"
+pluginLTLIBRARIES_INSTALL = $(INSTALL)
+LTLIBRARIES = $(plugin_LTLIBRARIES)
+am__DEPENDENCIES_1 =
+libgstosxaudio_la_DEPENDENCIES = $(am__DEPENDENCIES_1) \
+	$(am__DEPENDENCIES_1)
+am_libgstosxaudio_la_OBJECTS = libgstosxaudio_la-gstosxringbuffer.lo \
+	libgstosxaudio_la-gstosxaudioelement.lo \
+	libgstosxaudio_la-gstosxaudiosink.lo \
+	libgstosxaudio_la-gstosxaudiosrc.lo
+libgstosxaudio_la_OBJECTS = $(am_libgstosxaudio_la_OBJECTS)
+DEFAULT_INCLUDES = -I. -I$(srcdir) -I$(top_builddir)
+depcomp = $(SHELL) $(top_srcdir)/depcomp
+am__depfiles_maybe = depfiles
+COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \
+	$(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
+LTCOMPILE = $(LIBTOOL) --tag=CC --mode=compile $(CC) $(DEFS) \
+	$(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) \
+	$(AM_CFLAGS) $(CFLAGS)
+CCLD = $(CC)
+LINK = $(LIBTOOL) --tag=CC --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) \
+	$(AM_LDFLAGS) $(LDFLAGS) -o $@
+SOURCES = $(libgstosxaudio_la_SOURCES)
+DIST_SOURCES = $(libgstosxaudio_la_SOURCES)
+HEADERS = $(noinst_HEADERS)
+ETAGS = etags
+CTAGS = ctags
+DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
+AALIB_CFLAGS = @AALIB_CFLAGS@
+AALIB_CONFIG = @AALIB_CONFIG@
+AALIB_LIBS = @AALIB_LIBS@
+ACLOCAL = @ACLOCAL@
+ACLOCAL_AMFLAGS = @ACLOCAL_AMFLAGS@
+AMDEP_FALSE = @AMDEP_FALSE@
+AMDEP_TRUE = @AMDEP_TRUE@
+AMTAR = @AMTAR@
+AR = @AR@
+AUTOCONF = @AUTOCONF@
+AUTOHEADER = @AUTOHEADER@
+AUTOMAKE = @AUTOMAKE@
+AWK = @AWK@
+BUILD_EXAMPLES_FALSE = @BUILD_EXAMPLES_FALSE@
+BUILD_EXAMPLES_TRUE = @BUILD_EXAMPLES_TRUE@
+BUILD_EXTERNAL_FALSE = @BUILD_EXTERNAL_FALSE@
+BUILD_EXTERNAL_TRUE = @BUILD_EXTERNAL_TRUE@
+CAIRO_CFLAGS = @CAIRO_CFLAGS@
+CAIRO_LIBS = @CAIRO_LIBS@
+CC = @CC@
+CCDEPMODE = @CCDEPMODE@
+CDIO_CFLAGS = @CDIO_CFLAGS@
+CDIO_LIBS = @CDIO_LIBS@
+CFLAGS = @CFLAGS@
+CHECK_CFLAGS = @CHECK_CFLAGS@
+CHECK_LIBS = @CHECK_LIBS@
+CPP = @CPP@
+CPPFLAGS = @CPPFLAGS@
+CXX = @CXX@
+CXXCPP = @CXXCPP@
+CXXDEPMODE = @CXXDEPMODE@
+CXXFLAGS = @CXXFLAGS@
+CYGPATH_W = @CYGPATH_W@
+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@
+DV1394_LIBS = @DV1394_LIBS@
+ECHO = @ECHO@
+ECHO_C = @ECHO_C@
+ECHO_N = @ECHO_N@
+ECHO_T = @ECHO_T@
+EGREP = @EGREP@
+ENABLE_GTK_DOC_FALSE = @ENABLE_GTK_DOC_FALSE@
+ENABLE_GTK_DOC_TRUE = @ENABLE_GTK_DOC_TRUE@
+ERROR_CFLAGS = @ERROR_CFLAGS@
+ESD_CFLAGS = @ESD_CFLAGS@
+ESD_CONFIG = @ESD_CONFIG@
+ESD_LIBS = @ESD_LIBS@
+EXEEXT = @EXEEXT@
+F77 = @F77@
+FFLAGS = @FFLAGS@
+FLAC_LIBS = @FLAC_LIBS@
+GCONFTOOL = @GCONFTOOL@
+GCONF_CFLAGS = @GCONF_CFLAGS@
+GCONF_LIBS = @GCONF_LIBS@
+GCONF_SCHEMAS_INSTALL_FALSE = @GCONF_SCHEMAS_INSTALL_FALSE@
+GCONF_SCHEMAS_INSTALL_TRUE = @GCONF_SCHEMAS_INSTALL_TRUE@
+GCONF_SCHEMA_CONFIG_SOURCE = @GCONF_SCHEMA_CONFIG_SOURCE@
+GCONF_SCHEMA_FILE_DIR = @GCONF_SCHEMA_FILE_DIR@
+GETTEXT_PACKAGE = @GETTEXT_PACKAGE@
+GLIB_CFLAGS = @GLIB_CFLAGS@
+GLIB_LIBS = @GLIB_LIBS@
+GLIB_REQ = @GLIB_REQ@
+GMSGFMT = @GMSGFMT@
+GSTPB_PLUGINS_DIR = @GSTPB_PLUGINS_DIR@
+GST_ALL_LDFLAGS = @GST_ALL_LDFLAGS@
+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_GCOV_ENABLED_FALSE = @GST_GCOV_ENABLED_FALSE@
+GST_GCOV_ENABLED_TRUE = @GST_GCOV_ENABLED_TRUE@
+GST_GDP_CFLAGS = @GST_GDP_CFLAGS@
+GST_GDP_LIBS = @GST_GDP_LIBS@
+GST_HAVE_MMAP_FALSE = @GST_HAVE_MMAP_FALSE@
+GST_HAVE_MMAP_TRUE = @GST_HAVE_MMAP_TRUE@
+GST_LEVEL_DEFAULT = @GST_LEVEL_DEFAULT@
+GST_LIBS = @GST_LIBS@
+GST_LICENSE = @GST_LICENSE@
+GST_LT_LDFLAGS = @GST_LT_LDFLAGS@
+GST_MAJORMINOR = @GST_MAJORMINOR@
+GST_OPTION_CFLAGS = @GST_OPTION_CFLAGS@
+GST_PACKAGE_NAME = @GST_PACKAGE_NAME@
+GST_PACKAGE_ORIGIN = @GST_PACKAGE_ORIGIN@
+GST_PLUGINS_ALL = @GST_PLUGINS_ALL@
+GST_PLUGINS_BASE_CFLAGS = @GST_PLUGINS_BASE_CFLAGS@
+GST_PLUGINS_BASE_LIBS = @GST_PLUGINS_BASE_LIBS@
+GST_PLUGINS_DIR = @GST_PLUGINS_DIR@
+GST_PLUGINS_SELECTED = @GST_PLUGINS_SELECTED@
+GST_PLUGIN_LDFLAGS = @GST_PLUGIN_LDFLAGS@
+GST_TOOLS_DIR = @GST_TOOLS_DIR@
+GTK2_CFLAGS = @GTK2_CFLAGS@
+GTK2_LIBS = @GTK2_LIBS@
+GTK_BASE_DIR = @GTK_BASE_DIR@
+GTK_CFLAGS = @GTK_CFLAGS@
+GTK_DOC_USE_LIBTOOL_FALSE = @GTK_DOC_USE_LIBTOOL_FALSE@
+GTK_DOC_USE_LIBTOOL_TRUE = @GTK_DOC_USE_LIBTOOL_TRUE@
+GTK_LIBS = @GTK_LIBS@
+GTK_VERSION = @GTK_VERSION@
+HAL_CFLAGS = @HAL_CFLAGS@
+HAL_LIBS = @HAL_LIBS@
+HAVE_AVC1394 = @HAVE_AVC1394@
+HAVE_CHECK_FALSE = @HAVE_CHECK_FALSE@
+HAVE_CHECK_TRUE = @HAVE_CHECK_TRUE@
+HAVE_CPU_ALPHA_FALSE = @HAVE_CPU_ALPHA_FALSE@
+HAVE_CPU_ALPHA_TRUE = @HAVE_CPU_ALPHA_TRUE@
+HAVE_CPU_ARM_FALSE = @HAVE_CPU_ARM_FALSE@
+HAVE_CPU_ARM_TRUE = @HAVE_CPU_ARM_TRUE@
+HAVE_CPU_CRISV32_FALSE = @HAVE_CPU_CRISV32_FALSE@
+HAVE_CPU_CRISV32_TRUE = @HAVE_CPU_CRISV32_TRUE@
+HAVE_CPU_CRIS_FALSE = @HAVE_CPU_CRIS_FALSE@
+HAVE_CPU_CRIS_TRUE = @HAVE_CPU_CRIS_TRUE@
+HAVE_CPU_HPPA_FALSE = @HAVE_CPU_HPPA_FALSE@
+HAVE_CPU_HPPA_TRUE = @HAVE_CPU_HPPA_TRUE@
+HAVE_CPU_I386_FALSE = @HAVE_CPU_I386_FALSE@
+HAVE_CPU_I386_TRUE = @HAVE_CPU_I386_TRUE@
+HAVE_CPU_IA64_FALSE = @HAVE_CPU_IA64_FALSE@
+HAVE_CPU_IA64_TRUE = @HAVE_CPU_IA64_TRUE@
+HAVE_CPU_M68K_FALSE = @HAVE_CPU_M68K_FALSE@
+HAVE_CPU_M68K_TRUE = @HAVE_CPU_M68K_TRUE@
+HAVE_CPU_MIPS_FALSE = @HAVE_CPU_MIPS_FALSE@
+HAVE_CPU_MIPS_TRUE = @HAVE_CPU_MIPS_TRUE@
+HAVE_CPU_PPC_FALSE = @HAVE_CPU_PPC_FALSE@
+HAVE_CPU_PPC_TRUE = @HAVE_CPU_PPC_TRUE@
+HAVE_CPU_S390_FALSE = @HAVE_CPU_S390_FALSE@
+HAVE_CPU_S390_TRUE = @HAVE_CPU_S390_TRUE@
+HAVE_CPU_SPARC_FALSE = @HAVE_CPU_SPARC_FALSE@
+HAVE_CPU_SPARC_TRUE = @HAVE_CPU_SPARC_TRUE@
+HAVE_CPU_X86_64_FALSE = @HAVE_CPU_X86_64_FALSE@
+HAVE_CPU_X86_64_TRUE = @HAVE_CPU_X86_64_TRUE@
+HAVE_CXX = @HAVE_CXX@
+HAVE_FLAC = @HAVE_FLAC@
+HAVE_GCONFTOOL = @HAVE_GCONFTOOL@
+HAVE_GTK = @HAVE_GTK@
+HAVE_GTK_FALSE = @HAVE_GTK_FALSE@
+HAVE_GTK_TRUE = @HAVE_GTK_TRUE@
+HAVE_RAW1394 = @HAVE_RAW1394@
+HAVE_ROM1394 = @HAVE_ROM1394@
+HAVE_SPEEX = @HAVE_SPEEX@
+HAVE_SYS_SOCKET_H_FALSE = @HAVE_SYS_SOCKET_H_FALSE@
+HAVE_SYS_SOCKET_H_TRUE = @HAVE_SYS_SOCKET_H_TRUE@
+HAVE_VALGRIND_FALSE = @HAVE_VALGRIND_FALSE@
+HAVE_VALGRIND_TRUE = @HAVE_VALGRIND_TRUE@
+HAVE_WINSOCK2_H_FALSE = @HAVE_WINSOCK2_H_FALSE@
+HAVE_WINSOCK2_H_TRUE = @HAVE_WINSOCK2_H_TRUE@
+HAVE_X = @HAVE_X@
+HAVE_XSHM = @HAVE_XSHM@
+HAVE_ZLIB = @HAVE_ZLIB@
+HTML_DIR = @HTML_DIR@
+INSTALL_DATA = @INSTALL_DATA@
+INSTALL_PROGRAM = @INSTALL_PROGRAM@
+INSTALL_SCRIPT = @INSTALL_SCRIPT@
+INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
+INTLLIBS = @INTLLIBS@
+JPEG_LIBS = @JPEG_LIBS@
+LDFLAGS = @LDFLAGS@
+LIBCACA_CFLAGS = @LIBCACA_CFLAGS@
+LIBCACA_CONFIG = @LIBCACA_CONFIG@
+LIBCACA_LIBS = @LIBCACA_LIBS@
+LIBDV_CFLAGS = @LIBDV_CFLAGS@
+LIBDV_LIBS = @LIBDV_LIBS@
+LIBICONV = @LIBICONV@
+LIBINTL = @LIBINTL@
+LIBOBJS = @LIBOBJS@
+LIBOIL_CFLAGS = @LIBOIL_CFLAGS@
+LIBOIL_LIBS = @LIBOIL_LIBS@
+LIBPNG_CFLAGS = @LIBPNG_CFLAGS@
+LIBPNG_LIBS = @LIBPNG_LIBS@
+LIBS = @LIBS@
+LIBTOOL = @LIBTOOL@
+LN_S = @LN_S@
+LOCALEDIR = @LOCALEDIR@
+LTLIBICONV = @LTLIBICONV@
+LTLIBINTL = @LTLIBINTL@
+LTLIBOBJS = @LTLIBOBJS@
+MAINT = @MAINT@
+MAINTAINER_MODE_FALSE = @MAINTAINER_MODE_FALSE@
+MAINTAINER_MODE_TRUE = @MAINTAINER_MODE_TRUE@
+MAKEINFO = @MAKEINFO@
+MKINSTALLDIRS = @MKINSTALLDIRS@
+MSGFMT = @MSGFMT@
+MSGMERGE = @MSGMERGE@
+OBJC = @OBJC@
+OBJCDEPMODE = @OBJCDEPMODE@
+OBJC_LDFLAGS = @OBJC_LDFLAGS@
+OBJEXT = @OBJEXT@
+PACKAGE = @PACKAGE@
+PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
+PACKAGE_NAME = @PACKAGE_NAME@
+PACKAGE_STRING = @PACKAGE_STRING@
+PACKAGE_TARNAME = @PACKAGE_TARNAME@
+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@
+PYTHON = @PYTHON@
+PYTHON_EXEC_PREFIX = @PYTHON_EXEC_PREFIX@
+PYTHON_PLATFORM = @PYTHON_PLATFORM@
+PYTHON_PREFIX = @PYTHON_PREFIX@
+PYTHON_VERSION = @PYTHON_VERSION@
+RANLIB = @RANLIB@
+SET_MAKE = @SET_MAKE@
+SHELL = @SHELL@
+SHOUT2_CFLAGS = @SHOUT2_CFLAGS@
+SHOUT2_LIBS = @SHOUT2_LIBS@
+SPEEX_CFLAGS = @SPEEX_CFLAGS@
+SPEEX_LIBS = @SPEEX_LIBS@
+STRIP = @STRIP@
+TAGLIB_CFLAGS = @TAGLIB_CFLAGS@
+TAGLIB_LIBS = @TAGLIB_LIBS@
+USE_AALIB_FALSE = @USE_AALIB_FALSE@
+USE_AALIB_TRUE = @USE_AALIB_TRUE@
+USE_ANNODEX_FALSE = @USE_ANNODEX_FALSE@
+USE_ANNODEX_TRUE = @USE_ANNODEX_TRUE@
+USE_CAIRO_FALSE = @USE_CAIRO_FALSE@
+USE_CAIRO_TRUE = @USE_CAIRO_TRUE@
+USE_CDIO_FALSE = @USE_CDIO_FALSE@
+USE_CDIO_TRUE = @USE_CDIO_TRUE@
+USE_DV1394_FALSE = @USE_DV1394_FALSE@
+USE_DV1394_TRUE = @USE_DV1394_TRUE@
+USE_ESD_FALSE = @USE_ESD_FALSE@
+USE_ESD_TRUE = @USE_ESD_TRUE@
+USE_EXTERNAL_FALSE = @USE_EXTERNAL_FALSE@
+USE_EXTERNAL_TRUE = @USE_EXTERNAL_TRUE@
+USE_FLAC_FALSE = @USE_FLAC_FALSE@
+USE_FLAC_TRUE = @USE_FLAC_TRUE@
+USE_GCONFTOOL_FALSE = @USE_GCONFTOOL_FALSE@
+USE_GCONFTOOL_TRUE = @USE_GCONFTOOL_TRUE@
+USE_GCONF_FALSE = @USE_GCONF_FALSE@
+USE_GCONF_TRUE = @USE_GCONF_TRUE@
+USE_GDK_PIXBUF_FALSE = @USE_GDK_PIXBUF_FALSE@
+USE_GDK_PIXBUF_TRUE = @USE_GDK_PIXBUF_TRUE@
+USE_HAL_FALSE = @USE_HAL_FALSE@
+USE_HAL_TRUE = @USE_HAL_TRUE@
+USE_JPEG_FALSE = @USE_JPEG_FALSE@
+USE_JPEG_TRUE = @USE_JPEG_TRUE@
+USE_LADSPA_FALSE = @USE_LADSPA_FALSE@
+USE_LADSPA_TRUE = @USE_LADSPA_TRUE@
+USE_LIBCACA_FALSE = @USE_LIBCACA_FALSE@
+USE_LIBCACA_TRUE = @USE_LIBCACA_TRUE@
+USE_LIBDV_FALSE = @USE_LIBDV_FALSE@
+USE_LIBDV_TRUE = @USE_LIBDV_TRUE@
+USE_LIBPNG_FALSE = @USE_LIBPNG_FALSE@
+USE_LIBPNG_TRUE = @USE_LIBPNG_TRUE@
+USE_NLS = @USE_NLS@
+USE_OSS_FALSE = @USE_OSS_FALSE@
+USE_OSS_TRUE = @USE_OSS_TRUE@
+USE_SHOUT2_FALSE = @USE_SHOUT2_FALSE@
+USE_SHOUT2_TRUE = @USE_SHOUT2_TRUE@
+USE_SPEEX_FALSE = @USE_SPEEX_FALSE@
+USE_SPEEX_TRUE = @USE_SPEEX_TRUE@
+USE_SUNAUDIO_FALSE = @USE_SUNAUDIO_FALSE@
+USE_SUNAUDIO_TRUE = @USE_SUNAUDIO_TRUE@
+USE_TAGLIB_FALSE = @USE_TAGLIB_FALSE@
+USE_TAGLIB_TRUE = @USE_TAGLIB_TRUE@
+USE_XSHM_FALSE = @USE_XSHM_FALSE@
+USE_XSHM_TRUE = @USE_XSHM_TRUE@
+USE_X_FALSE = @USE_X_FALSE@
+USE_X_TRUE = @USE_X_TRUE@
+USE_ZLIB_FALSE = @USE_ZLIB_FALSE@
+USE_ZLIB_TRUE = @USE_ZLIB_TRUE@
+VALGRIND_CFLAGS = @VALGRIND_CFLAGS@
+VALGRIND_LIBS = @VALGRIND_LIBS@
+VALGRIND_PATH = @VALGRIND_PATH@
+VERSION = @VERSION@
+XDAMAGE_CFLAGS = @XDAMAGE_CFLAGS@
+XDAMAGE_LIBS = @XDAMAGE_LIBS@
+XFIXES_CFLAGS = @XFIXES_CFLAGS@
+XFIXES_LIBS = @XFIXES_LIBS@
+XGETTEXT = @XGETTEXT@
+XML_CFLAGS = @XML_CFLAGS@
+XML_LIBS = @XML_LIBS@
+XSHM_LIBS = @XSHM_LIBS@
+X_CFLAGS = @X_CFLAGS@
+X_EXTRA_LIBS = @X_EXTRA_LIBS@
+X_LIBS = @X_LIBS@
+X_PRE_LIBS = @X_PRE_LIBS@
+ZLIB_LIBS = @ZLIB_LIBS@
+ac_ct_AR = @ac_ct_AR@
+ac_ct_CC = @ac_ct_CC@
+ac_ct_CXX = @ac_ct_CXX@
+ac_ct_F77 = @ac_ct_F77@
+ac_ct_OBJC = @ac_ct_OBJC@
+ac_ct_RANLIB = @ac_ct_RANLIB@
+ac_ct_STRIP = @ac_ct_STRIP@
+ac_pt_PKG_CONFIG = @ac_pt_PKG_CONFIG@
+am__fastdepCC_FALSE = @am__fastdepCC_FALSE@
+am__fastdepCC_TRUE = @am__fastdepCC_TRUE@
+am__fastdepCXX_FALSE = @am__fastdepCXX_FALSE@
+am__fastdepCXX_TRUE = @am__fastdepCXX_TRUE@
+am__fastdepOBJC_FALSE = @am__fastdepOBJC_FALSE@
+am__fastdepOBJC_TRUE = @am__fastdepOBJC_TRUE@
+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@
+datadir = @datadir@
+exec_prefix = @exec_prefix@
+host = @host@
+host_alias = @host_alias@
+host_cpu = @host_cpu@
+host_os = @host_os@
+host_vendor = @host_vendor@
+includedir = @includedir@
+infodir = @infodir@
+install_sh = @install_sh@
+libdir = @libdir@
+libexecdir = @libexecdir@
+localstatedir = @localstatedir@
+mandir = @mandir@
+mkdir_p = @mkdir_p@
+oldincludedir = @oldincludedir@
+pkgpyexecdir = @pkgpyexecdir@
+pkgpythondir = @pkgpythondir@
+plugindir = @plugindir@
+prefix = @prefix@
+program_transform_name = @program_transform_name@
+pyexecdir = @pyexecdir@
+pythondir = @pythondir@
+sbindir = @sbindir@
+sharedstatedir = @sharedstatedir@
+sysconfdir = @sysconfdir@
+target_alias = @target_alias@
+plugin_LTLIBRARIES = libgstosxaudio.la
+libgstosxaudio_la_SOURCES = gstosxringbuffer.c		\
+			    gstosxaudioelement.c	\
+			    gstosxaudiosink.c \
+			    gstosxaudiosrc.c
+
+libgstosxaudio_la_CFLAGS = $(GST_CFLAGS) $(GST_BASE_CFLAGS) $(GSTPB_BASE_FLAGS)
+libgstosxaudio_la_LIBADD = $(GST_LIBS) $(GST_BASE_LIBS) $(GSTPB_BASE_LIBS) -lgstaudio-@GST_MAJORMINOR@
+libgstosxaudio_la_LDFLAGS = $(GST_PLUGIN_LDFLAGS) -Wl,-framework -Wl,CoreAudio
+noinst_HEADERS = gstosxaudiosink.h	\
+		gstosxaudioelement.h	\
+		gstosxringbuffer.h	\
+		gstosxaudiosrc.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 \
+	    *$$dep*) \
+	      cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \
+		&& exit 0; \
+	      exit 1;; \
+	  esac; \
+	done; \
+	echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu  sys/osxaudio/Makefile'; \
+	cd $(top_srcdir) && \
+	  $(AUTOMAKE) --gnu  sys/osxaudio/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
+install-pluginLTLIBRARIES: $(plugin_LTLIBRARIES)
+	@$(NORMAL_INSTALL)
+	test -z "$(plugindir)" || $(mkdir_p) "$(DESTDIR)$(plugindir)"
+	@list='$(plugin_LTLIBRARIES)'; for p in $$list; do \
+	  if test -f $$p; then \
+	    f=$(am__strip_dir) \
+	    echo " $(LIBTOOL) --mode=install $(pluginLTLIBRARIES_INSTALL) $(INSTALL_STRIP_FLAG) '$$p' '$(DESTDIR)$(plugindir)/$$f'"; \
+	    $(LIBTOOL) --mode=install $(pluginLTLIBRARIES_INSTALL) $(INSTALL_STRIP_FLAG) "$$p" "$(DESTDIR)$(plugindir)/$$f"; \
+	  else :; fi; \
+	done
+
+uninstall-pluginLTLIBRARIES:
+	@$(NORMAL_UNINSTALL)
+	@set -x; list='$(plugin_LTLIBRARIES)'; for p in $$list; do \
+	  p=$(am__strip_dir) \
+	  echo " $(LIBTOOL) --mode=uninstall rm -f '$(DESTDIR)$(plugindir)/$$p'"; \
+	  $(LIBTOOL) --mode=uninstall rm -f "$(DESTDIR)$(plugindir)/$$p"; \
+	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
+libgstosxaudio.la: $(libgstosxaudio_la_OBJECTS) $(libgstosxaudio_la_DEPENDENCIES) 
+	$(LINK) -rpath $(plugindir) $(libgstosxaudio_la_LDFLAGS) $(libgstosxaudio_la_OBJECTS) $(libgstosxaudio_la_LIBADD) $(LIBS)
+
+mostlyclean-compile:
+	-rm -f *.$(OBJEXT)
+
+distclean-compile:
+	-rm -f *.tab.c
+
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libgstosxaudio_la-gstosxaudioelement.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libgstosxaudio_la-gstosxaudiosink.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libgstosxaudio_la-gstosxaudiosrc.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libgstosxaudio_la-gstosxringbuffer.Plo@am__quote@
+
+.c.o:
+@am__fastdepCC_TRUE@	if $(COMPILE) -MT $@ -MD -MP -MF "$(DEPDIR)/$*.Tpo" -c -o $@ $<; \
+@am__fastdepCC_TRUE@	then mv -f "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; else rm -f "$(DEPDIR)/$*.Tpo"; exit 1; fi
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(COMPILE) -c $<
+
+.c.obj:
+@am__fastdepCC_TRUE@	if $(COMPILE) -MT $@ -MD -MP -MF "$(DEPDIR)/$*.Tpo" -c -o $@ `$(CYGPATH_W) '$<'`; \
+@am__fastdepCC_TRUE@	then mv -f "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; else rm -f "$(DEPDIR)/$*.Tpo"; exit 1; fi
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(COMPILE) -c `$(CYGPATH_W) '$<'`
+
+.c.lo:
+@am__fastdepCC_TRUE@	if $(LTCOMPILE) -MT $@ -MD -MP -MF "$(DEPDIR)/$*.Tpo" -c -o $@ $<; \
+@am__fastdepCC_TRUE@	then mv -f "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Plo"; else rm -f "$(DEPDIR)/$*.Tpo"; exit 1; fi
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	source='$<' object='$@' libtool=yes @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(LTCOMPILE) -c -o $@ $<
+
+libgstosxaudio_la-gstosxringbuffer.lo: gstosxringbuffer.c
+@am__fastdepCC_TRUE@	if $(LIBTOOL) --tag=CC --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libgstosxaudio_la_CFLAGS) $(CFLAGS) -MT libgstosxaudio_la-gstosxringbuffer.lo -MD -MP -MF "$(DEPDIR)/libgstosxaudio_la-gstosxringbuffer.Tpo" -c -o libgstosxaudio_la-gstosxringbuffer.lo `test -f 'gstosxringbuffer.c' || echo '$(srcdir)/'`gstosxringbuffer.c; \
+@am__fastdepCC_TRUE@	then mv -f "$(DEPDIR)/libgstosxaudio_la-gstosxringbuffer.Tpo" "$(DEPDIR)/libgstosxaudio_la-gstosxringbuffer.Plo"; else rm -f "$(DEPDIR)/libgstosxaudio_la-gstosxringbuffer.Tpo"; exit 1; fi
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	source='gstosxringbuffer.c' object='libgstosxaudio_la-gstosxringbuffer.lo' libtool=yes @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(LIBTOOL) --tag=CC --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libgstosxaudio_la_CFLAGS) $(CFLAGS) -c -o libgstosxaudio_la-gstosxringbuffer.lo `test -f 'gstosxringbuffer.c' || echo '$(srcdir)/'`gstosxringbuffer.c
+
+libgstosxaudio_la-gstosxaudioelement.lo: gstosxaudioelement.c
+@am__fastdepCC_TRUE@	if $(LIBTOOL) --tag=CC --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libgstosxaudio_la_CFLAGS) $(CFLAGS) -MT libgstosxaudio_la-gstosxaudioelement.lo -MD -MP -MF "$(DEPDIR)/libgstosxaudio_la-gstosxaudioelement.Tpo" -c -o libgstosxaudio_la-gstosxaudioelement.lo `test -f 'gstosxaudioelement.c' || echo '$(srcdir)/'`gstosxaudioelement.c; \
+@am__fastdepCC_TRUE@	then mv -f "$(DEPDIR)/libgstosxaudio_la-gstosxaudioelement.Tpo" "$(DEPDIR)/libgstosxaudio_la-gstosxaudioelement.Plo"; else rm -f "$(DEPDIR)/libgstosxaudio_la-gstosxaudioelement.Tpo"; exit 1; fi
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	source='gstosxaudioelement.c' object='libgstosxaudio_la-gstosxaudioelement.lo' libtool=yes @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(LIBTOOL) --tag=CC --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libgstosxaudio_la_CFLAGS) $(CFLAGS) -c -o libgstosxaudio_la-gstosxaudioelement.lo `test -f 'gstosxaudioelement.c' || echo '$(srcdir)/'`gstosxaudioelement.c
+
+libgstosxaudio_la-gstosxaudiosink.lo: gstosxaudiosink.c
+@am__fastdepCC_TRUE@	if $(LIBTOOL) --tag=CC --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libgstosxaudio_la_CFLAGS) $(CFLAGS) -MT libgstosxaudio_la-gstosxaudiosink.lo -MD -MP -MF "$(DEPDIR)/libgstosxaudio_la-gstosxaudiosink.Tpo" -c -o libgstosxaudio_la-gstosxaudiosink.lo `test -f 'gstosxaudiosink.c' || echo '$(srcdir)/'`gstosxaudiosink.c; \
+@am__fastdepCC_TRUE@	then mv -f "$(DEPDIR)/libgstosxaudio_la-gstosxaudiosink.Tpo" "$(DEPDIR)/libgstosxaudio_la-gstosxaudiosink.Plo"; else rm -f "$(DEPDIR)/libgstosxaudio_la-gstosxaudiosink.Tpo"; exit 1; fi
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	source='gstosxaudiosink.c' object='libgstosxaudio_la-gstosxaudiosink.lo' libtool=yes @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(LIBTOOL) --tag=CC --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libgstosxaudio_la_CFLAGS) $(CFLAGS) -c -o libgstosxaudio_la-gstosxaudiosink.lo `test -f 'gstosxaudiosink.c' || echo '$(srcdir)/'`gstosxaudiosink.c
+
+libgstosxaudio_la-gstosxaudiosrc.lo: gstosxaudiosrc.c
+@am__fastdepCC_TRUE@	if $(LIBTOOL) --tag=CC --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libgstosxaudio_la_CFLAGS) $(CFLAGS) -MT libgstosxaudio_la-gstosxaudiosrc.lo -MD -MP -MF "$(DEPDIR)/libgstosxaudio_la-gstosxaudiosrc.Tpo" -c -o libgstosxaudio_la-gstosxaudiosrc.lo `test -f 'gstosxaudiosrc.c' || echo '$(srcdir)/'`gstosxaudiosrc.c; \
+@am__fastdepCC_TRUE@	then mv -f "$(DEPDIR)/libgstosxaudio_la-gstosxaudiosrc.Tpo" "$(DEPDIR)/libgstosxaudio_la-gstosxaudiosrc.Plo"; else rm -f "$(DEPDIR)/libgstosxaudio_la-gstosxaudiosrc.Tpo"; exit 1; fi
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	source='gstosxaudiosrc.c' object='libgstosxaudio_la-gstosxaudiosrc.lo' libtool=yes @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(LIBTOOL) --tag=CC --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libgstosxaudio_la_CFLAGS) $(CFLAGS) -c -o libgstosxaudio_la-gstosxaudiosrc.lo `test -f 'gstosxaudiosrc.c' || echo '$(srcdir)/'`gstosxaudiosrc.c
+
+mostlyclean-libtool:
+	-rm -f *.lo
+
+clean-libtool:
+	-rm -rf .libs _libs
+
+distclean-libtool:
+	-rm -f libtool
+uninstall-info-am:
+
+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; } \
+	       END { for (i in files) print i; }'`; \
+	mkid -fID $$unique
+tags: TAGS
+
+TAGS:  $(HEADERS) $(SOURCES)  $(TAGS_DEPENDENCIES) \
+		$(TAGS_FILES) $(LISP)
+	tags=; \
+	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; } \
+	       END { for (i in files) print i; }'`; \
+	if test -z "$(ETAGS_ARGS)$$tags$$unique"; then :; else \
+	  test -n "$$unique" || unique=$$empty_fix; \
+	  $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
+	    $$tags $$unique; \
+	fi
+ctags: CTAGS
+CTAGS:  $(HEADERS) $(SOURCES)  $(TAGS_DEPENDENCIES) \
+		$(TAGS_FILES) $(LISP)
+	tags=; \
+	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; } \
+	       END { for (i in files) print i; }'`; \
+	test -z "$(CTAGS_ARGS)$$tags$$unique" \
+	  || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \
+	     $$tags $$unique
+
+GTAGS:
+	here=`$(am__cd) $(top_builddir) && pwd` \
+	  && 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)'; for file in $$list; do \
+	  case $$file in \
+	    $(srcdir)/*) file=`echo "$$file" | sed "s|^$$srcdirstrip/||"`;; \
+	    $(top_srcdir)/*) file=`echo "$$file" | sed "s|^$$topsrcdirstrip/|$(top_builddir)/|"`;; \
+	  esac; \
+	  if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
+	  dir=`echo "$$file" | sed -e 's,/[^/]*$$,,'`; \
+	  if test "$$dir" != "$$file" && test "$$dir" != "."; then \
+	    dir="/$$dir"; \
+	    $(mkdir_p) "$(distdir)$$dir"; \
+	  else \
+	    dir=''; \
+	  fi; \
+	  if test -d $$d/$$file; then \
+	    if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
+	      cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \
+	    fi; \
+	    cp -pR $$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:
+	$(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
+	  install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
+	  `test -z '$(STRIP)' || \
+	    echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install
+mostlyclean-generic:
+
+clean-generic:
+
+distclean-generic:
+	-test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_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-libtool distclean-tags
+
+dvi: dvi-am
+
+dvi-am:
+
+html: html-am
+
+info: info-am
+
+info-am:
+
+install-data-am: install-pluginLTLIBRARIES
+
+install-exec-am:
+
+install-info: install-info-am
+
+install-man:
+
+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-info-am uninstall-pluginLTLIBRARIES
+
+.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-exec \
+	install-exec-am install-info install-info-am install-man \
+	install-pluginLTLIBRARIES 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-info-am \
+	uninstall-pluginLTLIBRARIES
+
+# 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:
--- gst-plugins-good-0.10.3/sys/osxaudio/gstosxaudio.c	1969-12-31 19:00:00.000000000 -0500
+++ gst-plugins-good-0.10.3-new/sys/osxaudio/gstosxaudio.c	2005-11-13 21:13:35.000000000 -0500
@@ -0,0 +1,58 @@
+/* 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.
+ */
+
+#ifdef HAVE_CONFIG_H
+#include "config.h"
+#endif
+
+
+#include "gstosxaudioelement.h"
+#include "gstosxaudiosink.h"
+#include "gstosxaudiosrc.h"
+extern gchar *__gst_osxaudio_plugin_dir;
+
+GST_DEBUG_CATEGORY (osxaudio_debug);
+
+static gboolean
+plugin_init (GstPlugin * plugin)
+{
+  if (!gst_library_load ("gstaudio"))
+    return FALSE;
+
+
+  if (!gst_element_register (plugin, "osxaudiosink", GST_RANK_PRIMARY,
+          GST_TYPE_OSXAUDIOSINK)) {
+    return FALSE;
+  }
+  if (!gst_element_register (plugin, "osxaudiosrc", GST_RANK_PRIMARY,
+          GST_TYPE_OSXAUDIOSRC)) {
+    return FALSE;
+  }
+
+  GST_DEBUG_CATEGORY_INIT (osxaudio_debug, "osx", 0, "OSX audio elements");
+
+
+  return TRUE;
+}
+
+GST_PLUGIN_DEFINE (GST_VERSION_MAJOR,
+    GST_VERSION_MINOR,
+    "osxaudio",
+    "OSX (Mac OS X) audio support for GStreamer",
+    plugin_init, VERSION, GST_LICENSE, GST_PACKAGE_NAME, GST_PACKAGE_ORIGIN)
--- gst-plugins-good-0.10.3/sys/osxaudio/gstosxaudioelement.c	1969-12-31 19:00:00.000000000 -0500
+++ gst-plugins-good-0.10.3-new/sys/osxaudio/gstosxaudioelement.c	2006-04-26 12:29:38.000000000 -0400
@@ -0,0 +1,90 @@
+/*
+ * GStreamer
+ * Copyright 2006 Zaheer Abbas Merali  <zaheerabbas at merali dot org>
+ * 
+ * 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.
+ *
+ * Alternatively, the contents of this file may be used under the
+ * GNU Lesser General Public License Version 2.1 (the "LGPL"), in
+ * which case the following provisions apply instead of the ones
+ * mentioned above:
+ *
+ * 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 <gst/gst.h>
+#include "gstosxaudioelement.h"
+
+static void
+gst_osx_audio_element_class_init (GstOsxAudioElementInterface * klass);
+
+GType
+gst_osx_audio_element_get_type ()
+{
+  static GType gst_osxaudioelement_type = 0;
+
+  if (!gst_osxaudioelement_type) {
+    static const GTypeInfo gst_osxaudioelement_info = {
+      sizeof (GstOsxAudioElementInterface),
+      (GBaseInitFunc) gst_osx_audio_element_class_init,
+      NULL,
+      NULL,
+      NULL,
+      NULL,
+      0,
+      0,
+      NULL,
+    };
+
+    gst_osxaudioelement_type = g_type_register_static (G_TYPE_INTERFACE,
+        "GstOsxAudioElement", &gst_osxaudioelement_info, 0);
+    /*g_type_interface_add_prerequisite (gst_osxaudioelement_type,
+       GST_TYPE_IMPLEMENTS_INTERFACE); */
+  }
+
+  return gst_osxaudioelement_type;
+}
+
+static void
+gst_osx_audio_element_class_init (GstOsxAudioElementInterface * klass)
+{
+  static gboolean initialized = FALSE;
+
+  if (!initialized) {
+
+    initialized = TRUE;
+  }
+
+  /* default virtual functions */
+  klass->io_proc = NULL;
+
+}
--- gst-plugins-good-0.10.3/sys/osxaudio/gstosxaudioelement.h	1969-12-31 19:00:00.000000000 -0500
+++ gst-plugins-good-0.10.3-new/sys/osxaudio/gstosxaudioelement.h	2006-04-26 12:29:38.000000000 -0400
@@ -0,0 +1,67 @@
+/*
+ * GStreamer
+ * Copyright 2006 Zaheer Abbas Merali  <zaheerabbas at merali dot org>
+ * 
+ * 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.
+ *
+ * Alternatively, the contents of this file may be used under the
+ * GNU Lesser General Public License Version 2.1 (the "LGPL"), in
+ * which case the following provisions apply instead of the ones
+ * mentioned above:
+ *
+ * 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_OSX_AUDIO_ELEMENT_H__
+#define __GST_OSX_AUDIO_ELEMENT_H__
+
+#include <gst/gst.h>
+#include <CoreAudio/CoreAudio.h>
+
+#define GST_OSX_AUDIO_ELEMENT_TYPE                       (gst_osx_audio_element_get_type())
+#define GST_OSX_AUDIO_ELEMENT(obj)                       (G_TYPE_CHECK_INSTANCE_CAST ((obj), GST_OSX_AUDIO_ELEMENT_TYPE, GstOsxAudioElementInterface))
+#define GST_IS_OSX_AUDIO_ELEMENT(obj)                    (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GST_OSX_AUDIO_ELEMENT_TYPE))
+#define GST_OSX_AUDIO_ELEMENT_GET_INTERFACE(inst)        (G_TYPE_INSTANCE_GET_INTERFACE ((inst), GST_OSX_AUDIO_ELEMENT_TYPE, GstOsxAudioElementInterface))
+
+typedef struct _GstOsxAudioElementInterface GstOsxAudioElementInterface;
+
+struct _GstOsxAudioElementInterface {
+	GTypeInterface parent;
+	
+	OSStatus (*io_proc) (AudioDeviceID inDevice, const AudioTimeStamp *inNow, const AudioBufferList *inInputData, const AudioTimeStamp *inInputTime, AudioBufferList *outOutputData, const AudioTimeStamp *inOutputTime, void *inClientData);
+	
+};
+
+GType gst_osx_audio_element_get_type (void);
+
+
+#endif
\ No newline at end of file
--- gst-plugins-good-0.10.3/sys/osxaudio/gstosxaudiosink.c	1969-12-31 19:00:00.000000000 -0500
+++ gst-plugins-good-0.10.3-new/sys/osxaudio/gstosxaudiosink.c	2006-05-05 20:05:20.000000000 -0400
@@ -0,0 +1,345 @@
+/*
+ * GStreamer
+ * Copyright 2005,2006 Zaheer Abbas Merali  <zaheerabbas at merali dot org>
+ * 
+ * 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.
+ *
+ * Alternatively, the contents of this file may be used under the
+ * GNU Lesser General Public License Version 2.1 (the "LGPL"), in
+ * which case the following provisions apply instead of the ones
+ * mentioned above:
+ *
+ * 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.
+ */
+
+/**
+ * SECTION:element-plugin
+ *
+ * <refsect2>
+ * <title>Example launch line</title>
+ * <para>
+ * <programlisting>
+ * gst-launch -v -m audiotestsrc ! audioconvert ! osxaudiosink
+ * </programlisting>
+ * </para>
+ * </refsect2>
+ */
+
+#ifdef HAVE_CONFIG_H
+#  include <config.h>
+#endif
+
+#include <gst/gst.h>
+#include <CoreAudio/CoreAudio.h>
+#include "gstosxaudiosink.h"
+#include "gstosxaudiosrc.h"
+
+#include "gstosxaudioelement.h"
+
+GST_DEBUG_CATEGORY_STATIC (osx_audiosink_debug);
+#define GST_CAT_DEFAULT osx_audiosink_debug
+
+static GstElementDetails gst_osx_audio_sink_details =
+GST_ELEMENT_DETAILS ("Audio Sink (OSX)",
+    "Sink/Audio",
+    "Output to a sound card in OS X",
+    "Zaheer Abbas Merali <zaheerabbas at merali dot org>");
+
+/* Filter signals and args */
+enum
+{
+  /* FILL ME */
+  LAST_SIGNAL
+};
+
+enum
+{
+  ARG_0,
+  ARG_DEVICE
+};
+
+static GstStaticPadTemplate sink_factory = GST_STATIC_PAD_TEMPLATE ("sink",
+    GST_PAD_SINK,
+    GST_PAD_ALWAYS,
+    GST_STATIC_CAPS ("audio/x-raw-float, "
+        "endianness = (int) {" G_STRINGIFY (G_BYTE_ORDER) " }, "
+        "signed = (boolean) { TRUE }, "
+        "width = (int) 32, "
+        "depth = (int) 32, " "rate = (int) 44100, " "channels = (int) 2")
+    );
+
+static void gst_osx_audio_sink_set_property (GObject * object, guint prop_id,
+    const GValue * value, GParamSpec * pspec);
+static void gst_osx_audio_sink_get_property (GObject * object, guint prop_id,
+    GValue * value, GParamSpec * pspec);
+static GstCaps *gst_osx_audio_sink_getcaps (GstBaseSink * sink);
+
+
+static GstRingBuffer *gst_osx_audio_sink_create_ringbuffer (GstBaseAudioSink *
+    sink);
+/*static GstCaps* gst_osx_audio_sink_getcaps (GstBaseSink * bsink);*/
+static void gst_osx_audio_sink_osxelement_init (gpointer g_iface,
+    gpointer iface_data);
+OSStatus gst_osx_audio_sink_io_proc (AudioDeviceID inDevice,
+    const AudioTimeStamp * inNow, const AudioBufferList * inInputData,
+    const AudioTimeStamp * inInputTime, AudioBufferList * outOutputData,
+    const AudioTimeStamp * inOutputTime, void *inClientData);
+static void
+gst_osx_audio_sink_osxelement_do_init (GType type)
+{
+  static const GInterfaceInfo osxelement_info = {
+    gst_osx_audio_sink_osxelement_init,
+    NULL,
+    NULL
+  };
+
+  GST_DEBUG_CATEGORY_INIT (osx_audiosink_debug, "osxaudiosink", 0,
+      "OSX Audio Sink");
+  GST_DEBUG ("Adding static interface\n");
+  g_type_add_interface_static (type, GST_OSX_AUDIO_ELEMENT_TYPE,
+      &osxelement_info);
+}
+
+GST_BOILERPLATE_FULL (GstOsxAudioSink, gst_osx_audio_sink, GstBaseAudioSink,
+    GST_TYPE_BASE_AUDIO_SINK, gst_osx_audio_sink_osxelement_do_init);
+
+
+static void
+gst_osx_audio_sink_base_init (gpointer g_class)
+{
+  GstElementClass *element_class = GST_ELEMENT_CLASS (g_class);
+
+  gst_element_class_add_pad_template (element_class,
+      gst_static_pad_template_get (&sink_factory));
+
+  gst_element_class_set_details (element_class, &gst_osx_audio_sink_details);
+}
+
+/* initialize the plugin's class */
+static void
+gst_osx_audio_sink_class_init (GstOsxAudioSinkClass * klass)
+{
+  GObjectClass *gobject_class;
+  GstElementClass *gstelement_class;
+  GstBaseSinkClass *gstbasesink_class;
+  GstBaseAudioSinkClass *gstbaseaudiosink_class;
+
+  gobject_class = (GObjectClass *) klass;
+  gstelement_class = (GstElementClass *) klass;
+  gstbasesink_class = (GstBaseSinkClass *) klass;
+  gstbaseaudiosink_class = (GstBaseAudioSinkClass *) klass;
+
+  parent_class = g_type_class_peek_parent (klass);
+
+  gobject_class->set_property =
+      GST_DEBUG_FUNCPTR (gst_osx_audio_sink_set_property);
+  gobject_class->get_property =
+      GST_DEBUG_FUNCPTR (gst_osx_audio_sink_get_property);
+
+  g_object_class_install_property (gobject_class, ARG_DEVICE,
+      g_param_spec_int ("device", "Device ID", "Device ID of output device",
+          0, G_MAXINT, 0, G_PARAM_READWRITE));
+
+  gstbasesink_class->get_caps = GST_DEBUG_FUNCPTR (gst_osx_audio_sink_getcaps);
+  gstbaseaudiosink_class->create_ringbuffer =
+      GST_DEBUG_FUNCPTR (gst_osx_audio_sink_create_ringbuffer);
+
+}
+
+/* initialize the new element
+ * instantiate pads and add them to element
+ * set functions
+ * initialize structure
+ */
+static void
+gst_osx_audio_sink_init (GstOsxAudioSink * sink, GstOsxAudioSinkClass * gclass)
+{
+/*  GstElementClass *klass = GST_ELEMENT_GET_CLASS (sink); */
+  sink->ringbuffer = NULL;
+  GST_DEBUG ("Initialising object\n");
+  gst_osx_audio_sink_create_ringbuffer (sink);
+
+}
+
+static void
+gst_osx_audio_sink_set_property (GObject * object, guint prop_id,
+    const GValue * value, GParamSpec * pspec)
+{
+  GstOsxAudioSink *sink = GST_OSX_AUDIO_SINK (object);
+
+  switch (prop_id) {
+    case ARG_DEVICE:
+      if (sink->ringbuffer)
+        sink->ringbuffer->device_id = g_value_get_int (value);
+      break;
+    default:
+      G_OBJECT_WARN_INVALID_PROPERTY_ID (object, prop_id, pspec);
+      break;
+  }
+}
+
+static void
+gst_osx_audio_sink_get_property (GObject * object, guint prop_id,
+    GValue * value, GParamSpec * pspec)
+{
+  GstOsxAudioSink *sink = GST_OSX_AUDIO_SINK (object);
+  int val = 0;
+
+  switch (prop_id) {
+    case ARG_DEVICE:
+      if (sink->ringbuffer)
+        val = sink->ringbuffer->device_id;
+
+      g_value_set_int (value, val);
+      break;
+    default:
+      G_OBJECT_WARN_INVALID_PROPERTY_ID (object, prop_id, pspec);
+      break;
+  }
+}
+
+/* GstElement vmethod implementations */
+
+/* GstBaseSink vmethod implementations */
+static GstCaps *
+gst_osx_audio_sink_getcaps (GstBaseSink * sink)
+{
+  GstCaps *caps;
+  GstOsxAudioSink *osxsink;
+  OSStatus status;
+  AudioValueRange rates[10];
+  UInt32 propertySize;
+  int i;
+
+  propertySize = sizeof (AudioValueRange) * 9;
+  osxsink = GST_OSX_AUDIO_SINK (sink);
+
+  caps = gst_caps_copy (gst_pad_get_pad_template_caps (GST_BASE_SINK_PAD
+          (sink)));
+
+
+  status = AudioDeviceGetProperty (osxsink->ringbuffer->device_id, 0, FALSE,
+      kAudioDevicePropertyAvailableNominalSampleRates, &propertySize, &rates);
+
+  GST_DEBUG
+      ("Getting available sample rates: Status: %d number of ranges: %d\n",
+      status, propertySize / sizeof (AudioValueRange));
+
+  for (i = 0; i < propertySize / sizeof (AudioValueRange); i++) {
+    g_print ("Range from %f to %f\n", rates[i].mMinimum, rates[i].mMaximum);
+  }
+
+  return caps;
+}
+
+/* GstBaseAudioSink vmethod implementations */
+static GstRingBuffer *
+gst_osx_audio_sink_create_ringbuffer (GstBaseAudioSink * sink)
+{
+  GstOsxAudioSink *osxsink;
+
+  osxsink = GST_OSX_AUDIO_SINK (sink);
+  if (!osxsink->ringbuffer) {
+    GST_DEBUG ("Creating ringbuffer\n");
+    osxsink->ringbuffer = g_object_new (GST_TYPE_OSX_RING_BUFFER, NULL);
+    GST_DEBUG ("osx sink 0x%x element 0x%x  ioproc 0x%x\n", osxsink,
+        GST_OSX_AUDIO_ELEMENT_GET_INTERFACE (osxsink),
+        (void *) gst_osx_audio_sink_io_proc);
+    osxsink->ringbuffer->element =
+        GST_OSX_AUDIO_ELEMENT_GET_INTERFACE (osxsink);
+  }
+
+  return GST_RING_BUFFER (osxsink->ringbuffer);
+}
+
+OSStatus
+gst_osx_audio_sink_io_proc (AudioDeviceID inDevice,
+    const AudioTimeStamp * inNow, const AudioBufferList * inInputData,
+    const AudioTimeStamp * inInputTime, AudioBufferList * outOutputData,
+    const AudioTimeStamp * inOutputTime, void *inClientData)
+{
+  GstOsxRingBuffer *buf = GST_OSX_RING_BUFFER (inClientData);
+
+  guint8 *readptr;
+  gint readseg;
+  gint len;
+
+  if (gst_ring_buffer_prepare_read (GST_RING_BUFFER (buf), &readseg, &readptr,
+          &len)) {
+    outOutputData->mBuffers[0].mDataByteSize = len;
+    memcpy ((char *) outOutputData->mBuffers[0].mData, readptr, len);
+
+    /* clear written samples */
+    gst_ring_buffer_clear (GST_RING_BUFFER (buf), readseg);
+
+    /* we wrote one segment */
+    gst_ring_buffer_advance (GST_RING_BUFFER (buf), 1);
+  }
+  return 0;
+}
+
+static void
+gst_osx_audio_sink_osxelement_init (gpointer g_iface, gpointer iface_data)
+{
+  GstOsxAudioElementInterface *iface = (GstOsxAudioElementInterface *) g_iface;
+
+  iface->io_proc = gst_osx_audio_sink_io_proc;
+}
+
+/* entry point to initialize the plug-in
+ * initialize the plug-in itself
+ * register the element factories and pad templates
+ * register the features
+ *
+ * exchange the string 'plugin' with your elemnt name
+ */
+static gboolean
+plugin_init (GstPlugin * plugin)
+{
+  gboolean ret;
+
+  ret = gst_element_register (plugin, "osxaudiosink",
+      GST_RANK_NONE, GST_TYPE_OSX_AUDIO_SINK);
+  return ret && gst_element_register (plugin, "osxaudiosrc",
+      GST_RANK_NONE, GST_TYPE_OSX_AUDIO_SRC);
+}
+
+/* this is the structure that gstreamer looks for to register plugins
+ *
+ * exchange the strings 'plugin' and 'Template plugin' with you plugin name and
+ * description
+ */
+GST_PLUGIN_DEFINE (GST_VERSION_MAJOR,
+    GST_VERSION_MINOR,
+    "osxaudio",
+    "OSX Audio plugin",
+    plugin_init, VERSION, "LGPL", "GStreamer", "http://gstreamer.net/")
--- gst-plugins-good-0.10.3/sys/osxaudio/gstosxaudiosink.h	1969-12-31 19:00:00.000000000 -0500
+++ gst-plugins-good-0.10.3-new/sys/osxaudio/gstosxaudiosink.h	2006-04-26 12:29:38.000000000 -0400
@@ -0,0 +1,84 @@
+/*
+ * GStreamer
+ * Copyright 2005-2006 Zaheer Abbas Merali <zaheerabbas at merali dot org>
+ * 
+ * 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.
+ *
+ * Alternatively, the contents of this file may be used under the
+ * GNU Lesser General Public License Version 2.1 (the "LGPL"), in
+ * which case the following provisions apply instead of the ones
+ * mentioned above:
+ *
+ * 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_OSXAUDIOSINK_H__
+#define __GST_OSXAUDIOSINK_H__
+
+#include <gst/gst.h>
+#include <gst/audio/gstbaseaudiosink.h>
+#include "gstosxringbuffer.h"
+
+G_BEGIN_DECLS
+
+/* #defines don't like whitespacey bits */
+#define GST_TYPE_OSX_AUDIO_SINK \
+  (gst_osx_audio_sink_get_type())
+#define GST_OSX_AUDIO_SINK(obj) \
+  (G_TYPE_CHECK_INSTANCE_CAST((obj),GST_TYPE_OSX_AUDIO_SINK,GstOsxAudioSink))
+#define GST_OSX_AUDIO_SINK_CLASS(klass) \
+  (G_TYPE_CHECK_CLASS_CAST((klass),GST_TYPE_OSX_AUDIO_SINK,GstOsxAudioSinkClass))
+#define GST_IS_PLUGIN_TEMPLATE(obj) \
+  (G_TYPE_CHECK_INSTANCE_TYPE((obj),GST_TYPE_OSX_AUDIO_SINK))
+#define GST_IS_PLUGIN_TEMPLATE_CLASS(klass) \
+  (G_TYPE_CHECK_CLASS_TYPE((klass),GST_TYPE_OSX_AUDIO_SINK))
+
+typedef struct _GstOsxAudioSink      GstOsxAudioSink;
+typedef struct _GstOsxAudioSinkClass GstOsxAudioSinkClass;
+
+struct _GstOsxAudioSink
+{
+  GstBaseAudioSink sink;
+
+  GstOsxRingBuffer *ringbuffer;
+};
+
+struct _GstOsxAudioSinkClass 
+{
+  GstBaseAudioSinkClass parent_class;
+};
+
+GType gst_osx_audio_sink_get_type (void);
+
+G_END_DECLS
+
+#endif /* __GST_OSXAUDIOSINK_H__ */
--- gst-plugins-good-0.10.3/sys/osxaudio/gstosxaudiosrc.c	1969-12-31 19:00:00.000000000 -0500
+++ gst-plugins-good-0.10.3-new/sys/osxaudio/gstosxaudiosrc.c	2006-05-05 20:05:20.000000000 -0400
@@ -0,0 +1,279 @@
+/*
+ * GStreamer
+ * Copyright 2005,2006 Zaheer Abbas Merali  <zaheerabbas at merali dot org>
+ * 
+ * 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.
+ *
+ * Alternatively, the contents of this file may be used under the
+ * GNU Lesser General Public License Version 2.1 (the "LGPL"), in
+ * which case the following provisions apply instead of the ones
+ * mentioned above:
+ *
+ * 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.
+ */
+
+/**
+ * SECTION:element-plugin
+ *
+ * <refsect2>
+ * <title>Example launch line</title>
+ * <para>
+ * <programlisting>
+ * gst-launch -v -m osxaudiosrc ! fakesink
+ * </programlisting>
+ * </para>
+ * </refsect2>
+ */
+
+#ifdef HAVE_CONFIG_H
+#  include <config.h>
+#endif
+
+#include <gst/gst.h>
+#include <CoreAudio/CoreAudio.h>
+#include "gstosxaudiosrc.h"
+#include "gstosxaudioelement.h"
+
+GST_DEBUG_CATEGORY_STATIC (osx_audiosrc_debug);
+#define GST_CAT_DEFAULT osx_audiosrc_debug
+
+static GstElementDetails gst_osx_audio_src_details =
+GST_ELEMENT_DETAILS ("Audio Source (OSX)",
+    "Source/Audio",
+    "Input from a sound card in OS X",
+    "Zaheer Abbas Merali <zaheerabbas at merali dot org>");
+
+/* Filter signals and args */
+enum
+{
+  /* FILL ME */
+  LAST_SIGNAL
+};
+
+enum
+{
+  ARG_0,
+  ARG_DEVICE
+};
+
+static GstStaticPadTemplate src_factory = GST_STATIC_PAD_TEMPLATE ("src",
+    GST_PAD_SRC,
+    GST_PAD_ALWAYS,
+    GST_STATIC_CAPS ("audio/x-raw-float, "
+        "endianness = (int) {" G_STRINGIFY (G_BYTE_ORDER) " }, "
+        "signed = (boolean) { TRUE }, "
+        "width = (int) 32, "
+        "depth = (int) 32, " "rate = (int) 44100, " "channels = (int) 2")
+    );
+
+static void gst_osx_audio_src_set_property (GObject * object, guint prop_id,
+    const GValue * value, GParamSpec * pspec);
+static void gst_osx_audio_src_get_property (GObject * object, guint prop_id,
+    GValue * value, GParamSpec * pspec);
+
+
+static GstRingBuffer *gst_osx_audio_src_create_ringbuffer (GstBaseAudioSrc *
+    src);
+/*static GstCaps* gst_osx_audio_sink_getcaps (GstBaseSink * bsrc);*/
+static void gst_osx_audio_src_osxelement_init (gpointer g_iface,
+    gpointer iface_data);
+OSStatus gst_osx_audio_src_io_proc (AudioDeviceID inDevice,
+    const AudioTimeStamp * inNow, const AudioBufferList * inInputData,
+    const AudioTimeStamp * inInputTime, AudioBufferList * outOutputData,
+    const AudioTimeStamp * inOutputTime, void *inClientData);
+
+static void
+gst_osx_audio_src_osxelement_do_init (GType type)
+{
+  static const GInterfaceInfo osxelement_info = {
+    gst_osx_audio_src_osxelement_init,
+    NULL,
+    NULL
+  };
+
+  GST_DEBUG_CATEGORY_INIT (osx_audiosrc_debug, "osxaudiosrc", 0,
+      "OSX Audio Src");
+  GST_DEBUG ("Adding static interface\n");
+  g_type_add_interface_static (type, GST_OSX_AUDIO_ELEMENT_TYPE,
+      &osxelement_info);
+}
+
+GST_BOILERPLATE_FULL (GstOsxAudioSrc, gst_osx_audio_src, GstBaseAudioSrc,
+    GST_TYPE_BASE_AUDIO_SRC, gst_osx_audio_src_osxelement_do_init);
+
+
+static void
+gst_osx_audio_src_base_init (gpointer g_class)
+{
+  GstElementClass *element_class = GST_ELEMENT_CLASS (g_class);
+
+  gst_element_class_add_pad_template (element_class,
+      gst_static_pad_template_get (&src_factory));
+
+  gst_element_class_set_details (element_class, &gst_osx_audio_src_details);
+}
+
+/* initialize the plugin's class */
+static void
+gst_osx_audio_src_class_init (GstOsxAudioSrcClass * klass)
+{
+  GObjectClass *gobject_class;
+  GstElementClass *gstelement_class;
+  GstBaseAudioSrcClass *gstbaseaudiosrc_class;
+
+  gobject_class = (GObjectClass *) klass;
+  gstelement_class = (GstElementClass *) klass;
+  gstbaseaudiosrc_class = (GstBaseAudioSrcClass *) klass;
+
+  parent_class = g_type_class_peek_parent (klass);
+
+  gobject_class->set_property =
+      GST_DEBUG_FUNCPTR (gst_osx_audio_src_set_property);
+  gobject_class->get_property =
+      GST_DEBUG_FUNCPTR (gst_osx_audio_src_get_property);
+
+  g_object_class_install_property (gobject_class, ARG_DEVICE,
+      g_param_spec_int ("device", "Device ID", "Device ID of output device",
+          0, G_MAXINT, 0, G_PARAM_READWRITE));
+
+  gstbaseaudiosrc_class->create_ringbuffer =
+      GST_DEBUG_FUNCPTR (gst_osx_audio_src_create_ringbuffer);
+
+}
+
+/* initialize the new element
+ * instantiate pads and add them to element
+ * set functions
+ * initialize structure
+ */
+static void
+gst_osx_audio_src_init (GstOsxAudioSrc * src, GstOsxAudioSrcClass * gclass)
+{
+/*  GstElementClass *klass = GST_ELEMENT_GET_CLASS (sink); */
+  gst_base_src_set_live (GST_BASE_SRC (src), TRUE);
+  src->ringbuffer = NULL;
+  GST_DEBUG ("Initialising object\n");
+  gst_osx_audio_src_create_ringbuffer (GST_BASE_AUDIO_SRC (src));
+}
+
+static void
+gst_osx_audio_src_set_property (GObject * object, guint prop_id,
+    const GValue * value, GParamSpec * pspec)
+{
+  GstOsxAudioSrc *src = GST_OSX_AUDIO_SRC (object);
+
+  switch (prop_id) {
+    case ARG_DEVICE:
+      if (src->ringbuffer)
+        src->ringbuffer->device_id = g_value_get_int (value);
+      break;
+    default:
+      G_OBJECT_WARN_INVALID_PROPERTY_ID (object, prop_id, pspec);
+      break;
+  }
+}
+
+static void
+gst_osx_audio_src_get_property (GObject * object, guint prop_id,
+    GValue * value, GParamSpec * pspec)
+{
+  GstOsxAudioSrc *src = GST_OSX_AUDIO_SRC (object);
+  int val = 0;
+
+  switch (prop_id) {
+    case ARG_DEVICE:
+      if (src->ringbuffer)
+        val = src->ringbuffer->device_id;
+
+      g_value_set_int (value, val);
+      break;
+    default:
+      G_OBJECT_WARN_INVALID_PROPERTY_ID (object, prop_id, pspec);
+      break;
+  }
+}
+
+/* GstElement vmethod implementations */
+
+
+/* GstBaseAudioSink vmethod implementations */
+static GstRingBuffer *
+gst_osx_audio_src_create_ringbuffer (GstBaseAudioSrc * src)
+{
+  GstOsxAudioSrc *osxsrc;
+
+  osxsrc = GST_OSX_AUDIO_SRC (src);
+  if (!osxsrc->ringbuffer) {
+    GST_DEBUG ("Creating ringbuffer\n");
+    osxsrc->ringbuffer = g_object_new (GST_TYPE_OSX_RING_BUFFER, NULL);
+    GST_DEBUG ("osx src 0x%x element 0x%x  ioproc 0x%x\n", osxsrc,
+        GST_OSX_AUDIO_ELEMENT_GET_INTERFACE (osxsrc),
+        (void *) gst_osx_audio_src_io_proc);
+    osxsrc->ringbuffer->element = GST_OSX_AUDIO_ELEMENT_GET_INTERFACE (osxsrc);
+  }
+
+  return GST_RING_BUFFER (osxsrc->ringbuffer);
+}
+
+OSStatus
+gst_osx_audio_src_io_proc (AudioDeviceID inDevice, const AudioTimeStamp * inNow,
+    const AudioBufferList * inInputData, const AudioTimeStamp * inInputTime,
+    AudioBufferList * outOutputData, const AudioTimeStamp * inOutputTime,
+    void *inClientData)
+{
+  GstOsxRingBuffer *buf = GST_OSX_RING_BUFFER (inClientData);
+
+  guint8 *writeptr;
+  gint writeseg;
+  gint len;
+
+  if (gst_ring_buffer_prepare_read (GST_RING_BUFFER (buf), &writeseg, &writeptr,
+          &len)) {
+
+    memcpy (writeptr, (char *) inInputData->mBuffers[0].mData, len);
+
+    /* clear written samples */
+    /*gst_ring_buffer_clear (GST_RING_BUFFER(buf), writeseg); */
+
+    /* we wrote one segment */
+    gst_ring_buffer_advance (GST_RING_BUFFER (buf), 1);
+  }
+  return 0;
+}
+
+static void
+gst_osx_audio_src_osxelement_init (gpointer g_iface, gpointer iface_data)
+{
+  GstOsxAudioElementInterface *iface = (GstOsxAudioElementInterface *) g_iface;
+
+  iface->io_proc = gst_osx_audio_src_io_proc;
+}
--- gst-plugins-good-0.10.3/sys/osxaudio/gstosxaudiosrc.h	1969-12-31 19:00:00.000000000 -0500
+++ gst-plugins-good-0.10.3-new/sys/osxaudio/gstosxaudiosrc.h	2006-04-28 10:55:20.000000000 -0400
@@ -0,0 +1,80 @@
+/*
+ * GStreamer
+ * Copyright 2005-2006 Zaheer Abbas Merali <zaheerabbas at merali dot org>
+ * 
+ * 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.
+ *
+ * Alternatively, the contents of this file may be used under the
+ * GNU Lesser General Public License Version 2.1 (the "LGPL"), in
+ * which case the following provisions apply instead of the ones
+ * mentioned above:
+ *
+ * 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_OSXAUDIOSRC_H__
+#define __GST_OSXAUDIOSRC_H__
+
+#include <gst/gst.h>
+#include <gst/audio/gstbaseaudiosrc.h>
+#include "gstosxringbuffer.h"
+
+G_BEGIN_DECLS
+
+/* #defines don't like whitespacey bits */
+#define GST_TYPE_OSX_AUDIO_SRC \
+  (gst_osx_audio_src_get_type())
+#define GST_OSX_AUDIO_SRC(obj) \
+  (G_TYPE_CHECK_INSTANCE_CAST((obj),GST_TYPE_OSX_AUDIO_SRC,GstOsxAudioSrc))
+#define GST_OSX_AUDIO_SRC_CLASS(klass) \
+  (G_TYPE_CHECK_CLASS_CAST((klass),GST_TYPE_OSX_AUDIO_SRC,GstOsxAudioSrcClass))
+
+typedef struct _GstOsxAudioSrc      GstOsxAudioSrc;
+typedef struct _GstOsxAudioSrcClass GstOsxAudioSrcClass;
+
+struct _GstOsxAudioSrc
+{
+  GstBaseAudioSrc src;
+
+  GstOsxRingBuffer *ringbuffer;
+};
+
+struct _GstOsxAudioSrcClass 
+{
+  GstBaseAudioSrcClass parent_class;
+};
+
+GType gst_osx_audio_src_get_type (void);
+
+G_END_DECLS
+
+#endif /* __GST_OSXAUDIOSRC_H__ */
--- gst-plugins-good-0.10.3/sys/osxaudio/gstosxringbuffer.c	1969-12-31 19:00:00.000000000 -0500
+++ gst-plugins-good-0.10.3-new/sys/osxaudio/gstosxringbuffer.c	2006-04-28 07:57:39.000000000 -0400
@@ -0,0 +1,300 @@
+/*
+ * GStreamer
+ * Copyright 2006 Zaheer Abbas Merali  <zaheerabbas at merali dot org>
+ * 
+ * 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.
+ *
+ * Alternatively, the contents of this file may be used under the
+ * GNU Lesser General Public License Version 2.1 (the "LGPL"), in
+ * which case the following provisions apply instead of the ones
+ * mentioned above:
+ *
+ * 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 <CoreAudio/CoreAudio.h>
+#include <gst/gst.h>
+#include "gstosxringbuffer.h"
+
+GST_DEBUG_CATEGORY_STATIC (osx_audio_debug);
+#define GST_CAT_DEFAULT osx_audio_debug
+
+static void gst_osx_ring_buffer_class_init (GstOsxRingBufferClass * klass);
+static void gst_osx_ring_buffer_init (GstOsxRingBuffer * ringbuffer,
+    GstOsxRingBufferClass * g_class);
+static void gst_osx_ring_buffer_dispose (GObject * object);
+static void gst_osx_ring_buffer_finalize (GObject * object);
+static gboolean gst_osx_ring_buffer_open_device (GstRingBuffer * buf);
+static gboolean gst_osx_ring_buffer_close_device (GstRingBuffer * buf);
+
+static gboolean gst_osx_ring_buffer_acquire (GstRingBuffer * buf,
+    GstRingBufferSpec * spec);
+static gboolean gst_osx_ring_buffer_release (GstRingBuffer * buf);
+
+/* static gboolean gst_osx_ring_buffer_device_is_acquired (GstRingBuffer * buf); */
+
+static gboolean gst_osx_ring_buffer_start (GstRingBuffer * buf);
+static gboolean gst_osx_ring_buffer_pause (GstRingBuffer * buf);
+static gboolean gst_osx_ring_buffer_stop (GstRingBuffer * buf);
+static guint gst_osx_ring_buffer_delay (GstRingBuffer * buf);
+static GstRingBufferClass *ring_parent_class = NULL;
+
+/* ringbuffer abstract base class */
+
+GType
+gst_osx_ring_buffer_get_type (void)
+{
+  static GType ringbuffer_type = 0;
+
+  if (!ringbuffer_type) {
+    static const GTypeInfo ringbuffer_info = {
+      sizeof (GstOsxRingBufferClass),
+      NULL,
+      NULL,
+      (GClassInitFunc) gst_osx_ring_buffer_class_init,
+      NULL,
+      NULL,
+      sizeof (GstOsxRingBuffer),
+      0,
+      (GInstanceInitFunc) gst_osx_ring_buffer_init,
+      NULL
+    };
+    GST_DEBUG_CATEGORY_INIT (osx_audio_debug, "osxaudio", 0,
+        "OSX Audio Elements");
+    GST_DEBUG ("Creating osx ring buffer type\n");
+
+    ringbuffer_type =
+        g_type_register_static (GST_TYPE_RING_BUFFER, "GstOsxRingBuffer",
+        &ringbuffer_info, 0);
+  }
+  return ringbuffer_type;
+}
+
+static void
+gst_osx_ring_buffer_class_init (GstOsxRingBufferClass * klass)
+{
+  GObjectClass *gobject_class;
+  GstObjectClass *gstobject_class;
+  GstRingBufferClass *gstringbuffer_class;
+
+  gobject_class = (GObjectClass *) klass;
+  gstobject_class = (GstObjectClass *) klass;
+  gstringbuffer_class = (GstRingBufferClass *) klass;
+
+  ring_parent_class = g_type_class_peek_parent (klass);
+
+  gobject_class->dispose = GST_DEBUG_FUNCPTR (gst_osx_ring_buffer_dispose);
+  gobject_class->finalize = GST_DEBUG_FUNCPTR (gst_osx_ring_buffer_finalize);
+
+  gstringbuffer_class->open_device =
+      GST_DEBUG_FUNCPTR (gst_osx_ring_buffer_open_device);
+  gstringbuffer_class->close_device =
+      GST_DEBUG_FUNCPTR (gst_osx_ring_buffer_close_device);
+  gstringbuffer_class->acquire =
+      GST_DEBUG_FUNCPTR (gst_osx_ring_buffer_acquire);
+  gstringbuffer_class->release =
+      GST_DEBUG_FUNCPTR (gst_osx_ring_buffer_release);
+  gstringbuffer_class->start = GST_DEBUG_FUNCPTR (gst_osx_ring_buffer_start);
+  gstringbuffer_class->pause = GST_DEBUG_FUNCPTR (gst_osx_ring_buffer_pause);
+  gstringbuffer_class->resume = GST_DEBUG_FUNCPTR (gst_osx_ring_buffer_start);
+  gstringbuffer_class->stop = GST_DEBUG_FUNCPTR (gst_osx_ring_buffer_stop);
+
+  gstringbuffer_class->delay = GST_DEBUG_FUNCPTR (gst_osx_ring_buffer_delay);
+
+  GST_DEBUG ("osx ring buffer class init\n");
+}
+
+static void
+gst_osx_ring_buffer_init (GstOsxRingBuffer * ringbuffer,
+    GstOsxRingBufferClass * g_class)
+{
+  OSStatus status;
+  UInt32 propertySize;
+
+  /* currently do bugger all */
+  GST_DEBUG ("osx ring buffer init\n");
+  propertySize = sizeof (ringbuffer->device_id);
+  status =
+      AudioHardwareGetProperty (kAudioHardwarePropertyDefaultOutputDevice,
+      &propertySize, &(ringbuffer->device_id));
+  GST_DEBUG ("osx ring buffer called AudioHardwareGetProperty\n");
+  if (status) {
+    GST_DEBUG ("AudioHardwareGetProperty returned %d\n", (int) status);
+  } else {
+    GST_DEBUG ("AudioHardwareGetProperty returned 0\n");
+  }
+  if (ringbuffer->device_id == kAudioDeviceUnknown) {
+    GST_DEBUG ("AudioHardwareGetProperty: device_id is kAudioDeviceUnknown\n");
+  }
+  GST_DEBUG ("AudioHardwareGetProperty: device_id is %d\n",
+      ringbuffer->device_id);
+  /* get requested buffer length */
+  propertySize = sizeof (ringbuffer->buffer_len);
+  status =
+      AudioDeviceGetProperty (ringbuffer->device_id, 0, false,
+      kAudioDevicePropertyBufferSize, &propertySize, &ringbuffer->buffer_len);
+  if (status) {
+    GST_DEBUG
+        ("AudioDeviceGetProperty returned %d when getting kAudioDevicePropertyBufferSize\n",
+        (int) status);
+  }
+  GST_DEBUG ("%5d ringbuffer->buffer_len\n", (int) ringbuffer->buffer_len);
+}
+
+static void
+gst_osx_ring_buffer_dispose (GObject * object)
+{
+  G_OBJECT_CLASS (ring_parent_class)->dispose (object);
+}
+
+static void
+gst_osx_ring_buffer_finalize (GObject * object)
+{
+  G_OBJECT_CLASS (ring_parent_class)->finalize (object);
+}
+
+static gboolean
+gst_osx_ring_buffer_open_device (GstRingBuffer * buf)
+{
+  /* stub, we need to open device..maybe do nothing */
+  return TRUE;
+}
+
+static gboolean
+gst_osx_ring_buffer_close_device (GstRingBuffer * buf)
+{
+  /* stub, we need to close device..maybe do nothing */
+  return TRUE;
+}
+
+static gboolean
+gst_osx_ring_buffer_acquire (GstRingBuffer * buf, GstRingBufferSpec * spec)
+{
+  /* stub, we need to allocate ringbuffer memory */
+  GstOsxRingBuffer *osxbuf;
+
+  osxbuf = GST_OSX_RING_BUFFER (buf);
+
+  spec->segsize = osxbuf->buffer_len;
+  spec->segtotal = 16;
+
+  GST_DEBUG ("osx ring buffer acquire\n");
+
+  buf->data = gst_buffer_new_and_alloc (spec->segtotal * spec->segsize);
+  memset (GST_BUFFER_DATA (buf->data), 0, GST_BUFFER_SIZE (buf->data));
+
+  return TRUE;
+}
+
+static gboolean
+gst_osx_ring_buffer_release (GstRingBuffer * buf)
+{
+  /* stub, we need to deallocate ringbuffer memory */
+  GstOsxRingBuffer *osxbuf;
+
+  osxbuf = GST_OSX_RING_BUFFER (buf);
+
+  gst_buffer_unref (buf->data);
+  buf->data = NULL;
+
+  return TRUE;
+}
+
+static gboolean
+gst_osx_ring_buffer_start (GstRingBuffer * buf)
+{
+  /* stub */
+  OSErr status;
+  GstOsxRingBuffer *osxbuf;
+
+  osxbuf = GST_OSX_RING_BUFFER (buf);
+
+  GST_DEBUG ("osx ring buffer start ioproc: 0x%x device_id %d\n",
+      osxbuf->element->io_proc, osxbuf->device_id);
+  status =
+      AudioDeviceAddIOProc (osxbuf->device_id, osxbuf->element->io_proc,
+      osxbuf);
+
+  if (status) {
+    GST_DEBUG ("AudioDeviceAddIOProc returned %d\n", (int) status);
+    return FALSE;
+  }
+  status = AudioDeviceStart (osxbuf->device_id, osxbuf->element->io_proc);
+  if (status) {
+    GST_DEBUG ("AudioDeviceStart returned %d\n", (int) status);
+    return FALSE;
+  }
+  return TRUE;
+}
+
+static gboolean
+gst_osx_ring_buffer_pause (GstRingBuffer * buf)
+{
+  /* stub */
+  /* stop callback */
+  OSErr status;
+  GstOsxRingBuffer *osxbuf = GST_OSX_RING_BUFFER (buf);
+
+  status = AudioDeviceStop (osxbuf->device_id, osxbuf->element->io_proc);
+  if (status)
+    GST_DEBUG ("AudioDeviceStop returned %d\n", (int) status);
+  return TRUE;
+}
+
+static gboolean
+gst_osx_ring_buffer_stop (GstRingBuffer * buf)
+{
+  /* stub */
+  OSErr status;
+  GstOsxRingBuffer *osxbuf;
+
+  osxbuf = GST_OSX_RING_BUFFER (buf);
+
+  /* stop callback */
+  status = AudioDeviceStop (osxbuf->device_id, osxbuf->element->io_proc);
+  if (status)
+    GST_DEBUG ("AudioDeviceStop returned %d\n", (int) status);
+
+  status =
+      AudioDeviceRemoveIOProc (osxbuf->device_id, osxbuf->element->io_proc);
+  if (status)
+    GST_DEBUG ("AudioDeviceRemoveIOProc " "returned %d\n", (int) status);
+
+  return TRUE;
+}
+
+static guint
+gst_osx_ring_buffer_delay (GstRingBuffer * buf)
+{
+  /* stub */
+  return 0;
+}
--- gst-plugins-good-0.10.3/sys/osxaudio/gstosxringbuffer.h	1969-12-31 19:00:00.000000000 -0500
+++ gst-plugins-good-0.10.3-new/sys/osxaudio/gstosxringbuffer.h	2006-04-28 07:57:39.000000000 -0400
@@ -0,0 +1,81 @@
+/*
+ * GStreamer
+ * Copyright 2006 Zaheer Abbas Merali  <zaheerabbas at merali dot org>
+ * 
+ * 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.
+ *
+ * Alternatively, the contents of this file may be used under the
+ * GNU Lesser General Public License Version 2.1 (the "LGPL"), in
+ * which case the following provisions apply instead of the ones
+ * mentioned above:
+ *
+ * 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_OSX_RING_BUFFER_H__
+#define __GST_OSX_RING_BUFFER_H__
+
+#include <gst/gst.h>
+#include <gst/audio/gstringbuffer.h>
+#include <CoreAudio/CoreAudio.h>
+
+#include "gstosxaudioelement.h"
+
+G_BEGIN_DECLS
+
+#define GST_TYPE_OSX_RING_BUFFER            (gst_osx_ring_buffer_get_type())
+#define GST_OSX_RING_BUFFER(obj)            (G_TYPE_CHECK_INSTANCE_CAST((obj),GST_TYPE_OSX_RING_BUFFER,GstOsxRingBuffer))
+#define GST_OSX_RING_BUFFER_CLASS(klass)    (G_TYPE_CHECK_CLASS_CAST((klass),GST_TYPE_OSX_RING_BUFFER,GstOsxRingBufferClass))
+#define GST_OSX_RING_BUFFER_GET_CLASS(obj)  (G_TYPE_INSTANCE_GET_CLASS((obj),GST_TYPE_OSX_RING_BUFFER,GstOsxRingBufferClass))
+#define GST_IS_OSX_RING_BUFFER(obj)         (G_TYPE_CHECK_INSTANCE_TYPE((obj),GST_TYPE_OSX_RING_BUFFER))
+#define GST_IS_OSX_RING_BUFFER_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE((klass),GST_TYPE_OSX_RING_BUFFER))
+
+typedef struct _GstOsxRingBuffer GstOsxRingBuffer;
+typedef struct _GstOsxRingBufferClass GstOsxRingBufferClass;
+
+
+struct _GstOsxRingBuffer {
+	GstRingBuffer         object;
+	
+	AudioDeviceID  device_id;
+	guint buffer_len;
+	GstOsxAudioElementInterface* element;
+};
+
+struct _GstOsxRingBufferClass {
+	GstRingBufferClass    parent_class;
+};
+
+GType gst_osx_ring_buffer_get_type (void);
+G_END_DECLS
+
+#endif
\ No newline at end of file
