Commit 4887da52 authored by Hidenori Takeshima's avatar Hidenori Takeshima Committed by Alexandre Julliard

Removed some code because of concerns over the Microsoft DirectX SDK

license agreement.
parent bcb9c46c
/*
* Implements dmoreg APIs.
*
* Copyright (C) Hidenori TAKESHIMA <hidenori@a2.ctktv.ne.jp>
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation; either
* version 2.1 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
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser 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
*
* FIXME - stub.
*/
#include "config.h"
#include "windef.h"
#include "winbase.h"
#include "wingdi.h"
#include "winuser.h"
#include "winreg.h"
#include "winerror.h"
#include "wine/obj_base.h"
#include "mediaobj.h"
#include "dmoreg.h"
#include "wine/debug.h"
WINE_DEFAULT_DEBUG_CHANNEL(msdmo);
/*
NOTE: You may build this dll as a native dll and
use with native non-DirectX8 environment(NT 4.0 etc).
*/
static const WCHAR wszDMOPath[] =
{'D','i','r','e','c','t','S','h','o','w','\\',
'M','e','d','i','a','O','b','j','e','c','t','s',0};
static const WCHAR wszDMOCatPath[] =
{'D','i','r','e','c','t','S','h','o','w','\\',
'M','e','d','i','a','O','b','j','e','c','t','s','\\',
'C','a','t','e','g','o','r','i','e','s',0};
static const WCHAR wszInputTypes[] =
{'I','n','p','u','t','T','y','p','e','s',0};
static const WCHAR wszOutputTypes[] =
{'O','u','t','p','u','t','T','y','p','e','s',0};
static const WCHAR QUARTZ_wszREG_SZ[] = {'R','E','G','_','S','Z',0};
/*************************************************************************/
static void QUARTZ_CatPathSepW( WCHAR* pBuf )
{
int len = lstrlenW(pBuf);
pBuf[len] = '\\';
pBuf[len+1] = 0;
}
static void QUARTZ_GUIDtoString( WCHAR* pBuf, const GUID* pguid )
{
/* W"{%08X-%04X-%04X-%02X%02X-%02X%02X%02X%02X%02X%02X}" */
static const WCHAR wszFmt[] =
{'{','%','0','8','X','-','%','0','4','X','-','%','0','4','X',
'-','%','0','2','X','%','0','2','X','-','%','0','2','X','%',
'0','2','X','%','0','2','X','%','0','2','X','%','0','2','X',
'%','0','2','X','}',0};
wsprintfW( pBuf, wszFmt,
pguid->Data1, pguid->Data2, pguid->Data3,
pguid->Data4[0], pguid->Data4[1],
pguid->Data4[2], pguid->Data4[3],
pguid->Data4[4], pguid->Data4[5],
pguid->Data4[6], pguid->Data4[7] );
}
static
LONG QUARTZ_RegOpenKeyW(
HKEY hkRoot, LPCWSTR lpszPath,
REGSAM rsAccess, HKEY* phKey,
BOOL fCreateKey )
{
DWORD dwDisp;
WCHAR wszREG_SZ[ sizeof(QUARTZ_wszREG_SZ)/sizeof(QUARTZ_wszREG_SZ[0]) ];
memcpy(wszREG_SZ,QUARTZ_wszREG_SZ,sizeof(QUARTZ_wszREG_SZ) );
if ( fCreateKey )
return RegCreateKeyExW(
hkRoot, lpszPath, 0, wszREG_SZ,
REG_OPTION_NON_VOLATILE, rsAccess, NULL, phKey, &dwDisp );
else
return RegOpenKeyExW(
hkRoot, lpszPath, 0, rsAccess, phKey );
}
static
LONG QUARTZ_RegSetValueString(
HKEY hKey, LPCWSTR lpszName, LPCWSTR lpValue )
{
return RegSetValueExW(
hKey, lpszName, 0, REG_SZ,
(const BYTE*)lpValue,
sizeof(lpValue[0]) * (lstrlenW(lpValue)+1) );
}
static
LONG QUARTZ_RegSetValueBinary(
HKEY hKey, LPCWSTR lpszName,
const BYTE* pData, int iLenOfData )
{
return RegSetValueExW(
hKey, lpszName, 0, REG_BINARY, pData, iLenOfData );
}
/*************************************************************************/
HRESULT WINAPI DMOEnum( REFGUID rguidCat, DWORD dwFlags, DWORD dwCountOfInTypes, const DMO_PARTIAL_MEDIATYPE* pInTypes, DWORD dwCountOfOutTypes, const DMO_PARTIAL_MEDIATYPE* pOutTypes, IEnumDMO** ppEnum )
{
FIXME( "stub!\n" );
return E_NOTIMPL;
}
HRESULT WINAPI DMOGetName( REFCLSID rclsid, WCHAR* pwszName )
{
FIXME( "stub!\n" );
return E_NOTIMPL;
}
HRESULT WINAPI DMOGetTypes( REFCLSID rclsid, unsigned long ulInputTypesReq, unsigned long* pulInputTypesRet, unsigned long ulOutputTypesReq, unsigned long* pulOutputTypesRet, const DMO_PARTIAL_MEDIATYPE* pOutTypes )
{
FIXME( "stub!\n" );
return E_NOTIMPL;
}
HRESULT WINAPI DMOGuidToStrA( void* pv1, void* pv2 )
{
FIXME( "(%p,%p) stub!\n", pv1, pv2 );
return E_NOTIMPL;
}
HRESULT WINAPI DMOGuidToStrW( void* pv1, void* pv2 )
{
FIXME( "(%p,%p) stub!\n", pv1, pv2 );
return E_NOTIMPL;
}
HRESULT WINAPI DMORegister( LPCWSTR pwszName, REFCLSID rclsid, REFGUID rguidCat, DWORD dwFlags, DWORD dwCountOfInTypes, const DMO_PARTIAL_MEDIATYPE* pInTypes, DWORD dwCountOfOutTypes, const DMO_PARTIAL_MEDIATYPE* pOutTypes )
{
HRESULT hr;
HKEY hKey;
WCHAR wszPath[1024];
FIXME( "() not tested!\n" );
hr = S_OK;
memcpy(wszPath,wszDMOPath,sizeof(wszDMOPath));
QUARTZ_CatPathSepW(wszPath);
QUARTZ_GUIDtoString(&wszPath[lstrlenW(wszPath)],rclsid);
if ( QUARTZ_RegOpenKeyW( HKEY_CLASSES_ROOT,
wszPath, KEY_ALL_ACCESS, &hKey, TRUE ) != ERROR_SUCCESS )
return E_FAIL;
if ( pwszName != NULL && QUARTZ_RegSetValueString(
hKey, NULL, pwszName ) != ERROR_SUCCESS )
hr = E_FAIL;
if ( dwCountOfInTypes > 0 && QUARTZ_RegSetValueBinary(
hKey, wszInputTypes, (const BYTE*)pInTypes,
dwCountOfInTypes * sizeof(DMO_PARTIAL_MEDIATYPE) ) != ERROR_SUCCESS )
hr = E_FAIL;
if ( dwCountOfOutTypes > 0 && QUARTZ_RegSetValueBinary(
hKey, wszOutputTypes, (const BYTE*)pOutTypes,
dwCountOfOutTypes * sizeof(DMO_PARTIAL_MEDIATYPE) ) != ERROR_SUCCESS )
hr = E_FAIL;
RegCloseKey( hKey );
if ( FAILED(hr) )
return hr;
memcpy(wszPath,wszDMOCatPath,sizeof(wszDMOCatPath));
QUARTZ_CatPathSepW(wszPath);
QUARTZ_GUIDtoString(&wszPath[lstrlenW(wszPath)],rguidCat);
QUARTZ_CatPathSepW(wszPath);
QUARTZ_GUIDtoString(&wszPath[lstrlenW(wszPath)],rclsid);
if ( QUARTZ_RegOpenKeyW( HKEY_CLASSES_ROOT,
wszPath, KEY_ALL_ACCESS, &hKey, TRUE ) != ERROR_SUCCESS )
return E_FAIL;
RegCloseKey( hKey );
if ( FAILED(hr) )
return hr;
return S_OK;
}
HRESULT WINAPI DMOStrToGuidA( void* pv1, void* pv2 )
{
FIXME( "(%p,%p) stub!\n", pv1, pv2 );
return E_NOTIMPL;
}
HRESULT WINAPI DMOStrToGuidW( void* pv1, void* pv2 )
{
FIXME( "(%p,%p) stub!\n", pv1, pv2 );
return E_NOTIMPL;
}
HRESULT WINAPI DMOUnregister( REFCLSID rclsid, REFGUID rguidCat )
{
FIXME( "stub!\n" );
return E_NOTIMPL;
}
/* Code removed because of Microsoft EULA concerns. */
/*
* Implements dmort APIs.
*
* Copyright (C) Hidenori TAKESHIMA <hidenori@a2.ctktv.ne.jp>
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation; either
* version 2.1 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
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser 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 "config.h"
#include "windef.h"
#include "winbase.h"
#include "winerror.h"
#include "wine/obj_base.h"
#include "mediaobj.h"
#include "dmort.h"
#include "wine/debug.h"
WINE_DEFAULT_DEBUG_CHANNEL(msdmo);
HRESULT WINAPI MoCopyMediaType( DMO_MEDIA_TYPE* pmtDst, const DMO_MEDIA_TYPE* pmtSrc )
{
FIXME( "() not tested\n" );
memcpy( &pmtDst->majortype, &pmtSrc->majortype, sizeof(GUID) );
memcpy( &pmtDst->subtype, &pmtSrc->subtype, sizeof(GUID) );
pmtDst->bFixedSizeSamples = pmtSrc->bFixedSizeSamples;
pmtDst->bTemporalCompression = pmtSrc->bTemporalCompression;
pmtDst->lSampleSize = pmtSrc->lSampleSize;
memcpy( &pmtDst->formattype, &pmtSrc->formattype, sizeof(GUID) );
pmtDst->pUnk = NULL;
pmtDst->cbFormat = pmtSrc->cbFormat;
pmtDst->pbFormat = NULL;
if ( pmtSrc->pbFormat != NULL && pmtSrc->cbFormat != 0 )
{
pmtDst->pbFormat = (BYTE*)CoTaskMemAlloc( pmtSrc->cbFormat );
if ( pmtDst->pbFormat == NULL )
{
return E_OUTOFMEMORY;
}
memcpy( pmtDst->pbFormat, pmtSrc->pbFormat, pmtSrc->cbFormat );
}
if ( pmtSrc->pUnk != NULL )
{
pmtDst->pUnk = pmtSrc->pUnk;
IUnknown_AddRef( pmtSrc->pUnk );
}
return S_OK;
}
HRESULT WINAPI MoCreateMediaType( DMO_MEDIA_TYPE** ppmt, DWORD cbFormat )
{
HRESULT hr;
DMO_MEDIA_TYPE* pmt;
FIXME( "() not tested\n" );
if ( ppmt == NULL )
return E_POINTER;
*ppmt = NULL;
pmt = (DMO_MEDIA_TYPE*)CoTaskMemAlloc( sizeof(DMO_MEDIA_TYPE) );
if ( pmt == NULL )
return E_OUTOFMEMORY;
hr = MoInitMediaType( pmt, cbFormat );
if ( FAILED(hr) )
return hr;
*ppmt = pmt;
return S_OK;
}
HRESULT WINAPI MoDeleteMediaType( DMO_MEDIA_TYPE* pmt )
{
FIXME( "() not tested\n" );
MoFreeMediaType( pmt );
CoTaskMemFree( pmt );
return S_OK;
}
HRESULT WINAPI MoDuplicateMediaType( DMO_MEDIA_TYPE** ppmtDest, const DMO_MEDIA_TYPE* pmtSrc )
{
HRESULT hr;
DMO_MEDIA_TYPE* pmtDup;
FIXME( "() not tested\n" );
if ( ppmtDest == NULL )
return E_POINTER;
*ppmtDest = NULL;
pmtDup = (DMO_MEDIA_TYPE*)CoTaskMemAlloc( sizeof(DMO_MEDIA_TYPE) );
if ( pmtDup == NULL )
return E_OUTOFMEMORY;
hr = MoCopyMediaType( pmtDup, pmtSrc );
if ( FAILED(hr) )
return hr;
*ppmtDest = pmtDup;
return S_OK;
}
HRESULT WINAPI MoFreeMediaType( DMO_MEDIA_TYPE* pmt )
{
FIXME( "() not tested\n" );
if ( pmt->pUnk != NULL )
{
IUnknown_Release( pmt->pUnk );
pmt->pUnk = NULL;
}
if ( pmt->pbFormat != NULL )
{
CoTaskMemFree( pmt->pbFormat );
pmt->cbFormat = 0;
pmt->pbFormat = NULL;
}
return S_OK;
}
HRESULT WINAPI MoInitMediaType( DMO_MEDIA_TYPE* pmt, DWORD cbFormat )
{
FIXME( "() not tested\n" );
memset( pmt, 0, sizeof(DMO_MEDIA_TYPE) );
pmt->pUnk = NULL;
if ( cbFormat > 0 )
{
pmt->pbFormat = (BYTE*)CoTaskMemAlloc( cbFormat );
if ( pmt->pbFormat == NULL )
return E_OUTOFMEMORY;
memset( pmt->pbFormat, 0, cbFormat );
}
pmt->cbFormat = cbFormat;
return S_OK;
}
/* Code removed because of Microsoft EULA concerns. */
name msdmo
type win32
import ole32.dll
import user32.dll
import advapi32.dll
import kernel32.dll
import ntdll.dll
debug_channels (msdmo)
debug_channels ()
@ stub DMOEnum
@ stub DMOGetName
......
......@@ -14,7 +14,6 @@ TODO
- handle plug-in distributor
- handle seeking
- implement some interfaces as plug-ins(???)
- implement ICM drivers (yuv converter)
- implement ACM drivers (g711)
- implement ACM wrapper (improve xform)
- implement mciqtz(mci driver for quartz)
......
......@@ -81,9 +81,9 @@ ICaptureGraphBuilder_fnSetFiltergraph(ICaptureGraphBuilder* iface,IGraphBuilder*
{
CCaptureGraph_THIS(iface,capgraph1);
TRACE("(%p)->()\n",This);
FIXME("(%p)->()\n",This);
return ICaptureGraphBuilder2_SetFiltergraph(CCaptureGraph_ICaptureGraphBuilder2(This),pgb);
return E_NOTIMPL;
}
static HRESULT WINAPI
......@@ -91,9 +91,9 @@ ICaptureGraphBuilder_fnGetFiltergraph(ICaptureGraphBuilder* iface,IGraphBuilder*
{
CCaptureGraph_THIS(iface,capgraph1);
TRACE("(%p)->()\n",This);
FIXME("(%p)->()\n",This);
return ICaptureGraphBuilder2_GetFiltergraph(CCaptureGraph_ICaptureGraphBuilder2(This),ppgb);
return E_NOTIMPL;
}
static HRESULT WINAPI
......@@ -141,9 +141,9 @@ ICaptureGraphBuilder_fnAllocCapFile(ICaptureGraphBuilder* iface,LPCOLESTR pName,
{
CCaptureGraph_THIS(iface,capgraph1);
TRACE("(%p)->()\n",This);
FIXME("(%p)->()\n",This);
return ICaptureGraphBuilder2_AllocCapFile(CCaptureGraph_ICaptureGraphBuilder2(This),pName,llSize);
return E_NOTIMPL;
}
static HRESULT WINAPI
......@@ -151,9 +151,9 @@ ICaptureGraphBuilder_fnCopyCaptureFile(ICaptureGraphBuilder* iface,LPOLESTR pOrg
{
CCaptureGraph_THIS(iface,capgraph1);
TRACE("(%p)->()\n",This);
FIXME("(%p)->()\n",This);
return ICaptureGraphBuilder2_CopyCaptureFile(CCaptureGraph_ICaptureGraphBuilder2(This),pOrgName,pNewName,fAllowEscAbort,pCallback);
return E_NOTIMPL;
}
static ICOM_VTABLE(ICaptureGraphBuilder) icapgraph1 =
......@@ -191,166 +191,6 @@ static void CCaptureGraph_UninitICaptureGraphBuilder( CCaptureGraph* This )
/***************************************************************************
*
* CCaptureGraph::ICaptureGraphBuilder2
*
*/
static HRESULT WINAPI
ICaptureGraphBuilder2_fnQueryInterface(ICaptureGraphBuilder2* iface,REFIID riid,void** ppobj)
{
CCaptureGraph_THIS(iface,capgraph2);
TRACE("(%p)->()\n",This);
return IUnknown_QueryInterface(This->unk.punkControl,riid,ppobj);
}
static ULONG WINAPI
ICaptureGraphBuilder2_fnAddRef(ICaptureGraphBuilder2* iface)
{
CCaptureGraph_THIS(iface,capgraph2);
TRACE("(%p)->()\n",This);
return IUnknown_AddRef(This->unk.punkControl);
}
static ULONG WINAPI
ICaptureGraphBuilder2_fnRelease(ICaptureGraphBuilder2* iface)
{
CCaptureGraph_THIS(iface,capgraph2);
TRACE("(%p)->()\n",This);
return IUnknown_Release(This->unk.punkControl);
}
static HRESULT WINAPI
ICaptureGraphBuilder2_fnSetFiltergraph(ICaptureGraphBuilder2* iface,IGraphBuilder* pgb)
{
CCaptureGraph_THIS(iface,capgraph2);
FIXME("(%p)->() stub!\n",This);
return E_NOTIMPL;
}
static HRESULT WINAPI
ICaptureGraphBuilder2_fnGetFiltergraph(ICaptureGraphBuilder2* iface,IGraphBuilder** ppgb)
{
CCaptureGraph_THIS(iface,capgraph2);
FIXME("(%p)->() stub!\n",This);
return E_NOTIMPL;
}
static HRESULT WINAPI
ICaptureGraphBuilder2_fnSetOutputFileName(ICaptureGraphBuilder2* iface,const GUID* pguid,LPCOLESTR pName,IBaseFilter** ppFilter,IFileSinkFilter** ppSink)
{
CCaptureGraph_THIS(iface,capgraph2);
FIXME("(%p)->() stub!\n",This);
return E_NOTIMPL;
}
static HRESULT WINAPI
ICaptureGraphBuilder2_fnFindInterface(ICaptureGraphBuilder2* iface,const GUID* pguidCat,const GUID* pguidType,IBaseFilter* pFilter,REFIID riid,void** ppvobj)
{
CCaptureGraph_THIS(iface,capgraph2);
FIXME("(%p)->() stub!\n",This);
return E_NOTIMPL;
}
static HRESULT WINAPI
ICaptureGraphBuilder2_fnRenderStream(ICaptureGraphBuilder2* iface,const GUID* pguidCat,const GUID* pguidType,IUnknown* pSource,IBaseFilter* pCompressor,IBaseFilter* pRenderer)
{
CCaptureGraph_THIS(iface,capgraph2);
FIXME("(%p)->() stub!\n",This);
return E_NOTIMPL;
}
static HRESULT WINAPI
ICaptureGraphBuilder2_fnControlStream(ICaptureGraphBuilder2* iface,const GUID* pguidCat,const GUID* pguidType,IBaseFilter* pFilter,REFERENCE_TIME* prtStart,REFERENCE_TIME* prtStop,WORD wStartCookie,WORD wStopCookie)
{
CCaptureGraph_THIS(iface,capgraph2);
FIXME("(%p)->() stub!\n",This);
return E_NOTIMPL;
}
static HRESULT WINAPI
ICaptureGraphBuilder2_fnAllocCapFile(ICaptureGraphBuilder2* iface,LPCOLESTR pName,DWORDLONG llSize)
{
CCaptureGraph_THIS(iface,capgraph2);
FIXME("(%p)->() stub!\n",This);
return E_NOTIMPL;
}
static HRESULT WINAPI
ICaptureGraphBuilder2_fnCopyCaptureFile(ICaptureGraphBuilder2* iface,LPOLESTR pOrgName,LPOLESTR pNewName,int fAllowEscAbort,IAMCopyCaptureFileProgress* pCallback)
{
CCaptureGraph_THIS(iface,capgraph2);
FIXME("(%p)->() stub!\n",This);
return E_NOTIMPL;
}
static HRESULT WINAPI
ICaptureGraphBuilder2_fnFindPin(ICaptureGraphBuilder2* iface,IUnknown* pSource,PIN_DIRECTION pindir,const GUID* pguidCat,const GUID* pguidType,BOOL bUnconnected,int num,IPin** ppPin)
{
CCaptureGraph_THIS(iface,capgraph2);
FIXME("(%p)->() stub!\n",This);
return E_NOTIMPL;
}
static ICOM_VTABLE(ICaptureGraphBuilder2) icapgraph2 =
{
ICOM_MSVTABLE_COMPAT_DummyRTTIVALUE
/* IUnknown fields */
ICaptureGraphBuilder2_fnQueryInterface,
ICaptureGraphBuilder2_fnAddRef,
ICaptureGraphBuilder2_fnRelease,
/* ICaptureGraphBuilder2 fields */
ICaptureGraphBuilder2_fnSetFiltergraph,
ICaptureGraphBuilder2_fnGetFiltergraph,
ICaptureGraphBuilder2_fnSetOutputFileName,
ICaptureGraphBuilder2_fnFindInterface,
ICaptureGraphBuilder2_fnRenderStream,
ICaptureGraphBuilder2_fnControlStream,
ICaptureGraphBuilder2_fnAllocCapFile,
ICaptureGraphBuilder2_fnCopyCaptureFile,
ICaptureGraphBuilder2_fnFindPin,
};
static HRESULT CCaptureGraph_InitICaptureGraphBuilder2( CCaptureGraph* This )
{
TRACE("(%p)\n",This);
ICOM_VTBL(&This->capgraph2) = &icapgraph2;
return NOERROR;
}
static void CCaptureGraph_UninitICaptureGraphBuilder2( CCaptureGraph* This )
{
TRACE("(%p)\n",This);
}
/***************************************************************************
*
* new/delete for CCaptureGraph
*
*/
......@@ -359,7 +199,6 @@ static void CCaptureGraph_UninitICaptureGraphBuilder2( CCaptureGraph* This )
static QUARTZ_IFEntry IFEntries[] =
{
{ &IID_ICaptureGraphBuilder, offsetof(CCaptureGraph,capgraph1)-offsetof(CCaptureGraph,unk) },
{ &IID_ICaptureGraphBuilder2, offsetof(CCaptureGraph,capgraph2)-offsetof(CCaptureGraph,unk) },
};
static void QUARTZ_DestroyCaptureGraph(IUnknown* punk)
......@@ -369,7 +208,6 @@ static void QUARTZ_DestroyCaptureGraph(IUnknown* punk)
TRACE( "(%p)\n", This );
CCaptureGraph_UninitICaptureGraphBuilder(This);
CCaptureGraph_UninitICaptureGraphBuilder2(This);
}
HRESULT QUARTZ_CreateCaptureGraph(IUnknown* punkOuter,void** ppobj)
......@@ -387,14 +225,6 @@ HRESULT QUARTZ_CreateCaptureGraph(IUnknown* punkOuter,void** ppobj)
pcg->m_pfg = NULL;
hr = CCaptureGraph_InitICaptureGraphBuilder(pcg);
if ( SUCCEEDED(hr) )
{
hr = CCaptureGraph_InitICaptureGraphBuilder2(pcg);
if ( FAILED(hr) )
{
CCaptureGraph_UninitICaptureGraphBuilder(pcg);
}
}
if ( FAILED(hr) )
{
......
......@@ -28,26 +28,18 @@ typedef struct CapGraph_ICaptureGraphBuilderImpl
ICOM_VFIELD(ICaptureGraphBuilder);
} CapGraph_ICaptureGraphBuilderImpl;
typedef struct CapGraph_ICaptureGraphBuilder2Impl
{
ICOM_VFIELD(ICaptureGraphBuilder2);
} CapGraph_ICaptureGraphBuilder2Impl;
typedef struct CCaptureGraph
{
QUARTZ_IUnkImpl unk;
CapGraph_ICaptureGraphBuilderImpl capgraph1;
CapGraph_ICaptureGraphBuilder2Impl capgraph2;
/* ICaptureGraphBuilder fields. */
/* ICaptureGraphBuilder2 fields. */
IGraphBuilder* m_pfg;
} CCaptureGraph;
#define CCaptureGraph_THIS(iface,member) CCaptureGraph* This = ((CCaptureGraph*)(((char*)iface)-offsetof(CCaptureGraph,member)))
#define CCaptureGraph_ICaptureGraphBuilder(th) ((ICaptureGraphBuilder*)&((th)->capgraph1))
#define CCaptureGraph_ICaptureGraphBuilder2(th) ((ICaptureGraphBuilder2*)&((th)->capgraph2))
HRESULT QUARTZ_CreateCaptureGraph(IUnknown* punkOuter,void** ppobj);
......
......@@ -77,8 +77,6 @@ static HRESULT FGEVENT_KeepEvent(
/*case EC_SHUTTING_DOWN:*/
case EC_CLOCK_CHANGED:
break;
case EC_PAUSED:
break;
case EC_OPENING_FILE:
break;
......@@ -109,31 +107,6 @@ static HRESULT FGEVENT_KeepEvent(
/*case EC_SEGMENT_STARTED:*/
case EC_LENGTH_CHANGED:
break;
case EC_DEVICE_LOST:
if ( bKeep )
{
if ( ((IUnknown*)lParam1) != NULL )
IUnknown_AddRef( (IUnknown*)lParam1 );
}
else
{
if ( ((IUnknown*)lParam1) != NULL )
IUnknown_Release( (IUnknown*)lParam1 );
}
break;
case EC_STEP_COMPLETE:
break;
case EC_SKIP_FRAMES:
break;
/*case EC_TIMECODE_AVAILABLE:*/
/*case EC_EXTDEVICE_MODE_CHANGE:*/
case EC_GRAPH_CHANGED:
break;
case EC_CLOCK_UNSET:
break;
default:
if ( lEventCode < EC_USER )
......
/*
* Implementation of IBasicAudio, IBasicVideo2, IVideoWindow for FilterGraph.
* Implementation of IBasicAudio, IBasicVideo, IVideoWindow for FilterGraph.
*
* Copyright (C) Hidenori TAKESHIMA <hidenori@a2.ctktv.ne.jp>
*
......@@ -73,12 +73,6 @@ static HRESULT CFilterGraph_QueryBasicVideo(
return CFilterGraph_QIFilters(This,&IID_IBasicVideo,(void**)ppVideo);
}
static HRESULT CFilterGraph_QueryBasicVideo2(
CFilterGraph* This, IBasicVideo2** ppVideo )
{
return CFilterGraph_QIFilters(This,&IID_IBasicVideo2,(void**)ppVideo);
}
static HRESULT CFilterGraph_QueryVideoWindow(
CFilterGraph* This, IVideoWindow** ppVidWin )
{
......@@ -262,7 +256,7 @@ void CFilterGraph_UninitIBasicAudio( CFilterGraph* pfg )
/***************************************************************************
*
* CFilterGraph::IBasicVideo2
* CFilterGraph::IBasicVideo
*
*/
......@@ -273,15 +267,9 @@ void CFilterGraph_UninitIBasicAudio( CFilterGraph* pfg )
hr = CFilterGraph_QueryBasicVideo( This, &pVideo ); \
if ( FAILED(hr) ) return hr;
#define QUERYBASICVIDEO2 \
IBasicVideo2* pVideo = NULL; \
HRESULT hr; \
hr = CFilterGraph_QueryBasicVideo2( This, &pVideo ); \
if ( FAILED(hr) ) return hr;
static HRESULT WINAPI
IBasicVideo2_fnQueryInterface(IBasicVideo2* iface,REFIID riid,void** ppobj)
IBasicVideo_fnQueryInterface(IBasicVideo* iface,REFIID riid,void** ppobj)
{
CFilterGraph_THIS(iface,basvid);
......@@ -291,7 +279,7 @@ IBasicVideo2_fnQueryInterface(IBasicVideo2* iface,REFIID riid,void** ppobj)
}
static ULONG WINAPI
IBasicVideo2_fnAddRef(IBasicVideo2* iface)
IBasicVideo_fnAddRef(IBasicVideo* iface)
{
CFilterGraph_THIS(iface,basvid);
......@@ -301,7 +289,7 @@ IBasicVideo2_fnAddRef(IBasicVideo2* iface)
}
static ULONG WINAPI
IBasicVideo2_fnRelease(IBasicVideo2* iface)
IBasicVideo_fnRelease(IBasicVideo* iface)
{
CFilterGraph_THIS(iface,basvid);
......@@ -311,7 +299,7 @@ IBasicVideo2_fnRelease(IBasicVideo2* iface)
}
static HRESULT WINAPI
IBasicVideo2_fnGetTypeInfoCount(IBasicVideo2* iface,UINT* pcTypeInfo)
IBasicVideo_fnGetTypeInfoCount(IBasicVideo* iface,UINT* pcTypeInfo)
{
CFilterGraph_THIS(iface,basvid);
......@@ -321,7 +309,7 @@ IBasicVideo2_fnGetTypeInfoCount(IBasicVideo2* iface,UINT* pcTypeInfo)
}
static HRESULT WINAPI
IBasicVideo2_fnGetTypeInfo(IBasicVideo2* iface,UINT iTypeInfo, LCID lcid, ITypeInfo** ppobj)
IBasicVideo_fnGetTypeInfo(IBasicVideo* iface,UINT iTypeInfo, LCID lcid, ITypeInfo** ppobj)
{
CFilterGraph_THIS(iface,basvid);
......@@ -331,7 +319,7 @@ IBasicVideo2_fnGetTypeInfo(IBasicVideo2* iface,UINT iTypeInfo, LCID lcid, ITypeI
}
static HRESULT WINAPI
IBasicVideo2_fnGetIDsOfNames(IBasicVideo2* iface,REFIID riid, LPOLESTR* ppwszName, UINT cNames, LCID lcid, DISPID* pDispId)
IBasicVideo_fnGetIDsOfNames(IBasicVideo* iface,REFIID riid, LPOLESTR* ppwszName, UINT cNames, LCID lcid, DISPID* pDispId)
{
CFilterGraph_THIS(iface,basvid);
......@@ -341,7 +329,7 @@ IBasicVideo2_fnGetIDsOfNames(IBasicVideo2* iface,REFIID riid, LPOLESTR* ppwszNam
}
static HRESULT WINAPI
IBasicVideo2_fnInvoke(IBasicVideo2* iface,DISPID DispId, REFIID riid, LCID lcid, WORD wFlags, DISPPARAMS* pDispParams, VARIANT* pVarRes, EXCEPINFO* pExcepInfo, UINT* puArgErr)
IBasicVideo_fnInvoke(IBasicVideo* iface,DISPID DispId, REFIID riid, LCID lcid, WORD wFlags, DISPPARAMS* pDispParams, VARIANT* pVarRes, EXCEPINFO* pExcepInfo, UINT* puArgErr)
{
CFilterGraph_THIS(iface,basvid);
......@@ -352,7 +340,7 @@ IBasicVideo2_fnInvoke(IBasicVideo2* iface,DISPID DispId, REFIID riid, LCID lcid,
static HRESULT WINAPI
IBasicVideo2_fnget_AvgTimePerFrame(IBasicVideo2* iface,REFTIME* prefTime)
IBasicVideo_fnget_AvgTimePerFrame(IBasicVideo* iface,REFTIME* prefTime)
{
CFilterGraph_THIS(iface,basvid);
QUERYBASICVIDEO
......@@ -365,7 +353,7 @@ IBasicVideo2_fnget_AvgTimePerFrame(IBasicVideo2* iface,REFTIME* prefTime)
}
static HRESULT WINAPI
IBasicVideo2_fnget_BitRate(IBasicVideo2* iface,long* plRate)
IBasicVideo_fnget_BitRate(IBasicVideo* iface,long* plRate)
{
CFilterGraph_THIS(iface,basvid);
QUERYBASICVIDEO
......@@ -378,7 +366,7 @@ IBasicVideo2_fnget_BitRate(IBasicVideo2* iface,long* plRate)
}
static HRESULT WINAPI
IBasicVideo2_fnget_BitErrorRate(IBasicVideo2* iface,long* plRate)
IBasicVideo_fnget_BitErrorRate(IBasicVideo* iface,long* plRate)
{
CFilterGraph_THIS(iface,basvid);
QUERYBASICVIDEO
......@@ -391,7 +379,7 @@ IBasicVideo2_fnget_BitErrorRate(IBasicVideo2* iface,long* plRate)
}
static HRESULT WINAPI
IBasicVideo2_fnget_VideoWidth(IBasicVideo2* iface,long* plWidth)
IBasicVideo_fnget_VideoWidth(IBasicVideo* iface,long* plWidth)
{
CFilterGraph_THIS(iface,basvid);
QUERYBASICVIDEO
......@@ -404,7 +392,7 @@ IBasicVideo2_fnget_VideoWidth(IBasicVideo2* iface,long* plWidth)
}
static HRESULT WINAPI
IBasicVideo2_fnget_VideoHeight(IBasicVideo2* iface,long* plHeight)
IBasicVideo_fnget_VideoHeight(IBasicVideo* iface,long* plHeight)
{
CFilterGraph_THIS(iface,basvid);
QUERYBASICVIDEO
......@@ -417,7 +405,7 @@ IBasicVideo2_fnget_VideoHeight(IBasicVideo2* iface,long* plHeight)
}
static HRESULT WINAPI
IBasicVideo2_fnput_SourceLeft(IBasicVideo2* iface,long lLeft)
IBasicVideo_fnput_SourceLeft(IBasicVideo* iface,long lLeft)
{
CFilterGraph_THIS(iface,basvid);
QUERYBASICVIDEO
......@@ -430,7 +418,7 @@ IBasicVideo2_fnput_SourceLeft(IBasicVideo2* iface,long lLeft)
}
static HRESULT WINAPI
IBasicVideo2_fnget_SourceLeft(IBasicVideo2* iface,long* plLeft)
IBasicVideo_fnget_SourceLeft(IBasicVideo* iface,long* plLeft)
{
CFilterGraph_THIS(iface,basvid);
QUERYBASICVIDEO
......@@ -443,7 +431,7 @@ IBasicVideo2_fnget_SourceLeft(IBasicVideo2* iface,long* plLeft)
}
static HRESULT WINAPI
IBasicVideo2_fnput_SourceWidth(IBasicVideo2* iface,long lWidth)
IBasicVideo_fnput_SourceWidth(IBasicVideo* iface,long lWidth)
{
CFilterGraph_THIS(iface,basvid);
QUERYBASICVIDEO
......@@ -456,7 +444,7 @@ IBasicVideo2_fnput_SourceWidth(IBasicVideo2* iface,long lWidth)
}
static HRESULT WINAPI
IBasicVideo2_fnget_SourceWidth(IBasicVideo2* iface,long* plWidth)
IBasicVideo_fnget_SourceWidth(IBasicVideo* iface,long* plWidth)
{
CFilterGraph_THIS(iface,basvid);
QUERYBASICVIDEO
......@@ -469,7 +457,7 @@ IBasicVideo2_fnget_SourceWidth(IBasicVideo2* iface,long* plWidth)
}
static HRESULT WINAPI
IBasicVideo2_fnput_SourceTop(IBasicVideo2* iface,long lTop)
IBasicVideo_fnput_SourceTop(IBasicVideo* iface,long lTop)
{
CFilterGraph_THIS(iface,basvid);
QUERYBASICVIDEO
......@@ -482,7 +470,7 @@ IBasicVideo2_fnput_SourceTop(IBasicVideo2* iface,long lTop)
}
static HRESULT WINAPI
IBasicVideo2_fnget_SourceTop(IBasicVideo2* iface,long* plTop)
IBasicVideo_fnget_SourceTop(IBasicVideo* iface,long* plTop)
{
CFilterGraph_THIS(iface,basvid);
QUERYBASICVIDEO
......@@ -495,7 +483,7 @@ IBasicVideo2_fnget_SourceTop(IBasicVideo2* iface,long* plTop)
}
static HRESULT WINAPI
IBasicVideo2_fnput_SourceHeight(IBasicVideo2* iface,long lHeight)
IBasicVideo_fnput_SourceHeight(IBasicVideo* iface,long lHeight)
{
CFilterGraph_THIS(iface,basvid);
QUERYBASICVIDEO
......@@ -508,7 +496,7 @@ IBasicVideo2_fnput_SourceHeight(IBasicVideo2* iface,long lHeight)
}
static HRESULT WINAPI
IBasicVideo2_fnget_SourceHeight(IBasicVideo2* iface,long* plHeight)
IBasicVideo_fnget_SourceHeight(IBasicVideo* iface,long* plHeight)
{
CFilterGraph_THIS(iface,basvid);
QUERYBASICVIDEO
......@@ -521,7 +509,7 @@ IBasicVideo2_fnget_SourceHeight(IBasicVideo2* iface,long* plHeight)
}
static HRESULT WINAPI
IBasicVideo2_fnput_DestinationLeft(IBasicVideo2* iface,long lLeft)
IBasicVideo_fnput_DestinationLeft(IBasicVideo* iface,long lLeft)
{
CFilterGraph_THIS(iface,basvid);
QUERYBASICVIDEO
......@@ -534,7 +522,7 @@ IBasicVideo2_fnput_DestinationLeft(IBasicVideo2* iface,long lLeft)
}
static HRESULT WINAPI
IBasicVideo2_fnget_DestinationLeft(IBasicVideo2* iface,long* plLeft)
IBasicVideo_fnget_DestinationLeft(IBasicVideo* iface,long* plLeft)
{
CFilterGraph_THIS(iface,basvid);
QUERYBASICVIDEO
......@@ -547,7 +535,7 @@ IBasicVideo2_fnget_DestinationLeft(IBasicVideo2* iface,long* plLeft)
}
static HRESULT WINAPI
IBasicVideo2_fnput_DestinationWidth(IBasicVideo2* iface,long lWidth)
IBasicVideo_fnput_DestinationWidth(IBasicVideo* iface,long lWidth)
{
CFilterGraph_THIS(iface,basvid);
QUERYBASICVIDEO
......@@ -560,7 +548,7 @@ IBasicVideo2_fnput_DestinationWidth(IBasicVideo2* iface,long lWidth)
}
static HRESULT WINAPI
IBasicVideo2_fnget_DestinationWidth(IBasicVideo2* iface,long* plWidth)
IBasicVideo_fnget_DestinationWidth(IBasicVideo* iface,long* plWidth)
{
CFilterGraph_THIS(iface,basvid);
QUERYBASICVIDEO
......@@ -573,7 +561,7 @@ IBasicVideo2_fnget_DestinationWidth(IBasicVideo2* iface,long* plWidth)
}
static HRESULT WINAPI
IBasicVideo2_fnput_DestinationTop(IBasicVideo2* iface,long lTop)
IBasicVideo_fnput_DestinationTop(IBasicVideo* iface,long lTop)
{
CFilterGraph_THIS(iface,basvid);
QUERYBASICVIDEO
......@@ -586,7 +574,7 @@ IBasicVideo2_fnput_DestinationTop(IBasicVideo2* iface,long lTop)
}
static HRESULT WINAPI
IBasicVideo2_fnget_DestinationTop(IBasicVideo2* iface,long* plTop)
IBasicVideo_fnget_DestinationTop(IBasicVideo* iface,long* plTop)
{
CFilterGraph_THIS(iface,basvid);
QUERYBASICVIDEO
......@@ -599,7 +587,7 @@ IBasicVideo2_fnget_DestinationTop(IBasicVideo2* iface,long* plTop)
}
static HRESULT WINAPI
IBasicVideo2_fnput_DestinationHeight(IBasicVideo2* iface,long lHeight)
IBasicVideo_fnput_DestinationHeight(IBasicVideo* iface,long lHeight)
{
CFilterGraph_THIS(iface,basvid);
QUERYBASICVIDEO
......@@ -612,7 +600,7 @@ IBasicVideo2_fnput_DestinationHeight(IBasicVideo2* iface,long lHeight)
}
static HRESULT WINAPI
IBasicVideo2_fnget_DestinationHeight(IBasicVideo2* iface,long* plHeight)
IBasicVideo_fnget_DestinationHeight(IBasicVideo* iface,long* plHeight)
{
CFilterGraph_THIS(iface,basvid);
QUERYBASICVIDEO
......@@ -625,7 +613,7 @@ IBasicVideo2_fnget_DestinationHeight(IBasicVideo2* iface,long* plHeight)
}
static HRESULT WINAPI
IBasicVideo2_fnSetSourcePosition(IBasicVideo2* iface,long lLeft,long lTop,long lWidth,long lHeight)
IBasicVideo_fnSetSourcePosition(IBasicVideo* iface,long lLeft,long lTop,long lWidth,long lHeight)
{
CFilterGraph_THIS(iface,basvid);
QUERYBASICVIDEO
......@@ -638,7 +626,7 @@ IBasicVideo2_fnSetSourcePosition(IBasicVideo2* iface,long lLeft,long lTop,long l
}
static HRESULT WINAPI
IBasicVideo2_fnGetSourcePosition(IBasicVideo2* iface,long* plLeft,long* plTop,long* plWidth,long* plHeight)
IBasicVideo_fnGetSourcePosition(IBasicVideo* iface,long* plLeft,long* plTop,long* plWidth,long* plHeight)
{
CFilterGraph_THIS(iface,basvid);
QUERYBASICVIDEO
......@@ -651,7 +639,7 @@ IBasicVideo2_fnGetSourcePosition(IBasicVideo2* iface,long* plLeft,long* plTop,lo
}
static HRESULT WINAPI
IBasicVideo2_fnSetDefaultSourcePosition(IBasicVideo2* iface)
IBasicVideo_fnSetDefaultSourcePosition(IBasicVideo* iface)
{
CFilterGraph_THIS(iface,basvid);
QUERYBASICVIDEO
......@@ -664,7 +652,7 @@ IBasicVideo2_fnSetDefaultSourcePosition(IBasicVideo2* iface)
}
static HRESULT WINAPI
IBasicVideo2_fnSetDestinationPosition(IBasicVideo2* iface,long lLeft,long lTop,long lWidth,long lHeight)
IBasicVideo_fnSetDestinationPosition(IBasicVideo* iface,long lLeft,long lTop,long lWidth,long lHeight)
{
CFilterGraph_THIS(iface,basvid);
QUERYBASICVIDEO
......@@ -677,7 +665,7 @@ IBasicVideo2_fnSetDestinationPosition(IBasicVideo2* iface,long lLeft,long lTop,l
}
static HRESULT WINAPI
IBasicVideo2_fnGetDestinationPosition(IBasicVideo2* iface,long* plLeft,long* plTop,long* plWidth,long* plHeight)
IBasicVideo_fnGetDestinationPosition(IBasicVideo* iface,long* plLeft,long* plTop,long* plWidth,long* plHeight)
{
CFilterGraph_THIS(iface,basvid);
QUERYBASICVIDEO
......@@ -690,7 +678,7 @@ IBasicVideo2_fnGetDestinationPosition(IBasicVideo2* iface,long* plLeft,long* plT
}
static HRESULT WINAPI
IBasicVideo2_fnSetDefaultDestinationPosition(IBasicVideo2* iface)
IBasicVideo_fnSetDefaultDestinationPosition(IBasicVideo* iface)
{
CFilterGraph_THIS(iface,basvid);
QUERYBASICVIDEO
......@@ -703,7 +691,7 @@ IBasicVideo2_fnSetDefaultDestinationPosition(IBasicVideo2* iface)
}
static HRESULT WINAPI
IBasicVideo2_fnGetVideoSize(IBasicVideo2* iface,long* plWidth,long* plHeight)
IBasicVideo_fnGetVideoSize(IBasicVideo* iface,long* plWidth,long* plHeight)
{
CFilterGraph_THIS(iface,basvid);
QUERYBASICVIDEO
......@@ -716,7 +704,7 @@ IBasicVideo2_fnGetVideoSize(IBasicVideo2* iface,long* plWidth,long* plHeight)
}
static HRESULT WINAPI
IBasicVideo2_fnGetVideoPaletteEntries(IBasicVideo2* iface,long lStart,long lCount,long* plRet,long* plPaletteEntry)
IBasicVideo_fnGetVideoPaletteEntries(IBasicVideo* iface,long lStart,long lCount,long* plRet,long* plPaletteEntry)
{
CFilterGraph_THIS(iface,basvid);
QUERYBASICVIDEO
......@@ -729,7 +717,7 @@ IBasicVideo2_fnGetVideoPaletteEntries(IBasicVideo2* iface,long lStart,long lCoun
}
static HRESULT WINAPI
IBasicVideo2_fnGetCurrentImage(IBasicVideo2* iface,long* plBufferSize,long* plDIBBuffer)
IBasicVideo_fnGetCurrentImage(IBasicVideo* iface,long* plBufferSize,long* plDIBBuffer)
{
CFilterGraph_THIS(iface,basvid);
QUERYBASICVIDEO
......@@ -742,7 +730,7 @@ IBasicVideo2_fnGetCurrentImage(IBasicVideo2* iface,long* plBufferSize,long* plDI
}
static HRESULT WINAPI
IBasicVideo2_fnIsUsingDefaultSource(IBasicVideo2* iface)
IBasicVideo_fnIsUsingDefaultSource(IBasicVideo* iface)
{
CFilterGraph_THIS(iface,basvid);
QUERYBASICVIDEO
......@@ -755,7 +743,7 @@ IBasicVideo2_fnIsUsingDefaultSource(IBasicVideo2* iface)
}
static HRESULT WINAPI
IBasicVideo2_fnIsUsingDefaultDestination(IBasicVideo2* iface)
IBasicVideo_fnIsUsingDefaultDestination(IBasicVideo* iface)
{
CFilterGraph_THIS(iface,basvid);
QUERYBASICVIDEO
......@@ -767,73 +755,57 @@ IBasicVideo2_fnIsUsingDefaultDestination(IBasicVideo2* iface)
return hr;
}
static HRESULT WINAPI
IBasicVideo2_fnGetPreferredAspectRatio(IBasicVideo2* iface,long* plRateX,long* plRateY)
{
CFilterGraph_THIS(iface,basvid);
QUERYBASICVIDEO2
TRACE("(%p)->()\n",This);
hr = IBasicVideo2_GetPreferredAspectRatio(pVideo,plRateX,plRateY);
IBasicVideo2_Release(pVideo);
return hr;
}
static ICOM_VTABLE(IBasicVideo2) ibasicvideo =
static ICOM_VTABLE(IBasicVideo) ibasicvideo =
{
ICOM_MSVTABLE_COMPAT_DummyRTTIVALUE
/* IUnknown fields */
IBasicVideo2_fnQueryInterface,
IBasicVideo2_fnAddRef,
IBasicVideo2_fnRelease,
IBasicVideo_fnQueryInterface,
IBasicVideo_fnAddRef,
IBasicVideo_fnRelease,
/* IDispatch fields */
IBasicVideo2_fnGetTypeInfoCount,
IBasicVideo2_fnGetTypeInfo,
IBasicVideo2_fnGetIDsOfNames,
IBasicVideo2_fnInvoke,
IBasicVideo_fnGetTypeInfoCount,
IBasicVideo_fnGetTypeInfo,
IBasicVideo_fnGetIDsOfNames,
IBasicVideo_fnInvoke,
/* IBasicVideo fields */
IBasicVideo2_fnget_AvgTimePerFrame,
IBasicVideo2_fnget_BitRate,
IBasicVideo2_fnget_BitErrorRate,
IBasicVideo2_fnget_VideoWidth,
IBasicVideo2_fnget_VideoHeight,
IBasicVideo2_fnput_SourceLeft,
IBasicVideo2_fnget_SourceLeft,
IBasicVideo2_fnput_SourceWidth,
IBasicVideo2_fnget_SourceWidth,
IBasicVideo2_fnput_SourceTop,
IBasicVideo2_fnget_SourceTop,
IBasicVideo2_fnput_SourceHeight,
IBasicVideo2_fnget_SourceHeight,
IBasicVideo2_fnput_DestinationLeft,
IBasicVideo2_fnget_DestinationLeft,
IBasicVideo2_fnput_DestinationWidth,
IBasicVideo2_fnget_DestinationWidth,
IBasicVideo2_fnput_DestinationTop,
IBasicVideo2_fnget_DestinationTop,
IBasicVideo2_fnput_DestinationHeight,
IBasicVideo2_fnget_DestinationHeight,
IBasicVideo2_fnSetSourcePosition,
IBasicVideo2_fnGetSourcePosition,
IBasicVideo2_fnSetDefaultSourcePosition,
IBasicVideo2_fnSetDestinationPosition,
IBasicVideo2_fnGetDestinationPosition,
IBasicVideo2_fnSetDefaultDestinationPosition,
IBasicVideo2_fnGetVideoSize,
IBasicVideo2_fnGetVideoPaletteEntries,
IBasicVideo2_fnGetCurrentImage,
IBasicVideo2_fnIsUsingDefaultSource,
IBasicVideo2_fnIsUsingDefaultDestination,
/* IBasicVideo2 fields */
IBasicVideo2_fnGetPreferredAspectRatio,
IBasicVideo_fnget_AvgTimePerFrame,
IBasicVideo_fnget_BitRate,
IBasicVideo_fnget_BitErrorRate,
IBasicVideo_fnget_VideoWidth,
IBasicVideo_fnget_VideoHeight,
IBasicVideo_fnput_SourceLeft,
IBasicVideo_fnget_SourceLeft,
IBasicVideo_fnput_SourceWidth,
IBasicVideo_fnget_SourceWidth,
IBasicVideo_fnput_SourceTop,
IBasicVideo_fnget_SourceTop,
IBasicVideo_fnput_SourceHeight,
IBasicVideo_fnget_SourceHeight,
IBasicVideo_fnput_DestinationLeft,
IBasicVideo_fnget_DestinationLeft,
IBasicVideo_fnput_DestinationWidth,
IBasicVideo_fnget_DestinationWidth,
IBasicVideo_fnput_DestinationTop,
IBasicVideo_fnget_DestinationTop,
IBasicVideo_fnput_DestinationHeight,
IBasicVideo_fnget_DestinationHeight,
IBasicVideo_fnSetSourcePosition,
IBasicVideo_fnGetSourcePosition,
IBasicVideo_fnSetDefaultSourcePosition,
IBasicVideo_fnSetDestinationPosition,
IBasicVideo_fnGetDestinationPosition,
IBasicVideo_fnSetDefaultDestinationPosition,
IBasicVideo_fnGetVideoSize,
IBasicVideo_fnGetVideoPaletteEntries,
IBasicVideo_fnGetCurrentImage,
IBasicVideo_fnIsUsingDefaultSource,
IBasicVideo_fnIsUsingDefaultDestination,
};
HRESULT CFilterGraph_InitIBasicVideo2( CFilterGraph* pfg )
HRESULT CFilterGraph_InitIBasicVideo( CFilterGraph* pfg )
{
TRACE("(%p)\n",pfg);
ICOM_VTBL(&pfg->basvid) = &ibasicvideo;
......@@ -841,12 +813,11 @@ HRESULT CFilterGraph_InitIBasicVideo2( CFilterGraph* pfg )
return NOERROR;
}
void CFilterGraph_UninitIBasicVideo2( CFilterGraph* pfg )
void CFilterGraph_UninitIBasicVideo( CFilterGraph* pfg )
{
TRACE("(%p)\n",pfg);
}
#undef QUERYBASICVIDEO2
#undef QUERYBASICVIDEO
/***************************************************************************
......
......@@ -50,7 +50,6 @@ static QUARTZ_IFEntry IFEntries[] =
{ &IID_IGraphBuilder, offsetof(CFilterGraph,fgraph)-offsetof(CFilterGraph,unk) },
{ &IID_IFilterGraph2, offsetof(CFilterGraph,fgraph)-offsetof(CFilterGraph,unk) },
{ &IID_IGraphVersion, offsetof(CFilterGraph,graphversion)-offsetof(CFilterGraph,unk) },
{ &IID_IGraphConfig, offsetof(CFilterGraph,grphconf)-offsetof(CFilterGraph,unk) },
{ &IID_IMediaControl, offsetof(CFilterGraph,mediacontrol)-offsetof(CFilterGraph,unk) },
{ &IID_IMediaFilter, offsetof(CFilterGraph,mediafilter)-offsetof(CFilterGraph,unk) },
{ &IID_IMediaEvent, offsetof(CFilterGraph,mediaevent)-offsetof(CFilterGraph,unk) },
......@@ -59,10 +58,8 @@ static QUARTZ_IFEntry IFEntries[] =
{ &IID_IMediaPosition, offsetof(CFilterGraph,mediaposition)-offsetof(CFilterGraph,unk) },
{ &IID_IMediaSeeking, offsetof(CFilterGraph,mediaseeking)-offsetof(CFilterGraph,unk) },
{ &IID_IBasicVideo, offsetof(CFilterGraph,basvid)-offsetof(CFilterGraph,unk) },
{ &IID_IBasicVideo2, offsetof(CFilterGraph,basvid)-offsetof(CFilterGraph,unk) },
{ &IID_IBasicAudio, offsetof(CFilterGraph,basaud)-offsetof(CFilterGraph,unk) },
{ &IID_IVideoWindow, offsetof(CFilterGraph,vidwin)-offsetof(CFilterGraph,unk) },
{ &IID_IAMStats, offsetof(CFilterGraph,amstats)-offsetof(CFilterGraph,unk) },
};
......@@ -80,17 +77,15 @@ static const struct FGInitEntry FGRAPH_Init[] =
FGENT(IDispatch)
FGENT(IFilterGraph2)
FGENT(IGraphVersion)
FGENT(IGraphConfig)
FGENT(IMediaControl)
FGENT(IMediaFilter)
FGENT(IMediaEventEx)
FGENT(IMediaEventSink)
FGENT(IMediaPosition)
FGENT(IMediaSeeking)
FGENT(IBasicVideo2)
FGENT(IBasicVideo)
FGENT(IBasicAudio)
FGENT(IVideoWindow)
FGENT(IAMStats)
#undef FGENT
{ NULL, NULL },
......@@ -342,175 +337,5 @@ void CFilterGraph_UninitIDispatch( CFilterGraph* pfg )
TRACE("(%p)\n",pfg);
}
/***************************************************************************
*
* CFilterGraph::IAMStats
*
*/
static HRESULT WINAPI
IAMStats_fnQueryInterface(IAMStats* iface,REFIID riid,void** ppobj)
{
CFilterGraph_THIS(iface,amstats);
TRACE("(%p)->()\n",This);
return IUnknown_QueryInterface(This->unk.punkControl,riid,ppobj);
}
static ULONG WINAPI
IAMStats_fnAddRef(IAMStats* iface)
{
CFilterGraph_THIS(iface,amstats);
TRACE("(%p)->()\n",This);
return IUnknown_AddRef(This->unk.punkControl);
}
static ULONG WINAPI
IAMStats_fnRelease(IAMStats* iface)
{
CFilterGraph_THIS(iface,amstats);
TRACE("(%p)->()\n",This);
return IUnknown_Release(This->unk.punkControl);
}
static HRESULT WINAPI
IAMStats_fnGetTypeInfoCount(IAMStats* iface,UINT* pcTypeInfo)
{
CFilterGraph_THIS(iface,amstats);
FIXME("(%p)->()\n",This);
return E_NOTIMPL;
}
static HRESULT WINAPI
IAMStats_fnGetTypeInfo(IAMStats* iface,UINT iTypeInfo, LCID lcid, ITypeInfo** ppobj)
{
CFilterGraph_THIS(iface,amstats);
FIXME("(%p)->()\n",This);
return E_NOTIMPL;
}
static HRESULT WINAPI
IAMStats_fnGetIDsOfNames(IAMStats* iface,REFIID riid, LPOLESTR* ppwszName, UINT cNames, LCID lcid, DISPID* pDispId)
{
CFilterGraph_THIS(iface,amstats);
FIXME("(%p)->()\n",This);
return E_NOTIMPL;
}
static HRESULT WINAPI
IAMStats_fnInvoke(IAMStats* iface,DISPID DispId, REFIID riid, LCID lcid, WORD wFlags, DISPPARAMS* pDispParams, VARIANT* pVarRes, EXCEPINFO* pExcepInfo, UINT* puArgErr)
{
CFilterGraph_THIS(iface,amstats);
FIXME("(%p)->()\n",This);
return E_NOTIMPL;
}
static HRESULT WINAPI
IAMStats_fnReset(IAMStats* iface)
{
CFilterGraph_THIS(iface,amstats);
FIXME("(%p) stub\n",This);
return E_NOTIMPL;
}
static HRESULT WINAPI
IAMStats_fnget_Count(IAMStats* iface,long* plCount)
{
CFilterGraph_THIS(iface,amstats);
FIXME("(%p,%p) stub\n",This,plCount);
if ( plCount == NULL )
return E_POINTER;
*plCount = 0;
return E_NOTIMPL;
}
static HRESULT WINAPI
IAMStats_fnGetValueByIndex(IAMStats* iface,long lIndex,BSTR* pbstrName,long* lCount,double* pdblLast,double* pdblAverage,double* pdblStdDev,double* pdblMin,double* pdblMax)
{
CFilterGraph_THIS(iface,amstats);
FIXME("(%p) stub\n",This);
return E_NOTIMPL;
}
static HRESULT WINAPI
IAMStats_fnGetValueByName(IAMStats* iface,BSTR bstrName,long* plIndex,long* plCount,double* pdblLast,double* pdblAverage,double* pdblStdDev,double* pdblMin,double* pdblMax)
{
CFilterGraph_THIS(iface,amstats);
FIXME("(%p) stub\n",This);
return E_NOTIMPL;
}
static HRESULT WINAPI
IAMStats_fnGetIndex(IAMStats* iface,BSTR bstrName,long lCreate,long* plIndex)
{
CFilterGraph_THIS(iface,amstats);
FIXME("(%p) stub\n",This);
return E_NOTIMPL;
}
static HRESULT WINAPI
IAMStats_fnAddValue(IAMStats* iface,long lIndex,double dValue)
{
CFilterGraph_THIS(iface,amstats);
FIXME("(%p) stub\n",This);
return E_NOTIMPL;
}
static ICOM_VTABLE(IAMStats) iamstats =
{
ICOM_MSVTABLE_COMPAT_DummyRTTIVALUE
/* IUnknown fields */
IAMStats_fnQueryInterface,
IAMStats_fnAddRef,
IAMStats_fnRelease,
/* IDispatch fields */
IAMStats_fnGetTypeInfoCount,
IAMStats_fnGetTypeInfo,
IAMStats_fnGetIDsOfNames,
IAMStats_fnInvoke,
/* IAMStats fields */
IAMStats_fnReset,
IAMStats_fnget_Count,
IAMStats_fnGetValueByIndex,
IAMStats_fnGetValueByName,
IAMStats_fnGetIndex,
IAMStats_fnAddValue,
};
HRESULT CFilterGraph_InitIAMStats( CFilterGraph* pfg )
{
TRACE("(%p)\n",pfg);
ICOM_VTBL(&pfg->amstats) = &iamstats;
return NOERROR;
}
void CFilterGraph_UninitIAMStats( CFilterGraph* pfg )
{
TRACE("(%p)\n",pfg);
}
......@@ -36,13 +36,12 @@
+ IMediaEventSink
+ IDispatch - IMediaPosition
+ IMediaSeeking
+ IDispatch - IBasicVideo[2] (pass to a renderer)
+ IDispatch - IBasicVideo (pass to a renderer)
+ IDispatch - IBasicAudio (pass to a renderer)
+ IDispatch - IVideoWindow (pass to a renderer)
+ IDispatch - IAMStats
(following interfaces are not implemented)
+ IMarshal
+ IFilterMapper2 - IFilterMapper3
+ IFilterMapper2
FIXME - Are there any missing interfaces???
*/
......@@ -70,11 +69,6 @@ typedef struct FG_IGraphVersionImpl
ICOM_VFIELD(IGraphVersion);
} FG_IGraphVersionImpl;
typedef struct FG_IGraphConfigImpl
{
ICOM_VFIELD(IGraphConfig);
} FG_IGraphConfigImpl;
typedef struct FG_IMediaControlImpl
{
ICOM_VFIELD(IMediaControl);
......@@ -107,7 +101,7 @@ typedef struct FG_IMediaSeekingImpl
typedef struct FG_IBasicVideoImpl
{
ICOM_VFIELD(IBasicVideo2);
ICOM_VFIELD(IBasicVideo);
} FG_IBasicVideoImpl;
typedef struct FG_IBasicAudioImpl
......@@ -120,11 +114,6 @@ typedef struct FG_IVideoWindowImpl
ICOM_VFIELD(IVideoWindow);
} FG_IVideoWindowImpl;
typedef struct FG_IAMStatsImpl
{
ICOM_VFIELD(IAMStats);
} FG_IAMStatsImpl;
typedef struct FG_FilterData
{
......@@ -144,7 +133,6 @@ typedef struct CFilterGraph
FG_IDispatchImpl disp;
FG_IFilterGraph2Impl fgraph;
FG_IGraphVersionImpl graphversion;
FG_IGraphConfigImpl grphconf;
FG_IMediaControlImpl mediacontrol;
FG_IMediaFilterImpl mediafilter;
FG_IMediaEventImpl mediaevent;
......@@ -154,7 +142,6 @@ typedef struct CFilterGraph
FG_IBasicVideoImpl basvid;
FG_IBasicAudioImpl basaud;
FG_IVideoWindowImpl vidwin;
FG_IAMStatsImpl amstats;
/* IDispatch fields. */
/* IFilterGraph2 fields. */
......@@ -183,10 +170,9 @@ typedef struct CFilterGraph
/* IMediaEventSink fields. */
/* IMediaPosition fields. */
/* IMediaSeeking fields. */
/* IBasicVideo2 fields. */
/* IBasicVideo fields. */
/* IBasicAudio fields. */
/* IVideoWindow fields. */
/* IAMStats fields. */
} CFilterGraph;
#define CFilterGraph_THIS(iface,member) CFilterGraph* This = ((CFilterGraph*)(((char*)iface)-offsetof(CFilterGraph,member)))
......@@ -208,8 +194,6 @@ HRESULT CFilterGraph_InitIFilterGraph2( CFilterGraph* pfg );
void CFilterGraph_UninitIFilterGraph2( CFilterGraph* pfg );
HRESULT CFilterGraph_InitIGraphVersion( CFilterGraph* pfg );
void CFilterGraph_UninitIGraphVersion( CFilterGraph* pfg );
HRESULT CFilterGraph_InitIGraphConfig( CFilterGraph* pfg );
void CFilterGraph_UninitIGraphConfig( CFilterGraph* pfg );
HRESULT CFilterGraph_InitIMediaControl( CFilterGraph* pfg );
void CFilterGraph_UninitIMediaControl( CFilterGraph* pfg );
HRESULT CFilterGraph_InitIMediaFilter( CFilterGraph* pfg );
......@@ -222,14 +206,12 @@ HRESULT CFilterGraph_InitIMediaPosition( CFilterGraph* pfg );
void CFilterGraph_UninitIMediaPosition( CFilterGraph* pfg );
HRESULT CFilterGraph_InitIMediaSeeking( CFilterGraph* pfg );
void CFilterGraph_UninitIMediaSeeking( CFilterGraph* pfg );
HRESULT CFilterGraph_InitIBasicVideo2( CFilterGraph* pfg );
void CFilterGraph_UninitIBasicVideo2( CFilterGraph* pfg );
HRESULT CFilterGraph_InitIBasicVideo( CFilterGraph* pfg );
void CFilterGraph_UninitIBasicVideo( CFilterGraph* pfg );
HRESULT CFilterGraph_InitIBasicAudio( CFilterGraph* pfg );
void CFilterGraph_UninitIBasicAudio( CFilterGraph* pfg );
HRESULT CFilterGraph_InitIVideoWindow( CFilterGraph* pfg );
void CFilterGraph_UninitIVideoWindow( CFilterGraph* pfg );
HRESULT CFilterGraph_InitIAMStats( CFilterGraph* pfg );
void CFilterGraph_UninitIAMStats( CFilterGraph* pfg );
#endif /* WINE_DSHOW_FGRAPH_H */
......@@ -658,8 +658,7 @@ void CFilterMapper_UninitIFilterMapper( CFilterMapper* pfm )
/* can I use offsetof safely? - FIXME? */
static QUARTZ_IFEntry FMap2IFEntries[] =
{
{ &IID_IFilterMapper2, offsetof(CFilterMapper2,fmap3)-offsetof(CFilterMapper2,unk) },
{ &IID_IFilterMapper3, offsetof(CFilterMapper2,fmap3)-offsetof(CFilterMapper2,unk) },
{ &IID_IFilterMapper2, offsetof(CFilterMapper2,fmap2)-offsetof(CFilterMapper2,unk) },
};
......@@ -667,7 +666,7 @@ static void QUARTZ_DestroyFilterMapper2(IUnknown* punk)
{
CFilterMapper2_THIS(punk,unk);
CFilterMapper2_UninitIFilterMapper3( This );
CFilterMapper2_UninitIFilterMapper2( This );
}
HRESULT QUARTZ_CreateFilterMapper2(IUnknown* punkOuter,void** ppobj)
......@@ -682,7 +681,7 @@ HRESULT QUARTZ_CreateFilterMapper2(IUnknown* punkOuter,void** ppobj)
return E_OUTOFMEMORY;
QUARTZ_IUnkInit( &pfm->unk, punkOuter );
hr = CFilterMapper2_InitIFilterMapper3( pfm );
hr = CFilterMapper2_InitIFilterMapper2( pfm );
if ( FAILED(hr) )
{
QUARTZ_FreeObj( pfm );
......@@ -700,15 +699,15 @@ HRESULT QUARTZ_CreateFilterMapper2(IUnknown* punkOuter,void** ppobj)
/***************************************************************************
*
* CLSID_FilterMapper2::IFilterMapper3
* CLSID_FilterMapper2::IFilterMapper2
*
*/
static HRESULT WINAPI
IFilterMapper3_fnQueryInterface(IFilterMapper3* iface,REFIID riid,void** ppobj)
IFilterMapper2_fnQueryInterface(IFilterMapper2* iface,REFIID riid,void** ppobj)
{
CFilterMapper2_THIS(iface,fmap3);
CFilterMapper2_THIS(iface,fmap2);
TRACE("(%p)->()\n",This);
......@@ -716,9 +715,9 @@ IFilterMapper3_fnQueryInterface(IFilterMapper3* iface,REFIID riid,void** ppobj)
}
static ULONG WINAPI
IFilterMapper3_fnAddRef(IFilterMapper3* iface)
IFilterMapper2_fnAddRef(IFilterMapper2* iface)
{
CFilterMapper2_THIS(iface,fmap3);
CFilterMapper2_THIS(iface,fmap2);
TRACE("(%p)->()\n",This);
......@@ -726,9 +725,9 @@ IFilterMapper3_fnAddRef(IFilterMapper3* iface)
}
static ULONG WINAPI
IFilterMapper3_fnRelease(IFilterMapper3* iface)
IFilterMapper2_fnRelease(IFilterMapper2* iface)
{
CFilterMapper2_THIS(iface,fmap3);
CFilterMapper2_THIS(iface,fmap2);
TRACE("(%p)->()\n",This);
......@@ -736,9 +735,9 @@ IFilterMapper3_fnRelease(IFilterMapper3* iface)
}
static HRESULT WINAPI
IFilterMapper3_fnCreateCategory(IFilterMapper3* iface,REFCLSID rclsidCategory,DWORD dwMerit,LPCWSTR lpwszDesc)
IFilterMapper2_fnCreateCategory(IFilterMapper2* iface,REFCLSID rclsidCategory,DWORD dwMerit,LPCWSTR lpwszDesc)
{
CFilterMapper2_THIS(iface,fmap3);
CFilterMapper2_THIS(iface,fmap2);
FIXME("(%p)->(%s,%lu,%s) stub!\n",This,
debugstr_guid(rclsidCategory),
......@@ -749,9 +748,9 @@ IFilterMapper3_fnCreateCategory(IFilterMapper3* iface,REFCLSID rclsidCategory,DW
static HRESULT WINAPI
IFilterMapper3_fnUnregisterFilter(IFilterMapper3* iface,const CLSID* pclsidCategory,const OLECHAR* lpwszInst,REFCLSID rclsidFilter)
IFilterMapper2_fnUnregisterFilter(IFilterMapper2* iface,const CLSID* pclsidCategory,const OLECHAR* lpwszInst,REFCLSID rclsidFilter)
{
CFilterMapper2_THIS(iface,fmap3);
CFilterMapper2_THIS(iface,fmap2);
WCHAR* pwszPath = NULL;
HRESULT hr;
......@@ -776,9 +775,9 @@ IFilterMapper3_fnUnregisterFilter(IFilterMapper3* iface,const CLSID* pclsidCateg
static HRESULT WINAPI
IFilterMapper3_fnRegisterFilter(IFilterMapper3* iface,REFCLSID rclsidFilter,LPCWSTR lpName,IMoniker** ppMoniker,const CLSID* pclsidCategory,const OLECHAR* lpwszInst,const REGFILTER2* pRF2)
IFilterMapper2_fnRegisterFilter(IFilterMapper2* iface,REFCLSID rclsidFilter,LPCWSTR lpName,IMoniker** ppMoniker,const CLSID* pclsidCategory,const OLECHAR* lpwszInst,const REGFILTER2* pRF2)
{
CFilterMapper2_THIS(iface,fmap3);
CFilterMapper2_THIS(iface,fmap2);
WCHAR* pwszPath = NULL;
IMoniker* pMoniker = NULL;
BYTE* pFilterData = NULL;
......@@ -843,12 +842,12 @@ err:
static HRESULT WINAPI
IFilterMapper3_fnEnumMatchingFilters(IFilterMapper3* iface,
IFilterMapper2_fnEnumMatchingFilters(IFilterMapper2* iface,
IEnumMoniker** ppEnumMoniker,DWORD dwFlags,BOOL bExactMatch,DWORD dwMerit,
BOOL bInputNeeded,DWORD cInputTypes,const GUID* pguidInputTypes,const REGPINMEDIUM* pPinMediumIn,const CLSID* pPinCategoryIn,BOOL bRender,
BOOL bOutputNeeded,DWORD cOutputTypes,const GUID* pguidOutputTypes,const REGPINMEDIUM* pPinMediumOut,const CLSID* pPinCategoryOut)
{
CFilterMapper2_THIS(iface,fmap3);
CFilterMapper2_THIS(iface,fmap2);
ICreateDevEnum* pEnum = NULL;
IEnumMoniker* pCategories = NULL;
IMoniker* pCat = NULL;
......@@ -1049,46 +1048,33 @@ err:
return hr;
}
static HRESULT WINAPI
IFilterMapper3_fnGetICreateDevEnum(IFilterMapper3* iface,ICreateDevEnum** ppDevEnum)
{
CFilterMapper2_THIS(iface,fmap3);
/* undocumented */
FIXME("(%p)->() stub!\n",This);
return E_NOTIMPL;
}
static ICOM_VTABLE(IFilterMapper3) ifmap3 =
static ICOM_VTABLE(IFilterMapper2) ifmap2 =
{
ICOM_MSVTABLE_COMPAT_DummyRTTIVALUE
/* IUnknown fields */
IFilterMapper3_fnQueryInterface,
IFilterMapper3_fnAddRef,
IFilterMapper3_fnRelease,
IFilterMapper2_fnQueryInterface,
IFilterMapper2_fnAddRef,
IFilterMapper2_fnRelease,
/* IFilterMapper2 fields */
IFilterMapper3_fnCreateCategory,
IFilterMapper3_fnUnregisterFilter,
IFilterMapper3_fnRegisterFilter,
IFilterMapper3_fnEnumMatchingFilters,
/* IFilterMapper3 fields */
IFilterMapper3_fnGetICreateDevEnum,
IFilterMapper2_fnCreateCategory,
IFilterMapper2_fnUnregisterFilter,
IFilterMapper2_fnRegisterFilter,
IFilterMapper2_fnEnumMatchingFilters,
};
HRESULT CFilterMapper2_InitIFilterMapper3( CFilterMapper2* pfm )
HRESULT CFilterMapper2_InitIFilterMapper2( CFilterMapper2* pfm )
{
TRACE("(%p)\n",pfm);
ICOM_VTBL(&pfm->fmap3) = &ifmap3;
ICOM_VTBL(&pfm->fmap2) = &ifmap2;
return NOERROR;
}
void CFilterMapper2_UninitIFilterMapper3( CFilterMapper2* pfm )
void CFilterMapper2_UninitIFilterMapper2( CFilterMapper2* pfm )
{
TRACE("(%p)\n",pfm);
}
......
......@@ -58,22 +58,20 @@ void CFilterMapper_UninitIFilterMapper( CFilterMapper* pfm );
- At least, the following interfaces should be implemented:
IUnknown
+ IFilterMapper2 - IFilterMapper3
+ IFilterMapper2
*/
#include "iunk.h"
typedef struct FM2_IFilterMapper3Impl
typedef struct FM2_IFilterMapper2Impl
{
ICOM_VFIELD(IFilterMapper3);
} FM2_IFilterMapper3Impl;
ICOM_VFIELD(IFilterMapper2);
} FM2_IFilterMapper2Impl;
typedef struct CFilterMapper2
{
QUARTZ_IUnkImpl unk;
FM2_IFilterMapper3Impl fmap3;
/* IFilterMapper3 fields */
FM2_IFilterMapper2Impl fmap2;
/* IFilterMapper2 fields */
} CFilterMapper2;
#define CFilterMapper2_THIS(iface,member) CFilterMapper2* This = ((CFilterMapper2*)(((char*)iface)-offsetof(CFilterMapper2,member)))
......@@ -81,7 +79,7 @@ typedef struct CFilterMapper2
HRESULT QUARTZ_CreateFilterMapper2(IUnknown* punkOuter,void** ppobj);
HRESULT CFilterMapper2_InitIFilterMapper3( CFilterMapper2* psde );
void CFilterMapper2_UninitIFilterMapper3( CFilterMapper2* psde );
HRESULT CFilterMapper2_InitIFilterMapper2( CFilterMapper2* psde );
void CFilterMapper2_UninitIFilterMapper2( CFilterMapper2* psde );
#endif /* WINE_DSHOW_FMAP_H */
/*
* Implementation of IFilterGraph and related interfaces
* + IGraphVersion, IGraphConfig
* + IGraphVersion
*
* FIXME - create a thread to process some methods correctly.
*
......@@ -102,8 +102,6 @@ static HRESULT CFilterGraph_GraphChanged( CFilterGraph* This )
{
/* IDistributorNotify_NotifyGraphChange() */
IMediaEventSink_Notify(CFilterGraph_IMediaEventSink(This),
EC_GRAPH_CHANGED, 0, 0);
This->m_lGraphVersion ++;
return NOERROR;
......@@ -1520,190 +1518,4 @@ void CFilterGraph_UninitIGraphVersion( CFilterGraph* pfg )
TRACE("(%p)\n",pfg);
}
/***************************************************************************
*
* CFilterGraph::IGraphConfig methods
*
*/
static HRESULT WINAPI
IGraphConfig_fnQueryInterface(IGraphConfig* iface,REFIID riid,void** ppobj)
{
CFilterGraph_THIS(iface,grphconf);
TRACE("(%p)->()\n",This);
return IUnknown_QueryInterface(This->unk.punkControl,riid,ppobj);
}
static ULONG WINAPI
IGraphConfig_fnAddRef(IGraphConfig* iface)
{
CFilterGraph_THIS(iface,grphconf);
TRACE("(%p)->()\n",This);
return IUnknown_AddRef(This->unk.punkControl);
}
static ULONG WINAPI
IGraphConfig_fnRelease(IGraphConfig* iface)
{
CFilterGraph_THIS(iface,grphconf);
TRACE("(%p)->()\n",This);
return IUnknown_Release(This->unk.punkControl);
}
static HRESULT WINAPI
IGraphConfig_fnReconnect(IGraphConfig* iface,IPin* pOut,IPin* pIn,const AM_MEDIA_TYPE* pmt,IBaseFilter* pFilter,HANDLE hAbort,DWORD dwFlags)
{
CFilterGraph_THIS(iface,grphconf);
FIXME("(%p)->() stub!\n",This);
return E_NOTIMPL;
}
static HRESULT WINAPI
IGraphConfig_fnReconfigure(IGraphConfig* iface,IGraphConfigCallback* pCallback,PVOID pvParam,DWORD dwFlags,HANDLE hAbort)
{
CFilterGraph_THIS(iface,grphconf);
HRESULT hr;
FIXME("(%p)->(%p,%p,%08lx,%08x) stub!\n",This,pCallback,pvParam,dwFlags,hAbort);
EnterCriticalSection( &This->m_csFilters );
EnterCriticalSection( &This->m_csGraphState );
hr = IGraphConfigCallback_Reconfigure(pCallback,pvParam,dwFlags);
LeaveCriticalSection( &This->m_csGraphState );
LeaveCriticalSection( &This->m_csFilters );
return hr;
}
static HRESULT WINAPI
IGraphConfig_fnAddFilterToCache(IGraphConfig* iface,IBaseFilter* pFilter)
{
CFilterGraph_THIS(iface,grphconf);
FIXME("(%p)->() stub!\n",This);
return E_NOTIMPL;
}
static HRESULT WINAPI
IGraphConfig_fnEnumCacheFilter(IGraphConfig* iface,IEnumFilters** ppenum)
{
CFilterGraph_THIS(iface,grphconf);
FIXME("(%p)->() stub!\n",This);
return E_NOTIMPL;
}
static HRESULT WINAPI
IGraphConfig_fnRemoveFilterFromCache(IGraphConfig* iface,IBaseFilter* pFilter)
{
CFilterGraph_THIS(iface,grphconf);
FIXME("(%p)->() stub!\n",This);
return E_NOTIMPL;
}
static HRESULT WINAPI
IGraphConfig_fnGetStartTime(IGraphConfig* iface,REFERENCE_TIME* prt)
{
CFilterGraph_THIS(iface,grphconf);
FIXME("(%p)->() stub!\n",This);
return E_NOTIMPL;
}
static HRESULT WINAPI
IGraphConfig_fnPushThroughData(IGraphConfig* iface,IPin* pOut,IPinConnection* pConn,HANDLE hAbort)
{
CFilterGraph_THIS(iface,grphconf);
FIXME("(%p)->() stub!\n",This);
return E_NOTIMPL;
}
static HRESULT WINAPI
IGraphConfig_fnSetFilterFlags(IGraphConfig* iface,IBaseFilter* pFilter,DWORD dwFlags)
{
CFilterGraph_THIS(iface,grphconf);
FIXME("(%p)->() stub!\n",This);
return E_NOTIMPL;
}
static HRESULT WINAPI
IGraphConfig_fnGetFilterFlags(IGraphConfig* iface,IBaseFilter* pFilter,DWORD* pdwFlags)
{
CFilterGraph_THIS(iface,grphconf);
FIXME("(%p)->() stub!\n",This);
return E_NOTIMPL;
}
static HRESULT WINAPI
IGraphConfig_fnRemoveFilterEx(IGraphConfig* iface,IBaseFilter* pFilter,DWORD dwFlags)
{
CFilterGraph_THIS(iface,grphconf);
FIXME("(%p)->() stub!\n",This);
return E_NOTIMPL;
}
static ICOM_VTABLE(IGraphConfig) igraphconfig =
{
ICOM_MSVTABLE_COMPAT_DummyRTTIVALUE
/* IUnknown fields */
IGraphConfig_fnQueryInterface,
IGraphConfig_fnAddRef,
IGraphConfig_fnRelease,
/* IGraphConfig fields */
IGraphConfig_fnReconnect,
IGraphConfig_fnReconfigure,
IGraphConfig_fnAddFilterToCache,
IGraphConfig_fnEnumCacheFilter,
IGraphConfig_fnRemoveFilterFromCache,
IGraphConfig_fnGetStartTime,
IGraphConfig_fnPushThroughData,
IGraphConfig_fnSetFilterFlags,
IGraphConfig_fnGetFilterFlags,
IGraphConfig_fnRemoveFilterEx,
};
HRESULT CFilterGraph_InitIGraphConfig( CFilterGraph* pfg )
{
TRACE("(%p)\n",pfg);
ICOM_VTBL(&pfg->grphconf) = &igraphconfig;
return NOERROR;
}
void CFilterGraph_UninitIGraphConfig( CFilterGraph* pfg )
{
TRACE("(%p)\n",pfg);
}
......@@ -98,14 +98,12 @@ static const QUARTZ_CLASSENTRY QUARTZ_ClassList[] =
{ &CLSID_FilterMapper2, &QUARTZ_CreateFilterMapper2 },
{ &CLSID_SeekingPassThru, &QUARTZ_CreateSeekingPassThru },
{ &CLSID_CaptureGraphBuilder, &QUARTZ_CreateCaptureGraph },
{ &CLSID_CaptureGraphBuilder2, &QUARTZ_CreateCaptureGraph },
{ &CLSID_AudioRender, &QUARTZ_CreateAudioRenderer },
{ &CLSID_VideoRenderer, &QUARTZ_CreateVideoRenderer },
{ &CLSID_quartzWaveParser, &QUARTZ_CreateWaveParser },
{ &CLSID_AviSplitter, &QUARTZ_CreateAVISplitter },
{ &CLSID_MPEG1Splitter, &QUARTZ_CreateMPEG1Splitter },
{ &CLSID_MMSPLITTER, &QUARTZ_CreateMPEG2Splitter },
{ &CLSID_AsyncReader, &QUARTZ_CreateAsyncReader },
{ &CLSID_URLReader, &QUARTZ_CreateURLReader },
{ &CLSID_AVIDec, &QUARTZ_CreateAVIDec },
......
......@@ -702,14 +702,4 @@ HRESULT QUARTZ_CreateMPEG1Splitter(IUnknown* punkOuter,void** ppobj)
&CMPGParseImpl_Handlers );
}
HRESULT QUARTZ_CreateMPEG2Splitter(IUnknown* punkOuter,void** ppobj)
{
return QUARTZ_CreateParser(
punkOuter,ppobj,
&CLSID_MMSPLITTER,
QUARTZ_MPEG2Parser_Name,
QUARTZ_MPGParserInPin_Name,
&CMPGParseImpl_Handlers );
}
......@@ -181,7 +181,6 @@ HRESULT QUARTZ_CreateParserOutPin(
HRESULT QUARTZ_CreateWaveParser(IUnknown* punkOuter,void** ppobj);
HRESULT QUARTZ_CreateAVISplitter(IUnknown* punkOuter,void** ppobj);
HRESULT QUARTZ_CreateMPEG1Splitter(IUnknown* punkOuter,void** ppobj);
HRESULT QUARTZ_CreateMPEG2Splitter(IUnknown* punkOuter,void** ppobj);
HRESULT RIFF_GetNext(
......
......@@ -598,7 +598,6 @@ static QUARTZ_IFEntry FilterIFEntries[] =
{ &IID_IMediaFilter, offsetof(CVideoRendererImpl,basefilter)-offsetof(CVideoRendererImpl,unk) },
{ &IID_IBaseFilter, offsetof(CVideoRendererImpl,basefilter)-offsetof(CVideoRendererImpl,unk) },
{ &IID_IBasicVideo, offsetof(CVideoRendererImpl,basvid)-offsetof(CVideoRendererImpl,unk) },
{ &IID_IBasicVideo2, offsetof(CVideoRendererImpl,basvid)-offsetof(CVideoRendererImpl,unk) },
{ &IID_IVideoWindow, offsetof(CVideoRendererImpl,vidwin)-offsetof(CVideoRendererImpl,unk) },
};
......@@ -639,7 +638,7 @@ static void QUARTZ_DestroyVideoRenderer(IUnknown* punk)
This->pSeekPass = NULL;
}
CVideoRendererImpl_UninitIBasicVideo2(This);
CVideoRendererImpl_UninitIBasicVideo(This);
CVideoRendererImpl_UninitIVideoWindow(This);
CBaseFilterImpl_UninitIBaseFilter(&This->basefilter);
......@@ -681,13 +680,13 @@ HRESULT QUARTZ_CreateVideoRenderer(IUnknown* punkOuter,void** ppobj)
&filterhandlers );
if ( SUCCEEDED(hr) )
{
hr = CVideoRendererImpl_InitIBasicVideo2(This);
hr = CVideoRendererImpl_InitIBasicVideo(This);
if ( SUCCEEDED(hr) )
{
hr = CVideoRendererImpl_InitIVideoWindow(This);
if ( FAILED(hr) )
{
CVideoRendererImpl_UninitIBasicVideo2(This);
CVideoRendererImpl_UninitIBasicVideo(This);
}
}
if ( FAILED(hr) )
......@@ -816,13 +815,13 @@ HRESULT QUARTZ_CreateVideoRendererPin(
/***************************************************************************
*
* CVideoRendererImpl::IBasicVideo2
* CVideoRendererImpl::IBasicVideo
*
*/
static HRESULT WINAPI
IBasicVideo2_fnQueryInterface(IBasicVideo2* iface,REFIID riid,void** ppobj)
IBasicVideo_fnQueryInterface(IBasicVideo* iface,REFIID riid,void** ppobj)
{
CVideoRendererImpl_THIS(iface,basvid);
......@@ -832,7 +831,7 @@ IBasicVideo2_fnQueryInterface(IBasicVideo2* iface,REFIID riid,void** ppobj)
}
static ULONG WINAPI
IBasicVideo2_fnAddRef(IBasicVideo2* iface)
IBasicVideo_fnAddRef(IBasicVideo* iface)
{
CVideoRendererImpl_THIS(iface,basvid);
......@@ -842,7 +841,7 @@ IBasicVideo2_fnAddRef(IBasicVideo2* iface)
}
static ULONG WINAPI
IBasicVideo2_fnRelease(IBasicVideo2* iface)
IBasicVideo_fnRelease(IBasicVideo* iface)
{
CVideoRendererImpl_THIS(iface,basvid);
......@@ -852,7 +851,7 @@ IBasicVideo2_fnRelease(IBasicVideo2* iface)
}
static HRESULT WINAPI
IBasicVideo2_fnGetTypeInfoCount(IBasicVideo2* iface,UINT* pcTypeInfo)
IBasicVideo_fnGetTypeInfoCount(IBasicVideo* iface,UINT* pcTypeInfo)
{
CVideoRendererImpl_THIS(iface,basvid);
......@@ -862,7 +861,7 @@ IBasicVideo2_fnGetTypeInfoCount(IBasicVideo2* iface,UINT* pcTypeInfo)
}
static HRESULT WINAPI
IBasicVideo2_fnGetTypeInfo(IBasicVideo2* iface,UINT iTypeInfo, LCID lcid, ITypeInfo** ppobj)
IBasicVideo_fnGetTypeInfo(IBasicVideo* iface,UINT iTypeInfo, LCID lcid, ITypeInfo** ppobj)
{
CVideoRendererImpl_THIS(iface,basvid);
......@@ -872,7 +871,7 @@ IBasicVideo2_fnGetTypeInfo(IBasicVideo2* iface,UINT iTypeInfo, LCID lcid, ITypeI
}
static HRESULT WINAPI
IBasicVideo2_fnGetIDsOfNames(IBasicVideo2* iface,REFIID riid, LPOLESTR* ppwszName, UINT cNames, LCID lcid, DISPID* pDispId)
IBasicVideo_fnGetIDsOfNames(IBasicVideo* iface,REFIID riid, LPOLESTR* ppwszName, UINT cNames, LCID lcid, DISPID* pDispId)
{
CVideoRendererImpl_THIS(iface,basvid);
......@@ -882,7 +881,7 @@ IBasicVideo2_fnGetIDsOfNames(IBasicVideo2* iface,REFIID riid, LPOLESTR* ppwszNam
}
static HRESULT WINAPI
IBasicVideo2_fnInvoke(IBasicVideo2* iface,DISPID DispId, REFIID riid, LCID lcid, WORD wFlags, DISPPARAMS* pDispParams, VARIANT* pVarRes, EXCEPINFO* pExcepInfo, UINT* puArgErr)
IBasicVideo_fnInvoke(IBasicVideo* iface,DISPID DispId, REFIID riid, LCID lcid, WORD wFlags, DISPPARAMS* pDispParams, VARIANT* pVarRes, EXCEPINFO* pExcepInfo, UINT* puArgErr)
{
CVideoRendererImpl_THIS(iface,basvid);
......@@ -893,7 +892,7 @@ IBasicVideo2_fnInvoke(IBasicVideo2* iface,DISPID DispId, REFIID riid, LCID lcid,
static HRESULT WINAPI
IBasicVideo2_fnget_AvgTimePerFrame(IBasicVideo2* iface,REFTIME* prefTime)
IBasicVideo_fnget_AvgTimePerFrame(IBasicVideo* iface,REFTIME* prefTime)
{
CVideoRendererImpl_THIS(iface,basvid);
......@@ -903,7 +902,7 @@ IBasicVideo2_fnget_AvgTimePerFrame(IBasicVideo2* iface,REFTIME* prefTime)
}
static HRESULT WINAPI
IBasicVideo2_fnget_BitRate(IBasicVideo2* iface,long* plRate)
IBasicVideo_fnget_BitRate(IBasicVideo* iface,long* plRate)
{
CVideoRendererImpl_THIS(iface,basvid);
......@@ -913,7 +912,7 @@ IBasicVideo2_fnget_BitRate(IBasicVideo2* iface,long* plRate)
}
static HRESULT WINAPI
IBasicVideo2_fnget_BitErrorRate(IBasicVideo2* iface,long* plRate)
IBasicVideo_fnget_BitErrorRate(IBasicVideo* iface,long* plRate)
{
CVideoRendererImpl_THIS(iface,basvid);
......@@ -923,7 +922,7 @@ IBasicVideo2_fnget_BitErrorRate(IBasicVideo2* iface,long* plRate)
}
static HRESULT WINAPI
IBasicVideo2_fnget_VideoWidth(IBasicVideo2* iface,long* plWidth)
IBasicVideo_fnget_VideoWidth(IBasicVideo* iface,long* plWidth)
{
CVideoRendererImpl_THIS(iface,basvid);
......@@ -933,7 +932,7 @@ IBasicVideo2_fnget_VideoWidth(IBasicVideo2* iface,long* plWidth)
}
static HRESULT WINAPI
IBasicVideo2_fnget_VideoHeight(IBasicVideo2* iface,long* plHeight)
IBasicVideo_fnget_VideoHeight(IBasicVideo* iface,long* plHeight)
{
CVideoRendererImpl_THIS(iface,basvid);
......@@ -943,7 +942,7 @@ IBasicVideo2_fnget_VideoHeight(IBasicVideo2* iface,long* plHeight)
}
static HRESULT WINAPI
IBasicVideo2_fnput_SourceLeft(IBasicVideo2* iface,long lLeft)
IBasicVideo_fnput_SourceLeft(IBasicVideo* iface,long lLeft)
{
CVideoRendererImpl_THIS(iface,basvid);
......@@ -953,7 +952,7 @@ IBasicVideo2_fnput_SourceLeft(IBasicVideo2* iface,long lLeft)
}
static HRESULT WINAPI
IBasicVideo2_fnget_SourceLeft(IBasicVideo2* iface,long* plLeft)
IBasicVideo_fnget_SourceLeft(IBasicVideo* iface,long* plLeft)
{
CVideoRendererImpl_THIS(iface,basvid);
......@@ -963,7 +962,7 @@ IBasicVideo2_fnget_SourceLeft(IBasicVideo2* iface,long* plLeft)
}
static HRESULT WINAPI
IBasicVideo2_fnput_SourceWidth(IBasicVideo2* iface,long lWidth)
IBasicVideo_fnput_SourceWidth(IBasicVideo* iface,long lWidth)
{
CVideoRendererImpl_THIS(iface,basvid);
......@@ -973,7 +972,7 @@ IBasicVideo2_fnput_SourceWidth(IBasicVideo2* iface,long lWidth)
}
static HRESULT WINAPI
IBasicVideo2_fnget_SourceWidth(IBasicVideo2* iface,long* plWidth)
IBasicVideo_fnget_SourceWidth(IBasicVideo* iface,long* plWidth)
{
CVideoRendererImpl_THIS(iface,basvid);
......@@ -983,7 +982,7 @@ IBasicVideo2_fnget_SourceWidth(IBasicVideo2* iface,long* plWidth)
}
static HRESULT WINAPI
IBasicVideo2_fnput_SourceTop(IBasicVideo2* iface,long lTop)
IBasicVideo_fnput_SourceTop(IBasicVideo* iface,long lTop)
{
CVideoRendererImpl_THIS(iface,basvid);
......@@ -993,7 +992,7 @@ IBasicVideo2_fnput_SourceTop(IBasicVideo2* iface,long lTop)
}
static HRESULT WINAPI
IBasicVideo2_fnget_SourceTop(IBasicVideo2* iface,long* plTop)
IBasicVideo_fnget_SourceTop(IBasicVideo* iface,long* plTop)
{
CVideoRendererImpl_THIS(iface,basvid);
......@@ -1003,7 +1002,7 @@ IBasicVideo2_fnget_SourceTop(IBasicVideo2* iface,long* plTop)
}
static HRESULT WINAPI
IBasicVideo2_fnput_SourceHeight(IBasicVideo2* iface,long lHeight)
IBasicVideo_fnput_SourceHeight(IBasicVideo* iface,long lHeight)
{
CVideoRendererImpl_THIS(iface,basvid);
......@@ -1013,7 +1012,7 @@ IBasicVideo2_fnput_SourceHeight(IBasicVideo2* iface,long lHeight)
}
static HRESULT WINAPI
IBasicVideo2_fnget_SourceHeight(IBasicVideo2* iface,long* plHeight)
IBasicVideo_fnget_SourceHeight(IBasicVideo* iface,long* plHeight)
{
CVideoRendererImpl_THIS(iface,basvid);
......@@ -1023,7 +1022,7 @@ IBasicVideo2_fnget_SourceHeight(IBasicVideo2* iface,long* plHeight)
}
static HRESULT WINAPI
IBasicVideo2_fnput_DestinationLeft(IBasicVideo2* iface,long lLeft)
IBasicVideo_fnput_DestinationLeft(IBasicVideo* iface,long lLeft)
{
CVideoRendererImpl_THIS(iface,basvid);
......@@ -1033,7 +1032,7 @@ IBasicVideo2_fnput_DestinationLeft(IBasicVideo2* iface,long lLeft)
}
static HRESULT WINAPI
IBasicVideo2_fnget_DestinationLeft(IBasicVideo2* iface,long* plLeft)
IBasicVideo_fnget_DestinationLeft(IBasicVideo* iface,long* plLeft)
{
CVideoRendererImpl_THIS(iface,basvid);
......@@ -1043,7 +1042,7 @@ IBasicVideo2_fnget_DestinationLeft(IBasicVideo2* iface,long* plLeft)
}
static HRESULT WINAPI
IBasicVideo2_fnput_DestinationWidth(IBasicVideo2* iface,long lWidth)
IBasicVideo_fnput_DestinationWidth(IBasicVideo* iface,long lWidth)
{
CVideoRendererImpl_THIS(iface,basvid);
......@@ -1053,7 +1052,7 @@ IBasicVideo2_fnput_DestinationWidth(IBasicVideo2* iface,long lWidth)
}
static HRESULT WINAPI
IBasicVideo2_fnget_DestinationWidth(IBasicVideo2* iface,long* plWidth)
IBasicVideo_fnget_DestinationWidth(IBasicVideo* iface,long* plWidth)
{
CVideoRendererImpl_THIS(iface,basvid);
......@@ -1063,7 +1062,7 @@ IBasicVideo2_fnget_DestinationWidth(IBasicVideo2* iface,long* plWidth)
}
static HRESULT WINAPI
IBasicVideo2_fnput_DestinationTop(IBasicVideo2* iface,long lTop)
IBasicVideo_fnput_DestinationTop(IBasicVideo* iface,long lTop)
{
CVideoRendererImpl_THIS(iface,basvid);
......@@ -1073,7 +1072,7 @@ IBasicVideo2_fnput_DestinationTop(IBasicVideo2* iface,long lTop)
}
static HRESULT WINAPI
IBasicVideo2_fnget_DestinationTop(IBasicVideo2* iface,long* plTop)
IBasicVideo_fnget_DestinationTop(IBasicVideo* iface,long* plTop)
{
CVideoRendererImpl_THIS(iface,basvid);
......@@ -1083,7 +1082,7 @@ IBasicVideo2_fnget_DestinationTop(IBasicVideo2* iface,long* plTop)
}
static HRESULT WINAPI
IBasicVideo2_fnput_DestinationHeight(IBasicVideo2* iface,long lHeight)
IBasicVideo_fnput_DestinationHeight(IBasicVideo* iface,long lHeight)
{
CVideoRendererImpl_THIS(iface,basvid);
......@@ -1093,7 +1092,7 @@ IBasicVideo2_fnput_DestinationHeight(IBasicVideo2* iface,long lHeight)
}
static HRESULT WINAPI
IBasicVideo2_fnget_DestinationHeight(IBasicVideo2* iface,long* plHeight)
IBasicVideo_fnget_DestinationHeight(IBasicVideo* iface,long* plHeight)
{
CVideoRendererImpl_THIS(iface,basvid);
......@@ -1103,7 +1102,7 @@ IBasicVideo2_fnget_DestinationHeight(IBasicVideo2* iface,long* plHeight)
}
static HRESULT WINAPI
IBasicVideo2_fnSetSourcePosition(IBasicVideo2* iface,long lLeft,long lTop,long lWidth,long lHeight)
IBasicVideo_fnSetSourcePosition(IBasicVideo* iface,long lLeft,long lTop,long lWidth,long lHeight)
{
CVideoRendererImpl_THIS(iface,basvid);
......@@ -1113,7 +1112,7 @@ IBasicVideo2_fnSetSourcePosition(IBasicVideo2* iface,long lLeft,long lTop,long l
}
static HRESULT WINAPI
IBasicVideo2_fnGetSourcePosition(IBasicVideo2* iface,long* plLeft,long* plTop,long* plWidth,long* plHeight)
IBasicVideo_fnGetSourcePosition(IBasicVideo* iface,long* plLeft,long* plTop,long* plWidth,long* plHeight)
{
CVideoRendererImpl_THIS(iface,basvid);
......@@ -1123,7 +1122,7 @@ IBasicVideo2_fnGetSourcePosition(IBasicVideo2* iface,long* plLeft,long* plTop,lo
}
static HRESULT WINAPI
IBasicVideo2_fnSetDefaultSourcePosition(IBasicVideo2* iface)
IBasicVideo_fnSetDefaultSourcePosition(IBasicVideo* iface)
{
CVideoRendererImpl_THIS(iface,basvid);
......@@ -1133,7 +1132,7 @@ IBasicVideo2_fnSetDefaultSourcePosition(IBasicVideo2* iface)
}
static HRESULT WINAPI
IBasicVideo2_fnSetDestinationPosition(IBasicVideo2* iface,long lLeft,long lTop,long lWidth,long lHeight)
IBasicVideo_fnSetDestinationPosition(IBasicVideo* iface,long lLeft,long lTop,long lWidth,long lHeight)
{
CVideoRendererImpl_THIS(iface,basvid);
......@@ -1143,7 +1142,7 @@ IBasicVideo2_fnSetDestinationPosition(IBasicVideo2* iface,long lLeft,long lTop,l
}
static HRESULT WINAPI
IBasicVideo2_fnGetDestinationPosition(IBasicVideo2* iface,long* plLeft,long* plTop,long* plWidth,long* plHeight)
IBasicVideo_fnGetDestinationPosition(IBasicVideo* iface,long* plLeft,long* plTop,long* plWidth,long* plHeight)
{
CVideoRendererImpl_THIS(iface,basvid);
......@@ -1153,7 +1152,7 @@ IBasicVideo2_fnGetDestinationPosition(IBasicVideo2* iface,long* plLeft,long* plT
}
static HRESULT WINAPI
IBasicVideo2_fnSetDefaultDestinationPosition(IBasicVideo2* iface)
IBasicVideo_fnSetDefaultDestinationPosition(IBasicVideo* iface)
{
CVideoRendererImpl_THIS(iface,basvid);
......@@ -1163,7 +1162,7 @@ IBasicVideo2_fnSetDefaultDestinationPosition(IBasicVideo2* iface)
}
static HRESULT WINAPI
IBasicVideo2_fnGetVideoSize(IBasicVideo2* iface,long* plWidth,long* plHeight)
IBasicVideo_fnGetVideoSize(IBasicVideo* iface,long* plWidth,long* plHeight)
{
CVideoRendererImpl_THIS(iface,basvid);
......@@ -1173,7 +1172,7 @@ IBasicVideo2_fnGetVideoSize(IBasicVideo2* iface,long* plWidth,long* plHeight)
}
static HRESULT WINAPI
IBasicVideo2_fnGetVideoPaletteEntries(IBasicVideo2* iface,long lStart,long lCount,long* plRet,long* plPaletteEntry)
IBasicVideo_fnGetVideoPaletteEntries(IBasicVideo* iface,long lStart,long lCount,long* plRet,long* plPaletteEntry)
{
CVideoRendererImpl_THIS(iface,basvid);
......@@ -1183,7 +1182,7 @@ IBasicVideo2_fnGetVideoPaletteEntries(IBasicVideo2* iface,long lStart,long lCoun
}
static HRESULT WINAPI
IBasicVideo2_fnGetCurrentImage(IBasicVideo2* iface,long* plBufferSize,long* plDIBBuffer)
IBasicVideo_fnGetCurrentImage(IBasicVideo* iface,long* plBufferSize,long* plDIBBuffer)
{
CVideoRendererImpl_THIS(iface,basvid);
......@@ -1193,7 +1192,7 @@ IBasicVideo2_fnGetCurrentImage(IBasicVideo2* iface,long* plBufferSize,long* plDI
}
static HRESULT WINAPI
IBasicVideo2_fnIsUsingDefaultSource(IBasicVideo2* iface)
IBasicVideo_fnIsUsingDefaultSource(IBasicVideo* iface)
{
CVideoRendererImpl_THIS(iface,basvid);
......@@ -1203,17 +1202,7 @@ IBasicVideo2_fnIsUsingDefaultSource(IBasicVideo2* iface)
}
static HRESULT WINAPI
IBasicVideo2_fnIsUsingDefaultDestination(IBasicVideo2* iface)
{
CVideoRendererImpl_THIS(iface,basvid);
FIXME("(%p)->()\n",This);
return E_NOTIMPL;
}
static HRESULT WINAPI
IBasicVideo2_fnGetPreferredAspectRatio(IBasicVideo2* iface,long* plRateX,long* plRateY)
IBasicVideo_fnIsUsingDefaultDestination(IBasicVideo* iface)
{
CVideoRendererImpl_THIS(iface,basvid);
......@@ -1225,57 +1214,55 @@ IBasicVideo2_fnGetPreferredAspectRatio(IBasicVideo2* iface,long* plRateX,long* p
static ICOM_VTABLE(IBasicVideo2) ibasicvideo =
static ICOM_VTABLE(IBasicVideo) ibasicvideo =
{
ICOM_MSVTABLE_COMPAT_DummyRTTIVALUE
/* IUnknown fields */
IBasicVideo2_fnQueryInterface,
IBasicVideo2_fnAddRef,
IBasicVideo2_fnRelease,
IBasicVideo_fnQueryInterface,
IBasicVideo_fnAddRef,
IBasicVideo_fnRelease,
/* IDispatch fields */
IBasicVideo2_fnGetTypeInfoCount,
IBasicVideo2_fnGetTypeInfo,
IBasicVideo2_fnGetIDsOfNames,
IBasicVideo2_fnInvoke,
IBasicVideo_fnGetTypeInfoCount,
IBasicVideo_fnGetTypeInfo,
IBasicVideo_fnGetIDsOfNames,
IBasicVideo_fnInvoke,
/* IBasicVideo fields */
IBasicVideo2_fnget_AvgTimePerFrame,
IBasicVideo2_fnget_BitRate,
IBasicVideo2_fnget_BitErrorRate,
IBasicVideo2_fnget_VideoWidth,
IBasicVideo2_fnget_VideoHeight,
IBasicVideo2_fnput_SourceLeft,
IBasicVideo2_fnget_SourceLeft,
IBasicVideo2_fnput_SourceWidth,
IBasicVideo2_fnget_SourceWidth,
IBasicVideo2_fnput_SourceTop,
IBasicVideo2_fnget_SourceTop,
IBasicVideo2_fnput_SourceHeight,
IBasicVideo2_fnget_SourceHeight,
IBasicVideo2_fnput_DestinationLeft,
IBasicVideo2_fnget_DestinationLeft,
IBasicVideo2_fnput_DestinationWidth,
IBasicVideo2_fnget_DestinationWidth,
IBasicVideo2_fnput_DestinationTop,
IBasicVideo2_fnget_DestinationTop,
IBasicVideo2_fnput_DestinationHeight,
IBasicVideo2_fnget_DestinationHeight,
IBasicVideo2_fnSetSourcePosition,
IBasicVideo2_fnGetSourcePosition,
IBasicVideo2_fnSetDefaultSourcePosition,
IBasicVideo2_fnSetDestinationPosition,
IBasicVideo2_fnGetDestinationPosition,
IBasicVideo2_fnSetDefaultDestinationPosition,
IBasicVideo2_fnGetVideoSize,
IBasicVideo2_fnGetVideoPaletteEntries,
IBasicVideo2_fnGetCurrentImage,
IBasicVideo2_fnIsUsingDefaultSource,
IBasicVideo2_fnIsUsingDefaultDestination,
/* IBasicVideo2 fields */
IBasicVideo2_fnGetPreferredAspectRatio,
IBasicVideo_fnget_AvgTimePerFrame,
IBasicVideo_fnget_BitRate,
IBasicVideo_fnget_BitErrorRate,
IBasicVideo_fnget_VideoWidth,
IBasicVideo_fnget_VideoHeight,
IBasicVideo_fnput_SourceLeft,
IBasicVideo_fnget_SourceLeft,
IBasicVideo_fnput_SourceWidth,
IBasicVideo_fnget_SourceWidth,
IBasicVideo_fnput_SourceTop,
IBasicVideo_fnget_SourceTop,
IBasicVideo_fnput_SourceHeight,
IBasicVideo_fnget_SourceHeight,
IBasicVideo_fnput_DestinationLeft,
IBasicVideo_fnget_DestinationLeft,
IBasicVideo_fnput_DestinationWidth,
IBasicVideo_fnget_DestinationWidth,
IBasicVideo_fnput_DestinationTop,
IBasicVideo_fnget_DestinationTop,
IBasicVideo_fnput_DestinationHeight,
IBasicVideo_fnget_DestinationHeight,
IBasicVideo_fnSetSourcePosition,
IBasicVideo_fnGetSourcePosition,
IBasicVideo_fnSetDefaultSourcePosition,
IBasicVideo_fnSetDestinationPosition,
IBasicVideo_fnGetDestinationPosition,
IBasicVideo_fnSetDefaultDestinationPosition,
IBasicVideo_fnGetVideoSize,
IBasicVideo_fnGetVideoPaletteEntries,
IBasicVideo_fnGetCurrentImage,
IBasicVideo_fnIsUsingDefaultSource,
IBasicVideo_fnIsUsingDefaultDestination,
};
HRESULT CVideoRendererImpl_InitIBasicVideo2( CVideoRendererImpl* This )
HRESULT CVideoRendererImpl_InitIBasicVideo( CVideoRendererImpl* This )
{
TRACE("(%p)\n",This);
ICOM_VTBL(&This->basvid) = &ibasicvideo;
......@@ -1283,7 +1270,7 @@ HRESULT CVideoRendererImpl_InitIBasicVideo2( CVideoRendererImpl* This )
return NOERROR;
}
void CVideoRendererImpl_UninitIBasicVideo2( CVideoRendererImpl* This )
void CVideoRendererImpl_UninitIBasicVideo( CVideoRendererImpl* This )
{
TRACE("(%p)\n",This);
}
......
......@@ -31,7 +31,7 @@ typedef struct CVideoRendererPinImpl CVideoRendererPinImpl;
typedef struct VidRen_IBasicVideo
{
ICOM_VFIELD(IBasicVideo2);
ICOM_VFIELD(IBasicVideo);
} VidRen_IBasicVideo;
typedef struct VidRen_IVideoWindow
......@@ -76,8 +76,8 @@ struct CVideoRendererPinImpl
#define CVideoRendererImpl_THIS(iface,member) CVideoRendererImpl* This = ((CVideoRendererImpl*)(((char*)iface)-offsetof(CVideoRendererImpl,member)))
#define CVideoRendererPinImpl_THIS(iface,member) CVideoRendererPinImpl* This = ((CVideoRendererPinImpl*)(((char*)iface)-offsetof(CVideoRendererPinImpl,member)))
HRESULT CVideoRendererImpl_InitIBasicVideo2( CVideoRendererImpl* This );
void CVideoRendererImpl_UninitIBasicVideo2( CVideoRendererImpl* This );
HRESULT CVideoRendererImpl_InitIBasicVideo( CVideoRendererImpl* This );
void CVideoRendererImpl_UninitIBasicVideo( CVideoRendererImpl* This );
HRESULT CVideoRendererImpl_InitIVideoWindow( CVideoRendererImpl* This );
void CVideoRendererImpl_UninitIVideoWindow( CVideoRendererImpl* This );
......
......@@ -22,10 +22,8 @@
/* forward decls. */
typedef struct IAMCollection IAMCollection;
typedef struct IAMStats IAMStats;
typedef struct IBasicAudio IBasicAudio;
typedef struct IBasicVideo IBasicVideo;
typedef struct IBasicVideo2 IBasicVideo2;
typedef struct IDeferredCommand IDeferredCommand;
typedef struct IFilterInfo IFilterInfo;
typedef struct IMediaControl IMediaControl;
......@@ -41,10 +39,8 @@ typedef struct IVideoWindow IVideoWindow;
/* GUIDs */
DEFINE_GUID(IID_IAMCollection,0x56A868B9,0x0AD4,0x11CE,0xB0,0x3A,0x00,0x20,0xAF,0x0B,0xA7,0x70);
DEFINE_GUID(IID_IAMStats,0xBC9BCF80,0xDCD2,0x11D2,0xAB,0xF6,0x00,0xA0,0xC9,0x05,0xF3,0x75);
DEFINE_GUID(IID_IBasicAudio,0x56A868B3,0x0AD4,0x11CE,0xB0,0x3A,0x00,0x20,0xAF,0x0B,0xA7,0x70);
DEFINE_GUID(IID_IBasicVideo,0x56A868B5,0x0AD4,0x11CE,0xB0,0x3A,0x00,0x20,0xAF,0x0B,0xA7,0x70);
DEFINE_GUID(IID_IBasicVideo2,0x329BB360,0xF6EA,0x11D1,0x90,0x38,0x00,0xA0,0xC9,0x69,0x72,0x98);
DEFINE_GUID(IID_IDeferredCommand,0x56A868B8,0x0AD4,0x11CE,0xB0,0x3A,0x00,0x20,0xAF,0x0B,0xA7,0x70);
DEFINE_GUID(IID_IFilterInfo,0x56A868BA,0x0AD4,0x11CE,0xB0,0x3A,0x00,0x20,0xAF,0x0B,0xA7,0x70);
DEFINE_GUID(IID_IMediaControl,0x56A868B1,0x0AD4,0x11CE,0xB0,0x3A,0x00,0x20,0xAF,0x0B,0xA7,0x70);
......@@ -103,45 +99,6 @@ ICOM_DEFINE(IAMCollection,IDispatch)
/**************************************************************************
*
* IAMStats interface
*
*/
#define ICOM_INTERFACE IAMStats
#define IAMStats_METHODS \
ICOM_METHOD (HRESULT,Reset) \
ICOM_METHOD1(HRESULT,get_Count,LONG*,a1) \
ICOM_METHOD8(HRESULT,GetValueByIndex,long,a1,BSTR*,a2,long*,a3,double*,a4,double*,a5,double*,a6,double*,a7,double*,a8) \
ICOM_METHOD8(HRESULT,GetValueByName,BSTR,a1,long*,a2,long*,a3,double*,a4,double*,a5,double*,a6,double*,a7,double*,a8) \
ICOM_METHOD3(HRESULT,GetIndex,BSTR,a1,long,a2,long*,a3) \
ICOM_METHOD2(HRESULT,AddValue,long,a1,double,a2)
#define IAMStats_IMETHODS \
IDispatch_IMETHODS \
IAMStats_METHODS
ICOM_DEFINE(IAMStats,IDispatch)
#undef ICOM_INTERFACE
/*** IUnknown methods ***/
#define IAMStats_QueryInterface(p,a1,a2) ICOM_CALL2(QueryInterface,p,a1,a2)
#define IAMStats_AddRef(p) ICOM_CALL (AddRef,p)
#define IAMStats_Release(p) ICOM_CALL (Release,p)
/*** IDispatch methods ***/
#define IAMStats_GetTypeInfoCount(p,a1) ICOM_CALL1(GetTypeInfoCount,p,a1)
#define IAMStats_GetTypeInfo(p,a1,a2,a3) ICOM_CALL3(GetTypeInfo,p,a1,a2,a3)
#define IAMStats_GetIDsOfNames(p,a1,a2,a3,a4,a5) ICOM_CALL5(GetIDsOfNames,p,a1,a2,a3,a4,a5)
#define IAMStats_Invoke(p,a1,a2,a3,a4,a5,a6,a7,a8) ICOM_CALL8(Invoke,p,a1,a2,a3,a4,a5,a6,a7,a8)
/*** IAMStats methods ***/
#define IAMStats_Reset(p) ICOM_CALL (Reset,p)
#define IAMStats_get_Count(p,a1) ICOM_CALL1(get_Count,p,a1)
#define IAMStats_GetValueByIndex(p,a1,a2,a3,a4,a5,a6,a7,a8) ICOM_CALL8(GetValueByIndex,p,a1,a2,a3,a4,a5,a6,a7,a8)
#define IAMStats_GetValueByName(p,a1,a2,a3,a4,a5,a6,a7,a8) ICOM_CALL8(GetValueByName,p,a1,a2,a3,a4,a5,a6,a7,a8)
#define IAMStats_GetIndex(p,a1,a2,a3) ICOM_CALL3(GetIndex,p,a1,a2,a3)
#define IAMStats_AddValue(p,a1,a2) ICOM_CALL2(AddValue,p,a1,a2)
/**************************************************************************
*
* IBasicAudio interface
*
*/
......@@ -268,68 +225,6 @@ ICOM_DEFINE(IBasicVideo,IDispatch)
/**************************************************************************
*
* IBasicVideo2 interface
*
*/
#define ICOM_INTERFACE IBasicVideo2
#define IBasicVideo2_METHODS \
ICOM_METHOD2(HRESULT,GetPreferredAspectRatio,long*,a1,long*,a2)
#define IBasicVideo2_IMETHODS \
IBasicVideo_IMETHODS \
IBasicVideo2_METHODS
ICOM_DEFINE(IBasicVideo2,IBasicVideo)
#undef ICOM_INTERFACE
/*** IUnknown methods ***/
#define IBasicVideo2_QueryInterface(p,a1,a2) ICOM_CALL2(QueryInterface,p,a1,a2)
#define IBasicVideo2_AddRef(p) ICOM_CALL (AddRef,p)
#define IBasicVideo2_Release(p) ICOM_CALL (Release,p)
/*** IDispatch methods ***/
#define IBasicVideo2_GetTypeInfoCount(p,a1) ICOM_CALL1(GetTypeInfoCount,p,a1)
#define IBasicVideo2_GetTypeInfo(p,a1,a2,a3) ICOM_CALL3(GetTypeInfo,p,a1,a2,a3)
#define IBasicVideo2_GetIDsOfNames(p,a1,a2,a3,a4,a5) ICOM_CALL5(GetIDsOfNames,p,a1,a2,a3,a4,a5)
#define IBasicVideo2_Invoke(p,a1,a2,a3,a4,a5,a6,a7,a8) ICOM_CALL8(Invoke,p,a1,a2,a3,a4,a5,a6,a7,a8)
/*** IBasicVideo methods ***/
#define IBasicVideo2_get_AvgTimePerFrame(p,a1) ICOM_CALL1(get_AvgTimePerFrame,p,a1)
#define IBasicVideo2_get_BitRate(p,a1) ICOM_CALL1(get_BitRate,p,a1)
#define IBasicVideo2_get_BitErrorRate(p,a1) ICOM_CALL1(get_BitErrorRate,p,a1)
#define IBasicVideo2_get_VideoWidth(p,a1) ICOM_CALL1(get_VideoWidth,p,a1)
#define IBasicVideo2_get_VideoHeight(p,a1) ICOM_CALL1(get_VideoHeight,p,a1)
#define IBasicVideo2_put_SourceLeft(p,a1) ICOM_CALL1(put_SourceLeft,p,a1)
#define IBasicVideo2_get_SourceLeft(p,a1) ICOM_CALL1(get_SourceLeft,p,a1)
#define IBasicVideo2_put_SourceWidth(p,a1) ICOM_CALL1(put_SourceWidth,p,a1)
#define IBasicVideo2_get_SourceWidth(p,a1) ICOM_CALL1(get_SourceWidth,p,a1)
#define IBasicVideo2_put_SourceTop(p,a1) ICOM_CALL1(put_SourceTop,p,a1)
#define IBasicVideo2_get_SourceTop(p,a1) ICOM_CALL1(get_SourceTop,p,a1)
#define IBasicVideo2_put_SourceHeight(p,a1) ICOM_CALL1(put_SourceHeight,p,a1)
#define IBasicVideo2_get_SourceHeight(p,a1) ICOM_CALL1(get_SourceHeight,p,a1)
#define IBasicVideo2_put_DestinationLeft(p,a1) ICOM_CALL1(put_DestinationLeft,p,a1)
#define IBasicVideo2_get_DestinationLeft(p,a1) ICOM_CALL1(get_DestinationLeft,p,a1)
#define IBasicVideo2_put_DestinationWidth(p,a1) ICOM_CALL1(put_DestinationWidth,p,a1)
#define IBasicVideo2_get_DestinationWidth(p,a1) ICOM_CALL1(get_DestinationWidth,p,a1)
#define IBasicVideo2_put_DestinationTop(p,a1) ICOM_CALL1(put_DestinationTop,p,a1)
#define IBasicVideo2_get_DestinationTop(p,a1) ICOM_CALL1(get_DestinationTop,p,a1)
#define IBasicVideo2_put_DestinationHeight(p,a1) ICOM_CALL1(put_DestinationHeight,p,a1)
#define IBasicVideo2_get_DestinationHeight(p,a1) ICOM_CALL1(get_DestinationHeight,p,a1)
#define IBasicVideo2_SetSourcePosition(p,a1,a2,a3,a4) ICOM_CALL4(SetSourcePosition,p,a1,a2,a3,a4)
#define IBasicVideo2_GetSourcePosition(p,a1,a2,a3,a4) ICOM_CALL4(GetSourcePosition,p,a1,a2,a3,a4)
#define IBasicVideo2_SetDefaultSourcePosition(p,a1) ICOM_CALL1(SetDefaultSourcePosition,p,a1)
#define IBasicVideo2_SetDestinationPosition(p,a1,a2,a3,a4) ICOM_CALL4(SetDestinationPosition,p,a1,a2,a3,a4)
#define IBasicVideo2_GetDestinationPosition(p,a1,a2,a3,a4) ICOM_CALL4(GetDestinationPosition,p,a1,a2,a3,a4)
#define IBasicVideo2_SetDefaultDestinationPosition(p,a1) ICOM_CALL1(SetDefaultDestinationPosition,p,a1)
#define IBasicVideo2_GetVideoSize(p,a1,a2) ICOM_CALL2(GetVideoSize,p,a1,a2)
#define IBasicVideo2_GetVideoPaletteEntries(p,a1,a2,a3,a4) ICOM_CALL4(GetVideoPaletteEntries,p,a1,a2,a3,a4)
#define IBasicVideo2_GetCurrentImage(p,a1,a2) ICOM_CALL2(GetCurrentImage,p,a1,a2)
#define IBasicVideo2_IsUsingDefaultSource(p,a1) ICOM_CALL1(IsUsingDefaultSource,p,a1)
#define IBasicVideo2_IsUsingDefaultDestination(p,a1) ICOM_CALL1(IsUsingDefaultDestination,p,a1)
/*** IBasicVideo2 methods ***/
#define IBasicVideo2_GetPreferredAspectRatio(p,a1,a2) ICOM_CALL2(GetPreferredAspectRatio,p,a1,a2)
/**************************************************************************
*
* IDeferredCommand interface
*
*/
......
......@@ -35,7 +35,6 @@
#define EC_QUALITY_CHANGE 0x0B
#define EC_SHUTTING_DOWN 0x0C
#define EC_CLOCK_CHANGED 0x0D
#define EC_PAUSED 0x0E
#define EC_OPENING_FILE 0x10
#define EC_BUFFERING_DATA 0x11
......@@ -52,18 +51,6 @@
#define EC_END_OF_SEGMENT 0x1C
#define EC_SEGMENT_STARTED 0x1D
#define EC_LENGTH_CHANGED 0x1E
#define EC_DEVICE_LOST 0x1F
#define EC_STEP_COMPLETE 0x24
#define EC_SKIP_FRAMES 0x25
#define EC_TIMECODE_AVAILABLE 0x30
#define EC_EXTDEVICE_MODE_CHANGE 0x31
#define EC_GRAPH_CHANGED 0x50
#define EC_CLOCK_UNSET 0x51
#define EC_WMT_EVENT_BASE 0x0251
#define EC_WMT_INDEX_EVENT EC_WMT_EVENT_BASE
#endif /* __WINE_EVCODE_H */
......@@ -46,28 +46,18 @@
typedef struct IAMAnalogVideoDecoder IAMAnalogVideoDecoder;
typedef struct IAMAnalogVideoEncoder IAMAnalogVideoEncoder;
typedef struct IAMAudioInputMixer IAMAudioInputMixer;
typedef struct IAMAudioRendererStats IAMAudioRendererStats;
typedef struct IAMBufferNegotiation IAMBufferNegotiation;
typedef struct IAMCameraControl IAMCameraControl;
typedef struct IAMClockAdjust IAMClockAdjust;
typedef struct IAMCopyCaptureFileProgress IAMCopyCaptureFileProgress;
typedef struct IAMCrossbar IAMCrossbar;
typedef struct IAMDeviceRemoval IAMDeviceRemoval;
typedef struct IAMDevMemoryAllocator IAMDevMemoryAllocator;
typedef struct IAMDevMemoryControl IAMDevMemoryControl;
typedef struct IAMDroppedFrames IAMDroppedFrames;
typedef struct IAMExtDevice IAMExtDevice;
typedef struct IAMExtTransport IAMExtTransport;
typedef struct IAMFilterMiscFlags IAMFilterMiscFlags;
typedef struct IAMGraphStreams IAMGraphStreams;
typedef struct IAMLatency IAMLatency;
typedef struct IAMOpenProgress IAMOpenProgress;
typedef struct IAMOverlayFX IAMOverlayFX;
typedef struct IAMovie IAMovie;
typedef struct IAMovieSetup IAMovieSetup;
typedef struct IAMPhysicalPinInfo IAMPhysicalPinInfo;
typedef struct IAMPushSource IAMPushSource;
typedef struct IAMResourceControl IAMResourceControl;
typedef struct IAMStreamConfig IAMStreamConfig;
typedef struct IAMStreamControl IAMStreamControl;
typedef struct IAMStreamSelect IAMStreamSelect;
......@@ -82,69 +72,43 @@ typedef struct IAMTVTuner IAMTVTuner;
typedef struct IAMVfwCaptureDialogs IAMVfwCaptureDialogs;
typedef struct IAMVfwCompressDialogs IAMVfwCompressDialogs;
typedef struct IAMVideoCompression IAMVideoCompression;
typedef struct IAMVideoControl IAMVideoControl;
typedef struct IAMVideoDecimationProperties IAMVideoDecimationProperties;
typedef struct IAMVideoProcAmp IAMVideoProcAmp;
typedef struct IAsyncReader IAsyncReader;
typedef struct IMediaFilter IMediaFilter;
typedef struct IBaseFilter IBaseFilter;
typedef struct IBPCSatelliteTuner IBPCSatelliteTuner;
typedef struct ICaptureGraphBuilder ICaptureGraphBuilder;
typedef struct ICaptureGraphBuilder2 ICaptureGraphBuilder2;
typedef struct IConfigAviMux IConfigAviMux;
typedef struct IConfigInterleaving IConfigInterleaving;
typedef struct ICreateDevEnum ICreateDevEnum;
typedef struct IDDrawExclModeVideo IDDrawExclModeVideo;
typedef struct IDDrawExclModeVideoCallback IDDrawExclModeVideoCallback;
typedef struct IDecimateVideoImage IDecimateVideoImage;
typedef struct IDistributorNotify IDistributorNotify;
typedef struct IDrawVideoImage IDrawVideoImage;
typedef struct IDvdCmd IDvdCmd;
typedef struct IDvdControl IDvdControl;
typedef struct IDvdControl2 IDvdControl2;
typedef struct IDvdGraphBuilder IDvdGraphBuilder;
typedef struct IDvdInfo IDvdInfo;
typedef struct IDvdInfo2 IDvdInfo2;
typedef struct IDvdState IDvdState;
typedef struct IDVEnc IDVEnc;
typedef struct IDVSplitter IDVSplitter;
typedef struct IEnumFilters IEnumFilters;
typedef struct IEnumMediaTypes IEnumMediaTypes;
typedef struct IEnumPins IEnumPins;
typedef struct IEnumRegFilters IEnumRegFilters;
typedef struct IEnumStreamIdMap IEnumStreamIdMap;
typedef struct IFileSinkFilter IFileSinkFilter;
typedef struct IFileSinkFilter2 IFileSinkFilter2;
typedef struct IFileSourceFilter IFileSourceFilter;
typedef struct IFilterChain IFilterChain;
typedef struct IFilterGraph IFilterGraph;
typedef struct IFilterGraph2 IFilterGraph2;
typedef struct IFilterMapper IFilterMapper;
typedef struct IFilterMapper2 IFilterMapper2;
typedef struct IFilterMapper3 IFilterMapper3;
typedef struct IGraphBuilder IGraphBuilder;
typedef struct IGraphConfig IGraphConfig;
typedef struct IGraphConfigCallback IGraphConfigCallback;
typedef struct IGraphVersion IGraphVersion;
typedef struct IIPDVDec IIPDVDec;
typedef struct IMediaEventSink IMediaEventSink;
typedef struct IMediaPropertyBag IMediaPropertyBag;
typedef struct IMediaSample IMediaSample;
typedef struct IMediaSample2 IMediaSample2;
typedef struct IMediaSeeking IMediaSeeking;
typedef struct IMemAllocator IMemAllocator;
typedef struct IMemAllocatorCallbackTemp IMemAllocatorCallbackTemp;
typedef struct IMemAllocatorNotifyCallbackTemp IMemAllocatorNotifyCallbackTemp;
typedef struct IMemInputPin IMemInputPin;
typedef struct IMpeg2Demultiplexer IMpeg2Demultiplexer;
typedef struct IMPEG2StreamIdMap IMPEG2StreamIdMap;
typedef struct IOverlay IOverlay;
typedef struct IOverlayNotify IOverlayNotify;
typedef struct IOverlayNotify2 IOverlayNotify2;
typedef struct IPersistMediaPropertyBag IPersistMediaPropertyBag;
typedef struct IPin IPin;
typedef struct IPinConnection IPinConnection;
typedef struct IPinFlowControl IPinFlowControl;
typedef struct IQualityControl IQualityControl;
typedef struct IReferenceClock IReferenceClock;
typedef struct IReferenceClock2 IReferenceClock2;
......@@ -152,35 +116,24 @@ typedef struct IResourceConsumer IResourceConsumer;
typedef struct IResourceManager IResourceManager;
typedef struct ISeekingPassThru ISeekingPassThru;
typedef struct IStreamBuilder IStreamBuilder;
typedef struct IVideoFrameStep IVideoFrameStep;
/* GUIDs. */
DEFINE_GUID(IID_IAMAnalogVideoDecoder,0xC6E13350,0x30AC,0x11D0,0xA1,0x8C,0x00,0xA0,0xC9,0x11,0x89,0x56);
DEFINE_GUID(IID_IAMAnalogVideoEncoder,0xC6E133B0,0x30AC,0x11D0,0xA1,0x8C,0x00,0xA0,0xC9,0x11,0x89,0x56);
DEFINE_GUID(IID_IAMAudioInputMixer,0x54C39221,0x8380,0x11D0,0xB3,0xF0,0x00,0xAA,0x00,0x37,0x61,0xC5);
DEFINE_GUID(IID_IAMAudioRendererStats,0x22320CB2,0xD41A,0x11D2,0xBF,0x7C,0xD7,0xCB,0x9D,0xF0,0xBF,0x93);
DEFINE_GUID(IID_IAMBufferNegotiation,0x56ED71A0,0xAF5F,0x11D0,0xB3,0xF0,0x00,0xAA,0x00,0x37,0x61,0xC5);
DEFINE_GUID(IID_IAMCameraControl,0xC6E13370,0x30AC,0x11D0,0xA1,0x8C,0x00,0xA0,0xC9,0x11,0x89,0x56);
DEFINE_GUID(IID_IAMClockAdjust,0x4D5466B0,0xA49C,0x11D1,0xAB,0xE8,0x00,0xA0,0xC9,0x05,0xF3,0x75);
DEFINE_GUID(IID_IAMCopyCaptureFileProgress,0x670D1D20,0xA068,0x11D0,0xB3,0xF0,0x00,0xAA,0x00,0x37,0x61,0xC5);
DEFINE_GUID(IID_IAMCrossbar,0xC6E13380,0x30AC,0x11D0,0xA1,0x8C,0x00,0xA0,0xC9,0x11,0x89,0x56);
DEFINE_GUID(IID_IAMDeviceRemoval,0xF90A6130,0xB658,0x11D2,0xAE,0x49,0x00,0x00,0xF8,0x75,0x4B,0x99);
DEFINE_GUID(IID_IAMDevMemoryAllocator,0xC6545BF0,0xE76B,0x11D0,0xBD,0x52,0x00,0xA0,0xC9,0x11,0xCE,0x86);
DEFINE_GUID(IID_IAMDevMemoryControl,0xC6545BF1,0xE76B,0x11D0,0xBD,0x52,0x00,0xA0,0xC9,0x11,0xCE,0x86);
DEFINE_GUID(IID_IAMDroppedFrames,0xC6E13344,0x30AC,0x11D0,0xA1,0x8C,0x00,0xA0,0xC9,0x11,0x89,0x56);
DEFINE_GUID(IID_IAMExtDevice,0xB5730A90,0x1A2C,0x11CF,0x8C,0x23,0x00,0xAA,0x00,0x6B,0x68,0x14);
DEFINE_GUID(IID_IAMExtTransport,0xA03CD5F0,0x3045,0x11CF,0x8C,0x44,0x00,0xAA,0x00,0x6B,0x68,0x14);
DEFINE_GUID(IID_IAMFilterMiscFlags,0x2DD74950,0xA890,0x11D1,0xAB,0xE8,0x00,0xA0,0xC9,0x05,0xF3,0x75);
DEFINE_GUID(IID_IAMGraphStreams,0x632105FA,0x072E,0x11D3,0x8A,0xF9,0x00,0xC0,0x4F,0xB6,0xBD,0x3D);
DEFINE_GUID(IID_IAMLatency,0x62EA93BA,0xEC62,0x11D2,0xB7,0x70,0x00,0xC0,0x4F,0xB6,0xBD,0x3D);
DEFINE_GUID(IID_IAMOpenProgress,0x8E1C39A1,0xDE53,0x11CF,0xAA,0x63,0x00,0x80,0xC7,0x44,0x52,0x8D);
DEFINE_GUID(IID_IAMOverlayFX,0x62FAE250,0x7E65,0x4460,0xBF,0xC9,0x63,0x98,0xB3,0x22,0x07,0x3C);
DEFINE_GUID(IID_IAMovie,0x359ACE10,0x7688,0x11CF,0x8B,0x23,0x00,0x80,0x5F,0x6C,0xEF,0x60);
DEFINE_GUID(IID_IAMovieSetup,0xA3D8CEC0,0x7E5A,0x11CF,0xBB,0xC5,0x00,0x80,0x5F,0x6C,0xEF,0x20);
DEFINE_GUID(IID_IAMPhysicalPinInfo,0xF938C991,0x3029,0x11CF,0x8C,0x44,0x00,0xAA,0x00,0x6B,0x68,0x14);
DEFINE_GUID(IID_IAMPushSource,0xF185FE76,0xE64E,0x11D2,0xB7,0x6E,0x00,0xC0,0x4F,0xB6,0xBD,0x3D);
DEFINE_GUID(IID_IAMResourceControl,0x8389D2D0,0x77D7,0x11D1,0xAB,0xE6,0x00,0xA0,0xC9,0x05,0xF3,0x75);
DEFINE_GUID(IID_IAMStreamConfig,0xC6E13340,0x30AC,0x11D0,0xA1,0x8C,0x00,0xA0,0xC9,0x11,0x89,0x56);
DEFINE_GUID(IID_IAMStreamControl,0x36B73881,0xC2C8,0x11CF,0x8B,0x46,0x00,0x80,0x5F,0x6C,0xEF,0x60);
DEFINE_GUID(IID_IAMStreamSelect,0xC1960960,0x17F5,0x11D1,0xAB,0xE1,0x00,0xA0,0xC9,0x05,0xF3,0x75);
......@@ -195,69 +148,43 @@ DEFINE_GUID(IID_IAMTVTuner,0x211A8766,0x03AC,0x11D1,0x8D,0x13,0x00,0xAA,0x00,0xB
DEFINE_GUID(IID_IAMVfwCaptureDialogs,0xD8D715A0,0x6E5E,0x11D0,0xB3,0xF0,0x00,0xAA,0x00,0x37,0x61,0xC5);
DEFINE_GUID(IID_IAMVfwCompressDialogs,0xD8D715A3,0x6E5E,0x11D0,0xB3,0xF0,0x00,0xAA,0x00,0x37,0x61,0xC5);
DEFINE_GUID(IID_IAMVideoCompression,0xC6E13343,0x30AC,0x11D0,0xA1,0x8C,0x00,0xA0,0xC9,0x11,0x89,0x56);
DEFINE_GUID(IID_IAMVideoControl,0x6A2E0670,0x28E4,0x11D0,0xA1,0x8C,0x00,0xA0,0xC9,0x11,0x89,0x56);
DEFINE_GUID(IID_IAMVideoDecimationProperties,0x60D32930,0x13DA,0x11D3,0x9E,0xC6,0xC4,0xFC,0xAE,0xF5,0xC7,0xBE);
DEFINE_GUID(IID_IAMVideoProcAmp,0xC6E13360,0x30AC,0x11D0,0xA1,0x8C,0x00,0xA0,0xC9,0x11,0x89,0x56);
DEFINE_GUID(IID_IAsyncReader,0x56A868AA,0x0AD4,0x11CE,0xB0,0x3A,0x00,0x20,0xAF,0x0B,0xA7,0x70);
DEFINE_GUID(IID_IMediaFilter,0x56A86899,0x0AD4,0x11CE,0xB0,0x3A,0x00,0x20,0xAF,0x0B,0xA7,0x70);
DEFINE_GUID(IID_IBaseFilter,0x56A86895,0x0AD4,0x11CE,0xB0,0x3A,0x00,0x20,0xAF,0x0B,0xA7,0x70);
DEFINE_GUID(IID_IBPCSatelliteTuner,0x211A8765,0x03AC,0x11D1,0x8D,0x13,0x00,0xAA,0x00,0xBD,0x83,0x39);
DEFINE_GUID(IID_ICaptureGraphBuilder,0xBF87B6E0,0x8C27,0x11D0,0xB3,0xF0,0x00,0xAA,0x00,0x37,0x61,0xC5);
DEFINE_GUID(IID_ICaptureGraphBuilder2,0x93E5A4E0,0x2D50,0x11D2,0xAB,0xFA,0x00,0xA0,0xC9,0xC6,0xE3,0x8D);
DEFINE_GUID(IID_IConfigAviMux,0x5ACD6AA0,0xF482,0x11CE,0x8B,0x67,0x00,0xAA,0x00,0xA3,0xF1,0xA6);
DEFINE_GUID(IID_IConfigInterleaving,0xBEE3D220,0x157B,0x11D0,0xBD,0x23,0x00,0xA0,0xC9,0x11,0xCE,0x86);
DEFINE_GUID(IID_ICreateDevEnum,0x29840822,0x5B84,0x11D0,0xBD,0x3B,0x00,0xA0,0xC9,0x11,0xCE,0x86);
DEFINE_GUID(IID_IDDrawExclModeVideo,0x153ACC21,0xD83B,0x11D1,0x82,0xBF,0x00,0xA0,0xC9,0x69,0x6C,0x8F);
DEFINE_GUID(IID_IDDrawExclModeVideoCallback,0x913C24A0,0x20AB,0x11D2,0x90,0x38,0x00,0xA0,0xC9,0x69,0x72,0x98);
DEFINE_GUID(IID_IDecimateVideoImage,0x2E5EA3E0,0xE924,0x11D2,0xB6,0xDA,0x00,0xA0,0xC9,0x95,0xE8,0xDF);
DEFINE_GUID(IID_IDistributorNotify,0x56A868AF,0x0AD4,0x11CE,0xB0,0x3A,0x00,0x20,0xAF,0x0B,0xA7,0x70);
DEFINE_GUID(IID_IDrawVideoImage,0x48EFB120,0xAB49,0x11D2,0xAE,0xD2,0x00,0xA0,0xC9,0x95,0xE8,0xD5);
DEFINE_GUID(IID_IDvdCmd,0x5A4A97E4,0x94EE,0x4A55,0x97,0x51,0x74,0xB5,0x64,0x3A,0xA2,0x7D);
DEFINE_GUID(IID_IDvdControl,0xA70EFE61,0xE2A3,0x11D0,0xA9,0xBE,0x00,0xAA,0x00,0x61,0xBE,0x93);
DEFINE_GUID(IID_IDvdControl2,0x33BC7430,0xEEC0,0x11D2,0x82,0x01,0x00,0xA0,0xC9,0xD7,0x48,0x42);
DEFINE_GUID(IID_IDvdGraphBuilder,0xFCC152B6,0xF372,0x11D0,0x8E,0x00,0x00,0xC0,0x4F,0xD7,0xC0,0x8B);
DEFINE_GUID(IID_IDvdInfo,0xA70EFE60,0xE2A3,0x11D0,0xA9,0xBE,0x00,0xAA,0x00,0x61,0xBE,0x93);
DEFINE_GUID(IID_IDvdInfo2,0x34151510,0xEEC0,0x11D2,0x82,0x01,0x00,0xA0,0xC9,0xD7,0x48,0x42);
DEFINE_GUID(IID_IDvdState,0x86303D6D,0x1C4A,0x4087,0xAB,0x42,0xF7,0x11,0x16,0x70,0x48,0xEF);
DEFINE_GUID(IID_IDVEnc,0xD18E17A0,0xAACB,0x11D0,0xAF,0xB0,0x00,0xAA,0x00,0xB6,0x7A,0x42);
DEFINE_GUID(IID_IDVSplitter,0x92A3A302,0xDA7C,0x4A1F,0xBA,0x7E,0x18,0x02,0xBB,0x5D,0x2D,0x02);
DEFINE_GUID(IID_IEnumFilters,0x56A86893,0x0AD4,0x11CE,0xB0,0x3A,0x00,0x20,0xAF,0x0B,0xA7,0x70);
DEFINE_GUID(IID_IEnumMediaTypes,0x89C31040,0x846B,0x11CE,0x97,0xD3,0x00,0xAA,0x00,0x55,0x59,0x5A);
DEFINE_GUID(IID_IEnumPins,0x56A86892,0x0AD4,0x11CE,0xB0,0x3A,0x00,0x20,0xAF,0x0B,0xA7,0x70);
DEFINE_GUID(IID_IEnumRegFilters,0x56A868A4,0x0AD4,0x11CE,0xB0,0x3A,0x00,0x20,0xAF,0x0B,0xA7,0x70);
DEFINE_GUID(IID_IEnumStreamIdMap,0x945C1566,0x6202,0x46FC,0x96,0xC7,0xD8,0x7F,0x28,0x9C,0x65,0x34);
DEFINE_GUID(IID_IFileSinkFilter,0xA2104830,0x7C70,0x11CF,0x8B,0xCE,0x00,0xAA,0x00,0xA3,0xF1,0xA6);
DEFINE_GUID(IID_IFileSinkFilter2,0x00855B90,0xCE1B,0x11D0,0xBD,0x4F,0x00,0xA0,0xC9,0x11,0xCE,0x86);
DEFINE_GUID(IID_IFileSourceFilter,0x56A868A6,0x0AD4,0x11CE,0xB0,0x3A,0x00,0x20,0xAF,0x0B,0xA7,0x70);
DEFINE_GUID(IID_IFilterChain,0xDCFBDCF6,0x0DC2,0x45F5,0x9A,0xB2,0x7C,0x33,0x0E,0xA0,0x9C,0x29);
DEFINE_GUID(IID_IFilterGraph,0x56A8689F,0x0AD4,0x11CE,0xB0,0x3A,0x00,0x20,0xAF,0x0B,0xA7,0x70);
DEFINE_GUID(IID_IFilterGraph2,0x36B73882,0xC2C8,0x11CF,0x8B,0x46,0x00,0x80,0x5F,0x6C,0xEF,0x60);
DEFINE_GUID(IID_IFilterMapper,0x56A868A3,0x0AD4,0x11CE,0xB0,0x3A,0x00,0x20,0xAF,0x0B,0xA7,0x70);
DEFINE_GUID(IID_IFilterMapper2,0xB79BB0B0,0x33C1,0x11D1,0xAB,0xE1,0x00,0xA0,0xC9,0x05,0xF3,0x75);
DEFINE_GUID(IID_IFilterMapper3,0xB79BB0B1,0x33C1,0x11D1,0xAB,0xE1,0x00,0xA0,0xC9,0x05,0xF3,0x75);
DEFINE_GUID(IID_IGraphBuilder,0x56A868A9,0x0AD4,0x11CE,0xB0,0x3A,0x00,0x20,0xAF,0x0B,0xA7,0x70);
DEFINE_GUID(IID_IGraphConfig,0x03A1EB8E,0x32BF,0x4245,0x85,0x02,0x11,0x4D,0x08,0xA9,0xCB,0x88);
DEFINE_GUID(IID_IGraphConfigCallback,0xADE0FD60,0xD19D,0x11D2,0xAB,0xF6,0x00,0xA0,0xC9,0x05,0xF3,0x75);
DEFINE_GUID(IID_IGraphVersion,0x56A868AB,0x0AD4,0x11CE,0xB0,0x3A,0x00,0x20,0xAF,0x0B,0xA7,0x70);
DEFINE_GUID(IID_IIPDVDec,0xB8E8BD60,0x0BFE,0x11D0,0xAF,0x91,0x00,0xAA,0x00,0xB6,0x7A,0x42);
DEFINE_GUID(IID_IMediaEventSink,0x56A868A2,0x0AD4,0x11CE,0xB0,0x3A,0x00,0x20,0xAF,0x0B,0xA7,0x70);
DEFINE_GUID(IID_IMediaPropertyBag,0x6025A880,0xC0D5,0x11D0,0xBD,0x4E,0x00,0xA0,0xC9,0x11,0xCE,0x86);
DEFINE_GUID(IID_IMediaSample,0x56A8689A,0x0AD4,0x11CE,0xB0,0x3A,0x00,0x20,0xAF,0x0B,0xA7,0x70);
DEFINE_GUID(IID_IMediaSample2,0x36B73884,0xC2C8,0x11CF,0x8B,0x46,0x00,0x80,0x5F,0x6C,0xEF,0x60);
DEFINE_GUID(IID_IMediaSeeking,0x36B73880,0xC2C8,0x11CF,0x8B,0x46,0x00,0x80,0x5F,0x6C,0xEF,0x60);
DEFINE_GUID(IID_IMemAllocator,0x56A8689C,0x0AD4,0x11CE,0xB0,0x3A,0x00,0x20,0xAF,0x0B,0xA7,0x70);
DEFINE_GUID(IID_IMemAllocatorCallbackTemp,0x379A0CF0,0xC1DE,0x11D2,0xAB,0xF5,0x00,0xA0,0xC9,0x05,0xF3,0x75);
DEFINE_GUID(IID_IMemAllocatorNotifyCallbackTemp,0x92980B30,0xC1DE,0x11D2,0xAB,0xF5,0x00,0xA0,0xC9,0x05,0xF3,0x75);
DEFINE_GUID(IID_IMemInputPin,0x56A8689D,0x0AD4,0x11CE,0xB0,0x3A,0x00,0x20,0xAF,0x0B,0xA7,0x70);
DEFINE_GUID(IID_IMpeg2Demultiplexer,0x436EEE9C,0x264F,0x4242,0x90,0xE1,0x4E,0x33,0x0C,0x10,0x75,0x12);
DEFINE_GUID(IID_IMPEG2StreamIdMap,0xD0E04C47,0x25B8,0x4369,0x92,0x5A,0x36,0x2A,0x01,0xD9,0x54,0x44);
DEFINE_GUID(IID_IOverlay,0x56A868A1,0x0AD4,0x11CE,0xB0,0x3A,0x00,0x20,0xAF,0x0B,0xA7,0x70);
DEFINE_GUID(IID_IOverlayNotify,0x56A868A0,0x0AD4,0x11CE,0xB0,0x3A,0x00,0x20,0xAF,0x0B,0xA7,0x70);
DEFINE_GUID(IID_IOverlayNotify2,0x680EFA10,0xD535,0x11D1,0x87,0xC8,0x00,0xA0,0xC9,0x22,0x31,0x96);
DEFINE_GUID(IID_IPersistMediaPropertyBag,0x5738E040,0xB67F,0x11D0,0xBD,0x4D,0x00,0xA0,0xC9,0x11,0xCE,0x86);
DEFINE_GUID(IID_IPin,0x56A86891,0x0AD4,0x11CE,0xB0,0x3A,0x00,0x20,0xAF,0x0B,0xA7,0x70);
DEFINE_GUID(IID_IPinConnection,0x4A9A62D3,0x27D4,0x403D,0x91,0xE9,0x89,0xF5,0x40,0xE5,0x55,0x34);
DEFINE_GUID(IID_IPinFlowControl,0xC56E9858,0xDBF3,0x4F6B,0x81,0x19,0x38,0x4A,0xF2,0x06,0x0D,0xEB);
DEFINE_GUID(IID_IQualityControl,0x56A868A5,0x0AD4,0x11CE,0xB0,0x3A,0x00,0x20,0xAF,0x0B,0xA7,0x70);
DEFINE_GUID(IID_IReferenceClock,0x56A86897,0x0AD4,0x11CE,0xB0,0x3A,0x00,0x20,0xAF,0x0B,0xA7,0x70);
DEFINE_GUID(IID_IReferenceClock2,0x36B73885,0xC2C8,0x11CF,0x8B,0x46,0x00,0x80,0x5F,0x6C,0xEF,0x60);
......@@ -265,7 +192,6 @@ DEFINE_GUID(IID_IResourceConsumer,0x56A868AD,0x0AD4,0x11CE,0xB0,0x3A,0x00,0x20,0
DEFINE_GUID(IID_IResourceManager,0x56A868AC,0x0AD4,0x11CE,0xB0,0x3A,0x00,0x20,0xAF,0x0B,0xA7,0x70);
DEFINE_GUID(IID_ISeekingPassThru,0x36B73883,0xC2C8,0x11CF,0x8B,0x46,0x00,0x80,0x5F,0x6C,0xEF,0x60);
DEFINE_GUID(IID_IStreamBuilder,0x56A868BF,0x0AD4,0x11CE,0xB0,0x3A,0x00,0x20,0xAF,0x0B,0xA7,0x70);
DEFINE_GUID(IID_IVideoFrameStep,0xE46A9787,0x2B71,0x444D,0xA4,0xB5,0x1F,0xAB,0x7B,0x70,0x8D,0x6A);
#ifndef __WINE_REFTIME_DEFINED_
......@@ -669,46 +595,6 @@ ICOM_DEFINE(ICaptureGraphBuilder,IUnknown)
/**************************************************************************
*
* ICaptureGraphBuilder2 interface
*
*/
#define ICOM_INTERFACE ICaptureGraphBuilder2
#define ICaptureGraphBuilder2_METHODS \
ICOM_METHOD1(HRESULT,SetFiltergraph,IGraphBuilder*,a1) \
ICOM_METHOD1(HRESULT,GetFiltergraph,IGraphBuilder**,a1) \
ICOM_METHOD4(HRESULT,SetOutputFileName,const GUID*,a1,LPCOLESTR,a2,IBaseFilter**,a3,IFileSinkFilter**,a4) \
ICOM_METHOD5(HRESULT,FindInterface,const GUID*,a1,const GUID*,a2,IBaseFilter*,a3,REFIID,a4,void**,a5) \
ICOM_METHOD5(HRESULT,RenderStream,const GUID*,a1,const GUID*,a2,IUnknown*,a3,IBaseFilter*,a4,IBaseFilter*,a5) \
ICOM_METHOD7(HRESULT,ControlStream,const GUID*,a1,const GUID*,a2,IBaseFilter*,a3,REFERENCE_TIME*,a4,REFERENCE_TIME*,a5,WORD,a6,WORD,a7) \
ICOM_METHOD2(HRESULT,AllocCapFile,LPCOLESTR,a1,DWORDLONG,a2) \
ICOM_METHOD4(HRESULT,CopyCaptureFile,LPOLESTR,a1,LPOLESTR,a2,int,a3,IAMCopyCaptureFileProgress*,a4) \
ICOM_METHOD7(HRESULT,FindPin,IUnknown*,a1,PIN_DIRECTION,a2,const GUID*,a3,const GUID*,a4,BOOL,a5,int,a6,IPin**,a7)
#define ICaptureGraphBuilder2_IMETHODS \
IUnknown_IMETHODS \
ICaptureGraphBuilder2_METHODS
ICOM_DEFINE(ICaptureGraphBuilder2,IUnknown)
#undef ICOM_INTERFACE
/*** IUnknown methods ***/
#define ICaptureGraphBuilder2_QueryInterface(p,a1,a2) ICOM_CALL2(QueryInterface,p,a1,a2)
#define ICaptureGraphBuilder2_AddRef(p) ICOM_CALL (AddRef,p)
#define ICaptureGraphBuilder2_Release(p) ICOM_CALL (Release,p)
/*** ICaptureGraphBuilder2 methods ***/
#define ICaptureGraphBuilder2_SetFiltergraph(p,a1) ICOM_CALL1(SetFiltergraph,p,a1)
#define ICaptureGraphBuilder2_GetFiltergraph(p,a1) ICOM_CALL1(GetFiltergraph,p,a1)
#define ICaptureGraphBuilder2_SetOutputFileName(p,a1,a2,a3,a4) ICOM_CALL4(SetOutputFileName,p,a1,a2,a3,a4)
#define ICaptureGraphBuilder2_FindInterface(p,a1,a2,a3,a4,a5) ICOM_CALL5(FindInterface,p,a1,a2,a3,a4,a5)
#define ICaptureGraphBuilder2_RenderStream(p,a1,a2,a3,a4,a5) ICOM_CALL5(RenderStream,p,a1,a2,a3,a4,a5)
#define ICaptureGraphBuilder2_ControlStream(p,a1,a2,a3,a4,a5,a6,a7) ICOM_CALL7(ControlStream,p,a1,a2,a3,a4,a5,a6,a7)
#define ICaptureGraphBuilder2_AllocCapFile(p,a1,a2) ICOM_CALL2(AllocCapFile,p,a1,a2)
#define ICaptureGraphBuilder2_CopyCaptureFile(p,a1,a2,a3,a4) ICOM_CALL4(CopyCaptureFile,p,a1,a2,a3,a4)
#define ICaptureGraphBuilder2_FindPin(p,a1,a2,a3,a4,a5,a6,a7) ICOM_CALL7(FindPin,p,a1,a2,a3,a4,a5,a6,a7)
/**************************************************************************
*
* ICreateDevEnum interface
*
*/
......@@ -765,30 +651,6 @@ ICOM_DEFINE(IDistributorNotify,IUnknown)
/**************************************************************************
*
* IDVSplitter interface
*
*/
#define ICOM_INTERFACE IDVSplitter
#define IDVSplitter_METHODS \
ICOM_METHOD1(HRESULT,DiscardAlternateVideoFrames,int,a1)
#define IDVSplitter_IMETHODS \
IUnknown_IMETHODS \
IDVSplitter_METHODS
ICOM_DEFINE(IDVSplitter,IUnknown)
#undef ICOM_INTERFACE
/*** IUnknown methods ***/
#define IDVSplitter_QueryInterface(p,a1,a2) ICOM_CALL2(QueryInterface,p,a1,a2)
#define IDVSplitter_AddRef(p) ICOM_CALL (AddRef,p)
#define IDVSplitter_Release(p) ICOM_CALL (Release,p)
/*** IDVSplitter methods ***/
#define IDVSplitter_DiscardAlternateVideoFrames(p,a1) ICOM_CALL1(DiscardAlternateVideoFrames,p,a1)
/**************************************************************************
*
* IEnumFilters interface
*
*/
......@@ -960,36 +822,6 @@ ICOM_DEFINE(IFileSourceFilter,IUnknown)
/**************************************************************************
*
* IFilterChain interface
*
*/
#define ICOM_INTERFACE IFilterChain
#define IFilterChain_METHODS \
ICOM_METHOD2(HRESULT,StartChain,IBaseFilter*,a1,IBaseFilter*,a2) \
ICOM_METHOD2(HRESULT,PauseChain,IBaseFilter*,a1,IBaseFilter*,a2) \
ICOM_METHOD2(HRESULT,StopChain,IBaseFilter*,a1,IBaseFilter*,a2) \
ICOM_METHOD2(HRESULT,RemoveChain,IBaseFilter*,a1,IBaseFilter*,a2)
#define IFilterChain_IMETHODS \
IUnknown_IMETHODS \
IFilterChain_METHODS
ICOM_DEFINE(IFilterChain,IUnknown)
#undef ICOM_INTERFACE
/*** IUnknown methods ***/
#define IFilterChain_QueryInterface(p,a1,a2) ICOM_CALL2(QueryInterface,p,a1,a2)
#define IFilterChain_AddRef(p) ICOM_CALL (AddRef,p)
#define IFilterChain_Release(p) ICOM_CALL (Release,p)
/*** IFilterChain methods ***/
#define IFilterChain_StartChain(p,a1,a2) ICOM_CALL2(StartChain,p,a1,a2)
#define IFilterChain_PauseChain(p,a1,a2) ICOM_CALL2(PauseChain,p,a1,a2)
#define IFilterChain_StopChain(p,a1,a2) ICOM_CALL2(StopChain,p,a1,a2)
#define IFilterChain_RemoveChain(p,a1,a2) ICOM_CALL2(RemoveChain,p,a1,a2)
/**************************************************************************
*
* IFilterMapper interface
*
*/
......@@ -1058,35 +890,6 @@ ICOM_DEFINE(IFilterMapper2,IUnknown)
/**************************************************************************
*
* IFilterMapper3 interface
*
*/
#define ICOM_INTERFACE IFilterMapper3
#define IFilterMapper3_METHODS \
ICOM_METHOD1(HRESULT,GetICreateDevEnum,ICreateDevEnum**,a1)
#define IFilterMapper3_IMETHODS \
IFilterMapper2_IMETHODS \
IFilterMapper3_METHODS
ICOM_DEFINE(IFilterMapper3,IFilterMapper2)
#undef ICOM_INTERFACE
/*** IUnknown methods ***/
#define IFilterMapper3_QueryInterface(p,a1,a2) ICOM_CALL2(QueryInterface,p,a1,a2)
#define IFilterMapper3_AddRef(p) ICOM_CALL (AddRef,p)
#define IFilterMapper3_Release(p) ICOM_CALL (Release,p)
/*** IFilterMapper2 methods ***/
#define IFilterMapper3_CreateCategory(p,a1,a2,a3) ICOM_CALL3(CreateCategory,p,a1,a2,a3)
#define IFilterMapper3_UnregisterFilter(p,a1,a2,a3) ICOM_CALL3(UnregisterFilter,p,a1,a2,a3)
#define IFilterMapper3_RegisterFilter(p,a1,a2,a3,a4,a5,a6) ICOM_CALL6(RegisterFilter,p,a1,a2,a3,a4,a5,a6)
#define IFilterMapper3_EnumMatchingFilters(p,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11,a12,a13,a14,a15) ICOM_CALL15(EnumMatchingFilters,p,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11,a12,a13,a14,a15)
/*** IFilterMapper3 methods ***/
#define IFilterMapper3_GetICreateDevEnum(p,a1) ICOM_CALL1(GetICreateDevEnum,p,a1)
/**************************************************************************
*
* IFilterGraph interface
*
*/
......@@ -1215,72 +1018,6 @@ ICOM_DEFINE(IFilterGraph2,IGraphBuilder)
/**************************************************************************
*
* IGraphConfig interface
*
*/
#define ICOM_INTERFACE IGraphConfig
#define IGraphConfig_METHODS \
ICOM_METHOD6(HRESULT,Reconnect,IPin*,a1,IPin*,a2,const AM_MEDIA_TYPE*,a3,IBaseFilter*,a4,HANDLE,a5,DWORD,a6) \
ICOM_METHOD4(HRESULT,Reconfigure,IGraphConfigCallback*,a1,PVOID,a2,DWORD,a3,HANDLE,a4) \
ICOM_METHOD1(HRESULT,AddFilterToCache,IBaseFilter*,a1) \
ICOM_METHOD1(HRESULT,EnumCacheFilter,IEnumFilters**,a1) \
ICOM_METHOD1(HRESULT,RemoveFilterFromCache,IBaseFilter*,a1) \
ICOM_METHOD1(HRESULT,GetStartTime,REFERENCE_TIME*,a1) \
ICOM_METHOD3(HRESULT,PushThroughData,IPin*,a1,IPinConnection*,a2,HANDLE,a3) \
ICOM_METHOD2(HRESULT,SetFilterFlags,IBaseFilter*,a1,DWORD,a2) \
ICOM_METHOD2(HRESULT,GetFilterFlags,IBaseFilter*,a1,DWORD*,a2) \
ICOM_METHOD2(HRESULT,RemoveFilterEx,IBaseFilter*,a1,DWORD,a2)
#define IGraphConfig_IMETHODS \
IUnknown_IMETHODS \
IGraphConfig_METHODS
ICOM_DEFINE(IGraphConfig,IUnknown)
#undef ICOM_INTERFACE
/*** IUnknown methods ***/
#define IGraphConfig_QueryInterface(p,a1,a2) ICOM_CALL2(QueryInterface,p,a1,a2)
#define IGraphConfig_AddRef(p) ICOM_CALL (AddRef,p)
#define IGraphConfig_Release(p) ICOM_CALL (Release,p)
/*** IGraphConfig methods ***/
#define IGraphConfig_Reconnect(p,a1,a2,a3,a4,a5,a6) ICOM_CALL6(Reconnect,p,a1,a2,a3,a4,a5,a6)
#define IGraphConfig_Reconfigure(p,a1,a2,a3,a4) ICOM_CALL4(Reconfigure,p,a1,a2,a3,a4)
#define IGraphConfig_AddFilterToCache(p,a1) ICOM_CALL1(AddFilterToCache,p,a1)
#define IGraphConfig_EnumCacheFilter(p,a1) ICOM_CALL1(EnumCacheFilter,p,a1)
#define IGraphConfig_RemoveFilterFromCache(p,a1) ICOM_CALL1(RemoveFilterFromCache,p,a1)
#define IGraphConfig_GetStartTime(p,a1) ICOM_CALL1(GetStartTime,p,a1)
#define IGraphConfig_PushThroughData(p,a1,a2,a3) ICOM_CALL3(PushThroughData,p,a1,a2,a3)
#define IGraphConfig_SetFilterFlags(p,a1,a2) ICOM_CALL2(SetFilterFlags,p,a1,a2)
#define IGraphConfig_GetFilterFlags(p,a1,a2) ICOM_CALL2(GetFilterFlags,p,a1,a2)
#define IGraphConfig_RemoveFilterEx(p,a1,a2) ICOM_CALL2(RemoveFilterEx,p,a1,a2)
/**************************************************************************
*
* IGraphConfigCallback interface
*
*/
#define ICOM_INTERFACE IGraphConfigCallback
#define IGraphConfigCallback_METHODS \
ICOM_METHOD2(HRESULT,Reconfigure,PVOID,a1,DWORD,a2)
#define IGraphConfigCallback_IMETHODS \
IUnknown_IMETHODS \
IGraphConfigCallback_METHODS
ICOM_DEFINE(IGraphConfigCallback,IUnknown)
#undef ICOM_INTERFACE
/*** IUnknown methods ***/
#define IGraphConfigCallback_QueryInterface(p,a1,a2) ICOM_CALL2(QueryInterface,p,a1,a2)
#define IGraphConfigCallback_AddRef(p) ICOM_CALL (AddRef,p)
#define IGraphConfigCallback_Release(p) ICOM_CALL (Release,p)
/*** IGraphConfigCallback methods ***/
#define IGraphConfigCallback_Reconfigure(p,a1,a2) ICOM_CALL2(Reconfigure,p,a1,a2)
/**************************************************************************
*
* IGraphVersion interface
*
*/
......@@ -1542,62 +1279,6 @@ ICOM_DEFINE(IMemAllocator,IUnknown)
#define IMemAllocator_GetBuffer(p,a1,a2,a3,a4) ICOM_CALL4(GetBuffer,p,a1,a2,a3,a4)
#define IMemAllocator_ReleaseBuffer(p,a1) ICOM_CALL1(ReleaseBuffer,p,a1)
/**************************************************************************
*
* IMemAllocatorCallbackTemp interface
*
*/
#define ICOM_INTERFACE IMemAllocatorCallbackTemp
#define IMemAllocatorCallbackTemp_METHODS \
ICOM_METHOD1(HRESULT,SetNotify,IMemAllocatorNotifyCallbackTemp*,a1) \
ICOM_METHOD1(HRESULT,GetFreeCount,LONG*,a1)
#define IMemAllocatorCallbackTemp_IMETHODS \
IMemAllocator_IMETHODS \
IMemAllocatorCallbackTemp_METHODS
ICOM_DEFINE(IMemAllocatorCallbackTemp,IMemAllocator)
#undef ICOM_INTERFACE
/*** IUnknown methods ***/
#define IMemAllocatorCallbackTemp_QueryInterface(p,a1,a2) ICOM_CALL2(QueryInterface,p,a1,a2)
#define IMemAllocatorCallbackTemp_AddRef(p) ICOM_CALL (AddRef,p)
#define IMemAllocatorCallbackTemp_Release(p) ICOM_CALL (Release,p)
/*** IMemAllocator methods ***/
#define IMemAllocatorCallbackTemp_SetProperties(p,a1,a2) ICOM_CALL2(SetProperties,p,a1,a2)
#define IMemAllocatorCallbackTemp_GetProperties(p,a1) ICOM_CALL1(GetProperties,p,a1)
#define IMemAllocatorCallbackTemp_Commit(p,a1) ICOM_CALL1(Commit,p,a1)
#define IMemAllocatorCallbackTemp_Decommit(p,a1) ICOM_CALL1(Decommit,p,a1)
#define IMemAllocatorCallbackTemp_GetBuffer(p,a1,a2,a3,a4) ICOM_CALL4(GetBuffer,p,a1,a2,a3,a4)
#define IMemAllocatorCallbackTemp_ReleaseBuffer(p,a1) ICOM_CALL1(ReleaseBuffer,p,a1)
/*** IMemAllocatorCallbackTemp methods ***/
#define IMemAllocatorCallbackTemp_SetNotify(p,a1) ICOM_CALL1(SetNotify,p,a1)
#define IMemAllocatorCallbackTemp_GetFreeCount(p,a1) ICOM_CALL1(GetFreeCount,p,a1)
/**************************************************************************
*
* IMemAllocatorNotifyCallbackTemp interface
*
*/
#define ICOM_INTERFACE IMemAllocatorNotifyCallbackTemp
#define IMemAllocatorNotifyCallbackTemp_METHODS \
ICOM_METHOD (HRESULT,NotifyRelease)
#define IMemAllocatorNotifyCallbackTemp_IMETHODS \
IUnknown_IMETHODS \
IMemAllocatorNotifyCallbackTemp_METHODS
ICOM_DEFINE(IMemAllocatorNotifyCallbackTemp,IUnknown)
#undef ICOM_INTERFACE
/*** IUnknown methods ***/
#define IMemAllocatorNotifyCallbackTemp_QueryInterface(p,a1,a2) ICOM_CALL2(QueryInterface,p,a1,a2)
#define IMemAllocatorNotifyCallbackTemp_AddRef(p) ICOM_CALL (AddRef,p)
#define IMemAllocatorNotifyCallbackTemp_Release(p) ICOM_CALL (Release,p)
/*** IMemAllocatorNotifyCallbackTemp methods ***/
#define IMemAllocatorNotifyCallbackTemp_NotifyRelease(p) ICOM_CALL (NotifyRelease,p)
/**************************************************************************
*
......
......@@ -43,8 +43,6 @@ OUR_GUID_ENTRY(MEDIATYPE_Text,0x73747874,
0x0000,0x0010,0x80,0x00,0x00,0xaa,0x00,0x38,0x9b,0x71)
OUR_GUID_ENTRY(MEDIATYPE_Midi,0x7364696D,
0x0000,0x0010,0x80,0x00,0x00,0xaa,0x00,0x38,0x9b,0x71)
OUR_GUID_ENTRY(MEDIATYPE_URL_STREAM,0x736c7275,
0x0000,0x0010,0x80,0x00,0x00,0xaa,0x00,0x38,0x9b,0x71)
OUR_GUID_ENTRY(MEDIATYPE_Stream,
0xe436eb83,0x524f,0x11ce,0x9f,0x53,0x00,0x20,0xaf,0x0b,0xa7,0x70)
......@@ -59,10 +57,6 @@ OUR_GUID_ENTRY(MEDIATYPE_DVD_ENCRYPTED_PACK,
/* --- Media SubType --- */
/* FourCC */
OUR_GUID_ENTRY(MEDIASUBTYPE_YUYV,0x56595559,
0x0000,0x0010,0x80,0x00,0x00,0xaa,0x00,0x38,0x9b,0x71)
OUR_GUID_ENTRY(MEDIASUBTYPE_IYUV,0x56555949,
0x0000,0x0010,0x80,0x00,0x00,0xaa,0x00,0x38,0x9b,0x71)
OUR_GUID_ENTRY(MEDIASUBTYPE_YVU9,0x39555659,
0x0000,0x0010,0x80,0x00,0x00,0xaa,0x00,0x38,0x9b,0x71)
OUR_GUID_ENTRY(MEDIASUBTYPE_Y411,0x31313459,
......@@ -95,8 +89,6 @@ OUR_GUID_ENTRY(MEDIASUBTYPE_RGB24,
0xe436eb7d,0x524f,0x11ce,0x9f,0x53,0x00,0x20,0xaf,0x0b,0xa7,0x70)
OUR_GUID_ENTRY(MEDIASUBTYPE_RGB32,
0xe436eb7e,0x524f,0x11ce,0x9f,0x53,0x00,0x20,0xaf,0x0b,0xa7,0x70)
OUR_GUID_ENTRY(MEDIASUBTYPE_ARGB32,
0x773c9ac0,0x3274,0x11d0,0xb7,0x24,0x00,0xaa,0x00,0x6c,0x1a,0x01)
/* Audio */
OUR_GUID_ENTRY(MEDIASUBTYPE_PCM,0x00000001,
......@@ -180,8 +172,6 @@ OUR_GUID_ENTRY(FORMAT_DVD_LPCMAudio,
/* CaptureGraphBuilder */
OUR_GUID_ENTRY(CLSID_CaptureGraphBuilder,
0xBF87B6E0,0x8C27,0x11D0,0xB3,0xF0,0x00,0xAA,0x00,0x37,0x61,0xC5)
OUR_GUID_ENTRY(CLSID_CaptureGraphBuilder2,
0xBF87B6E1,0x8C27,0x11D0,0xB3,0xF0,0x00,0xAA,0x00,0x37,0x61,0xC5)
/* System Reference Clock */
OUR_GUID_ENTRY(CLSID_SystemClock,
......@@ -218,22 +208,13 @@ OUR_GUID_ENTRY(CLSID_URLReader,
/* Memory Allocator */
OUR_GUID_ENTRY(CLSID_MemoryAllocator,
0x1e651cc0,0xb199,0x11d0,0x82,0x12,0x00,0xc0,0x4f,0xc3,0x2c,0x45)
/* QuickTime Parser */
OUR_GUID_ENTRY(CLSID_QuickTimeParser,
0xD51BD5A0,0x7548,0x11CF,0xA5,0x20,0x00,0x80,0xC7,0x7E,0xF5,0x8A)
/* MPEG-1 Parser */
OUR_GUID_ENTRY(CLSID_MPEG1Splitter,
0x336475D0,0x942A,0x11CE,0xA8,0x70,0x00,0xAA,0x00,0x2F,0xEA,0xB5)
/* MPEG-2 Splitter */
OUR_GUID_ENTRY(CLSID_MMSPLITTER,
0x3AE86B20,0x7BE8,0x11D1,0xAB,0xE6,0x00,0xA0,0xC9,0x05,0xF3,0x75)
/* AVI Decompressor */
OUR_GUID_ENTRY(CLSID_AVIDec,
0xCF49D4E0,0x1115,0x11CE,0xB0,0x3A,0x00,0x20,0xAF,0x0B,0xA7,0x70)
/* QuickTime Video Decoder */
OUR_GUID_ENTRY(CLSID_QTDec,
0xFDFE9681,0x74A3,0x11D0,0xAF,0xA7,0x00,0xAA,0x00,0xB6,0x7A,0x42)
/* MPEG-1 Video Decoder */
OUR_GUID_ENTRY(CLSID_CMpegVideoCodec,
0xFEB50740,0x7BEF,0x11CE,0x9B,0xD9,0x00,0x00,0xE2,0x02,0x59,0x9C)
......@@ -260,8 +241,6 @@ OUR_GUID_ENTRY(CLSID_DvdGraphBuilder,
0xFCC152B7,0xF372,0x11D0,0x8E,0x00,0x00,0xC0,0x4F,0xD7,0xC0,0x8B)
OUR_GUID_ENTRY(CLSID_DVDNavigator,
0x9B8C4620,0x2C1A,0x11D0,0x84,0x93,0x00,0xA0,0x24,0x38,0xAD,0x48)
OUR_GUID_ENTRY(CLSID_DVDState,
0xF963C5CF,0xA659,0x4A93,0x96,0x38,0xCA,0xF3,0xCD,0x27,0x7D,0x13)
OUR_GUID_ENTRY(CLSID_VfwCapture,
......@@ -284,14 +263,10 @@ OUR_GUID_ENTRY(CLSID_AudioInputDeviceCategory,
0x33D9A762,0x90C8,0x11D0,0xBD,0x43,0x00,0xA0,0xC9,0x11,0xCE,0x86)
OUR_GUID_ENTRY(CLSID_AudioRendererCategory,
0xE0F158E1,0xCB04,0x11D0,0xBD,0x4E,0x00,0xA0,0xC9,0x11,0xCE,0x86)
OUR_GUID_ENTRY(CLSID_DeviceControlCategory,
0xCC7BFB46,0xF175,0x11D1,0xA3,0x92,0x00,0xE0,0x29,0x1F,0x39,0x59)
OUR_GUID_ENTRY(CLSID_LegacyAmFilterCategory,
0x083863F1,0x70DE,0x11D0,0xBD,0x40,0x00,0xA0,0xC9,0x11,0xCE,0x86)
OUR_GUID_ENTRY(CLSID_MidiRendererCategory,
0x4EFE2452,0x168A,0x11D1,0xBC,0x76,0x00,0xC0,0x4F,0xB9,0x45,0x3B)
OUR_GUID_ENTRY(CLSID_TransmitCategory,
0xCC7BFB41,0xF175,0x11D1,0xA3,0x92,0x00,0xE0,0x29,0x1F,0x39,0x59)
OUR_GUID_ENTRY(CLSID_VideoInputDeviceCategory,
0x860BB310,0x5D01,0x11D0,0xBD,0x3B,0x00,0xA0,0xC9,0x11,0xCE,0x86)
OUR_GUID_ENTRY(CLSID_VideoCompressorCategory,
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment