start refactoring of dshowsrcwrapper
authorJulien Isorce <julien.isorce@gmail.com>
Tue, 21 Jul 2009 08:49:37 +0000 (10:49 +0200)
committerJulien Isorce <julien.isorce@gmail.com>
Tue, 21 Jul 2009 08:49:37 +0000 (10:49 +0200)
-remove gst-libs/gst/dshow
-fakesource is moved from gst-libs/gst/dshow to sys/dshowsrcwrapper
-some minor changes (C/C++ check and includes) to make the plugin
compile again.

24 files changed:
configure.ac
gst-libs/gst/Makefile.am
gst-libs/gst/dshow/Makefile.am [deleted file]
gst-libs/gst/dshow/gstdshowfakesrc.cpp [deleted file]
gst-libs/gst/dshow/gstdshowfakesrc.h [deleted file]
gst-libs/gst/dshow/gstdshowinterface.cpp [deleted file]
sys/dshowsrcwrapper/Makefile.am [changed mode: 0644->0755]
sys/dshowsrcwrapper/gstdshow.cpp [moved from gst-libs/gst/dshow/gstdshow.cpp with 95% similarity, mode: 0755]
sys/dshowsrcwrapper/gstdshow.h [moved from gst-libs/gst/dshow/gstdshow.h with 88% similarity, mode: 0755]
sys/dshowsrcwrapper/gstdshowaudiosrc.c [changed mode: 0644->0755]
sys/dshowsrcwrapper/gstdshowaudiosrc.h [changed mode: 0644->0755]
sys/dshowsrcwrapper/gstdshowfakesink.cpp [moved from gst-libs/gst/dshow/gstdshowfakesink.cpp with 98% similarity, mode: 0755]
sys/dshowsrcwrapper/gstdshowfakesink.h [moved from gst-libs/gst/dshow/gstdshowfakesink.h with 100% similarity, mode: 0755]
sys/dshowsrcwrapper/gstdshowinterface.h [moved from gst-libs/gst/dshow/gstdshowinterface.h with 92% similarity, mode: 0755]
sys/dshowsrcwrapper/gstdshowsrcwrapper.cpp [moved from sys/dshowsrcwrapper/gstdshowsrcwrapper.c with 90% similarity, mode: 0755]
sys/dshowsrcwrapper/gstdshowsrcwrapper.h [deleted file]
sys/dshowsrcwrapper/gstdshowvideosrc.c [changed mode: 0644->0755]
sys/dshowsrcwrapper/gstdshowvideosrc.h [changed mode: 0644->0755]
sys/dshowsrcwrapper/libgstdshow.def [new file with mode: 0755]
win32/common/libgstdshow.def [deleted file]
win32/vs6/gst_plugins_bad.dsw [changed mode: 0644->0755]
win32/vs6/libdshowsrcwrapper.dsp [deleted file]
win32/vs8/gst-plugins-bad.sln [changed mode: 0644->0755]
win32/vs8/libdshowsrcwrapper.vcproj [new file with mode: 0755]

index 5834cbd..1f180be 100644 (file)
@@ -1673,7 +1673,6 @@ gst/vmnc/Makefile
 gst/xdgmime/Makefile
 gst-libs/Makefile
 gst-libs/gst/Makefile
-gst-libs/gst/dshow/Makefile
 gst-libs/gst/interfaces/Makefile
 gst-libs/gst/signalprocessor/Makefile
 gst-libs/gst/video/Makefile
index b123a4c..e48cdd8 100644 (file)
@@ -2,4 +2,4 @@
 SUBDIRS = interfaces signalprocessor video
 
 noinst_HEADERS = gst-i18n-plugin.h gettext.h
-DIST_SUBDIRS = dshow interfaces signalprocessor video
+DIST_SUBDIRS = interfaces signalprocessor video
diff --git a/gst-libs/gst/dshow/Makefile.am b/gst-libs/gst/dshow/Makefile.am
deleted file mode 100644 (file)
index 04d84c3..0000000
+++ /dev/null
@@ -1,11 +0,0 @@
-lib_LTLIBRARIES = libgstdshow-@GST_MAJORMINOR@.la
-
-libgstdshow_@GST_MAJORMINOR@_la_SOURCES = gstdshow.cpp gstdshowfakesink.cpp gstdshowfakesrc.cpp gstdshowinterface.cpp
-libgstdshow_@GST_MAJORMINOR@_la_CXXFLAGS = $(GST_CFLAGS) $(GST_BASE_CFLAGS) \
-       $(GST_PLUGINS_BASE_CFLAGS) -DLIBDSHOW_EXPORTS
-libgstdshow_@GST_MAJORMINOR@_la_LIBADD = $(GST_BASE_LIBS)
-libgstdshow_@GST_MAJORMINOR@_la_LDFLAGS = $(GST_ALL_LDFLAGS)
-libgstdshow_@GST_MAJORMINOR@_la_LIBTOOLFLAGS = --tag=disable-static
-
-libgstdshow_@GST_MAJORMINOR@includedir = $(includedir)/gstreamer-@GST_MAJORMINOR@/gst/dshow
-libgstdshow_@GST_MAJORMINOR@include_HEADERS = gstdshow.h gstdshowfakesink.h gstdshowfakesrc.h gstdshowinterface.h
diff --git a/gst-libs/gst/dshow/gstdshowfakesrc.cpp b/gst-libs/gst/dshow/gstdshowfakesrc.cpp
deleted file mode 100644 (file)
index 2c6bcc8..0000000
+++ /dev/null
@@ -1,205 +0,0 @@
-/* GStreamer
- * Copyright (C) 2007 Sebastien Moutte <sebastien@moutte.net>
- *
- * gstdshowfakesrc.cpp:
- *
- * 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 "gstdshowfakesrc.h"
-
-static CCritSec g_pCriticSec;
-
-/* output pin*/
-CDshowFakeOutputPin::CDshowFakeOutputPin (CBaseFilter *pFilter, CCritSec *sec):
-  CBaseOutputPin("FakeOutputPin", pFilter, sec, &m_hres, L"output")
-{
-}
-
-CDshowFakeOutputPin::~CDshowFakeOutputPin()
-{
-
-}
-
-HRESULT CDshowFakeOutputPin::GetMediaType(int iPosition, CMediaType *pMediaType)
-{
-  if(iPosition == 0) {
-    *pMediaType = m_MediaType;
-    return S_OK;
-  }
-  
-  return VFW_S_NO_MORE_ITEMS;
-}
-
-HRESULT CDshowFakeOutputPin::CheckMediaType(const CMediaType *pmt)
-{
-    if (m_MediaType == *pmt) {
-        return S_OK;
-    }
-
-    return S_FALSE;
-}
-
-HRESULT CDshowFakeOutputPin::DecideBufferSize (IMemAllocator *pAlloc, ALLOCATOR_PROPERTIES *ppropInputRequest)
-{
-  ALLOCATOR_PROPERTIES properties;
-  ppropInputRequest->cbBuffer = m_SampleSize;
-  ppropInputRequest->cBuffers = 1;
-  HRESULT hres = pAlloc->SetProperties(ppropInputRequest, &properties);
-  pAlloc->Commit();
-
-  return S_OK;
-}
-
-STDMETHODIMP CDshowFakeOutputPin::SetMediaType (AM_MEDIA_TYPE *pmt)
-{
-  m_MediaType.Set (*pmt);
-  m_SampleSize = m_MediaType.GetSampleSize();
-  return S_OK;
-}
-
-STDMETHODIMP CDshowFakeOutputPin::PushBuffer(byte *buffer, __int64 start, __int64 stop, unsigned int size, bool discount)
-{
-  IMediaSample *pSample = NULL;
-  
-  if (start != -1) {
-    start /= 100;
-    stop /= 100;
-  }
-
-  HRESULT hres = GetDeliveryBuffer(&pSample, NULL, NULL, 0);
-  if (hres == S_OK && pSample)
-  {
-    BYTE *sample_buffer;
-    pSample->GetPointer(&sample_buffer);
-    if(sample_buffer)
-    {
-      memcpy (sample_buffer, buffer, size);
-      pSample->SetActualDataLength(size);
-    }
-    if (discount)
-      pSample->SetDiscontinuity(TRUE);
-    else
-      pSample->SetDiscontinuity(FALSE);
-    
-    pSample->SetSyncPoint(TRUE);
-    pSample->SetPreroll(FALSE);
-  
-    if (start != -1)
-      pSample->SetTime(&start, &stop);
-
-    hres = Deliver(pSample);
-    pSample->Release();
-  }
-
-  return S_OK;
-}
-
-STDMETHODIMP CDshowFakeOutputPin::Flush ()
-{
-  DeliverBeginFlush();
-  DeliverEndFlush();
-  return S_OK;
-}
-
-STDMETHODIMP CDshowFakeOutputPin::SetSampleSize (unsigned int size)
-{
-  m_SampleSize = size;
-  return S_OK;
-}
-
-/* filter */
-CDshowFakeSrc::CDshowFakeSrc():CBaseFilter("DshowFakeSink", NULL, &g_pCriticSec, CLSID_DshowFakeSrc)
-{
-  m_pOutputPin = new CDshowFakeOutputPin((CSource *)this, m_pLock);
-}
-
-CDshowFakeSrc::~CDshowFakeSrc()
-{
-  if (m_pOutputPin)
-    delete m_pOutputPin;
-}
-
-//Object creation.
-CUnknown* WINAPI CDshowFakeSrc::CreateInstance(LPUNKNOWN pUnk, HRESULT *pHr) 
-{
-       CDshowFakeSrc *pNewObject = new CDshowFakeSrc();
-  if (pNewObject == NULL) {
-    *pHr = E_OUTOFMEMORY;
-  }
-  return pNewObject;
-} 
-
-int CDshowFakeSrc::GetPinCount()
-{
-  return 1;
-}
-
-CBasePin *CDshowFakeSrc::GetPin(int n)
-{
-  return (CBasePin *)m_pOutputPin;
-}
-
-
-STDMETHODIMP CDshowFakeSrc::QueryInterface(REFIID riid, void **ppvObject)
-{
-  if (riid == IID_IGstDshowInterface) {
-      *ppvObject = (IGstDshowInterface*) this;
-      AddRef();
-      return S_OK;
-  }
-  else
-    return CBaseFilter::QueryInterface (riid, ppvObject);
-}
-
-ULONG STDMETHODCALLTYPE CDshowFakeSrc::AddRef()
-{
-  return CBaseFilter::AddRef();
-}
-
-ULONG STDMETHODCALLTYPE CDshowFakeSrc::Release()
-{
-  return CBaseFilter::Release();
-}
-
-STDMETHODIMP CDshowFakeSrc::gst_set_media_type (AM_MEDIA_TYPE *pmt)
-{
-  m_pOutputPin->SetMediaType(pmt); 
-  return S_OK;
-}
-
-STDMETHODIMP CDshowFakeSrc::gst_set_buffer_callback (push_buffer_func push, byte *data)
-{
-  return E_NOTIMPL;
-}
-
-STDMETHODIMP CDshowFakeSrc::gst_push_buffer (byte *buffer, __int64 start, __int64 stop, unsigned int size, bool discount)
-{
-  m_pOutputPin->PushBuffer(buffer, start, stop, size, discount);
-  return S_OK;
-}
-
-STDMETHODIMP CDshowFakeSrc::gst_flush ()
-{
-  m_pOutputPin->Flush();
-  return S_OK;
-}
-
-STDMETHODIMP CDshowFakeSrc::gst_set_sample_size(unsigned int size)
-{
-  m_pOutputPin->SetSampleSize(size);
-  return S_OK;
-}
\ No newline at end of file
diff --git a/gst-libs/gst/dshow/gstdshowfakesrc.h b/gst-libs/gst/dshow/gstdshowfakesrc.h
deleted file mode 100644 (file)
index 0688431..0000000
+++ /dev/null
@@ -1,72 +0,0 @@
-/* GStreamer
- * Copyright (C) 2007 Sebastien Moutte <sebastien@moutte.net>
- *
- * gstdshowfakesrc.h:
- *
- * 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 "gstdshowinterface.h"
-#include <gst/gst.h>
-
-class CDshowFakeOutputPin : public CBaseOutputPin
-{
-protected:
-/* members */
-  HRESULT m_hres;
-  CMediaType m_MediaType;
-  unsigned int m_SampleSize;
-
-public:
-/* methods */
-  CDshowFakeOutputPin (CBaseFilter *pFilter, CCritSec *sec);
-  ~CDshowFakeOutputPin ();
-  
-  virtual HRESULT CheckMediaType(const CMediaType *pmt);
-  HRESULT GetMediaType(int iPosition, CMediaType *pMediaType);
-  virtual HRESULT DecideBufferSize (IMemAllocator *pAlloc, ALLOCATOR_PROPERTIES *ppropInputRequest);
-  STDMETHOD (SetMediaType) (AM_MEDIA_TYPE *pmt);
-  STDMETHOD (PushBuffer) (byte *buffer, __int64 start, __int64 stop, unsigned int size, bool discount);
-  STDMETHOD (Flush) ();
-  STDMETHOD (SetSampleSize) (unsigned int size);
-};
-
-class CDshowFakeSrc : public CBaseFilter,
-                      public IGstDshowInterface
-{
-public:
-/* members */
-  CDshowFakeOutputPin *m_pOutputPin;
-
-/* methods */
-  CDshowFakeSrc ();
-  virtual ~CDshowFakeSrc ();
-
-  static CUnknown * WINAPI CreateInstance (LPUNKNOWN pUnk, HRESULT *pHr);
-  
-  virtual int GetPinCount();
-  virtual CBasePin *GetPin(int n);
-  
-  STDMETHOD (QueryInterface)(REFIID riid, void **ppvObject);
-  ULONG STDMETHODCALLTYPE AddRef();
-  ULONG STDMETHODCALLTYPE Release();
-
-  STDMETHOD (gst_set_media_type) (AM_MEDIA_TYPE *pmt);
-  STDMETHOD (gst_set_buffer_callback) (push_buffer_func push, byte *data);
-  STDMETHOD (gst_push_buffer) (byte *buffer, __int64 start, __int64 stop, unsigned int size, bool discount);
-  STDMETHOD (gst_flush) ();
-  STDMETHOD (gst_set_sample_size) (unsigned int size);
-};
\ No newline at end of file
diff --git a/gst-libs/gst/dshow/gstdshowinterface.cpp b/gst-libs/gst/dshow/gstdshowinterface.cpp
deleted file mode 100644 (file)
index 3dba7c2..0000000
+++ /dev/null
@@ -1,35 +0,0 @@
-/* GStreamer
- * Copyright (C) 2007 Sebastien Moutte <sebastien@moutte.net>
- *
- * gstdshowinterface.cpp:
- *
- * 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 "gstdshowinterface.h"
-
-
-//{6A780808-9725-4d0b-8695-A4DD8D210773}
-const GUID CLSID_DshowFakeSink
-                    = { 0x6a780808, 0x9725, 0x4d0b, { 0x86, 0x95,  0xa4,  0xdd,  0x8d,  0x21,  0x7,  0x73 } };
-
-// {1E38DAED-8A6E-4DEA-A482-A878761D11CB}
-const GUID CLSID_DshowFakeSrc = 
-{ 0x1e38daed, 0x8a6e, 0x4dea, { 0xa4, 0x82, 0xa8, 0x78, 0x76, 0x1d, 0x11, 0xcb } };
-
-// {FC36764C-6CD4-4C73-900F-3F40BF3F191A}
-static const GUID IID_IGstDshowInterface = 
-{ 0xfc36764c, 0x6cd4, 0x4c73, { 0x90, 0xf, 0x3f, 0x40, 0xbf, 0x3f, 0x19, 0x1a } };
old mode 100644 (file)
new mode 100755 (executable)
index 38895a1..3ec4d64
@@ -1,10 +1,14 @@
-plugin_LTLIBRARIES = libgstdshowsrcwrapper.la
+# This plugin isn't buildable with autotools at this point in time, so just
+# ensure everything's listed in EXTRA_DIST
 
-libgstdshowsrcwrapper_la_SOURCES = gstdshowaudiosrc.c gstdshowsrcwrapper.c gstdshowvideosrc.c
-
-libgstdshowsrcwrapper_la_CFLAGS = $(GST_CFLAGS)
-libgstdshowsrcwrapper_la_LIBADD = $(GST_LIBS)
-libgstdshowsrcwrapper_la_LDFLAGS = $(GST_PLUGIN_LDFLAGS)
-libgstdshowsrcwrapper_la_LIBTOOLFLAGS = --tag=disable-static
-
-noinst_HEADERS = gstdshowaudiosrc.h gstdshowsrcwrapper.h gstdshowvideosrc.h
+EXTRA_DIST = \
+  gstdshowaudiosrc.c \
+  gstdshowaudiosrc.h \
+  gstdshow.cpp \
+  gstdshowfakesink.cpp \
+  gstdshowfakesink.h \
+  gstdshow.h \
+  gstdshowinterface.h \
+  gstdshowsrcwrapper.cpp \
+  gstdshowvideosrc.c \
+  gstdshowvideosrc.h
old mode 100644 (file)
new mode 100755 (executable)
similarity index 95%
rename from gst-libs/gst/dshow/gstdshow.cpp
rename to sys/dshowsrcwrapper/gstdshow.cpp
index 4d419d1..ed27d63
@@ -21,7 +21,6 @@
 
 #include "gstdshow.h"
 #include "gstdshowfakesink.h"
-#include "gstdshowfakesrc.h"
 
 CFactoryTemplate g_Templates[]=
 {
@@ -31,15 +30,7 @@ CFactoryTemplate g_Templates[]=
     , CDshowFakeSink::CreateInstance
     , NULL
     , NULL
-  },
-  { 
-    L"DSHOW fake src filter"
-    , &CLSID_DshowFakeSrc
-    , CDshowFakeSrc::CreateInstance
-    , NULL
-    , NULL
-  },
-
+  }
 };
 
 int g_cTemplates = sizeof(g_Templates)/sizeof(g_Templates[0]);
@@ -64,9 +55,9 @@ STDAPI DllUnregisterServer()
   return AMovieDllRegisterServer2 (FALSE);
 }
 
-BOOL gst_dshow_register_fakefilters ()
+HRESULT gst_dshow_register_fakefilters ()
 {
-  return (DllRegisterServer() == S_OK) ? TRUE : FALSE;
+  return DllRegisterServer();
 }
 
 void 
@@ -169,7 +160,7 @@ gboolean gst_dshow_find_filter(CLSID input_majortype, CLSID input_subtype,
   /* create a private copy of prefered filter substring in upper case */
   if (prefered_filter_name) {
     prefered_filter_upper = g_strdup (prefered_filter_name);
-    strupr (prefered_filter_upper);
+    _strupr (prefered_filter_upper);
   }
 
   hres = CoCreateInstance(CLSID_FilterMapper2, NULL, CLSCTX_INPROC, 
@@ -206,7 +197,7 @@ gboolean gst_dshow_find_filter(CLSID input_majortype, CLSID input_subtype,
          friendly_name = g_utf16_to_utf8((const gunichar2*)varFriendlyName.bstrVal, 
             wcslen(varFriendlyName.bstrVal), NULL, NULL, NULL);        
          if (friendly_name)
-           strupr (friendly_name);
+           _strupr (friendly_name);
         SysFreeString (varFriendlyName.bstrVal);
       }
       property_bag->Release ();
@@ -254,7 +245,7 @@ clean:
 
 
 gchar *
-gst_dshow_getdevice_from_devicename  (GUID *device_category, gchar **device_name)
+gst_dshow_getdevice_from_devicename  (const GUID *device_category, gchar **device_name)
 {
   gchar *ret = NULL;
   ICreateDevEnum *devices_enum = NULL;
old mode 100644 (file)
new mode 100755 (executable)
similarity index 88%
rename from gst-libs/gst/dshow/gstdshow.h
rename to sys/dshowsrcwrapper/gstdshow.h
index 3d1520d..ec360b3
 #ifndef _GSTDSHOW_
 #define _GSTDSHOW_
 
+#ifdef __cplusplus
+#include <streams.h>
+#endif
 #include <windows.h>
+#include <objbase.h>
+#include <dshow.h>
+#include <Rpc.h>
 
 #include <glib.h>
 
-#ifdef LIBDSHOW_EXPORTS
-#include <streams.h>
-#include <atlbase.h>
-#define DSHOW_API __declspec(dllexport)
-#else
-#define DSHOW_API __declspec(dllimport)
-#endif
-
 typedef struct _GstCapturePinMediaType
 {
   AM_MEDIA_TYPE *mediatype;
   IPin *capture_pin;
 } GstCapturePinMediaType;
 
-#ifdef  __cplusplus
-extern "C" {
+#ifdef  __cplusplus\r
+extern "C" {\r
 #endif
 
 /* register fake filters as COM object and as Direct Show filters in the registry */
-BOOL gst_dshow_register_fakefilters ();
+HRESULT gst_dshow_register_fakefilters ();
 
 /* free memory of the input pin mediatype */
 void gst_dshow_free_pin_mediatype (gpointer pt);
@@ -66,14 +64,13 @@ gboolean gst_dshow_find_filter(CLSID input_majortype, CLSID input_subtype,
 
 /* get the dshow device path from device friendly name. 
 If friendly name is not set, it will return the first available device */
-gchar *gst_dshow_getdevice_from_devicename (GUID *device_category, gchar **device_name);
+gchar *gst_dshow_getdevice_from_devicename (const GUID *device_category, gchar **device_name);
 
 /* show the capture filter property page (generally used to setup the device). the page is modal*/
 gboolean gst_dshow_show_propertypage (IBaseFilter *base_filter);
-
-
-#ifdef  __cplusplus
-}
+\r
+#ifdef  __cplusplus\r
+}\r
 #endif
 
 #endif /* _GSTDSHOW_ */
\ No newline at end of file
old mode 100644 (file)
new mode 100755 (executable)
index d6edf47..dcc4e38
  * Boston, MA 02111-1307, USA.
  */
 
-#include "gstdshowaudiosrc.h"
-
 #ifdef HAVE_CONFIG_H
 #include "config.h"
 #endif
 
+#include "gstdshowaudiosrc.h"
+
 static const GstElementDetails gst_dshowaudiosrc_details =
 GST_ELEMENT_DETAILS ("Directshow audio capture source",
     "Source/Audio",
@@ -451,7 +451,7 @@ gst_dshowaudiosrc_get_caps (GstBaseSrc * basesrc)
               &cbReturned);
 
           /* we only want capture pins */
-          if (UuidCompare (&pin_category, &PIN_CATEGORY_CAPTURE,
+          if (UuidCompare (&pin_category, (UUID *) &PIN_CATEGORY_CAPTURE,
                   &rpcstatus) == 0) {
             IAMStreamConfig *streamcaps = NULL;
 
@@ -825,10 +825,10 @@ gst_dshowaudiosrc_getcaps_from_streamcaps (GstDshowAudioSrc * src, IPin * pin,
       if (!caps)
         caps = gst_caps_new_empty ();
 
-      if ((UuidCompare (&pin_mediatype->mediatype->subtype, &MEDIASUBTYPE_PCM,
+      if ((UuidCompare (&pin_mediatype->mediatype->subtype, (UUID *) &MEDIASUBTYPE_PCM,
                   &rpcstatus) == 0 && rpcstatus == RPC_S_OK)
           && (UuidCompare (&pin_mediatype->mediatype->formattype,
-                  &FORMAT_WaveFormatEx, &rpcstatus) == 0
+                  (UUID *) &FORMAT_WaveFormatEx, &rpcstatus) == 0
               && rpcstatus == RPC_S_OK)) {
         WAVEFORMATEX *wavformat =
             (WAVEFORMATEX *) pin_mediatype->mediatype->pbFormat;
old mode 100644 (file)
new mode 100755 (executable)
index fb57101..b814701
@@ -27,7 +27,8 @@
 #include <gst/audio/gstaudiosrc.h>
 #include <gst/interfaces/propertyprobe.h>
 
-#include "gstdshowsrcwrapper.h"
+#include "gstdshow.h"
+#include "gstdshowinterface.h"
 
 G_BEGIN_DECLS
 #define GST_TYPE_DSHOWAUDIOSRC              (gst_dshowaudiosrc_get_type())
old mode 100644 (file)
new mode 100755 (executable)
similarity index 98%
rename from gst-libs/gst/dshow/gstdshowfakesink.cpp
rename to sys/dshowsrcwrapper/gstdshowfakesink.cpp
index e3a5f0b..afc0a5e
@@ -37,6 +37,7 @@ CDshowFakeSink::~CDshowFakeSink()
 CUnknown* WINAPI CDshowFakeSink::CreateInstance(LPUNKNOWN pUnk, HRESULT *pHr) 
 {
        CDshowFakeSink *pNewObject = new CDshowFakeSink();
+  g_print ("CDshowFakeSink::CreateInstance\n");
   if (pNewObject == NULL) {
     *pHr = E_OUTOFMEMORY;
   }
old mode 100644 (file)
new mode 100755 (executable)
similarity index 100%
rename from gst-libs/gst/dshow/gstdshowfakesink.h
rename to sys/dshowsrcwrapper/gstdshowfakesink.h
old mode 100644 (file)
new mode 100755 (executable)
similarity index 92%
rename from gst-libs/gst/dshow/gstdshowinterface.h
rename to sys/dshowsrcwrapper/gstdshowinterface.h
index 1a19a61..68328b9
@@ -24,9 +24,9 @@
 
 #include "gstdshow.h"
 
-#ifdef LIBDSHOW_EXPORTS
+#ifdef  __cplusplus
 typedef bool (*push_buffer_func) (byte *buffer, long size, byte *src_object, UINT64 start, UINT64 stop);
-#endif /* LIBDSHOW_EXPORTS */
+#endif
 
 /* verify that the <rpcndr.h> version is high enough to compile this file*/
 #ifndef __REQUIRED_RPCNDR_H_VERSION__
@@ -45,17 +45,15 @@ typedef bool (*push_buffer_func) (byte *buffer, long size, byte *src_object, UIN
 #include "ole2.h"
 #endif /*COM_NO_WINDOWS_H*/
 
-#ifdef __cplusplus
-extern "C"{
-#endif 
-
+//{6A780808-9725-4d0b-8695-A4DD8D210773}
+static const GUID CLSID_DshowFakeSink
+  = { 0x6a780808, 0x9725, 0x4d0b, { 0x86, 0x95,  0xa4,  0xdd,  0x8d,  0x21,  0x7,  0x73 } };
 
-extern DSHOW_API const GUID CLSID_DshowFakeSink; 
-extern DSHOW_API const GUID CLSID_DshowFakeSrc; 
-extern DSHOW_API const GUID IID_IGstDshowInterface;
+// {FC36764C-6CD4-4C73-900F-3F40BF3F191A}
+static const GUID IID_IGstDshowInterface = 
+  { 0xfc36764c, 0x6cd4, 0x4c73, { 0x90, 0xf, 0x3f, 0x40, 0xbf, 0x3f, 0x19, 0x1a } };
 
 #define CLSID_DSHOWFAKESINK_STRING "{6A780808-9725-4d0b-8695-A4DD8D210773}"
-#define CLSID_DSHOWFAKESRC_STRING "{1E38DAED-8A6E-4DEA-A482-A878761D11CB}"
 
 typedef interface IGstDshowInterface IGstDshowInterface;
 
@@ -162,8 +160,4 @@ void __RPC_USER MIDL_user_free( void __RPC_FAR * );
 
 #endif         /* __IGstDshowInterface_INTERFACE_DEFINED__ */
 
-#ifdef __cplusplus
-}
-#endif
-
 #endif /* __GST_DSHOW_INTERFACE_H__ */
\ No newline at end of file
old mode 100644 (file)
new mode 100755 (executable)
similarity index 90%
rename from sys/dshowsrcwrapper/gstdshowsrcwrapper.c
rename to sys/dshowsrcwrapper/gstdshowsrcwrapper.cpp
index 803fd80..1e9a8aa
@@ -35,12 +35,15 @@ const GUID IID_IGstSrcInterface =
     { 0x542c0a24, 0x8bd1, 0x46cb, {0xaa, 0x57, 0x3e, 0x46, 0xd0, 0x6, 0xd2,
         0xf3} };
 
-
 static gboolean
 plugin_init (GstPlugin * plugin)
 {
   /* register fake filters */
-  gst_dshow_register_fakefilters ();
+  HRESULT hr = gst_dshow_register_fakefilters ();
+  if (FAILED (hr)) {
+    g_warning ("failed to register directshow fakesink filter: 0x%x\n", hr);
+    return FALSE;
+  }
 
   if (!gst_element_register (plugin, "dshowaudiosrc",
           GST_RANK_NONE,
@@ -52,8 +55,12 @@ plugin_init (GstPlugin * plugin)
   return TRUE;
 }
 
+extern "C" {
+
 GST_PLUGIN_DEFINE (GST_VERSION_MAJOR,
     GST_VERSION_MINOR,
     "dshowsrcwrapper",
     "DirectShow sources wrapper plugin",
     plugin_init, VERSION, "LGPL", GST_PACKAGE_NAME, GST_PACKAGE_ORIGIN)
+
+}
diff --git a/sys/dshowsrcwrapper/gstdshowsrcwrapper.h b/sys/dshowsrcwrapper/gstdshowsrcwrapper.h
deleted file mode 100644 (file)
index d94d49f..0000000
+++ /dev/null
@@ -1,34 +0,0 @@
-/* GStreamer
- * Copyright (C)  2007 Sebastien Moutte <sebastien@moutte.net>
- *
- * gstdshowsrcwrapper.h: 
- *
- * 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_DSHOW_H__
-#define __GST_DSHOW_H__
-
-#include <windows.h>
-#include <objbase.h>
-#include <dshow.h>
-#include <Rpc.h>
-
-#include <gst/dshow/gstdshowinterface.h>
-
-#pragma warning( disable : 4090 4024)
-
-#endif /* __GST_DSHOW_H__ */
old mode 100644 (file)
new mode 100755 (executable)
index 4a37778..a54751b
  * Boston, MA 02111-1307, USA.
  */
 
-#include "gstdshowvideosrc.h"
-
 #ifdef HAVE_CONFIG_H
 #include "config.h"
 #endif
 
+#include "gstdshowvideosrc.h"
+
 static const GstElementDetails gst_dshowvideosrc_details =
 GST_ELEMENT_DETAILS ("DirectShow video capture source",
     "Source/Video",
@@ -520,7 +520,7 @@ gst_dshowvideosrc_get_caps (GstBaseSrc * basesrc)
               &cbReturned);
 
           /* we only want capture pins */
-          if (UuidCompare (&pin_category, &PIN_CATEGORY_CAPTURE,
+          if (UuidCompare (&pin_category, (UUID *) &PIN_CATEGORY_CAPTURE,
                   &rpcstatus) == 0) {
             IAMStreamConfig *streamcaps = NULL;
 
@@ -625,7 +625,7 @@ gst_dshowvideosrc_start (GstBaseSrc * bsrc)
       &IID_IBaseFilter, (LPVOID *) & src->dshow_fakesink);
   if (hres != S_OK || !src->dshow_fakesink) {
     GST_CAT_ERROR (dshowvideosrc_debug,
-        "Can't create an instance of our dshow fakesink filter (error=%d)",
+        "Can't create an instance of our dshow fakesink filter (error=0x%x)",
         hres);
     goto error;
   }
@@ -898,10 +898,10 @@ gst_dshowvideosrc_getcaps_from_streamcaps (GstDshowVideoSrc * src, IPin * pin,
         caps = gst_caps_new_empty ();
 
       /* I420 */
-      if ((UuidCompare (&pin_mediatype->mediatype->subtype, &MEDIASUBTYPE_I420,
+      if ((UuidCompare (&pin_mediatype->mediatype->subtype, (UUID *) &MEDIASUBTYPE_I420,
                   &rpcstatus) == 0 && rpcstatus == RPC_S_OK)
           && (UuidCompare (&pin_mediatype->mediatype->formattype,
-                  &FORMAT_VideoInfo, &rpcstatus) == 0
+                  (UUID *) &FORMAT_VideoInfo, &rpcstatus) == 0
               && rpcstatus == RPC_S_OK)) {
         video_info = (VIDEOINFOHEADER *) pin_mediatype->mediatype->pbFormat;
 
@@ -923,10 +923,10 @@ gst_dshowvideosrc_getcaps_from_streamcaps (GstDshowVideoSrc * src, IPin * pin,
       }
 
       /* RGB24 */
-      if ((UuidCompare (&pin_mediatype->mediatype->subtype, &MEDIASUBTYPE_RGB24,
+      if ((UuidCompare (&pin_mediatype->mediatype->subtype, (UUID *) &MEDIASUBTYPE_RGB24,
                   &rpcstatus) == 0 && rpcstatus == RPC_S_OK)
           && (UuidCompare (&pin_mediatype->mediatype->formattype,
-                  &FORMAT_VideoInfo, &rpcstatus) == 0
+                  (UUID *) &FORMAT_VideoInfo, &rpcstatus) == 0
               && rpcstatus == RPC_S_OK)) {
         video_info = (VIDEOINFOHEADER *) pin_mediatype->mediatype->pbFormat;
 
@@ -952,10 +952,10 @@ gst_dshowvideosrc_getcaps_from_streamcaps (GstDshowVideoSrc * src, IPin * pin,
       }
 
       /* DVSD */
-      if ((UuidCompare (&pin_mediatype->mediatype->subtype, &MEDIASUBTYPE_dvsd,
+      if ((UuidCompare (&pin_mediatype->mediatype->subtype, (UUID *) &MEDIASUBTYPE_dvsd,
                   &rpcstatus) == 0 && rpcstatus == RPC_S_OK)
           && (UuidCompare (&pin_mediatype->mediatype->formattype,
-                  &FORMAT_VideoInfo, &rpcstatus) == 0
+                  (UUID *) &FORMAT_VideoInfo, &rpcstatus) == 0
               && rpcstatus == RPC_S_OK)) {
         video_info = (VIDEOINFOHEADER *) pin_mediatype->mediatype->pbFormat;
 
@@ -978,10 +978,10 @@ gst_dshowvideosrc_getcaps_from_streamcaps (GstDshowVideoSrc * src, IPin * pin,
       }
 
       /* DV stream */
-      if ((UuidCompare (&pin_mediatype->mediatype->subtype, &MEDIASUBTYPE_dvsd,
+      if ((UuidCompare (&pin_mediatype->mediatype->subtype, (UUID *) &MEDIASUBTYPE_dvsd,
                   &rpcstatus) == 0 && rpcstatus == RPC_S_OK)
           && (UuidCompare (&pin_mediatype->mediatype->formattype,
-                  &FORMAT_DvInfo, &rpcstatus) == 0 && rpcstatus == RPC_S_OK)) {
+                  (UUID *) &FORMAT_DvInfo, &rpcstatus) == 0 && rpcstatus == RPC_S_OK)) {
 
         mediacaps = gst_caps_new_simple ("video/x-dv",
             "systemstream", G_TYPE_BOOLEAN, TRUE, NULL);
old mode 100644 (file)
new mode 100755 (executable)
index 8bc52fa..b7bfbb1
 #ifndef __GST_DSHOWVIDEOSRC_H__
 #define __GST_DSHOWVIDEOSRC_H__
 
+#include <glib.h>
 #include <gst/gst.h>
 #include <gst/base/gstpushsrc.h>
 #include <gst/interfaces/propertyprobe.h>
 
-#include "gstdshowsrcwrapper.h"
+#include "gstdshow.h"
+#include "gstdshowinterface.h"
 
 // 30323449-0000-0010-8000-00AA00389B71            MEDIASUBTYPE_I420
 DEFINE_GUID(MEDIASUBTYPE_I420, 0x30323449, 0x0000, 0x0010, 0x80, 0x00, 0x00, 0xAA, 0x00, 0x38, 0x9B, 0x71);
diff --git a/sys/dshowsrcwrapper/libgstdshow.def b/sys/dshowsrcwrapper/libgstdshow.def
new file mode 100755 (executable)
index 0000000..ee8586c
--- /dev/null
@@ -0,0 +1,8 @@
+EXPORTS 
+       DllMain                         PRIVATE
+    DllGetClassObject   PRIVATE
+    DllCanUnloadNow     PRIVATE
+    DllRegisterServer   PRIVATE
+    DllUnregisterServer PRIVATE
+    
+       
diff --git a/win32/common/libgstdshow.def b/win32/common/libgstdshow.def
deleted file mode 100644 (file)
index d5e6d57..0000000
+++ /dev/null
@@ -1,15 +0,0 @@
-EXPORTS 
-       DllMain                         PRIVATE
-    DllGetClassObject   PRIVATE
-    DllCanUnloadNow     PRIVATE
-    DllRegisterServer   PRIVATE
-    DllUnregisterServer PRIVATE
-       
-       gst_dshow_find_filter
-       gst_dshow_free_mediatype
-       gst_dshow_free_pin_mediatype
-       gst_dshow_free_pins_mediatypes
-       gst_dshow_get_pin_from_filter
-       gst_dshow_getdevice_from_devicename
-       gst_dshow_register_fakefilters
-       
old mode 100644 (file)
new mode 100755 (executable)
index ba3fd2f..388fd82
@@ -39,18 +39,6 @@ Package=<4>
 \r
 ###############################################################################\r
 \r
-Project: "libgstdshowsrcwrapper"=".\libdshowsrcwrapper.dsp" - Package Owner=<4>\r
-\r
-Package=<5>\r
-{{{\r
-}}}\r
-\r
-Package=<4>\r
-{{{\r
-}}}\r
-\r
-###############################################################################\r
-\r
 Project: "libgstflv"=".\libgstflv.dsp" - Package Owner=<4>\r
 \r
 Package=<5>\r
diff --git a/win32/vs6/libdshowsrcwrapper.dsp b/win32/vs6/libdshowsrcwrapper.dsp
deleted file mode 100644 (file)
index 6486f95..0000000
+++ /dev/null
@@ -1,137 +0,0 @@
-# Microsoft Developer Studio Project File - Name="libgstdshowsrcwrapper" - Package Owner=<4>\r
-# Microsoft Developer Studio Generated Build File, Format Version 6.00\r
-# ** DO NOT EDIT **\r
-\r
-# TARGTYPE "Win32 (x86) Dynamic-Link Library" 0x0102\r
-\r
-CFG=libgstdshowsrcwrapper - Win32 Debug\r
-!MESSAGE This is not a valid makefile. To build this project using NMAKE,\r
-!MESSAGE use the Export Makefile command and run\r
-!MESSAGE \r
-!MESSAGE NMAKE /f "libdshowsrcwrapper.mak".\r
-!MESSAGE \r
-!MESSAGE You can specify a configuration when running NMAKE\r
-!MESSAGE by defining the macro CFG on the command line. For example:\r
-!MESSAGE \r
-!MESSAGE NMAKE /f "libdshowsrcwrapper.mak" CFG="libgstdshowsrcwrapper - Win32 Debug"\r
-!MESSAGE \r
-!MESSAGE Possible choices for configuration are:\r
-!MESSAGE \r
-!MESSAGE "libgstdshowsrcwrapper - Win32 Release" (based on "Win32 (x86) Dynamic-Link Library")\r
-!MESSAGE "libgstdshowsrcwrapper - Win32 Debug" (based on "Win32 (x86) Dynamic-Link Library")\r
-!MESSAGE \r
-\r
-# Begin Project\r
-# PROP AllowPerConfigDependencies 0\r
-# PROP Scc_ProjName ""\r
-# PROP Scc_LocalPath ""\r
-CPP=cl.exe\r
-MTL=midl.exe\r
-RSC=rc.exe\r
-\r
-!IF  "$(CFG)" == "libgstdshowsrcwrapper - Win32 Release"\r
-\r
-# PROP BASE Use_MFC 0\r
-# PROP BASE Use_Debug_Libraries 0\r
-# PROP BASE Output_Dir "Release"\r
-# PROP BASE Intermediate_Dir "Release"\r
-# PROP BASE Target_Dir ""\r
-# PROP Use_MFC 0\r
-# PROP Use_Debug_Libraries 0\r
-# PROP Output_Dir "Release"\r
-# PROP Intermediate_Dir "Release"\r
-# PROP Ignore_Export_Lib 0\r
-# PROP Target_Dir ""\r
-# ADD BASE CPP /nologo /MT /W3 /GX /O2 /D "WIN32" /D "NDEBUG" /D "_WINDOWS" /D "_MBCS" /D "_USRDLL" /D "LIBGSTDSHOWSRCWRAPPER_EXPORTS" /YX /FD /c\r
-# ADD CPP /nologo /MD /W3 /GX /O2 /I "../../gst-libs" /I "../../../gst-plugins-base/gst-libs" /I "../../../gstreamer/libs" /I "../common" /D "NDEBUG" /D "WIN32" /D "_WINDOWS" /D "_MBCS" /D "_USRDLL" /D "DSHOWSRCWRAPPER_EXPORTS" /D "HAVE_CONFIG_H" /D "COBJMACROS" /D "_WIN32_DCOM" /YX /FD /c\r
-# ADD BASE MTL /nologo /D "NDEBUG" /mktyplib203 /win32\r
-# ADD MTL /nologo /D "NDEBUG" /mktyplib203 /win32\r
-# ADD BASE RSC /l 0x40c /d "NDEBUG"\r
-# ADD RSC /l 0x40c /d "NDEBUG"\r
-BSC32=bscmake.exe\r
-# ADD BASE BSC32 /nologo\r
-# ADD BSC32 /nologo\r
-LINK32=link.exe\r
-# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /dll /machine:I386\r
-# ADD LINK32 libgstdshow-0.10.lib libgstreamer-0.10.lib libgstbase-0.10.lib libgstaudio-0.10.lib libgstinterfaces-0.10.lib glib-2.0.lib gobject-2.0.lib ole32.lib oleaut32.lib Rpcrt4.lib Strmiids.lib user32.lib /nologo /dll /machine:I386 /out:"Release/libgstdshowsrcwrapper.dll" /libpath:"../../../dshowfakefilters/release" /libpath:"../gstreamer/win32/vs6/release" /libpath:"../gst-plugins-base/win32/vs6/release" /libpath:"./release"\r
-# Begin Special Build Tool\r
-TargetPath=.\Release\libgstdshowsrcwrapper.dll\r
-SOURCE="$(InputPath)"\r
-PostBuild_Cmds=copy /Y $(TargetPath) c:\gstreamer\lib\gstreamer-0.10\r
-# End Special Build Tool\r
-\r
-!ELSEIF  "$(CFG)" == "libgstdshowsrcwrapper - Win32 Debug"\r
-\r
-# PROP BASE Use_MFC 0\r
-# PROP BASE Use_Debug_Libraries 1\r
-# PROP BASE Output_Dir "Debug"\r
-# PROP BASE Intermediate_Dir "Debug"\r
-# PROP BASE Target_Dir ""\r
-# PROP Use_MFC 0\r
-# PROP Use_Debug_Libraries 1\r
-# PROP Output_Dir "Debug"\r
-# PROP Intermediate_Dir "Debug"\r
-# PROP Ignore_Export_Lib 0\r
-# PROP Target_Dir ""\r
-# ADD BASE CPP /nologo /MTd /W3 /Gm /GX /ZI /Od /D "WIN32" /D "_DEBUG" /D "_WINDOWS" /D "_MBCS" /D "_USRDLL" /D "LIBGSTDSHOWSRCWRAPPER_EXPORTS" /YX /FD /GZ /c\r
-# ADD CPP /nologo /MDd /W3 /Gm /GX /ZI /Od /I "../../gst-libs" /I "../../../gst-plugins-base/gst-libs" /I "../../../gstreamer/libs" /I "../common" /D "_DEBUG" /D "WIN32" /D "_WINDOWS" /D "_MBCS" /D "_USRDLL" /D "DSHOWSRCWRAPPER_EXPORTS" /D "HAVE_CONFIG_H" /D "COBJMACROS" /D "_WIN32_DCOM" /YX /FD /GZ /c\r
-# ADD BASE MTL /nologo /D "_DEBUG" /mktyplib203 /win32\r
-# ADD MTL /nologo /D "_DEBUG" /mktyplib203 /win32\r
-# ADD BASE RSC /l 0x40c /d "_DEBUG"\r
-# ADD RSC /l 0x40c /d "_DEBUG"\r
-BSC32=bscmake.exe\r
-# ADD BASE BSC32 /nologo\r
-# ADD BSC32 /nologo\r
-LINK32=link.exe\r
-# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /dll /debug /machine:I386 /pdbtype:sept\r
-# ADD LINK32 libgstdshow-0.10.lib libgstreamer-0.10.lib libgstbase-0.10.lib libgstaudio-0.10.lib libgstinterfaces-0.10.lib glib-2.0D.lib gobject-2.0D.lib ole32.lib oleaut32.lib Rpcrt4.lib user32.lib strmiids.lib /nologo /dll /debug /machine:I386 /out:"Debug/libgstdshowsrcwrapper.dll" /pdbtype:sept /libpath:"../gstreamer/win32/vs6/debug" /libpath:"../gst-plugins-base/win32/vs6/debug" /libpath:"./debug"\r
-# Begin Special Build Tool\r
-TargetPath=.\Debug\libgstdshowsrcwrapper.dll\r
-SOURCE="$(InputPath)"\r
-PostBuild_Cmds=copy /Y $(TargetPath) c:\gstreamer\debug\lib\gstreamer-0.10\r
-# End Special Build Tool\r
-\r
-!ENDIF \r
-\r
-# Begin Target\r
-\r
-# Name "libgstdshowsrcwrapper - Win32 Release"\r
-# Name "libgstdshowsrcwrapper - Win32 Debug"\r
-# Begin Group "Source Files"\r
-\r
-# PROP Default_Filter "cpp;c;cxx;rc;def;r;odl;idl;hpj;bat"\r
-# Begin Source File\r
-\r
-SOURCE=..\..\sys\dshowsrcwrapper\gstdshowaudiosrc.c\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=..\..\sys\dshowsrcwrapper\gstdshowsrcwrapper.c\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=..\..\sys\dshowsrcwrapper\gstdshowvideosrc.c\r
-# End Source File\r
-# End Group\r
-# Begin Group "Header Files"\r
-\r
-# PROP Default_Filter "h;hpp;hxx;hm;inl"\r
-# Begin Source File\r
-\r
-SOURCE=..\..\sys\dshowsrcwrapper\gstdshowaudiosrc.h\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=..\..\sys\dshowsrcwrapper\gstdshowsrcwrapper.h\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=..\..\sys\dshowsrcwrapper\gstdshowvideosrc.h\r
-# End Source File\r
-# End Group\r
-# Begin Group "Resource Files"\r
-\r
-# PROP Default_Filter "ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe"\r
-# End Group\r
-# End Target\r
-# End Project\r
old mode 100644 (file)
new mode 100755 (executable)
index 13386d2..109210c
@@ -1,25 +1,25 @@
-Microsoft Visual Studio Solution File, Format Version 9.00
-# Visual Studio 2005
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "libgstdirectsound", "libgstdirectsound.vcproj", "{566A2EB9-984C-4027-86DD-EDC7B390C679}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "libgstdirectdraw", "libgstdirectdraw.vcproj", "{1594A623-5529-4B86-BD4A-694CF0BDB5C4}"
-EndProject
-Global
-       GlobalSection(SolutionConfigurationPlatforms) = preSolution
-               Debug|Win32 = Debug|Win32
-               Release|Win32 = Release|Win32
-       EndGlobalSection
-       GlobalSection(ProjectConfigurationPlatforms) = postSolution
-               {566A2EB9-984C-4027-86DD-EDC7B390C679}.Debug|Win32.ActiveCfg = Debug|Win32
-               {566A2EB9-984C-4027-86DD-EDC7B390C679}.Debug|Win32.Build.0 = Debug|Win32
-               {566A2EB9-984C-4027-86DD-EDC7B390C679}.Release|Win32.ActiveCfg = Release|Win32
-               {566A2EB9-984C-4027-86DD-EDC7B390C679}.Release|Win32.Build.0 = Release|Win32
-               {1594A623-5529-4B86-BD4A-694CF0BDB5C4}.Debug|Win32.ActiveCfg = Debug|Win32
-               {1594A623-5529-4B86-BD4A-694CF0BDB5C4}.Debug|Win32.Build.0 = Debug|Win32
-               {1594A623-5529-4B86-BD4A-694CF0BDB5C4}.Release|Win32.ActiveCfg = Release|Win32
-               {1594A623-5529-4B86-BD4A-694CF0BDB5C4}.Release|Win32.Build.0 = Release|Win32
-       EndGlobalSection
-       GlobalSection(SolutionProperties) = preSolution
-               HideSolutionNode = FALSE
-       EndGlobalSection
-EndGlobal
+Microsoft Visual Studio Solution File, Format Version 9.00\r
+# Visual Studio 2005\r
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "libgstdirectdraw", "libgstdirectdraw.vcproj", "{1594A623-5529-4B86-BD4A-694CF0BDB5C4}"\r
+EndProject\r
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "libgstdshowsrcwrapper", "libdshowsrcwrapper.vcproj", "{42EC1484-5031-4962-9E45-C990BB77EB37}"\r
+EndProject\r
+Global\r
+       GlobalSection(SolutionConfigurationPlatforms) = preSolution\r
+               Debug|Win32 = Debug|Win32\r
+               Release|Win32 = Release|Win32\r
+       EndGlobalSection\r
+       GlobalSection(ProjectConfigurationPlatforms) = postSolution\r
+               {1594A623-5529-4B86-BD4A-694CF0BDB5C4}.Debug|Win32.ActiveCfg = Debug|Win32\r
+               {1594A623-5529-4B86-BD4A-694CF0BDB5C4}.Debug|Win32.Build.0 = Debug|Win32\r
+               {1594A623-5529-4B86-BD4A-694CF0BDB5C4}.Release|Win32.ActiveCfg = Release|Win32\r
+               {1594A623-5529-4B86-BD4A-694CF0BDB5C4}.Release|Win32.Build.0 = Release|Win32\r
+               {42EC1484-5031-4962-9E45-C990BB77EB37}.Debug|Win32.ActiveCfg = Debug|Win32\r
+               {42EC1484-5031-4962-9E45-C990BB77EB37}.Debug|Win32.Build.0 = Debug|Win32\r
+               {42EC1484-5031-4962-9E45-C990BB77EB37}.Release|Win32.ActiveCfg = Release|Win32\r
+               {42EC1484-5031-4962-9E45-C990BB77EB37}.Release|Win32.Build.0 = Release|Win32\r
+       EndGlobalSection\r
+       GlobalSection(SolutionProperties) = preSolution\r
+               HideSolutionNode = FALSE\r
+       EndGlobalSection\r
+EndGlobal\r
diff --git a/win32/vs8/libdshowsrcwrapper.vcproj b/win32/vs8/libdshowsrcwrapper.vcproj
new file mode 100755 (executable)
index 0000000..826c433
--- /dev/null
@@ -0,0 +1,280 @@
+<?xml version="1.0" encoding="Windows-1252"?>\r
+<VisualStudioProject\r
+       ProjectType="Visual C++"\r
+       Version="8,00"\r
+       Name="libgstdshowsrcwrapper"\r
+       ProjectGUID="{42EC1484-5031-4962-9E45-C990BB77EB37}"\r
+       >\r
+       <Platforms>\r
+               <Platform\r
+                       Name="Win32"\r
+               />\r
+       </Platforms>\r
+       <ToolFiles>\r
+       </ToolFiles>\r
+       <Configurations>\r
+               <Configuration\r
+                       Name="Release|Win32"\r
+                       OutputDirectory=".\Release"\r
+                       IntermediateDirectory=".\Release"\r
+                       ConfigurationType="2"\r
+                       InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC60.vsprops"\r
+                       UseOfMFC="0"\r
+                       ATLMinimizesCRunTimeLibraryUsage="false"\r
+                       CharacterSet="0"\r
+                       >\r
+                       <Tool\r
+                               Name="VCPreBuildEventTool"\r
+                       />\r
+                       <Tool\r
+                               Name="VCCustomBuildTool"\r
+                       />\r
+                       <Tool\r
+                               Name="VCXMLDataGeneratorTool"\r
+                       />\r
+                       <Tool\r
+                               Name="VCWebServiceProxyGeneratorTool"\r
+                       />\r
+                       <Tool\r
+                               Name="VCMIDLTool"\r
+                               PreprocessorDefinitions="NDEBUG"\r
+                               MkTypLibCompatible="true"\r
+                               SuppressStartupBanner="true"\r
+                               TargetEnvironment="1"\r
+                               TypeLibraryName=".\Release/libdshowsrcwrapper.tlb"\r
+                               HeaderFileName=""\r
+                       />\r
+                       <Tool\r
+                               Name="VCCLCompilerTool"\r
+                               Optimization="2"\r
+                               InlineFunctionExpansion="1"\r
+                               AdditionalIncludeDirectories="C:\msys\1.0\local\include;C:\msys\1.0\local\include\libxml2;&quot;C:\msys\1.0\local\include\glib-2.0&quot;;&quot;C:\msys\1.0\local\lib\glib-2.0\include&quot;;&quot;C:\msys\1.0\local\include\gstreamer-0.10&quot;;..\common;&quot;C:\Program Files\Microsoft Platform SDK for Windows Server 2003 R2\Samples\Multimedia\DirectShow\BaseClasses&quot;"\r
+                               PreprocessorDefinitions="NDEBUG;WIN32;_WINDOWS;_USRDLL;DSHOWSRCWRAPPER_EXPORTS;HAVE_CONFIG_H;COBJMACROS;_WIN32_DCOM;_CRT_SECURE_NO_DEPRECATE"\r
+                               StringPooling="true"\r
+                               RuntimeLibrary="2"\r
+                               EnableFunctionLevelLinking="true"\r
+                               PrecompiledHeaderFile=".\Release/libdshowsrcwrapper.pch"\r
+                               AssemblerListingLocation=".\Release/"\r
+                               ObjectFile=".\Release/"\r
+                               ProgramDataBaseFileName=".\Release/"\r
+                               WarningLevel="3"\r
+                               SuppressStartupBanner="true"\r
+                       />\r
+                       <Tool\r
+                               Name="VCManagedResourceCompilerTool"\r
+                       />\r
+                       <Tool\r
+                               Name="VCResourceCompilerTool"\r
+                               PreprocessorDefinitions="NDEBUG"\r
+                               Culture="1036"\r
+                       />\r
+                       <Tool\r
+                               Name="VCPreLinkEventTool"\r
+                       />\r
+                       <Tool\r
+                               Name="VCLinkerTool"\r
+                               AdditionalDependencies="libgstreamer-0.10.lib libgstbase-0.10.lib libgstinterfaces-0.10.lib libgstaudio-0.10.lib glib-2.0.lib gmodule-2.0.lib gobject-2.0.lib gthread-2.0.lib quartz.lib winmm.lib msacm32.lib olepro32.lib Rpcrt4.lib Strmiids.lib strmbase.lib"\r
+                               OutputFile="Release/libgstdshowsrcwrapper.dll"\r
+                               LinkIncremental="1"\r
+                               SuppressStartupBanner="true"\r
+                               AdditionalLibraryDirectories="C:\msys\1.0\local\lib;&quot;C:\Program Files\Microsoft Platform SDK for Windows Server 2003 R2\Lib&quot;;&quot;C:\Program Files\Microsoft Platform SDK for Windows Server 2003 R2\Samples\Multimedia\DirectShow\BaseClasses\XP32_RETAIL&quot;"\r
+                               ModuleDefinitionFile="..\..\sys\libgstdshow.def"\r
+                               ProgramDatabaseFile=".\Release/libgstdshowsrcwrapper.pdb"\r
+                               ImportLibrary=".\Release/libgstdshowsrcwrapper.lib"\r
+                               TargetMachine="1"\r
+                       />\r
+                       <Tool\r
+                               Name="VCALinkTool"\r
+                       />\r
+                       <Tool\r
+                               Name="VCManifestTool"\r
+                       />\r
+                       <Tool\r
+                               Name="VCXDCMakeTool"\r
+                       />\r
+                       <Tool\r
+                               Name="VCBscMakeTool"\r
+                               SuppressStartupBanner="true"\r
+                               OutputFile=".\Release/libdshowsrcwrapper.bsc"\r
+                       />\r
+                       <Tool\r
+                               Name="VCFxCopTool"\r
+                       />\r
+                       <Tool\r
+                               Name="VCAppVerifierTool"\r
+                       />\r
+                       <Tool\r
+                               Name="VCWebDeploymentTool"\r
+                       />\r
+                       <Tool\r
+                               Name="VCPostBuildEventTool"\r
+                               CommandLine="copy /Y Release\libgstdshowsrcwrapper.dll c:\msys\1.0\local\lib\gstreamer-0.10"\r
+                       />\r
+               </Configuration>\r
+               <Configuration\r
+                       Name="Debug|Win32"\r
+                       OutputDirectory=".\Debug"\r
+                       IntermediateDirectory=".\Debug"\r
+                       ConfigurationType="2"\r
+                       InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC60.vsprops"\r
+                       UseOfMFC="0"\r
+                       ATLMinimizesCRunTimeLibraryUsage="false"\r
+                       CharacterSet="0"\r
+                       >\r
+                       <Tool\r
+                               Name="VCPreBuildEventTool"\r
+                       />\r
+                       <Tool\r
+                               Name="VCCustomBuildTool"\r
+                       />\r
+                       <Tool\r
+                               Name="VCXMLDataGeneratorTool"\r
+                       />\r
+                       <Tool\r
+                               Name="VCWebServiceProxyGeneratorTool"\r
+                       />\r
+                       <Tool\r
+                               Name="VCMIDLTool"\r
+                               PreprocessorDefinitions="_DEBUG"\r
+                               MkTypLibCompatible="true"\r
+                               SuppressStartupBanner="true"\r
+                               TargetEnvironment="1"\r
+                               TypeLibraryName=".\Debug/libdshowsrcwrapper.tlb"\r
+                               HeaderFileName=""\r
+                       />\r
+                       <Tool\r
+                               Name="VCCLCompilerTool"\r
+                               Optimization="0"\r
+                               AdditionalIncludeDirectories="C:\msys\1.0\local\include;C:\msys\1.0\local\include\libxml2;&quot;C:\msys\1.0\local\include\glib-2.0&quot;;&quot;C:\msys\1.0\local\lib\glib-2.0\include&quot;;&quot;C:\msys\1.0\local\include\gstreamer-0.10&quot;;..\common;&quot;C:\Program Files\Microsoft Platform SDK for Windows Server 2003 R2\Samples\Multimedia\DirectShow\BaseClasses&quot;"\r
+                               PreprocessorDefinitions="_DEBUG;WIN32;_WINDOWS;_USRDLL;DSHOWSRCWRAPPER_EXPORTS;HAVE_CONFIG_H;COBJMACROS;_WIN32_DCOM;_CRT_SECURE_NO_DEPRECATE"\r
+                               MinimalRebuild="true"\r
+                               BasicRuntimeChecks="3"\r
+                               RuntimeLibrary="3"\r
+                               EnableEnhancedInstructionSet="2"\r
+                               PrecompiledHeaderFile=".\Debug/libdshowsrcwrapper.pch"\r
+                               AssemblerListingLocation=".\Debug/"\r
+                               ObjectFile=".\Debug/"\r
+                               ProgramDataBaseFileName=".\Debug/"\r
+                               WarningLevel="3"\r
+                               SuppressStartupBanner="true"\r
+                               DebugInformationFormat="4"\r
+                       />\r
+                       <Tool\r
+                               Name="VCManagedResourceCompilerTool"\r
+                       />\r
+                       <Tool\r
+                               Name="VCResourceCompilerTool"\r
+                               PreprocessorDefinitions="_DEBUG"\r
+                               Culture="1036"\r
+                       />\r
+                       <Tool\r
+                               Name="VCPreLinkEventTool"\r
+                       />\r
+                       <Tool\r
+                               Name="VCLinkerTool"\r
+                               AdditionalDependencies="libgstreamer-0.10.lib libgstbase-0.10.lib libgstinterfaces-0.10.lib libgstaudio-0.10.lib glib-2.0.lib gmodule-2.0.lib gobject-2.0.lib gthread-2.0.lib strmbasd.lib quartz.lib winmm.lib msacm32.lib olepro32.lib Rpcrt4.lib Strmiids.lib"\r
+                               OutputFile="Debug/libgstdshowsrcwrapper.dll"\r
+                               LinkIncremental="2"\r
+                               SuppressStartupBanner="true"\r
+                               AdditionalLibraryDirectories="C:\msys\1.0\local\lib;&quot;C:\Program Files\Microsoft Platform SDK for Windows Server 2003 R2\Lib&quot;;&quot;C:\Program Files\Microsoft Platform SDK for Windows Server 2003 R2\Samples\Multimedia\DirectShow\BaseClasses\XP32_DEBUG&quot;"\r
+                               ModuleDefinitionFile="..\..\sys\libgstdshow.def"\r
+                               GenerateDebugInformation="true"\r
+                               ProgramDatabaseFile=".\Debug/libgstdshowsrcwrapper.pdb"\r
+                               ImportLibrary=".\Debug/libgstdshowsrcwrapper.lib"\r
+                               TargetMachine="1"\r
+                       />\r
+                       <Tool\r
+                               Name="VCALinkTool"\r
+                       />\r
+                       <Tool\r
+                               Name="VCManifestTool"\r
+                       />\r
+                       <Tool\r
+                               Name="VCXDCMakeTool"\r
+                       />\r
+                       <Tool\r
+                               Name="VCBscMakeTool"\r
+                               SuppressStartupBanner="true"\r
+                               OutputFile=".\Debug/libdshowsrcwrapper.bsc"\r
+                       />\r
+                       <Tool\r
+                               Name="VCFxCopTool"\r
+                       />\r
+                       <Tool\r
+                               Name="VCAppVerifierTool"\r
+                       />\r
+                       <Tool\r
+                               Name="VCWebDeploymentTool"\r
+                       />\r
+                       <Tool\r
+                               Name="VCPostBuildEventTool"\r
+                               CommandLine="copy /Y Debug\libgstdshowsrcwrapper.dll c:\msys\1.0\local\lib\gstreamer-0.10"\r
+                       />\r
+               </Configuration>\r
+       </Configurations>\r
+       <References>\r
+       </References>\r
+       <Files>\r
+               <Filter\r
+                       Name="Source Files"\r
+                       Filter="cpp;c;cxx;rc;def;r;odl;idl;hpj;bat"\r
+                       >\r
+                       <File\r
+                               RelativePath="..\..\sys\dshowsrcwrapper\gstdshow.cpp"\r
+                               >\r
+                       </File>\r
+                       <File\r
+                               RelativePath="..\..\sys\dshowsrcwrapper\gstdshowaudiosrc.c"\r
+                               >\r
+                       </File>\r
+                       <File\r
+                               RelativePath="..\..\sys\dshowsrcwrapper\gstdshowfakesink.cpp"\r
+                               >\r
+                       </File>\r
+                       <File\r
+                               RelativePath="..\..\sys\dshowsrcwrapper\gstdshowsrcwrapper.cpp"\r
+                               >\r
+                       </File>\r
+                       <File\r
+                               RelativePath="..\..\sys\dshowsrcwrapper\gstdshowvideosrc.c"\r
+                               >\r
+                       </File>\r
+                       <File\r
+                               RelativePath="..\..\sys\libgstdshow.def"\r
+                               >\r
+                       </File>\r
+               </Filter>\r
+               <Filter\r
+                       Name="Header Files"\r
+                       Filter="h;hpp;hxx;hm;inl"\r
+                       >\r
+                       <File\r
+                               RelativePath="..\..\sys\dshowsrcwrapper\gstdshow.h"\r
+                               >\r
+                       </File>\r
+                       <File\r
+                               RelativePath="..\..\sys\dshowsrcwrapper\gstdshowaudiosrc.h"\r
+                               >\r
+                       </File>\r
+                       <File\r
+                               RelativePath="..\..\sys\dshowsrcwrapper\gstdshowfakesink.h"\r
+                               >\r
+                       </File>\r
+                       <File\r
+                               RelativePath="..\..\sys\dshowsrcwrapper\gstdshowinterface.h"\r
+                               >\r
+                       </File>\r
+                       <File\r
+                               RelativePath="..\..\sys\dshowsrcwrapper\gstdshowvideosrc.h"\r
+                               >\r
+                       </File>\r
+               </Filter>\r
+               <Filter\r
+                       Name="Resource Files"\r
+                       Filter="ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe"\r
+                       >\r
+               </Filter>\r
+       </Files>\r
+       <Globals>\r
+       </Globals>\r
+</VisualStudioProject>\r