Add DirectDraw & DirectSound plugins to the build and docs.
authorJan Schmidt <thaytan@mad.scientist.com>
Fri, 8 Jun 2007 17:37:02 +0000 (17:37 +0000)
committerJan Schmidt <thaytan@mad.scientist.com>
Fri, 8 Jun 2007 17:37:02 +0000 (17:37 +0000)
Original commit message from CVS:
* configure.ac:
* docs/plugins/Makefile.am:
* docs/plugins/gst-plugins-good-plugins-docs.sgml:
* docs/plugins/gst-plugins-good-plugins-sections.txt:
* docs/plugins/gst-plugins-good-plugins.args:
* sys/Makefile.am:
* win32/MANIFEST:
Add DirectDraw & DirectSound plugins to the build and docs.

ChangeLog
configure.ac
docs/plugins/Makefile.am
docs/plugins/gst-plugins-good-plugins-docs.sgml
docs/plugins/gst-plugins-good-plugins-sections.txt
docs/plugins/gst-plugins-good-plugins.args
sys/Makefile.am
win32/MANIFEST

index ecbabd2..cd46c58 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,14 @@
+2007-06-08  Jan Schmidt  <thaytan@mad.scientist.com>
+
+       * configure.ac:
+       * docs/plugins/Makefile.am:
+       * docs/plugins/gst-plugins-good-plugins-docs.sgml:
+       * docs/plugins/gst-plugins-good-plugins-sections.txt:
+       * docs/plugins/gst-plugins-good-plugins.args:
+       * sys/Makefile.am:
+       * win32/MANIFEST:
+       Add DirectDraw & DirectSound plugins to the build and docs.
+
 2007-06-08  Tim-Philipp Müller  <tim at centricular dot net>
 
        * ext/dv/gstdvdemux.c: (gst_dvdemux_loop):
index 74d913f..1a22cba 100644 (file)
@@ -347,6 +347,87 @@ echo
 AC_MSG_NOTICE([Checking libraries for plugins in sys/])
 echo
 
+dnl DirectDraw
+translit(dnm, m, l) AM_CONDITIONAL(USE_DIRECTDRAW, true)
+AG_GST_CHECK_FEATURE(DIRECTDRAW, [DirectDraw plug-in], directdrawsink, [
+  HAVE_DIRECTDRAW="no"
+  save_CFLAGS="$CFLAGS"
+  save_LDFLAGS="$LDFLAGS"
+  save_LIBS="$LIBS"
+  CFLAGS="$CFLAGS $DIRECTDRAW_CFLAGS"
+  LDFLAGS="$LDFLAGS $DIRECTDRAW_LDFLAGS"
+  LIBS="$LIBS -lddraw -lgdi32"
+  AC_MSG_CHECKING(for DirectDraw LDFLAGS)
+  AC_LINK_IFELSE([
+#include <windows.h>
+#include <ddraw.h>
+
+int main ()
+{
+  GetStockObject(0);
+  DirectDrawCreate(NULL, NULL, NULL);
+
+  return 0;
+}
+],
+    [HAVE_DIRECTDRAW="yes"],
+    [HAVE_DIRECTDRAW="no"])
+  AC_MSG_RESULT($HAVE_DIRECTDRAW)
+  CFLAGS=$save_CFLAGS
+  LDFLAGS=$save_LDFLAGS
+  LIBS=$save_LIBS
+
+  if test "x$HAVE_DIRECTDRAW" = "xyes";  then
+    dnl this is much more than we want
+    DIRECTDRAW_LIBS="-lddraw -ldxguid -lgdi32"
+    AC_SUBST(DIRECTDRAW_CFLAGS)
+    AC_SUBST(DIRECTDRAW_LDFLAGS)
+    AC_SUBST(DIRECTDRAW_LIBS)
+  fi
+  AC_SUBST(HAVE_DIRECTDRAW)
+])
+
+dnl DirectSound
+translit(dnm, m, l) AM_CONDITIONAL(USE_DIRECTSOUND, true)
+AG_GST_CHECK_FEATURE(DIRECTSOUND, [DirectSound plug-in], directsoundsink, [
+  HAVE_DIRECTSOUND="no"
+  save_CFLAGS="$CFLAGS"
+  save_LDFLAGS="$LDFLAGS"
+  save_LIBS="$LIBS"
+  CFLAGS="$CFLAGS $DIRECTSOUND_CFLAGS"
+  LDFLAGS="$LDFLAGS $DIRECTSOUND_LDFLAGS"
+  LIBS="$LIBS -ldsound -ldxerr9"
+  AC_MSG_CHECKING(for DirectSound LDFLAGS)
+  AC_LINK_IFELSE([
+#include <windows.h>
+#include <dxerr9.h>
+#include <dsound.h>
+
+int main ()
+{
+  DXGetErrorString9 (0);
+  DirectSoundCreate(NULL, NULL, NULL);
+
+  return 0;
+}
+],
+    [HAVE_DIRECTSOUND="yes"],
+    [HAVE_DIRECTSOUND="no"])
+  AC_MSG_RESULT($HAVE_DIRECTSOUND)
+  CFLAGS=$save_CFLAGS
+  LDFLAGS=$save_LDFLAGS
+  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_LDFLAGS)
+    AC_SUBST(DIRECTSOUND_LIBS)
+  fi
+  AC_SUBST(HAVE_DIRECTSOUND)
+])
+
 dnl *** OSS audio *** (Linux, *BSD)
 translit(dnm, m, l) AM_CONDITIONAL(USE_OSS, true)
 AG_GST_CHECK_FEATURE(OSS, [OSS audio], ossaudio, [
@@ -784,6 +865,8 @@ else
 dnl not building plugins with external dependencies,
 dnl but we still need to set the conditionals
 AM_CONDITIONAL(USE_GCONFTOOL, false)
+AM_CONDITIONAL(USE_DIRECTDRAW, false)
+AM_CONDITIONAL(USE_DIRECTSOUND, false)
 AM_CONDITIONAL(USE_OSS, false)
 AM_CONDITIONAL(USE_SUNAUDIO, false)
 AM_CONDITIONAL(USE_OSX_AUDIO, false)
@@ -908,6 +991,8 @@ ext/shout2/Makefile
 ext/speex/Makefile
 ext/taglib/Makefile
 sys/Makefile
+sys/directdraw/Makefile
+sys/directsound/Makefile
 sys/oss/Makefile
 sys/sunaudio/Makefile
 sys/osxaudio/Makefile
index a21137d..0e8eae0 100644 (file)
@@ -119,6 +119,8 @@ EXTRA_HFILES = \
        $(top_srcdir)/gst/videofilter/gstvideoflip.h \
        $(top_srcdir)/gst/videofilter/gstvideobalance.h \
        $(top_srcdir)/gst/videomixer/videomixer.c \
+       $(top_srcdir)/sys/directdraw/gstdirectdrawsink.h \
+       $(top_srcdir)/sys/directsound/gstdirectsoundsink.h \
        $(top_srcdir)/sys/oss/gstossmixerelement.h \
        $(top_srcdir)/sys/oss/gstosssrc.h \
        $(top_srcdir)/sys/oss/gstosssink.h \
index 7237112..45f07ef 100644 (file)
@@ -27,6 +27,8 @@
     <xi:include href="xml/element-cdiocddasrc.xml" />
     <xi:include href="xml/element-cmmldec.xml" />
     <xi:include href="xml/element-cmmlenc.xml" />
+    <xi:include href="xml/element-directdrawsink.xml" />
+    <xi:include href="xml/element-directsoundsink.xml" />
     <xi:include href="xml/element-dvdec.xml" />
     <xi:include href="xml/element-dvdemux.xml" />
     <xi:include href="xml/element-esdsink.xml" />
@@ -80,6 +82,8 @@
     <xi:include href="xml/plugin-cdio.xml" />
     <xi:include href="xml/plugin-cutter.xml" />
     <xi:include href="xml/plugin-debug.xml" />
+    <xi:include href="xml/plugin-directdraw.xml" />
+    <xi:include href="xml/plugin-directsound.xml" />
     <xi:include href="xml/plugin-dv.xml" />
     <xi:include href="xml/plugin-efence.xml" />
     <xi:include href="xml/plugin-effectv.xml" />
index 8b6bae4..76dd99c 100644 (file)
@@ -197,6 +197,22 @@ gst_cdio_cdda_src_get_type
 </SECTION>
 
 <SECTION>
+<FILE>element-directdrawsink</FILE>
+GstDirectDrawSink
+<TITLE>directdrawsink</TITLE>
+<SUBSECTION Standard>
+GstDirectDrawSinkClass
+</SECTION>
+
+<SECTION>
+<FILE>element-directsoundsink</FILE>
+GstDirectSoundSink
+<TITLE>directsoundsink</TITLE>
+<SUBSECTION Standard>
+GstDirectSoundSinkClass
+</SECTION>
+
+<SECTION>
 <FILE>element-dvdec</FILE>
 GstDVDec
 <TITLE>dvdec</TITLE>
index 0486e22..7539e55 100644 (file)
 <DEFAULT>0</DEFAULT>
 </ARG>
 
+<ARG>
+<NAME>GstDirectDrawSink::force-aspect-ratio</NAME>
+<TYPE>gboolean</TYPE>
+<RANGE></RANGE>
+<FLAGS>rw</FLAGS>
+<NICK>Force aspect ratio</NICK>
+<BLURB>When enabled, scaling will respect original aspect ratio.</BLURB>
+<DEFAULT>FALSE</DEFAULT>
+</ARG>
+
index af7d9c9..0076cd5 100644 (file)
@@ -10,6 +10,18 @@ else
 OSS_DIR=
 endif
 
+if USE_DIRECTDRAW
+DIRECTDRAW_DIR=directdraw
+else
+DIRECTDRAW_DIR=
+endif
+
+if USE_DIRECTSOUND
+DIRECTSOUND_DIR=directsound
+else
+DIRECTSOUND_DIR=
+endif
+
 if USE_SUNAUDIO
 SUNAUDIO_DIR=sunaudio
 else
@@ -64,6 +76,6 @@ else
 XIMAGE_DIR=
 endif
 
-SUBDIRS=$(OSS_DIR) $(OSX_AUDIO_DIR) $(SUNAUDIO_DIR) $(V4L2_DIR) $(XIMAGE_DIR)
+SUBDIRS=$(DIRECTDRAW_DIR) $(DIRECTSOUND_DIR) $(OSS_DIR) $(OSX_AUDIO_DIR) $(SUNAUDIO_DIR) $(V4L2_DIR) $(XIMAGE_DIR)
 
-DIST_SUBDIRS=oss osxaudio sunaudio v4l2 ximage
+DIST_SUBDIRS=directdraw directsound oss osxaudio sunaudio v4l2 ximage
index 49855d2..70f7c3d 100644 (file)
@@ -12,6 +12,8 @@ win32/vs6/libgstauparse.dsp
 win32/vs6/libgstautodetect.dsp
 win32/vs6/libgstavi.dsp
 win32/vs6/libgstcutter.dsp
+win32/vs6/libgstdirectdraw.dsp
+win32/vs6/libgstdirectsound.dsp
 win32/vs6/libgsteffectv.dsp
 win32/vs6/libgstflx.dsp
 win32/vs6/libgstgoom.dsp
@@ -36,6 +38,8 @@ win32/vs6/libgstvideoflip.dsp
 win32/vs6/libgstvideomixer.dsp
 win32/vs6/libgstwavenc.dsp
 win32/vs6/libgstwavparse.dsp
+win32/vs7/libgstdirectdraw.vcproj
+win32/vs7/libgstdirectsound.vcproj
 win32/vs8/gst-plugins-good.sln
 win32/vs8/libgst1394.vcproj
 win32/vs8/libgstaasink.vcproj
@@ -51,6 +55,8 @@ win32/vs8/libgstavi.vcproj
 win32/vs8/libgstcacasink.vcproj
 win32/vs8/libgstcdio.vcproj
 win32/vs8/libgstcutter.vcproj
+win32/vs8/libgstdirectdraw.vcproj
+win32/vs8/libgstdirectsound.vcproj
 win32/vs8/libgstdv.vcproj
 win32/vs8/libgsteffectv.vcproj
 win32/vs8/libgstflac.vcproj