From e2117c6c678ae18f7cb5f6dd24b1b8d9b0fa84bf Mon Sep 17 00:00:00 2001 From: Vincent Torri Date: Thu, 4 Jan 2007 09:44:57 +0000 Subject: Add directsoundsink to build and dist it, so it gets built when compiling with MingW on win32 and the required header... Original commit message from CVS: Patch by: Vincent Torri * configure.ac: * sys/Makefile.am: * sys/directsound/Makefile.am: * sys/directsound/gstdirectsoundsink.c: (gst_directsoundsink_reset): Add directsoundsink to build and dist it, so it gets built when compiling with MingW on win32 and the required headers and libraries are available (fixes: #392638). Also simplify DirectDraw check a bit. * tests/check/elements/.cvsignore: Fix CVS ignore for neonhttpsrc test binary. --- ChangeLog | 16 +++++++++++ configure.ac | 54 ++++++++++++++++++++++++++++-------- sys/Makefile.am | 10 +++++-- sys/directsound/Makefile.am | 9 ++++++ sys/directsound/gstdirectsoundsink.c | 2 +- tests/check/elements/.gitignore | 3 +- 6 files changed, 78 insertions(+), 16 deletions(-) create mode 100644 sys/directsound/Makefile.am diff --git a/ChangeLog b/ChangeLog index ea62d499..8b80ab6d 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,19 @@ +2007-01-04 Tim-Philipp Müller + + Patch by: Vincent Torri + + * configure.ac: + * sys/Makefile.am: + * sys/directsound/Makefile.am: + * sys/directsound/gstdirectsoundsink.c: + (gst_directsoundsink_reset): + Add directsoundsink to build and dist it, so it gets built when + compiling with MingW on win32 and the required headers and libraries + are available (fixes: #392638). Also simplify DirectDraw check a bit. + + * tests/check/elements/.cvsignore: + Fix CVS ignore for neonhttpsrc test binary. + 2007-01-03 Tim-Philipp Müller Patch by: Vincent Torri diff --git a/configure.ac b/configure.ac index 0a6131dc..117705e8 100644 --- a/configure.ac +++ b/configure.ac @@ -284,12 +284,10 @@ dnl DirectDraw translit(dnm, m, l) AM_CONDITIONAL(USE_DIRECTDRAW, true) GST_CHECK_FEATURE(DIRECTDRAW, [DirectDraw plug-in], directdrawsink, [ HAVE_DIRECTDRAW="no" - AC_CHECK_HEADERS(windows.h ddraw.h, have_ddraw_headers="yes", have_ddraw_headers="no") - if test "x$have_ddraw_headers" = "xyes" ; then - save_LIBS="$LIBS" - LIBS="$LIBS -lddraw -lgdi32" - AC_MSG_CHECKING(for DirectDraw LDFLAGS) - AC_LINK_IFELSE([ + save_LIBS="$LIBS" + LIBS="$LIBS -lddraw -lgdi32" + AC_MSG_CHECKING(for DirectDraw LDFLAGS) + AC_LINK_IFELSE([ #include #include @@ -301,11 +299,10 @@ int main () return 0; } ], - HAVE_DIRECTDRAW="yes", - HAVE_DIRECTDRAW="no") - AC_MSG_RESULT($HAVE_DIRECTDRAW) - LIBS=$save_LIBS - fi + [HAVE_DIRECTDRAW="yes"], + [HAVE_DIRECTDRAW="no"]) + AC_MSG_RESULT($HAVE_DIRECTDRAW) + LIBS=$save_LIBS if test "x$HAVE_DIRECTDRAW" = "xyes"; then dnl this is much more than we want @@ -316,6 +313,40 @@ int main () AC_SUBST(HAVE_DIRECTDRAW) ]) +dnl DirectSound +translit(dnm, m, l) AM_CONDITIONAL(USE_DIRECTSOUND, true) +GST_CHECK_FEATURE(DIRECTSOUND, [DirectSound plug-in], directsoundsink, [ + HAVE_DIRECTSOUND="no" + save_LIBS="$LIBS" + LIBS="$LIBS -ldsound -ldxerr9" + AC_MSG_CHECKING(for DirectSound LDFLAGS) + AC_LINK_IFELSE([ +#include +#include +#include + +int main () +{ + DXGetErrorString9 (0); + DirectSoundCreate(NULL, NULL, NULL); + + return 0; +} +], + [HAVE_DIRECTSOUND="yes"], + [HAVE_DIRECTSOUND="no"]) + AC_MSG_RESULT($HAVE_DIRECTSOUND) + LIBS=$save_LIBS + + if test "x$HAVE_DIRECTSOUND" = "xyes"; then + dnl this is much more than we want + DIRECTSOUND_LIBS="-ldsound -ldxerr9" + AC_SUBST(DIRECTSOUND_CFLAGS) + AC_SUBST(DIRECTSOUND_LIBS) + fi + AC_SUBST(HAVE_DIRECTSOUND) +]) + dnl *** ext plug-ins *** dnl keep this list sorted alphabetically ! @@ -888,6 +919,7 @@ sys/Makefile sys/glsink/Makefile sys/dvb/Makefile sys/directdraw/Makefile +sys/directsound/Makefile examples/Makefile examples/directfb/Makefile ext/amrwb/amrwb-code/Makefile diff --git a/sys/Makefile.am b/sys/Makefile.am index 66c97a31..86d4f7a6 100644 --- a/sys/Makefile.am +++ b/sys/Makefile.am @@ -40,6 +40,12 @@ else DIRECTDRAW_DIR= endif -SUBDIRS = $(GL_DIR) $(DVB_DIR) $(DIRECTDRAW_DIR) +if USE_DIRECTSOUND +DIRECTSOUND_DIR=directsound +else +DIRECTSOUND_DIR= +endif + +SUBDIRS = $(GL_DIR) $(DVB_DIR) $(DIRECTDRAW_DIR) $(DIRECTSOUND_DIR) -DIST_SUBDIRS = glsink dvb directdraw +DIST_SUBDIRS = glsink dvb directdraw directsound diff --git a/sys/directsound/Makefile.am b/sys/directsound/Makefile.am new file mode 100644 index 00000000..b8b26469 --- /dev/null +++ b/sys/directsound/Makefile.am @@ -0,0 +1,9 @@ +plugin_LTLIBRARIES = libgstdirectsoundsink.la + +libgstdirectsoundsink_la_SOURCES = gstdirectsoundsink.c gstdirectsoundplugin.c +libgstdirectsoundsink_la_CFLAGS = $(GST_CFLAGS) $(GST_BASE_CFLAGS) \ + $(GST_PLUGINS_BASE_CFLAGS) +libgstdirectsoundsink_la_LIBADD = $(DIRECTSOUND_LIBS) \ + $(GST_BASE_LIBS) $(GST_PLUGINS_BASE_LIBS) \ + -lgstaudio-$(GST_MAJORMINOR) -lgstinterfaces-$(GST_MAJORMINOR) +libgstdirectsoundsink_la_LDFLAGS = $(GST_PLUGIN_LDFLAGS) diff --git a/sys/directsound/gstdirectsoundsink.c b/sys/directsound/gstdirectsoundsink.c index 8676238a..a159a9ee 100644 --- a/sys/directsound/gstdirectsoundsink.c +++ b/sys/directsound/gstdirectsoundsink.c @@ -485,7 +485,7 @@ gst_directsoundsink_reset (GstAudioSink * asink) { /*not tested for seeking */ GstDirectSoundSink *dsoundsink; - LPBYTE pLockedBuffer = NULL; + LPVOID pLockedBuffer = NULL; DWORD dwSizeBuffer = 0; dsoundsink = GST_DIRECTSOUND_SINK (asink); diff --git a/tests/check/elements/.gitignore b/tests/check/elements/.gitignore index 3216d000..a9c39de6 100644 --- a/tests/check/elements/.gitignore +++ b/tests/check/elements/.gitignore @@ -1,6 +1,5 @@ .dirstamp tagid3v2mux - gdpdepay gdppay mpeg2enc @@ -10,4 +9,4 @@ wavpackparse videocrop rganalysis y4menc -neonhttpsrc.c +neonhttpsrc -- cgit v1.2.1