mirror of
https://gitlab.freedesktop.org/gstreamer/gstreamer.git
synced 2024-11-27 12:11:13 +00:00
start refactoring of dshowsrcwrapper
-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.
This commit is contained in:
parent
af54a9afba
commit
30469d45c0
24 changed files with 386 additions and 623 deletions
|
@ -1673,7 +1673,6 @@ gst/vmnc/Makefile
|
||||||
gst/xdgmime/Makefile
|
gst/xdgmime/Makefile
|
||||||
gst-libs/Makefile
|
gst-libs/Makefile
|
||||||
gst-libs/gst/Makefile
|
gst-libs/gst/Makefile
|
||||||
gst-libs/gst/dshow/Makefile
|
|
||||||
gst-libs/gst/interfaces/Makefile
|
gst-libs/gst/interfaces/Makefile
|
||||||
gst-libs/gst/signalprocessor/Makefile
|
gst-libs/gst/signalprocessor/Makefile
|
||||||
gst-libs/gst/video/Makefile
|
gst-libs/gst/video/Makefile
|
||||||
|
|
|
@ -2,4 +2,4 @@
|
||||||
SUBDIRS = interfaces signalprocessor video
|
SUBDIRS = interfaces signalprocessor video
|
||||||
|
|
||||||
noinst_HEADERS = gst-i18n-plugin.h gettext.h
|
noinst_HEADERS = gst-i18n-plugin.h gettext.h
|
||||||
DIST_SUBDIRS = dshow interfaces signalprocessor video
|
DIST_SUBDIRS = interfaces signalprocessor video
|
||||||
|
|
|
@ -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
|
|
|
@ -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;
|
|
||||||
}
|
|
|
@ -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);
|
|
||||||
};
|
|
|
@ -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 } };
|
|
22
sys/dshowsrcwrapper/Makefile.am
Normal file → Executable file
22
sys/dshowsrcwrapper/Makefile.am
Normal file → Executable file
|
@ -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
|
EXTRA_DIST = \
|
||||||
|
gstdshowaudiosrc.c \
|
||||||
libgstdshowsrcwrapper_la_CFLAGS = $(GST_CFLAGS)
|
gstdshowaudiosrc.h \
|
||||||
libgstdshowsrcwrapper_la_LIBADD = $(GST_LIBS)
|
gstdshow.cpp \
|
||||||
libgstdshowsrcwrapper_la_LDFLAGS = $(GST_PLUGIN_LDFLAGS)
|
gstdshowfakesink.cpp \
|
||||||
libgstdshowsrcwrapper_la_LIBTOOLFLAGS = --tag=disable-static
|
gstdshowfakesink.h \
|
||||||
|
gstdshow.h \
|
||||||
noinst_HEADERS = gstdshowaudiosrc.h gstdshowsrcwrapper.h gstdshowvideosrc.h
|
gstdshowinterface.h \
|
||||||
|
gstdshowsrcwrapper.cpp \
|
||||||
|
gstdshowvideosrc.c \
|
||||||
|
gstdshowvideosrc.h
|
||||||
|
|
21
gst-libs/gst/dshow/gstdshow.cpp → sys/dshowsrcwrapper/gstdshow.cpp
Normal file → Executable file
21
gst-libs/gst/dshow/gstdshow.cpp → sys/dshowsrcwrapper/gstdshow.cpp
Normal file → Executable file
|
@ -21,7 +21,6 @@
|
||||||
|
|
||||||
#include "gstdshow.h"
|
#include "gstdshow.h"
|
||||||
#include "gstdshowfakesink.h"
|
#include "gstdshowfakesink.h"
|
||||||
#include "gstdshowfakesrc.h"
|
|
||||||
|
|
||||||
CFactoryTemplate g_Templates[]=
|
CFactoryTemplate g_Templates[]=
|
||||||
{
|
{
|
||||||
|
@ -31,15 +30,7 @@ CFactoryTemplate g_Templates[]=
|
||||||
, CDshowFakeSink::CreateInstance
|
, CDshowFakeSink::CreateInstance
|
||||||
, NULL
|
, NULL
|
||||||
, NULL
|
, NULL
|
||||||
},
|
}
|
||||||
{
|
|
||||||
L"DSHOW fake src filter"
|
|
||||||
, &CLSID_DshowFakeSrc
|
|
||||||
, CDshowFakeSrc::CreateInstance
|
|
||||||
, NULL
|
|
||||||
, NULL
|
|
||||||
},
|
|
||||||
|
|
||||||
};
|
};
|
||||||
|
|
||||||
int g_cTemplates = sizeof(g_Templates)/sizeof(g_Templates[0]);
|
int g_cTemplates = sizeof(g_Templates)/sizeof(g_Templates[0]);
|
||||||
|
@ -64,9 +55,9 @@ STDAPI DllUnregisterServer()
|
||||||
return AMovieDllRegisterServer2 (FALSE);
|
return AMovieDllRegisterServer2 (FALSE);
|
||||||
}
|
}
|
||||||
|
|
||||||
BOOL gst_dshow_register_fakefilters ()
|
HRESULT gst_dshow_register_fakefilters ()
|
||||||
{
|
{
|
||||||
return (DllRegisterServer() == S_OK) ? TRUE : FALSE;
|
return DllRegisterServer();
|
||||||
}
|
}
|
||||||
|
|
||||||
void
|
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 */
|
/* create a private copy of prefered filter substring in upper case */
|
||||||
if (prefered_filter_name) {
|
if (prefered_filter_name) {
|
||||||
prefered_filter_upper = g_strdup (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,
|
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,
|
friendly_name = g_utf16_to_utf8((const gunichar2*)varFriendlyName.bstrVal,
|
||||||
wcslen(varFriendlyName.bstrVal), NULL, NULL, NULL);
|
wcslen(varFriendlyName.bstrVal), NULL, NULL, NULL);
|
||||||
if (friendly_name)
|
if (friendly_name)
|
||||||
strupr (friendly_name);
|
_strupr (friendly_name);
|
||||||
SysFreeString (varFriendlyName.bstrVal);
|
SysFreeString (varFriendlyName.bstrVal);
|
||||||
}
|
}
|
||||||
property_bag->Release ();
|
property_bag->Release ();
|
||||||
|
@ -254,7 +245,7 @@ clean:
|
||||||
|
|
||||||
|
|
||||||
gchar *
|
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;
|
gchar *ret = NULL;
|
||||||
ICreateDevEnum *devices_enum = NULL;
|
ICreateDevEnum *devices_enum = NULL;
|
19
gst-libs/gst/dshow/gstdshow.h → sys/dshowsrcwrapper/gstdshow.h
Normal file → Executable file
19
gst-libs/gst/dshow/gstdshow.h → sys/dshowsrcwrapper/gstdshow.h
Normal file → Executable file
|
@ -22,18 +22,16 @@
|
||||||
#ifndef _GSTDSHOW_
|
#ifndef _GSTDSHOW_
|
||||||
#define _GSTDSHOW_
|
#define _GSTDSHOW_
|
||||||
|
|
||||||
|
#ifdef __cplusplus
|
||||||
|
#include <streams.h>
|
||||||
|
#endif
|
||||||
#include <windows.h>
|
#include <windows.h>
|
||||||
|
#include <objbase.h>
|
||||||
|
#include <dshow.h>
|
||||||
|
#include <Rpc.h>
|
||||||
|
|
||||||
#include <glib.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
|
typedef struct _GstCapturePinMediaType
|
||||||
{
|
{
|
||||||
AM_MEDIA_TYPE *mediatype;
|
AM_MEDIA_TYPE *mediatype;
|
||||||
|
@ -45,7 +43,7 @@ extern "C" {
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
/* register fake filters as COM object and as Direct Show filters in the registry */
|
/* 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 */
|
/* free memory of the input pin mediatype */
|
||||||
void gst_dshow_free_pin_mediatype (gpointer pt);
|
void gst_dshow_free_pin_mediatype (gpointer pt);
|
||||||
|
@ -66,12 +64,11 @@ gboolean gst_dshow_find_filter(CLSID input_majortype, CLSID input_subtype,
|
||||||
|
|
||||||
/* get the dshow device path from device friendly name.
|
/* get the dshow device path from device friendly name.
|
||||||
If friendly name is not set, it will return the first available device */
|
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*/
|
/* show the capture filter property page (generally used to setup the device). the page is modal*/
|
||||||
gboolean gst_dshow_show_propertypage (IBaseFilter *base_filter);
|
gboolean gst_dshow_show_propertypage (IBaseFilter *base_filter);
|
||||||
|
|
||||||
|
|
||||||
#ifdef __cplusplus
|
#ifdef __cplusplus
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
10
sys/dshowsrcwrapper/gstdshowaudiosrc.c
Normal file → Executable file
10
sys/dshowsrcwrapper/gstdshowaudiosrc.c
Normal file → Executable file
|
@ -19,12 +19,12 @@
|
||||||
* Boston, MA 02111-1307, USA.
|
* Boston, MA 02111-1307, USA.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#include "gstdshowaudiosrc.h"
|
|
||||||
|
|
||||||
#ifdef HAVE_CONFIG_H
|
#ifdef HAVE_CONFIG_H
|
||||||
#include "config.h"
|
#include "config.h"
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
#include "gstdshowaudiosrc.h"
|
||||||
|
|
||||||
static const GstElementDetails gst_dshowaudiosrc_details =
|
static const GstElementDetails gst_dshowaudiosrc_details =
|
||||||
GST_ELEMENT_DETAILS ("Directshow audio capture source",
|
GST_ELEMENT_DETAILS ("Directshow audio capture source",
|
||||||
"Source/Audio",
|
"Source/Audio",
|
||||||
|
@ -451,7 +451,7 @@ gst_dshowaudiosrc_get_caps (GstBaseSrc * basesrc)
|
||||||
&cbReturned);
|
&cbReturned);
|
||||||
|
|
||||||
/* we only want capture pins */
|
/* we only want capture pins */
|
||||||
if (UuidCompare (&pin_category, &PIN_CATEGORY_CAPTURE,
|
if (UuidCompare (&pin_category, (UUID *) &PIN_CATEGORY_CAPTURE,
|
||||||
&rpcstatus) == 0) {
|
&rpcstatus) == 0) {
|
||||||
IAMStreamConfig *streamcaps = NULL;
|
IAMStreamConfig *streamcaps = NULL;
|
||||||
|
|
||||||
|
@ -825,10 +825,10 @@ gst_dshowaudiosrc_getcaps_from_streamcaps (GstDshowAudioSrc * src, IPin * pin,
|
||||||
if (!caps)
|
if (!caps)
|
||||||
caps = gst_caps_new_empty ();
|
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)
|
&rpcstatus) == 0 && rpcstatus == RPC_S_OK)
|
||||||
&& (UuidCompare (&pin_mediatype->mediatype->formattype,
|
&& (UuidCompare (&pin_mediatype->mediatype->formattype,
|
||||||
&FORMAT_WaveFormatEx, &rpcstatus) == 0
|
(UUID *) &FORMAT_WaveFormatEx, &rpcstatus) == 0
|
||||||
&& rpcstatus == RPC_S_OK)) {
|
&& rpcstatus == RPC_S_OK)) {
|
||||||
WAVEFORMATEX *wavformat =
|
WAVEFORMATEX *wavformat =
|
||||||
(WAVEFORMATEX *) pin_mediatype->mediatype->pbFormat;
|
(WAVEFORMATEX *) pin_mediatype->mediatype->pbFormat;
|
||||||
|
|
3
sys/dshowsrcwrapper/gstdshowaudiosrc.h
Normal file → Executable file
3
sys/dshowsrcwrapper/gstdshowaudiosrc.h
Normal file → Executable file
|
@ -27,7 +27,8 @@
|
||||||
#include <gst/audio/gstaudiosrc.h>
|
#include <gst/audio/gstaudiosrc.h>
|
||||||
#include <gst/interfaces/propertyprobe.h>
|
#include <gst/interfaces/propertyprobe.h>
|
||||||
|
|
||||||
#include "gstdshowsrcwrapper.h"
|
#include "gstdshow.h"
|
||||||
|
#include "gstdshowinterface.h"
|
||||||
|
|
||||||
G_BEGIN_DECLS
|
G_BEGIN_DECLS
|
||||||
#define GST_TYPE_DSHOWAUDIOSRC (gst_dshowaudiosrc_get_type())
|
#define GST_TYPE_DSHOWAUDIOSRC (gst_dshowaudiosrc_get_type())
|
||||||
|
|
1
gst-libs/gst/dshow/gstdshowfakesink.cpp → sys/dshowsrcwrapper/gstdshowfakesink.cpp
Normal file → Executable file
1
gst-libs/gst/dshow/gstdshowfakesink.cpp → sys/dshowsrcwrapper/gstdshowfakesink.cpp
Normal file → Executable file
|
@ -37,6 +37,7 @@ CDshowFakeSink::~CDshowFakeSink()
|
||||||
CUnknown* WINAPI CDshowFakeSink::CreateInstance(LPUNKNOWN pUnk, HRESULT *pHr)
|
CUnknown* WINAPI CDshowFakeSink::CreateInstance(LPUNKNOWN pUnk, HRESULT *pHr)
|
||||||
{
|
{
|
||||||
CDshowFakeSink *pNewObject = new CDshowFakeSink();
|
CDshowFakeSink *pNewObject = new CDshowFakeSink();
|
||||||
|
g_print ("CDshowFakeSink::CreateInstance\n");
|
||||||
if (pNewObject == NULL) {
|
if (pNewObject == NULL) {
|
||||||
*pHr = E_OUTOFMEMORY;
|
*pHr = E_OUTOFMEMORY;
|
||||||
}
|
}
|
0
gst-libs/gst/dshow/gstdshowfakesink.h → sys/dshowsrcwrapper/gstdshowfakesink.h
Normal file → Executable file
0
gst-libs/gst/dshow/gstdshowfakesink.h → sys/dshowsrcwrapper/gstdshowfakesink.h
Normal file → Executable file
22
gst-libs/gst/dshow/gstdshowinterface.h → sys/dshowsrcwrapper/gstdshowinterface.h
Normal file → Executable file
22
gst-libs/gst/dshow/gstdshowinterface.h → sys/dshowsrcwrapper/gstdshowinterface.h
Normal file → Executable file
|
@ -24,9 +24,9 @@
|
||||||
|
|
||||||
#include "gstdshow.h"
|
#include "gstdshow.h"
|
||||||
|
|
||||||
#ifdef LIBDSHOW_EXPORTS
|
#ifdef __cplusplus
|
||||||
typedef bool (*push_buffer_func) (byte *buffer, long size, byte *src_object, UINT64 start, UINT64 stop);
|
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*/
|
/* verify that the <rpcndr.h> version is high enough to compile this file*/
|
||||||
#ifndef __REQUIRED_RPCNDR_H_VERSION__
|
#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"
|
#include "ole2.h"
|
||||||
#endif /*COM_NO_WINDOWS_H*/
|
#endif /*COM_NO_WINDOWS_H*/
|
||||||
|
|
||||||
#ifdef __cplusplus
|
//{6A780808-9725-4d0b-8695-A4DD8D210773}
|
||||||
extern "C"{
|
static const GUID CLSID_DshowFakeSink
|
||||||
#endif
|
= { 0x6a780808, 0x9725, 0x4d0b, { 0x86, 0x95, 0xa4, 0xdd, 0x8d, 0x21, 0x7, 0x73 } };
|
||||||
|
|
||||||
|
// {FC36764C-6CD4-4C73-900F-3F40BF3F191A}
|
||||||
extern DSHOW_API const GUID CLSID_DshowFakeSink;
|
static const GUID IID_IGstDshowInterface =
|
||||||
extern DSHOW_API const GUID CLSID_DshowFakeSrc;
|
{ 0xfc36764c, 0x6cd4, 0x4c73, { 0x90, 0xf, 0x3f, 0x40, 0xbf, 0x3f, 0x19, 0x1a } };
|
||||||
extern DSHOW_API const GUID IID_IGstDshowInterface;
|
|
||||||
|
|
||||||
#define CLSID_DSHOWFAKESINK_STRING "{6A780808-9725-4d0b-8695-A4DD8D210773}"
|
#define CLSID_DSHOWFAKESINK_STRING "{6A780808-9725-4d0b-8695-A4DD8D210773}"
|
||||||
#define CLSID_DSHOWFAKESRC_STRING "{1E38DAED-8A6E-4DEA-A482-A878761D11CB}"
|
|
||||||
|
|
||||||
typedef interface IGstDshowInterface IGstDshowInterface;
|
typedef interface IGstDshowInterface IGstDshowInterface;
|
||||||
|
|
||||||
|
@ -162,8 +160,4 @@ void __RPC_USER MIDL_user_free( void __RPC_FAR * );
|
||||||
|
|
||||||
#endif /* __IGstDshowInterface_INTERFACE_DEFINED__ */
|
#endif /* __IGstDshowInterface_INTERFACE_DEFINED__ */
|
||||||
|
|
||||||
#ifdef __cplusplus
|
|
||||||
}
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#endif /* __GST_DSHOW_INTERFACE_H__ */
|
#endif /* __GST_DSHOW_INTERFACE_H__ */
|
11
sys/dshowsrcwrapper/gstdshowsrcwrapper.c → sys/dshowsrcwrapper/gstdshowsrcwrapper.cpp
Normal file → Executable file
11
sys/dshowsrcwrapper/gstdshowsrcwrapper.c → sys/dshowsrcwrapper/gstdshowsrcwrapper.cpp
Normal file → Executable file
|
@ -35,12 +35,15 @@ const GUID IID_IGstSrcInterface =
|
||||||
{ 0x542c0a24, 0x8bd1, 0x46cb, {0xaa, 0x57, 0x3e, 0x46, 0xd0, 0x6, 0xd2,
|
{ 0x542c0a24, 0x8bd1, 0x46cb, {0xaa, 0x57, 0x3e, 0x46, 0xd0, 0x6, 0xd2,
|
||||||
0xf3} };
|
0xf3} };
|
||||||
|
|
||||||
|
|
||||||
static gboolean
|
static gboolean
|
||||||
plugin_init (GstPlugin * plugin)
|
plugin_init (GstPlugin * plugin)
|
||||||
{
|
{
|
||||||
/* register fake filters */
|
/* 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",
|
if (!gst_element_register (plugin, "dshowaudiosrc",
|
||||||
GST_RANK_NONE,
|
GST_RANK_NONE,
|
||||||
|
@ -52,8 +55,12 @@ plugin_init (GstPlugin * plugin)
|
||||||
return TRUE;
|
return TRUE;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
extern "C" {
|
||||||
|
|
||||||
GST_PLUGIN_DEFINE (GST_VERSION_MAJOR,
|
GST_PLUGIN_DEFINE (GST_VERSION_MAJOR,
|
||||||
GST_VERSION_MINOR,
|
GST_VERSION_MINOR,
|
||||||
"dshowsrcwrapper",
|
"dshowsrcwrapper",
|
||||||
"DirectShow sources wrapper plugin",
|
"DirectShow sources wrapper plugin",
|
||||||
plugin_init, VERSION, "LGPL", GST_PACKAGE_NAME, GST_PACKAGE_ORIGIN)
|
plugin_init, VERSION, "LGPL", GST_PACKAGE_NAME, GST_PACKAGE_ORIGIN)
|
||||||
|
|
||||||
|
}
|
|
@ -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__ */
|
|
24
sys/dshowsrcwrapper/gstdshowvideosrc.c
Normal file → Executable file
24
sys/dshowsrcwrapper/gstdshowvideosrc.c
Normal file → Executable file
|
@ -19,12 +19,12 @@
|
||||||
* Boston, MA 02111-1307, USA.
|
* Boston, MA 02111-1307, USA.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#include "gstdshowvideosrc.h"
|
|
||||||
|
|
||||||
#ifdef HAVE_CONFIG_H
|
#ifdef HAVE_CONFIG_H
|
||||||
#include "config.h"
|
#include "config.h"
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
#include "gstdshowvideosrc.h"
|
||||||
|
|
||||||
static const GstElementDetails gst_dshowvideosrc_details =
|
static const GstElementDetails gst_dshowvideosrc_details =
|
||||||
GST_ELEMENT_DETAILS ("DirectShow video capture source",
|
GST_ELEMENT_DETAILS ("DirectShow video capture source",
|
||||||
"Source/Video",
|
"Source/Video",
|
||||||
|
@ -520,7 +520,7 @@ gst_dshowvideosrc_get_caps (GstBaseSrc * basesrc)
|
||||||
&cbReturned);
|
&cbReturned);
|
||||||
|
|
||||||
/* we only want capture pins */
|
/* we only want capture pins */
|
||||||
if (UuidCompare (&pin_category, &PIN_CATEGORY_CAPTURE,
|
if (UuidCompare (&pin_category, (UUID *) &PIN_CATEGORY_CAPTURE,
|
||||||
&rpcstatus) == 0) {
|
&rpcstatus) == 0) {
|
||||||
IAMStreamConfig *streamcaps = NULL;
|
IAMStreamConfig *streamcaps = NULL;
|
||||||
|
|
||||||
|
@ -625,7 +625,7 @@ gst_dshowvideosrc_start (GstBaseSrc * bsrc)
|
||||||
&IID_IBaseFilter, (LPVOID *) & src->dshow_fakesink);
|
&IID_IBaseFilter, (LPVOID *) & src->dshow_fakesink);
|
||||||
if (hres != S_OK || !src->dshow_fakesink) {
|
if (hres != S_OK || !src->dshow_fakesink) {
|
||||||
GST_CAT_ERROR (dshowvideosrc_debug,
|
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);
|
hres);
|
||||||
goto error;
|
goto error;
|
||||||
}
|
}
|
||||||
|
@ -898,10 +898,10 @@ gst_dshowvideosrc_getcaps_from_streamcaps (GstDshowVideoSrc * src, IPin * pin,
|
||||||
caps = gst_caps_new_empty ();
|
caps = gst_caps_new_empty ();
|
||||||
|
|
||||||
/* I420 */
|
/* I420 */
|
||||||
if ((UuidCompare (&pin_mediatype->mediatype->subtype, &MEDIASUBTYPE_I420,
|
if ((UuidCompare (&pin_mediatype->mediatype->subtype, (UUID *) &MEDIASUBTYPE_I420,
|
||||||
&rpcstatus) == 0 && rpcstatus == RPC_S_OK)
|
&rpcstatus) == 0 && rpcstatus == RPC_S_OK)
|
||||||
&& (UuidCompare (&pin_mediatype->mediatype->formattype,
|
&& (UuidCompare (&pin_mediatype->mediatype->formattype,
|
||||||
&FORMAT_VideoInfo, &rpcstatus) == 0
|
(UUID *) &FORMAT_VideoInfo, &rpcstatus) == 0
|
||||||
&& rpcstatus == RPC_S_OK)) {
|
&& rpcstatus == RPC_S_OK)) {
|
||||||
video_info = (VIDEOINFOHEADER *) pin_mediatype->mediatype->pbFormat;
|
video_info = (VIDEOINFOHEADER *) pin_mediatype->mediatype->pbFormat;
|
||||||
|
|
||||||
|
@ -923,10 +923,10 @@ gst_dshowvideosrc_getcaps_from_streamcaps (GstDshowVideoSrc * src, IPin * pin,
|
||||||
}
|
}
|
||||||
|
|
||||||
/* RGB24 */
|
/* RGB24 */
|
||||||
if ((UuidCompare (&pin_mediatype->mediatype->subtype, &MEDIASUBTYPE_RGB24,
|
if ((UuidCompare (&pin_mediatype->mediatype->subtype, (UUID *) &MEDIASUBTYPE_RGB24,
|
||||||
&rpcstatus) == 0 && rpcstatus == RPC_S_OK)
|
&rpcstatus) == 0 && rpcstatus == RPC_S_OK)
|
||||||
&& (UuidCompare (&pin_mediatype->mediatype->formattype,
|
&& (UuidCompare (&pin_mediatype->mediatype->formattype,
|
||||||
&FORMAT_VideoInfo, &rpcstatus) == 0
|
(UUID *) &FORMAT_VideoInfo, &rpcstatus) == 0
|
||||||
&& rpcstatus == RPC_S_OK)) {
|
&& rpcstatus == RPC_S_OK)) {
|
||||||
video_info = (VIDEOINFOHEADER *) pin_mediatype->mediatype->pbFormat;
|
video_info = (VIDEOINFOHEADER *) pin_mediatype->mediatype->pbFormat;
|
||||||
|
|
||||||
|
@ -952,10 +952,10 @@ gst_dshowvideosrc_getcaps_from_streamcaps (GstDshowVideoSrc * src, IPin * pin,
|
||||||
}
|
}
|
||||||
|
|
||||||
/* DVSD */
|
/* DVSD */
|
||||||
if ((UuidCompare (&pin_mediatype->mediatype->subtype, &MEDIASUBTYPE_dvsd,
|
if ((UuidCompare (&pin_mediatype->mediatype->subtype, (UUID *) &MEDIASUBTYPE_dvsd,
|
||||||
&rpcstatus) == 0 && rpcstatus == RPC_S_OK)
|
&rpcstatus) == 0 && rpcstatus == RPC_S_OK)
|
||||||
&& (UuidCompare (&pin_mediatype->mediatype->formattype,
|
&& (UuidCompare (&pin_mediatype->mediatype->formattype,
|
||||||
&FORMAT_VideoInfo, &rpcstatus) == 0
|
(UUID *) &FORMAT_VideoInfo, &rpcstatus) == 0
|
||||||
&& rpcstatus == RPC_S_OK)) {
|
&& rpcstatus == RPC_S_OK)) {
|
||||||
video_info = (VIDEOINFOHEADER *) pin_mediatype->mediatype->pbFormat;
|
video_info = (VIDEOINFOHEADER *) pin_mediatype->mediatype->pbFormat;
|
||||||
|
|
||||||
|
@ -978,10 +978,10 @@ gst_dshowvideosrc_getcaps_from_streamcaps (GstDshowVideoSrc * src, IPin * pin,
|
||||||
}
|
}
|
||||||
|
|
||||||
/* DV stream */
|
/* 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)
|
&rpcstatus) == 0 && rpcstatus == RPC_S_OK)
|
||||||
&& (UuidCompare (&pin_mediatype->mediatype->formattype,
|
&& (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",
|
mediacaps = gst_caps_new_simple ("video/x-dv",
|
||||||
"systemstream", G_TYPE_BOOLEAN, TRUE, NULL);
|
"systemstream", G_TYPE_BOOLEAN, TRUE, NULL);
|
||||||
|
|
4
sys/dshowsrcwrapper/gstdshowvideosrc.h
Normal file → Executable file
4
sys/dshowsrcwrapper/gstdshowvideosrc.h
Normal file → Executable file
|
@ -22,11 +22,13 @@
|
||||||
#ifndef __GST_DSHOWVIDEOSRC_H__
|
#ifndef __GST_DSHOWVIDEOSRC_H__
|
||||||
#define __GST_DSHOWVIDEOSRC_H__
|
#define __GST_DSHOWVIDEOSRC_H__
|
||||||
|
|
||||||
|
#include <glib.h>
|
||||||
#include <gst/gst.h>
|
#include <gst/gst.h>
|
||||||
#include <gst/base/gstpushsrc.h>
|
#include <gst/base/gstpushsrc.h>
|
||||||
#include <gst/interfaces/propertyprobe.h>
|
#include <gst/interfaces/propertyprobe.h>
|
||||||
|
|
||||||
#include "gstdshowsrcwrapper.h"
|
#include "gstdshow.h"
|
||||||
|
#include "gstdshowinterface.h"
|
||||||
|
|
||||||
// 30323449-0000-0010-8000-00AA00389B71 MEDIASUBTYPE_I420
|
// 30323449-0000-0010-8000-00AA00389B71 MEDIASUBTYPE_I420
|
||||||
DEFINE_GUID(MEDIASUBTYPE_I420, 0x30323449, 0x0000, 0x0010, 0x80, 0x00, 0x00, 0xAA, 0x00, 0x38, 0x9B, 0x71);
|
DEFINE_GUID(MEDIASUBTYPE_I420, 0x30323449, 0x0000, 0x0010, 0x80, 0x00, 0x00, 0xAA, 0x00, 0x38, 0x9B, 0x71);
|
||||||
|
|
8
sys/dshowsrcwrapper/libgstdshow.def
Executable file
8
sys/dshowsrcwrapper/libgstdshow.def
Executable file
|
@ -0,0 +1,8 @@
|
||||||
|
EXPORTS
|
||||||
|
DllMain PRIVATE
|
||||||
|
DllGetClassObject PRIVATE
|
||||||
|
DllCanUnloadNow PRIVATE
|
||||||
|
DllRegisterServer PRIVATE
|
||||||
|
DllUnregisterServer PRIVATE
|
||||||
|
|
||||||
|
|
|
@ -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
|
|
||||||
|
|
12
win32/vs6/gst_plugins_bad.dsw
Normal file → Executable file
12
win32/vs6/gst_plugins_bad.dsw
Normal file → Executable file
|
@ -39,18 +39,6 @@ Package=<4>
|
||||||
|
|
||||||
###############################################################################
|
###############################################################################
|
||||||
|
|
||||||
Project: "libgstdshowsrcwrapper"=".\libdshowsrcwrapper.dsp" - Package Owner=<4>
|
|
||||||
|
|
||||||
Package=<5>
|
|
||||||
{{{
|
|
||||||
}}}
|
|
||||||
|
|
||||||
Package=<4>
|
|
||||||
{{{
|
|
||||||
}}}
|
|
||||||
|
|
||||||
###############################################################################
|
|
||||||
|
|
||||||
Project: "libgstflv"=".\libgstflv.dsp" - Package Owner=<4>
|
Project: "libgstflv"=".\libgstflv.dsp" - Package Owner=<4>
|
||||||
|
|
||||||
Package=<5>
|
Package=<5>
|
||||||
|
|
|
@ -1,137 +0,0 @@
|
||||||
# Microsoft Developer Studio Project File - Name="libgstdshowsrcwrapper" - Package Owner=<4>
|
|
||||||
# Microsoft Developer Studio Generated Build File, Format Version 6.00
|
|
||||||
# ** DO NOT EDIT **
|
|
||||||
|
|
||||||
# TARGTYPE "Win32 (x86) Dynamic-Link Library" 0x0102
|
|
||||||
|
|
||||||
CFG=libgstdshowsrcwrapper - Win32 Debug
|
|
||||||
!MESSAGE This is not a valid makefile. To build this project using NMAKE,
|
|
||||||
!MESSAGE use the Export Makefile command and run
|
|
||||||
!MESSAGE
|
|
||||||
!MESSAGE NMAKE /f "libdshowsrcwrapper.mak".
|
|
||||||
!MESSAGE
|
|
||||||
!MESSAGE You can specify a configuration when running NMAKE
|
|
||||||
!MESSAGE by defining the macro CFG on the command line. For example:
|
|
||||||
!MESSAGE
|
|
||||||
!MESSAGE NMAKE /f "libdshowsrcwrapper.mak" CFG="libgstdshowsrcwrapper - Win32 Debug"
|
|
||||||
!MESSAGE
|
|
||||||
!MESSAGE Possible choices for configuration are:
|
|
||||||
!MESSAGE
|
|
||||||
!MESSAGE "libgstdshowsrcwrapper - Win32 Release" (based on "Win32 (x86) Dynamic-Link Library")
|
|
||||||
!MESSAGE "libgstdshowsrcwrapper - Win32 Debug" (based on "Win32 (x86) Dynamic-Link Library")
|
|
||||||
!MESSAGE
|
|
||||||
|
|
||||||
# Begin Project
|
|
||||||
# PROP AllowPerConfigDependencies 0
|
|
||||||
# PROP Scc_ProjName ""
|
|
||||||
# PROP Scc_LocalPath ""
|
|
||||||
CPP=cl.exe
|
|
||||||
MTL=midl.exe
|
|
||||||
RSC=rc.exe
|
|
||||||
|
|
||||||
!IF "$(CFG)" == "libgstdshowsrcwrapper - Win32 Release"
|
|
||||||
|
|
||||||
# PROP BASE Use_MFC 0
|
|
||||||
# PROP BASE Use_Debug_Libraries 0
|
|
||||||
# PROP BASE Output_Dir "Release"
|
|
||||||
# PROP BASE Intermediate_Dir "Release"
|
|
||||||
# PROP BASE Target_Dir ""
|
|
||||||
# PROP Use_MFC 0
|
|
||||||
# PROP Use_Debug_Libraries 0
|
|
||||||
# PROP Output_Dir "Release"
|
|
||||||
# PROP Intermediate_Dir "Release"
|
|
||||||
# PROP Ignore_Export_Lib 0
|
|
||||||
# PROP Target_Dir ""
|
|
||||||
# ADD BASE CPP /nologo /MT /W3 /GX /O2 /D "WIN32" /D "NDEBUG" /D "_WINDOWS" /D "_MBCS" /D "_USRDLL" /D "LIBGSTDSHOWSRCWRAPPER_EXPORTS" /YX /FD /c
|
|
||||||
# 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
|
|
||||||
# ADD BASE MTL /nologo /D "NDEBUG" /mktyplib203 /win32
|
|
||||||
# ADD MTL /nologo /D "NDEBUG" /mktyplib203 /win32
|
|
||||||
# ADD BASE RSC /l 0x40c /d "NDEBUG"
|
|
||||||
# ADD RSC /l 0x40c /d "NDEBUG"
|
|
||||||
BSC32=bscmake.exe
|
|
||||||
# ADD BASE BSC32 /nologo
|
|
||||||
# ADD BSC32 /nologo
|
|
||||||
LINK32=link.exe
|
|
||||||
# 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
|
|
||||||
# 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"
|
|
||||||
# Begin Special Build Tool
|
|
||||||
TargetPath=.\Release\libgstdshowsrcwrapper.dll
|
|
||||||
SOURCE="$(InputPath)"
|
|
||||||
PostBuild_Cmds=copy /Y $(TargetPath) c:\gstreamer\lib\gstreamer-0.10
|
|
||||||
# End Special Build Tool
|
|
||||||
|
|
||||||
!ELSEIF "$(CFG)" == "libgstdshowsrcwrapper - Win32 Debug"
|
|
||||||
|
|
||||||
# PROP BASE Use_MFC 0
|
|
||||||
# PROP BASE Use_Debug_Libraries 1
|
|
||||||
# PROP BASE Output_Dir "Debug"
|
|
||||||
# PROP BASE Intermediate_Dir "Debug"
|
|
||||||
# PROP BASE Target_Dir ""
|
|
||||||
# PROP Use_MFC 0
|
|
||||||
# PROP Use_Debug_Libraries 1
|
|
||||||
# PROP Output_Dir "Debug"
|
|
||||||
# PROP Intermediate_Dir "Debug"
|
|
||||||
# PROP Ignore_Export_Lib 0
|
|
||||||
# PROP Target_Dir ""
|
|
||||||
# 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
|
|
||||||
# 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
|
|
||||||
# ADD BASE MTL /nologo /D "_DEBUG" /mktyplib203 /win32
|
|
||||||
# ADD MTL /nologo /D "_DEBUG" /mktyplib203 /win32
|
|
||||||
# ADD BASE RSC /l 0x40c /d "_DEBUG"
|
|
||||||
# ADD RSC /l 0x40c /d "_DEBUG"
|
|
||||||
BSC32=bscmake.exe
|
|
||||||
# ADD BASE BSC32 /nologo
|
|
||||||
# ADD BSC32 /nologo
|
|
||||||
LINK32=link.exe
|
|
||||||
# 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
|
|
||||||
# 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"
|
|
||||||
# Begin Special Build Tool
|
|
||||||
TargetPath=.\Debug\libgstdshowsrcwrapper.dll
|
|
||||||
SOURCE="$(InputPath)"
|
|
||||||
PostBuild_Cmds=copy /Y $(TargetPath) c:\gstreamer\debug\lib\gstreamer-0.10
|
|
||||||
# End Special Build Tool
|
|
||||||
|
|
||||||
!ENDIF
|
|
||||||
|
|
||||||
# Begin Target
|
|
||||||
|
|
||||||
# Name "libgstdshowsrcwrapper - Win32 Release"
|
|
||||||
# Name "libgstdshowsrcwrapper - Win32 Debug"
|
|
||||||
# Begin Group "Source Files"
|
|
||||||
|
|
||||||
# PROP Default_Filter "cpp;c;cxx;rc;def;r;odl;idl;hpj;bat"
|
|
||||||
# Begin Source File
|
|
||||||
|
|
||||||
SOURCE=..\..\sys\dshowsrcwrapper\gstdshowaudiosrc.c
|
|
||||||
# End Source File
|
|
||||||
# Begin Source File
|
|
||||||
|
|
||||||
SOURCE=..\..\sys\dshowsrcwrapper\gstdshowsrcwrapper.c
|
|
||||||
# End Source File
|
|
||||||
# Begin Source File
|
|
||||||
|
|
||||||
SOURCE=..\..\sys\dshowsrcwrapper\gstdshowvideosrc.c
|
|
||||||
# End Source File
|
|
||||||
# End Group
|
|
||||||
# Begin Group "Header Files"
|
|
||||||
|
|
||||||
# PROP Default_Filter "h;hpp;hxx;hm;inl"
|
|
||||||
# Begin Source File
|
|
||||||
|
|
||||||
SOURCE=..\..\sys\dshowsrcwrapper\gstdshowaudiosrc.h
|
|
||||||
# End Source File
|
|
||||||
# Begin Source File
|
|
||||||
|
|
||||||
SOURCE=..\..\sys\dshowsrcwrapper\gstdshowsrcwrapper.h
|
|
||||||
# End Source File
|
|
||||||
# Begin Source File
|
|
||||||
|
|
||||||
SOURCE=..\..\sys\dshowsrcwrapper\gstdshowvideosrc.h
|
|
||||||
# End Source File
|
|
||||||
# End Group
|
|
||||||
# Begin Group "Resource Files"
|
|
||||||
|
|
||||||
# PROP Default_Filter "ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe"
|
|
||||||
# End Group
|
|
||||||
# End Target
|
|
||||||
# End Project
|
|
12
win32/vs8/gst-plugins-bad.sln
Normal file → Executable file
12
win32/vs8/gst-plugins-bad.sln
Normal file → Executable file
|
@ -1,23 +1,23 @@
|
||||||
Microsoft Visual Studio Solution File, Format Version 9.00
|
Microsoft Visual Studio Solution File, Format Version 9.00
|
||||||
# Visual Studio 2005
|
# 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}"
|
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "libgstdirectdraw", "libgstdirectdraw.vcproj", "{1594A623-5529-4B86-BD4A-694CF0BDB5C4}"
|
||||||
EndProject
|
EndProject
|
||||||
|
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "libgstdshowsrcwrapper", "libdshowsrcwrapper.vcproj", "{42EC1484-5031-4962-9E45-C990BB77EB37}"
|
||||||
|
EndProject
|
||||||
Global
|
Global
|
||||||
GlobalSection(SolutionConfigurationPlatforms) = preSolution
|
GlobalSection(SolutionConfigurationPlatforms) = preSolution
|
||||||
Debug|Win32 = Debug|Win32
|
Debug|Win32 = Debug|Win32
|
||||||
Release|Win32 = Release|Win32
|
Release|Win32 = Release|Win32
|
||||||
EndGlobalSection
|
EndGlobalSection
|
||||||
GlobalSection(ProjectConfigurationPlatforms) = postSolution
|
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.ActiveCfg = Debug|Win32
|
||||||
{1594A623-5529-4B86-BD4A-694CF0BDB5C4}.Debug|Win32.Build.0 = 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.ActiveCfg = Release|Win32
|
||||||
{1594A623-5529-4B86-BD4A-694CF0BDB5C4}.Release|Win32.Build.0 = Release|Win32
|
{1594A623-5529-4B86-BD4A-694CF0BDB5C4}.Release|Win32.Build.0 = Release|Win32
|
||||||
|
{42EC1484-5031-4962-9E45-C990BB77EB37}.Debug|Win32.ActiveCfg = Debug|Win32
|
||||||
|
{42EC1484-5031-4962-9E45-C990BB77EB37}.Debug|Win32.Build.0 = Debug|Win32
|
||||||
|
{42EC1484-5031-4962-9E45-C990BB77EB37}.Release|Win32.ActiveCfg = Release|Win32
|
||||||
|
{42EC1484-5031-4962-9E45-C990BB77EB37}.Release|Win32.Build.0 = Release|Win32
|
||||||
EndGlobalSection
|
EndGlobalSection
|
||||||
GlobalSection(SolutionProperties) = preSolution
|
GlobalSection(SolutionProperties) = preSolution
|
||||||
HideSolutionNode = FALSE
|
HideSolutionNode = FALSE
|
||||||
|
|
280
win32/vs8/libdshowsrcwrapper.vcproj
Executable file
280
win32/vs8/libdshowsrcwrapper.vcproj
Executable file
|
@ -0,0 +1,280 @@
|
||||||
|
<?xml version="1.0" encoding="Windows-1252"?>
|
||||||
|
<VisualStudioProject
|
||||||
|
ProjectType="Visual C++"
|
||||||
|
Version="8,00"
|
||||||
|
Name="libgstdshowsrcwrapper"
|
||||||
|
ProjectGUID="{42EC1484-5031-4962-9E45-C990BB77EB37}"
|
||||||
|
>
|
||||||
|
<Platforms>
|
||||||
|
<Platform
|
||||||
|
Name="Win32"
|
||||||
|
/>
|
||||||
|
</Platforms>
|
||||||
|
<ToolFiles>
|
||||||
|
</ToolFiles>
|
||||||
|
<Configurations>
|
||||||
|
<Configuration
|
||||||
|
Name="Release|Win32"
|
||||||
|
OutputDirectory=".\Release"
|
||||||
|
IntermediateDirectory=".\Release"
|
||||||
|
ConfigurationType="2"
|
||||||
|
InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC60.vsprops"
|
||||||
|
UseOfMFC="0"
|
||||||
|
ATLMinimizesCRunTimeLibraryUsage="false"
|
||||||
|
CharacterSet="0"
|
||||||
|
>
|
||||||
|
<Tool
|
||||||
|
Name="VCPreBuildEventTool"
|
||||||
|
/>
|
||||||
|
<Tool
|
||||||
|
Name="VCCustomBuildTool"
|
||||||
|
/>
|
||||||
|
<Tool
|
||||||
|
Name="VCXMLDataGeneratorTool"
|
||||||
|
/>
|
||||||
|
<Tool
|
||||||
|
Name="VCWebServiceProxyGeneratorTool"
|
||||||
|
/>
|
||||||
|
<Tool
|
||||||
|
Name="VCMIDLTool"
|
||||||
|
PreprocessorDefinitions="NDEBUG"
|
||||||
|
MkTypLibCompatible="true"
|
||||||
|
SuppressStartupBanner="true"
|
||||||
|
TargetEnvironment="1"
|
||||||
|
TypeLibraryName=".\Release/libdshowsrcwrapper.tlb"
|
||||||
|
HeaderFileName=""
|
||||||
|
/>
|
||||||
|
<Tool
|
||||||
|
Name="VCCLCompilerTool"
|
||||||
|
Optimization="2"
|
||||||
|
InlineFunctionExpansion="1"
|
||||||
|
AdditionalIncludeDirectories="C:\msys\1.0\local\include;C:\msys\1.0\local\include\libxml2;"C:\msys\1.0\local\include\glib-2.0";"C:\msys\1.0\local\lib\glib-2.0\include";"C:\msys\1.0\local\include\gstreamer-0.10";..\common;"C:\Program Files\Microsoft Platform SDK for Windows Server 2003 R2\Samples\Multimedia\DirectShow\BaseClasses""
|
||||||
|
PreprocessorDefinitions="NDEBUG;WIN32;_WINDOWS;_USRDLL;DSHOWSRCWRAPPER_EXPORTS;HAVE_CONFIG_H;COBJMACROS;_WIN32_DCOM;_CRT_SECURE_NO_DEPRECATE"
|
||||||
|
StringPooling="true"
|
||||||
|
RuntimeLibrary="2"
|
||||||
|
EnableFunctionLevelLinking="true"
|
||||||
|
PrecompiledHeaderFile=".\Release/libdshowsrcwrapper.pch"
|
||||||
|
AssemblerListingLocation=".\Release/"
|
||||||
|
ObjectFile=".\Release/"
|
||||||
|
ProgramDataBaseFileName=".\Release/"
|
||||||
|
WarningLevel="3"
|
||||||
|
SuppressStartupBanner="true"
|
||||||
|
/>
|
||||||
|
<Tool
|
||||||
|
Name="VCManagedResourceCompilerTool"
|
||||||
|
/>
|
||||||
|
<Tool
|
||||||
|
Name="VCResourceCompilerTool"
|
||||||
|
PreprocessorDefinitions="NDEBUG"
|
||||||
|
Culture="1036"
|
||||||
|
/>
|
||||||
|
<Tool
|
||||||
|
Name="VCPreLinkEventTool"
|
||||||
|
/>
|
||||||
|
<Tool
|
||||||
|
Name="VCLinkerTool"
|
||||||
|
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"
|
||||||
|
OutputFile="Release/libgstdshowsrcwrapper.dll"
|
||||||
|
LinkIncremental="1"
|
||||||
|
SuppressStartupBanner="true"
|
||||||
|
AdditionalLibraryDirectories="C:\msys\1.0\local\lib;"C:\Program Files\Microsoft Platform SDK for Windows Server 2003 R2\Lib";"C:\Program Files\Microsoft Platform SDK for Windows Server 2003 R2\Samples\Multimedia\DirectShow\BaseClasses\XP32_RETAIL""
|
||||||
|
ModuleDefinitionFile="..\..\sys\libgstdshow.def"
|
||||||
|
ProgramDatabaseFile=".\Release/libgstdshowsrcwrapper.pdb"
|
||||||
|
ImportLibrary=".\Release/libgstdshowsrcwrapper.lib"
|
||||||
|
TargetMachine="1"
|
||||||
|
/>
|
||||||
|
<Tool
|
||||||
|
Name="VCALinkTool"
|
||||||
|
/>
|
||||||
|
<Tool
|
||||||
|
Name="VCManifestTool"
|
||||||
|
/>
|
||||||
|
<Tool
|
||||||
|
Name="VCXDCMakeTool"
|
||||||
|
/>
|
||||||
|
<Tool
|
||||||
|
Name="VCBscMakeTool"
|
||||||
|
SuppressStartupBanner="true"
|
||||||
|
OutputFile=".\Release/libdshowsrcwrapper.bsc"
|
||||||
|
/>
|
||||||
|
<Tool
|
||||||
|
Name="VCFxCopTool"
|
||||||
|
/>
|
||||||
|
<Tool
|
||||||
|
Name="VCAppVerifierTool"
|
||||||
|
/>
|
||||||
|
<Tool
|
||||||
|
Name="VCWebDeploymentTool"
|
||||||
|
/>
|
||||||
|
<Tool
|
||||||
|
Name="VCPostBuildEventTool"
|
||||||
|
CommandLine="copy /Y Release\libgstdshowsrcwrapper.dll c:\msys\1.0\local\lib\gstreamer-0.10"
|
||||||
|
/>
|
||||||
|
</Configuration>
|
||||||
|
<Configuration
|
||||||
|
Name="Debug|Win32"
|
||||||
|
OutputDirectory=".\Debug"
|
||||||
|
IntermediateDirectory=".\Debug"
|
||||||
|
ConfigurationType="2"
|
||||||
|
InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC60.vsprops"
|
||||||
|
UseOfMFC="0"
|
||||||
|
ATLMinimizesCRunTimeLibraryUsage="false"
|
||||||
|
CharacterSet="0"
|
||||||
|
>
|
||||||
|
<Tool
|
||||||
|
Name="VCPreBuildEventTool"
|
||||||
|
/>
|
||||||
|
<Tool
|
||||||
|
Name="VCCustomBuildTool"
|
||||||
|
/>
|
||||||
|
<Tool
|
||||||
|
Name="VCXMLDataGeneratorTool"
|
||||||
|
/>
|
||||||
|
<Tool
|
||||||
|
Name="VCWebServiceProxyGeneratorTool"
|
||||||
|
/>
|
||||||
|
<Tool
|
||||||
|
Name="VCMIDLTool"
|
||||||
|
PreprocessorDefinitions="_DEBUG"
|
||||||
|
MkTypLibCompatible="true"
|
||||||
|
SuppressStartupBanner="true"
|
||||||
|
TargetEnvironment="1"
|
||||||
|
TypeLibraryName=".\Debug/libdshowsrcwrapper.tlb"
|
||||||
|
HeaderFileName=""
|
||||||
|
/>
|
||||||
|
<Tool
|
||||||
|
Name="VCCLCompilerTool"
|
||||||
|
Optimization="0"
|
||||||
|
AdditionalIncludeDirectories="C:\msys\1.0\local\include;C:\msys\1.0\local\include\libxml2;"C:\msys\1.0\local\include\glib-2.0";"C:\msys\1.0\local\lib\glib-2.0\include";"C:\msys\1.0\local\include\gstreamer-0.10";..\common;"C:\Program Files\Microsoft Platform SDK for Windows Server 2003 R2\Samples\Multimedia\DirectShow\BaseClasses""
|
||||||
|
PreprocessorDefinitions="_DEBUG;WIN32;_WINDOWS;_USRDLL;DSHOWSRCWRAPPER_EXPORTS;HAVE_CONFIG_H;COBJMACROS;_WIN32_DCOM;_CRT_SECURE_NO_DEPRECATE"
|
||||||
|
MinimalRebuild="true"
|
||||||
|
BasicRuntimeChecks="3"
|
||||||
|
RuntimeLibrary="3"
|
||||||
|
EnableEnhancedInstructionSet="2"
|
||||||
|
PrecompiledHeaderFile=".\Debug/libdshowsrcwrapper.pch"
|
||||||
|
AssemblerListingLocation=".\Debug/"
|
||||||
|
ObjectFile=".\Debug/"
|
||||||
|
ProgramDataBaseFileName=".\Debug/"
|
||||||
|
WarningLevel="3"
|
||||||
|
SuppressStartupBanner="true"
|
||||||
|
DebugInformationFormat="4"
|
||||||
|
/>
|
||||||
|
<Tool
|
||||||
|
Name="VCManagedResourceCompilerTool"
|
||||||
|
/>
|
||||||
|
<Tool
|
||||||
|
Name="VCResourceCompilerTool"
|
||||||
|
PreprocessorDefinitions="_DEBUG"
|
||||||
|
Culture="1036"
|
||||||
|
/>
|
||||||
|
<Tool
|
||||||
|
Name="VCPreLinkEventTool"
|
||||||
|
/>
|
||||||
|
<Tool
|
||||||
|
Name="VCLinkerTool"
|
||||||
|
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"
|
||||||
|
OutputFile="Debug/libgstdshowsrcwrapper.dll"
|
||||||
|
LinkIncremental="2"
|
||||||
|
SuppressStartupBanner="true"
|
||||||
|
AdditionalLibraryDirectories="C:\msys\1.0\local\lib;"C:\Program Files\Microsoft Platform SDK for Windows Server 2003 R2\Lib";"C:\Program Files\Microsoft Platform SDK for Windows Server 2003 R2\Samples\Multimedia\DirectShow\BaseClasses\XP32_DEBUG""
|
||||||
|
ModuleDefinitionFile="..\..\sys\libgstdshow.def"
|
||||||
|
GenerateDebugInformation="true"
|
||||||
|
ProgramDatabaseFile=".\Debug/libgstdshowsrcwrapper.pdb"
|
||||||
|
ImportLibrary=".\Debug/libgstdshowsrcwrapper.lib"
|
||||||
|
TargetMachine="1"
|
||||||
|
/>
|
||||||
|
<Tool
|
||||||
|
Name="VCALinkTool"
|
||||||
|
/>
|
||||||
|
<Tool
|
||||||
|
Name="VCManifestTool"
|
||||||
|
/>
|
||||||
|
<Tool
|
||||||
|
Name="VCXDCMakeTool"
|
||||||
|
/>
|
||||||
|
<Tool
|
||||||
|
Name="VCBscMakeTool"
|
||||||
|
SuppressStartupBanner="true"
|
||||||
|
OutputFile=".\Debug/libdshowsrcwrapper.bsc"
|
||||||
|
/>
|
||||||
|
<Tool
|
||||||
|
Name="VCFxCopTool"
|
||||||
|
/>
|
||||||
|
<Tool
|
||||||
|
Name="VCAppVerifierTool"
|
||||||
|
/>
|
||||||
|
<Tool
|
||||||
|
Name="VCWebDeploymentTool"
|
||||||
|
/>
|
||||||
|
<Tool
|
||||||
|
Name="VCPostBuildEventTool"
|
||||||
|
CommandLine="copy /Y Debug\libgstdshowsrcwrapper.dll c:\msys\1.0\local\lib\gstreamer-0.10"
|
||||||
|
/>
|
||||||
|
</Configuration>
|
||||||
|
</Configurations>
|
||||||
|
<References>
|
||||||
|
</References>
|
||||||
|
<Files>
|
||||||
|
<Filter
|
||||||
|
Name="Source Files"
|
||||||
|
Filter="cpp;c;cxx;rc;def;r;odl;idl;hpj;bat"
|
||||||
|
>
|
||||||
|
<File
|
||||||
|
RelativePath="..\..\sys\dshowsrcwrapper\gstdshow.cpp"
|
||||||
|
>
|
||||||
|
</File>
|
||||||
|
<File
|
||||||
|
RelativePath="..\..\sys\dshowsrcwrapper\gstdshowaudiosrc.c"
|
||||||
|
>
|
||||||
|
</File>
|
||||||
|
<File
|
||||||
|
RelativePath="..\..\sys\dshowsrcwrapper\gstdshowfakesink.cpp"
|
||||||
|
>
|
||||||
|
</File>
|
||||||
|
<File
|
||||||
|
RelativePath="..\..\sys\dshowsrcwrapper\gstdshowsrcwrapper.cpp"
|
||||||
|
>
|
||||||
|
</File>
|
||||||
|
<File
|
||||||
|
RelativePath="..\..\sys\dshowsrcwrapper\gstdshowvideosrc.c"
|
||||||
|
>
|
||||||
|
</File>
|
||||||
|
<File
|
||||||
|
RelativePath="..\..\sys\libgstdshow.def"
|
||||||
|
>
|
||||||
|
</File>
|
||||||
|
</Filter>
|
||||||
|
<Filter
|
||||||
|
Name="Header Files"
|
||||||
|
Filter="h;hpp;hxx;hm;inl"
|
||||||
|
>
|
||||||
|
<File
|
||||||
|
RelativePath="..\..\sys\dshowsrcwrapper\gstdshow.h"
|
||||||
|
>
|
||||||
|
</File>
|
||||||
|
<File
|
||||||
|
RelativePath="..\..\sys\dshowsrcwrapper\gstdshowaudiosrc.h"
|
||||||
|
>
|
||||||
|
</File>
|
||||||
|
<File
|
||||||
|
RelativePath="..\..\sys\dshowsrcwrapper\gstdshowfakesink.h"
|
||||||
|
>
|
||||||
|
</File>
|
||||||
|
<File
|
||||||
|
RelativePath="..\..\sys\dshowsrcwrapper\gstdshowinterface.h"
|
||||||
|
>
|
||||||
|
</File>
|
||||||
|
<File
|
||||||
|
RelativePath="..\..\sys\dshowsrcwrapper\gstdshowvideosrc.h"
|
||||||
|
>
|
||||||
|
</File>
|
||||||
|
</Filter>
|
||||||
|
<Filter
|
||||||
|
Name="Resource Files"
|
||||||
|
Filter="ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe"
|
||||||
|
>
|
||||||
|
</Filter>
|
||||||
|
</Files>
|
||||||
|
<Globals>
|
||||||
|
</Globals>
|
||||||
|
</VisualStudioProject>
|
Loading…
Reference in a new issue